All pastes #467094 Raw Edit

Someone

public text v1 · immutable
·published 2007-05-02 09:48 UTC
rendered paste body
#!/usr/bin/env perl
use Net::DNS;
use Date::Format;

# Config
my $DNS = "127.0.0.1";
my $ZONEPATH = "/var/lib/named/master";

# Search templates
my %zones = ();
@templates = <$ZONEPATH/*.rev.auto>;
# Fill data on zones hash
foreach (@templates) {
  my @lt = localtime(time);
  $_ =~ /$ZONEPATH\/([0-9\.]+)rev\.auto/;
  # Calc serial
  my $serial = strftime('%Y%m%d00', @lt);
  # Open zone template file
  open ZONETPL, "<", $_;
  my @zone = <ZONETPL>;
  close(ZONETPL);
  # Fill serial
  foreach (@zone) {
    chomp;
    $_ =~ s/\%\%SERIAL\%\%/$serial/;
  }
  # Assign data
  $zones{$1} = [ @zone ];
}

for my $key ( keys %zones ) {
  $a = $zones{$key};
  foreach (@$a) {
    print "$key:$_\n";
  }
}