Subject: amavisd-new: Missing startup script for the amavisd-snmp-subagent Package: amavisd-new Version: 1:2.7.1-2 Severity: wishlist
Dear Maintainer, There is no startup script for the amavisd-snmp-subagentdaemon, although it's not needed for the default setup is quite conveninent to use it for monitoring purposes. I created a new init script that works with wheezy based on the current skeleton -- System Information: Debian Release: 7.0 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: i386 (i686) Kernel: Linux 3.2.0-4-686-pae (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages amavisd-new depends on: ii adduser 3.113+nmu3 ii debconf [debconf-2.0] 1.5.49 ii file 5.11-2 ii libarchive-zip-perl 1.30-6 ii libberkeleydb-perl 0.51-1 ii libconvert-tnef-perl 0.17-11 ii libconvert-uulib-perl 1:1.4~dfsg-1+b1 pn libdigest-md5-perl <none> ii libio-stringy-perl 2.110-5 ii libmail-dkim-perl 0.39-1 ii libmailtools-perl 2.09-1 pn libmime-base64-perl <none> ii libmime-tools-perl 5.503-1 ii libnet-server-perl 2.006-1 ii libunix-syslog-perl 1.1-2+b2 ii pax 1:20120606-2 ii perl [libtime-hires-perl] 5.14.2-21 ii perl-modules [libarchive-tar-perl] 5.14.2-21 Versions of packages amavisd-new recommends: ii altermime 0.3.10-7 pn libnet-patricial-perl <none> ii ripole 0.2.0+20081101.0215-1 Versions of packages amavisd-new suggests: ii apt-listchanges 2.85.11 pn arj <none> pn cabextract <none> ii clamav 0.97.8+dfsg-1 ii clamav-daemon 0.97.8+dfsg-1 ii cpio 2.11+dfsg-0.1 pn dspam <none> pn lha <none> pn lhasa <none> pn libauthen-sasl-perl <none> ii libdbi-perl 1.622-1 ii libmail-dkim-perl 0.39-1 pn libnet-ldap-perl <none> ii libsnmp-perl 5.4.3~dfsg-2.7 pn lzop <none> pn nomarch <none> pn p7zip <none> pn rpm <none> ii spamassassin 3.3.2-5 pn unrar <none> pn unrar-free <none> pn zoo <none> -- Configuration Files: /etc/amavis/conf.d/50-user changed [not included] -- debconf information excluded
#! /bin/sh ### BEGIN INIT INFO # Provides: amavis-snmp # Required-Start: $remote_fs $syslog amavis snmpd # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Startup script for amavis snmp subagent # Description: This script starts the daemon used to connect amavis with the # snmpd daemon ### END INIT INFO # Do NOT "set -e" PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="amavis snmp subagent" NAME=amavisd-snmp-subagent DAEMON=/usr/sbin/$NAME DAEMON_ARGS="-P /var/run/$NAME.pid" PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. . /lib/lsb/init-functions # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started if [ -e $PIDFILE ] then if [ -d /proc/`cat $PIDFILE`/ ] then echo "$NAME already running." exit 0; else rm -f $PIDFILE fi fi start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS \ || return 2 # Add code here, if necessary, that waits for the process to be ready # to handle requests from services started subsequently which depend # on this one. As a last resort, sleep for some time. } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 # Wait for children to finish too if this is a daemon that forks # and if the daemon is only ever run from this initscript. # If the above conditions are not satisfied then add some other code # that waits for the process to drop all resources that could be # needed by services started subsequently. A last resort is to # sleep for some time. start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --pidfile $PIDFILE [ "$?" = 2 ] && return 2 # Many daemons don't delete their pidfiles when they exit. rm -f $PIDFILE return "$RETVAL" } # # Function that sends a SIGHUP to the daemon/service # do_reload() { # # If the daemon can reload its configuration without # restarting (for example, when it is sent a SIGHUP), # then implement that here. # start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME return 0 } case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; #reload|force-reload) # # If do_reload() is not implemented then leave this commented out # and leave 'force-reload' as an alias for 'restart'. # #log_daemon_msg "Reloading $DESC" "$NAME" #do_reload #log_end_msg $? #;; restart|force-reload) # # If the "reload" option is implemented then remove the # 'force-reload' alias # log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac :