3 # sendmail This shell script takes care of starting and stopping
6 # chkconfig: 2345 80 30
7 # description: Sendmail is a Mail Transport Agent, which is the program \
8 # that moves mail from one machine to another.
9 # pidfile: /var/run/sendmail.pid
12 # Source function library
13 . /etc/rc.d/init.d/functions
16 . /etc/sysconfig/network
19 if [ -f /etc/sysconfig/sendmail ]; then
20 . /etc/sysconfig/sendmail
26 [ -z "$SMQUEUE" ] && SMQUEUE="$QUEUE"
27 [ -z "$SMQUEUE" ] && SMQUEUE=1h
29 # Check that networking is up.
30 if is_yes "${NETWORKING}"; then
31 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
32 msg_network_down Sendmail
40 # Check if the service is already running?
41 if [ ! -f /var/lock/subsys/sendmail ]; then
42 show "Prepare sendmail db"
44 /usr/bin/newaliases >/dev/null 2>&1
45 for i in virtusertable access domaintable mailertable; do
46 if [ -f /etc/mail/$i ]; then
47 makemap -v hash /etc/mail/$i < /etc/mail/$i >/dev/null 2>&1
48 [ $RETVAL -eq 0 ] && RETVAL=$?
51 [ $RETVAL -eq 0 ] && ok || fail
53 daemon /usr/sbin/sendmail $([ "$DAEMON" = "yes" ] && echo -bd) \
54 $([ -n "$QUEUE" ] && echo -q$QUEUE) \
55 $([ "$ENABLE_IPV6" = "yes" ] &&
56 echo -ODaemonPortOptions=Family=inet6 )
58 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sendmail
60 msg_already_running sendmail
62 if [ ! -f /var/lock/subsys/sm-client ]; then
63 msg_starting sm-client
64 daemon /usr/sbin/sendmail -L sm-msp-queue -Ac -q$SMQUEUE
66 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sm-client
68 msg_already_running sm-client
73 if [ -f /var/lock/subsys/sendmail ]; then
76 killproc --pidfile sendmail.pid sendmail
78 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sendmail
80 msg_not_running sendmail
82 if [ -f /var/lock/subsys/sm-client ]; then
83 msg_stopping sm-client
84 killproc --pidfile /var/spool/clientmqueue/sm-client.pid sendmail
86 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sm-client
88 msg_not_running sm-client
93 # See how we were called.
106 # TODO: make it better for sm-client
107 if [ -f /var/lock/subsys/sendmail ]; then
108 msg_reloading sendmail
110 killproc sendmail -HUP
113 msg_not_running sendmail
121 msg_usage "$0 {start|stop|restart|reload|force-reload|status}"