aboutsummaryrefslogtreecommitdiff
path: root/network/pdns-recursor
diff options
context:
space:
mode:
authorDejan Strbac <me@dejanstrbac.com>2018-04-14 17:07:02 +0100
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2018-04-21 07:42:56 +0700
commit7fc4f966afa9636a39e046df4e93dc4f21097197 (patch)
treef3cecfb758f75dd6f8c61f61f81686b2e346d5df /network/pdns-recursor
parent7d7b9f7c3c4ed62296942c4566869996ed9a477c (diff)
network/pdns-recursor: Updated for version 4.1.2 + new maintainer.
Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
Diffstat (limited to 'network/pdns-recursor')
-rw-r--r--network/pdns-recursor/README14
-rw-r--r--network/pdns-recursor/doinst.sh2
-rw-r--r--network/pdns-recursor/pdns-recursor.SlackBuild43
-rw-r--r--network/pdns-recursor/pdns-recursor.info14
-rw-r--r--network/pdns-recursor/rc.pdns-recursor128
-rw-r--r--network/pdns-recursor/slack-desc22
6 files changed, 177 insertions, 46 deletions
diff --git a/network/pdns-recursor/README b/network/pdns-recursor/README
index 3a1cfac54573a..02e6c80629de7 100644
--- a/network/pdns-recursor/README
+++ b/network/pdns-recursor/README
@@ -1,12 +1,4 @@
-This is the Slackbuild for Powerdns Recursor, a high-performance
-recursive resolver.
+This is the SlackBuild for PowerDNS recursive nameserver.
-From the pdns-recursor README:
-
- The PowerDNS recursor is part of the source tarball of the main
- PowerDNS distribution, but it is released separately. Starting from
- the version 3.0 pre-releases, there are zero known bugs or issues
- with the recursor. It is known to power the resolving needs of over
- 100 million internet connections.
-
-Docs are available at http://doc.powerdns.com/built-in-recursor.html
+Docs are available at:
+ https://doc.powerdns.com/recursor/index.html
diff --git a/network/pdns-recursor/doinst.sh b/network/pdns-recursor/doinst.sh
index 3dedf64460514..f651d1c44ec21 100644
--- a/network/pdns-recursor/doinst.sh
+++ b/network/pdns-recursor/doinst.sh
@@ -22,6 +22,6 @@ preserve_perms() {
config $NEW
}
-config etc/powerdns/recursor.conf.new
+config etc/recursor.conf.new
preserve_perms etc/rc.d/rc.pdns-recursor.new
diff --git a/network/pdns-recursor/pdns-recursor.SlackBuild b/network/pdns-recursor/pdns-recursor.SlackBuild
index 65c6997d5ffcc..2390d95d2bd83 100644
--- a/network/pdns-recursor/pdns-recursor.SlackBuild
+++ b/network/pdns-recursor/pdns-recursor.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/sh
# Slackware build script for pdns-recursor
-# Copyright 2010 Raymond Bailey Chantilly, VA, USA
+# Copyright 2018 Dejan Strbac, Zurich, CH
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,13 +22,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=pdns-recursor
-VERSION=${VERSION:-3.2}
+VERSION=${VERSION:-4.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -39,8 +39,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -63,20 +63,27 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --enable-static=no \
+ --build=$ARCH-slackware-linux
-OPTFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-mv $PKG/usr/share/man $PKG/usr/man
-mv $PKG/etc/powerdns/recursor.conf-dist $PKG/etc/powerdns/recursor.conf.new
-mv $PKG/etc/init.d $PKG/etc/rc.d
-mv $PKG/etc/rc.d/pdns-recursor $PKG/etc/rc.d/rc.pdns-recursor.new
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
@@ -84,7 +91,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- README \
+ NOTICE COPYING README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -92,5 +99,9 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+mkdir -p $PKG/etc/rc.d
+cat $CWD/rc.pdns-recursor > $PKG/etc/rc.d/rc.pdns-recursor.new
+mv $PKG/etc/recursor.conf-dist $PKG/etc/recursor.conf.new
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/network/pdns-recursor/pdns-recursor.info b/network/pdns-recursor/pdns-recursor.info
index 524af9279012e..d98409956e455 100644
--- a/network/pdns-recursor/pdns-recursor.info
+++ b/network/pdns-recursor/pdns-recursor.info
@@ -1,10 +1,10 @@
PRGNAM="pdns-recursor"
-VERSION="3.2"
-HOMEPAGE="http://www.powerdns.com/content/home-powerdns.aspx"
-DOWNLOAD="http://downloads.powerdns.com/releases/pdns-recursor-3.2.tar.bz2"
-MD5SUM="7e14d9487664d58c27448ae26e824215"
+VERSION="4.1.2"
+HOMEPAGE="https://www.powerdns.com/recursor.html"
+DOWNLOAD="https://downloads.powerdns.com/releases/pdns-recursor-4.1.2.tar.bz2"
+MD5SUM="384de979819389d85c4a3f1ec00d0500"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Andy Bailey"
-EMAIL="GooseYArd@gmail.com"
+REQUIRES="lua"
+MAINTAINER="Dejan Strbac"
+EMAIL="me@dejanstrbac.com"
diff --git a/network/pdns-recursor/rc.pdns-recursor b/network/pdns-recursor/rc.pdns-recursor
new file mode 100644
index 0000000000000..dda455a8402ab
--- /dev/null
+++ b/network/pdns-recursor/rc.pdns-recursor
@@ -0,0 +1,128 @@
+#!/bin/sh
+
+# Exit if any subcommand or pipeline returns a non-zero status.
+set -e
+
+BINARYPATH=/usr/bin
+SBINARYPATH=/usr/sbin
+SOCKETPATH=/var/run
+DAEMON_ARGS=""
+
+[ -f "$SBINARYPATH/pdns_recursor" ] || exit 0
+
+[ -r /etc/default/pdns ] && . /etc/default/pdns
+
+[ "$START" = "no" ] && exit 0
+
+# Make sure that /var/run exists
+mkdir -p $SOCKETPATH
+cd $SOCKETPATH
+
+pdns_recursor="$SBINARYPATH/pdns_recursor $DAEMON_ARGS $EXTRAOPTS"
+
+doPC()
+{
+ ret=$($BINARYPATH/rec_control $EXTRAOPTS $1 $2 2> /dev/null)
+}
+
+NOTRUNNING=0
+doPC ping || NOTRUNNING=$?
+
+case "$1" in
+ status)
+ if test "$NOTRUNNING" = "0"
+ then
+ echo "running"
+ else
+ echo "not running"
+ exit 3
+ fi
+ ;;
+
+ stop)
+ echo -n "Stopping PowerDNS recursing nameserver: "
+ if test "$NOTRUNNING" = "0"
+ then
+ doPC quit
+ echo $ret
+ else
+ echo "not running"
+ fi
+ ;;
+
+ force-stop)
+ echo -n "Stopping PowerDNS recursing nameserver: "
+ killall -v -9 pdns_recursor
+ echo "killed"
+ ;;
+
+ start)
+ echo -n "Starting PowerDNS recursing nameserver: "
+ if test "$NOTRUNNING" = "0"
+ then
+ echo "already running"
+ else
+ if $pdns_recursor --daemon
+ then
+ echo "started"
+ else
+ echo "starting failed"
+ exit 1
+ fi
+ fi
+ ;;
+
+ force-reload | restart)
+ echo -n "Restarting PowerDNS recursing nameserver: "
+ if test "$NOTRUNNING" = "1"
+ then
+ echo "not running, starting"
+ else
+
+ echo -n stopping and waiting..
+ doPC quit
+ sleep 3
+ echo done
+ fi
+ $0 start
+ ;;
+
+ reload)
+ echo -n "Reloading PowerDNS recursing nameserver: "
+ if test "$NOTRUNNING" = "0"
+ then
+ doPC reload-zones
+ echo requested reload
+ else
+ echo not running yet
+ $0 start
+ fi
+ ;;
+
+ monitor)
+ if test "$NOTRUNNING" = "0"
+ then
+ echo "already running"
+ else
+ $pdns_recursor --daemon=no --log-common-errors --trace
+ fi
+ ;;
+
+ dump)
+ if test "$NOTRUNNING" = "0"
+ then
+ doPC get-all
+ echo $ret
+ else
+ echo "not running"
+ fi
+ ;;
+
+
+ *)
+ echo pdns [start\|stop\|force-reload\|reload\|restart\|status\|monitor\|dump]
+
+ ;;
+esac
+
+
diff --git a/network/pdns-recursor/slack-desc b/network/pdns-recursor/slack-desc
index 7af59e7c1295e..a952a6d6f5e65 100644
--- a/network/pdns-recursor/slack-desc
+++ b/network/pdns-recursor/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-pdns-recursor: pdns-recursor (high-performance recursive resolver)
-pdns-recursor:
-pdns-recursor: PowerDNS consists of two parts: the Authoritative Server
-pdns-recursor: and the Recursor. Other nameservers fully combine these functions,
-pdns-recursor: PowerDNS offers them separately, but can mix both authoritative and
-pdns-recursor: recursive usage seamlessly. The Authoritative Server will answer
-pdns-recursor: questions about domains it knows about, but will not go out on the net
-pdns-recursor: to resolve queries about other domains. However, it can use a
-pdns-recursor: recursing backend to provide that functionality. Depending on your
-pdns-recursor: needs, this backend can either be the PowerDNS recursor or an external
-pdns-recursor: one.
+pdns-recursor: pdns-recursor (high-performance recursive nameserver)
+pdns-recursor:
+pdns-recursor: The PowerDNS Recursor is a versatile, high performance recursive
+pdns-recursor: nameserver.
+pdns-recursor:
+pdns-recursor:
+pdns-recursor:
+pdns-recursor:
+pdns-recursor:
+pdns-recursor:
+pdns-recursor: