diff options
Diffstat (limited to 'nscd/nscd.init')
-rw-r--r-- | nscd/nscd.init | 55 |
1 files changed, 42 insertions, 13 deletions
diff --git a/nscd/nscd.init b/nscd/nscd.init index 6dc9d76..572288a 100644 --- a/nscd/nscd.init +++ b/nscd/nscd.init @@ -7,7 +7,7 @@ # for running programs and cache the results for the next \ # query. You should start this daemon only if you use \ # slow Services like NIS or NIS+ -# processname: nscd
+# processname: nscd # config: /etc/nscd.conf # @@ -18,38 +18,67 @@ # Source function library. . /etc/rc.d/init.d/functions +# nscd does not run on any kernel lower than 2.2.0 because of threading +# problems, so we require that in first place. +case $(uname -r) in + 2.[2-9].*) + # this is okay + ;; + [3-9]*) + # these are of course also okay + ;; + *) + #this is not + exit 0 + ;; +esac + +RETVAL=0 + # See how we were called. case "$1" in start) secure="" - for table in passwd group hosts - do - if egrep '^'$table':.*nisplus' /etc/nsswitch.conf >/dev/null - then - /usr/sbin/nscd_nischeck $table || - secure="$secure -S $table,yes" - fi - done +# for table in passwd group +# do +# if egrep '^'$table':.*nisplus' /etc/nsswitch.conf >/dev/null +# then +# /usr/lib/nscd_nischeck $table || +# secure="$secure -S $table,yes" +# fi +# done echo -n "Starting Name Switch Cache Daemon: " daemon nscd $secure + RETVAL=$? echo - touch /var/lock/subsys/nscd + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd ;; stop) echo -n "Stopping Name Switch Cache Daemon: " /usr/sbin/nscd -K - rm -f /var/lock/subsys/nscd - echo nscd + RETVAL=$? + if [ $RETVAL -eq 0 ]; then + rm -f /var/lock/subsys/nscd + echo nscd + else + echo + fi ;; status) status nscd + RETVAL=$? ;; restart) $0 stop $0 start + RETVAL=$? + ;; + reload) + killproc -HUP nscd + RETVAL=$? ;; *) echo "Usage: $0 {start|stop|status|restart}" ;; esac -exit 0 +exit $RETVAL |