equal
deleted
inserted
replaced
14 my ($c) = @_; |
14 my ($c) = @_; |
15 |
15 |
16 my $f = File::Temp->new or die "Config file creation failed\n"; |
16 my $f = File::Temp->new or die "Config file creation failed\n"; |
17 |
17 |
18 if (ref $c eq 'HASH') { |
18 if (ref $c eq 'HASH') { |
19 map { print $f "$_ = $c->$_\n" } keys %{$c}; |
19 map { print $f "$_ = $c->{$_}\n" } keys %{$c}; |
20 } else { |
20 } elsif (defined $c) { |
21 # assuming just a string |
21 # assuming just a string |
22 print $f $c; |
22 print $f $c; |
|
23 } else { |
|
24 # make a default configuration |
|
25 my ($bd, $md, $cd); |
|
26 for ($bd, $md, $cd) { |
|
27 my $d = File::Temp::tempdir CLEANUP => 1 or die "Can't make temporary directory"; |
|
28 $_ = $d->filename; |
|
29 } |
|
30 |
|
31 print $f <<__EOF; |
|
32 bind_dir = $bd |
|
33 master_dir = $md |
|
34 zone_conf_dir = $cd |
|
35 |
|
36 key_counter_end = 15 |
|
37 sign_alert_time = 168 |
|
38 abl_zeit = 24 |
|
39 |
|
40 secondary = hh.schlittermann.de |
|
41 primary = pu.schlittermann.de |
|
42 hostmaster = hostmaster\@schlittermann.de |
|
43 |
|
44 indexzone = idx.tld |
|
45 template_dir = ./templates |
|
46 __EOF |
|
47 |
23 } |
48 } |
24 |
49 |
25 return $f; |
50 return $f; |
26 |
51 |
27 } |
52 } |