CID 1311767: Cast enum type to avoid compiler warnings
[samba.git] / packaging / RHEL-CTDB / setup / smb.init
1 #!/bin/sh
2 #
3 # chkconfig: - 91 35
4 # description: Starts and stops the Samba smbd and nmbd daemons \
5 #              used to provide SMB network services.
6 #
7 # pidfile: /var/run/samba/smbd.pid
8 # pidfile: /var/run/samba/nmbd.pid
9 # config:  /etc/samba/smb.conf
10
11
12 # Source function library.
13 if [ -f /etc/init.d/functions ] ; then
14   . /etc/init.d/functions
15 elif [ -f /etc/rc.d/init.d/functions ] ; then
16   . /etc/rc.d/init.d/functions
17 else
18   exit 0
19 fi
20
21 # Avoid using root's TMPDIR
22 unset TMPDIR
23
24 # Source networking configuration.
25 . /etc/sysconfig/network
26
27 if [ -f /etc/sysconfig/samba ]; then
28    . /etc/sysconfig/samba
29 fi
30
31 # Check that networking is up.
32 [ ${NETWORKING} = "no" ] && exit 0
33
34 # Check that smb.conf exists.
35 [ -f /etc/samba/smb.conf ] || exit 0
36
37 # Check that we can write to it... so non-root users stop here
38 [ -w /etc/samba/smb.conf ] || exit 0
39
40 # Check whether "netbios disabled" is true
41 #ISNETBIOSDISABLED=$(testparm -s 2>/dev/null | \
42 #       sed -n '/\[global\]/,/^$/p' | \
43 #       grep "disable netbios = Yes" | \
44 #       awk 'BEGIN{FS=" = "}{print $2}')
45
46 ISNETBIOSDISABLED=Yes
47
48 RETVAL=0
49
50
51 start() {
52         KIND="SMB"
53         echo -n $"Starting $KIND services: "
54         daemon smbd $SMBDOPTIONS
55         RETVAL=$?
56         echo
57         KIND="NMB"
58         if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
59                 echo -n $"Starting $KIND services: "
60                 daemon nmbd $NMBDOPTIONS
61                 RETVAL2=$?
62                 echo
63                 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/smb || \
64                         RETVAL=1
65         else
66                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/smb || \
67                         RETVAL=1
68         fi
69         return $RETVAL
70 }       
71
72 stop() {
73         KIND="SMB"
74         echo -n $"Shutting down $KIND services: "
75         killproc smbd
76         RETVAL=$?
77         [ $RETVAL -eq 0 ] && rm -f /var/run/smbd.pid
78         echo
79         KIND="NMB"
80         if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
81                 echo -n $"Shutting down $KIND services: "
82                 killproc nmbd 
83                 RETVAL2=$?
84                 [ $RETVAL2 -eq 0 ] && rm -f /var/run/nmbd.pid
85                 [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb 
86                 echo ""
87         else
88                 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/smb 
89                 echo ""
90         fi
91         return $RETVAL
92 }       
93
94 restart() {
95         stop
96         start
97 }       
98
99 reload() {
100         echo -n $"Reloading smb.conf file: "
101         killproc smbd -HUP
102         RETVAL=$?
103         echo
104         return $RETVAL
105 }       
106
107 rhstatus() {
108         status smbd
109         status nmbd
110 }       
111
112 case "$1" in
113   start)
114         start
115         ;;
116   stop)
117         stop
118         ;;
119   restart)
120         restart
121         ;;
122   reload)
123         reload
124         ;;
125   status)
126         rhstatus
127         ;;
128   condrestart)
129         [ -f /var/lock/subsys/smb ] && restart || :
130         ;;
131   *)
132         echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
133         exit 1
134 esac
135
136 exit $?