From cac5bac7073a35e7d693fb55ce537994324b8e74 Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 6 Jul 2004 08:31:33 +0000 Subject: [PATCH] 0.32 (and then some) released --- install/5.005/Net-Whois-Raw/COPYRIGHT | 7 - install/5.005/Net-Whois-Raw/Changes | 53 --- install/5.005/Net-Whois-Raw/MANIFEST | 10 - install/5.005/Net-Whois-Raw/META.yml | 11 - install/5.005/Net-Whois-Raw/Makefile.PL | 24 - install/5.005/Net-Whois-Raw/README | 129 ------ install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm | 393 ---------------- .../5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm | 509 --------------------- install/5.005/Net-Whois-Raw/pwhois | 106 ----- install/5.005/Net-Whois-Raw/t/01.t | 22 - 10 files changed, 1264 deletions(-) delete mode 100644 install/5.005/Net-Whois-Raw/COPYRIGHT delete mode 100644 install/5.005/Net-Whois-Raw/Changes delete mode 100644 install/5.005/Net-Whois-Raw/MANIFEST delete mode 100644 install/5.005/Net-Whois-Raw/META.yml delete mode 100755 install/5.005/Net-Whois-Raw/Makefile.PL delete mode 100644 install/5.005/Net-Whois-Raw/README delete mode 100644 install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw.pm delete mode 100644 install/5.005/Net-Whois-Raw/lib/Net/Whois/Raw/Data.pm delete mode 100755 install/5.005/Net-Whois-Raw/pwhois delete mode 100644 install/5.005/Net-Whois-Raw/t/01.t 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 ) - - 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 - - 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 - - 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 - - added recursive whois requests for .cc domains - - fixed recursive whois requests for whois.crsnic.net - -0.27 Feb 10 2004 Alex Kapranoff - - patch to check availability of .info and .biz domains - -0.28 Feb 20 2004 Alex Kapranoff - - fixed documentation for pwhois.PL - -0.29 Feb 24 2004 Walery Studennikov - - 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 - - added strip rules for whois.dns.be - -0.31 Mar 19 2004 Walery Studennikov - - 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("", ); - 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: 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) - -=head1 AUTHOR - -Original author Ariel Brosh, B, -Inspired by jwhois.pl available on the net. - -Since Ariel has passed away in September 2002: - -Past maintainers Gabor Szabo, B, -Corris Randall B - -Current Maintainer: Walery Studennikov B - -=head1 CREDITS - -Fixed regular expression to match hyphens. (Peter Chow, -B) - -Added support for Tonga TLD. (.to) (Peter Chow, B) - -Added support for reverse lookup of IP addresses via the ARIN registry. (Alex Withers B) - -This will work now for RIPE addresses as well, according to a redirection from ARIN. (Philip Hands B, Trevor Peirce B) - -Added the pattern matching switches, (Walery Studennikov B) - -Modified pattern matching, added cache. (Tony L. Svanstrom B) - -=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 statements in the module make their -CGI scripts crash. Please consult the entries on B and -B on L 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, L, L. - -=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 < ] [ -T] [ ] - -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 - -=head1 SEE ALSO - -L. - 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"); -} - -- 2.11.0