]> git.pld-linux.org Git - packages/bind.git/commitdiff
- release 17
authorJan Rękorajski <baggins@pld-linux.org>
Tue, 15 Aug 2000 15:07:29 +0000 (15:07 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- added chroot package
- chown -R named.named /var/lib/named

Changed files:
    bind.spec -> 1.62

bind.spec

index 60bb613e9bd788688908c855cab621547b7746e4..eab08cad4b67a610672cc7ec3f6297a262f8159b 100644 (file)
--- a/bind.spec
+++ b/bind.spec
@@ -5,7 +5,7 @@ Summary(pl):    BIND - serwer nazw DNS
 Summary(tr):   DNS alan adý sunucusu
 Name:          bind
 Version:       8.2.2_P5
-Release:       16
+Release:       17
 Copyright:     distributable
 Group:         Networking/Daemons
 Group(pl):     Sieciowe/Serwery
@@ -16,6 +16,8 @@ Source3:      named.init
 Source4:       named.sysconfig
 Source5:       named.logrotate
 Source6:       named.conf
+Source7:       named-chroot.init
+Source8:       ftp://ftp.obtuse.com/pub/utils/utils-1.0.tar.gz
 Patch1:                bind-pselect.patch
 Patch2:                bind-fds.patch
 Patch3:                bind-nonlist.patch
@@ -27,15 +29,19 @@ Patch8:             bind-host-forcetype.patch
 Patch9:                bind-pidfile.patch
 Patch10:       bind-ttl.patch
 Patch11:       ftp://ftp.6bone.pl/pub/ipv6/set-glibc-2.1.new/host_991529+.diff
+Patch12:       bind-res_randomid.patch
+Patch20:       utils-holelogd-linux.patch
+Patch21:       bind-chroot-ndc.patch
 BuildRequires: flex
 Prereq:                /sbin/chkconfig
 Requires:      rc-scripts >= 0.2.0
 Obsoletes:     caching-nameserver
+Conflicts:     %{name}-chroot
 URL:           http://www.isc.org/bind.html
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _datadir        %{_prefix}/share/misc
 %define                _sysconfdir     /etc
+%define                _chroot         /var/lib/named/chroot
 
 %description
 BIND (Berkeley Internet Name Domain) is an implementation of the DNS
@@ -78,6 +84,64 @@ kullan
 isim sunucusu olarak da kullanýlabilir ama genellikle bütün bir að
 için sadece bir makina üzerinde kurulur.
 
+%package chroot
+Summary:       BIND - DNS name server
+Summary(de):   BIND - DNS-Namenserver  
+Summary(fr):   BIND - serveur de noms DNS
+Summary(pl):   BIND - serwer nazw DNS
+Summary(tr):   DNS alan adý sunucusu
+Group:         Networking/Daemons
+Group(pl):     Sieciowe/Serwery
+Prereq:                /sbin/chkconfig
+Requires:      rc-scripts >= 0.2.0
+Obsoletes:     caching-nameserver
+Conflicts:     %{name}
+URL:           http://www.isc.org/bind.html
+
+%description chroot
+BIND (Berkeley Internet Name Domain) is an implementation of the DNS
+(Domain Name System) protocols. BIND includes a DNS server (named),
+which resolves host names to IP addresses, and a resolver library
+(routines for applications to use when interfacing with DNS). A DNS
+server allows clients to name resources or objects and share the
+information with other network machines. The named DNS server can be
+used on workstations as a caching name server, but is generally only
+needed on one machine for an entire network. Note that the
+configuration files for making BIND act as a simple caching nameserver
+are included in the caching-nameserver package.
+
+Install the bind package if you need a DNS server for your network. If
+you want bind to act a caching name server, you will also need to
+install the caching-nameserver package.
+
+The bind-chroot package runs the DNS server daemon under the non-root
+user and group and in the chroot()ed directory.
+
+%description -l de chroot
+Enthält den Namen-Server, der zum Umwandeln von Host-Namen in
+IP-Adressen und umgekehrt verwendet wird. Er kann auf Workstations als
+caching Namen-Server verwendet werden, ist aber i.d.R. nur auf einem
+Recher des Netzwerks erforderlich.
+
+%description -l fr chroot
+Contient le serveur de noms named, utilisé pour définir les
+traductions nom d'hôte vers adresse IP (et vice versa). Il peut être
+utilisé sur les stations de travail comme serveur de nom en cache mais
+n'est souvent nécessaire que sur une machine pour un réseau entier.
+
+%description -l pl chroot
+Pakiet ten zawiera demona named, który s³u¿y do zmieniania nazw
+komputerów na numery IP i odwrotnie. Mo¿e byæ on u¿ywany na stacjach
+roboczych jako bufor odwo³añ do serwisu nazw (caching name server),
+ale generalnie wystarczy tylko jedna jednostka wyposa¿ona w ten
+program na fragment sieci.
+
+%description -l tr chroot
+Bu paket, makina adýný IP numarasýna (ya da tersi) çevirmek için
+kullanýlan alan adý sunucusunu içerir. Ýþ istasyonlarýnda bir önbellek
+isim sunucusu olarak da kullanýlabilir ama genellikle bütün bir að
+için sadece bir makina üzerinde kurulur.
+
 %package utils
 Summary:       DNS utils - host, dig, dnsquery, nslookup
 Summary(de):   DNS-Utils - Host, Dig, Dnsquery, Nslookup 
@@ -152,7 +216,7 @@ Bind documentations
 Dokumentacja programu bind
 
 %prep
-%setup -q -c -n %{name}-%{version} -a 1 -a 2
+%setup -q -c -n %{name}-%{version} -a 1 -a 2 -a 8
 
 %patch1 -p0
 %patch2 -p1
@@ -164,6 +228,8 @@ Dokumentacja programu bind
 %patch8 -p0
 %patch9 -p1
 %patch10 -p1
+%patch12 -p1
+%patch20 -p1
 cd contrib/host
 %patch11 -p1
 
@@ -178,20 +244,86 @@ cd src
        DESTBIN="%{_bindir}" \
        DESTSBIN="%{_sbindir}" \
        DESTMAN="%{_mandir}" \
-       DESTHELP="%{_datadir}" \
+       DESTHELP="%{_datadir}/misc" \
        DESTETC="%{_sysconfdir}" \
        DESTRUN="/var/run"
 cd ..
 cd contrib/host
 %{__make}
 
+# Now build stuff for chroot
+cd ../..
+mv src/bin/named/named src/bin/named/named.dynamic
+mv src/bin/named-xfer/named-xfer src/bin/named-xfer/named-xfer.dynamic
+mv src/bin/ndc/ndc src/bin/ndc/ndc.nonc
+
+patch -p1 < %{PATCH21}
+
+eval "make -C src/bin/named named \
+       'DESTDIR=' \
+       'CDEBUG=$RPM_OPT_FLAGS' \
+       'DESTBIN=%{_bindir}' \
+       'DESTSBIN=%{_sbindir}' \
+       'DESTMAN=%{_mandir}' \
+       'DESTHELP=%{_datadir}/misc' \
+       'DESTETC=%{_sysconfdir}' \
+       'DESTRUN=%{_chroot}/var/run' \
+       'LDFLAGS=-static -s' \
+       'SYSTYPE=linux' \
+       `sh ./src/port/settings ./src/.settings < ./src/port/linux/Makefile.set` \
+       VER=`cat ./src/Version`"
+
+eval "make -C src/bin/named-xfer named-xfer \
+       'DESTDIR=' \
+       'CDEBUG=$RPM_OPT_FLAGS' \
+       'DESTBIN=%{_bindir}' \
+       'DESTSBIN=%{_sbindir}' \
+       'DESTMAN=%{_mandir}' \
+       'DESTHELP=%{_datadir}/misc' \
+       'DESTETC=%{_sysconfdir}' \
+       'DESTRUN=%{_chroot}/var/run' \
+       'LDFLAGS=-static -s' \
+       'SYSTYPE=linux' \
+       `sh ./src/port/settings ./src/.settings < ./src/port/linux/Makefile.set` \
+       VER=`cat ./src/Version`"
+
+eval "make -C src/bin/ndc ndc \
+       'DESTDIR=' \
+       'CDEBUG=$RPM_OPT_FLAGS' \
+       'DESTBIN=%{_bindir}' \
+       'DESTSBIN=%{_sbindir}' \
+       'DESTMAN=%{_mandir}' \
+       'DESTHELP=%{_datadir}/misc' \
+       'DESTETC=%{_sysconfdir}' \
+       'DESTRUN=%{_chroot}/var/run' \
+       'LDFLAGS=-s' \
+       'SYSTYPE=linux' \
+       `sh ./src/port/settings ./src/.settings < ./src/port/linux/Makefile.set` \
+       VER=`cat ./src/Version`"
+
+patch -p1 -R < %{PATCH21}
+
+mv src/bin/named/named src/bin/named/named.static
+mv src/bin/named-xfer/named-xfer src/bin/named-xfer/named-xfer.static
+mv src/bin/ndc/ndc src/bin/ndc/ndc.chroot
+
+mv src/bin/named/named.dynamic src/bin/named/named
+mv src/bin/named-xfer/named-xfer.dynamic src/bin/named-xfer/named-xfer
+mv src/bin/ndc/ndc.nonc src/bin/ndc/ndc
+
+cd utils-1.0
+gcc -s $RPM_OPT_FLAGS -o holelogd holelogd.c
+
 %install
 rm -rf $RPM_BUILD_ROOT
 
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_datadir}} \
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_datadir}/misc} \
        $RPM_BUILD_ROOT/etc/{sysconfig,logrotate.d,rc.d/init.d} \
        $RPM_BUILD_ROOT%{_mandir}/man{1,3,5,7,8}
 
