diff -r f77aa03e2d39 -r 70ecc1882968 vidns --- a/vidns Thu May 22 16:17:47 2014 +0200 +++ b/vidns Thu May 22 17:18:07 2014 +0200 @@ -5,14 +5,12 @@ use File::Temp; use Smart::Comments; use Digest::SHA qw(sha512_hex); +use Getopt::Long; +use Pod::Usage; sub parse { - my $file = shift; - my @lines = split /\n/, do { - local $/ = undef; - local @ARGV = $file; - <>; - }; + my $data = join '', @_; + my @lines = split /\n/, $data; my @zone; my ($origin, $ttl, $last_label, $soa_seen); @@ -20,14 +18,15 @@ foreach (@lines) { s{;.*$}{}; given ($_) { + when (m{^\s*$}) { next } when (m{^\s*\$ORIGIN\s+(\S+)}) { $origin = $1 } - when (m{^\s*\$TTL\s+(\S+)}) { $ttl = $1 } + when (m{^\s*\$TTL\s+(\S+)}) { $ttl = $1 } when ( m{^(?