#!/bin/bash # # zarafa-dagent Zarafa Outlook Sharing LMTP Delivery agent # # chkconfig: - 86 24 # description: The Zarafa Delivery agent in LMTP mode can be used to \ # run the zarafa-dagent in daemon mode and let your SMTP \ # server connect to it to deliver email to users using \ # the LMTP protocol. The Zarafa Delivery agent can also \ # be used as a standalone program. # processname: /usr/bin/zarafa-dagent # config: /etc/zarafa/dagent.cfg # pidfile: /var/run/zarafa-dagent.pid ### BEGIN INIT INFO # Provides: zarafa-dagent # Required-Start: $local_fs $network $remote_fs $syslog # Required-Stop: $local_fs $network $remote_fs $syslog # Should-Start: zarafa-server # Should-Stop: zarafa-server # Short-Description: Zarafa Outlook Sharing LMTP Delivery agent # Description: The Zarafa Delivery agent in LMTP mode can be used to run # the zarafa-dagent in daemon mode and let your SMTP server # connect to it to deliver email to users using the LMTP # protocol. The Zarafa Delivery agent can also be used as a # standalone program. ### END INIT INFO DAGENTCONFIG=/etc/zarafa/dagent.cfg DAGENTPROGRAM=/usr/bin/zarafa-dagent # Sanity checks. [ -x $DAGENTPROGRAM ] || exit 0 # the -d option is required to run LMTP mode deamonized DAGENTCONFIG_OPT="-d" [ ! -z $DAGENTCONFIG -a -f $DAGENTCONFIG ] && DAGENTCONFIG_OPT="$DAGENTCONFIG_OPT -c $DAGENTCONFIG" [ -f /etc/sysconfig/zarafa ] && . /etc/sysconfig/zarafa if [ -z "$ZARAFA_LOCALE" ]; then ZARAFA_LOCALE="C" fi # Source function library. . /etc/rc.d/init.d/functions RETVAL=0 dagent=`basename $DAGENTPROGRAM` lockfile=/var/lock/subsys/$dagent pidfile=/var/run/$dagent.pid start() { # Start in background, always succeeds echo -n $"Starting $dagent: " export LC_ALL=$ZARAFA_LOCALE export LANG=$ZARAFA_LOCALE daemon $DAGENTPROGRAM $DAGENTCONFIG_OPT RETVAL=$? unset LC_ALL LANG echo [ $RETVAL -eq 0 ] && touch $lockfile return $RETVAL } stop() { echo -n $"Stopping $dagent: " killproc $DAGENTPROGRAM RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $lockfile return $RETVAL } restart() { stop start } reload() { echo -n $"Restarting $dagent: " killproc $DAGENTPROGRAM -SIGHUP RETVAL=$? echo return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status $dagent RETVAL=$? ;; restart|force-reload) restart ;; condrestart|try-restart) if [ -f ${pidfile} ]; then stop start fi ;; reload) reload ;; *) echo $"Usage: $dagent {start|stop|status|reload|restart|condrestart|force-reload|try-restart}" RETVAL=1 ;; esac exit $RETVAL