summaryrefslogtreecommitdiffstats
path: root/net/pdnsd/files/pdnsd.init
blob: e678d8d6a93766e7a3e7d16d02182308cb709c93 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/sh /etc/rc.common

START=65
NAME=pdnsd
DESC="proxy DNS server"

DAEMON=/usr/sbin/pdnsd
PID_FILE=/var/run/$NAME.pid
CACHEDIR=/var/pdnsd
CACHE=$CACHEDIR/pdnsd.cache

USER=nobody
GROUP=nogroup

start() {
       echo -n "Starting $DESC: $NAME"

       gen_cache

       $DAEMON --daemon -p $PID_FILE
       echo " ."
}

stop() {
       echo -n "Stopping $DESC: $NAME"
       kill `cat $PID_FILE` > /dev/null 2>&1
       rm -rf $PID_FILE
       echo " ."
}

restart() {
       echo "Restarting $DESC: $NAME... "
       stop
       sleep 2
       start
}

gen_cache()
{
       if ! test -f "$CACHE"; then
               mkdir -p `dirname $CACHE`
               dd if=/dev/zero of="$CACHE" bs=1 count=4 2> /dev/null
               chown -R $USER.$GROUP $CACHEDIR
       fi
}