freeze exception request for chiark-utils 4.1.28
I would like to request a freeze exception for chiark-utils 4.1.28 so
that lenny can have this change to chiark-named-conf:
* Remove obsolete +nodebug option from calls to dig;
required for BIND9 compatibility. Thanks to Ross Younger.
In my view this fixes a release-critical bug in 4.1.24.
Although I haven't filed that bug in the BTS I could do so
if it would help document the reason for the update.
If this isn't suitable of an exception because of the other bugfixes
in it then I think I should upload something with only that change to
testing-proposed-updates since without it chiark-named-conf does not
work at all with the dnsutils version of dig, which everyone who
hasn't yet is now switching to as a side-effect of moving to BIND9.
But really nearly all of the changes are to chiark-named-conf itself
which is currently unuseable with the dnsutils dig in lenny.
The whole changelog entry for the upload is this:
chiark-utils (4.1.28) unstable; urgency=high
chiark-named-conf:
* Remove obsolete +nodebug option from calls to dig;
required for BIND9 compatibility. Thanks to Ross Younger.
* Foreign zones work properly using the configuration
prevailing at the end of the config file.
* Warn if user specifies a zone with the trailing `.'.
Other:
* hexterm: Declare and document the dependency of hexterm on tcl8.4.
* chiark-backup: remove snap-mount properly whether it's a dir or a leaf
node (such as a symlink).
-- Ian Jackson <ian@davenant.greenend.org.uk> Wed, 27 Aug 2008 23:26:55 +0100
I've included the debdiff in case it's of interest.
(There was a mistaken upload numbered 4.1.27 which had me edit the
distribution field to `high' in the changelog rather than the
priority. If this didn't get thrown away automatically yet, please
disregard it. 4.1.25 and .26 were unreleased versions for local
consumption.)
Thanks,
Ian.
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/backup/nosnap /tmp/8CvY0rFnKr/chiark-utils-4.1.28/backup/nosnap
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/backup/nosnap 2007-02-16 19:10:42.000000000 +0000
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/backup/nosnap 2007-11-26 00:52:31.000000000 +0000
@@ -3,7 +3,12 @@
set -e
removes () {
- rm -f -- "$vardir/snap-mount" "$vardir/snap-device"
+ if test -d "$vardir/snap-mount"; then
+ rmdir -- "$vardir/snap-mount"
+ else
+ rm -f -- "$vardir/snap-mount"
+ fi
+ rm -f -- "$vardir/snap-device"
}
vardir="$2"
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/backup/snap-common /tmp/8CvY0rFnKr/chiark-utils-4.1.28/backup/snap-common
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/backup/snap-common 2006-07-30 14:34:05.000000000 +0100
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/backup/snap-common 2007-11-26 00:52:31.000000000 +0000
@@ -53,7 +53,7 @@
lvmdropcore () {
snmnt="$vardir/snap-mount"
umount -v "$snmnt" || true
- test ! -d "$snmnt" || rmdir -- "$snmnt"
+ test ! -d "$snmnt" || rmdir -- "$snmnt" || rm -f "$snmnt"
set +e
old_lv_dev="$(readlink $vardir/snap-device)"
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/debian/changelog /tmp/8CvY0rFnKr/chiark-utils-4.1.28/debian/changelog
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/debian/changelog 2007-09-23 16:40:35.000000000 +0100
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/debian/changelog 2008-08-27 23:54:32.000000000 +0100
@@ -1,3 +1,19 @@
+chiark-utils (4.1.28) unstable; urgency=high
+
+ chiark-named-conf:
+ * Remove obsolete +nodebug option from calls to dig;
+ required for BIND9 compatibility. Thanks to Ross Younger.
+ * Foreign zones work properly using the configuration
+ prevailing at the end of the config file.
+ * Warn if user specifies a zone with the trailing `.'.
+
+ Other:
+ * hexterm: Declare and document the dependency of hexterm on tcl8.4.
+ * chiark-backup: remove snap-mount properly whether it's a dir or a leaf
+ node (such as a symlink).
+
+ -- Ian Jackson <ian@davenant.greenend.org.uk> Wed, 27 Aug 2008 23:26:55 +0100
+
chiark-utils (4.1.24) unstable; urgency=low
* Change my email address in the Maintainer field so that
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/debian/control /tmp/8CvY0rFnKr/chiark-utils-4.1.28/debian/control
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/debian/control 2007-09-23 16:40:35.000000000 +0100
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/debian/control 2008-08-27 22:52:54.000000000 +0100
@@ -24,6 +24,7 @@
Priority: extra
Conflicts: chiark-named-conf, sync-accounts
Replaces: chiark-named-conf, sync-accounts
+Suggests: tcl8.4
Architecture: all
Description: chiark system administration scripts
This package contains a number of small administration scripts used
@@ -58,7 +59,7 @@
.
hexterm: connects to serial port and allows the user interact in
ASCII and hex. Ie, a hex "terminal" program which lets you speak a
- serial port protocol directly.
+ serial port protocol directly. (Needs tcl8.4 to be installed.)
.
random-word, remountresizereiserfs,
summarise-mailbox-preserving-privacy
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/scripts/named-conf /tmp/8CvY0rFnKr/chiark-utils-4.1.28/scripts/named-conf
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/scripts/named-conf 2007-09-21 23:55:47.000000000 +0100
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/scripts/named-conf 2008-08-27 23:26:52.000000000 +0100
@@ -354,9 +354,23 @@
return 0;
}
+sub zone_conf_settings ($$) {
+ my ($cfg,$zone) = @_;
+ my ($sfx,$aref);
+ foreach $sfx (qw(self_soa self_ns self_addr forbid_addr forbid_slave
+ conv_glueless indirect_glue)) {
+ { no strict 'refs'; $aref= [ @$sfx ]; }
+ @$aref or cfg_fail("failed to specify $sfx before zone")
+ if $sfx =~ m/^self/;
+ $cfg->{$sfx}= $aref;
+ }
+ foreach $sfx (qw(self_soa self_ns)) {
+ map { s/\*$/$zone/ } @{ $zone_cfg{$zone}{$sfx} };
+ }
+}
+
sub zone_conf ($$$$$@) {
my ($zone,$style,$sabbr,$mod,$file,@servers) = @_;
- my ($sfx,$aref);
$file= qualify("$slave_dir/$slave_prefix".$zone.$slave_suffix)
unless length $file;
if (!length $output) {
@@ -382,16 +396,7 @@
$zone_cfg{$zone}{'maildir'}= qualify($mail_state_dir);
$zone_cfg{$zone}{'mailmwarn'}= $mail_max_warnfreq;
}
- foreach $sfx (qw(self_soa self_ns self_addr forbid_addr forbid_slave
- conv_glueless indirect_glue)) {
- { no strict 'refs'; $aref= [ @$sfx ]; }
- @$aref or cfg_fail("failed to specify $sfx before zone")
- if $sfx =~ m/^self/;
- $zone_cfg{$zone}{$sfx}= $aref;
- }
- foreach $sfx (qw(self_soa self_ns)) {
- map { s/\*$/$zone/ } @{ $zone_cfg{$zone}{$sfx} };
- }
+ zone_conf_settings($zone_cfg{$zone}, $zone);
$zone_cfg{$zone}{'output'}= $output;
push @zone_cfg_list, $zone;
}
@@ -420,11 +425,20 @@
local ($zone,$cfg);
foreach $zone (@zones) {
- $cfg= $zone_cfg{$zone} || {
- 'style_p' => 'foreign',
- 's' => "f $group2modcmd{'foreign'}",
- 'servers' => [ ],
+ if ($zone =~ m/\.$/) {
+ zone_warning("zone specified with trailing dot -".
+ " will not work", '');
+ }
+
+ $cfg= $zone_cfg{$zone};
+ if (!$cfg) {
+ $cfg= {
+ 'style_p' => 'foreign',
+ 's' => "f $group2modcmd{'foreign'}",
+ 'servers' => [ ],
};
+ zone_conf_settings($cfg, $zone);
+ }
mail_zone_before() or next
if $domail;
@@ -1100,7 +1114,7 @@
if (!$c) {
open STDERR, ">&STDOUT" or die $!;
exec ('dig',
- '+nodef','+nosea','+nodebug','+norecurse',
+ '+nodef','+nosea','+norecurse',
"\@$qaddr",'-t',$qtype,$qowner);
die "$quis: exec dig:\n $!\n";
}
diff -Nru /tmp/kXaGA9l9u1/chiark-utils-4.1.24/scripts/named-conf.8 /tmp/8CvY0rFnKr/chiark-utils-4.1.28/scripts/named-conf.8
--- /tmp/kXaGA9l9u1/chiark-utils-4.1.24/scripts/named-conf.8 2007-09-21 23:55:47.000000000 +0100
+++ /tmp/8CvY0rFnKr/chiark-utils-4.1.28/scripts/named-conf.8 2008-02-05 19:50:57.000000000 +0000
@@ -152,7 +152,9 @@
.SS GENERAL DIRECTIVES
These directives specify general configuration details. They should
appear before directives specifying zones, as each will affect only
-later zone directives.
+later zone directives. Foreign zones (zones explicitly specified on
+the command line but not mentioned in the configuration) use the
+configuration settings prevailing at the end of the config file.
.TP
\fBadmin\fP \fIemail\-address\fP
Specifies the email address of the local administrator. This is used
Reply to: