diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-03-23 11:58:01 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2015-03-23 11:58:01 -0300 |
commit | 1988c77fae4e3c3e762d1d361249e21622f548cf (patch) | |
tree | 5c0b658d83f23533b7c43758468b5282cd1ead68 /pcr/openrc-base/nscd | |
parent | 5333f9d3db9e5e7a174d4028107246338c1094eb (diff) | |
parent | 63dda12e2f3cdba9df1605f8ca845bf3ffcf416f (diff) | |
download | abslibre-1988c77fae4e3c3e762d1d361249e21622f548cf.tar.gz abslibre-1988c77fae4e3c3e762d1d361249e21622f548cf.tar.bz2 abslibre-1988c77fae4e3c3e762d1d361249e21622f548cf.zip |
Merge branch 'master' of ssh://projects.parabola.nu/~git/abslibre
Diffstat (limited to 'pcr/openrc-base/nscd')
-rw-r--r-- | pcr/openrc-base/nscd | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pcr/openrc-base/nscd b/pcr/openrc-base/nscd new file mode 100644 index 000000000..b102de070 --- /dev/null +++ b/pcr/openrc-base/nscd @@ -0,0 +1,64 @@ +#!/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.7 2007/02/23 12:09:39 uberlord 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})" + save_options pidfile "${pidfile}" + start-stop-daemon --start --quiet \ + --exec /usr/sbin/nscd --pidfile "${pidfile}" \ + -- $secure + eend $? +} + +stop() { + local pidfile="$(get_options pidfile)" + [ -n "${pidfile}" ] && pidfile="--pidfile ${pidfile}" + ebegin "Shutting down Name Service Cache Daemon" + start-stop-daemon --stop --quiet --exec /usr/sbin/nscd ${pidfile} + eend $? +} + +# vim:ts=4 |