summaryrefslogtreecommitdiff
path: root/FS/bin/freeside-selfservice-xmlrpcd
diff options
context:
space:
mode:
Diffstat (limited to 'FS/bin/freeside-selfservice-xmlrpcd')
-rwxr-xr-xFS/bin/freeside-selfservice-xmlrpcd11
1 files changed, 10 insertions, 1 deletions
diff --git a/FS/bin/freeside-selfservice-xmlrpcd b/FS/bin/freeside-selfservice-xmlrpcd
index fd7639cac..a90205189 100755
--- a/FS/bin/freeside-selfservice-xmlrpcd
+++ b/FS/bin/freeside-selfservice-xmlrpcd
@@ -25,6 +25,7 @@ use XMLRPC::Lite; # for XMLRPC::Serializer
use FS::Daemon qw(daemonize1 drop_root logfile daemonize2 );
use FS::UID qw(adminsuidsetup);
+use FS::Conf;
use FS::ClientAPI qw( load_clientapi_modules );
use FS::ClientAPI_XMLRPC; #FS::SelfService::XMLRPC;
@@ -47,18 +48,26 @@ my %typelookup = (
my $user = shift or die &usage;
$FS::Daemon::NOSIG = 1;
-daemonize1('freeside-selfservice-xmlrpcd');
+$FS::Daemon::PID_NEWSTYLE = 1;
+daemonize1('selfservice-xmlrpcd');
POE::Kernel->has_forked(); #daemonize forks...
drop_root();
+adminsuidsetup($user);
+
load_clientapi_modules;
logfile("$FREESIDE_LOG/selfservice-xmlrpcd.log");
daemonize2();
+my $conf = new FS::Conf;
+
+die "not running; selfservice-xmlrpc conf option is off\n"
+ unless $conf->exists('selfservice-xmlrpc');
+
###
# the main loop
###