]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sbin/init/rc.d/nscd
Move rc startup scripts from etc/ to sbin/init/
[FreeBSD/FreeBSD.git] / sbin / init / rc.d / nscd
1 #!/bin/sh
2 #
3 # $FreeBSD$
4 #
5
6 # PROVIDE: nscd
7 # REQUIRE: DAEMON
8 # BEFORE: LOGIN
9 # KEYWORD: shutdown
10
11 #
12 # Add the following lines to /etc/rc.conf to enable nscd:
13 #
14 # nscd_enable="YES"
15 #
16 # See nscd(8) for flags
17 #
18
19 . /etc/rc.subr
20
21 name="nscd"
22 desc="Name-service caching daemon"
23 rcvar="nscd_enable"
24
25 command=/usr/sbin/nscd
26 extra_commands="flush"
27 flush_cmd="${command} -I all"
28
29 # usage: _nscd_set_option <option name> <default value>
30 #
31 _nscd_set_option() {
32         local _optname _defoptval _nscd_opt_val _cached_opt_val
33         _optname=$1
34         _defoptval=$2
35
36         _nscd_opt_val=$(eval "echo \$nscd_${_optname}")
37         _cached_opt_val=$(eval "echo \$cached_${_optname}")
38
39         if [ -n "$_cached_opt_val" -a "$_nscd_opt_val" != "$_defoptval" ]; then
40                 warn "You should use nscd_${_optname} instead of" \
41                     "cached_${_optname}"
42                 setvar "nscd_${_optname}" "$_cached_opt_val"
43         else
44                 setvar "nscd_${_optname}" "${_nscd_opt_val:-$_defoptval}"
45         fi
46 }
47
48
49 load_rc_config $name
50 _nscd_set_option "enable" "NO"
51 _nscd_set_option "pidfile" "/var/run/nscd.pid"
52 _nscd_set_option "flags" ""
53 run_rc_command "$1"
54