blob: 6fceb7dd7d9a42e6673e7c9095ab23340cf92eff (
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# $NetBSD: silcd.generic,v 1.2 2002/05/24 22:15:36 hubertf Exp $
#
KILL="/bin/kill"
CAT="/bin/cat"
RM="/bin/rm"
name="silcd"
confdir="@PKG_SYSCONFDIR@"
required_files="$confdir/silcd.conf"
required_dirs="/var/log/silcd"
pidfile="/var/run/${name}.pid"
command="@PREFIX@/sbin/silcd"
start_precmd="silcd_precmd"
silcd_precmd() {
if [ ! -f $confdir/silcd.prv ]; then
$command -C $confdir
fi
}
silcd_start() {
if [ ! -r $required_files ]; then
echo "$0: WARNING: $required_files is not readable."
exit 1
fi
if [ ! -d $required_dirs ]; then
echo "$0: WARNING: $required_dirs is not a directory."
exit 1
fi
eval $start_precmd
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
echo "Starting ${name}."
eval $command
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
}
silcd_stop() {
if [ -r $pidfile -a ! -z $pidfile ]; then
_pid=`${CAT} ${pidfile}`
else
echo "${name} not running?"
fi
if [ ${_pid:=0} -gt 1 -a ! "X$_pid" = "X " ]; then
echo "Stopping ${name}."
${KILL} ${_pid}
return_code=$?
if [ $return_code != "0" ]; then
exit 1
fi
fi
${RM} -f $pidfile
}
case $1 in
'start')
silcd_start
;;
'stop')
silcd_stop
;;
'restart')
silcd_stop
silcd_start
;;
*)
echo "Usage: $0 (start|stop|restart)"
;;
esac
|