aboutsummaryrefslogtreecommitdiffstats
path: root/prosody
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2011-04-14 22:40:50 +0100
committerMatthew Wild <mwild1@gmail.com>2011-04-14 22:40:50 +0100
commit0257b8e30ca007b2387bbd76acaff293d66e055a (patch)
treec4ba17809693443445d4fa1f6f4b81cfbc8efe43 /prosody
parent4e9c185a7756bd5941fe67238084bc3bf963df0a (diff)
downloadprosody-0257b8e30ca007b2387bbd76acaff293d66e055a.tar.gz
prosody-0257b8e30ca007b2387bbd76acaff293d66e055a.zip
prosody: Add sanity_check() to startup sequence. Check that we have at least one vhost enabled to avoid Bad Things.
Diffstat (limited to 'prosody')
-rwxr-xr-xprosody14
1 files changed, 14 insertions, 0 deletions
diff --git a/prosody b/prosody
index 86e82490..1a58fd33 100755
--- a/prosody
+++ b/prosody
@@ -127,6 +127,19 @@ function log_dependency_warnings()
dependencies.log_warnings();
end
+function sanity_check()
+ for host, host_config in pairs(configmanager.getconfig()) do
+ if host ~= "*"
+ and host_config.core.enabled ~= false
+ and not host_config.core.component_module then
+ return;
+ end
+ end
+ log("error", "No enabled VirtualHost entries found in the config file.");
+ log("error", "At least one active host is required for Prosody to function. Exiting...");
+ os.exit(1);
+end
+
function sandbox_require()
-- Replace require() with one that doesn't pollute _G, required
-- for neat sandboxing of modules
@@ -463,6 +476,7 @@ end
-- previous steps to have already been performed
read_config();
init_logging();
+sanity_check();
sandbox_require();
set_function_metatable();
load_libraries();