From: Michael Orlitzky Date: Sat, 29 Jun 2013 21:58:02 +0000 (-0400) Subject: New ebuild: net-dns/rbldnsd-0.997. X-Git-Url: https://gitweb.michael.orlitzky.com/?a=commitdiff_plain;h=ddd75c0cad57c19ff6365faaeafbba73e90bdb69;p=mjo-overlay.git New ebuild: net-dns/rbldnsd-0.997. --- diff --git a/net-dns/rbldnsd/Manifest b/net-dns/rbldnsd/Manifest new file mode 100644 index 0000000..3680ceb --- /dev/null +++ b/net-dns/rbldnsd/Manifest @@ -0,0 +1,5 @@ +AUX confd-0.997 972 SHA256 f68db14dfae345735fbf06243386de7debe05705199dce0fd60b28456ef4699d SHA512 8ebde1f09ed19612e0603605acf1611bf26eac92df4ef71f6e19e68ece60eb1703114fb0b6a3aed9d7b11b17bc74bd2b4e9d466ff141eaef1f5514e907f6df8d WHIRLPOOL 2639b580ff4e8cc3af350b63c440381d830a524f8514735b467b686e6f6c802cc6da00f71b5ef894598648e6451fd93a7bc6f9e09eb9b7a721027772433e2760 +AUX initd-0.997 705 SHA256 759ee45c257085094410ffbf3bb2900123487a392c7eddc4e5145d15572084e6 SHA512 7d8a5c7e4305eff7871874f898016d1630238c2cbf7feafe242774ffde6b0152fce2d36b4d415ca3c6d1373e377362366bd6cdfeab0e030e3135ea35b186cd5d WHIRLPOOL 7980ccead7002f2cebd27e71f11bc241c39a89d9149fa5446e81760cb5bf482f771b4b3c01672dc1cd2c742b7a3e09d508445e134184b1d9a031f9ba40c93075 +DIST rbldnsd-0.997.tar.gz 148762 SHA256 c61fc0d9b6efb2cc823e47c4e3bce44a0fbd3e1ca7377dccdc22618bc1c22368 SHA512 d9aff718e77907c1eb800a12493ad211e3130ef2ad1770a2f1e2292e96ea9d815ee687f7445e656b0f0201c4f8707426bd0230d9bd3efef4e2f611262fc5ea84 WHIRLPOOL 4157197309836fca4f4eb7ce45a0fe103e4cd4666258233b0ea2ed24deab26048325b16ba72d9cdbbac39b513c7957b152bd4a0e564f2d7cec594098d701bf6c +EBUILD rbldnsd-0.997.ebuild 1369 SHA256 49cd4ae25ee1be805d9aaa6e42b405376404b4e0c2327c6667efd371a5c0656c SHA512 851205e92b2f2ae3fcc857f184df5f2fdbac43bcb8aa90e480e1e7ad4ce664bb0229638ec7bc186c0de74bc692cc16519f5809267f1a44f83bdc78489624f168 WHIRLPOOL 35957c5d91c60eb331e121b8576c2c6bc4c0183b0a8ffd46c13121b5ebb48e54bd19974ef8f8291534c53764a970fa37c84b843f55b85c13809a9ba0c62c203a +MISC metadata.xml 1179 SHA256 6a9d5a1772e174859bf13dbe53a955671ad97eeb8322dd6ff9772046460e017d SHA512 d2f2925bd8de92dc0d9dffce03b0ce8a61c28a0abbbdc3ca21ca10ac3f22a773dcbf19e880563e0557a1512fe3e0586f3b4ef5abd0b6add8278e6b24ea709051 WHIRLPOOL 42f38dbd07679c6e1ceb9d3b054928e5a0f3befdb8d4f5e74b3b23a486bb98066bc7a44e2dab05ef39465f44e41ad815a0cc3f7a32add5bff84c78a484a986c6 diff --git a/net-dns/rbldnsd/files/confd-0.997 b/net-dns/rbldnsd/files/confd-0.997 new file mode 100644 index 0000000..eef3a6f --- /dev/null +++ b/net-dns/rbldnsd/files/confd-0.997 @@ -0,0 +1,21 @@ +# The addresses on which to listen, as a bash array. The syntax is +# "host:port", where the port defaults to 53. +LISTEN=( "127.0.0.1" "192.168.0.1" ) + +# A list of RBL zones. For the correct syntax, please see the +# rbldnsd(8) man page. The following $ZONES will look for files named +# "badguys.example.com" and "spammers.example.net" (in the appropriate +# format) under /var/db/rbldnsd, and use those same names for the +# blacklists contained therein. +ZONES="badguys.example.com:ip4set:badguys.example.com \ + spammers.example.net:ip4tset:spammers.example.net" + +# Add any additional options for the rbldnsd daemon below. The -a and +# -vv below are suggested for performance/security reasons. They are +# described in the man page. +# +# The rootdir (-r) and PID (-p) options are passed automatically, with +# rootdir set to /var/db/rbldnsd (where you should put your zone +# files). The daemon will run as the rbldns user, which was created by +# portage. +OPTIONS="-a -vv" diff --git a/net-dns/rbldnsd/files/initd-0.997 b/net-dns/rbldnsd/files/initd-0.997 new file mode 100644 index 0000000..d7fa999 --- /dev/null +++ b/net-dns/rbldnsd/files/initd-0.997 @@ -0,0 +1,34 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +depend() { + need net +} + +start() { + ebegin "Starting rbldnsd" + + # Create -b args from the bash array $LISTEN. + local listenopts="" + for addr in "${LISTEN[@]}"; do + listenopts="${listenopts} -b $addr" + done + + start-stop-daemon --start --quiet --pidfile /run/rbldnsd.pid \ + --exec /usr/sbin/rbldnsd -- \ + -r /var/db/rbldnsd \ + -p /run/rbldnsd.pid \ + $listenopts \ + ${OPTIONS} \ + ${ZONES} + eend $? +} + +stop() { + ebegin "Stopping rbldnsd" + start-stop-daemon --stop --quiet --pidfile /run/rbldnsd.pid \ + --exec /usr/sbin/rbldnsd + eend $? +} diff --git a/net-dns/rbldnsd/metadata.xml b/net-dns/rbldnsd/metadata.xml new file mode 100644 index 0000000..2c45ca4 --- /dev/null +++ b/net-dns/rbldnsd/metadata.xml @@ -0,0 +1,26 @@ + + + + proxy-maintainers + + michael@orlitzky.com + Michael Orlitzky + Proxy Maintainer. CC on bugs. + + + rbldnsd is a small and fast DNS daemon which is especially made to serve DNSBL + zones. This daemon was inspired by Dan J. Bernstein's rbldns program found in + the djbdns package. + + rbldnsd is extremely fast - it outperforms both bind and djbdns greatly. It has + very small memory footprint. + + The daemon can serve both IP-based (ordb.org, dsbl.org etc) and name-based + (rfc-ignorant.org) blocklists. Unlike DJB's rbldns, it has ability to specify + individual values for every entry, can serve as many zones on a single IP + address as you wish, and, finally, it is a real nameserver: it can reply to DNS + metadata requests. The daemon keeps all zones in memory for faster operations, + but its memory usage is very efficient, especially for repeated TXT values which + are stored only once. + + diff --git a/net-dns/rbldnsd/rbldnsd-0.997.ebuild b/net-dns/rbldnsd/rbldnsd-0.997.ebuild new file mode 100644 index 0000000..0350353 --- /dev/null +++ b/net-dns/rbldnsd/rbldnsd-0.997.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit eutils toolchain-funcs user + +DESCRIPTION="A DNS server designed to serve blacklist zones" +HOMEPAGE="http://www.corpit.ru/mjt/rbldnsd.html" +SRC_URI="http://www.corpit.ru/mjt/rbldnsd/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~sparc ~x86 ~x86-fbsd" +IUSE="ipv6 zlib" + +DEPEND="zlib? ( sys-libs/zlib )" +RDEPEND="${DEPEND}" + +src_configure() { + # The ./configure file is handwritten and doesn't support a `make + # install` target, so there are no --prefix options. The econf + # function appends those automatically, so we can't use it. + ./configure \ + $(use_enable ipv6) \ + $(use_enable zlib) \ + || die "./configure failed" +} + +src_compile() { + # We can also pass AWK and PYTHON environment variables to emake, + # but those should be available via the default 'awk' and 'python' + # symlinks. + emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + RANLIB="$(tc-getRANLIB)" \ + || die "emake failed" +} + +src_install() { + dosbin rbldnsd + doman rbldnsd.8 + keepdir /var/db/rbldnsd + dodoc CHANGES* TODO NEWS README* + newinitd "${FILESDIR}"/initd-${PV} rbldnsd + newconfd "${FILESDIR}"/confd-${PV} rbldnsd +} + +pkg_postinst() { + enewgroup rbldns + enewuser rbldns -1 -1 /var/db/rbldnsd rbldns + chown rbldns:rbldns /var/db/rbldnsd +}