rpms/bind/devel .cvsignore, 1.53, 1.54 bind.spec, 1.315, 1.316 named.init, 1.70, 1.71 named.sysconfig, 1.8, 1.9 sources, 1.62, 1.63

Adam Tkac atkac at fedoraproject.org
Wed Jun 17 15:56:09 UTC 2009


Author: atkac

Update of /cvs/pkgs/rpms/bind/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv32759

Modified Files:
	.cvsignore bind.spec named.init named.sysconfig sources 
Log Message:
- 9.6.1 release
- simplify chroot maintenance. Important files and directories are mounted into
  chroot (see /etc/sysconfig/named for more info, #504596)
- fix doc/named.conf.default perms



Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/bind/devel/.cvsignore,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -p -r1.53 -r1.54
--- .cvsignore	27 May 2009 07:41:07 -0000	1.53
+++ .cvsignore	17 Jun 2009 15:55:38 -0000	1.54
@@ -1,3 +1,2 @@
+bind-9.6.1.tar.gz
 config-4.tar.bz2
-bind-chroot.tar.bz2
-bind-9.6.1rc1.tar.gz


Index: bind.spec
===================================================================
RCS file: /cvs/pkgs/rpms/bind/devel/bind.spec,v
retrieving revision 1.315
retrieving revision 1.316
diff -u -p -r1.315 -r1.316
--- bind.spec	27 May 2009 07:41:07 -0000	1.315
+++ bind.spec	17 Jun 2009 15:55:38 -0000	1.316
@@ -3,10 +3,10 @@
 #
 
 #%define PATCHVER P1
-%define PREVER rc1
+#%define PREVER rc1
 #%define VERSION %{version}
 #%define VERSION %{version}-%{PATCHVER}
-%define VERSION %{version}%{PREVER}
+%define VERSION %{version}
 
 %{?!SDB:       %define SDB       1}
 %{?!test:      %define test      0}
@@ -20,7 +20,7 @@ Summary:  The Berkeley Internet Name Dom
 Name:     bind
 License:  ISC
 Version:  9.6.1
-Release:  0.4.%{PREVER}%{?dist}
+Release:  1%{?dist}
 Epoch:    32
 Url:      http://www.isc.org/products/BIND/
 Buildroot:%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -31,7 +31,6 @@ Source1:  named.sysconfig
 Source2:  named.init
 Source3:  named.logrotate
 Source5:  rfc1912.txt
-Source6:  bind-chroot.tar.bz2
 Source7:  bind-9.3.1rc1-sdb_tools-Makefile.in
 Source8:  dnszone.schema
 Source12: README.sdb_pgsql
@@ -237,11 +236,6 @@ sed -i -e \
 's/RELEASEVER=\(.*\)/RELEASEVER=\1-RedHat-%{version}-%{release}/' \
 version
 
-# Substitute libtool -version-info parameter by -version-number
-for all in `find . |grep Makefile.in`; do
-	sed -i 's/-version-info/-version-number/' $all
-done
-
 libtoolize -c -f; aclocal -I m4 --force; autoheader -f; autoconf -f
 
 %configure \
@@ -307,22 +301,24 @@ mkdir -p ${RPM_BUILD_ROOT}/var/run/named
 mkdir -p ${RPM_BUILD_ROOT}/var/log
 
 #chroot
-mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}
-tar --no-same-owner -jxvf %{SOURCE6} --directory ${RPM_BUILD_ROOT}/%{chroot_prefix}
+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}/etc/{pki/dnssec-keys,named}
+mkdir -p ${RPM_BUILD_ROOT}/%{chroot_prefix}/var/named/{data,slaves,dynamic}
 # these are required to prevent them being erased during upgrade of previous
 # versions that included them (bug #130121):
 touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/dev/null
 touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/dev/random
 touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/dev/zero
 touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/etc/localtime
+
+touch ${RPM_BUILD_ROOT}/%{chroot_prefix}/etc/named.conf
 #end chroot
 
 make DESTDIR=${RPM_BUILD_ROOT} install
-touch ${RPM_BUILD_ROOT}%{_sysconfdir}/rndc.conf
 install -m 755 contrib/named-bootconf/named-bootconf.sh ${RPM_BUILD_ROOT}%{_sbindir}/named-bootconf
 install -m 755 %SOURCE2 ${RPM_BUILD_ROOT}/etc/rc.d/init.d/named
 install -m 644 %SOURCE3 ${RPM_BUILD_ROOT}/etc/logrotate.d/named
