-- Check dependencies
local dependencies = require "util.dependencies";
-if not dependencies.check_dependencies() then
- os.exit(1);
-end
-- Load the config-parsing module
config = require "core.configmanager"
break;
end
end
+ prosody.config_file = filename
local ok, level, err = config.load(filename);
if not ok then
print("\n");
end
end
+function check_dependencies()
+ if not dependencies.check_dependencies() then
+ os.exit(1);
+ end
+end
+
function load_libraries()
-- Load socket framework
server = require "net.server"
prosody.full_sessions = full_sessions;
prosody.hosts = hosts;
- local data_path = config.get("*", "core", "data_path") or CFG_DATADIR or "data";
- local custom_plugin_paths = config.get("*", "core", "plugin_paths");
+ local data_path = config.get("*", "data_path") or CFG_DATADIR or "data";
+ local custom_plugin_paths = config.get("*", "plugin_paths");
if custom_plugin_paths then
local path_sep = package.config:sub(3,3);
-- path1;path2;path3;defaultpath...
function prosody.reload_config()
log("info", "Reloading configuration file");
prosody.events.fire_event("reloading-config");
- local ok, level, err = config.load((rawget(_G, "CFG_CONFIGDIR") or ".").."/prosody.cfg.lua");
+ local ok, level, err = config.load(prosody.config_file);
if not ok then
if level == "parser" then
log("error", "There was an error parsing the configuration file: %s", tostring(err));
--- Load and initialise core modules
require "util.import"
require "util.xmppstream"
- require "core.rostermanager"
require "core.stanza_router"
require "core.hostmanager"
require "core.portmanager"
require "core.modulemanager"
require "core.usermanager"
+ require "core.rostermanager"
require "core.sessionmanager"
package.loaded['core.componentmanager'] = setmetatable({},{__index=function()
log("warn", "componentmanager is deprecated: %s", debug.traceback():match("\n[^\n]*\n[ \t]*([^\n]*)"));
sanity_check();
sandbox_require();
set_function_metatable();
+check_dependencies();
load_libraries();
init_global_state();
read_version();