+ net_activate_ports("c2s", "xmppclient", {5222}, (global_ssl_ctx and "tls") or "tcp");
+ net_activate_ports("s2s", "xmppserver", {5269}, "tcp");
+ net_activate_ports("component", "xmppcomponent", {}, "tcp");
+ net_activate_ports("legacy_ssl", "xmppclient", {}, "ssl");
+ net_activate_ports("console", "console", {5582}, "tcp");
+
+ prosody.start_time = os.time();
+end
+
+function init_global_protection()
+ -- Catch global accesses --
+ local locked_globals_mt = { __index = function (t, k) error("Attempt to read a non-existent global '"..k.."'", 2); end, __newindex = function (t, k, v) error("Attempt to set a global: "..tostring(k).." = "..tostring(v), 2); end }
+
+ function prosody.unlock_globals()
+ setmetatable(_G, nil);
+ end
+
+ function prosody.lock_globals()
+ setmetatable(_G, locked_globals_mt);
+ end