diff options
| author | ivan <ivan> | 2004-07-06 08:33:56 +0000 | 
|---|---|---|
| committer | ivan <ivan> | 2004-07-06 08:33:56 +0000 | 
| commit | 6787d5247619f651cba138779fc93f016be9bcee (patch) | |
| tree | 1e2ebe745d53c8c93c4017879a37fc0610874e41 | |
| parent | 82c87cf80df0b40927a2afdde772da2369311e43 (diff) | |
0.32 (and then some) released
| -rw-r--r-- | install/5.005/Net-Whois-Raw/COPYRIGHT | 7 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/Changes | 53 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/MANIFEST | 10 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/META.yml | 11 | ||||
| -rwxr-xr-x | install/5.005/Net-Whois-Raw/Makefile.PL | 24 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/README | 129 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm | 393 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm | 509 | ||||
| -rwxr-xr-x | install/5.005/Net-Whois-Raw/pwhois | 106 | ||||
| -rw-r--r-- | install/5.005/Net-Whois-Raw/t/01.t | 22 | 
10 files changed, 0 insertions, 1264 deletions
diff --git a/install/5.005/Net-Whois-Raw/COPYRIGHT b/install/5.005/Net-Whois-Raw/COPYRIGHT deleted file mode 100644 index 78fd31252..000000000 --- a/install/5.005/Net-Whois-Raw/COPYRIGHT +++ /dev/null @@ -1,7 +0,0 @@ -Copyright 2003-2003 Walery Studennikov -Copyright 2003-2003 Corris Randall -Copyright 2003-2003 Gabor Szabo -Copyright 2000-2002 Ariel Brosh - -This package is free software. You may redistribute it or modify it under -the same terms as Perl itself. diff --git a/install/5.005/Net-Whois-Raw/Changes b/install/5.005/Net-Whois-Raw/Changes deleted file mode 100644 index 68310b0c6..000000000 --- a/install/5.005/Net-Whois-Raw/Changes +++ /dev/null @@ -1,53 +0,0 @@ -Revision history for Perl extension Net::Whois::Raw. - -0.01  Jul 05 12:35:47 2000 -	- original version; created by h2xs 1.19 - -0.02 - 0.22  ??? -	-  ??? - -0.23  Mar 25 09:23:37 PST 2003 -	- only exports &whois by default, the other variables are exportable still. -	- incorporated new whois servers ( thanks Toni Mueller <support@oeko.net> ) -	- now tests the main tlds -	- added some more regexen to strip out disclaimers and such ( for $OMIT_MSG > 2 ). -	- moved %servers to %Net::Whois::Raw::Data::servers - -0.24  Nov 18 2003	Walery Studennikov <despair@cpan.org> -	- fixed whois server for .org domains and add new whois servers -	  for multilingual domains -	- fixed recursive whois requests for .org domains -	- new fail-check and strip patterns added -	- more verbose error messages -	- added support for third level domains -	- some bugfixes - -0.25  Nov 21 2003	Walery Studennikov <despair@cpan.org> -	- fixed multilingual domains whois via whois.melbourneit.com server -	- whois_config function for setting config variables -	  (if setting imported variables $OMIT_MSG, $CHECK_FAIL etc. -	  doesn't work for some reason, for example because of -	  namespace problems in mod_perl scripts) - -0.26  Jan 09 2004	Walery Studennikov <despair@cpan.org> -	- added recursive whois requests for .cc domains -	- fixed recursive whois requests for whois.crsnic.net - -0.27  Feb 10 2004	Alex Kapranoff <alex@kapranoff.ru> -	- patch to check availability of .info and .biz domains - -0.28  Feb 20 2004	Alex Kapranoff <alex@kapranoff.ru> -	- fixed documentation for pwhois.PL - -0.29  Feb 24 2004	Walery Studennikov <despair@cpan.org> -	- fixed extra rules which strips the copyright message or disclaimer -	- removed pwhois.PL. "pwhois" is shipped now instead. -	- data structures in Net/Whois/Raw/Data.pm reformatted -	- new strip patterns for whois.crsnic.net - - -0.30  Mar 15 2004	Walery Studennikov <despair@cpan.org> -	- added strip rules for whois.dns.be - -0.31  Mar 19 2004	Walery Studennikov <despair@cpan.org> -	- more robust recursive whois queries diff --git a/install/5.005/Net-Whois-Raw/MANIFEST b/install/5.005/Net-Whois-Raw/MANIFEST deleted file mode 100644 index 643f3cec5..000000000 --- a/install/5.005/Net-Whois-Raw/MANIFEST +++ /dev/null @@ -1,10 +0,0 @@ -Changes -MANIFEST -Makefile.PL -lib/Net/Whois/Raw.pm -lib/Net/Whois/Raw/Data.pm -t/01.t -pwhois -README -COPYRIGHT -META.yml                                Module meta-data (added by MakeMaker) diff --git a/install/5.005/Net-Whois-Raw/META.yml b/install/5.005/Net-Whois-Raw/META.yml deleted file mode 100644 index 56efaa68e..000000000 --- a/install/5.005/Net-Whois-Raw/META.yml +++ /dev/null @@ -1,11 +0,0 @@ -# http://module-build.sourceforge.net/META-spec.html -#XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX# -name:         Net-Whois-Raw -version:      0.29 -version_from: lib/Net/Whois/Raw.pm -installdirs:  site -requires: -    IO::Socket:                    1 - -distribution_type: module -generated_by: ExtUtils::MakeMaker version 6.17 diff --git a/install/5.005/Net-Whois-Raw/Makefile.PL b/install/5.005/Net-Whois-Raw/Makefile.PL deleted file mode 100755 index abd0ca3e9..000000000 --- a/install/5.005/Net-Whois-Raw/Makefile.PL +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/perl -w - -use ExtUtils::MakeMaker; -# See lib/ExtUtils/MakeMaker.pm for details of how to influence -# the contents of the Makefile that is written. - -sub MY::postamble { -        package MY; -        shift->SUPER::postamble . <<'MAKE'; -dist : README - -README : lib/Net/Whois/Raw.pm -	@$(PERL) -MPod::Text -e "pod2text('$<');" > $@ - -MAKE -} - -WriteMakefile( -    'NAME'	=> 'Net::Whois::Raw', -    'VERSION_FROM' => 'lib/Net/Whois/Raw.pm', # finds $VERSION -    'PREREQ_PM' => {'IO::Socket' => 1.0}, -    'EXE_FILES' => ['pwhois'], -    'dist' => {'COMPRESS' => 'gzip --best --force'}, -); diff --git a/install/5.005/Net-Whois-Raw/README b/install/5.005/Net-Whois-Raw/README deleted file mode 100644 index 916a53f3b..000000000 --- a/install/5.005/Net-Whois-Raw/README +++ /dev/null @@ -1,129 +0,0 @@ -NAME -    Net::Whois::Raw - Perl extension for unparsed raw whois information - -SYNOPSIS -      use Net::Whois::Raw qw( whois ); -   -      $s = whois('perl.com'); -      $s = whois('funet.fi'); -      $s = whois('yahoo.co.uk'); - -            ### if you do "use Net::Whois::Raw qw( whois $OMIT_MSG $CHECK_FAIL  -            ###              $CACHE_DIR $CACHE_TIME $USE_CNAMES $TIMEOUT ); -            ### you can use these: - -      $OMIT_MSG = 1; # This will attempt to strip several known copyright -                    messages and disclaimers sorted by servers. -                    Default is to give the whole response. - -      $OMIT_MSG = 2; # This will try some additional stripping rules -                    if none are known for the spcific server. - -      $CHECK_FAIL = 1; # This will return undef if the response matches -                    one of the known patterns for a failed search, -                    sorted by servers. -                    Default is to give the textual response. - -      $CHECK_FAIL = 2; # This will match against several more rules -                    if none are known for the specific server. - -      $CACHE_DIR = "/var/spool/pwhois/"; # Whois information will be -                    cached in this directory. Default is no cache. - -      $CACHE_TIME = 24; # Cache files will be cleared after not accessed -                    for a specific number of hours. Documents will not be -                    cleared if they keep get requested for, independent -                    of disk space. Default is not to clear the cache. - -      $USE_CNAMES = 1; # Use whois-servers.net to get the whois server -                    name when possible. Default is to use the  -                    hardcoded defaults. - -      $TIMEOUT = 10; # Cancel the request if connection is not made within -                    a specific number of seconds. - -      Note: as of version 0.21, extra data will be loaded only if the -      OMIT_MSG or CHECK_FAIL flags were used, in order to reduce memory usage. - -DESCRIPTION -    Net::Whois::Raw queries NetworkSolutions and follows the Registrar: -    answer for ORG, EDU, COM and NET domains. For other TLDs it uses the -    whois-servers.net namespace. ($TLD.whois-servers.net). - -    Setting the variables $OMIT_MSG and $CHECK_FAIL will match the results -    against a set of known patterns. The first flag will try to omit the -    copyright message/disclaimer, the second will attempt to determine if -    the search failed and return undef in such a case. - -    IMPORTANT: these checks merely use pattern matching; they will work on -    several servers but certainly not on all of them. - -    (This features were contributed by Walery Studennikov despair@sama.ru) - -AUTHOR -    Original author Ariel Brosh, schop@cpan.org, Inspired by jwhois.pl -    available on the net. - -    Since Ariel has passed away in September 2002: - -    Past maintainers Gabor Szabo, gabor@perl.org.il, Corris Randall -    corris@cpan.org - -    Current Maintainer: Walery Studennikov despair@cpan.org - -CREDITS -    Fixed regular expression to match hyphens. (Peter Chow, -    peter@interq.or.jp) - -    Added support for Tonga TLD. (.to) (Peter Chow, peter@interq.or.jp) - -    Added support for reverse lookup of IP addresses via the ARIN registry. -    (Alex Withers awithers@gonzaga.edu) - -    This will work now for RIPE addresses as well, according to a -    redirection from ARIN. (Philip Hands phil@uk.alcove.com, Trevor Peirce -    trev@digitalcon.ca) - -    Added the pattern matching switches, (Walery Studennikov -    despair@sama.ru) - -    Modified pattern matching, added cache. (Tony L. Svanstrom -    tony@svanstrom.org) - -CHANGES -    See file "Changes" in the distribution - -CLARIFICATION -    As NetworkSolutions got most of the domains of InterNic as legacy, we -    start by querying their server, as this way one whois query would be -    sufficient for many domains. Starting at whois.internic.net or -    whois.crsnic.net will result in always two requests in any case. - -NOTE -    Some users complained that the die statements in the module make their -    CGI scripts crash. Please consult the entries on eval and die on -    perlfunc about exception handling in Perl. - -COPYRIGHT -    Copyright 2000-2002 Ariel Brosh. Copyright 2003-2003 Gabor Szabo. -    Copyright 2003-2003 Corris Randall. Copyright 2003-2003 Walery -    Studennikov. - -    This package is free software. You may redistribute it or modify it -    under the same terms as Perl itself. - -    I apologize for any misunderstandings caused by the lack of a clear -    licence in previous versions. - -COMMERCIAL SUPPORT -    Not available anymore. - -LEGAL -    Notice that registrars forbid querying their whois servers as a part of -    a search engine, or querying for a lot of domains by script. Also, -    omitting the copyright information (that was requested by users of this -    module) is forbidden by the registrars. - -SEE ALSO -    perl(1), Net::Whois, whois. - diff --git a/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm b/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm deleted file mode 100644 index 04db67184..000000000 --- a/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm +++ /dev/null @@ -1,393 +0,0 @@ -package Net::Whois::Raw; - -require Net::Whois::Raw::Data; - -use strict; -use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $OMIT_MSG $CHECK_FAIL -	%notfound %strip $CACHE_DIR $CACHE_TIME $USE_CNAMES -	$TIMEOUT); -use IO::Socket; - -require Exporter; - -@ISA = qw(Exporter); - -@EXPORT    = qw( whois whois_config ); ### It's bad manners to export lots. -@EXPORT_OK = qw( $OMIT_MSG $CHECK_FAIL $CACHE_DIR $CACHE_TIME $USE_CNAMES $TIMEOUT); - -$VERSION = '0.31'; - -($OMIT_MSG, $CHECK_FAIL, $CACHE_DIR, $CACHE_TIME, $USE_CNAMES, $TIMEOUT) = (0) x 6; - -sub whois { -    my ($dom, $srv) = @_; -    my $res; -    unless ($srv) { -        ($res, $srv) = query($dom); -    } else { -        $res = _whois($dom, uc($srv)); -    } -    finish($res, $srv); -} - -sub whois_config { -    my ($par) = @_; -    my @parnames = qw(OMIT_MSG CHECK_FAIL CACHE_DIR CACHE_TIME USE_CNAMES TIMEOUT); -    foreach my $parname (@parnames) { -	if (exists($par->{$parname})) { -	    eval('$'.$parname.'='.int($par->{$parname})); -	} -    } -} - -sub query { -    my $dom = shift; -    my $tld; -    if ($dom =~ /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/) { -        $tld = "IP"; -    } else {  -	my @alltlds = keys %Net::Whois::Raw::Data::servers; -	@alltlds = sort { dlen($b) <=> dlen($a) } @alltlds; -	foreach my $awailtld (@alltlds) { -	    $awailtld = lc $awailtld; -	    if ($dom =~ /(.+?)\.($awailtld)$/) { -		$tld = uc $2; -		last; -	    } -	} -	unless ($tld) { -	    my @tokens = split(/\./, $dom); -    	    $tld = uc($tokens[-1]);  -	} -    } - - -    $dom =~ s/.NS$//i; -    my $cname = "$tld.whois-servers.net"; -    my $srv = $Net::Whois::Raw::Data::servers{$tld} || $cname; -    $srv = $cname if $USE_CNAMES && gethostbyname($cname); -    my $flag = ( -	$srv eq 'whois.crsnic.net' || -	$srv eq 'whois.publicinterestregistry.net' || -	$srv eq 'whois.nic.cc' || -	$tld eq 'ARPA' -    ); -    my $res = do_whois($dom, uc($srv), $flag, [], $tld); -    wantarray ? ($res, $srv) : $res; -} - -sub do_whois { -    my ($dom) = @_; # receives 4 parameters, do NOT shift -    return _whois(@_) unless $CACHE_DIR; -    mkdir $CACHE_DIR, 0644; -    if (-f "$CACHE_DIR/$dom") { -        if (open(I, "$CACHE_DIR/$dom")) { -            my $res = join("", <I>); -            close(I); -            return $res; -        } -    } -    my $res = _whois(@_); -    return $res unless $res; -    return $res unless open(O, ">$CACHE_DIR/$dom"); -    print O $res; -    close(O); - - -    return $res unless $CACHE_TIME; - -    my $now = time; -    foreach (glob("$CACHE_DIR/*.*")) { -        my $atime = (stat($_))[8]; -        my $elapsed = $now - $atime; -        unlink $_ if ($elapsed / 3600 > $CACHE_TIME);  -    } -    $res; -} - -sub finish { -    my ($text, $srv) = @_; -    return $text unless $CHECK_FAIL || $OMIT_MSG; -    *notfound = \%Net::Whois::Raw::Data::notfound; -    *strip = \%Net::Whois::Raw::Data::strip; - -    my $notfound = $notfound{lc($srv)}; -    my @strip = $strip{lc($srv)} ? @{$strip{lc($srv)}} : (); -    my @lines; -    MAIN: foreach (split(/\n/, $text)) { -        return undef if $CHECK_FAIL && $notfound && /$notfound/; -        if ($OMIT_MSG) { -            foreach my $re (@strip) { -                next MAIN if (/$re/); -            } -        } -        push(@lines, $_); -    } -    local ($_) = join("\n", @lines, ""); - -    if ($CHECK_FAIL > 1) { -	return undef unless check_existance($_); -    } - -    if ($OMIT_MSG > 1) {	 -        s/The Data.+(policy|connection)\.\n//is; -        s/% NOTE:.+prohibited\.//is; -        s/Disclaimer:.+\*\*\*\n?//is; -        s/NeuLevel,.+A DOMAIN NAME\.//is; -        s/For information about.+page=spec//is; -        s/NOTICE: Access to.+this policy.//is; -        s/The previous information.+completeness\.//s; -        s/NOTICE AND TERMS OF USE:.*modify these terms at any time\.//s; -        s/TERMS OF USE:.*?modify these terms at any time\.//s; -        s/NOTICE:.*expiration for this registration\.//s; - -	s/By submitting a WHOIS query.+?DOMAIN AVAILABILITY.\n?//s; -	s/Registration and WHOIS.+?its accuracy.\n?//s; -        s/Disclaimer:.+?\*\*\*\n?//s; -	s/The .COOP Registration .+ Information\.//s; -	s/Whois Server Version \d+\.\d+.//is; -	s/NeuStar,.+www.whois.us\.//is; -        s/\n?Domain names in the \.com, .+ detailed information.\n?//s; -        s/\n?The Registry database .+?Registrars\.\n//s; -        s/\n?>>> Last update of .+? <<<\n?//; -        s/% .+?\n//gs; -    } -    $_; -} - -sub _whois { -    my ($dom, $srv, $flag, $ary, $tld) = @_; -    my $state; - -    my $sock; -    eval { -        local $SIG{'ALRM'} = sub { die "Connection timeout to $srv" }; -        alarm $TIMEOUT if $TIMEOUT; -        $sock = new IO::Socket::INET("$srv:43") || die "$srv: $!"; -    }; -    alarm 0; -    die $@ if $@; -    my $israce = $dom =~ /ra--/ || $dom =~ /bq--/; -    my $whoisquery = $dom; -    if ($srv eq 'WHOIS.MELBOURNEIT.COM' && $israce) { -	$whoisquery .= ' race'; -    } -    #warn "$srv: $whoisquery ($OMIT_MSG, $CHECK_FAIL, $CACHE_DIR, $CACHE_TIME, $USE_CNAMES, $TIMEOUT)\n"; -    print $sock "$whoisquery\r\n"; -    my @lines = <$sock>; -    close($sock); -    my $answer = join '', @lines; -    if ($flag) { -        foreach (@lines) { -            $state ||= (/Registrar:/); -            if ( $state && /Whois Server:\s*([A-Za-z0-9\-_\.]+)/ ) { -                my $newsrv = uc("$1"); -                next if (($newsrv) eq uc($srv)); -                return undef if (grep {$_ eq $newsrv} @$ary); -		my $whois = eval { _whois($dom, $newsrv, $flag, [@$ary, $srv]) }; -		if ($@ && !$whois || $whois && !check_existance($whois)) { -		    return $answer; -		} -                return $whois; -            } -            if (/^\s+Maintainer:\s+RIPE\b/ && $tld eq 'ARPA') { -                my $newsrv = uc($Net::Whois::Raw::Data::servers{'RIPE'}); -                next if ($newsrv eq $srv); -                return undef if (grep {$_ eq $newsrv} @$ary); -                my $whois = eval { _whois($dom, $newsrv, $flag, [@$ary, $srv]) }; -		if ($@ && !$whois) { -		    return $answer; -		} -                return $whois; -            } -        } -    } -    my $whois = join("", @lines); - -    if ($whois =~ /To single out one record, look it up with \"xxx\",/s) { -        my $newsrv = uc('whois.networksolutions.com'); -        return _whois($dom, $newsrv, $flag, [@{$ary||[]}, $srv]); -    } -     -    return $whois; -} - -sub dlen { -    my ($str) = @_; -    my $dotcount = $str =~ tr/././; -    return length($str) * (1 + $dotcount); -} - - -sub check_existance { -    $_ = $_[0]; - -    return undef if -	/is unavailable/is || -	/No entries found for the selected source/is || -	/Not found:/s || -	/No match\./s || -	/is available/is || -	/Not found/is && -	    !/ your query returns "NOT FOUND"/ && -	    !/Domain not found locally/ || -	/No match for/is || -	/No Objects Found/s || -	/No domain records were found/s || -	/No such domain/s || -	/No entries found in the /s || -	/Unable to find any information for your query/s || -	/is not registered and may be available for registration/s; -    return 1; -} - - -# Preloaded methods go here. - -# Autoload methods go after =cut, and are processed by the autosplit program. - -1; -__END__ -# Below is the stub of documentation for your module. You better edit it! - -=head1 NAME - -Net::Whois::Raw - Perl extension for unparsed raw whois information - -=head1 SYNOPSIS - -  use Net::Whois::Raw qw( whois ); -   -  $s = whois('perl.com'); -  $s = whois('funet.fi'); -  $s = whois('yahoo.co.uk'); - -	### if you do "use Net::Whois::Raw qw( whois $OMIT_MSG $CHECK_FAIL  -	###              $CACHE_DIR $CACHE_TIME $USE_CNAMES $TIMEOUT ); -	### you can use these: - -  $OMIT_MSG = 1; # This will attempt to strip several known copyright -		messages and disclaimers sorted by servers. -		Default is to give the whole response. - -  $OMIT_MSG = 2; # This will try some additional stripping rules -		if none are known for the spcific server. - -  $CHECK_FAIL = 1; # This will return undef if the response matches -		one of the known patterns for a failed search, -		sorted by servers. -		Default is to give the textual response. - -  $CHECK_FAIL = 2; # This will match against several more rules -		if none are known for the specific server. - -  $CACHE_DIR = "/var/spool/pwhois/"; # Whois information will be -		cached in this directory. Default is no cache. - -  $CACHE_TIME = 24; # Cache files will be cleared after not accessed -		for a specific number of hours. Documents will not be -		cleared if they keep get requested for, independent -		of disk space. Default is not to clear the cache. - -  $USE_CNAMES = 1; # Use whois-servers.net to get the whois server -		name when possible. Default is to use the  -		hardcoded defaults. - - -  $TIMEOUT = 10; # Cancel the request if connection is not made within -		a specific number of seconds. - -  Note: as of version 0.21, extra data will be loaded only if the -  OMIT_MSG or CHECK_FAIL flags were used, in order to reduce memory usage. - -=head1 DESCRIPTION - -Net::Whois::Raw queries NetworkSolutions and follows the Registrar: answer -for ORG, EDU, COM and NET domains. -For other TLDs it uses the whois-servers.net namespace. -(B<$TLD>.whois-servers.net). - -Setting the variables $OMIT_MSG and $CHECK_FAIL will match the results -against a set of known patterns. The first flag will try to omit the -copyright message/disclaimer, the second will attempt to determine if -the search failed and return undef in such a case. - -B<IMPORTANT>: these checks merely use pattern matching; they will work -on several servers but certainly not on all of them. - -(This features were contributed by Walery Studennikov B<despair@sama.ru>) - -=head1 AUTHOR - -Original author Ariel Brosh, B<schop@cpan.org>,  -Inspired by jwhois.pl available on the net. - -Since Ariel has passed away in September 2002: - -Past maintainers Gabor Szabo, B<gabor@perl.org.il>, -Corris Randall B<corris@cpan.org> - -Current Maintainer: Walery Studennikov B<despair@cpan.org> - -=head1 CREDITS - -Fixed regular expression to match hyphens. (Peter Chow, -B<peter@interq.or.jp>) - -Added support for Tonga TLD. (.to) (Peter Chow, B<peter@interq.or.jp>) - -Added support for reverse lookup of IP addresses via the ARIN registry. (Alex Withers B<awithers@gonzaga.edu>) - -This will work now for RIPE addresses as well, according to a redirection from ARIN. (Philip Hands B<phil@uk.alcove.com>, Trevor Peirce B<trev@digitalcon.ca>) - -Added the pattern matching switches, (Walery Studennikov B<despair@sama.ru>) - -Modified pattern matching, added cache. (Tony L. Svanstrom B<tony@svanstrom.org>) - -=head1 CHANGES - -See file "Changes" in the distribution - - -=head1 CLARIFICATION - -As NetworkSolutions got most of the domains of InterNic as legacy, we -start by querying their server, as this way one whois query would be -sufficient for many domains. Starting at whois.internic.net or -whois.crsnic.net will result in always two requests in any case. - -=head1 NOTE - -Some users complained that the B<die> statements in the module make their -CGI scripts crash. Please consult the entries on B<eval> and -B<die> on L<perlfunc> about exception handling in Perl. - -=head1 COPYRIGHT - -Copyright 2000-2002 Ariel Brosh. -Copyright 2003-2003 Gabor Szabo. -Copyright 2003-2003 Corris Randall. -Copyright 2003-2003 Walery Studennikov. - -This package is free software. You may redistribute it or modify it under -the same terms as Perl itself. - -I apologize for any misunderstandings caused by the lack of a clear -licence in previous versions. - -=head1 COMMERCIAL SUPPORT - -Not available anymore. - -=head1 LEGAL - -Notice that registrars forbid querying their whois servers as a part of -a search engine, or querying for a lot of domains by script.  -Also, omitting the copyright information (that was requested by users of this  -module) is forbidden by the registrars. - -=head1 SEE ALSO - -L<perl(1)>, L<Net::Whois>, L<whois>. - -=cut diff --git a/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm b/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm deleted file mode 100644 index c505117aa..000000000 --- a/install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm +++ /dev/null @@ -1,509 +0,0 @@ -package Net::Whois::Raw::Data; - -use strict; -use vars qw(%notfound %strip %servers); - -%servers = qw( -    COM    whois.crsnic.net -    NET    whois.crsnic.net -    EDU    whois.educause.net -    ORG    whois.publicinterestregistry.net -    ARPA   whois.arin.net -    RIPE   whois.ripe.net -    MIL    whois.nic.mil -    COOP   whois.nic.coop -    MUSEUM whois.museum - -    BIZ    whois.neulevel.biz -    INFO   whois.afilias.net -    NAME   whois.nic.name -    GOV    whois.nic.gov -    AERO   whois.information.aero -    NS     whois.internic.net -    IP     whois.ripe.net - -    AD  whois.ripe.net -    AL  whois.ripe.net -    AM  whois.ripe.net -    AS  whois.gdns.net -    AT  whois.nic.at -    AU  box2.aunic.net -    AZ  whois.ripe.net -    BA  whois.ripe.net -    BE  whois.dns.be -    BG  whois.ripe.net -    BR  whois.nic.br -    BY  whois.ripe.net -    CA  eider.cira.ca -    CC  whois.nic.cc -    CH  domex.switch.ch -    CK  whois.ck-nic.org.ck -    CL  nic.cl -    CN  log.cnnic.net.cn -    CX  whois.nic.cx -    CY  whois.ripe.net -    CZ  dc1.eunet.cz -    DE  whois.denic.de -    DK  whois.dk-hostmaster.dk -    DO  ns.nic.do -    DZ  whois.ripe.net -    EE  whois.ripe.net -    EG  whois.ripe.net -    ES  whois.ripe.net -    FI  whois.ripe.net -    FO  whois.ripe.net -    FR  winter.nic.fr -    GA  whois.ripe.net -    GB  whois.ripe.net -    GE  whois.ripe.net -    GL  whois.ripe.net -    GM  whois.ripe.net -    GR  whois.ripe.net -    GS  whois.adamsnames.tc -    HK  whois.hkdnr.net.hk -    HR  whois.ripe.net -    HU  whois.nic.hu -    ID  muara.idnic.net.id -    IE  whois.domainregistry.ie -    IL  whois.isoc.org.il -    IN  whois.ncst.ernet.in -    IS  horus.isnic.is -    IT  whois.nic.it -    JO  whois.ripe.net -    JP  whois.nic.ad.jp -    KG  whois.domain.kg -    KH  whois.nic.net.kh -    KR  whois.krnic.net -    LA  whois.nic.la -    LI  domex.switch.ch -    LK  arisen.nic.lk -    LT  ns.litnet.lt -    LU  whois.dns.lu -    LV  whois.ripe.net -    MA  whois.ripe.net -    MC  whois.ripe.net -    MD  whois.ripe.net -    MM  whois.nic.mm -    MS  whois.adamsnames.tc -    MT  whois.ripe.net -    MX  whois.nic.mx -    NL  gw.domain-registry.nl -    NO  ask.norid.no -    NU  whois.worldnames.net -    NZ  akl-iis.domainz.net.nz -    PL  nazgul.nask.waw.pl -    PT  whois.ripe.net -    RO  whois.rotld.ro -    RU  whois.ripn.net -    SE  ear.nic-se.se -    SG  qs.nic.net.sg -    SH  whois.nic.sh -    SI  whois.arnes.si -    SK  whois.ripe.net -    SM  whois.ripe.net -    ST  whois.nic.st -    SU  whois.ripn.net -    TC  whois.adamsnames.tc -    TF  whois.adamsnames.tc -    TH  whois.thnic.net -    TJ  whois.nic.tj -    TN  whois.ripe.net -    TO  whois.tonic.to -    TR  whois.ripe.net -    TW  whois.twnic.net -    UA  whois.net.ua -    UK  whois.nic.uk -    US  whois.nic.us -    VA  whois.ripe.net -    VG  whois.adamsnames.tc -    WS  whois.worldsite.ws -    YU  whois.ripe.net -    ZA  apies.frd.ac.za - -    RA--AQ5D4PA	whois.i-dns.net -    RA--AQ6TKQQ	whois.i-dns.net -    RA--AQ7EAMY	whois.i-dns.net -    XN--P1AG	ru.whois.i-dns.net -    XN--P1AG	ru.whois.i-dns.net -    XN--J1AEF	whois.i-dns.net -    XN--E1APQ	whois.i-dns.net -    XN--C1AVG	whois.i-dns.net - -    NET.RU	whois.ripn.net -    ORG.RU	whois.ripn.net -    PP.RU	whois.ripn.net -    SPB.RU	whois.relcom.ru -    MSK.RU	whois.relcom.ru -    RU.NET	whois.relcom.ru -); - -# These do not seem to work -#         CN  log.cnnic.net.cn -#         DK  whois.dk-hostmaster.dk -#         US  whois.isi.edu -# These serve only several subdomains -#         ZA  apies.frd.ac.za - - -%notfound = ( -    'whois.nic.cc' => '^No match for', -    'whois.arin.net' => '^No match for', -    'whois.nic.br' => 'No match for', -    'ear.nic-se.se' => 'No data found', -    'whois.nic.sh' => '^No match for', -    'whois.nic.mx' => '^Nombre del Dominio:', -    'whois.domainregistry.ie' => 'There was no match', -    'domex.switch.ch' => '^We do not have an entry in our database matching your', -    'whois.dns.lu' => 'No entries found', -    'whois.worldsite.ws' => 'No match for', -    'whois.nic.it' => '^No entries found', -    'whois.nic.coop' => 'No Objects Found', -    'whois.nic.at' => 'nothing found', -    'ask.norid.no' => 'no matches', -    'whois.nic.uk' => '^\\s*No match for', -    'whois.nic.ad.jp' => 'No match', -    'whois.arnes.si' => 'No entries found', -    'whois.tonic.to' => 'No match for', -    'whois.hkdnr.net.hk' => '^No Match for', -    'whois.worldnames.net' => 'NO MATCH for domain', -    'whois.rotld.ro' => 'No entries found', -    'whois.nic.st' => '^No entries found', -    'whois.isoc.org.il' => 'No data was found', -    'eider.cira.ca' => 'Status:\\s*UNAV', -    'whois.nic.tj' => '^No match for', -    'aardvark.dns.be' => 'No such domain', -    'nazgul.nask.waw.pl' => '^Domain name .* does not exists', -    'whois.ncst.ernet.in' => '^No matches', -    'whois.krnic.net' => 'Above domain name is not registered', -    'whois.museum' => '^No information for', -    'whois.net.ua' => 'No entries found', -    'apies.frd.ac.za' => 'No information is available', -    'gw.domain-registry.nl' => 'invalid query', -    'whois.denic.de' => 'No entries found', -    'whois.nic.mil' => '^No match for', -    'horus.isnic.is' => 'No entries found', -    'winter.nic.fr' => 'No entries found', -    'whois.ripe.net' => 'No entries found', -    'whois.ripn.net' => 'No entries found', -    'qs.nic.net.sg' => 'NO entry found', -    'whois.twnic.net' => '^NO MATCH: This domain is', -    'nic.cl' => 'Invalid domain name', -    'whois.gdns.net' => '^Domain Not Found', -    'box2.aunic.net' => 'No entries found', -    'whois.nic.cx' => '^No match for', -    'dc1.eunet.cz' => 'No data found', -    'akl-iis.domainz.net.nz' => 'domain_name_status: 00 Not Listed', -    'ns.litnet.lt' => 'No matches found', -    'whois.adamsnames.tc' => 'is not a domain controlled by', -    'whois.nic.la' => '^NO MATCH for', -    'whois.networksolutions.com' => '(?i)no match', -    'whois.thnic.net' => 'No entries found', -    'whois.neulevel.biz' => '^Not found:', -    'whois.afilias.net' => '^NOT FOUND', -); - -%strip = ( -    'whois.crsnic.net' => [ -	'^TERMS OF USE:', -	'^database through', -	'^automated except', -	'^modify existing', -	'^Services\' \(\"VeriSign\"\)', -	'^information purposes only', -	'^about or related to a', -	'^guarantee its accuracy\.', -	'^by the following terms', -	'^for lawful purposes and', -	'^to: (1) allow, enable,', -	'^unsolicited, commercial', -	'^or facsimile; or \(2\)', -	'^that apply to VeriSign', -	'^repackaging, dissemination', -	'^prohibited without the', -	'^use electronic processes', -	'^query the Whois database', -	'^domain names or modify', -	'^to restrict your access', -	'^operational stability\.', -	'^Whois database for', -	'^reserves the right', - -	'^NOTICE AND TERMS OF USE:', -	'^Data in Network Solutions', -	'^purposes only, and to assist', -	'^to a domain name registration', -	'^By submitting a WHOIS query,', -	'^You agree that you may use', -	'^circumstances will you use', -	'^the transmission of mass', -	'^via e-mail, telephone, or', -	'^electronic processes that', -	'^compilation, repackaging,', -	'^high-volume, automated,', -	'^database. Network Solutions', -	'^database in its sole discretion,', -	'^querying of the WHOIS database', -	'^Network Solutions reserves the', - -	'^NOTICE: The expiration date', -	'^registrar\'s sponsorship of', -	'^currently set to expire\.', -	'^date of the domain name', -	'^registrar.  Users may', -	'^view the registrar\'s', -	'^to: \(1\) allow, enable,', -	'^The Registry database', -	'^Registrars\.', -	'^Domain not found locally,', -	'^Local WHOIS DB must be out', - -	'^Whois Server Version', -	'^Domain names in the .com', -	'^with many different', -	'^for detailed information\.', - -	'^>>> Last update of whois database', -	'^$', -    ], -    'whois.tonic.to' => [ -	'^Tonic whoisd', -    ], -    'whois.net.ua' => [ -	'^%', -    ], -    'whois.nic.cx' => [ -	'^ Registrar: Christmas Island', -	'^ Whois Server: whois.nic.cx', -    ], -    'gw.domain-registry.nl' => [ -	'Rights restricted by copyright', -	'http://www.domain-registry.nl', -    ], -    'whois.denic.de' => [ -	'^%', -    ], -    'whois.gdns.net' => [ -	'^\\w+ Whois Server', -	'^Access to .* WHOIS information is provided to', -	'^determining the contents of a domain name', -	'^registrar database.  The data in', -	'^informational purposes only, and', -	'^Compilation, repackaging, dissemination,', -	'^in its entirety, or a substantial portion', -	'prior written permission.  By', -	'^by this policy.  All rights reserved.', -    ], -    'whois.isoc.org.il' => [ -	'^%', -    ], -    'whois.dns.lu' => [ -	'^%', -    ], -    'whois.worldnames.net' => [ -	'^----------------------------------', -	'^.\\w+ Domain .* Whois service', -	'^Copyright by .* Domain LTD', -	'^----------------------------------', -	'^Database last updated', -    ], -    'whois.nic.sh' => [ -	'^NIC Whois Server', -    ], -    'whois.nic.coop' => [ -	'^%', -	'^ The .COOP Registration', -	'^ Please use the', -    ], -    'domex.switch.ch' => [ -	'^whois: This information is subject', -	'^See http', -    ], -    'whois.twnic.net' => [ -	'^Registrar:', -	'^URL: http://rs.twnic.net.tw', -    ], -    'nic.cl' => [ -	'^cl.cl:', -	'^Más información: http://www.nic.cl/', -    ], -    'whois.nic.mx' => [ -	'^------------------', -	'^La información que ha', -	'^relacionados con la', -	'^DNS administrado por el NIC-México.', -	'^Queda absolutamente prohibido', -	'^envío de e-mail no solicitado', -	'^productos y servicios', -	'^del NIC-México.', -	'^La base de datos generada', -	'^protegida por las leyes de', -	'^internacionales sobre la materia.', -    ], -    'whois.domainregistry.ie' => [ -	'^%', -    ], -    'ns.litnet.lt' => [ -	'^%', -    ], -    'dc1.eunet.cz' => [ -	'^%', -    ], -    'whois.ripn.net' => [ -	'^%', -    ], -    'whois.nic.uk' => [ -	'^The .* Registration Host contains information', -	'^registrations in the .*co.uk', -	'and .*\\.uk second-level domains.', -    ], -    'whois.nic.br' => [ -	'^%', -    ], -    'whois.krnic.net' => [ -	'^Korea Internet Information Service', -	'^20\\d\\d³â 7¿ù 2ÀϺÎÅÍ´Â °³¼±µÈ Whois', -	'^.com, .net, .org', -    ], -    'whois.arnes.si' => [ -	'^\\*', -    ], -    'nazgul.nask.waw.pl' => [ -	'^%', -    ], -    'whois.nic.la' => [ -	'^   WHOIS server', -	'^   The Data in the', -	'for information purposes,', -	'^   and to assist persons in obtaining', -	'^   domain name registration record. Sterling Holdings, Limited,', -	'^   does not guarantee its accuracy.', -	'^   you will use this Data only for lawful', -	'^   circumstances will you use this Data', -	'^   \\(1\\) allow, enable, or otherwise s', -	'^   unsolicited, commercial advertising', -	'^   \\(spam\\); or', -	'^   that apply to Sterling Holdings', -	'^   Sterling Holdings .* reserves the right to modify', -	'^   terms at any time. By submitting this', -	'^   policy.', -    ], -    'horus.isnic.is' => [ -	'^%', -    ], -    'whois.rotld.ro' => [ -	'^%', -    ], -    'whois.nic.st' => [ -	'^The data in the .* database is provided', -	'^The .* Registry does not guarantee', -	'^The data in the .* database is protected', -	'^By submitting a .* query, you agree that you will', -	'^The Domain Council of .* reserves the right', -    ], -    'ask.norid.no' => [ -	'^%', -    ], -    'whois.hkdnr.net.hk' => [ -	'^Whois server', -	'^Domain names in the', -	'^and .* can now be registered', -	'^Go to http://www.hkdnr.net.hk', -	'^---------', -	'^The Registry contains ONLY', -	'^.* and .*\\.HK domains.', -    ], -    'whois.arin.net' => [ -	'^The ARIN Registration Services Host contains', -	'^Network Information:.*Networks', -	'^Please use the whois server at', -	'^Information and .* for .* Information.', -    ], -    'qs.nic.net.sg' => [ -	'^\\*', -    ], -    'akl-iis.domainz.net.nz' => [ -	'^%', -    ], -    'whois.nic.hu' => [ -	'^%', -    ], -    'whois.worldsite.ws' => [ -	'^Welcome to the .* Whois Server', -	'^Use of this service for any', -	'^than determining the', -	'^in the .* to be registered', -	'^prohibited.', -    ], -    'whois.ripe.net' => [ -	'^%', -    ], -    'whois.nic.cc' => [ -	'^This information is', -	'^The Data in eNIC', -	'^Corporation for information', -	'^in obtaining information', -	'^registration record', -	'^accuracy.  By submitting', -	'^will use this Data only', -	'^no circumstances will', -	'^or otherwise support', -	'^commercial advertising', -	'^or \\(2\\) enable high volume', -	'^apply to eNIC Corporation', -	'^reserves the right to', -	'^submitting this query,', -    ], -    'whois.nic.mil' => [ -	'^To single out one record', -	'^handle, shown in parenthesis', -	'^Please be advised that this whois', -	'^All INTERNET Domain, IP Network Number,', -	'^the Internet Registry, RS.INTERNIC.NET.', -    ], -    'box2.aunic.net' => [ -	'^%', -    ], -    'whois.nic.ad.jp' => [ -	'^[', -    ], -    'winter.nic.fr' => [ -	'^Tous droits reserves par copyright.', -	'^Voir http://www.nic.fr', -	'^Rights restricted by copyright.', -	'^See http://www.nic.fr/outils', -    ], -    'ear.nic-se.se' => [ -	'^#', -    ], -    'whois.networksolutions.com' => [ -	'^The Data in', -	'^Solutions for information', -	'^information about or', -	'^Network Solutions does not guarantee', -	'^WHOIS query, you agree that', -	'^purposes and that, under no circumstances', -	'^\\(1\\) allow, enable, or', -	'^unsolicited, commercial advertising', -	'^\\(spam\\); or', -	'^that apply to Network', -	'^reserves the right', -	'^this query, you', -    ], -    'aardvark.dns.be' => [ -	'^%', -    ], -    'whois.dns.be' => [ -	'^%-', -    ], -    'whois.nic.tj' => [ -	'^This Whois server looks up only', -	'^Please see http://nic.tj for more', -	'^Tajikistan, and the Public Registrar Network.', -    ], -    'whois.nic.at' => [ -	'^%', -    ], -); - - -1; diff --git a/install/5.005/Net-Whois-Raw/pwhois b/install/5.005/Net-Whois-Raw/pwhois deleted file mode 100755 index 56d9a7e8d..000000000 --- a/install/5.005/Net-Whois-Raw/pwhois +++ /dev/null @@ -1,106 +0,0 @@ -#!/usr/bin/perl -w - -use Net::Whois::Raw qw( whois $OMIT_MSG $CHECK_FAIL $TIMEOUT $CACHE_DIR ); -use Getopt::Std; -use strict; -use vars qw($opt_s $opt_c $opt_S $opt_C $opt_t $opt_T $opt_h); - -getopts("scSCtT:h"); - -if ($opt_h) { -	print <<EOM; -	$0 [ -s | -S ] [ -c | -C ] [ -t <timeout> ] [ -T] <domain> [ <server> ] - -The -s switch attempts to strip the copyright message or disclaimer. -The -S switch will attempt some exra rules for it. -The -c switch attempts to return an empty answer for failed searches. -The -C switch will attempt some exra rules for it. -The -T switch takes a parameter that is used for the timeout for -connection attempts. -The -t switch enables caching. -EOM -	exit;  -} - - -$OMIT_MSG = $CHECK_FAIL = 0; - -$OMIT_MSG = 1 if $opt_s; -$OMIT_MSG = 2 if $opt_S; -$CHECK_FAIL = 1 if $opt_c; -$CHECK_FAIL = 2 if $opt_C; -$TIMEOUT = $opt_T; - -$CACHE_DIR = undef; -if ($opt_t) { -    if ($^O =~ /Win/) { -        $CACHE_DIR = $ENV{'TEMP'} || "C:\\temp"; -    } else { -        $CACHE_DIR = $ENV{'TEMP'} || "/tmp"; -        my @ent = getpwuid($>); -        if (@ent) { -            foreach ("/tmp/$ent[0]", "$ent[7]/.pwhois") { -                mkdir $_, 0644; -                if (open(O, ">$_/__$$-$$.tmp")) { -                    close(O); -                    unlink "$_/__$$-$$.tmp"; -                    $CACHE_DIR = $_; -                    last; -                 } -            } -        } -    } -} - -my $dom = $ARGV[0] || die "Usage: $0 domain"; - -my $server = $ARGV[1]; - -eval { -	my $result = whois($dom, $server); -	if ($result) { -		print $result; -	} else { -		print STDERR "Failed.\n"; -	} -}; -if ($@) { -	my $err = $@; -	$err =~ s/\s+at \S+ line \d+\.$//; -	print "\nWhois information could not be fetched:\n$err\n"; -	exit -1; -}	 - -__END__ - -=head1 NAME - -pwhois   - Perl written whois client - -=head1 SYNOPSIS - -	pwhois perl.com -	pwhois gnu.org -	pwhois -s police.co.il -	pwhois -c there.is.no.tld.called.foobar -	pwhois yahoo.com whois.networksolutions.com -	pwhois -T 10 funet.fi - -etc etc..... - -=head1 DESCRIPTION - -Just invoke with a domain name, optionally with a whois server name. -The B<-s> switch attempts to strip the copyright message or disclaimer. -The B<-c> switch attempts to return an empty answer for failed searches. -The B<-T> switch takes a parameter that is used for the timeout for -connection attempts. -  -=head1 AUTHOR - -Ariel Brosh, B<schop@cpan.org> - -=head1 SEE ALSO - -L<Net::Whois::Raw>. - diff --git a/install/5.005/Net-Whois-Raw/t/01.t b/install/5.005/Net-Whois-Raw/t/01.t deleted file mode 100644 index dd7ffc466..000000000 --- a/install/5.005/Net-Whois-Raw/t/01.t +++ /dev/null @@ -1,22 +0,0 @@ -# Before `make install' is performed this script should be runnable with -# `make test'. After `make install' it should work as `perl test.pl' - -use strict; - -use Test::More tests => 5; -BEGIN { use_ok('Net::Whois::Raw',qw( whois )) }; - -my @domains = qw(  -	yahoo.com -	freshmeat.net -	freebsd.org -	ucsb.edu -); - -print "The following tests requires internet connection...\n"; - -foreach my $domain ( @domains ) { -	my $txt = whois( $domain ); -	ok($txt =~ /$domain/i, "$domain resolved"); -} -  | 
