#!/bin/sh -e #----------------------------------------------------------------------------- # # $Sendmail: update_smrsh,v @sm_version@ @sm_date@ @sm_time@ cowboy Exp $ # # Update MDA programs used by Sendmail for Debian # # Copyright (c) 2002-@SM_CPYRT@ Richard Nelson. All Rights Reserved. # # Notes (to all): # * The entries in /etc/mail/smrsh are used by the feature(smrsh) and # sensible-mda. # # Notes (to self): # * # #----------------------------------------------------------------------------- set -e; # flag used to indicate a dataset has been moved, may need another update changed=0; new=1; def_progs="\ @libexecdir@/mail.local \ @libexecdir@/sensible-mda \ /usr/bin/vacation \ /usr/bin/procmail \ /usr/bin/maildrop \ /usr/bin/deliver \ "; # Path to other sendmail helpers if [ -x ./update_sendmail ]; then sm_path='.'; elif [ -x $(dirname $0)/update_sendmail ]; then sm_path=$(dirname $0); else sm_path=@datadir@/sendmail; fi; # Bring in sendmail.conf for the network definitions if [ ! -f @sysconfdir@/mail/sendmail.conf ]; then if [ -x $sm_path/update_conf ]; then $sm_path/update_conf; fi; fi; if [ -f @sysconfdir@/mail/sendmail.conf ]; then . @sysconfdir@/mail/sendmail.conf; fi; if [ "$HANDS_OFF" != 'No' ]; then exit 0; fi; echo " "; echo "Checking for installed MDAs..."; #------------------------------------------------------------------------------ # /etc/mail/smrsh is where the links to MDAs and authorized forwarding progs if [ ! -e @sysconfdir@/mail/smrsh ]; then changed=1; new=1; fi; chown smmta:smmsp @sysconfdir@/mail/smrsh; chmod 02755 @sysconfdir@/mail/smrsh; #------------------------------------------------------------------------------ # Iterate over the default list of programs and create any missing items for file in $def_progs; do ppath=$(dirname "$file"); pname=$(basename "$file"); # the file doesn't exist, see if we can remove its link if [ ! -e $file ]; then # let have there own version eh? if [ -e @sysconfdir@/mail/smrsh/$pname ]; then true; # no, if its a danglink symlink, drop it elif [ -L @sysconfdir@/mail/smrsh/$pname ]; then echo "Removing link for no longer extant program ($pname)"; rm @sysconfdir@/mail/smrsh/$pname; fi; # the file exists, see if we need to add its link elif [ ! -e @sysconfdir@/mail/smrsh/$pname ]; then echo "Adding link for newly extant program ($pname)"; ln -sf $file @sysconfdir@/mail/smrsh/$pname; changed=1; fi; done; #------------------------------------------------------------------------------ exit $changed;