]> git.pld-linux.org Git - packages/dnsmasq.git/blob - dnsmasq.init
- cleaning
[packages/dnsmasq.git] / dnsmasq.init
1 #!/bin/sh
2 #
3 # Startup script for the DNS caching server
4 #
5 # chkconfig:    345 14 89
6 # description:  This script starts your DNS caching server
7 # processname:  dnsmasq
8 # pidfile:      /var/run/dnsmasq.pid
9
10 # Set some frequently user variables
11 SERVICE=dnsmasq
12 LOCKFILE=/var/lock/subsys/$SERVICE
13 MSG=$SERVICE
14 CMD=$SERVICE
15
16 # Source funtion library
17 . /etc/rc.d/init.d/functions
18
19 # Get network config
20 . /etc/sysconfig/network
21
22 # Check that networking is up
23 if is_yes "${NETWORKING}"; then
24         if [ ! -f /var/lock/subsys/network ]; then
25                 msg_network_down $MSG
26                 exit 1
27         fi
28 else
29         exit 0
30 fi
31
32 MAILHOSTNAME=""
33 RESOLV_CONF=""
34 DHCP_LEASE="/var/lib/dhcp/dhcpd.leases"
35 DOMAIN_SUFFIX=`dnsdomainname`
36 OPTIONS=""
37
38 # Get service config
39 [ -f "/etc/sysconfig/$SERVICE" ] && . "/etc/sysconfig/$SERVICE"
40
41 # Set proper options for dnsmasq
42 [ -n "$MAILHOSTNAME" ] &&  OPTIONS="$OPTIONS -m $MAILHOSTNAME"
43 [ -n "$RESOLV_CONF" ] && OPTIONS="$OPTIONS -r $RESOLV_CONF"
44 [ -n "$DHCP_LEASE" ] && OPTIONS="$OPTIONS -l $DHCP_LEASE"
45 [ -n "$DOMAIN_SUFFIX" ] && OPTIONS="$OPTIONS -s $DOMAIN_SUFFIX"
46
47 # See how we were called.
48 case "$1" in
49   start)
50         if [ ! -f "$LOCKFILE" ]; then
51                 msg_starting $MSG
52                 daemon $CMD $OPTIONS
53                 RETVAL=$?
54                 [ $RETVAL -eq 0 ] && touch $LOCKFILE
55         else
56                 msg_already_running $MSG
57                 exit 1
58         fi
59         ;;
60   stop)
61         if [ -f "$LOCKFILE" ]; then
62                 msg_stopping $MSG
63                 killproc $CMD
64                 rm -f $LOCKFILE  >/dev/null 2>&1
65         else
66                 msg_not_running $MSG
67                 exit 1
68         fi
69         ;;
70   status)
71         status $CMD
72         exit $?
73         ;;
74   restart|reload)
75         $0 stop
76         $0 start
77         ;;
78   *)
79         msg_usage "$0 {start|stop|restart|reload|status}"
80         exit 1
81 esac
82
83 exit $RETVAL
This page took 0.039508 seconds and 4 git commands to generate.