aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorMatt Smith <mcs@darkregion.net>2011-03-29 23:40:36 -0500
committerMatt Smith <mcs@darkregion.net>2011-03-29 23:40:36 -0500
commit4346c9975804621d2e276ef1a12c0695dce71eb1 (patch)
tree2a5e5b38423947a52d303068a2344d2bf6c65d09 /testing
parentf3e054e83191c6bddd83f639c8826e829b790e91 (diff)
downloadaports-4346c9975804621d2e276ef1a12c0695dce71eb1.tar.bz2
aports-4346c9975804621d2e276ef1a12c0695dce71eb1.tar.xz
main/nsd: moved from testing
Diffstat (limited to 'testing')
-rw-r--r--testing/nsd/0010-stop-unlink-pid-error.patch26
-rw-r--r--testing/nsd/APKBUILD76
-rw-r--r--testing/nsd/nsd.confd15
-rw-r--r--testing/nsd/nsd.initd420
-rw-r--r--testing/nsd/nsd.post-deinstall4
-rw-r--r--testing/nsd/nsd.pre-install4
-rw-r--r--testing/nsd/nsdc30
7 files changed, 0 insertions, 575 deletions
diff --git a/testing/nsd/0010-stop-unlink-pid-error.patch b/testing/nsd/0010-stop-unlink-pid-error.patch
deleted file mode 100644
index 24175df337..0000000000
--- a/testing/nsd/0010-stop-unlink-pid-error.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch prevents nsd from attempting to unlink the pidfile on nsd
-shutdown. The reason for this is because we get a permission denied
-error in nsd.log when it attempts to do so.
-
-I think this is needed because of how normal OpenRC init scripts are
-designed and handled.
-
-See the included /etc/init.d/nsd (nsd.initd) for my conversion of the
-nsdc script that's normally distributed with nsd. The included nsdc
-script is a wrapper for the converted OpenRC init script, designed to
-maintain compatibility.
-
-Matt Smith <msmith@alpinelinux.org>
-
-
---- a/server.c
-+++ b/server.c
-@@ -1167,7 +1167,7 @@
- close(fd);
-
- /* Unlink it if possible... */
-- unlinkpid(nsd->pidfile);
-+ //unlinkpid(nsd->pidfile);
-
- if(reload_listener.fd > 0) {
- sig_atomic_t cmd = NSD_QUIT;
diff --git a/testing/nsd/APKBUILD b/testing/nsd/APKBUILD
deleted file mode 100644
index 758570294c..0000000000
--- a/testing/nsd/APKBUILD
+++ /dev/null
@@ -1,76 +0,0 @@
-# Contributor: Matt Smith <mcs@darkregion.net>
-# Maintainer: Matt Smith <mcs@darkregion.net>
-pkgname=nsd
-pkgver=3.2.7
-pkgrel=1
-pkgdesc="NSD is an authoritative only, high performance, simple and open source name server."
-url="http://www.nlnetlabs.nl/projects/nsd/"
-arch="all"
-license="BSD"
-depends=
-depends_dev=
-makedepends="$depends_dev openssl-dev"
-install="$pkgname.pre-install $pkgname.post-deinstall"
-subpackages="$pkgname-doc"
-pkgusers="nsd"
-pkggroups="nsd"
-source="http://www.nlnetlabs.nl/downloads/nsd/nsd-3.2.7.tar.gz
- 0010-stop-unlink-pid-error.patch
- nsdc
- nsd.initd
- nsd.confd
- "
-
-_builddir="$srcdir/$pkgname-$pkgver"
-prepare() {
- local i
- cd "$_builddir"
- for i in $source; do
- case $i in
- *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
- esac
- done
-}
-
-build() {
- cd "$_builddir"
-
- ./configure \
- --sbindir=/usr/sbin \
- --mandir=/usr/share/man \
- --with-user=nsd \
- || return 1
- make || return 1
-}
-
-package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
-
- install -m755 -D "$srcdir"/nsdc \
- "$pkgdir"/usr/sbin/nsdc || return 1
- install -m755 -D "$srcdir"/$pkgname.initd \
- "$pkgdir"/etc/init.d/nsd || return 1
- install -m644 -D "$srcdir"/$pkgname.confd \
- "$pkgdir"/etc/conf.d/nsd || return 1
-
- chown nsd "$pkgdir"/var/db/nsd || return 1
-}
-
-doc() {
- arch="noarch"
-
- mkdir -p "$subpkgdir"/usr/share/doc/$pkgname || return 1
- cp -a "$_builddir"/doc/* \
- "$subpkgdir"/usr/share/doc/$pkgname/ || return 1
- cp -a "$_builddir"/contrib/ \
- "$subpkgdir"/usr/share/doc/$pkgname/ || return 1
- mv "$pkgdir"/usr/share/man \
- "$subpkgdir"/usr/share/man || return 1
-}
-
-md5sums="b5aca8a207f77db566b08db25bf77d74 nsd-3.2.7.tar.gz
-cc592572846b978a6f52130a8e518ab3 0010-stop-unlink-pid-error.patch
-3aa94004a39319db89a329e9f24fb9da nsdc
-4c0eef07caac9083aeeb9b15602d014d nsd.initd
-37bd648259fdd919c79aaa0168b4423c nsd.confd"
diff --git a/testing/nsd/nsd.confd b/testing/nsd/nsd.confd
deleted file mode 100644
index e37f716baf..0000000000
--- a/testing/nsd/nsd.confd
+++ /dev/null
@@ -1,15 +0,0 @@
-#
-# Specify nsd options here.
-#
-
-# configuration file default
-configfile="/etc/nsd/nsd.conf"
-
-# The directory where NSD binaries reside
-sbindir="/usr/sbin"
-
-# how verbose is zonec run. Specify Nothing (empty string), -v or -vv.
-ZONEC_VERBOSE=-v
-
-# how patch is done. Specify 1 (with use of textfiles, default) or 0 (without)
-PATCH_STYLE=1
diff --git a/testing/nsd/nsd.initd b/testing/nsd/nsd.initd
deleted file mode 100644
index f400080494..0000000000
--- a/testing/nsd/nsd.initd
+++ /dev/null
@@ -1,420 +0,0 @@
-#!/sbin/runscript
-#
-# nsdc.sh -- a shell script to manage the beast
-#
-# Copyright (c) 2001-2006, NLnet Labs. All rights reserved.
-#
-# See LICENSE for the license.
-#
-# OpenRC conversion by Matt Smith <msmith@alpinelinux.org>
-#
-#
-
-name=nsd
-daemon=/usr/sbin/${name}
-initd=/etc/init.d/${name}
-
-description="NSD, authoritative only high performance name server."
-
-extra_commands="stats reload running patch rebuild update notify do_start do_stop"
-description_reload="Reloads the nsd database file."
-description_running="Prints message and exits nonzero if server is not running."
-description_patch="Merge zone transfer changes back to zone files."
-description_rebuild="Compile database file from zone files."
-description_update="Try to update all slave zones hosted on this server."
-description_notify="Send notify messages to all secondary servers."
-description_do_start="Internal command; use 'start' instead."
-description_do_stop="Internal command; use 'stop' instead."
-
-depend() {
- need net
- after firewall
-}
-
-#
-# You sure heard this many times before: NO USER SERVICEABLE PARTS BELOW
-#
-
-# see if user selects a different config file, with -c <filename>
-if test "x$1" = "x-c"; then
- shift
- if [ -e $1 ]; then
- configfile=$1
- shift
- else
- echo "`basename $0`: Config file "$1" does not exist."
- exit 1
- fi
-fi
-
-# locate nsd-checkconf : in sbindir, PATH, nsdc_dir or .
-nsd_checkconf=""
-if [ -e ${sbindir}/nsd-checkconf ]; then
- nsd_checkconf=${sbindir}/nsd-checkconf
-else
- if which nsd-checkconf >/dev/null 2>&1 ; then
- if which nsd-checkconf 2>&1 | grep "^[Nn]o " >/dev/null; then
- nsd_checkconf=""
- else
- nsd_checkconf=`which nsd-checkconf`
- fi
- fi
- if [ -z "${nsd_checkconf}" -a -e `dirname $0`/nsd-checkconf ]; then
- nsd_checkconf=`dirname $0`/nsd-checkconf
- fi
- if [ -z "${nsd_checkconf}" -a -e ./nsd-checkconf ]; then
- nsd_checkconf=./nsd-checkconf
- fi
- if [ -z "${nsd_checkconf}" ]; then
- echo "`basename $0`: Could not find nsd programs" \
- "in $sbindir, in PATH=$PATH, in cwd=`pwd`," \
- "or in dir of nsdc=`dirname $0`"
- exit 1
- fi
-fi
-
-# check the config syntax before using it
-${nsd_checkconf} ${configfile}
-if test $? -ne 0 ; then
- ${initd} describe
- exit 1
-fi
-
-# Read some settings from the config file.
-dbfile=`${nsd_checkconf} -o database ${configfile}`
-pidfile=`${nsd_checkconf} -o pidfile ${configfile}`
-difffile=`${nsd_checkconf} -o difffile ${configfile}`
-zonesdir=`${nsd_checkconf} -o zonesdir ${configfile}`
-lockfile="${dbfile}.lock" # still needed
-sbindir=`dirname ${nsd_checkconf}`
-
-# move to zonesdir (if specified), and make absolute pathnames.
-if test -n "${zonesdir}"; then
- zonesdir=`dirname ${zonesdir}/.`
- if echo "${zonesdir}" | grep "^[^/]" >/dev/null; then
- zonesdir=`pwd`/${zonesdir}
- fi
- if echo "${dbfile}" | grep "^[^/]" >/dev/null; then
- dbfile=${zonesdir}/${dbfile}
- fi
- if echo "${pidfile}" | grep "^[^/]" >/dev/null; then
- pidfile=${zonesdir}/${pidfile}
- fi
- if echo "${lockfile}" | grep "^[^/]" >/dev/null; then
- lockfile=${zonesdir}/${lockfile}
- fi
- if echo "${difffile}" | grep "^[^/]" >/dev/null; then
- difffile=${zonesdir}/${difffile}
- fi
-fi
-
-# for bash: -C or noclobber. For tcsh: noclobber. For bourne: -C.
-noclobber_set="set -C"
-# ugly check for tcsh
-if echo /bin/sh | grep tcsh >/dev/null; then
- noclobber_set="set noclobber"
-fi
-
-#
-# useful routines
-#
-signal() {
- if [ -s ${pidfile} ]
- then
- kill -"$1" `cat ${pidfile}` && return 0
- else
- echo "nsd is not running"
- fi
- return 1
-}
-
-lock_file() {
- (umask 222; ${noclobber_set}; echo "$$" >${lockfile})
-}
-
-lock() {
- lock_file
- if [ $? = 1 ]
- then
- # check if the lockfile has not gone stale
- LPID=`cat ${lockfile}`
- echo database locked by PID: $LPID
- if kill -0 $LPID 2>/dev/null; then
- exit 1
- fi
-
- # locking process does not exist, consider lockfile stale
- echo stale lockfile, removing... && rm -f ${lockfile} && lock_file
- fi
-
- if [ $? = 1 ]
- then
- echo lock failed
- exit 1
- fi
- return 0
-}
-
-unlock() {
- rm -f ${lockfile}
-}
-
-do_start() {
- if test -x ${sbindir}/nsd; then
- ${sbindir}/nsd -c ${configfile}
- test $? = 0 || (echo "nsd startup failed."; exit 1)
- else
- echo "${sbindir}/nsd not an executable file, nsd startup failed."; exit 1
- fi
-}
-
-controlled_sleep() {
- if [ $1 -ge 25 ]; then
- sleep 1
- fi
-}
-
-controlled_stop() {
- pid=$1
- try=1
-
- while [ $try -ne 0 ]; do
- if [ ${try} -gt 50 ]; then
- echo "nsdc stop failed"
- return 1
- else
- if [ $try -eq 1 ]; then
- kill -TERM ${pid}
- else
- kill -TERM ${pid} >/dev/null 2>&1
- fi
-
- # really stopped?
- kill -0 ${pid} >/dev/null 2>&1
- if [ $? -eq 0 ]; then
- controlled_sleep ${try}
- try=`expr ${try} + 1`
- else
- try=0
- fi
- fi
- done
-
- return 0
-}
-
-do_controlled_stop() {
- if [ -s ${pidfile} ]; then
- pid=`cat ${pidfile}`
- controlled_stop ${pid} && return 0
- else
- echo "nsd is not running, starting anyway" && return 0
- fi
- return 1
-}
-
-do_stop() {
- signal "TERM"
-}
-
-do_reload() {
- signal "HUP"
-}
-
-# send_updates zone_name {ip_spec key_spec}
-send_updates() {
- local zonename=$1
- shift 1
- # extract port number (if any)
- port=`${nsd_checkconf} -o port ${configfile}`
- if test -n "${port}"; then
- port="-p ${port}"
- fi
- update_sent="no"
-
- while test $# -gt 0; do
- ip_spec=$1
- key_spec=$2
- shift 2
- # only localhost is allowed.
- # see if zone has 127.0.0.1 or ::1 as allowed.
- if test Z${ip_spec} = "Z127.0.0.1" -o Z${ip_spec} = "Z::1"; then
- secret=""
- if test K${key_spec} != KNOKEY -a K${key_spec} != KBLOCKED; then
- secret=`${nsd_checkconf} -s ${key_spec} ${configfile}`
- algo=`${nsd_checkconf} -a ${key_spec} ${configfile}`
- secret="-y ${key_spec}:${secret}:${algo}"
- fi
- if test K${key_spec} != KBLOCKED; then
- #echo "${sbindir}/nsd-notify -a ${ip_spec} ${port} ${secret} -z ${zonename} ${ip_spec}"
- ${sbindir}/nsd-notify -a ${ip_spec} ${port} ${secret} -z ${zonename} ${ip_spec} && update_sent="yes"
- fi
- fi
- done
- if test ${update_sent} = no; then
- req_xfr=`${nsd_checkconf} -z "${zonename}" -o request-xfr ${configfile}`
- if test -n "${req_xfr}"; then
- # must be a slave zone (has request-xfr).
- echo "`basename $0`: Could not send notify for slave zone ${zonename}: not configured (with allow-notify: 127.0.0.1 or ::1)"
- fi
- fi
-}
-
-# send_notify zone_name ifc_spec {ip_spec key_spec}
-send_notify() {
- local zonename=$1
- # set local interface
- ifc_spec=""
- if test I$2 != INOIFC; then
- ifc_spec="-a $2"
- fi
- shift 2
-
- while test $# -gt 0; do
- ip_spec=$1
- key_spec=$2
- shift 2
- secret=""
-
- if test K${key_spec} != KNOKEY -a K${key_spec} != KBLOCKED; then
- secret=`${nsd_checkconf} -s ${key_spec} ${configfile}`
- algo=`${nsd_checkconf} -a ${key_spec} ${configfile}`
- secret="-y ${key_spec}:${secret}:${algo}"
- fi
- if test K${key_spec} != KBLOCKED; then
- port=""
- ipaddr=${ip_spec}
- if echo ${ip_spec} | grep @ >/dev/null; then
- port="-p "`echo ${ip_spec} | sed -e 's/[^@]*@\([0-9]*\)/\1/'`
- ipaddr=`echo ${ip_spec} | sed -e 's/\([^@]*\)@[0-9]*/\1/'`
- fi
- #echo "${sbindir}/nsd-notify ${ifc_spec} ${port} ${secret} -z ${zonename} ${ipaddr}"
- ${sbindir}/nsd-notify ${ifc_spec} ${port} ${secret} -z ${zonename} ${ipaddr}
- fi
- done
-}
-
-# do_patch {with-textfile}
-do_patch() {
- if test I$1 = I1; then
- lock && mv ${difffile} ${difffile}.$$ && \
- ${sbindir}/nsd-patch -c ${configfile} -x ${difffile}.$$ && \
- rm -f ${difffile}.$$ && unlock && do_rebuild
- result=$?
- else # without textfile
- lock && mv ${difffile} ${difffile}.$$ && \
- ${sbindir}/nsd-patch -c ${configfile} -x ${difffile}.$$ -s -o ${dbfile}.$$ \
- && rm -f ${difffile}.$$ && unlock && \
- mv ${dbfile}.$$ ${dbfile}
- result=$?
- fi
-
- return ${result}
-}
-
-do_rebuild() {
- lock && \
- ${sbindir}/zonec ${ZONEC_VERBOSE} -c ${configfile} -f ${dbfile}.$$ && \
- mv ${dbfile}.$$ ${dbfile}
- result=$?
- unlock
- [ $result != 0 ] && echo "${dbfile} is unmodified"
- rm -f ${dbfile}.$$
- return ${result}
-}
-
-start() {
- ebegin "Starting ${name}"
- if test -s ${pidfile} && kill -"0" `cat ${pidfile}`
- then
- (echo "process `cat ${pidfile}` exists, please use restart"; exit 1)
- else
- start-stop-daemon --start --quiet \
- --pidfile ${pidfile} \
- --exec ${initd} -- do_start
- fi
- eend $?
-}
-
-stop() {
- ebegin "Stopping ${name}"
- start-stop-daemon --stop --quiet \
- --pidfile ${pidfile} \
- --exec ${initd} -- do_stop
- eend $?
-}
-
-stats() {
- signal "USR1"
-}
-
-reload() {
- do_reload
-}
-
-running() {
- signal "0"
-}
-
-patch() {
- # patch queue clearen
- if test -s ${difffile}; then
- #${sbindir}/nsd-patch -c ${configfile} -x ${difffile} -l #debug
- #echo ${sbindir}/nsd-patch -c ${configfile} -x ${difffile}
- if do_patch ${PATCH_STYLE}; then
- do_reload
- else
- unlock
- # try to move back the transfer data
- if [ -e ${difffile}.$$ -a ! -e ${difffile} ]; then
- mv ${difffile}.$$ ${difffile}
- fi
- echo "`basename $0`: patch failed."
- exit 1
- fi
- else
- echo "`basename $0`: no patch necessary."
- fi
-}
-
-rebuild() {
- do_rebuild
-}
-
-update() {
- # send notifies to localhost for all zones that allow it
- echo "Sending notify to localhost to update secondary zones..."
- if [ -s ${pidfile} ]; then
- zoneslist=`${nsd_checkconf} -o zones ${configfile}`
- for zonename in ${zoneslist}; do
- notify_allow=`${nsd_checkconf} -z "${zonename}" -o allow-notify ${configfile}`
- if test "" != "${notify_allow}"; then
- send_updates ${zonename} ${notify_allow}
- fi
- done
- else
- echo "nsd is not running"
- fi
-}
-
-notify() {
- # send notifies to all slaves
- echo "Sending notify to slave servers..."
- zoneslist=`${nsd_checkconf} -o zones ${configfile}`
- for zonename in ${zoneslist}; do
- notify=`${nsd_checkconf} -z "${zonename}" -o notify ${configfile}`
- local_ifc=`${nsd_checkconf} -z "${zonename}" -o outgoing-interface ${configfile}`
- if test "" = "${local_ifc}"; then
- local_ifc="NOIFC"
- fi
- if test "" != "${notify}"; then
- for ifc in ${local_ifc}; do
- send_notify ${zonename} ${ifc} ${notify}
- done
- fi
- done
-}
-
-restart() {
- do_controlled_stop && do_start
-}
diff --git a/testing/nsd/nsd.post-deinstall b/testing/nsd/nsd.post-deinstall
deleted file mode 100644
index 4d5fc40932..0000000000
--- a/testing/nsd/nsd.post-deinstall
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-deluser nsd 2>/dev/null
-exit 0
diff --git a/testing/nsd/nsd.pre-install b/testing/nsd/nsd.pre-install
deleted file mode 100644
index daabc70b38..0000000000
--- a/testing/nsd/nsd.pre-install
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-adduser -S -H -h /var/db/nsd -s /bin/false nsd 2>/dev/null
-exit 0
diff --git a/testing/nsd/nsdc b/testing/nsd/nsdc
deleted file mode 100644
index ff4cb5c6b7..0000000000
--- a/testing/nsd/nsdc
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-#
-# nsdc replacement script by Matt Smith <msmith@alpinelinux.org>
-#
-
-usage() {
- echo "Usage: `basename $0` {start|stop|reload|rebuild|restart|"
- echo " running|update|notify|patch}"
- echo "commands:"
- echo " start Start nsd server."
- echo " stop Stop nsd server."
- echo " reload Nsd server reloads database file."
- echo " rebuild Compile database file from zone files."
- echo " restart Stop the nsd server and start it again."
- echo " running Prints message and exit nonzero if server not running."
- echo " update Try to update all slave zones hosted on this server."
- echo " notify Send notify messages to all secondary servers."
- echo " patch Merge zone transfer changes back to zone files."
-}
-
-if [ $# -eq 0 ]; then
- usage
-else
- case "$1" in
- "-h"|"--help")
- usage;;
- *)
- /etc/init.d/nsd $*
- esac
-fi