3 use strict; |
3 use strict; |
4 |
4 |
5 my $bind_dir = "/etc/bind"; |
5 my $bind_dir = "/etc/bind"; |
6 my $conf_dir = "/etc/bind/zones.d"; |
6 my $conf_dir = "/etc/bind/zones.d"; |
7 my $master_dir = "/etc/bind/master"; |
7 my $master_dir = "/etc/bind/master"; |
8 chomp (my @domains = `ls $master_dir`); |
|
9 chomp (my @conf_dir_files = `ls $conf_dir`); |
8 chomp (my @conf_dir_files = `ls $conf_dir`); |
10 |
9 |
11 # prueft jede domain, die ein verzeichnis in $master_dir hat, ob es eine |
10 # prueft jede domain, die ein verzeichnis in $master_dir hat, ob es eine |
12 # datei $zone_file.signed gibt und ob diese datei in $config_file eingetragen |
11 # datei $zone_file.signed gibt und ob diese datei in $config_file eingetragen |
13 # ist. |
12 # ist. |
14 # passt die eintraege in $config_file falls noetig an. |
13 # passt die eintraege in $config_file falls noetig an. |
15 foreach (@domains) { |
14 for (<$master_dir/*>) { |
16 my $domain = $_; |
15 s#($master_dir/)(.*)#$2#; |
17 my $zone_file = "$master_dir/$domain/$domain"; |
16 my $zone = $_; |
18 my $conf_file = "$conf_dir/$domain"; |
17 |
|
18 my $zone_file = "$master_dir/$zone/$zone"; |
|
19 my $conf_file = "$conf_dir/$zone"; |
19 my @c_content; |
20 my @c_content; |
20 |
21 |
21 if (-e "$zone_file.signed") { |
22 if (-e "$zone_file.signed") { |
22 |
23 |
23 open (FILE, $conf_file); |
24 open (FILE, $conf_file); |