]> git.pld-linux.org Git - packages/djbdns.git/blame - djbdns.spec
- move some patches to distfiles
[packages/djbdns.git] / djbdns.spec
CommitLineData
27152db7 1# TODO
27152db7
ER
2# - warning: Installed (but unpackaged) file(s) found:
3# /etc/rbldns/data
4# /usr/bin/random-ip
b313ed36 5Summary: DJB DNS
e6716d07 6Summary(pl.UTF-8): DJB DNS
e201398d 7Name: djbdns
8Version: 1.05
88c0d895 9Release: 26
f6fae131
JB
10# http://cr.yp.to/distributors.html
11License: Public Domain
e201398d 12Group: Networking/Daemons
e201398d 13Source0: http://cr.yp.to/djbdns/%{name}-%{version}.tar.gz
8a927a44 14# Source0-md5: 3147c5cd56832aa3b41955c7a51cbeb2
c3bfacc7 15Source1: %{name}-doc.tar.gz
8c85bb6b 16# Source1-md5: 1d6aed1a5d3d3eda3958fa3e7d808fc8
8c969dfe 17Source2: ftp://ftp.innominate.org/gpa/djb/%{name}-%{version}-man.tar.gz
8c85bb6b 18# Source2-md5: 2b4e71fa4592858e4508538f78d50f61
fb47ae15 19Source3: http://www.sericyb.com.au/tinydns-notify
2a5b64f5 20# NoSource3-md5: 2213bdc8c58c10cb8770b7e5b0d67aea
27152db7 21Source4: http://www.sericyb.com.au/tinydns-log
bd9ee8fd 22# NoSource4-md5: 2cc75dc47a66d38e03ce2d33443930b6
003ba763 23Patch0: dnscache-1.05-multiple-ip.patch
8badc80b 24# adds IPv6 support
cb79da0b 25Patch1: http://www.fefe.de/dns/%{name}-1.05-test22.diff.bz2
bd9ee8fd 26# Patch1-md5: afab02b7e3afe58b93d15ddf4e5f90b4
2fb23191 27Patch3: http://iksz.hu/package/djbdns-conf/%{name}-1.05-multi_tinydns_data.patch
bd9ee8fd 28# Patch3-md5: 3b59e08b6e9d2c5538762ee60c286867
94825c27 29Patch4: %{name}-srv.patch
40df8a87 30Patch5: %{name}-glibc.patch
d4e07401 31# http://www.iecc.com/rbldns-patch.txt
27152db7 32Patch6: %{name}-rbldns_a.patch
58c2947d 33# http://core.segfault.pl/~hobbit/tinydns-include.patch
34Patch8: %{name}-tinydns-include.patch
df2dfdac 35Patch9: %{name}-tinydns-log-ipv6.patch
a453401c
MW
36# http://romana.now.ie/software/djbdns-cachestats.patch
37Patch10: %{name}-cachestats.patch
aaad6436 38Patch11: %{name}-ipv6-incfix.patch
57308347
GS
39Patch12: %{name}-dnscache-merge-similar-outgoing-queries.patch
40# http://www.your.org/dnscache/0001-dnscache-merge-similar-outgoing-queries.patch
41Patch13: %{name}-dnscache-cache-soa-records.patch
42# http://www.your.org/dnscache/0002-dnscache-cache-soa-records.patch
e201398d 43URL: http://cr.yp.to/djbdns.html
5a10cd56 44BuildRequires: rpm-perlprov
5aa5729c 45BuildRequires: rpmbuild(macros) >= 1.202
8361445e
ER
46Requires(postun): /usr/sbin/groupdel
47Requires(postun): /usr/sbin/userdel
7b40c2c2 48Requires(pre): /bin/id
bef00ef1 49Requires(pre): /usr/bin/getgid
7b40c2c2 50Requires(pre): /usr/sbin/groupadd
51Requires(pre): /usr/sbin/useradd
bef00ef1 52Provides: group(djbdns)
c35e9e1a 53Provides: nameserver
bef00ef1 54Provides: user(dnslog)
c35e9e1a 55Obsoletes: caching-nameserver
c3bfacc7 56BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57
58%description
363edfa3 59This is a set of DNS servers with security in mind. If you find a
60security hole you can get a prize.
61
62This package contains some basic DNS debugging tools and some
63documentation. If you need a DNS server install one of the following
64packages:
65
099fa16f 66 - djbdns-dnscache - a local DNS cache
3fd490d5 67 - djbdns-dnscachex - an external DNS cache
099fa16f 68 - djbdns-tinydns - a DNS server
fb47ae15 69 - djbdns-tinydns-notify - a tool to send NOTIFY requests
099fa16f 70 - djbdns-pickdns - a DNS load-balancing server
71 - djbdns-walldns - a reverse DNS wall
72 - djbdns-rbldns - an IP-address-listing DNS server
73 - djbdns-axfrdns - a DNS zone transfer server
363edfa3 74
91ea28f8 75%description -l de.UTF-8
363edfa3 76Dies ist ein Satz von auf Sicherheit zielenden DNS-Servers. Man kriegt
77ein Preis, wenn man ein Sicherheitsloch findet.
78
91ea28f8 79Dieses Paket enthält ein paar DNS-Werkzeugen und etwas Dokumentation.
363edfa3 80Wenn du einen DNS-Server braucht, installe ein von den folgenden
81Paketen:
82
099fa16f 83 - djbdns-dnscache - ein lokaler DNS-Cache
84 - djbdns-tinydns - ein DNS-Server
85 - djbdns-pickdns - ein Belastung ausgleichender DNS-Server
91ea28f8 86 - djbdns-walldns - eine Wand Rückgekehrten DNSs
099fa16f 87 - djbdns-rbldns - ein IP-Adressen-Listen-DNS-Server
88 - djbdns-axfrdns - ein DNS-Zonen-Transfer-Server
c3bfacc7 89
91ea28f8
JR
90%description -l pl.UTF-8
91Jest to alternatywny zestaw serwerów DNS'u, którego głównym celem jest
92bezpieczeństwo. Za znalezienie dziury w tym systemie została
363edfa3 93wyznaczona nawet nagroda.
94
91ea28f8
JR
95Ten pakiet zawiera kilka podstawowych narzędzi DNS oraz trochę
96dokumentacji. Jeśli potrzebujesz serwera DNS zainstaluj jeden z
97następujących pakietów:
363edfa3 98
099fa16f 99 - djbdns-dnscache - lokalny cache DNS
100 - djbdns-tinydns - serwer DNS
91ea28f8
JR
101 - djbdns-tinydns-notify - narzędzie do wysyłania komunikatów NOTIFY
102 - djbdns-pickdns - serwer DNS do równoważenia obciążeń
103 - djbdns-walldns - ściana dla odwrotnych zapytań DNS
104 - djbdns-rbldns - serwer DNS list adresów IP
105 - djbdns-axfrdns - serwer transferów stref DNS
363edfa3 106
37e173ce 107%package dnscache
363edfa3 108Summary: DJB's local DNS cache
e6716d07
ER
109Summary(de.UTF-8): DJBs lokaler DNS-Cache
110Summary(pl.UTF-8): Lokalny cache DNS od DJB
363edfa3 111Group: Networking/Daemons
8361445e
ER
112Requires(post): diffutils
113Requires(post): fileutils
114Requires(postun): /usr/sbin/groupdel
115Requires(postun): /usr/sbin/userdel
7b40c2c2 116Requires(pre): /bin/id
117Requires(pre): /usr/sbin/groupadd
118Requires(pre): /usr/sbin/useradd
37e173ce 119Requires(preun): daemontools
2eeb182e 120Requires: %{name} = %{version}-%{release}
50f1c4d2 121Requires: daemontools >= 0.70-5
bef00ef1 122Provides: user(dnscache)
37e173ce 123Obsoletes: dnscache
363edfa3 124
37e173ce 125%description dnscache
363edfa3 126dnscache is a local DNS cache from the djbdns package. It accepts
127recursive DNS queries from local clients such as web browsers and mail
128transfer agents. It collects responses from remote DNS servers. It
129caches the responses to save time later.
130
91ea28f8
JR
131%description dnscache -l de.UTF-8
132dnscache ist ein lokaler DNS-Cache aus dem djbdns-Paket. Es empfängt
363edfa3 133rekursive DNS-Fragen von den lokalen Klienten, zum Beispiel
134Web-Browsers und Mail-Transfer-Agenten. Es sammelt die Antworten von
91ea28f8 135den Fern-DNS-Servers. Es merkt sich die Antworten, um die Zeit später
363edfa3 136zu sparen.
137
91ea28f8 138%description dnscache -l pl.UTF-8
363edfa3 139dnscache jest lokalnym cachem DNS z pakietu djbdns. Przyjmuje on
91ea28f8
JR
140rekursywne zapytania DNS od lokalnych klientów takich, jak
141przeglądarki WWW i agenci transferu poczty (MTA). Zbiera on odpowiedzi
142od zdalnych serwerów DNS. Zapamiętuje on odpowiedzi, żeby później
143oszczędzić czas.
363edfa3 144
aaad6436
ER
145%package dnscachex
146Summary: DJB's external DNS cache
3fd490d5 147Summary(pl.UTF-8): Zewnętrzny cache DNS od DJB
aaad6436
ER
148Group: Networking/Daemons
149Requires(post): diffutils
150Requires(post): fileutils
aaad6436
ER
151Requires(preun): daemontools
152Requires: %{name}-dnscache = %{version}-%{release}
153
154%description dnscachex
3fd490d5 155dnscachex is an external DNS cache from the djbdns package. It accepts
aaad6436
ER
156recursive DNS queries from external clients such as web browsers and
157mail transfer agents. It collects responses from remote DNS servers.
158It caches the responses to save time later.
159
3fd490d5
JB
160%description dnscachex -l pl.UTF-8
161dnscache jest zewnętrznym cachem DNS z pakietu djbdns. Przyjmuje on
162rekursywne zapytania DNS od zewnętrznych klientów takich jak
163przeglądarki WWW i agenci transferu poczty (MTA). Zbiera on odpowiedzi
164od zdalnych serwerów DNS. Zapamiętuje on odpowiedzi, żeby później
165oszczędzić czas.
166
37e173ce 167%package tinydns
363edfa3 168Summary: DJB's DNS server
e6716d07
ER
169Summary(de.UTF-8): DJBs DNS-Server
170Summary(pl.UTF-8): Serwer DNS od DJB
363edfa3 171Group: Networking/Daemons
8361445e
ER
172Requires(post): diffutils
173Requires(postun): /usr/sbin/groupdel
174Requires(postun): /usr/sbin/userdel
7b40c2c2 175Requires(pre): /bin/id
176Requires(pre): /usr/sbin/groupadd
177Requires(pre): /usr/sbin/useradd
37e173ce 178Requires(preun): daemontools
2eeb182e 179Requires: %{name} = %{version}-%{release}
50f1c4d2 180Requires: daemontools >= 0.70-5
363edfa3 181Requires: make
bef00ef1 182Provides: user(tinydns)
37e173ce 183Obsoletes: tinydns
363edfa3 184
37e173ce 185%description tinydns
363edfa3 186tinydns is a DNS server from the djbdns package. It accepts iterative
187DNS queries from hosts around the Internet and responds with
188locally-configured information.
189
91ea28f8
JR
190%description tinydns -l de.UTF-8
191tinydns ist ein DNS-Server aus dem djbdns-Paket. Es empfängt iterative
363edfa3 192DNS-Fragen von dem Hosts aus allem Internet und antwortet mit den
193lokal-konfigurierten Informationen.
194
91ea28f8 195%description tinydns -l pl.UTF-8
363edfa3 196tinydns jest serwerem DNS z pakietu djbdns. Przyjmuje on iteracyjne
91ea28f8 197zapytania DNS od komputerów z całego Internetu i odpowiada przy użyciu
363edfa3 198lokalnie skonfigurowanych informacji.
199
fb47ae15 200%package tinydns-notify
201Summary: DNS NOTIFY sending tool
e6716d07 202Summary(pl.UTF-8): Narzędzie do wysyłania komunikatów DNS NOTIFY
fb47ae15 203License: Free to use
8361445e 204Group: Networking/Daemons
fb47ae15 205URL: http://www.sericyb.com.au/tinydns-notify
2eeb182e 206Requires: %{name} = %{version}-%{release}
fb47ae15 207Requires: perl-Net-DNS
8361445e 208Requires: perl-modules
fb47ae15 209Obsoletes: tinydns-notify
210
211%description tinydns-notify
2fb23191
ER
212tinydns-notify is a tool written in Perl, which extracts zones and
213their nameservers from tinydns-data files and sends DNS NOTIFY
fb47ae15 214requests to nameservers listed in notify-list file.
215
91ea28f8
JR
216%description tinydns-notify -l pl.UTF-8
217tinydns-notify jest napisanym w Perlu narzędziem, które czyta pliki
218stref i odpowiadające im serwery nazw z plików tinydns-data, a
219następnie wysyła żądania NOTIFY do serwerów wyspecyfikowanych w pliku
5a10cd56 220notify-list.
fb47ae15 221
37e173ce 222%package pickdns
363edfa3 223Summary: DJB's load-balancing DNS server
e6716d07
ER
224Summary(de.UTF-8): DJBs Belastung ausgleichender DNS-Server
225Summary(pl.UTF-8): Serwer DNS równoważący obciążenie od DJB
363edfa3 226Group: Networking/Daemons
8361445e
ER
227Requires(post): diffutils
228Requires(postun): /usr/sbin/groupdel
229Requires(postun): /usr/sbin/userdel
7b40c2c2 230Requires(pre): /bin/id
231Requires(pre): /usr/sbin/groupadd
232Requires(pre): /usr/sbin/useradd
37e173ce 233Requires(preun): daemontools
2eeb182e 234Requires: %{name} = %{version}-%{release}
50f1c4d2 235Requires: daemontools >= 0.70-5
363edfa3 236Requires: make
bef00ef1 237Provides: user(pickdns)
37e173ce 238Obsoletes: pickdns
363edfa3 239
37e173ce 240%description pickdns
363edfa3 241pickdns is a DNS load-balancing server from the djbdns package. It
242accepts iterative DNS queries from hosts around the Internet and
243responds with a dynamic selection of locally configured IP addresses
244with 5-second TTLs.
245
91ea28f8 246%description pickdns -l de.UTF-8
363edfa3 247pickdns ist ein Belastung ausgleichender DNS-Server aus dem
91ea28f8 248djbdns-Paket. Es empfängt iterative DNS-Fragen von den Hosts aus allem
363edfa3 249Internet und antwortet mit eine dynamische Auswahl von den
250lokal-konfigurierten IP-Adressen mit 5-Sekunden-TTLs.
251
91ea28f8
JR
252%description pickdns -l pl.UTF-8
253pickdns jest równoważącym obciążenie serwerem DNS z pakietu djbdns.
254Odbiera on iteracyjne zapytania DNS od komputerów z całego internetu i
255odpowiada dynamicznym wyborem lokalnie skonfigurowanych adresów IP z
363edfa3 2565-sekundowymi TTLami.
257
37e173ce 258%package walldns
363edfa3 259Summary: DJB's reverse DNS wall
e6716d07
ER
260Summary(de.UTF-8): DJBs Wand rückgekehrten DNSs
261Summary(pl.UTF-8): Ściana dla odwrotnych zapytań DNS od DJB
363edfa3 262Group: Networking/Daemons
8361445e
ER
263Requires(post): diffutils
264Requires(postun): /usr/sbin/groupdel
265Requires(postun): /usr/sbin/userdel
7b40c2c2 266Requires(pre): /bin/id
267Requires(pre): /usr/sbin/groupadd
268Requires(pre): /usr/sbin/useradd
37e173ce 269Requires(preun): daemontools
2eeb182e 270Requires: %{name} = %{version}-%{release}
50f1c4d2 271Requires: daemontools >= 0.70-5
bef00ef1 272Provides: user(walldns)
37e173ce 273Obsoletes: walldns
363edfa3 274
37e173ce 275%description walldns
363edfa3 276walldns is a reverse DNS wall from the djbdns package. It accepts
277iterative DNS queries for in-addr.arpa domains from hosts around the
278Internet and supplies generic responses that avoid revealing local
279host information.
280
91ea28f8
JR
281%description walldns -l de.UTF-8
282walldns ist ein Wand rückgekehrten DNSs aus dem djbdns-Paket. Es
283empfängt iterative DNS-Fragen für den in-addr.arpa-Domänen von den
363edfa3 284Hosts aus allem Internet und liefert Antworte, die vermeiden
91ea28f8 285Informationen über die lokalen Hosts zu aufzudecken.
363edfa3 286
91ea28f8
JR
287%description walldns -l pl.UTF-8
288walldns jest ścianą dla odwrotnych zapytań DNS z pakietu djbdns.
363edfa3 289Przyjmuje ona iteracyjne zapytania DNS dla domen in-addr.arpa od
91ea28f8 290komputerów z całego Internetu i dostarcza odpowiedzi, które unikają
363edfa3 291ujawniania informacji o lokalnych komputerach.
292
37e173ce 293%package rbldns
363edfa3 294Summary: DJB's IP-address-listing DNS server
e6716d07
ER
295Summary(de.UTF-8): DJBs IP-Adressen-Listen-DNS-Server
296Summary(pl.UTF-8): Serwer DNS list adresów IP od DJB
363edfa3 297Group: Networking/Daemons
8361445e
ER
298Requires(post): diffutils
299Requires(postun): /usr/sbin/groupdel
300Requires(postun): /usr/sbin/userdel
7b40c2c2 301Requires(pre): /bin/id
302Requires(pre): /usr/sbin/groupadd
303Requires(pre): /usr/sbin/useradd
37e173ce 304Requires(preun): daemontools
2eeb182e 305Requires: %{name} = %{version}-%{release}
50f1c4d2 306Requires: daemontools >= 0.70-5
363edfa3 307Requires: make
bef00ef1 308Provides: user(rbldns)
37e173ce 309Obsoletes: rbldns
27152db7 310#Obsoletes: rbldnsd
363edfa3 311
37e173ce 312%description rbldns
363edfa3 313rbldns is an IP-address-listing DNS server from the djbdns package. It
314accepts iterative DNS queries from hosts around the Internet asking
315about various IP addresses. It provides responses showing whether the
316addresses are on a locally configured list, such as RBL or DUL.
317
91ea28f8 318%description rbldns -l de.UTF-8
363edfa3 319rbldns ist ein IP-Adressen-Listen-DNS-Server aus dem djbdns-Paket. Es
91ea28f8 320empfängt iterative DNS-Fragen von den Hosts aus allem Internet
363edfa3 321fragende nach verschiedene IP-Adresse. Es liefert Antworte, die zeugen
322ob die Adresse sich auf einer lokal-konfigurierten Liste befinden, zum
323Beispiel RBL oder DUL.
324
91ea28f8
JR
325%description rbldns -l pl.UTF-8
326rbldns jest serwerem DNS list adresów z pakietu djbdns. Przyjmuje on
327iteracyjne zapytania DNS od komputerów z całego Internetu pytające o
328różne adresy IP. Dostarcza on odpowiedzi pokazujących, czy adresy te
329są na lokalnie skonfigurowanej liście takiej, jak RBL lub DUL.
363edfa3 330
37e173ce 331%package axfrdns
363edfa3 332Summary: DJB's DNS zone-transfer server
e6716d07
ER
333Summary(de.UTF-8): DJBs DNS-Zonen-Transfer-Server
334Summary(pl.UTF-8): Serwer transferów stref DNS od DJB
363edfa3 335Group: Networking/Daemons
8361445e
ER
336Requires(postun): /usr/sbin/groupdel
337Requires(postun): /usr/sbin/userdel
7b40c2c2 338Requires(pre): /bin/id
339Requires(pre): /usr/sbin/groupadd
340Requires(pre): /usr/sbin/useradd
37e173ce 341Requires(preun): daemontools
2eeb182e
ER
342Requires: %{name} = %{version}-%{release}
343Requires: %{name}-tinydns = %{version}-%{release}
50f1c4d2 344Requires: daemontools >= 0.70-5
363edfa3 345Requires: make
37e173ce 346Requires: ucspi-tcp
bef00ef1 347Provides: user(axfrdns)
37e173ce 348Obsoletes: axfrdns
363edfa3 349
37e173ce 350%description axfrdns
363edfa3 351axfrdns is a DNS zone transfer server from the djbdns package. It
352reads a zone-transfer request in DNS-over-TCP format from its standard
353input and responds with locally configured information.
354
91ea28f8 355%description axfrdns -l de.UTF-8
363edfa3 356axfrdns ist ein DNS-Zonen-Transfer-Server aus dem djbdns-Paket. Es
357liest ein Zonen-Transfer-Ersuchen im DNS-over-TCP-Format von seinem
358standarden Eingabe und antwortet mit den lokal-konfigurierten
359Informationen.
360
91ea28f8
JR
361%description axfrdns -l pl.UTF-8
362axfrdns jest serwerem transferów stref DNS z pakietu djbdns. Wczytuje
363on ze standardowego wejścia prośbę o transfer strefy w formacie
364DNS-over-TCP i odpowiada przy użyciu lokalnie skonfigurowanych
363edfa3 365informacji.
c3bfacc7 366
367%prep
b4c80007 368%setup -q -a1 -a2
df2dfdac
ER
369install %{SOURCE3} .
370install %{SOURCE4} .
b4c80007 371
649d2612 372%patch1 -p1
8badc80b 373%patch0 -p1
51523488 374%patch3 -p1
94825c27 375%patch4 -p1
40df8a87 376%patch5
185f3145 377%patch6 -p1
58c2947d 378%patch8 -p1
df2dfdac 379%patch9 -p1
a453401c 380%patch10 -p1
aaad6436 381%patch11 -p1
57308347
GS
382%patch12 -p1
383%patch13 -p1
c3bfacc7 384cd doc
385ln -s merge/djbdns/* .
386
00cebe6a 387%build
e201398d 388echo %{__cc} %{rpmcflags} >conf-cc
e73730dc 389echo %{_prefix} > conf-home
b313ed36 390%{__make}
c3bfacc7 391
392%install
393rm -rf $RPM_BUILD_ROOT
003ba763 394install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_sysconfdir}}
b4c80007 395install -d $RPM_BUILD_ROOT%{_mandir}/{man1,man5,man8}
c3bfacc7 396
df2dfdac
ER
397install tinydns-notify $RPM_BUILD_ROOT%{_bindir}
398install tinydns-log $RPM_BUILD_ROOT%{_bindir}
fb47ae15 399
003ba763 400install dnsroots.global $RPM_BUILD_ROOT%{_sysconfdir}
c3bfacc7 401install axfr-get $RPM_BUILD_ROOT%{_bindir}
402install axfrdns $RPM_BUILD_ROOT%{_bindir}
403install axfrdns-conf $RPM_BUILD_ROOT%{_bindir}
404install cachetest $RPM_BUILD_ROOT%{_bindir}
405install dnscache $RPM_BUILD_ROOT%{_bindir}
406install dnscache-conf $RPM_BUILD_ROOT%{_bindir}
407install dnsfilter $RPM_BUILD_ROOT%{_bindir}
408install dnsip $RPM_BUILD_ROOT%{_bindir}
409install dnsipq $RPM_BUILD_ROOT%{_bindir}
410install dnsmx $RPM_BUILD_ROOT%{_bindir}
411install dnsname $RPM_BUILD_ROOT%{_bindir}
412install dnsq $RPM_BUILD_ROOT%{_bindir}
413install dnsqr $RPM_BUILD_ROOT%{_bindir}
414install dnstrace $RPM_BUILD_ROOT%{_bindir}
415install dnstxt $RPM_BUILD_ROOT%{_bindir}
416install pickdns $RPM_BUILD_ROOT%{_bindir}
417install pickdns-conf $RPM_BUILD_ROOT%{_bindir}
418install pickdns-data $RPM_BUILD_ROOT%{_bindir}
419install random-ip $RPM_BUILD_ROOT%{_bindir}
420install rbldns $RPM_BUILD_ROOT%{_bindir}
421install rbldns-conf $RPM_BUILD_ROOT%{_bindir}
422install rbldns-data $RPM_BUILD_ROOT%{_bindir}
c3bfacc7 423install tinydns $RPM_BUILD_ROOT%{_bindir}
424install tinydns-conf $RPM_BUILD_ROOT%{_bindir}
425install tinydns-data $RPM_BUILD_ROOT%{_bindir}
426install tinydns-edit $RPM_BUILD_ROOT%{_bindir}
427install tinydns-get $RPM_BUILD_ROOT%{_bindir}
428install walldns $RPM_BUILD_ROOT%{_bindir}
429install walldns-conf $RPM_BUILD_ROOT%{_bindir}
b4c80007 430install djbdns-man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
431install djbdns-man/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
432install djbdns-man/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
c3bfacc7 433
a4560ee0
ER
434make_supervise_service() {
435 %{?debug:set -x}
436 local service="$1"
437 local svcdir=$RPM_BUILD_ROOT%{_sysconfdir}/$service
438 local logdir=$RPM_BUILD_ROOT/var/log/djbdns/$service
439
440 install -d $svcdir/supervise $svcdir/log/supervise $logdir
441 touch $logdir/{lock,state}
363edfa3 442
a4560ee0
ER
443 touch $svcdir/log/supervise/{lock,status}
444 mkfifo $svcdir/log/supervise/{control,ok}
445 touch $svcdir/supervise/{lock,status}
446 mkfifo $svcdir/supervise/{control,ok}
447}
448
449##### DNSCACHE #####
450make_supervise_service dnscache
451s=$RPM_BUILD_ROOT%{_sysconfdir}/dnscache
452mkdir $s/env
453echo %{_sysconfdir}/dnscache/root > $s/env/ROOT
454echo 127.0.0.1 > $s/env/IP
455echo 0.0.0.0 > $s/env/IPSEND
456echo 1000000 > $s/env/CACHESIZE
457echo 3000000 > $s/env/DATALIMIT
458touch $s/env/IGNOREIP
459cat>$s/run<<'EOF'
363edfa3 460#!/bin/sh
461exec 2>&1
462exec <seed
463exec envdir ./env sh -c '
49c7d515 464 exec envuidgid dnscache softlimit -o250 -d "$DATALIMIT" %{_bindir}/dnscache
363edfa3 465'
a4560ee0
ER
466EOF
467cat>$s/log/run<<'EOF'
363edfa3 468#!/bin/sh
49c7d515 469exec setuidgid dnslog multilog t /var/log/djbdns/dnscache
a4560ee0
ER
470EOF
471mkdir $s/root
472mkdir $s/root/ip
473touch $s/root/ip/127.0.0.1
474mkdir $s/root/servers
475ln $RPM_BUILD_ROOT%{_sysconfdir}/dnsroots.global $s/root/servers/@
476dd if=/dev/zero of=$s/seed bs=128c count=1
363edfa3 477
aaad6436
ER
478##### DNSCACHEX #####
479make_supervise_service dnscachex
480s=$RPM_BUILD_ROOT%{_sysconfdir}/dnscachex
481mkdir $s/env
482echo %{_sysconfdir}/dnscachex/root > $s/env/ROOT
483echo 127.0.0.1 > $s/env/IP
484echo 0.0.0.0 > $s/env/IPSEND
485echo 1000000 > $s/env/CACHESIZE
486echo 3000000 > $s/env/DATALIMIT
487touch $s/env/IGNOREIP
488cat>$s/run<<'EOF'
489#!/bin/sh
490exec 2>&1
491exec <seed
492exec envdir ./env sh -c '
493 exec envuidgid dnscache softlimit -o250 -d "$DATALIMIT" %{_bindir}/dnscache
494'
495EOF
496cat>$s/log/run<<'EOF'
497#!/bin/sh
498exec setuidgid dnslog multilog t /var/log/djbdns/dnscachex
499EOF
500mkdir $s/root
501mkdir $s/root/ip
502touch $s/root/ip/127.0.0.1
503mkdir $s/root/servers
504ln $RPM_BUILD_ROOT%{_sysconfdir}/dnsroots.global $s/root/servers/@
505dd if=/dev/zero of=$s/seed bs=128c count=1
506
363edfa3 507##### TINYDNS #####
a4560ee0
ER
508make_supervise_service tinydns
509s=$RPM_BUILD_ROOT%{_sysconfdir}/tinydns
510cat>$s/log/run<<EOF
363edfa3 511#!/bin/sh
49c7d515 512exec setuidgid dnslog multilog t /var/log/djbdns/tinydns
a4560ee0
ER
513EOF
514mkdir $s/env
515echo %{_sysconfdir}/tinydns/root > $s/env/ROOT
516echo 127.0.0.1 > $s/env/IP
517cat>$s/run<<EOF
363edfa3 518#!/bin/sh
519exec 2>&1
520exec envuidgid tinydns envdir ./env softlimit -d300000 %{_bindir}/tinydns
a4560ee0
ER
521EOF
522mkdir $s/root
523touch $s/root/data
524cat>$s/root/add-ns<<'EOF'
363edfa3 525#!/bin/sh
49c7d515 526exec %{_bindir}/tinydns-edit data data.new add ns ${1+"$@"}
a4560ee0
ER
527EOF
528cat>$s/root/add-childns<<'EOF'
363edfa3 529#!/bin/sh
49c7d515 530exec %{_bindir}/tinydns-edit data data.new add childns ${1+"$@"}
a4560ee0
ER
531EOF
532cat>$s/root/add-host<<'EOF'
363edfa3 533#!/bin/sh
49c7d515 534exec %{_bindir}/tinydns-edit data data.new add host ${1+"$@"}
a4560ee0
ER
535EOF
536cat>$s/root/add-host6<<'EOF'
b4c80007 537#!/bin/sh
49c7d515 538exec %{_bindir}/tinydns-edit data data.new add host6 ${1+"$@"}
a4560ee0
ER
539EOF
540cat>$s/root/add-alias<<'EOF'
363edfa3 541#!/bin/sh
49c7d515 542exec %{_bindir}/tinydns-edit data data.new add alias ${1+"$@"}
a4560ee0
ER
543EOF
544cat>$s/root/add-alias6<<'EOF'
b4c80007 545#!/bin/sh
49c7d515 546exec %{_bindir}/tinydns-edit data data.new add alias6 ${1+"$@"}
a4560ee0
ER
547EOF
548cat>$s/root/add-mx<<'EOF'
363edfa3 549#!/bin/sh
49c7d515 550exec %{_bindir}/tinydns-edit data data.new add mx ${1+"$@"}
a4560ee0
ER
551EOF
552cat>$s/root/Makefile<<'EOF'
363edfa3 553data.cdb: data
d8bfa25b 554 %{_bindir}/tinydns-data
a4560ee0 555EOF
363edfa3 556
557##### PICKDNS #####
a4560ee0
ER
558make_supervise_service pickdns
559s=$RPM_BUILD_ROOT%{_sysconfdir}/pickdns
560cat>$s/log/run<<EOF
363edfa3 561#!/bin/sh
49c7d515 562exec setuidgid dnslog multilog t /var/log/djbdns/pickdns
a4560ee0
ER
563EOF
564mkdir $s/env
565echo %{_sysconfdir}/pickdns/root > $s/env/ROOT
566echo 127.0.0.1 > $s/env/IP
567cat>$s/run<<EOF
363edfa3 568#!/bin/sh
569exec 2>&1
570exec envuidgid pickdns envdir ./env softlimit -d250000 %{_bindir}/pickdns
a4560ee0
ER
571EOF
572mkdir $s/root
573touch $s/root/data
574cat>$s/root/Makefile<<EOF
363edfa3 575data.cdb: data
d8bfa25b 576 %{_bindir}/pickdns-data
a4560ee0 577EOF
363edfa3 578
579##### WALLDNS #####
a4560ee0
ER
580make_supervise_service walldns
581s=$RPM_BUILD_ROOT%{_sysconfdir}/walldns
582cat>$s/log/run<<EOF
363edfa3 583#!/bin/sh
584exec setuidgid dnslog multilog t ./main
a4560ee0
ER
585EOF
586mkdir $s/env
587echo %{_sysconfdir}/walldns/root > $s/env/ROOT
588echo 127.0.0.1 > $s/env/IP
589cat>$s/run<<EOF
363edfa3 590#!/bin/sh
591exec 2>&1
592exec envuidgid walldns envdir ./env softlimit -d250000 %{_bindir}/walldns
a4560ee0
ER
593EOF
594mkdir $s/root
363edfa3 595
596##### RBLDNS #####
a4560ee0
ER
597make_supervise_service rbldns
598s=$RPM_BUILD_ROOT%{_sysconfdir}/rbldns
599cat>$s/log/run<<EOF
363edfa3 600#!/bin/sh
49c7d515 601exec setuidgid dnslog multilog t /var/log/djbdns/rbldns
a4560ee0
ER
602EOF
603mkdir $s/env
604echo %{_sysconfdir}/rbldns/root > $s/env/ROOT
605echo 127.0.0.1 > $s/env/IP
606echo in-addr.arpa > $s/env/BASE
607cat>$s/run<<EOF
363edfa3 608#!/bin/sh
609exec 2>&1
610exec envuidgid rbldns envdir ./env softlimit -d250000 %{_bindir}/rbldns
a4560ee0
ER
611EOF
612mkdir $s/root
613touch $s/root/data
614cat>$s/root/Makefile<<EOF
363edfa3 615data.cdb: data
d8bfa25b 616 %{_bindir}/rbldns-data
a4560ee0
ER
617EOF
618cat>$s/data<<EOF
e67eacd6 619# example
d4e07401 620# !10.11.12.13:See http://bad.example.com
e4af4f73 621# :127.0.0.2:blacklisted"
622# 1.2.3.0/24
a4560ee0 623EOF
e4af4f73 624
625
363edfa3 626
627##### AXFRDNS #####
a4560ee0
ER
628make_supervise_service axfrdns
629s=$RPM_BUILD_ROOT%{_sysconfdir}/axfrdns
630cat>$s/log/run<<EOF
363edfa3 631#!/bin/sh
49c7d515 632exec setuidgid dnslog multilog t /var/log/djbdns/axfrdns
a4560ee0
ER
633EOF
634mkdir $s/env
635echo %{_sysconfdir}/tinydns/root > $s/env/ROOT
636echo 127.0.0.1 > $s/env/IP
637cat>$s/run<<'EOF'
363edfa3 638#!/bin/sh
639exec 2>&1
640exec envdir ./env sh -c '
49c7d515 641 exec envuidgid axfrdns softlimit -d300000 tcpserver -vDRHl0 -x tcp.cdb -- "$IP" 53 %{_bindir}/axfrdns
363edfa3 642'
a4560ee0
ER
643EOF
644cat>$s/Makefile<<'EOF'
363edfa3 645tcp.cdb: tcp
d8bfa25b 646 tcprules tcp.cdb tcp.tmp < tcp
a4560ee0
ER
647EOF
648cat>$s/tcp<<'EOF'
363edfa3 649# sample line: 1.2.3.4:allow,AXFR="heaven.af.mil/3.2.1.in-addr.arpa"
650:deny
a4560ee0 651EOF
363edfa3 652
653##### daemontools symlinks #####
50f1c4d2 654install -d $RPM_BUILD_ROOT/service
655cd $RPM_BUILD_ROOT/service
656ln -s ..%{_sysconfdir}/dnscache
aaad6436 657ln -s ..%{_sysconfdir}/dnscachex
50f1c4d2 658ln -s ..%{_sysconfdir}/tinydns
659ln -s ..%{_sysconfdir}/pickdns
660ln -s ..%{_sysconfdir}/walldns
661ln -s ..%{_sysconfdir}/rbldns
662ln -s ..%{_sysconfdir}/axfrdns
363edfa3 663
37e173ce
JB
664%clean
665rm -rf $RPM_BUILD_ROOT
666
a0fc175b 667%pre
5aa5729c
ER
668%groupadd -g 32 -r -f djbdns
669%useradd -u 32 -r -d / -s /bin/false -c "djbdns User" -g djbdns dnslog
a0fc175b 670
671%postun
672if [ "$1" = "0" ]; then
bef00ef1 673 %userremove dnslog
674 %groupremove djbdns
a0fc175b 675fi
676
677%pre dnscache
5aa5729c 678%useradd -P %{name}-dnscache -u 33 -r -d /etc/dnscache -s /bin/false -c "djbdns User" -g djbdns dnscache
a0fc175b 679
37e173ce 680%post dnscache
845edd53
ER
681if [ ! -s %{_sysconfdir}/dnscache/seed ]; then
682 dd if=/dev/urandom of=%{_sysconfdir}/dnscache/seed bs=128c count=1
8c969dfe 683fi
845edd53 684if diff -u %{_sysconfdir}/{dnscache,pickdns}/env/IP >/dev/zero 2>&1;then
4e98c456 685 echo "Warning: dnscache and pickdns can't work on the same"
845edd53
ER
686 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
687 echo "or %{_sysconfdir}/pickdns/env/IP."
4e98c456 688fi
aaad6436
ER
689if diff -u %{_sysconfdir}/{dnscache,dnscachex}/env/IP >/dev/zero 2>&1;then
690 echo "Warning: dnscache and dnscachex can't work on the same"
691 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
692 echo "or %{_sysconfdir}/dnscachex/env/IP."
693fi
845edd53 694if diff -u %{_sysconfdir}/{dnscache,rbldns}/env/IP >/dev/zero 2>&1;then
4e98c456 695 echo "Warning: dnscache and rbldns can't work on the same"
845edd53
ER
696 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
697 echo "or %{_sysconfdir}/rbldns/env/IP."
4e98c456 698fi
845edd53 699if diff -u %{_sysconfdir}/{dnscache,tinydns}/env/IP >/dev/zero 2>&1;then
4e98c456 700 echo "Warning: dnscache and tinydns can't work on the same"
845edd53
ER
701 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
702 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 703fi
845edd53 704if diff -u %{_sysconfdir}/{dnscache,walldns}/env/IP >/dev/zero 2>&1;then
4e98c456 705 echo "Warning: dnscache and walldns can't work on the same"
845edd53
ER
706 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
707 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 708fi
709
49c7d515
ER
710if [ -f /service/dnscache/supervise/lock ]; then
711 svc -t /service/dnscache{,/log}
712fi
713
37e173ce 714%preun dnscache
4e98c456 715if [ "$1" = "0" ]; then
49c7d515
ER
716 # http://cr.yp.to/daemontools/faq/create.html#remove
717 if [ -f /service/dnscache/supervise/lock ]; then
718 cd /service/dnscache
719 rm /service/dnscache
720 svc -dx . log
721 fi
4e98c456 722fi
723
a0fc175b 724%postun dnscache
725if [ "$1" = "0" ]; then
bef00ef1 726 %userremove dnscache
a0fc175b 727fi
728
aaad6436
ER
729%post dnscachex
730if [ ! -s %{_sysconfdir}/dnscachex/seed ]; then
731 dd if=/dev/urandom of=%{_sysconfdir}/dnscachex/seed bs=128c count=1
732fi
733if diff -u %{_sysconfdir}/{dnscachex,dnscache}/env/IP >/dev/zero 2>&1;then
734 echo "Warning: dnscachex and dnscache can't work on the same"
735 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
736 echo "or %{_sysconfdir}/dnscache/env/IP."
737fi
738if diff -u %{_sysconfdir}/{dnscachex,pickdns}/env/IP >/dev/zero 2>&1;then
739 echo "Warning: dnscachex and pickdns can't work on the same"
740 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
741 echo "or %{_sysconfdir}/pickdns/env/IP."
742fi
743if diff -u %{_sysconfdir}/{dnscachex,rbldns}/env/IP >/dev/zero 2>&1;then
744 echo "Warning: dnscachex and rbldns can't work on the same"
745 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
746 echo "or %{_sysconfdir}/rbldns/env/IP."
747fi
748if diff -u %{_sysconfdir}/{dnscachex,tinydns}/env/IP >/dev/zero 2>&1;then
749 echo "Warning: dnscachex and tinydns can't work on the same"
750 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
751 echo "or %{_sysconfdir}/tinydns/env/IP."
752fi
753if diff -u %{_sysconfdir}/{dnscachex,walldns}/env/IP >/dev/zero 2>&1;then
754 echo "Warning: dnscachex and walldns can't work on the same"
755 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
756 echo "or %{_sysconfdir}/walldns/env/IP."
757fi
758
759if [ -f /service/dnscachex/supervise/lock ]; then
760 svc -t /service/dnscachex{,/log}
761fi
762
763%preun dnscachex
764if [ "$1" = "0" ]; then
765 # http://cr.yp.to/daemontools/faq/create.html#remove
766 if [ -f /service/dnscachex/supervise/lock ]; then
767 cd /service/dnscachex
768 rm /service/dnscachex
769 svc -dx . log
770 fi
771fi
772
a0fc175b 773%pre tinydns
5aa5729c 774%useradd -P %{name}-tinydns -u 34 -r -d /etc/tinydns -s /bin/false -c "djbdns User" -g djbdns tinydns
a0fc175b 775
37e173ce 776%post tinydns
845edd53 777if diff -u %{_sysconfdir}/{dnscache,tinydns}/env/IP >/dev/zero 2>&1;then
4e98c456 778 echo "Warning: dnscache and tinydns can't work on the same"
845edd53
ER
779 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
780 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 781fi
aaad6436
ER
782if diff -u %{_sysconfdir}/{dnscachex,tinydns}/env/IP >/dev/zero 2>&1;then
783 echo "Warning: dnscachex and tinydns can't work on the same"
784 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
785 echo "or %{_sysconfdir}/tinydns/env/IP."
786fi
845edd53 787if diff -u %{_sysconfdir}/{pick,tiny}dns/env/IP >/dev/zero 2>&1;then
4e98c456 788 echo "Warning: pickdns and tinydns can't work on the same"
845edd53
ER
789 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
790 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 791fi
845edd53 792if diff -u %{_sysconfdir}/{rbl,tiny}dns/env/IP >/dev/zero 2>&1;then
4e98c456 793 echo "Warning: rbldns and tinydns can't work on the same"
845edd53
ER
794 echo "IP address. You have to edit either %{_sysconfdir}/rbldns/env/IP"
795 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 796fi
845edd53 797if diff -u %{_sysconfdir}/{tiny,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 798 echo "Warning: tinydns and walldns can't work on the same"
845edd53
ER
799 echo "IP address. You have to edit either %{_sysconfdir}/tinydns/env/IP"
800 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 801fi
802
49c7d515
ER
803if [ -f /service/tinydns/supervise/lock ]; then
804 svc -t /service/tinydns{,/log}
805fi
806
37e173ce 807%preun tinydns
4e98c456 808if [ "$1" = "0" ]; then
49c7d515
ER
809 # http://cr.yp.to/daemontools/faq/create.html#remove
810 if [ -f /service/tinydns/supervise/lock ]; then
811 cd /service/tinydns
812 rm /service/tinydns
813 svc -dx . log
814 fi
4e98c456 815fi
816
a0fc175b 817%postun tinydns
818if [ "$1" = "0" ]; then
bef00ef1 819 %userremove tinydns
a0fc175b 820fi
821
822%pre pickdns
5aa5729c 823%useradd -P %{name}-pickdns -u 35 -r -d /etc/pickdns -s /bin/false -c "djbdns User" -g djbdns pickdns
a0fc175b 824
37e173ce 825%post pickdns
845edd53 826if diff -u %{_sysconfdir}/{dnscache,pickdns}/env/IP >/dev/zero 2>&1;then
4e98c456 827 echo "Warning: dnscache and pickdns can't work on the same"
845edd53
ER
828 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
829 echo "or %{_sysconfdir}/pickdns/env/IP."
4e98c456 830fi
aaad6436
ER
831if diff -u %{_sysconfdir}/{dnscachex,pickdns}/env/IP >/dev/zero 2>&1;then
832 echo "Warning: dnscachex and pickdns can't work on the same"
833 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
834 echo "or %{_sysconfdir}/pickdns/env/IP."
835fi
845edd53 836if diff -u %{_sysconfdir}/{pick,rbl}dns/env/IP >/dev/zero 2>&1;then
4e98c456 837 echo "Warning: pickdns and rbldns can't work on the same"
845edd53
ER
838 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
839 echo "or %{_sysconfdir}/rbldns/env/IP."
4e98c456 840fi
845edd53 841if diff -u %{_sysconfdir}/{pick,tiny}dns/env/IP >/dev/zero 2>&1;then
4e98c456 842 echo "Warning: pickdns and tinydns can't work on the same"
845edd53
ER
843 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
844 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 845fi
845edd53 846if diff -u %{_sysconfdir}/{pick,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 847 echo "Warning: pickdns and walldns can't work on the same"
845edd53
ER
848 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
849 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 850fi
851
49c7d515
ER
852if [ -f /service/pickdns/supervise/lock ]; then
853 svc -t /service/pickdns{,/log}
854fi
855
37e173ce 856%preun pickdns
4e98c456 857if [ "$1" = "0" ]; then
49c7d515
ER
858 # http://cr.yp.to/daemontools/faq/create.html#remove
859 if [ -f /service/pickdns/supervise/lock ]; then
860 cd /service/pickdns
861 rm /service/pickdns
862 svc -dx . log
863 fi
4e98c456 864fi
865
a0fc175b 866%postun pickdns
867if [ "$1" = "0" ]; then
bef00ef1 868 %userremove pickdns
a0fc175b 869fi
870
871%pre walldns
5aa5729c 872%useradd -P %{name}-walldns -u 36 -r -d /etc/walldns -s /bin/false -c "djbdns User" -g djbdns walldns
a0fc175b 873
37e173ce 874%post walldns
845edd53 875if diff -u %{_sysconfdir}/{dnscache,walldns}/env/IP >/dev/zero 2>&1;then
4e98c456 876 echo "Warning: dnscache and walldns can't work on the same"
845edd53
ER
877 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
878 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 879fi
aaad6436
ER
880if diff -u %{_sysconfdir}/{dnscachex,walldns}/env/IP >/dev/zero 2>&1;then
881 echo "Warning: dnscachex and walldns can't work on the same"
882 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
883 echo "or %{_sysconfdir}/walldns/env/IP."
884fi
845edd53 885if diff -u %{_sysconfdir}/{pick,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 886 echo "Warning: pickdns and walldns can't work on the same"
845edd53
ER
887 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
888 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 889fi
845edd53 890if diff -u %{_sysconfdir}/{rbl,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 891 echo "Warning: rbldns and walldns can't work on the same"
845edd53
ER
892 echo "IP address. You have to edit either %{_sysconfdir}/rbldns/env/IP"
893 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 894fi
845edd53 895if diff -u %{_sysconfdir}/{tiny,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 896 echo "Warning: tinydns and walldns can't work on the same"
845edd53
ER
897 echo "IP address. You have to edit either %{_sysconfdir}/tinydns/env/IP"
898 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 899fi
900
49c7d515
ER
901if [ -f /service/walldns/supervise/lock ]; then
902 svc -t /service/walldns{,/log}
903fi
904
37e173ce 905%preun walldns
4e98c456 906if [ "$1" = "0" ]; then
49c7d515
ER
907 # http://cr.yp.to/daemontools/faq/create.html#remove
908 if [ -f /service/walldns/supervise/lock ]; then
909 cd /service/walldns
910 rm /service/walldns
911 svc -dx . log
912 fi
4e98c456 913fi
914
a0fc175b 915%postun walldns
916if [ "$1" = "0" ]; then
bef00ef1 917 %userremove walldns
a0fc175b 918fi
919
920%pre rbldns
5aa5729c 921%useradd -P %{name}-rbldns -u 37 -r -d /etc/rbldns -s /bin/false -c "djbdns User" -g djbdns rbldns
a0fc175b 922
37e173ce 923%post rbldns
845edd53 924if diff -u %{_sysconfdir}/{dnscache,rbldns}/env/IP >/dev/zero 2>&1;then
4e98c456 925 echo "Warning: dnscache and rbldns can't work on the same"
845edd53
ER
926 echo "IP address. You have to edit either %{_sysconfdir}/dnscache/env/IP"
927 echo "or %{_sysconfdir}/rbldns/env/IP."
4e98c456 928fi
aaad6436
ER
929if diff -u %{_sysconfdir}/{dnscachex,rbldns}/env/IP >/dev/zero 2>&1;then
930 echo "Warning: dnscachex and rbldns can't work on the same"
931 echo "IP address. You have to edit either %{_sysconfdir}/dnscachex/env/IP"
932 echo "or %{_sysconfdir}/rbldns/env/IP."
933fi
845edd53 934if diff -u %{_sysconfdir}/{pick,rbl}dns/env/IP >/dev/zero 2>&1;then
4e98c456 935 echo "Warning: pickdns and rbldns can't work on the same"
845edd53
ER
936 echo "IP address. You have to edit either %{_sysconfdir}/pickdns/env/IP"
937 echo "or %{_sysconfdir}/rbldns/env/IP."
4e98c456 938fi
845edd53 939if diff -u %{_sysconfdir}/{rbl,tiny}dns/env/IP >/dev/zero 2>&1;then
4e98c456 940 echo "Warning: rbldns and tinydns can't work on the same"
845edd53
ER
941 echo "IP address. You have to edit either %{_sysconfdir}/rbldns/env/IP"
942 echo "or %{_sysconfdir}/tinydns/env/IP."
4e98c456 943fi
845edd53 944if diff -u %{_sysconfdir}/{rbl,wall}dns/env/IP >/dev/zero 2>&1;then
4e98c456 945 echo "Warning: rbldns and walldns can't work on the same"
845edd53
ER
946 echo "IP address. You have to edit either %{_sysconfdir}/rbldns/env/IP"
947 echo "or %{_sysconfdir}/walldns/env/IP."
4e98c456 948fi
949
49c7d515
ER
950if [ -f /service/rbldns/supervise/lock ]; then
951 svc -t /service/rbldns{,/log}
952fi
953
37e173ce 954%preun rbldns
4e98c456 955if [ "$1" = "0" ]; then
49c7d515
ER
956 # http://cr.yp.to/daemontools/faq/create.html#remove
957 if [ -f /service/rbldns/supervise/lock ]; then
958 cd /service/rbldns
959 rm /service/rbldns
960 svc -dx . log
961 fi
4e98c456 962fi
963
a0fc175b 964%postun rbldns
965if [ "$1" = "0" ]; then
bef00ef1 966 %userremove rbldns
a0fc175b 967fi
968
969%pre axfrdns
5aa5729c 970%useradd -P %{name}-axfrdns -u 38 -r -d /etc/axfrdns -s /bin/false -c "djbdns User" -g djbdns axfrdns
a0fc175b 971
37e173ce 972%preun axfrdns
4e98c456 973if [ "$1" = "0" ]; then
49c7d515
ER
974 # http://cr.yp.to/daemontools/faq/create.html#remove
975 if [ -f /service/axfrdns/supervise/lock ]; then
976 cd /service/axfrdns
977 rm /service/axfrdns
978 svc -dx . log
979 fi
4e98c456 980fi
981
a0fc175b 982%postun axfrdns
983if [ "$1" = "0" ]; then
bef00ef1 984 %userremove axfrdns
a0fc175b 985fi
986
c3bfacc7 987%files
988%defattr(644,root,root,755)
37e173ce 989%doc CHANGES TODO MULTIPLEIP TINYDNS doc/*
363edfa3 990%attr(755,root,root) %{_bindir}/cachetest
991%attr(755,root,root) %{_bindir}/dns[f-t]*
ea210265 992%attr(755,root,root) %{_bindir}/axfr-get
b4c80007 993%{_mandir}/man[15]/*
994%{_mandir}/man8/axfr-get*
49c7d515 995%dir %attr(751,root,root) %dir /var/log/djbdns
363edfa3 996
37e173ce 997%files dnscache
363edfa3 998%defattr(644,root,root,755)
999%attr(755,root,root) %{_bindir}/dnscache*
d0c89c47 1000%config %{_sysconfdir}/dnsroots.global
49c7d515
ER
1001%dir %attr(1755,root,root) %{_sysconfdir}/dnscache
1002%attr(700,root,root) %dir %{_sysconfdir}/dnscache/supervise
1003%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/dnscache/supervise/*
1004
1005%dir %attr(1755,root,root) %{_sysconfdir}/dnscache/log
90512735 1006%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dnscache/log/run
49c7d515
ER
1007%attr(700,root,root) %dir %{_sysconfdir}/dnscache/log/supervise
1008%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/dnscache/log/supervise/*
1009%attr(751,dnslog,djbdns) %dir /var/log/djbdns/dnscache
1010%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/dnscache/lock
1011%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/dnscache/state
1012
363edfa3 1013%dir %attr(2755,root,root) %{_sysconfdir}/dnscache/env
d0c89c47 1014%config %{_sysconfdir}/dnscache/env/*
363edfa3 1015%attr(755,root,root) %{_sysconfdir}/dnscache/run
55a8e62f
ER
1016%dir %{_sysconfdir}/dnscache/root
1017%dir %{_sysconfdir}/dnscache/root/ip
1018%dir %{_sysconfdir}/dnscache/root/servers
363edfa3 1019%config %attr(600,root,root) %{_sysconfdir}/dnscache/root/ip/*
d0c89c47 1020%config %{_sysconfdir}/dnscache/root/servers/*
54ef37b4 1021%attr(600,root,root) %ghost %{_sysconfdir}/dnscache/seed
b4c80007 1022%{_mandir}/man8/dnscache*
50f1c4d2 1023/service/dnscache
363edfa3 1024
aaad6436
ER
1025%files dnscachex
1026%defattr(644,root,root,755)
1027%dir %attr(1755,root,root) %{_sysconfdir}/dnscachex
1028%attr(700,root,root) %dir %{_sysconfdir}/dnscachex/supervise
1029%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/dnscachex/supervise/*
1030
1031%dir %attr(1755,root,root) %{_sysconfdir}/dnscachex/log
1032%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dnscachex/log/run
1033%attr(700,root,root) %dir %{_sysconfdir}/dnscachex/log/supervise
1034%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/dnscachex/log/supervise/*
1035%attr(751,dnslog,djbdns) %dir /var/log/djbdns/dnscachex
1036%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/dnscachex/lock
1037%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/dnscachex/state
1038
1039%dir %attr(2755,root,root) %{_sysconfdir}/dnscachex/env
1040%config %{_sysconfdir}/dnscachex/env/*
1041%attr(755,root,root) %{_sysconfdir}/dnscachex/run
1042%dir %{_sysconfdir}/dnscachex/root
1043%dir %{_sysconfdir}/dnscachex/root/ip
1044%dir %{_sysconfdir}/dnscachex/root/servers
1045%config %attr(600,root,root) %{_sysconfdir}/dnscachex/root/ip/*
1046%config %{_sysconfdir}/dnscachex/root/servers/*
54ef37b4 1047%attr(600,root,root) %ghost %{_sysconfdir}/dnscachex/seed
aaad6436
ER
1048/service/dnscachex
1049
37e173ce 1050%files tinydns
363edfa3 1051%defattr(644,root,root,755)
1052%attr(755,root,root) %{_bindir}/tinydns*
1053%dir %attr(3755,root,root) %{_sysconfdir}/tinydns
49c7d515
ER
1054%attr(700,root,root) %dir %{_sysconfdir}/tinydns/supervise
1055%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/tinydns/supervise/*
1056
90512735 1057%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tinydns/log/run
49c7d515
ER
1058%dir %attr(1755,root,root) %{_sysconfdir}/tinydns/log
1059%attr(700,root,root) %dir %{_sysconfdir}/tinydns/log/supervise
1060%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/tinydns/log/supervise/*
1061%attr(751,dnslog,djbdns) %dir /var/log/djbdns/tinydns
1062%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/tinydns/lock
1063%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/tinydns/state
1064
363edfa3 1065%dir %attr(2755,root,root) %{_sysconfdir}/tinydns/env
d0c89c47 1066%config %{_sysconfdir}/tinydns/env/*
363edfa3 1067%attr(755,root,root) %{_sysconfdir}/tinydns/run
1068%dir %attr(2755,root,root) %{_sysconfdir}/tinydns/root
d0c89c47
ER
1069%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/tinydns/root/Makefile
1070%config %{_sysconfdir}/tinydns/root/data
363edfa3 1071%attr(755,root,root) %{_sysconfdir}/tinydns/root/add-*
b4c80007 1072%{_mandir}/man8/tinydns*
50f1c4d2 1073/service/tinydns
363edfa3 1074
fb47ae15 1075%files tinydns-notify
1076%defattr(644,root,root,755)
1077%attr(755,root,root) %{_bindir}/tinydns-notify
1078
37e173ce 1079%files pickdns
363edfa3 1080%defattr(644,root,root,755)
1081%attr(755,root,root) %{_bindir}/pickdns*
1082%dir %attr(3755,root,root) %{_sysconfdir}/pickdns
49c7d515
ER
1083%attr(700,root,root) %dir %{_sysconfdir}/pickdns/supervise
1084%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/pickdns/supervise/*
1085
90512735 1086%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pickdns/log/run
49c7d515
ER
1087%dir %attr(1755,root,root) %{_sysconfdir}/pickdns/log
1088%attr(700,root,root) %dir %{_sysconfdir}/pickdns/log/supervise
1089%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/pickdns/log/supervise/*
1090%attr(751,dnslog,djbdns) %dir /var/log/djbdns/pickdns
1091%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/pickdns/lock
1092%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/pickdns/state
1093
363edfa3 1094%dir %attr(2755,root,root) %{_sysconfdir}/pickdns/env
d0c89c47 1095%config %{_sysconfdir}/pickdns/env/*
363edfa3 1096%attr(755,root,root) %{_sysconfdir}/pickdns/run
1097%dir %attr(2755,root,root) %{_sysconfdir}/pickdns/root
d0c89c47
ER
1098%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pickdns/root/Makefile
1099%config %{_sysconfdir}/pickdns/root/data
b4c80007 1100%{_mandir}/man8/pickdns*
50f1c4d2 1101/service/pickdns
363edfa3 1102
37e173ce 1103%files walldns
363edfa3 1104%defattr(644,root,root,755)
1105%attr(755,root,root) %{_bindir}/walldns*
1106%dir %attr(3755,root,root) %{_sysconfdir}/walldns
49c7d515
ER
1107%attr(700,root,root) %dir %{_sysconfdir}/walldns/supervise
1108%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/walldns/supervise/*
1109
90512735 1110%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/walldns/log/run
49c7d515
ER
1111%dir %attr(1755,root,root) %{_sysconfdir}/walldns/log
1112%attr(700,root,root) %dir %{_sysconfdir}/walldns/log/supervise
1113%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/walldns/log/supervise/*
1114%attr(751,dnslog,djbdns) %dir /var/log/djbdns/walldns
1115%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/walldns/lock
1116%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/walldns/state
1117
363edfa3 1118%dir %attr(2755,root,root) %{_sysconfdir}/walldns/env
d0c89c47 1119%config %{_sysconfdir}/walldns/env/*
363edfa3 1120%attr(755,root,root) %{_sysconfdir}/walldns/run
1121%dir %attr(2755,root,root) %{_sysconfdir}/walldns/root
b4c80007 1122%{_mandir}/man8/walldns*
50f1c4d2 1123/service/walldns
363edfa3 1124
37e173ce 1125%files rbldns
363edfa3 1126%defattr(644,root,root,755)
1127%attr(755,root,root) %{_bindir}/rbldns*
1128%dir %attr(3755,root,root) %{_sysconfdir}/rbldns
49c7d515
ER
1129%attr(700,root,root) %dir %{_sysconfdir}/rbldns/supervise
1130%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/rbldns/supervise/*
1131
90512735 1132%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rbldns/log/run
49c7d515
ER
1133%dir %attr(1755,root,root) %{_sysconfdir}/rbldns/log
1134%attr(700,root,root) %dir %{_sysconfdir}/rbldns/log/supervise
1135%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/rbldns/log/supervise/*
1136%attr(751,dnslog,djbdns) %dir /var/log/djbdns/rbldns
1137%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/rbldns/lock
1138%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/rbldns/state
1139
363edfa3 1140%dir %attr(2755,root,root) %{_sysconfdir}/rbldns/env
d0c89c47 1141%config %{_sysconfdir}/rbldns/env/*
363edfa3 1142%attr(755,root,root) %{_sysconfdir}/rbldns/run
1143%dir %attr(2755,root,root) %{_sysconfdir}/rbldns/root
d0c89c47
ER
1144%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rbldns/root/Makefile
1145%config %{_sysconfdir}/rbldns/root/data
b4c80007 1146%{_mandir}/man8/rbldns*
50f1c4d2 1147/service/rbldns
363edfa3 1148
37e173ce 1149%files axfrdns
363edfa3 1150%defattr(644,root,root,755)
1151%attr(755,root,root) %{_bindir}/axfrdns*
1152%dir %attr(3755,root,root) %{_sysconfdir}/axfrdns
49c7d515
ER
1153%attr(700,root,root) %dir %{_sysconfdir}/axfrdns/supervise
1154%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/axfrdns/supervise/*
1155
90512735 1156%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/axfrdns/log/run
49c7d515
ER
1157%dir %attr(1755,root,root) %{_sysconfdir}/axfrdns/log
1158%attr(700,root,root) %dir %{_sysconfdir}/axfrdns/log/supervise
1159%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/axfrdns/log/supervise/*
1160%attr(751,dnslog,djbdns) %dir /var/log/djbdns/axfrdns
1161%attr(600,dnslog,djbdns) %ghost /var/log/djbdns/axfrdns/lock
1162%attr(640,dnslog,djbdns) %ghost /var/log/djbdns/axfrdns/state
1163
363edfa3 1164%dir %attr(2755,root,root) %{_sysconfdir}/axfrdns/env
d0c89c47 1165%config %{_sysconfdir}/axfrdns/env/*
363edfa3 1166%attr(755,root,root) %{_sysconfdir}/axfrdns/run
d0c89c47
ER
1167%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/axfrdns/Makefile
1168%config %{_sysconfdir}/axfrdns/tcp
b4c80007 1169%{_mandir}/man8/axfrdns*
50f1c4d2 1170/service/axfrdns
This page took 0.204431 seconds and 4 git commands to generate.