+install -d $RPM_BUILD_ROOT%{_chroot}/{%{_sbindir},%{_datadir}/zoneinfo} \
+       $RPM_BUILD_ROOT%{_chroot}/{etc,dev,var/{tmp,run,log,lib/named/{M,S}}}
+
 cd src
 %{__make} install \
        DESTDIR="$RPM_BUILD_ROOT" \
@@ -200,13 +332,12 @@ cd src
         DESTBIN="%{_bindir}" \
         DESTSBIN="%{_sbindir}" \
         DESTMAN="%{_mandir}" \
-        DESTHELP="%{_datadir}" \
+        DESTHELP="%{_datadir}/misc" \
         DESTETC="%{_sysconfdir}" \
         DESTRUN="/var/run" \
        INSTALL_LIB=" " \
        INSTALL_EXEC=" "
 
-strip $RPM_BUILD_ROOT{%{_sbin}/*,%{_bindir}/*} || :
 cd ..
 
 cd doc/man
@@ -230,7 +361,32 @@ install contrib/host/host $RPM_BUILD_ROOT%{_bindir}/host6
 
 cp src/bin/named/named.conf EXAMPLE-CONFIG
 
+# Now chroot install
+# This will be log daemon for our jail alone so we can easily start and
+# stop it if there are others for other jails.
+install utils-1.0/holelogd $RPM_BUILD_ROOT%{_sbindir}/holelogd.named
+mv utils-1.0/LICENSE LICENSE.holelogd
+mv utils-1.0/README README.holelogd
+
+install src/bin/named/named.static $RPM_BUILD_ROOT%{_chroot}%{_sbindir}/named
+install src/bin/named-xfer/named-xfer.static $RPM_BUILD_ROOT%{_chroot}%{_sbindir}/named-xfer
+install src/bin/ndc/ndc.chroot $RPM_BUILD_ROOT%{_sbindir}
+
+install src/bin/named/test/127.* $RPM_BUILD_ROOT%{_chroot}/var/lib/named/M
+install src/bin/named/test/loca* $RPM_BUILD_ROOT%{_chroot}/var/lib/named/M
+install src/conf/workstation/root.* $RPM_BUILD_ROOT%{_chroot}/var/lib/named/root.hint
+install %{SOURCE6} $RPM_BUILD_ROOT%{_chroot}%{_sysconfdir}
+
+ln -sf ../../../etc/localtime $RPM_BUILD_ROOT%{_chroot}%{_datadir}/zoneinfo/localtime
+ln -sf localtime $RPM_BUILD_ROOT%{_chroot}%{_datadir}/zoneinfo/posixrules
+ln -sf localtime $RPM_BUILD_ROOT%{_chroot}%{_datadir}/zoneinfo/posixtime
+
+touch $RPM_BUILD_ROOT%{_chroot}/etc/{localtime,group}
+touch $RPM_BUILD_ROOT%{_chroot}/dev/{log,null}
+# ...continue
+
 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/named
+install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/named-chroot
 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/named
 install %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/named
 touch $RPM_BUILD_ROOT/var/log/named
@@ -239,8 +395,12 @@ mv $RPM_BUILD_ROOT%{_bindir}/nsupdate $RPM_BUILD_ROOT%{_sbindir}
 rm -f $RPM_BUILD_ROOT%{_bindir}/mkservdb \
        $RPM_BUILD_ROOT%{_mandir}/man5/resolver.5
 
+strip $RPM_BUILD_ROOT{%{_sbindir}/*,%{_bindir}/*} || :
+strip $RPM_BUILD_ROOT%{_chroot}%{_sbindir}/*
+
 gzip -9nf $RPM_BUILD_ROOT%{_mandir}/man[13578]/* \
-       src/README src/Version src/CHANGES EXAMPLE-CONFIG 
+       src/README src/Version src/CHANGES EXAMPLE-CONFIG \
+       *.holelogd
 
 %pre
 if [ -f /etc/named.boot ]; then
@@ -270,9 +430,9 @@ if [ -f /etc/named.boot.2conf ]; then
        rm /etc/named.boot.2conf
 fi
 
-umask 137
+umask 117
 /bin/touch /var/log/named
-chown root.named /var/log/named
+chown named.named /var/log/named
 
 %preun
 if [ "$1" = "0" ]; then
@@ -289,8 +449,67 @@ if [ "$1" = "0" ]; then
        %{_bindir}/update-db
 fi
 
+%pre chroot
+if [ -f /etc/named.boot ]; then
+       cp /etc/named.boot /etc/named.boot.2conf
+       mv -f /etc/named.boot /etc/named.rpmsave
+       echo "Warrnig: /etc/named.boot saved as /etc/named.rpmsave" 1>&2
+fi
+if ! id -g named > /dev/null 2>&1 ; then
+       %{_sbindir}/groupadd -g 58 named
+fi
+if ! id -u named > /dev/null 2>&1 ; then
+       %{_sbindir}/useradd -u 58 -g 58 -d /dev/null -s /bin/false -c "BIND user" named
+fi
+%{_bindir}/update-db
+
+%post chroot
+ln -sf named-chroot /etc/rc.d/init.d/named
+/sbin/chkconfig --add named
+
+if [ -f /var/lock/subsys/named ]; then
+       /etc/rc.d/init.d/named restart 1>&2
+else
+       echo "Type \"/etc/rc.d/init.d/named start\" to start named" 1>&2
+fi
+
+if [ -f /etc/named.boot.2conf ]; then
+       /usr/sbin/named-bootconf </etc/named.boot.2conf >%{_chroot}/etc/named.conf
+       rm /etc/named.boot.2conf
+fi
+
+mknod -m a+rw %{_chroot}/dev/null c 1 3
+cp -rf /etc/localtime %{_chroot}/etc/localtime
+grep "^named:" /etc/group > %{_chroot}/etc/group
+ln -sf %{_chroot}/etc/named.conf /etc/named.conf
+
+cd /var/lib/named
+ln -s chroot/var/lib/named/* .
+
+umask 117
+/bin/touch /var/log/named
+chown named.named /var/log/named
+
+%preun chroot
+if [ "$1" = "0" ]; then
+       for i in /var/lib/named/{M,S,root.hint}; do
+               [ -L $i ] && rm -f $i
+       done
+       if [ -f /var/lock/subsys/named ]; then
+               /etc/rc.d/init.d/named stop 1>&2
+       fi
+       /sbin/chkconfig --del named
+fi    
+
+%postun chroot
+if [ "$1" = "0" ]; then
+       %{_sbindir}/userdel named
+       %{_sbindir}/groupdel named
+       %{_bindir}/update-db
+fi
+
 %clean
-rm -rf $RPM_BUILD_ROOT
+#rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
@@ -301,7 +520,11 @@ rm -rf $RPM_BUILD_ROOT
 %attr(640,root,named) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/named.conf
 %attr(640,root,root) %config %verify(not size mtime md5) /etc/logrotate.d/named
 
-%attr(755,root,root) %{_sbindir}/*
+%attr(755,root,root) %{_sbindir}/dnskeygen
+%attr(755,root,root) %{_sbindir}/irpd
+%attr(755,root,root) %{_sbindir}/named*
+%attr(755,root,root) %{_sbindir}/ndc
+%attr(755,root,root) %{_sbindir}/nsupdate
 
 %{_mandir}/man8/named.8*
 %{_mandir}/man8/ndc.8*
@@ -320,13 +543,72 @@ rm -rf $RPM_BUILD_ROOT
 /var/lib/named/M/*
 /var/lib/named/root.*
 
-%attr(660,root,named) %ghost /var/log/named
+%attr(660,named,named) %ghost /var/log/named
+
+%files chroot
+%defattr(644,root,root,755)
+%doc {src/README,src/Version,src/CHANGES,EXAMPLE-CONFIG}.gz
+%doc *.holelogd.gz
+
+%ghost %attr(754,root,root) /etc/rc.d/init.d/named
+%attr(754,root,root) /etc/rc.d/init.d/named-chroot
+%attr(640,root,root) %config %verify(not size mtime md5) /etc/logrotate.d/named
+%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/named
+%attr(640,root,root) %ghost %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/named.conf
+%attr(640,root,named) %config(noreplace) %verify(not size mtime md5) %{_chroot}/etc/named.conf
+
+%attr(755,root,root) %{_sbindir}/dnskeygen
+%attr(755,root,root) %{_sbindir}/holelogd.named
+%attr(755,root,root) %{_sbindir}/irpd
+%attr(755,root,root) %{_sbindir}/named-bootconf
+%attr(755,root,root) %{_sbindir}/ndc.chroot
+%attr(755,root,root) %{_sbindir}/nsupdate
+
+%{_mandir}/man8/named.8*
+%{_mandir}/man8/ndc.8*
+%{_mandir}/man8/named-xfer.8*
+%{_mandir}/man8/named-bootconf.8*
+%{_mandir}/man7/hostname.7*
+%{_mandir}/man5/irs.conf.5*
+%{_mandir}/man5/named.conf.5*
+%{_mandir}/man1/dnskeygen.1*
+%{_mandir}/man8/nsupdate.8*
+
+%attr(660,named,named) %ghost /var/log/named
+
+%attr(770,named,named) %dir /var/lib/named
+%attr(770,named,named) %dir %{_chroot}
+%attr(770,named,named) %dir %{_chroot}/etc
+%attr(770,named,named) %dir %{_chroot}/dev
+%attr(770,named,named) %dir %{_chroot}/usr
+%attr(770,named,named) %dir %{_chroot}/usr/sbin
+%attr(770,named,named) %dir %{_chroot}/usr/share
+%attr(770,named,named) %dir %{_chroot}/usr/share/zoneinfo
+%attr(770,named,named) %dir %{_chroot}/var
+%attr(770,named,named) %dir %{_chroot}/var/lib
+%attr(770,named,named) %dir %{_chroot}/var/lib/named
+%attr(770,named,named) %dir %{_chroot}/var/lib/named/M
+%attr(770,named,named) %dir %{_chroot}/var/lib/named/S
+%attr(770,named,named) %dir %{_chroot}/var/run
+%attr(770,named,named) %dir %{_chroot}/var/tmp
+
+%attr(660,named,named) %{_chroot}/var/lib/named/M/*
+%attr(660,named,named) %{_chroot}/var/lib/named/root.*
+
+%attr(775,named,named) %dir %{_chroot}/usr/sbin/*
+%attr(644,named,named) %dir %{_chroot}/usr/share/zoneinfo/*
+
+%ghost %verify(not md5 size mtime) %{_chroot}/etc/group
+%ghost %verify(not md5 size mtime) %{_chroot}/etc/localtime
+
+%attr(10666,root,root) %ghost %{_chroot}/dev/log
+%attr(20666,root,root) %ghost %{_chroot}/dev/null
 
 %files utils
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/*
 
-%{_datadir}/nslookup.help
+%{_datadir}/misc/nslookup.help
 
 %{_mandir}/man1/dig.1*
 %{_mandir}/man1/host.1*
This page took 0.051476 seconds and 4 git commands to generate.