summaryrefslogtreecommitdiff
path: root/test-whois.pl
diff options
context:
space:
mode:
Diffstat (limited to 'test-whois.pl')
-rwxr-xr-xtest-whois.pl108
1 files changed, 0 insertions, 108 deletions
diff --git a/test-whois.pl b/test-whois.pl
deleted file mode 100755
index a68475a..0000000
--- a/test-whois.pl
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/usr/bin/perl -w
-
-use IO::Socket;
-use strict;
-
-my %check=(
- 'whois.io' => 'whois.io',
- 'whois.nic.cx' => 'nic.cx',
- 'whois.nic.gi' => 'nic.gi',
- 'whois.nic.ly' => 'nic.ly',
- 'whois.nic.pw' => 'nic.pw',
- 'whois.nic.so' => 'nic.so',
- 'whois.nic.st' => 'nic.st',
- 'whois.uprr.pr' => 'uprr.pr',
- 'whois.nplus.gf' => 'nplus.gf',
- 'rwhois.reacciun.ve' => 'reacciun.ve',
- 'whois.adamsnames.tc' => 'adamsnames.vg',
- 'whois.idnic.net.id' => 'idnic.net.id',
- 'whois.ncst.ernet.in' => 'ncst.ernet.in',
-);
-
-my @ripetest=('-V wC2.0', '-V2.0Md', '-VMd4.4');
-my %ripeserv=qw(
- whois.ripe.net dfn.de
- whois.aunic.net connect.com.au
- whois.connect.com.au connect.com.au
- whois.ra.net AS1
- whois.apnic.net 24.192.0.0
- whois.nic.it nic.it
- whois.ans.net AS1
- whois.ripn.net demos.su
- whois.nic.fr nic.fr
- whois.nic.net.sg nic.net.sg
- whois.metu.edu.tr metu.edu.tr
-);
-
-open(LIST, 'tld_serv_list');
-while (<LIST>) {
- chomp;
- next if /^#/;
- my ($tld, $serv, $junk)=split;
- next unless ($tld =~/\.[a-z]{2}$/); # skip non-cctld
- # I'm sure these won't move without notifying...
- next if ($serv =~ /(?:isi\.edu|internic.net)/);
-
- if ($serv eq 'whois.ripe.net') {
- $tld =~ s/^\.//;
- print ">>>>>>>>>Querying $serv ($tld) for $tld<<<<<<<<<<\n";
- print whois("-i domain $tld", $serv); # untested
- print "\n";
- next;
- }
- my $q;
- if ($serv =~ /$tld$/) {
- $q = $serv; $q =~ s/.*\.([-a-z0-9]+?\...)$/$1/; # we know a real domain
- } else {
- $q = "nic$tld"; # make a random domain and try anyway
- }
- $tld =~ s/^\.//;
- print ">>>>>>>>>Querying $serv ($tld) for $q<<<<<<<<<<\n";
- print whois($q, $serv);
- print "\n";
-}
-close LIST;
-
-print "#" x 78 . "\n";
-foreach (keys %check) {
- print ">>>>>>>>>Querying $_ for $check{$_}<<<<<<<<<<\n";
- print whois($check{$_}, $_);
- print "\n";
-}
-exit 0;
-
-print "#" x 78 . "\n";
-foreach my $s (keys %ripeserv) {
- foreach (@ripetest) {
- my $q = "$_ $ripeserv{$s}";
- print ">>>>>>>>>Querying $s for $q<<<<<<<<<<\n";
- print whois($q, $s);
- print "\n";
- }
-}
-exit 0;
-
-sub whois {
- my ($query, $serv, $port) = @_;
- my (@result, $remote);
-
- eval {
- local $^W=0;
- $remote = IO::Socket::INET->new(
- Timeout => 15, PeerAddr => $serv, PeerPort => $port || 43
- );
- };
- if (defined $remote and ($@ eq '')) {
- print $remote "$query\r\n";
- @result = <$remote>;
- close $remote;
- } elsif ($@ ne '') {
- @result = ("FATAL: $@");
- } else {
-# FIXME should disconnect from rwhois servers or the connection will hang
-# until the timeout of the server
- @result = ("$!\n");
- }
- return @result;
-}
-