log("error", "core."..option.." is not a table");
else
for _, port in ipairs(ports) do
+ port = tonumber(port);
if type(port) ~= "number" then
log("error", "Non-numeric "..option.."_ports: "..tostring(port));
else
cl.start(listener, {
ssl = conntype ~= "tcp" and global_ssl_ctx,
port = port,
- interface = config.get("*", "core", option.."_interface")
- or cl.get(listener).default_interface
+ interface = (option and config.get("*", "core", option.."_interface"))
+ or cl.get(listener).default_interface
or config.get("*", "core", "interface"),
type = conntype
});
function loop()
-- Error handler for errors that make it this far
local function catch_uncaught_error(err)
- if type(err) == "string" and err:match("%d*: interrupted!$") then
+ if type(err) == "string" and err:match("interrupted!$") then
return "quitting";
end