diff -r 4243e22505f9 -r cd4343d59850 plugins/check_dns-delegation --- a/plugins/check_dns-delegation Tue Jan 06 14:21:38 2015 +0100 +++ b/plugins/check_dns-delegation Tue Jan 06 15:08:33 2015 +0100 @@ -155,7 +155,7 @@ sub ns_ok { my ($domain, $reference) = @_; - my @errs; + my (@errs, @ns); my @our = eval { sort +ns($domain, nameservers => [$reference], aa => 1) }; push @errs, $@ if $@; my @their = eval { sort +ns($domain) }; @@ -171,12 +171,15 @@ die "NS differ (our @our) vs (their @their)\n"; } - return uniq sort @our, @their; + @ns = uniq sort @our, @their; + ### @ns + return @ns; } sub serial_ok { my ($domain, @ns) = @_; my @serials = map { my $s = serial $domain, nameservers => [$_]; "$s\@$_" } @ns; + ### @serials if (uniq(map { /(\d+)/ } @serials) != 1) { die "serials do not match: @serials\n"; @@ -220,7 +223,7 @@ } print STDERR 'ok(ns) ' if $opt_progress; - my @serial = eval { serial_ok($domain, @ns) }; + my @serial = eval { serial_ok($domain, @ns, $opt_reference) }; if ($@) { $CRITICAL{$domain} = $@; say STDERR 'serial not ok' if $opt_progress;