summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'hardened/toolchain/branches/pieworld/sys-libs/glibc/files/nscd')
-rwxr-xr-xhardened/toolchain/branches/pieworld/sys-libs/glibc/files/nscd61
1 files changed, 61 insertions, 0 deletions
diff --git a/hardened/toolchain/branches/pieworld/sys-libs/glibc/files/nscd b/hardened/toolchain/branches/pieworld/sys-libs/glibc/files/nscd
new file mode 100755
index 0000000..a683e8f
--- /dev/null
+++ b/hardened/toolchain/branches/pieworld/sys-libs/glibc/files/nscd
@@ -0,0 +1,61 @@
+#!/sbin/runscript
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/nscd,v 1.6 2006/06/18 06:49:50 vapier Exp $
+
+depend() {
+ use dns ldap net slapd
+}
+
+checkconfig() {
+ if [[ ! -d /var/run/nscd ]] ; then
+ mkdir -p /var/run/nscd
+ chmod 755 /var/run/nscd
+ fi
+ if [[ -z ${NSCD_PERMS_OK} && $(stat -c %a /var/run/nscd) != "755" ]] ; then
+ echo ""
+ ewarn "nscd run dir is not world readable, you should reset the perms:"
+ ewarn "chmod 755 /var/run/nscd"
+ ewarn "chmod a+rw /var/run/nscd/socket"
+ echo ""
+ ewarn "To disable this warning, set 'NSCD_PERMS_OK' in /etc/conf.d/nscd"
+ echo ""
+ fi
+}
+
+start() {
+ checkconfig
+
+ ebegin "Starting Name Service Cache Daemon"
+ local secure=`while read curline ; do
+ table=${curline%:*}
+ entries=${curline##$table:}
+ table=${table%%[^a-z]*}
+ case $table in
+ passwd*|group*|hosts)
+ for entry in $entries ; do
+ case $entry in
+ nisplus*)
+ /usr/sbin/nscd_nischeck $table || \
+ /echo "-S $table,yes"
+ ;;
+ esac
+ done
+ ;;
+ esac
+ done < /etc/nsswitch.conf`
+ local pidfile="$(strings /usr/sbin/nscd | grep nscd.pid)"
+ mkdir -p "$(dirname ${pidfile})"
+ start-stop-daemon --start --quiet \
+ --exec /usr/sbin/nscd --pid ${pidfile} \
+ -- $secure
+ eend $?
+}
+
+stop() {
+ ebegin "Shutting down Name Service Cache Daemon"
+ start-stop-daemon --stop --quiet --exec /usr/sbin/nscd
+ eend $?
+}
+
+# vim:ts=4