#
# ChkDel -- A simple script for checking of domain delegations
#
-# (c) 1999 Martin Mares <mj@ucw.cz>
+# (c) 1999--2003 Martin Mares <mj@ucw.cz>
#
-use lib "/home/mj/perl/lib/site_perl";
+use strict;
+use warnings;
-$our_server = "server1.gts.cz";
-$outside_ns = "ns.eunet.cz";
+# The canonical name of our server
+my $our_server = "jabberwock.ucw.cz";
+
+# Any recursive nameserver outside our network
+my $outside_ns = "ns.gts.cz";
use Net::DNS::Resolver;
-$res = new Net::DNS::Resolver;
+my $res = new Net::DNS::Resolver;
$res->nameservers($outside_ns);
$res->defnames(0);
$res->dnsrch(0);
$res->debug(0);
$res->recurse(1);
-@list = @ARGV ? `cat $ARGV[0]` : `m4 cf/domains`;
+my $d = @ARGV ? $ARGV[0] : 'cf/domains';
+my @list = `m4 m4/list.m4 $d`;
foreach $_ (@list) {
- if (/^PRIMARY\((\S+)\)/) { $dom = $1; }
- elsif (/^SECONDARY\((\S+)\s*,/) { $dom = $1; }
- else { next; }
+ chomp;
+ my $dom = $_;
$dom eq "localhost" && next;
-# print "$dom\n";
+ #print "$dom\n";
my $q = $res->send($dom, "NS", "IN") or do {
print "$dom: ", $res->errorstring, "\n";
next;
print "$dom: Empty answer\n";
next;
};
- $f = 0;
+ my $f = 0;
foreach my $r ($q->answer) {
if ($r->class eq "IN" && $r->type eq "NS" && $r->nsdname eq $our_server) {
$f = 1;
#
# Convert -- A Tool for Conversion of Zone Files to NSC Format
#
-# (c) 1999 Martin Mares <mj@ucw.cz>
+# (c) 1999--2003 Martin Mares <mj@ucw.cz>
#
-use lib "/home/mj/perl/lib/site_perl";
-
use Getopt::Std;
use Net::DNS::Resolver;
my $flag = shift @_;
if (defined $ips{$n}) { print "H($n$ips{$n})\n"; }
- elsif ($flag) { print "HH($n)\n"; }
+ elsif ($flag) { print "H($n)\n"; }
if (defined $mx{$n}) { print "MX($mx{$n})\n"; }
if (defined $cn{$n}) { print "ALIAS($cn{$n})\n"; }
}