]> git.pld-linux.org Git - packages/dnsmasq.git/blob - dnsmasq.init
- updated to 2.39
[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 -a "$1" != stop -a "$1" != status ]; 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 [ -n "$INTERFACE" ] && OPTIONS="$OPTIONS -i $INTERFACE"
47
48 RETVAL=0
49 # See how we were called.
50 case "$1" in
51   start)
52         if [ ! -f "$LOCKFILE" ]; then
53                 msg_starting $MSG
54                 daemon $CMD $OPTIONS
55                 RETVAL=$?
56                 [ $RETVAL -eq 0 ] && touch $LOCKFILE
57         else
58                 msg_already_running $MSG
59         fi
60         ;;
61   stop)
62         if [ -f "$LOCKFILE" ]; then
63                 msg_stopping $MSG
64                 killproc $CMD
65                 rm -f $LOCKFILE  >/dev/null 2>&1
66         else
67                 msg_not_running $MSG
68         fi
69         ;;
70   status)
71         status $CMD
72         ;;
73   restart|force-reload)
74         $0 stop
75         $0 start
76         exit $?
77         ;;
78   *)
79         msg_usage "$0 {start|stop|restart|force-reload|status}"
80         exit 3
81 esac
82
83 exit $RETVAL
This page took 0.112137 seconds and 3 git commands to generate.