]> git.pld-linux.org Git - packages/sendmail.git/blob - sendmail.init
- added URL
[packages/sendmail.git] / sendmail.init
1 #! /bin/sh
2 #
3 # sendmail      This shell script takes care of starting and stopping
4 #               sendmail.
5 #
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
10
11
12 # Source function library
13 . /etc/rc.d/init.d/functions
14
15 # Get network config
16 . /etc/sysconfig/network
17
18 # Get service config
19 if [ -f /etc/sysconfig/sendmail ]; then
20         . /etc/sysconfig/sendmail
21 else
22         DAEMON=yes
23         QUEUE=1h
24         ENABLE_IPV6=yes
25 fi
26 [ -z "$SMQUEUE" ] && SMQUEUE="$QUEUE"
27 [ -z "$SMQUEUE" ] && SMQUEUE=1h
28
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
33                 exit 1
34         fi
35 else
36         exit 0
37 fi
38
39 RETVAL=0
40 # See how we were called.
41 case "$1" in
42   start)
43         # Check if the service is already running?
44         if [ ! -f /var/lock/subsys/sendmail ]; then
45                 show "Prepare sendmail db"
46                 busy
47                 /usr/bin/newaliases >/dev/null 2>&1
48                 for i in virtusertable access domaintable mailertable; do
49                         if [ -f /etc/mail/$i ]; then
50                                 makemap -v hash /etc/mail/$i < /etc/mail/$i >/dev/null 2>&1
51                                 [ $RETVAL -eq 0 ] && RETVAL=$?
52                         fi
53                 done
54                 [ $RETVAL -eq 0 ] && ok || fail
55                 msg_starting sendmail
56                 daemon /usr/sbin/sendmail $([ "$DAEMON" = "yes" ] && echo -bd) \
57                                         $([ -n "$QUEUE" ] && echo -q$QUEUE) \
58                                         $([ "$ENABLE_IPV6" = "yes" ] &&
59                                                 echo -ODaemonPortOptions=Family=inet6 )
60                 RETVAL=$?
61                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sendmail
62         else
63                 msg_already_running sendmail
64         fi
65         if [ ! -f /var/lock/subsys/sm-client ]; then
66                 msg_starting sm-client
67                 daemon /usr/sbin/sendmail -L sm-msp-queue -Ac -q$SMQUEUE
68                 RETVAL=$?
69                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sm-client
70         else
71                 msg_already_running sm-client
72         fi
73         ;;
74   stop)
75         if [ -f /var/lock/subsys/sendmail ]; then
76                 # Stop daemons.
77                 msg_stopping sendmail
78                 killproc --pidfile sendmail.pid sendmail
79                 RETVAL=$?
80                 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sendmail
81         else
82                 msg_not_running sendmail
83         fi
84         if [ -f /var/lock/subsys/sm-client ]; then
85                 msg_stopping sm-client
86                 killproc --pidfile /var/spool/clientmqueue/sm-client.pid sendmail
87                 RETVAL=$?
88                 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sm-client
89         else
90                 msg_not_running sm-client
91         fi
92         ;;
93   restart)
94         $0 stop
95         $0 start
96         exit $?
97         ;;
98   reload|force-reload)
99         # TODO: make it better for sm-client
100         if [ -f /var/lock/subsys/sendmail ]; then
101                 msg_reloading sendmail
102                 busy
103                 killproc sendmail -HUP
104                 RETVAL=$?
105         else
106                 msg_not_running sendmail
107         fi
108         ;;
109   status)
110         status sendmail
111         exit $?
112         ;;
113   *)
114         msg_usage "$0 {start|stop|restart|reload|force-reload|status}"
115         exit 3
116 esac
117
118 exit $RETVAL
This page took 0.027573 seconds and 3 git commands to generate.