merged hs12
authorAndre Suess <andre.suess@pipkin.cc>
Thu, 30 Dec 2010 15:40:19 +0100
branchhs12
changeset 67 6adcf16d5cd6
parent 66 c44bc1c8e396 (current diff)
parent 65 ea0afdd6b026 (diff)
child 68 a433ae489911
merged Hg: Bitte gib eine Versions-Meldung ein. Zeilen beginnend mit 'HG:' werden entfernt.
update-serial.pl
--- a/update-serial.pl	Thu Dec 30 15:29:33 2010 +0100
+++ b/update-serial.pl	Thu Dec 30 15:40:19 2010 +0100
@@ -21,7 +21,7 @@
 sub need_rollover();
 sub done_rollover();
 sub begin_rollover(@);
-sub kill_useless_keys($);
+sub unlink_unused_keys($);
 
 sub sign_zone;
 sub update_serial;
@@ -474,7 +474,7 @@
         say $fh 0;
         close($fh);
 
-        kill_useless_keys($zone);
+        unlink_unused_keys($zone);
         &key_to_zonefile($zone);
         push @r, $zone;
     }
@@ -508,30 +508,27 @@
     close(ZONEFILE);
 }
 
-sub kill_useless_keys($) {
+sub unlink_unused_keys($) {
 
     # die funktion loescht alle schluessel die nicht in der index.zsk
     # der uebergebenen zone stehen
     my $zone = shift;
 
-    my @keys = ();
+    my @keys;
     my $dir  = "$config{master_dir}/$zone";
 
     {
 	# collect the keys and cut everything except the key id
+	# we cut the basenames (w/o the .private|.key suffix)
         open(my $zsk, "<$dir/.index.zsk") or die "$dir/.index.zsk: $!\n";
         open(my $ksk, "<$dir/.index.ksk") or die "$dir/.index.ksk: $!\n";
-	@keys = map { basename $_, ".private", ".key" } (<$zsk>, <$ksk>);
+	@keys = (<$zsk>, <$ksk>);
     }
 
-    ### @keys
-
     # prueft alle schluesseldateien (ksk, zsk) ob sie in der jeweiligen
     # indexdatei beschrieben sind. wenn nicht werden sie geloescht.
-    # ---- <><><><>
-    for my $file (grep /(?:key|private)$/ => glob "$config{master_dir}/$zone/K*") {
-	$file = basename $file, ".private", ".key";
-	unlink "$file.key", "$file.private" if $file ~~ @keys;
+    for my $file (glob "$dir/K*.key $dir/K*.private") {
+	unlink $file if basename($file, ".key", ".private") ~~ @keys;
     }
 }
 
@@ -559,7 +556,7 @@
             print INDEX $last_key;
             close(INDEX);
         }
-        kill_useless_keys($zone);
+        unlink_unused_keys($zone);
         &key_to_zonefile($zone);
         push @new_serial, $zone;
     }