-- Will be modified by configure script if run --
-CFG_SOURCEDIR=nil;
+CFG_SOURCEDIR=os.getenv("PROSODY_SRCDIR");
CFG_CONFIGDIR=os.getenv("PROSODY_CFGDIR");
-CFG_PLUGINDIR=nil;
+CFG_PLUGINDIR=os.getenv("PROSODY_PLUGINDIR");
CFG_DATADIR=os.getenv("PROSODY_DATADIR");
-- -- -- -- -- -- -- ---- -- -- -- -- -- -- -- --
-- Required to be able to find packages installed with luarocks
pcall(require, "luarocks.require")
-
+require "util.require";
config = require "core.configmanager"
prosody.events = require "util.events".new();
+ prosody.platform = "unknown";
+ if os.getenv("WINDIR") then
+ prosody.platform = "windows";
+ elseif package.config:sub(1,1) == "/" then
+ prosody.platform = "posix";
+ end
+
+ prosody.installed = nil;
+ if CFG_SOURCEDIR and (prosody.platform == "windows" or CFG_SOURCEDIR:match("^/")) then
+ prosody.installed = true;
+ end
-- Function to reload the config file
function prosody.reload_config()
require "core.sessionmanager"
require "core.stanza_router"
+ require "net.http"
+
require "util.array"
+ require "util.datetime"
require "util.iterators"
require "util.timer"
require "util.helpers"
+ pcall(require, "util.signal") -- Not on Windows
+
-- Commented to protect us from
-- the second kind of people
--[[
local cl = require "net.connlisteners";
-- start listening on sockets
- function net_activate_ports(option, listener, default, conntype)
+ function prosody.net_activate_ports(option, listener, default, conntype)
if not cl.get(listener) then return; end
local ports = config.get("*", "core", option.."_ports") or default;
if type(ports) == "number" then ports = {ports} end;
end
end
- 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.net_activate_ports("c2s", "xmppclient", {5222}, (global_ssl_ctx and "tls") or "tcp");
+ prosody.net_activate_ports("s2s", "xmppserver", {5269}, (global_ssl_ctx and "tls") or "tcp");
+ prosody.net_activate_ports("component", "xmppcomponent", {}, "tcp");
+ prosody.net_activate_ports("legacy_ssl", "xmppclient", {}, "ssl");
+ prosody.net_activate_ports("console", "console", {5582}, "tcp");
prosody.start_time = os.time();
end
log("info", "Hello and welcome to Prosody version %s", prosody.version);
load_secondary_libraries();
init_data_store();
-prepare_to_start();
init_global_protection();
+prepare_to_start();
eventmanager.fire_event("server-started");
prosody.events.fire_event("server-started");