aboutsummaryrefslogtreecommitdiffstats
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
commitf629de74c48447ea8850a8d104fede5c7e1b5068 (patch)
treec3e86063f61407b356268022b51853167602817e
parent32c59705844af149a3b9fa29d82b7579f4536c42 (diff)
downloadprosody-f629de74c48447ea8850a8d104fede5c7e1b5068.tar.gz
prosody-f629de74c48447ea8850a8d104fede5c7e1b5068.zip
prosody: Add sanity_check() to startup sequence. Check that we have at least one vhost enabled to avoid Bad Things.
-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();