From a97b99feceb836178d0a333f94699c94bcce1549 Mon Sep 17 00:00:00 2001 From: Francesco Colista Date: Wed, 22 Oct 2014 13:07:17 +0000 Subject: testing/yadifa: feature #3443 --- testing/yadifa/APKBUILD | 76 ++++++++++++++++++++++++++++++++++++++ testing/yadifa/poll-h.patch | 17 +++++++++ testing/yadifa/yadifa.confd | 4 ++ testing/yadifa/yadifa.initd | 43 +++++++++++++++++++++ testing/yadifa/yadifa.post-install | 8 ++++ testing/yadifa/yadifa.pre-install | 4 ++ 6 files changed, 152 insertions(+) create mode 100644 testing/yadifa/APKBUILD create mode 100644 testing/yadifa/poll-h.patch create mode 100644 testing/yadifa/yadifa.confd create mode 100644 testing/yadifa/yadifa.initd create mode 100755 testing/yadifa/yadifa.post-install create mode 100755 testing/yadifa/yadifa.pre-install (limited to 'testing/yadifa') diff --git a/testing/yadifa/APKBUILD b/testing/yadifa/APKBUILD new file mode 100644 index 000000000..8f3dc1f0e --- /dev/null +++ b/testing/yadifa/APKBUILD @@ -0,0 +1,76 @@ +# Contributor: Francesco Colista +# Maintainer: Francesco Colista +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 000000000..2477708b9 --- /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 + #ifndef _POLL_H + #define _POLL_H + +-#include +- + /** + * 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 000000000..6a48c831b --- /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 000000000..228e4af10 --- /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 000000000..7b614a60a --- /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 000000000..cecfe61ae --- /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 -- cgit v1.2.3