]> git.pld-linux.org Git - packages/bind.git/blame_incremental - named.init
- up to 9.12.2 P1; fixes CVE-2018-5740
[packages/bind.git] / named.init
... / ...
CommitLineData
1#!/bin/sh
2#
3# named This shell script takes care of starting and stopping
4# named (BIND DNS server).
5#
6# chkconfig: 345 11 89
7#
8# description: named (BIND) is a Domain Name Server (DNS) \
9# that is used to resolve host names to IP addresses.
10
11CHROOT_TO_DIR="/var/lib/named"
12
13# Source function library
14. /etc/rc.d/init.d/functions
15
16# Source networking configuration
17. /etc/sysconfig/network
18
19NAMED_OPT=""
20
21# Try get config..
22[ -f /etc/sysconfig/named ] && . /etc/sysconfig/named
23
24# Check that networking is up.
25if is_yes "${NETWORKING}"; then
26 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
27 msg_network_down "Named"
28 exit 1
29 fi
30else
31 exit 0
32fi
33
34# Sanity check
35[ -e /etc/named.conf ] || exit 0
36
37[ -n "$NUM_CPUS" ] && NAMED_OPT="$NAMED_OPT -n $NUM_CPUS"
38
39start() {
40 # Check if the service is already running?
41 if [ -f /var/lock/subsys/named ]; then
42 msg_already_running "Named"
43 return
44 fi
45
46 msg_starting "Named"
47 modprobe -s capability > /dev/null 2>&1
48 [ -f /etc/localtime ] && cp -puL /etc/localtime $CHROOT_TO_DIR/etc/localtime
49 touch $CHROOT_TO_DIR/named.log && \
50 chown named:named $CHROOT_TO_DIR/named.log
51 daemon --pidfile $CHROOT_TO_DIR/named.pid /usr/sbin/named -u named \
52 -t $CHROOT_TO_DIR -c /etc/named.conf $NAMED_OPT </dev/null
53 RETVAL=$?
54 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/named
55}
56
57stop() {
58 if [ ! -f /var/lock/subsys/named ]; then
59 msg_not_running "Named"
60 return
61 fi
62
63 msg_stopping "Named"
64 killproc --pidfile $CHROOT_TO_DIR/named.pid named
65 rm -f /var/lock/subsys/named >/dev/null 2>&1
66}
67
68reload() {
69 if [ ! -f /var/lock/subsys/named ]; then
70 msg_not_running "Named"
71 RETVAL=7
72 return
73 fi
74
75 if [ -f /etc/rndc.conf ]; then
76 run_cmd "$(nls 'Reloading %s service' 'Named')" /usr/sbin/rndc reload
77 else
78 msg_reloading "Named"
79 killproc named -HUP
80 RETVAL=$?
81 fi
82}
83
84condrestart() {
85 if [ ! -f /var/lock/subsys/named ]; then
86 msg_not_running "Named"
87 RETVAL=$1
88 return
89 fi
90
91 stop
92 start
93}
94
95RETVAL=0
96# See how we were called.
97case "$1" in
98 start)
99 start
100 ;;
101 stop)
102 stop
103 ;;
104 restart)
105 stop
106 start
107 ;;
108 try-restart)
109 condrestart 0
110 ;;
111 reload|force-reload)
112 reload
113 ;;
114 status)
115 status named
116 RETVAL=$?
117 if [ -f /etc/rndc.conf ]; then
118 /usr/sbin/rndc status
119 RET=$?
120 if [ $RET -ne 0 ]; then
121 RETVAL=$RET
122 fi
123 fi
124 ;;
125 *)
126 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
127 exit 3
128esac
129
130exit $RETVAL
This page took 0.025036 seconds and 4 git commands to generate.