summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-dns/pdns
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-dns/pdns')
-rw-r--r--net-dns/pdns/Manifest8
-rw-r--r--net-dns/pdns/files/dnsdomain2.schema195
-rw-r--r--net-dns/pdns/files/pdns61
-rw-r--r--net-dns/pdns/files/pdns-3.3.1-fix-curl-link.patch11
-rw-r--r--net-dns/pdns/metadata.xml24
-rw-r--r--net-dns/pdns/pdns-3.3.1.ebuild186
-rw-r--r--net-dns/pdns/pdns-3.3.2.ebuild186
-rw-r--r--net-dns/pdns/pdns-3.3.3.ebuild186
-rw-r--r--net-dns/pdns/pdns-3.4.0-r1.ebuild173
-rw-r--r--net-dns/pdns/pdns-3.4.0.ebuild170
-rw-r--r--net-dns/pdns/pdns-3.4.1.ebuild173
-rw-r--r--net-dns/pdns/pdns-3.4.2.ebuild175
-rw-r--r--net-dns/pdns/pdns-3.4.4.ebuild177
-rw-r--r--net-dns/pdns/pdns-3.4.5.ebuild177
14 files changed, 1902 insertions, 0 deletions
diff --git a/net-dns/pdns/Manifest b/net-dns/pdns/Manifest
new file mode 100644
index 000000000000..dc729f420554
--- /dev/null
+++ b/net-dns/pdns/Manifest
@@ -0,0 +1,8 @@
+DIST pdns-3.3.1.tar.gz 1403435 SHA256 feb566994725e049391e9b862c9437ca545f1bb970143d2387e474a6ff645bf3 SHA512 b56fa8afce0eb2f881c269f4deedf61b4313dea80563c11f75af5c4bcc35d4e59d52629351abace534e7b810759baf0aaa30ee42fcf030aa5b9684e18dc43bb4 WHIRLPOOL dd688c3da04231571217516aabdd0dc71609e216e66b40c38c68b5f0209cf57ec4075f15e211c1b941fa5ed651d58a6443fc10906bc73710ba9ea66e69369dc7
+DIST pdns-3.3.2.tar.gz 1404985 SHA256 39bd47eb299ffbb8ca5e87a8b0a6671dfea24a8167ddcbc5be0ceb49399bd7bb SHA512 5aea28b3d9b064ab7f6cc11a8f4a4a25d5f30f76f06878bc486f7e05c6b0cdd130743e9ef563c22029bb751d587464ffe0732aaac68cf99092095a3f2f9b54d7 WHIRLPOOL 8be3f6c16ecc8d35e5e8fd7626e8b9b3206954a401cb387f60f8d09d5afbf483231ac3e718a11b7bbc03923f404699e69d178e46d06a50113f080ef03529a8b8
+DIST pdns-3.3.3.tar.gz 1405282 SHA256 0ee98a94c9272e42a8c2ccb816b2c57de3751cfa7242005d5b68b29cffaa057c SHA512 8db850abafcf725e9b3baf682ce885b5d55777dde4769dfec6ea69675cdd6328a7ea9d650b413f5dc2069e2ca6c36604a4a9708c1157708317224475e4c759ed WHIRLPOOL 96a1eda8c1a9eda33daa16a110c6e8e7d4ff09b1013f6608724b91c263d4733748952962d06f5a1180dbade48f86b563ecc4d7170db583bb9a2afddea34ce48a
+DIST pdns-3.4.0.tar.bz2 1234318 SHA256 0780f7a7fe768f9debc9decadb5d3a555b716eed14296e7c41f355bf8db4825e SHA512 2bc20d290366708cb6580d9bd4a6cbbb27534168e83f380118ba005ec2f2c7777a96cc86e24ef4efc974043d3eeeb56d830479a6d900a00c047ee378130bf7a5 WHIRLPOOL 8b6242b44a384604ee3581e1786f739d2b7be2ddd19f542557a5f90818455ab96782c35b6afca6afbd66c8d98bc20fe839ab8eb41929aa05125c5cb7a9d0c66e
+DIST pdns-3.4.1.tar.bz2 1237002 SHA256 13e32a31759e7fd341b98c89fe551723a5c6a768350b3609c576f70602deb24a SHA512 5c65a52bbf5ab72f6887c5b862d75b0f712323c6f682eda3dd337f6cbdc0c5824306eb620d97b40d76912392751a170c3783b14e4308cba855c4288291ff4c14 WHIRLPOOL 8c9daaa27b1d434956ce76357f98ad8f24f0a291e7252598ba13acbafbd25acd2e9d9d2f327fe7b4348f3d39d435bc315bfedf9719a395e754c1e0248f68367c
+DIST pdns-3.4.2.tar.bz2 1331062 SHA256 a6ab05459a0118cb921092deee06362722c45fa69ed0166ebc3696d526014b5b SHA512 e04e0d0a9d6a10f6104a1b4e399e1b84b66aaa5561696281f85898f900bcbcbd41e49a110cddffc12e1f5043d60663ce679af91e4b76f8e1823528a5f38098ed WHIRLPOOL 84d8cd1ec0604e2dd7cb80ef8c7b0379569576e0a48541fcfa0eaaf31fc1d976129bf4d4cb0fb055940236bdcc8a791d56f78d68a94dd9a2e563f5faaeb7eb73
+DIST pdns-3.4.4.tar.bz2 1336624 SHA256 ec49f5a0b55b69ba057bf9ce28ab81e5258fc60c8d4954d9100fe3bb3efd09c8 SHA512 c4567c5e09c3396af99263cbe370ffd8409a90e2583d968d7fa4760d0867ecb1696904e9ba8f6551d815b11b20b5862d789edfb599b9c5571110d3b785f2e08a WHIRLPOOL 4e744dd75a712a9928fda2d09339e7cc922ba63e8ebb11fee88d08d8e5046730d4ea23417bcc4251dc91edb3ec7aefaa480f832fc8167cc50c685435faee4256
+DIST pdns-3.4.5.tar.bz2 1337222 SHA256 f3e1441532b0af05a6b5efe5346f02d0c55f252fbed62d5b4f2e4a80997c507d SHA512 cdf6496a832cff05519a02714aaab4b689541b01a83fe2415d360f8653db4e51a00b90ea86103dd535b22881420337b32ab8a33bb0d405df590cbed322b0827c WHIRLPOOL ee3287e2ac0c3d82e60daed2021b081fbb1e78a63847e98bfddef5fab5ce5ef43d6fea8ba5583a5f70ecc104b77814a7911b77b754492169c72bdbbec5ccb377
diff --git a/net-dns/pdns/files/dnsdomain2.schema b/net-dns/pdns/files/dnsdomain2.schema
new file mode 100644
index 000000000000..a89aeafb3746
--- /dev/null
+++ b/net-dns/pdns/files/dnsdomain2.schema
@@ -0,0 +1,195 @@
+# A schema for storing DNS zones in LDAP
+#
+# ORDERING is not necessary, and some servers don't support
+# integerOrderingMatch. Omit or change if you like
+
+attributetype ( 1.3.6.1.4.1.2428.20.0.0 NAME 'dNSTTL'
+ DESC 'An integer denoting time to live'
+ EQUALITY integerMatch
+ ORDERING integerOrderingMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.0.1 NAME 'dNSClass'
+ DESC 'The class of a resource record'
+ EQUALITY caseIgnoreIA5Match
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.11 NAME 'wKSRecord'
+ DESC 'a well known service description, RFC 1035'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.12 NAME 'pTRRecord'
+ DESC 'domain name pointer, RFC 1035'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.13 NAME 'hInfoRecord'
+ DESC 'host information, RFC 1035'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.14 NAME 'mInfoRecord'
+ DESC 'mailbox or mail list information, RFC 1035'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.16 NAME 'tXTRecord'
+ DESC 'text string, RFC 1035'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.17 NAME 'rPRecord'
+ DESC 'for Responsible Person, RFC 1183'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.18 NAME 'aFSDBRecord'
+ DESC 'for AFS Data Base location, RFC 1183'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.24 NAME 'SigRecord'
+ DESC 'Signature, RFC 2535'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.25 NAME 'KeyRecord'
+ DESC 'Key, RFC 2535'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.27 NAME 'gPosRecord'
+ DESC 'Geographical Position, RFC 1712'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.28 NAME 'aAAARecord'
+ DESC 'IPv6 address, RFC 1886'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.29 NAME 'LocRecord'
+ DESC 'Location, RFC 1876'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.30 NAME 'nXTRecord'
+ DESC 'non-existant, RFC 2535'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.33 NAME 'sRVRecord'
+ DESC 'service location, RFC 2782'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.35 NAME 'nAPTRRecord'
+ DESC 'Naming Authority Pointer, RFC 2915'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.36 NAME 'kXRecord'
+ DESC 'Key Exchange Delegation, RFC 2230'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.37 NAME 'certRecord'
+ DESC 'certificate, RFC 2538'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.38 NAME 'a6Record'
+ DESC 'A6 Record Type, RFC 2874'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.39 NAME 'dNameRecord'
+ DESC 'Non-Terminal DNS Name Redirection, RFC 2672'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.42 NAME 'aPLRecord'
+ DESC 'Lists of Address Prefixes, RFC 3123'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.43 NAME 'dSRecord'
+ DESC 'Delegation Signer, RFC 3658'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.44 NAME 'sSHFPRecord'
+ DESC 'SSH Key Fingerprint, RFC 4255'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.45 NAME 'iPSecKeyRecord'
+ DESC 'SSH Key Fingerprint, RFC 4025'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.46 NAME 'rRSIGRecord'
+ DESC 'RRSIG, RFC 3755'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.47 NAME 'nSECRecord'
+ DESC 'NSEC, RFC 3755'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.48 NAME 'dNSKeyRecord'
+ DESC 'DNSKEY, RFC 3755'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.49 NAME 'dHCIDRecord'
+ DESC 'DHCID, RFC 4701'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+attributetype ( 1.3.6.1.4.1.2428.20.1.99 NAME 'sPFRecord'
+ DESC 'Sender Policy Framework, RFC 4408'
+ EQUALITY caseIgnoreIA5Match
+ SUBSTR caseIgnoreIA5SubstringsMatch
+ SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
+
+objectclass ( 1.3.6.1.4.1.2428.20.2 NAME 'dNSDomain2'
+ SUP 'dNSDomain' STRUCTURAL
+ MAY ( DNSTTL $ DNSClass $ WKSRecord $ PTRRecord $
+ HINFORecord $ MINFORecord $ TXTRecord $ RPRecord $
+ AFSDBRecord $ SIGRecord $ KEYRecord $ GPOSRecord $
+ AAAARecord $ LOCRecord $ NXTRecord $ SRVRecord $
+ NAPTRRecord $ KXRecord $ CERTRecord $ A6Record $
+ DNAMERecord $ APLRecord $ DSRecord $ SSHFPRecord $
+ IPSECKEYRecord $ RRSIGRecord $ NSECRecord $
+ DNSKEYRecord $ DHCIDRecord $ SPFRecord
+ ) )
diff --git a/net-dns/pdns/files/pdns b/net-dns/pdns/files/pdns
new file mode 100644
index 000000000000..6fd30219fe0f
--- /dev/null
+++ b/net-dns/pdns/files/pdns
@@ -0,0 +1,61 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+extra_commands="monitor"
+extra_started_commands="reload dump"
+
+PDNS_INSTANCE="${SVCNAME#pdns[.-]}"
+PDNS_CONFIG=""
+
+if [ -n "${PDNS_INSTANCE}" ] && [ "${PDNS_INSTANCE}" != "pdns" ]
+then
+ PDNS_CONFIG="--config-name=${PDNS_INSTANCE}"
+else
+ PDNS_INSTANCE="default"
+fi
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting PowerDNS (${PDNS_INSTANCE})"
+ /usr/sbin/pdns_server \
+ ${PDNS_CONFIG} \
+ --daemon=yes \
+ --guardian=yes
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping PowerDNS (${PDNS_INSTANCE})"
+ /usr/bin/pdns_control ${PDNS_CONFIG} quit &>/dev/null
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading PowerDNS (${PDNS_INSTANCE})"
+ /usr/bin/pdns_control ${PDNS_CONFIG} cycle &>/dev/null
+ eend $?
+}
+
+dump() {
+ ebegin "Dumping PowerDNS (${PDNS_INSTANCE}) variables"
+ /usr/bin/pdns_control ${PDNS_CONFIG} list
+ eend $?
+}
+
+monitor() {
+ ebegin "Starting PowerDNS (${PDNS_INSTANCE}) in monitor mode"
+ /usr/sbin/pdns_server \
+ ${PDNS_CONFIG} \
+ --daemon=no \
+ --guardian=no \
+ --control-console=yes \
+ --loglevel=9 \
+ --log-dns-details=yes \
+ --query-logging=yes
+ eend $?
+}
diff --git a/net-dns/pdns/files/pdns-3.3.1-fix-curl-link.patch b/net-dns/pdns/files/pdns-3.3.1-fix-curl-link.patch
new file mode 100644
index 000000000000..5ab2889ee853
--- /dev/null
+++ b/net-dns/pdns/files/pdns-3.3.1-fix-curl-link.patch
@@ -0,0 +1,11 @@
+--- a/modules/remotebackend/Makefile.am 2013-12-10 11:45:24.487559267 +0100
++++ b/modules/remotebackend/Makefile.am 2013-12-10 11:45:48.887215368 +0100
+@@ -16,7 +16,7 @@
+ libremotebackend_la_SOURCES=remotebackend.hh remotebackend.cc unixconnector.cc httpconnector.cc pipeconnector.cc
+
+ libremotebackend_la_LDFLAGS=-module -avoid-version
+-libremotebackend_la_LIBS=$(LIBCURL_LIBS)
++libremotebackend_la_LIBADD=$(LIBCURL_LIBS)
+
+ TESTS_ENVIRONMENT = env BOOST_TEST_LOG_LEVEL=message REMOTEBACKEND_HTTP=$(REMOTEBACKEND_HTTP) ./testrunner.sh
+ TESTS=test_remotebackend_pipe test_remotebackend_http test_remotebackend_post test_remotebackend_json
diff --git a/net-dns/pdns/metadata.xml b/net-dns/pdns/metadata.xml
new file mode 100644
index 000000000000..ec7b58d9d788
--- /dev/null
+++ b/net-dns/pdns/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>swegener@gentoo.org</email>
+ <name>Sven Wegener</name>
+ <description>Primary Maintainer</description>
+</maintainer>
+<longdescription>
+The PowerDNS Nameserver is a modern, advanced and high performance authoritative-
+only nameserver. It is written from scratch and conforms to all relevant DNS
+standards documents. Furthermore, PowerDNS interfaces with almost any database.
+</longdescription>
+<use>
+ <flag name='botan'>Make it possible to use the <pkg>dev-libs/botan</pkg> library for crypto-related stuff (like DNSSec) which can be significantly faster than PolarSSL.</flag>
+ <flag name='cryptopp'>Make it possible to use the <pkg>dev-libs/crypto++</pkg> library for crypto-related stuff (like DNSSec) which can be significantly faster than PolarSSL.</flag>
+ <flag name='mydns'>Making it possible to use a MyDNS MySQL database with PowerDNS (not recommended for new deployments).</flag>
+ <flag name='opendbx'>Use a database supported by <pkg>dev-db/opendbx</pkg> as backend.</flag>
+ <flag name='remote'>Use a generic socket or pipe as a backend (via JSON RPC requests).</flag>
+ <flag name='remote-http'>Enable remote connections to HTTP as backends (via RESTful JSON requests).</flag>
+ <flag name='tinydns'>Use a TinyDNS CDB database as backend.</flag>
+ <flag name='tools'>Build optional tools (dnsscan, dnsscope, etc..).</flag>
+</use>
+</pkgmetadata>
diff --git a/net-dns/pdns/pdns-3.3.1.ebuild b/net-dns/pdns/pdns-3.3.1.ebuild
new file mode 100644
index 000000000000..d1585d46d008
--- /dev/null
+++ b/net-dns/pdns/pdns-3.3.1.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc ldap lua mydns mysql odbc opendbx postgres remote
+remote-http sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ odbc? ( dev-db/unixODBC )
+ opendbx? ( dev-db/opendbx )
+ remote-http? ( net-misc/curl )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ odbc? ( dev-db/unixODBC[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ remote-http? ( net-misc/curl[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}/${P}-fix-curl-link.patch"
+ eautoreconf
+
+ # fix for automake now generating .hh instead of .h, bug #504244 and #504246
+ cp -a pdns/backends/bind/{bindparser.h,bindparser.hh}
+}
+
+src_configure() {
+ local dynmodules="pipe geo" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use odbc && dynmodules+=" godbc"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+ use remote-http && myconf+=" --enable-remotebackend-http"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.3.2.ebuild b/net-dns/pdns/pdns-3.3.2.ebuild
new file mode 100644
index 000000000000..fc34067af2f6
--- /dev/null
+++ b/net-dns/pdns/pdns-3.3.2.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc ldap lua mydns mysql odbc opendbx postgres remote
+remote-http sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua:= )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ odbc? ( dev-db/unixODBC )
+ opendbx? ( dev-db/opendbx )
+ remote-http? ( net-misc/curl )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua:=[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ odbc? ( dev-db/unixODBC[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ remote-http? ( net-misc/curl[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}/${PN}-3.3.1-fix-curl-link.patch"
+ eautoreconf
+
+ # fix for automake now generating .hh instead of .h, bug #504244 and #504246
+ cp -a pdns/backends/bind/{bindparser.h,bindparser.hh}
+}
+
+src_configure() {
+ local dynmodules="pipe geo" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use odbc && dynmodules+=" godbc"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+ use remote-http && myconf+=" --enable-remotebackend-http"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.3.3.ebuild b/net-dns/pdns/pdns-3.3.3.ebuild
new file mode 100644
index 000000000000..fc34067af2f6
--- /dev/null
+++ b/net-dns/pdns/pdns-3.3.3.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc ldap lua mydns mysql odbc opendbx postgres remote
+remote-http sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua:= )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ odbc? ( dev-db/unixODBC )
+ opendbx? ( dev-db/opendbx )
+ remote-http? ( net-misc/curl )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua:=[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ odbc? ( dev-db/unixODBC[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ remote-http? ( net-misc/curl[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}/${PN}-3.3.1-fix-curl-link.patch"
+ eautoreconf
+
+ # fix for automake now generating .hh instead of .h, bug #504244 and #504246
+ cp -a pdns/backends/bind/{bindparser.h,bindparser.hh}
+}
+
+src_configure() {
+ local dynmodules="pipe geo" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use odbc && dynmodules+=" godbc"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+ use remote-http && myconf+=" --enable-remotebackend-http"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.0-r1.ebuild b/net-dns/pdns/pdns-3.4.0-r1.ebuild
new file mode 100644
index 000000000000..13994c3432ef
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.0-r1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc geoip ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo bind" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ use geoip && dynmodules+=" geoip"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.0.ebuild b/net-dns/pdns/pdns-3.4.0.ebuild
new file mode 100644
index 000000000000..0a1732ba9147
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.0.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.1.ebuild b/net-dns/pdns/pdns-3.4.1.ebuild
new file mode 100644
index 000000000000..13994c3432ef
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc geoip ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip )
+ tinydns? ( dev-db/cdb ) )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip[static-libs(+)] )
+ tinydns? ( dev-db/cdb ) )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo bind" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ use geoip && dynmodules+=" geoip"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.2.ebuild b/net-dns/pdns/pdns-3.4.2.ebuild
new file mode 100644
index 000000000000..25ead561a7d0
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.2.ebuild
@@ -0,0 +1,175 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc geoip ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua:= )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip )
+ tinydns? ( dev-db/cdb )
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua:=[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip[static-libs(+)] )
+ tinydns? ( dev-db/cdb )
+ )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo bind" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ use geoip && dynmodules+=" geoip"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.4.ebuild b/net-dns/pdns/pdns-3.4.4.ebuild
new file mode 100644
index 000000000000..77d6d55f103d
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.4.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc geoip ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua:= )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip )
+ tinydns? ( >=dev-db/tinycdb-0.77 )
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua:=[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip[static-libs(+)] )
+ tinydns? ( >=dev-db/tinycdb-0.77 )
+ )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo bind" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ use geoip && dynmodules+=" geoip"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ CRYPTOPP_CFLAGS=" " \
+ CRYPTOPP_LIBS="-lcrypto++" \
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}
diff --git a/net-dns/pdns/pdns-3.4.5.ebuild b/net-dns/pdns/pdns-3.4.5.ebuild
new file mode 100644
index 000000000000..77d6d55f103d
--- /dev/null
+++ b/net-dns/pdns/pdns-3.4.5.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib systemd user toolchain-funcs versionator
+
+DESCRIPTION="The PowerDNS Daemon"
+HOMEPAGE="http://www.powerdns.com/"
+SRC_URI="http://downloads.powerdns.com/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# other possible flags:
+# db2: we lack the dep
+# oracle: dito (need Oracle Client Libraries)
+# xdb: (almost) dead, surely not supported
+
+IUSE="botan cryptopp debug doc geoip ldap lua mydns mysql opendbx postgres remote sqlite static tools tinydns test"
+
+REQUIRED_USE="mydns? ( mysql )"
+
+RDEPEND="!static? (
+ net-libs/polarssl
+ >=dev-libs/boost-1.34:=
+ botan? ( =dev-libs/botan-1.10* )
+ cryptopp? ( dev-libs/crypto++ )
+ lua? ( dev-lang/lua:= )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql:= )
+ ldap? ( >=net-nds/openldap-2.0.27-r4 )
+ sqlite? ( dev-db/sqlite:3 )
+ opendbx? ( dev-db/opendbx )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip )
+ tinydns? ( >=dev-db/tinycdb-0.77 )
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ static? (
+ >=net-libs/polarssl-1.3.0[static-libs(+)]
+ >=dev-libs/boost-1.34[static-libs(+)]
+ botan? ( =dev-libs/botan-1.10*[static-libs(+)] )
+ cryptopp? ( dev-libs/crypto++[static-libs(+)] )
+ lua? ( dev-lang/lua:=[static-libs(+)] )
+ mysql? ( virtual/mysql[static-libs(+)] )
+ postgres? ( dev-db/postgresql[static-libs(+)] )
+ ldap? ( >=net-nds/openldap-2.0.27-r4[static-libs(+)] )
+ sqlite? ( dev-db/sqlite:3[static-libs(+)] )
+ opendbx? ( dev-db/opendbx[static-libs(+)] )
+ geoip? ( >=dev-cpp/yaml-cpp-0.5.1 dev-libs/geoip[static-libs(+)] )
+ tinydns? ( >=dev-db/tinycdb-0.77 )
+ )
+ doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local dynmodules="pipe geo bind" # the default backends, always enabled
+ local modules=""
+
+ #use db2 && dynmodules+=" db2"
+ use ldap && dynmodules+=" ldap"
+ use lua && dynmodules+=" lua"
+ use mydns && dynmodules+=" mydns"
+ use mysql && dynmodules+=" gmysql"
+ use opendbx && dynmodules+=" opendbx"
+ #use oracle && dynmodules+=" goracle oracle"
+ use postgres && dynmodules+=" gpgsql"
+ use remote && dynmodules+=" remote"
+ use sqlite && dynmodules+=" gsqlite3"
+ use tinydns && dynmodules+=" tinydns"
+ use geoip && dynmodules+=" geoip"
+ #use xdb && dynmodules+=" xdb"
+
+ if use static ; then
+ modules="${dynmodules}"
+ dynmodules=""
+ fi
+
+ use botan && myconf+=" --enable-botan1.10"
+ use cryptopp && myconf+=" --enable-cryptopp"
+ use debug && myconf+=" --enable-verbose-logging"
+
+ CRYPTOPP_CFLAGS=" " \
+ CRYPTOPP_LIBS="-lcrypto++" \
+ econf \
+ --with-system-polarssl \
+ --disable-static \
+ --sysconfdir=/etc/powerdns \
+ --libdir=/usr/$(get_libdir)/powerdns \
+ --with-modules="${modules}" \
+ --with-dynmodules="${dynmodules}" \
+ --with-pgsql-includes=/usr/include \
+ --with-pgsql-lib=/usr/$(get_libdir) \
+ --with-mysql-lib=/usr/$(get_libdir) \
+ $(use_enable test unit-tests) \
+ $(use_with lua) \
+ $(use_enable static static-binaries) \
+ $(use_enable tools) \
+ ${myconf}
+}
+
+src_compile() {
+ default
+ use doc && emake -C codedocs codedocs
+}
+
+src_install () {
+ default
+
+ mv "${D}"/etc/powerdns/pdns.conf{-dist,}
+
+ fperms 0700 /etc/powerdns
+ fperms 0600 /etc/powerdns/pdns.conf
+
+ # set defaults: setuid=pdns, setgid=pdns
+ sed -i \
+ -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
+ "${D}"/etc/powerdns/pdns.conf
+
+ doinitd "${FILESDIR}"/pdns
+ systemd_newunit contrib/systemd-pdns.service pdns.service
+
+ keepdir /var/empty
+
+ use doc && dohtml -r codedocs/html/.
+
+ # Install development headers
+ insinto /usr/include/pdns
+ doins pdns/*.hh
+ insinto /usr/include/pdns/backends/gsql
+ doins pdns/backends/gsql/*.hh
+
+ if use ldap ; then
+ insinto /etc/openldap/schema
+ doins "${FILESDIR}"/dnsdomain2.schema
+ fi
+
+ prune_libtool_files --all
+}
+
+pkg_preinst() {
+ enewgroup pdns
+ enewuser pdns -1 -1 /var/empty pdns
+}
+
+pkg_postinst() {
+ elog "PowerDNS provides multiple instances support. You can create more instances"
+ elog "by symlinking the pdns init script to another name."
+ elog
+ elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
+ elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
+
+ if use ldap ; then
+ ewarn "The official LDAP backend module is only compile-tested by upstream."
+ ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
+ fi
+
+ local fix_perms=0
+
+ for rv in ${REPLACING_VERSIONS} ; do
+ version_compare ${rv} 3.2
+ [[ $? -eq 1 ]] && fix_perms=1
+ done
+
+ if [[ $fix_perms -eq 1 ]] ; then
+ ewarn "To fix a security bug (bug #458018) had the following"
+ ewarn "files/directories the world-readable bit removed (if set):"
+ ewarn " ${EPREFIX}/etc/pdns"
+ ewarn " ${EPREFIX}/etc/pdns/pdns.conf"
+ ewarn "Check if this is correct for your setup"
+ ewarn "This is a one-time change and will not happen on subsequent updates."
+ chmod o-rwx "${EPREFIX}"/etc/pdns/{,pdns.conf}
+ fi
+
+}