X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=prosody;h=07ec2bdbda64e8cf1a87a59028f71c91c01fea35;hb=4104bba9f2b804a3ef0de0a58863d51555627004;hp=671910df199df677d8ad7121221565bc01ef417c;hpb=d3c2600a29c2eab3af4a38d4e21ea0df897a92fe;p=prosody.git diff --git a/prosody b/prosody index 671910df..07ec2bdb 100755 --- a/prosody +++ b/prosody @@ -7,6 +7,8 @@ -- COPYING file in the source package for more information. -- +-- prosody - main executable for Prosody XMPP server + -- Will be modified by configure script if run -- CFG_SOURCEDIR=os.getenv("PROSODY_SRCDIR"); @@ -33,6 +35,12 @@ end prosody = { events = require "util.events".new(); }; local prosody = prosody; +-- 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" @@ -69,9 +77,15 @@ function read_config() print("\n"); print("**************************"); if level == "parser" then - print("A problem occured while reading the config file "..(CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); + print("A problem occured while reading the config file "..(CFG_CONFIGDIR or ".").."/prosody.cfg.lua"..":"); + print(""); local err_line, err_message = tostring(err):match("%[string .-%]:(%d*): (.*)"); - print("Error"..(err_line and (" on line "..err_line) or "")..": "..(err_message or tostring(err))); + if err:match("chunk has too many syntax levels$") then + print("An Include statement in a config file is including an already-included"); + print("file and causing an infinite loop. An Include statement in a config file is..."); + else + print("Error"..(err_line and (" on line "..err_line) or "")..": "..(err_message or tostring(err))); + end print(""); elseif level == "file" then print("Prosody was unable to find the configuration file."); @@ -97,11 +111,8 @@ function init_logging() require "core.loggingmanager" end -function check_dependencies() - -- Check runtime dependencies - if not require "util.dependencies".check_dependencies() then - os.exit(1); - end +function log_dependency_warnings() + dependencies.log_warnings(); end function sandbox_require() @@ -440,13 +451,13 @@ end -- previous steps to have already been performed read_config(); init_logging(); -check_dependencies(); sandbox_require(); set_function_metatable(); load_libraries(); init_global_state(); read_version(); log("info", "Hello and welcome to Prosody version %s", prosody.version); +log_dependency_warnings(); load_secondary_libraries(); init_data_store(); init_global_protection();