Gentoo Archives: gentoo-commits

From: Sven Wegener <swegener@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/pdns/
Date: Thu, 01 Aug 2019 13:59:16
Message-Id: 1564667937.1604747b397cebd0842f6763d5b417a2c86782ee.swegener@gentoo
1 commit: 1604747b397cebd0842f6763d5b417a2c86782ee
2 Author: Sven Wegener <swegener <AT> gentoo <DOT> org>
3 AuthorDate: Thu Aug 1 13:57:37 2019 +0000
4 Commit: Sven Wegener <swegener <AT> gentoo <DOT> org>
5 CommitDate: Thu Aug 1 13:58:57 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1604747b
7
8 net-dns/pdns: Version bump to 4.1.11, security bug #691086
9
10 Bug: https://bugs.gentoo.org/691086
11 Package-Manager: Portage-2.3.69, Repoman-2.3.16
12 Signed-off-by: Sven Wegener <swegener <AT> gentoo.org>
13
14 net-dns/pdns/Manifest | 1 +
15 net-dns/pdns/pdns-4.1.11.ebuild | 157 ++++++++++++++++++++++++++++++++++++++++
16 2 files changed, 158 insertions(+)
17
18 diff --git a/net-dns/pdns/Manifest b/net-dns/pdns/Manifest
19 index bb90165f208..89397ffbe5a 100644
20 --- a/net-dns/pdns/Manifest
21 +++ b/net-dns/pdns/Manifest
22 @@ -1,2 +1,3 @@
23 DIST pdns-4.1.10.tar.bz2 1117663 BLAKE2B 9c1b8c608862b42019c6b753af950f940455538b439824e10d28a79a4f04fe926decf86f286d79c850f39e0df345d646ba774e5557cce1d44f6c120d8b2892a3 SHA512 59a7a52468f6daae8de01bb2b08d812906ef58047026369895341cfff253a5b9ba29d6a6b43a822f1632641eec34fa1afa6fbb5b0ba5e72ecce8e61787892136
24 +DIST pdns-4.1.11.tar.bz2 1118103 BLAKE2B f4ba0c463c7ff5f2185b33956ef7749b5ca6496ce850a189ec5a537d174e1391784f2c0c2af3bc7b68d2f1e01ec57c8731dc07a7690905ab7a6e386a1a8f3e4d SHA512 18215f523a39d48c8756bc13ecae1bd78967c2d66619d93ddaafb13062690002a9bdfe1d337796820706692c449286c7b9e9b8d45933684d32acbc20e490c0c4
25 DIST pdns-4.2.0-rc2.tar.bz2 1245187 BLAKE2B 30ee03752dafa02f5618ba26def1cb8d49b0f7f004b54fcb8d7640b0d60897ac9a9b13e918ab3aaee1d679af772aacd0591e9c9cd3bf6b1af79305e06cac1cdb SHA512 695589980fc35e73fc0e72f57034e2cfefd7b046100dc6f8740ac94dd50ee068453c72aa2ee5626e6cccfca1eeb5e3f036b844039db52d5c45f070d291002122
26
27 diff --git a/net-dns/pdns/pdns-4.1.11.ebuild b/net-dns/pdns/pdns-4.1.11.ebuild
28 new file mode 100644
29 index 00000000000..9c4996e63d3
30 --- /dev/null
31 +++ b/net-dns/pdns/pdns-4.1.11.ebuild
32 @@ -0,0 +1,157 @@
33 +# Copyright 1999-2019 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI="7"
37 +
38 +inherit multilib user
39 +
40 +DESCRIPTION="The PowerDNS Daemon"
41 +HOMEPAGE="https://www.powerdns.com/"
42 +SRC_URI="https://downloads.powerdns.com/releases/${P/_/-}.tar.bz2"
43 +
44 +LICENSE="GPL-2"
45 +SLOT="0"
46 +KEYWORDS="~amd64 ~x86"
47 +
48 +# other possible flags:
49 +# db2: we lack the dep
50 +# oracle: dito (need Oracle Client Libraries)
51 +# xdb: (almost) dead, surely not supported
52 +
53 +IUSE="botan debug doc geoip ldap libressl lua luajit mydns mysql opendbx postgres protobuf remote sodium sqlite systemd tools tinydns test"
54 +
55 +REQUIRED_USE="mydns? ( mysql )"
56 +
57 +RDEPEND="
58 + libressl? ( dev-libs/libressl:= )
59 + !libressl? ( dev-libs/openssl:= )
60 + >=dev-libs/boost-1.35:=
61 + botan? ( dev-libs/botan:2= )
62 + lua? (
63 + !luajit? ( dev-lang/lua:= )
64 + luajit? ( dev-lang/luajit:= )
65 + )
66 + mysql? ( dev-db/mysql-connector-c )
67 + postgres? ( dev-db/postgresql:= )
68 + ldap? ( >=net-nds/openldap-2.0.27-r4 app-crypt/mit-krb5 )
69 + sqlite? ( dev-db/sqlite:3 )
70 + opendbx? ( dev-db/opendbx )
71 + geoip? ( >=dev-cpp/yaml-cpp-0.5.1:= dev-libs/geoip )
72 + sodium? ( dev-libs/libsodium:= )
73 + tinydns? ( >=dev-db/tinycdb-0.77 )
74 + protobuf? ( dev-libs/protobuf )"
75 +DEPEND="${RDEPEND}"
76 +BDEPEND="virtual/pkgconfig
77 + doc? ( app-doc/doxygen )"
78 +
79 +S="${WORKDIR}"/${P/_/-}
80 +
81 +src_configure() {
82 + local dynmodules="pipe bind" # the default backends, always enabled
83 +
84 + #use db2 && dynmodules+=" db2"
85 + use ldap && dynmodules+=" ldap"
86 + use lua && dynmodules+=" lua"
87 + use mydns && dynmodules+=" mydns"
88 + use mysql && dynmodules+=" gmysql"
89 + use opendbx && dynmodules+=" opendbx"
90 + #use oracle && dynmodules+=" goracle oracle"
91 + use postgres && dynmodules+=" gpgsql"
92 + use remote && dynmodules+=" remote"
93 + use sqlite && dynmodules+=" gsqlite3"
94 + use tinydns && dynmodules+=" tinydns"
95 + use geoip && dynmodules+=" geoip"
96 + #use xdb && dynmodules+=" xdb"
97 +
98 + econf \
99 + --disable-static \
100 + --sysconfdir=/etc/powerdns \
101 + --libdir=/usr/$(get_libdir)/powerdns \
102 + --with-modules= \
103 + --with-dynmodules="${dynmodules}" \
104 + --with-mysql-lib=/usr/$(get_libdir) \
105 + $(use_enable botan) \
106 + $(use_enable debug verbose-logging) \
107 + $(use_enable test unit-tests) \
108 + $(use_enable tools) \
109 + $(use_enable systemd) \
110 + $(use_enable sodium libsodium) \
111 + $(usex lua "$(use_with !luajit lua) $(use_with luajit)" \
112 + '--without-lua --without-luajit') \
113 + $(use_with protobuf) \
114 + ${myconf}
115 +}
116 +
117 +src_compile() {
118 + default
119 + use doc && emake -C codedocs codedocs
120 +}
121 +
122 +src_install() {
123 + default
124 +
125 + mv "${D}"/etc/powerdns/pdns.conf{-dist,}
126 +
127 + fperms 0700 /etc/powerdns
128 + fperms 0600 /etc/powerdns/pdns.conf
129 +
130 + # set defaults: setuid=pdns, setgid=pdns
131 + sed -i \
132 + -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
133 + "${D}"/etc/powerdns/pdns.conf
134 +
135 + newinitd "${FILESDIR}"/pdns-r1 pdns
136 +
137 + keepdir /var/empty
138 +
139 + if use doc; then
140 + docinto html
141 + dodoc -r codedocs/html/.
142 + fi
143 +
144 + # Install development headers
145 + insinto /usr/include/pdns
146 + doins pdns/*.hh
147 + insinto /usr/include/pdns/backends/gsql
148 + doins pdns/backends/gsql/*.hh
149 +
150 + if use ldap ; then
151 + insinto /etc/openldap/schema
152 + doins "${FILESDIR}"/dnsdomain2.schema
153 + fi
154 +
155 + find "${D}" -name '*.la' -delete || die
156 +}
157 +
158 +pkg_preinst() {
159 + enewgroup pdns
160 + enewuser pdns -1 -1 /var/empty pdns
161 +}
162 +
163 +pkg_postinst() {
164 + elog "PowerDNS provides multiple instances support. You can create more instances"
165 + elog "by symlinking the pdns init script to another name."
166 + elog
167 + elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
168 + elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
169 +
170 + if use ldap ; then
171 + ewarn "The official LDAP backend module is only compile-tested by upstream."
172 + ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
173 + fi
174 +
175 + local old
176 + for old in ${REPLACING_VERSIONS}; do
177 + ver_test ${old} -lt 3.2 || continue
178 +
179 + ewarn "To fix a security bug (bug #458018) had the following"
180 + ewarn "files/directories the world-readable bit removed (if set):"
181 + ewarn " ${EPREFIX}/etc/powerdns"
182 + ewarn " ${EPREFIX}/etc/powerdns/pdns.conf"
183 + ewarn "Check if this is correct for your setup"
184 + ewarn "This is a one-time change and will not happen on subsequent updates."
185 + chmod o-rwx "${EPREFIX}"/etc/powerdns/{,pdns.conf}
186 +
187 + break
188 + done
189 +}