Blob Blame History Raw
--- src/ejabberdctl.template	2008-05-20 14:22:03.000000000 +0400
+++ src/ejabberdctl.template	2008-06-22 19:41:03.000000000 +0400
@@ -9,12 +9,13 @@
 
 # define default environment variables
 NODE=ejabberd
-HOST=localhost
+HOST=`hostname | cut -d. -f1`
 ERLANG_NODE=$NODE@$HOST
-ROOTDIR=@rootdir@
+ROOTDIR=
+MAINDIR=
 EJABBERD_CONFIG_PATH=$ROOTDIR/etc/ejabberd/ejabberd.cfg
 LOGS_DIR=$ROOTDIR/var/log/ejabberd/
-EJABBERD_DB=$ROOTDIR/var/lib/ejabberd/db/$NODE
+EJABBERD_DB=$ROOTDIR/var/lib/ejabberd/spool
 
 # read custom configuration
 CONFIG=$ROOTDIR/etc/ejabberd/ejabberdctl.cfg
@@ -42,10 +43,10 @@
 ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES"
 
 # define additional environment variables
-EJABBERD_EBIN=$ROOTDIR/var/lib/ejabberd/ebin
-EJABBERD_MSGS_PATH=$ROOTDIR/var/lib/ejabberd/priv/msgs
-EJABBERD_SO_PATH=$ROOTDIR/var/lib/ejabberd/priv/lib
-EJABBERD_BIN_PATH=$ROOTDIR/var/lib/ejabberd/priv/bin
+EJABBERD_EBIN=$MAINDIR/ebin
+EJABBERD_MSGS_PATH=$MAINDIR/priv/msgs
+EJABBERD_SO_PATH=$MAINDIR/priv/lib
+EJABBERD_BIN_PATH=$MAINDIR/priv/bin
 EJABBERD_LOG_PATH=$LOGS_DIR/ejabberd.log
 SASL_LOG_PATH=$LOGS_DIR/sasl.log
 DATETIME=`date "+%Y%m%d-%H%M%S"`
@@ -139,11 +140,13 @@
 # common control function
 ctl ()
 {
+    /sbin/runuser -s /bin/bash - ejabberd -c " \
     erl \
       $NAME ejabberdctl \
       -noinput \
       -pa $EJABBERD_EBIN \
-      -s ejabberd_ctl -extra $ERLANG_NODE $@
+      -s ejabberd_ctl -extra $ERLANG_NODE $@ \
+      "
     result=$?
     case $result in
     0) :;;