-touch ${RPM_BUILD_ROOT}%{_sysconfdir}/rndc.key
 mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig
 install -m 644 %{SOURCE1} ${RPM_BUILD_ROOT}%{_sysconfdir}/sysconfig/named
 %if %{SDB}
@@ -346,6 +342,9 @@ touch ${RPM_BUILD_ROOT}%{_localstatedir}
 
 # configuration files:
 tar -C ${RPM_BUILD_ROOT} -xjf %{SOURCE28}
+touch ${RPM_BUILD_ROOT}/etc/rndc.key
+touch ${RPM_BUILD_ROOT}/etc/rndc.conf
+mkdir ${RPM_BUILD_ROOT}/etc/named
 
 install -m 644 %{SOURCE5}  ./rfc1912.txt
 install -m 644 %{SOURCE21} ./Copyright
@@ -354,7 +353,7 @@ install -m 644 %{SOURCE21} ./Copyright
 mkdir -p sample/etc sample/var/named/{data,slaves}
 install -m 644 %{SOURCE25} sample/etc/named.conf
 # Copy default configuration to %%doc to make it usable from system-config-bind
-cp -fp ${RPM_BUILD_ROOT}/etc/named.conf named.conf.default
+install -m 644 ${RPM_BUILD_ROOT}/etc/named.conf named.conf.default
 install -m 644 ${RPM_BUILD_ROOT}/etc/named.rfc1912.zones sample/etc/named.rfc1912.zones
 install -m 644 ${RPM_BUILD_ROOT}/var/named/{named.ca,named.localhost,named.loopback,named.empty}  sample/var/named
 for f in my.internal.zone.db slaves/my.slave.internal.zone.db slaves/my.ddns.internal.zone.db my.external.zone.db; do 
@@ -458,6 +457,7 @@ rm -rf ${RPM_BUILD_ROOT}
 %files
 # Hide configuration
 %defattr(0640,root,named,0750)
+%dir %{_sysconfdir}/named
 %dir %{_localstatedir}/named
 %config(noreplace) %verify(not link) %{_sysconfdir}/named.conf
 %config(noreplace) %verify(not link) %{_sysconfdir}/named.rfc1912.zones
@@ -558,13 +558,16 @@ rm -rf ${RPM_BUILD_ROOT}
 %dir %{chroot_prefix}
 %dir %{chroot_prefix}/dev
 %dir %{chroot_prefix}/etc
+%dir %{chroot_prefix}/etc/named
+%dir %{chroot_prefix}/etc/pki/dnssec-keys
 %dir %{chroot_prefix}/var
 %dir %{chroot_prefix}/var/run
 %dir %{chroot_prefix}/var/named
+%ghost %config(noreplace) %{chroot_prefix}/etc/named.conf
 %defattr(0660,named,named,0770)
-%dir %{chroot_prefix}/var/named/slaves
-%dir %{chroot_prefix}/var/named/data
-%dir %{chroot_prefix}/var/named/dynamic
+%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/tmp
 %dir %{chroot_prefix}/var/log
@@ -575,6 +578,12 @@ rm -rf ${RPM_BUILD_ROOT}
 %ghost %{chroot_prefix}/etc/localtime
 
 %changelog
