diff options
Diffstat (limited to 'cpp')
| -rwxr-xr-x | cpp/etc/qpidd | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cpp/etc/qpidd b/cpp/etc/qpidd index 55d885ef66..d9076191d6 100755 --- a/cpp/etc/qpidd +++ b/cpp/etc/qpidd @@ -19,6 +19,7 @@ prog=qpidd lockfile=/var/lock/subsys/$prog +pidfile=/var/run/qpidd.pid # Source function library. . /etc/rc.d/init.d/functions @@ -31,19 +32,24 @@ RETVAL=0 start() { echo -n $"Starting Qpid AMQP daemon: " - daemon --check $prog "runuser -s /bin/sh qpidd -c \"$prog --daemon $QPIDD_OPTIONS\"" + daemon --pidfile $pidfile --check $prog --user qpidd $prog --daemon $QPIDD_OPTIONS RETVAL=$? echo [ $RETVAL = 0 ] && touch $lockfile + if [ $RETVAL = 0 ]; then + touch $pidfile + chown qpidd.qpidd $pidfile + runuser -s /bin/sh qpidd -c "qpidd -c > $pidfile" + fi return $RETVAL } stop() { echo -n $"Stopping Qpid AMQP daemon: " - killproc $prog + killproc -p ${pidfile} $prog RETVAL=$? echo - [ $RETVAL = 0 ] && rm -f $lockfile + [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile} } reload() { |
