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