diff -r 5b52190d8750 -r 6715f8f9d04c dnssec-creatkey --- a/dnssec-creatkey Wed Jul 28 14:14:47 2010 +0200 +++ b/dnssec-creatkey Thu Jul 29 14:19:56 2010 +0200 @@ -4,7 +4,6 @@ my $master_dir="/etc/bind/master"; # verzeichnis fuer bind my $key_counter_end="10"; # ablauf des schluessels -my @zones = `ls $master_dir`; # alle verwalteten zonen my @change; # liste abgelaufener zonen my @manu; # liste manuell eingegebener zonen aus ARGV my @index; @@ -12,7 +11,7 @@ my $keyname; # prueft ob eingaben in ARGV domains sind und gibt sie in die liste @manu -foreach (@ARGV) { +for (@ARGV) { chomp ($zone = `idn --quiet "$_"`); if (-e "$master_dir/$zone") { @@ -23,24 +22,25 @@ } # gibt alle zonen mit abgelaufenen keycounter in die liste @change -foreach (@zones) { +for (<$master_dir/*>) { chomp ($zone = $_); my $key; - if (-e "$master_dir/$zone/.keycounter") { + if (-e "$zone/.keycounter") { - open (KEY, "$master_dir/$zone/.keycounter"); + open (KEY, "$zone/.keycounter"); $key = ; close (KEY); if ($key_counter_end < $key) { + $zone =~ s#($master_dir/)(.*)#$2#; push (@change, $zone); } } } #erzeugt zsks -foreach (@change, @manu) { +for (@change, @manu) { $zone = $_; chdir "$master_dir/$zone" or die "chdir nach / nicht moeglich: $1"; @@ -72,7 +72,7 @@ } #erzeugt ksks -foreach (@manu) { +for (@manu) { $zone = $_; chdir "$master_dir/$zone" or die "chdir nach / nicht moeglich: $1"; @@ -102,7 +102,7 @@ # loescht alle unbenoetigten schluessel, fuegt die schluessel in # die zone-datei -foreach (@change, @manu) { +for (@change, @manu) { $zone = $_; my @old_zone_content = (); my @new_zone_content = ();