diff options
author | Roy Marples <roy@marples.name> | 2008-01-11 10:55:36 +0000 |
---|---|---|
committer | Roy Marples <roy@marples.name> | 2008-01-11 10:55:36 +0000 |
commit | 13c552c3ece84b0d4e3b8e24eaa6b7196019b957 (patch) | |
tree | 83e9094e446624f94fa41ff5dc276027a825e915 /init.d.misc/named | |
parent | 349f4a81e64d8c29d87490b73a65ad10c8e506e2 (diff) |
Allow OS to define default package locations.
Diffstat (limited to 'init.d.misc/named')
-rw-r--r-- | init.d.misc/named | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/init.d.misc/named b/init.d.misc/named deleted file mode 100644 index 1b8f1906..00000000 --- a/init.d.misc/named +++ /dev/null @@ -1,118 +0,0 @@ -#!/sbin/runscript -# Copyright 2007 Roy Marples -# All rights reserved - -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -# SUCH DAMAGE. - -command=/usr/sbin/named -command_args=${named_args} -pidfile=/var/run/named/pid -name="Domain Name server" -extra_started_commands="reload" - -namedb=/etc/namedb -named_uid=${named_uid:-bind} - -depend() { - provide dns - need localmount - after bootmisc -} - -start_pre() { - if [ -n "${named_chroot}" ]; then - # Create (or update) the chroot directory structure - if [ -r /etc/mtree/BIND.chroot.dist ]; then - mtree -deU -f /etc/mtree/BIND.chroot.dist -p "${named_chroot}" - else - ewarn "/etc/mtree/BIND.chroot.dist missing," - ewarn "chroot directory structure not updated" - fi - - if [ ! -d "${named_chroot}"/. ]; then - eerror "chroot directory ${named_chroot} missing" - exit 1 - fi - - # Create /etc/namedb symlink - if [ ! -L "${namedb}" ]; then - if [ -d "${namedb}" ]; then - ewarn "named chroot: ${namedb} is a directory!" - elif [ -e "${namedb}" ]; then - ewarn "named chroot: ${namedb} exists!" - else - ln -s "${named_chroot}${namedb}" "${namedb}" - fi - else - # Make sure it points to the right place. - ln -shf "${named_chroot}${namedb}" "${namedb}" - fi - - case "${RC_UNAME}" in - *BSD|DragonFly) - # Mount a devfs in the chroot directory if needed - umount "${named_chroot}"/dev 2>/dev/null - mount -t devfs dev "${named_chroot}"/dev - devfs -m "${named_chroot}"/dev ruleset devfsrules_hide_all - devfs -m "${named_chroot}"/dev rule apply path null unhide - devfs -m "${named_chroot}"/dev rule apply path random unhide - ;; - esac - - # Copy local timezone information if it is not up to date. - if [ -r /etc/localtime ]; then - cmp -s /etc/localtime "${named_chroot}/etc/localtime" || - cp -p /etc/localtime "${named_chroot}/etc/localtime" - fi - - command_args="${command_args} -t ${named_chroot}" - - ln -fs "${named_chroot}${pidfile}" "${pidfile}" - fi - - if [ ! -s "${named_chroot}${namedb}/rndc.conf" ]; then - local confgen="${command%/named}/rndc-confgen -a -b256 -u ${named_uid} \ - -c ${named_chrootdir}/etc/namedb/rndc.key" - if [ -s "${named_chroot}${namedb}/rndc.key" ]; then - local getuser="stat -f%Su" - [ "${RC_UNAME}" = "Linux" ] && getuser="stat -c%U" - case $(${getuser} "${named_chroot}${namedb}"/rndc.key) in - root|"${named_uid}");; - *) ${confgen};; - esac - else - ${confgen} - fi - fi -} - -reload() { - rndc reload -} - -stop_post() { - if [ -n "${named_chroot}" -a -c "${named_chroot}"/dev/null ]; then - umount "${named_chroot}"/dev 2>/dev/null || true - fi -} - -# vim: set ts=4 : |