- improved "chroot automount" patches (#504596)

- host should fail if specified server doesn't respond (#507469)
This commit is contained in:
Adam Tkac 2009-06-24 14:51:55 +00:00
parent 91895cfac2
commit 583a06b173
4 changed files with 29 additions and 9 deletions

View File

@ -20,7 +20,7 @@ Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) serv
Name: bind Name: bind
License: ISC License: ISC
Version: 9.6.1 Version: 9.6.1
Release: 1%{?dist} Release: 2%{?dist}
Epoch: 32 Epoch: 32
Url: http://www.isc.org/products/BIND/ Url: http://www.isc.org/products/BIND/
Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -52,6 +52,7 @@ Patch99: bind-96-libtool2.patch
Patch101:bind-96-old-api.patch Patch101:bind-96-old-api.patch
Patch102:bind-95-rh452060.patch Patch102:bind-95-rh452060.patch
Patch106:bind93-rh490837.patch Patch106:bind93-rh490837.patch
Patch107:bind96-rh507469.patch
# SDB patches # SDB patches
Patch11: bind-9.3.2b2-sdbsrc.patch Patch11: bind-9.3.2b2-sdbsrc.patch
@ -217,6 +218,7 @@ mkdir m4
%patch102 -p1 -b .rh452060 %patch102 -p1 -b .rh452060
%patch106 -p0 -b .rh490837 %patch106 -p0 -b .rh490837
%patch107 -p1 -b .rh507469
# Sparc and s390 arches need to use -fPIE # Sparc and s390 arches need to use -fPIE
%ifarch sparcv9 sparc64 s390 s390x %ifarch sparcv9 sparc64 s390 s390x
@ -304,7 +306,7 @@ mkdir -p ${RPM_BUILD_ROOT}/var/log
mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/{dev,etc,var} mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/{dev,etc,var}
mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/var/{log,named,run/named,tmp} mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/var/{log,named,run/named,tmp}
mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/etc/{pki/dnssec-keys,named} mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/etc/{pki/dnssec-keys,named}
mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/var/named/{data,slaves,dynamic} mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/%{_libdir}/bind
# these are required to prevent them being erased during upgrade of previous # these are required to prevent them being erased during upgrade of previous
# versions that included them (bug #130121): # versions that included them (bug #130121):
touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/dev/null touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/dev/null
@ -553,7 +555,6 @@ rm -rf ${RPM_BUILD_ROOT}
%{_bindir}/isc-config.sh %{_bindir}/isc-config.sh
%files chroot %files chroot
%defattr(0640,root,named,0750) %defattr(0640,root,named,0750)
%dir %{chroot_prefix} %dir %{chroot_prefix}
%dir %{chroot_prefix}/dev %dir %{chroot_prefix}/dev
@ -563,11 +564,9 @@ rm -rf ${RPM_BUILD_ROOT}
%dir %{chroot_prefix}/var %dir %{chroot_prefix}/var
%dir %{chroot_prefix}/var/run %dir %{chroot_prefix}/var/run
%dir %{chroot_prefix}/var/named %dir %{chroot_prefix}/var/named
%dir %{chroot_prefix}/%{_libdir}/bind
%ghost %config(noreplace) %{chroot_prefix}/etc/named.conf %ghost %config(noreplace) %{chroot_prefix}/etc/named.conf
%defattr(0660,named,named,0770) %defattr(0660,named,named,0770)
%ghost %dir %{chroot_prefix}/var/named/slaves
%ghost %dir %{chroot_prefix}/var/named/data
%ghost %dir %{chroot_prefix}/var/named/dynamic
%dir %{chroot_prefix}/var/run/named %dir %{chroot_prefix}/var/run/named
%dir %{chroot_prefix}/var/tmp %dir %{chroot_prefix}/var/tmp
%dir %{chroot_prefix}/var/log %dir %{chroot_prefix}/var/log
@ -578,6 +577,10 @@ rm -rf ${RPM_BUILD_ROOT}
%ghost %{chroot_prefix}/etc/localtime %ghost %{chroot_prefix}/etc/localtime
%changelog %changelog
* Wed Jun 24 2009 Adam Tkac <atkac redhat com> 32:9.6.1-2
- improved "chroot automount" patches (#504596)
- host should fail if specified server doesn't respond (#507469)
* Wed Jun 17 2009 Adam Tkac <atkac redhat com> 32:9.6.1-1 * Wed Jun 17 2009 Adam Tkac <atkac redhat com> 32:9.6.1-1
- 9.6.1 release - 9.6.1 release
- simplify chroot maintenance. Important files and directories are mounted into - simplify chroot maintenance. Important files and directories are mounted into

14
bind96-rh507469.patch Normal file
View File

@ -0,0 +1,14 @@
diff -up bind-9.6.1/bin/dig/dighost.c.rh507469 bind-9.6.1/bin/dig/dighost.c
--- bind-9.6.1/bin/dig/dighost.c.rh507469 2009-06-23 15:52:08.974779538 +0200
+++ bind-9.6.1/bin/dig/dighost.c 2009-06-23 15:54:19.934977907 +0200
@@ -1064,7 +1064,9 @@ setup_system(void) {
debug("ndots is %d.", ndots);
}
- copy_server_list(lwconf, &server_list);
+ /* If user doesn't specify server use nameservers from resolv.conf */
+ if (ISC_LIST_EMPTY(server_list))
+ copy_server_list(lwconf, &server_list);
/* If we don't find a nameserver fall back to localhost */
if (ISC_LIST_EMPTY(server_list)) {

View File

@ -48,7 +48,8 @@ fi
/usr/sbin/dnssec-configure -b --norestart --dnssec="$DNSSEC" --dlv="$DLV" /usr/sbin/dnssec-configure -b --norestart --dnssec="$DNSSEC" --dlv="$DLV"
ROOTDIR_MOUNT='/etc/named /etc/pki/dnssec-keys /var/named /etc/named.conf ROOTDIR_MOUNT='/etc/named /etc/pki/dnssec-keys /var/named /etc/named.conf
/etc/named.dnssec.keys /etc/named.rfc1912.zones /etc/rndc.conf /etc/rndc.key' /etc/named.dnssec.keys /etc/named.rfc1912.zones /etc/rndc.conf /etc/rndc.key
/usr/lib64/bind /usr/lib/bind'
mount_chroot_conf() mount_chroot_conf()
{ {
@ -68,9 +69,10 @@ mount_chroot_conf()
else else
# Mount source is a directory. Mount it only if directory in chroot is # Mount source is a directory. Mount it only if directory in chroot is
# empty. # empty.
[ `ls -1A $ROOTDIR$all | wc -l` -eq 0 ] && \ if [ -e "$all" ] && [ `ls -1A $ROOTDIR$all | wc -l` -eq 0 ]; then
mount --bind "$all" "$ROOTDIR$all" mount --bind "$all" "$ROOTDIR$all"
fi fi
fi
done done
fi fi
} }

View File

@ -2,7 +2,7 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~ # ~~~~~~~~~~~~~~~~~~~~~~~~~~
# Currently, you can use the following options: # Currently, you can use the following options:
# #
# ROOTDIR="/some/where" -- will run named in a chroot environment. # ROOTDIR="/var/named/chroot" -- will run named in a chroot environment.
# you must set up the chroot environment # you must set up the chroot environment
# (install the bind-chroot package) before # (install the bind-chroot package) before
# doing this. # doing this.
@ -13,6 +13,7 @@
# - /var/named # - /var/named
# - /etc/pki/dnssec-keys # - /etc/pki/dnssec-keys
# - /etc/named # - /etc/named
# - /usr/lib64/bind of /usr/lib/bind (architecture dependant)
# #
# Those files are mounted as well if target file doesn't exist in # Those files are mounted as well if target file doesn't exist in
# chroot. # chroot.