[Pkg-clamav-commits] [SCM] Debian repository for ClamAV branch, debian/unstable, updated. debian/0.94.dfsg.2-1-466-ga4903a4
Michael Tautschnig
mt at debian.org
Wed Mar 25 14:10:04 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 2d2914f4930626f7e0f7be3d99f7d31e3b96f211
Author: Michael Tautschnig <mt at debian.org>
Date: Wed Mar 25 12:44:47 2009 +0100
Adapted clamav-milter's init script
- Made it as similar as possible to clamav-daemon's init script for easier
maintainance
- Doesn't use /etc/default/clamav-milter anymore
Signed-off-by: Michael Tautschnig <mt at debian.org>
diff --git a/debian/clamav-milter.init.in b/debian/clamav-milter.init.in
index cbfbcd2..37a47d7 100644
--- a/debian/clamav-milter.init.in
+++ b/debian/clamav-milter.init.in
@@ -11,117 +11,91 @@
# Description: Clam AntiVirus milter interface
### END INIT INFO
-# edit /etc/default/clamav-milter for options
-
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/clamav-milter
+NAME=clamav-milter
DESC="Sendmail milter plugin for ClamAV"
-BASENAME=clamav-milter
-CLAMAVCONF=/etc/clamav/clamd.conf
-DEFAULT=/etc/default/clamav-milter
-OPTIONS="-dq"
+CLAMAVMILTERCONF=/etc/clamav/clamav-milter.conf
SUPERVISOR=/usr/bin/daemon
+SUPERVISORNAME=daemon
SUPERVISORPIDFILE="/var/run/clamav/daemon-clamav-milter.pid"
-SUPERVISORARGS="-F $SUPERVISORPIDFILE --name=$BASENAME --respawn"
+SUPERVISORARGS="--name=$NAME --respawn $DAEMON -F $SUPERVISORPIDFILE"
[ -x "$DAEMON" ] || exit 0
-[ -r "$CLAMAVCONF" ] || exit 0
-[ -r "$DEFAULT" ] && . $DEFAULT
-[ -z "$PIDFILE" ] && PIDFILE=/var/run/clamav/clamav-milter.pid
-[ -z "$SOCKET" ] && SOCKET=local:/var/run/clamav/clamav-milter.ctl
-
. /lib/lsb/init-functions
+if [ ! -f "$CLAMAVMILTERCONF" ]; then
+ log_failure_msg "There is no configuration file for clamav-milter."
+ log_failure_msg "Please either dpkg-reconfigure $DESC, or copy the example from"
+ log_failure_msg "/usr/share/doc/clamav-milter/examples/ to $CLAMAVMILTERCONF and run"
+ log_failure_msg "'/etc/init.d/clamav-milter start'"
+ exit 1;
+fi
+
#COMMON-FUNCTIONS#
-slurp_config "$CLAMAVCONF"
+slurp_config "$CLAMAVMILTERCONF"
-case "$SOCKET" in
- /*)
- SOCKET_PATH="$SOCKET"
- SOCKET="local:$SOCKET"
- ;;
- *)
- SOCKET_PATH=`echo $SOCKET | sed -e s/local\://`
- # If the socket is type inet: we don't care - we can't rm -f that later :)
- ;;
-esac
+if [ -n "$Example" ]; then
+ log_failure_msg "$DESC is not configured."
+ log_failure_msg "Please edit $CLAMAVMILTERCONF and run '/etc/init.d/clamav-milter start'"
+ exit 0
+fi
if is_true "$Foreground"; then
if [ ! -x "$SUPERVISOR" ] ; then
- log_failure_msg "Foreground specified, but $SUPERVISOR not found"
+ log_failure_msg "Foreground specified, but $SUPERVISORNAME not found"
exit 0
else
RUN_SUPERVISED=1
- SUPERVISOR_EXEC="$DAEMON $OPTIONS --pidfile $PIDFILE $SOCKET"
fi
fi
-if [ -z "$RUN_SUPERVISED" ] ; then
- if [ -f "$PIDFILE" ]; then
- PID=`pidofproc -p $PIDFILE $DAEMON`
- RUNNING=$?
- else
- PID=`pidofproc $DAEMON`
- RUNNING=$?
- fi
+[ -n "$User" ] || User=clamav
+
+make_dir $(dirname "$SUPERVISORPIDFILE")
+
+THEPIDFILE="`grep ^PidFile $CLAMAVMILTERCONF | awk '{print $2}'`"
+[ -n "$THEPIDFILE" ] || THEPIDFILE='/var/run/clamav/clamav-milter.pid'
+
+if [ -f "$THEPIDFILE" ]; then
+ CLAMDPID=`pidofproc -p $THEPIDFILE $DAEMON`
+ RUNNING=$?
else
- [ -e "$SUPERVISORPIDFILE" ] && PID=`sed 's/[^0-9]//g' $SUPERVISORPIDFILE`
+ CLAMDPID=`pidofproc $DAEMON`
+ RUNNING=$?
fi
-[ "$PID" = '1' ] && unset PID
-[ -n "$User" ] || User=clamav
-[ -n "$DataBaseDirectory" ] || DataBaseDirectory=/var/run/clamav
+if [ -z "$RUN_SUPERVISED" ]; then
+ PID="$CLAMDPID"
+else
+ [ -e "$SUPERVISORPIDFILE" ] && PID=`cat $SUPERVISORPIDFILE`
+fi
-make_dir "$DataBaseDirectory"
-make_dir $(dirname "$SOCKET_PATH")
+[ "$PID" = '1' ] && unset PID
case "$1" in
start)
OPTIND=1
- if [ -n "$PID" ]; then
- PID=`echo $PID | sed 's/[^0-9]//g'`
- if kill -0 $PID; then
- log_failure_msg "$DAEMON already running"
- exit 1
- fi
- fi
if [ -z "$RUN_SUPERVISED" ] ; then
- log_daemon_msg "Starting $DESC" "$BASENAME"
- su "$User" -p -s /bin/sh -c ". /lib/lsb/init-functions && start_daemon $DAEMON $OPTIONS --pidfile $PIDFILE $SOCKET" > /dev/null
+ log_daemon_msg "Starting $DESC" "$NAME "
+ su "$User" -p -s /bin/sh -c ". /lib/lsb/init-functions && start_daemon -p $THEPIDFILE $DAEMON"
ret=$?
- else
- log_daemon_msg "Starting $DESC" "$BASENAME (supervised)"
- $SUPERVISOR $SUPERVISORARGS -X "$SUPERVISOR_EXEC"
+ else
+ log_daemon_msg "Starting $DESC" "$NAME (supervised) "
+ $SUPERVISOR $SUPERVISORARGS
ret=$?
fi
- if [ $ret = 0 ] && [ "$USE_POSTFIX" = 'yes' ] && [ "${SOCKET_PATH#inet}" = "${SOCKET_PATH}" ]; then
- cnt=0
- until [ -e "$SOCKET_PATH" ] ; do
- cnt=`expr "$cnt" + 1`
- if [ "$cnt" -gt 15 ]; then
- break
- fi
- sleep 2
- done
- if [ -e "$SOCKET_PATH" ]; then
- chmod g+w $SOCKET_PATH
- chgrp postfix $SOCKET_PATH
- else
- log_warning_msg "Socket not created. Investigate"
- fi
- fi
log_end_msg $ret
;;
stop)
+ log_daemon_msg "Stopping $DESC" "$NAME"
OPTIND=1
- log_daemon_msg "Stopping $DESC" "$BASENAME"
if [ -n "$PID" ]; then
- PID=`echo $PID | sed 's/[^0-9]//g'`
- kill -15 -"$PID" 2>/dev/null || true
+ kill -15 -"$PID"
ret=$?
- sleep 2
- if kill -0 "$PID" 2>/dev/null; then
+ sleep 1
+ if kill -0 "$PID" 2>/dev/null; then
ret=$?
log_progress_msg "Waiting . "
cnt=0
@@ -130,7 +104,6 @@ case "$1" in
cnt=`expr "$cnt" + 1`
if [ "$cnt" -gt 15 ]; then
kill -9 -"$PID"
- ret=$?
break
fi
sleep 2
@@ -139,7 +112,7 @@ case "$1" in
fi
else
if [ -z "$RUN_SUPERVISED" ] ; then
- killproc -p $PIDFILE $DAEMON
+ killproc -p $THEPIDFILE
ret=$?
else
killproc -p $SUPERVISORPIDFILE
@@ -151,18 +124,15 @@ case "$1" in
else
log_end_msg $?
fi
- [ -e "$SOCKET_PATH" ] && rm -f $SOCKET_PATH
- [ -e "$PIDFILE" ] && rm -f $PIDFILE
- ;;
- force-reload | restart)
- $0 stop
- sleep 2
- $0 start
;;
status)
status_of_proc "$DAEMON" "$NAME"
exit $?
;;
+ restart|force-reload)
+ $0 stop
+ $0 start
+ ;;
*)
log_failure_msg "Usage: $0 {start|stop|restart|force-reload|status}" >&2
exit 1
--
Debian repository for ClamAV
More information about the Pkg-clamav-commits
mailing list