aboutsummaryrefslogtreecommitdiffstats
path: root/testing/yadifa
diff options
context:
space:
mode:
authorFrancesco Colista <fcolista@alpinelinux.org>2014-10-22 13:07:17 +0000
committerFrancesco Colista <fcolista@alpinelinux.org>2014-10-22 13:07:25 +0000
commita97b99feceb836178d0a333f94699c94bcce1549 (patch)
tree289f1aebb821dcfdfd47e2e211eed9bfd6fa2756 /testing/yadifa
parent0072d1d51e0b6f7368da3b198d6ebdab29b94461 (diff)
downloadaports-a97b99feceb836178d0a333f94699c94bcce1549.tar.bz2
aports-a97b99feceb836178d0a333f94699c94bcce1549.tar.xz
testing/yadifa: feature #3443
Diffstat (limited to 'testing/yadifa')
-rw-r--r--testing/yadifa/APKBUILD76
-rw-r--r--testing/yadifa/poll-h.patch17
-rw-r--r--testing/yadifa/yadifa.confd4
-rw-r--r--testing/yadifa/yadifa.initd43
-rwxr-xr-xtesting/yadifa/yadifa.post-install8
-rwxr-xr-xtesting/yadifa/yadifa.pre-install4
6 files changed, 152 insertions, 0 deletions
diff --git a/testing/yadifa/APKBUILD b/testing/yadifa/APKBUILD
new file mode 100644
index 0000000000..8f3dc1f0e3
--- /dev/null
+++ b/testing/yadifa/APKBUILD
@@ -0,0 +1,76 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+pkgname=yadifa
+pkgver=2.0.0
+_buildnr=4192
+pkgrel=0
+pkgdesc="Lightweight authoritative Name Server with DNSSEC capabilities"
+url="http://www.yadifa.eu"
+arch="all"
+license="BSD-3"
+depends="openssl"
+depends_dev="openssl-dev"
+makedepends="$depends_dev"
+install="$pkgname.pre-install $pkgname.post-install"
+options="libtool"
+pkgusers="yadifa"
+pkggroups="yadifa"
+subpackages="$pkgname-dev $pkgname-doc"
+source="http://cdn.yadifa.eu/sites/default/files/releases/$pkgname-$pkgver-$_buildnr.tgz
+ poll-h.patch
+ $pkgname.initd
+ $pkgname.confd"
+
+_builddir="$srcdir"/$pkgname-$pkgver-$_buildnr
+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
+ sed -i -e "s/__linux__/__GLIBC__/g" lib/dnscore/src/tcp_io_stream.c
+ sed -i -e "s/__linux__/__GLIBC__/g" lib/dnscore/src/debug.c
+ sed -i -e "s/__linux__/__GLIBC__/g" lib/dnscore/src/format.c
+ sed -i -e "s/__linux__/__GLIBC__/g" sbin/yadifad/signals.c
+}
+
+build() {
+ cd "$_builddir"
+ automake
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc/$pkgname \
+ --localstatedir=/var \
+ --enable-dynamic-provisioning \
+ --enable-rrl
+
+ make
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install
+ install -D -m 0755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
+ install -D -m 0755 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
+ install -D -m 0755 etc/*.example "$pkgdir"/etc/$pkgname
+ cp etc/yadifad.conf "$pkgdir"/etc/$pkgname
+ mkdir -p "$pkgdir"/var/$pkgname
+ mkdir -p "$pkgdir"/var/log/$pkgname
+ chown $pkgusers:$pkggroups "$pkgdir"/var/$pkgname
+ chown $pkgusers:$pkggroups "$pkgdir"/var/log/$pkgname
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="8bb0cd24c3bea7ea7f503ca523b8a13b yadifa-2.0.0-4192.tgz
+bb9b9e01e8781949381bc1d6e24076ea poll-h.patch
+a368b39c128dfea18d16b61df8b0f069 yadifa.initd
+054dc6c7d4e5c8d81610825c0875efd2 yadifa.confd"
+sha256sums="ef98afcfa544474c6634a3177af402fc37453dd3244c084bc9e4b323997ef61c yadifa-2.0.0-4192.tgz
+250910b256cf0193ffa74fdae3a22d6cfc6834bd6f751ad9dcf331c43d5a6c0a poll-h.patch
+0e3a165692bd4ff2ea1104a3565c0cbd8ec8896b10e3aa6d6acd7c6a7b357ac1 yadifa.initd
+c1a1b5535858ce569197196f94c5a2f13ed2f003d68be06475c765ff82e74c22 yadifa.confd"
+sha512sums="a476ab13d25763bd5c53e140243eb6b1524c31ea6b6361196fd68d08d07683b009d9b76c579149815a9d7e887edc6e1edef90436330b37cad301ab3249728aba yadifa-2.0.0-4192.tgz
+a72c0a296de2a0a8ab4b6836cbf364be0c2b2854d1f7c2a151d015902b55b0766c61466a18f4e904e82e40776ba88b8ce0b61f218799ad9d8d779f63aa9610d6 poll-h.patch
+905e3f9efc07864c6aa4ca09c41f253b87094d06cc98942f3cab2c3fd34de2795d8f358359a194e8f2913201387c5d8e6f1ceebf2f4ef98b043868c002e65ec3 yadifa.initd
+10c8e6e9cfcf8671de541fc2a8f56ea6756d8da1e96262efc26daa4be22aec5f51037d6cbbfa90b826521145f0b41dcc9e515e343ef1ff72a9bf213dc2f90f58 yadifa.confd"
diff --git a/testing/yadifa/poll-h.patch b/testing/yadifa/poll-h.patch
new file mode 100644
index 0000000000..2477708b90
--- /dev/null
+++ b/testing/yadifa/poll-h.patch
@@ -0,0 +1,17 @@
+diff --git a/sbin/yadifad/poll-util.h b/sbin/yadifad/poll-util.h
+index ef9a004..41d4d0c 100644
+--- a/sbin/yadifad/poll-util.h
++++ b/sbin/yadifad/poll-util.h
+@@ -38,11 +38,10 @@
+ *
+ ******************************************************************************************************************/
+
++#include <poll.h>
+ #ifndef _POLL_H
+ #define _POLL_H
+
+-#include <poll.h>
+-
+ /**
+ * This code maintains the limit on the tcp sockets
+ * @todo Portability has to be tested.
diff --git a/testing/yadifa/yadifa.confd b/testing/yadifa/yadifa.confd
new file mode 100644
index 0000000000..6a48c831b6
--- /dev/null
+++ b/testing/yadifa/yadifa.confd
@@ -0,0 +1,4 @@
+SVCBIN=/usr/sbin/yadifad
+CONFFILE=/etc/yadifa/yadifad.conf
+PIDFILE=/var/run/yadifad.pid
+YADIFA_OPTS="-u yadifa -g yadifa"
diff --git a/testing/yadifa/yadifa.initd b/testing/yadifa/yadifa.initd
new file mode 100644
index 0000000000..228e4af109
--- /dev/null
+++ b/testing/yadifa/yadifa.initd
@@ -0,0 +1,43 @@
+#!/sbin/runscript
+# Copyright 2014 Francesco Colista (francesco.colista@gmail.com)
+# Distributed under the terms of the GNU General Public License, v2 or later#
+
+depend() {
+ need net
+ after firewall
+ provide dns
+}
+
+
+checkconfig() {
+ if [ ! -f "${CONFFILE}" ]; then
+ eerror "${CONFFILE} does not exist!"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ ulimit -c unlimited
+ start-stop-daemon --start --exec ${SVCBIN} \
+ --pidfile ${PIDFILE} \
+ -- -c ${CONFFILE} ${YADIFA_OPTS}
+ eend $?
+}
+
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --start --exec ${SVCBIN} \
+ --pidfile ${PIDFILE} \
+ eend $?
+}
+
+
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --stop --oknodo --signal HUP \
+ --exec ${SVCBIN} --pidfile ${PIDFILE}
+ eend $?
+}
diff --git a/testing/yadifa/yadifa.post-install b/testing/yadifa/yadifa.post-install
new file mode 100755
index 0000000000..7b614a60ae
--- /dev/null
+++ b/testing/yadifa/yadifa.post-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+sed -i -e "s/daemon.*/daemon\ton/" /etc/yadifa/yadifad.conf >&2
+sed -i -e "s/logpath.*/logpath\t\t\"\/var\/log\/yadifa\"/" /etc/yadifa/yadifad.conf >&2
+sed -i -e "s/pidpath.*/pidpath\t\t\"\/var\/run\"/" /etc/yadifa/yadifad.conf >&2
+sed -i -e "s/chroot.*/chroot\ton/" /etc/yadifa/yadifad.conf >&2
+sed -i -e "s/uid.*/uid\tyadifa/" /etc/yadifa/yadifad.conf >&2
+sed -i -e "s/gid.*/gid\tyadifa/" /etc/yadifa/yadifad.conf >&2
+exit 0
diff --git a/testing/yadifa/yadifa.pre-install b/testing/yadifa/yadifa.pre-install
new file mode 100755
index 0000000000..cecfe61aec
--- /dev/null
+++ b/testing/yadifa/yadifa.pre-install
@@ -0,0 +1,4 @@
+#!/bin/sh
+addgroup yadifa 2>/dev/null
+adduser -h /var/yadifa -s /sbin/nologin -S -D yadifa -G yadifa 2>/dev/null
+exit 0