+* Wed Jun 17 2009 Adam Tkac <atkac redhat com> 32:9.6.1-1
+- 9.6.1 release
+- simplify chroot maintenance. Important files and directories are mounted into
+  chroot (see /etc/sysconfig/named for more info, #504596)
+- fix doc/named.conf.default perms
+
 * Wed May 27 2009 Adam Tkac <atkac redhat com> 32:9.6.1-0.4.rc1
 - 9.6.1rc1 release
 


Index: named.init
===================================================================
RCS file: /cvs/pkgs/rpms/bind/devel/named.init,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -p -r1.70 -r1.71
--- named.init	9 Mar 2009 20:35:34 -0000	1.70
+++ named.init	17 Jun 2009 15:55:38 -0000	1.71
@@ -47,6 +47,47 @@ fi
   [ /etc/sysconfig/dnssec -nt /etc/named.conf ] && \
    /usr/sbin/dnssec-configure -b --norestart --dnssec="$DNSSEC" --dlv="$DLV"
 
+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'
+
+mount_chroot_conf()
+{
+  if [ -n "$ROOTDIR" ]; then
+    for all in $ROOTDIR_MOUNT; do
+      # Skip nonexistant files
+      [ -e "$all" ] || continue
+
+      # If mount source is a file
+      if ! [ -d "$all" ]; then
+        # mount it only if it is not present in chroot or it is empty
+        if ! [ -e "$ROOTDIR$all" ] ||
+           [ `ls -s "$ROOTDIR$all" | awk '{ print $1 };'` -eq 0 ]; then
+          touch "$ROOTDIR$all"
+          mount --bind "$all" "$ROOTDIR$all"
+        fi
+      else
+        # Mount source is a directory. Mount it only if directory in chroot is
+        # empty.
+        [ `ls -1A $ROOTDIR$all | wc -l` -eq 0 ] && \
+          mount --bind "$all" "$ROOTDIR$all"
+      fi
+    done
+  fi
+}
+
+umount_chroot_conf()
+{
+  for all in $ROOTDIR_MOUNT; do
+    # Check if file is mount target. Do not use /proc/mounts because detecting
+    # of modified mounted files can fail.
+    if mount | grep -q '.* on '"$ROOTDIR$all"' .*'; then
+      umount "$ROOTDIR$all"
+      # Remove temporary created files
+      [ -f "$all" ] && rm -f "$ROOTDIR$all"
+    fi
+  done
+}
+
 # Check if all what named needs running
 start()
 {
@@ -70,6 +111,8 @@ start()
 
   named_conf=${named_conf:-/etc/named.conf};
 
+  mount_chroot_conf
+
   if [ ! -r $ROOTDIR$named_conf ]; then
     echo 'Cannot find configuration file. You could create it by system-config-bind'
     exit 6;
@@ -117,12 +160,14 @@ start()
     failure
     echo
     [ -x /usr/bin/logger ] && echo "$named_err" | /usr/bin/logger -pdaemon.error -tnamed;
+    umount_chroot_conf
     exit 2;
   fi;
   echo
   if [ $RETVAL -eq 0 ]; then
     touch /var/lock/subsys/named;
   else
+    umount_chroot_conf
     exit 7;
   fi
   return 0;
@@ -148,6 +193,8 @@ stop() {
     fi;
   done
 
+  umount_chroot_conf
+
   # remove pid files
   if [ $RETVAL -eq 0 ]; then
     rm -f /var/lock/subsys/named


Index: named.sysconfig
===================================================================
RCS file: /cvs/pkgs/rpms/bind/devel/named.sysconfig,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -p -r1.8 -r1.9
--- named.sysconfig	19 Nov 2007 14:03:28 -0000	1.8
+++ named.sysconfig	17 Jun 2009 15:55:38 -0000	1.9
@@ -6,6 +6,22 @@
 #                            you must set up the chroot environment 
 #                            (install the bind-chroot package) before
 #                            doing this.
+#	NOTE:
+#         Those directories are automatically mounted to chroot if they are
+#         empty in the ROOTDIR directory. It will simplify maintenance of your
+#         chroot environment.
+#          - /var/named
+#          - /etc/pki/dnssec-keys
+#          - /etc/named
+#
+#	  Those files are mounted as well if target file doesn't exist in
+#	  chroot.
+#          - /etc/named.conf
+#          - /etc/rndc.conf
+#          - /etc/rndc.key
+#          - /etc/named.rfc1912.zones
+#          - /etc/named.dnssec.keys
+#                          
 #
 # OPTIONS="whatever"     --  These additional options will be passed to named
 #                            at startup. Don't add -t here, use ROOTDIR instead.


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/bind/devel/sources,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -p -r1.62 -r1.63
--- sources	27 May 2009 07:41:08 -0000	1.62
+++ sources	17 Jun 2009 15:55:38 -0000	1.63
@@ -1,3 +1,2 @@
+516ac74d8eaaef30ad4c99ada8b715cd  bind-9.6.1.tar.gz
 de68e10e91e05ab100be879b5bcaa6cb  config-4.tar.bz2
-4faa4395b955e5f8a3d50f308b9fabc8  bind-chroot.tar.bz2
-43121369fa9c218d565ae685960660e2  bind-9.6.1rc1.tar.gz




More information about the fedora-extras-commits mailing list