1 |
# $Id: djbdns.spec,v 1.3 2017/07/12 16:43:25 unnilennium Exp $ |
2 |
|
3 |
# |
4 |
# RPM spec file for Dan Bernstein's djbdns package |
5 |
# |
6 |
# $Id: djbdns.spec,v 1.3 2017/07/12 16:43:25 unnilennium Exp $ |
7 |
# |
8 |
Summary: collection of Domain Name System tools |
9 |
%define name djbdns |
10 |
Name: %{name} |
11 |
%define version 1.05 |
12 |
%define release 11 |
13 |
Version: %{version} |
14 |
Release: %{release}%{?dist} |
15 |
License: Public Domain |
16 |
Group: Networking/Daemons |
17 |
Source: http://cr.yp.to/%{name}/%{name}-%{version}.tar.gz |
18 |
URL: http://cr.yp.to/%{name}.html |
19 |
Patch0: %{name}-%{version}.patch.2001022000 |
20 |
Patch1: dns_transmit-bug.patch |
21 |
#Patch2: http://homepages.tesco.net./~J.deBoynePollard/Softwares/djbdns/dnscache-cname-handling.patch |
22 |
#Patch3: http://homepages.tesco.net./~J.deBoynePollard/Softwares/djbdns/dnscache-strict-forwardonly.patch |
23 |
#Patch4: http://homepages.tesco.net./~J.deBoynePollard/Softwares/djbdns/tinydns-alias-chain-truncation.patch |
24 |
|
25 |
# openwrt patches |
26 |
Patch20: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/020-dnsroots-update.patch |
27 |
Patch30: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/030-srv-records-and-axfrget.patch |
28 |
Patch50: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/050-tinydns-mmap-leak.patch |
29 |
Patch60: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/060-dnscache-big-udp-packets.patch |
30 |
Patch70: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/070-dnscache-dpos-tcp-servfail.patch |
31 |
Patch90: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/090-tinydns-one-second.patch |
32 |
Patch80: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/080-dnscache-cache-negatives.patch |
33 |
Patch120: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/120-compiler-temporary-filename.patch |
34 |
Patch200: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/200-dnscache-cname-handling.patch |
35 |
Patch210: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/210-dnscache-strict-forwardonly.patch |
36 |
Patch230: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/230-tinydns-data-semantic-error.patch |
37 |
Patch240: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/240-tinydns-alias-chain-truncation.patch |
38 |
Patch270: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/270-dnscache-sigpipe-fix.patch |
39 |
Patch300: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/300-bugfix-dnscache-dempsky-poison.patch |
40 |
Patch310: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/310-bugfix-dnscache-merge-outgoing-requests.patch |
41 |
Patch320: https://dev.openwrt.org/export/HEAD/packages/net/djbdns/patches/320-bugfix-dnscache-cache-soa-records.patch |
42 |
Patch330: https://dev.openwrt.org/raw-attachment/ticket/5881/330-fix-dnscache-cname-handling.patch |
43 |
|
44 |
#after openwrt applied patches |
45 |
Patch450: 450-dnscache-ghost-domain-CVE-2012-1191.patch |
46 |
Patch500: 500-cutom-dnscache-maxloop.patch |
47 |
|
48 |
|
49 |
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot |
50 |
Provides: djbdns |
51 |
AutoReqProv: no |
52 |
|
53 |
%description |
54 |
djbdns is a collection of Domain Name System tools. It includes several |
55 |
components: |
56 |
|
57 |
- The dnscache program is a local DNS cache. It accepts recursive |
58 |
DNS queries from local clients such as web browsers. It collects |
59 |
responses from remote DNS servers. |
60 |
|
61 |
- The tinydns program is a fast, UDP-only DNS server. It makes |
62 |
local DNS information available to the Internet. It supports load |
63 |
balancing and client differentiation. |
64 |
|
65 |
- The walldns program is a reverse DNS wall. It provides matching |
66 |
reverse and forward records while hiding local host information. |
67 |
|
68 |
- The rbldns program is an IP-address-listing DNS server. It uses |
69 |
DNS to publish a list of IP addresses, such as RBL or DUL. |
70 |
|
71 |
- The dns library handles outgoing and incoming DNS packets. It can |
72 |
be used by clients such as web browsers to look up host addresses, |
73 |
host names, MX records, etc. It supports asynchronous resolution. |
74 |
|
75 |
- The dnsfilter program is a parallel IP-address-to-host-name |
76 |
converter. |
77 |
|
78 |
- The dnsip, dnsipq, dnsname, dnstxt, and dnsmx programs are simple |
79 |
command-line interfaces to DNS. |
80 |
|
81 |
- The dnsq and dnstrace programs are DNS debugging tools. |
82 |
|
83 |
djbdns was written by Daniel J Bernstein, and was placed into the public |
84 |
domain on Dec 28, 2007. |
85 |
|
86 |
%changelog |
87 |
* Mon Apr 12 2021 Jean-Philippe Pialasse <tests@pialasse.com> 1.05-11.sme |
88 |
- import modification from SME9 [SME: 11548] |
89 |
- improve short ttl cname resolution and glueless answer from akadns [SME: 8362] |
90 |
- 500-cutom-dnscache-maxloop.patch: set QUERY_MAXLEVEL 5 QUERY_MAXLOOP 500 QUERY_MAXNS 16 [SME: 10300] |
91 |
|
92 |
* Wed Jul 12 2017 Jean-Philippe Pialasse <tests@pialasse.com> 1.05-10.sme |
93 |
- improve short ttl cname resolution and glueless answer from akadns [SME: 8362] |
94 |
- 500-cutom-dnscache-maxloop.patch: increase QUERY_MAXLEVEL 5->10 , set QUERY_MAXLOOP 160 |
95 |
|
96 |
* Tue Jul 11 2017 Jean-Philippe Pialasse <tests@pialasse.com> 1.05-9.sme |
97 |
--import patches from openwrt and rename already applied patches |
98 |
--fix security issues [SME: 10374] |
99 |
- 020-dnsroots-update.patch: update list of root DNS servers |
100 |
- 070-dnscache-dpos-tcp-servfail.patch: SERVFAIL rename previous patch dns_transmit-bug.patch |
101 |
- 080-dnscache-cache-negatives.patch: rfc2308 ? |
102 |
- 210-dnscache-strict-forwardonly.patch: rename previous patch dnscache-strict-forwardonly.patch |
103 |
- 240-tinydns-alias-chain-truncation.patch: rename previous patch tinydns-alias-chain-truncation.patch |
104 |
- 270-dnscache-sigpipe-fix.patch: SIGPIPE |
105 |
- 300-bugfix-dnscache-dempsky-poison.patch: CVE-2009-0858 |
106 |
- 310-bugfix-dnscache-merge-outgoing-requests.patch: CVE-2008-4392 |
107 |
- 320-bugfix-dnscache-cache-soa-records.patch: CVE-2008-4392 |
108 |
- 450-dnscache-ghost-domain-CVE-2012-1191.patch: CVE-2012-1191 http://marc.info/?l=djbdns&m=134190748729079&w=2 |
109 |
--bug fixes [SME: 10374] |
110 |
- 060-dnscache-big-udp-packets.patch: accept and handle longer than 512 bytes UDP packets |
111 |
- 230-tinydns-data-semantic-error.patch: handle semantic error to avoid publishing false dns records |
112 |
--fix issue with short ttl cname like akamaid [SME: 8362] |
113 |
- 200-dnscache-cname-handling.patch: rename previous patch dnscache-cname-handling.patch |
114 |
- 330-fix-dnscache-cname-handling.patch: fix dnscache cname for short ttl |
115 |
- 500-cutom-dnscache-maxloop.patch: set max loop to 200 |
116 |
--needed for previous patches to apply cleanly |
117 |
- 030-srv-records-and-axfrget.patch: add SRV record type and axfr-get decompose SRC and PTR records (for 230-*.patch) |
118 |
- 050-tinydns-mmap-leak.patch: report cdb leak |
119 |
- 080-dnscache-cache-negatives.patch: rfc2308 ? |
120 |
- 090-tinydns-one-second.patch: improve tinydns with 8 or more concurent connections (for 240-*.patch) |
121 |
- 120-compiler-temporary-filename.patch: change tmp filename to avoid conflicts (for 230-*.patch) |
122 |
|
123 |
* Mon Mar 24 2008 Shad L. Lords <slords@mail.com> 1.05-8 |
124 |
- Comment out contentious patches for now [SME: 3826] [SME: 3824] |
125 |
|
126 |
* Mon Jan 28 2008 Charlie Brady <charlie_brady@mitel.com> 1.05-7 |
127 |
- Patch tinydns to publish complete client-side alias chains. [SME: 3826] |
128 |
|
129 |
* Mon Jan 28 2008 Charlie Brady <charlie_brady@mitel.com> 1.05-6 |
130 |
- Patch to fix problems with delegation loops. [SME: 3825] |
131 |
|
132 |
* Mon Jan 28 2008 Charlie Brady <charlie_brady@mitel.com> 1.05-5 |
133 |
- Patch to fix various problems in dnscache CNAME record handling. [SME: 3824] |
134 |
|
135 |
* Thu Jan 10 2008 Charlie Brady <charlieb@e-smith.com> 1.05-4 |
136 |
- Patch around TCP bug: http://alkemio.org/dns_transmit-bug.html |
137 |
- Change license to "Public Domain' - http://cr.yp.to/distributors.html |
138 |
|
139 |
* Sun Apr 29 2007 Shad L. Lords <slords@mail.com> |
140 |
- Clean up spec so package can be built by koji/plague |
141 |
|
142 |
* Thu Dec 07 2006 Shad L. Lords <slords@mail.com> |
143 |
- Update to new release naming. No functional changes. |
144 |
- Make Packager generic |
145 |
|
146 |
* Thu Nov 11 2004 Charlie Brady <charlieb@e-smith.com> 1.05-02 |
147 |
- Use "conf-cc" value which works around errno problem. |
148 |
|
149 |
* Tue Feb 20 2001 Peter Samuel <peters@e-smith.com> |
150 |
- [1.05-01] |
151 |
- Updated for djbdns-1.05. |
152 |
|
153 |
* Tue Feb 6 2001 Peter Samuel <peters@e-smith.com> |
154 |
- [1.04-01] |
155 |
- Now installs in its own root area prior to creating binary RPM. |
156 |
|
157 |
%prep |
158 |
%setup |
159 |
|
160 |
# This patch allows files to be installed in a relative directory prior |
161 |
# to creating the binary RPM. It does not change the installed files or |
162 |
# their final installed locations. |
163 |
|
164 |
%patch0 -p1 |
165 |
|
166 |
# Create the relative installation directories. |
167 |
|
168 |
mkdir -p ./root/usr |
169 |
mkdir -p ./root/etc |
170 |
|
171 |
%patch20 -p1 |
172 |
%patch30 -p1 |
173 |
%patch50 -p1 |
174 |
%patch60 -p1 |
175 |
%patch70 -p1 |
176 |
%patch80 -p1 |
177 |
%patch90 -p1 |
178 |
%patch120 -p1 |
179 |
%patch200 -p1 |
180 |
%patch210 -p1 |
181 |
%patch230 -p1 |
182 |
%patch240 -p1 |
183 |
%patch270 -p1 |
184 |
%patch300 -p1 |
185 |
%patch310 -p1 |
186 |
%patch320 -p1 |
187 |
%patch330 -p1 |
188 |
%patch450 -p1 |
189 |
%patch500 -p1 |
190 |
|
191 |
|
192 |
%build |
193 |
echo "gcc -O2 -Wall --include /usr/include/errno.h" > conf-cc |
194 |
echo "gcc -s -Os -pipe" > conf-ld |
195 |
make |
196 |
|
197 |
%install |
198 |
make setup |
199 |
make check |
200 |
rm -rf $RPM_BUILD_ROOT |
201 |
(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) |
202 |
|
203 |
%clean |
204 |
rm -rf $RPM_BUILD_ROOT |
205 |
|
206 |
%files |
207 |
%attr(644,root,root) /etc/dnsroots.global |
208 |
%attr(755,root,root) /usr/local/bin/axfrdns |
209 |
%attr(755,root,root) /usr/local/bin/axfrdns-conf |
210 |
%attr(755,root,root) /usr/local/bin/axfr-get |
211 |
%attr(755,root,root) /usr/local/bin/dnscache |
212 |
%attr(755,root,root) /usr/local/bin/dnscache-conf |
213 |
%attr(755,root,root) /usr/local/bin/dnsfilter |
214 |
%attr(755,root,root) /usr/local/bin/dnsip |
215 |
%attr(755,root,root) /usr/local/bin/dnsipq |
216 |
%attr(755,root,root) /usr/local/bin/dnsmx |
217 |
%attr(755,root,root) /usr/local/bin/dnsname |
218 |
%attr(755,root,root) /usr/local/bin/dnsq |
219 |
%attr(755,root,root) /usr/local/bin/dnsqr |
220 |
%attr(755,root,root) /usr/local/bin/dnstrace |
221 |
%attr(755,root,root) /usr/local/bin/dnstracesort |
222 |
%attr(755,root,root) /usr/local/bin/dnstxt |
223 |
%attr(755,root,root) /usr/local/bin/pickdns |
224 |
%attr(755,root,root) /usr/local/bin/pickdns-conf |
225 |
%attr(755,root,root) /usr/local/bin/pickdns-data |
226 |
%attr(755,root,root) /usr/local/bin/random-ip |
227 |
%attr(755,root,root) /usr/local/bin/rbldns |
228 |
%attr(755,root,root) /usr/local/bin/rbldns-conf |
229 |
%attr(755,root,root) /usr/local/bin/rbldns-data |
230 |
%attr(755,root,root) /usr/local/bin/tinydns |
231 |
%attr(755,root,root) /usr/local/bin/tinydns-conf |
232 |
%attr(755,root,root) /usr/local/bin/tinydns-data |
233 |
%attr(755,root,root) /usr/local/bin/tinydns-edit |
234 |
%attr(755,root,root) /usr/local/bin/tinydns-get |
235 |
%attr(755,root,root) /usr/local/bin/walldns |
236 |
%attr(755,root,root) /usr/local/bin/walldns-conf |