summaryrefslogtreecommitdiff
path: root/scripts/xmppdaemon.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-03-18 11:08:27 -0700
committerBrion Vibber <brion@pobox.com>2010-03-18 11:08:27 -0700
commit0fe82bd0c9fdce78f6bd37463075cb45a99b25a4 (patch)
treea6cf215cc3344b9f985dcce6728e9eb433506393 /scripts/xmppdaemon.php
parent1de7badd78bb3cddc99a6960ec6a395a191ce6be (diff)
Runtime check for known bad PHP versions with 64-bit stream_select() bug in xmppdaemon.php.
Diffstat (limited to 'scripts/xmppdaemon.php')
-rwxr-xr-xscripts/xmppdaemon.php10
1 files changed, 9 insertions, 1 deletions
diff --git a/scripts/xmppdaemon.php b/scripts/xmppdaemon.php
index 26c7991b8..abd7cc22b 100755
--- a/scripts/xmppdaemon.php
+++ b/scripts/xmppdaemon.php
@@ -98,7 +98,15 @@ class XmppMaster extends IoMaster
// don't have to find an XMPP site to start up when using --all mode.
if (common_config('xmpp','enabled')==false) {
print "Aborting daemon - xmpp is disabled\n";
- exit();
+ exit(1);
+}
+
+if (version_compare(PHP_VERSION, '5.2.6', '<')) {
+ $arch = php_uname('m');
+ if ($arch == 'x86_64' || $arch == 'amd64') {
+ print "Aborting daemon - 64-bit PHP prior to 5.2.6 has known bugs in stream_select; you are running " . PHP_VERSION . " on $arch.\n";
+ exit(1);
+ }
}
if (have_option('i', 'id')) {