diff options
-rw-r--r-- | TODO | 5 | ||||
-rw-r--r-- | as_del_list | 10 | ||||
-rw-r--r-- | config.h | 4 | ||||
-rw-r--r-- | data.h | 18 | ||||
-rw-r--r-- | debian/changelog | 23 | ||||
-rw-r--r-- | ip_del_list | 9 | ||||
-rwxr-xr-x | make_ip_del.pl | 2 | ||||
-rw-r--r-- | po/de.po | 86 | ||||
-rw-r--r-- | po/el.po | 80 | ||||
-rw-r--r-- | po/es.po | 80 | ||||
-rw-r--r-- | po/it.po | 66 | ||||
-rw-r--r-- | po/no.po | 78 | ||||
-rw-r--r-- | po/pl.po | 78 | ||||
-rw-r--r-- | tld_serv_list | 102 | ||||
-rw-r--r-- | whois.1 | 19 | ||||
-rw-r--r-- | whois.c | 110 | ||||
-rw-r--r-- | whois.h | 7 | ||||
-rw-r--r-- | whois.spec | 2 |
18 files changed, 423 insertions, 356 deletions
@@ -2,11 +2,6 @@ What about rwhois? Should support the refer attribute of RIPE-189 objects. -I need a procedure for looking up an IPv6 address in a list of prefixes. -Will anybody contribute it? - Add Exodus rwhois server (e.g. 216.35.0.0/16). Add rwhois.verio.net:4321 (e.g. 192.204.0.0/16). -Support queries for "AS8627:fltr-TRANSIT-OUT". - diff --git a/as_del_list b/as_del_list index 5a80f89..f58e067 100644 --- a/as_del_list +++ b/as_del_list @@ -26,18 +26,16 @@ 10074 10239 apnic 12288 13311 ripe 15360 16383 ripe -16384 17407 arin 17567 17616 whois.nic.or.kr 17832 17880 whois.nic.or.kr 17408 18431 apnic -18432 19455 arin -19456 20479 arin 20480 21503 ripe 23552 24575 apnic 24576 25599 ripe 27648 28671 lacnic -### -### DO NOT FORGET TO UPDATE whereas() -### +# catch all: everything else comes from ARIN +0 28671 arin +# EOL marker +0 0 . @@ -1,6 +1,6 @@ /* Program version */ /* not for the inetutils version */ -#define VERSION "4.5.32" +#define VERSION "4.6.0" /* Configurable features */ @@ -11,7 +11,7 @@ #undef ALWAYS_HIDE_DISCL /* Default server */ -#define DEFAULTSERVER "whois.internic.net" +#define DEFAULTSERVER "whois.arin.net" /* Configuration file */ /* @@ -65,13 +65,13 @@ const char *hide_strings[] = { "Access to America Online", "time. By accessing", /* AOL */ "% Access and use restricted", "% http://www.icann", /* GANDI */ "NeuStar, Inc., the Registry", "rules. For details", /* us */ + "The data in this whois", "to abide by these terms.", /* enom */ NULL, NULL }; const char *nic_handles[] = { "net-", "whois.arin.net", "netblk-", "whois.arin.net", - "asn-", "whois.arin.net", "lim-", "whois.ripe.net", "coco-", "whois.corenic.net", "coho-", "whois.corenic.net", @@ -97,6 +97,22 @@ struct ip_del ip_assign[] = { { 0, 0, NULL } }; +struct ip6_del { + unsigned long net; /* bits 16-22 of the address */ + const char *serv; +}; + +struct ip6_del ip6_assign[] = { + { 0x0200, "whois.apnic.net" }, + { 0x0400, "whois.arin.net" }, + { 0x0600, "whois.ripe.net" }, + { 0x0800, "whois.ripe.net" }, + { 0x0A00, "whois.ripe.net" }, + { 0x0C00, "whois.apnic.net" }, + { 0x1200, "whois.lacnic.net" }, + { 0, NULL } +}; + struct as_del { unsigned short first; unsigned short last; diff --git a/debian/changelog b/debian/changelog index 3d2ef42..1439b6c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,26 @@ +whois (4.6.0) unstable; urgency=medium + + * Added .ai .bo, .bt, .dz, .gi, .pn, .tp and .uz TLDs. + * Updated .ae, .ar, .at, .bi, .co, .cu, .do, .fm, .ge, .jo, .kr, .lu, + .lv, .mt, .mu, .mw, .nr, .ph, .pk, .sa, .sb, .ua, .uy, .vi, .vu TLDs + (courtesy of Frιdιric L. W. Meunier). + * Rewritten the IPv6-matching code. Fixed a few bugs there too. + * Generalized and deuglyfied some parts of the code. + * Added support for RPSL objects like AS8627:fltr-TRANSIT-OUT. + * Objects with no dot or hyphen and beginning with a ! are looked up + in whois.networksolutions.com. + * The new default server is whois.arin.net since it will only be used + for network names. + * Implemented a 60 seconds timeout on queries (Closes: #170255). + + -- Marco d'Itri <md@linux.it> Thu, 28 Nov 2002 20:49:01 +0100 + +whois (4.5.34) unstable; urgency=medium + + * Added a new RIPE IPv4 allocation. + + -- Marco d'Itri <md@linux.it> Sun, 24 Nov 2002 03:52:32 +0100 + whois (4.5.33) unstable; urgency=medium * Added another RIPE IPv6 allocation. diff --git a/ip_del_list b/ip_del_list index 1bd4959..e0dff2a 100644 --- a/ip_del_list +++ b/ip_del_list @@ -2,7 +2,7 @@ # contain historical allocations now scattered among all the RIRs. # Do not even try submitting such networks for inclusion in this list # unless they are very big and contains multiple assignments to different -# customers. +# customers documented in the whois database. # 24.192.0.0/14 apnic 24.132.0.0/14 ripe @@ -17,6 +17,8 @@ # broken? # 63.208.0.0/13 rr.level3.net 80.0.0.0/7 ripe +82.0.0.0/8 ripe +96.0.0.0/3 UNALLOCATED 0.0.0.0/2 arin # all other A classes are managed by ARIN 133.0.0.0/8 whois.nic.ad.jp 139.20.0.0/14 ripe @@ -57,6 +59,10 @@ 169.208.0.0/12 apnic 171.16.0.0/12 ripe 171.32.0.0/15 ripe +## All other B class addresses are supposed to be allocated by ARIN +## We know that many of them are not, but they can't all be listed here +128.0.0.0/2 arin + ## The C classes space is cleanly delegated and the data here should be complete 192.71.0.0/16 ripe 192.72.0.0/16 whois.seed.net.tw # NETBLK-SEED-NETS @@ -71,6 +77,7 @@ 194.0.0.0/7 ripe 198.17.117.0/24 ripe 196.0.0.0/6 arin + 200.17.0.0/16 whois.nic.br 200.18.0.0/15 whois.nic.br 200.20.0.0/16 whois.nic.br diff --git a/make_ip_del.pl b/make_ip_del.pl index 91ca390..c452492 100755 --- a/make_ip_del.pl +++ b/make_ip_del.pl @@ -14,6 +14,8 @@ while (<>) { (~(0xffffffff>>$m))."UL, \""; if ($s =~ /\./) { print "$s"; + } elsif ($s eq 'UNALLOCATED') { + print "\006"; } else { print "whois.$s.net"; } @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.4.13\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" "PO-Revision-Date: 2001-07-04 15:15+01:00\n" "Last-Translator: Simon Richter <Simon.Richter@in.tum.de>\n" "Language-Team: German <de@li.org>\n" @@ -24,30 +24,30 @@ msgstr "" "\n" "Senden sie Bugreports an %s.\n" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "Benutze Server %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Benutze voreingestellten Server %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "Diese TLD hat keinen whois-Server, aber eine whois-Datenbank unter" -#: ../whois.c:174 +#: ../whois.c:181 msgid "This TLD has no whois server." msgstr "Diese TLD hat keinen whois-Server." -#: ../whois.c:178 +#: ../whois.c:185 #, fuzzy msgid "Connecting to whois.crsnic.net." msgstr "Verbinde zu whois.internic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, fuzzy, c-format msgid "" "\n" @@ -58,7 +58,16 @@ msgstr "" "InterNIC verweist auf %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "" + +#: ../whois.c:198 +#, fuzzy +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "Unbekannte AS-Nummer. Bitte upgraden Sie dieses Programm." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -67,46 +76,22 @@ msgstr "" "Suche nach: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Es lieί sich nicht feststellen, wer diese IP vergeben hat.\n" -"Versuche ARIN..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "" -"Vermutlich ist dies ein Netblock-Name, aber es gibt keinen\n" -"voreingestellten Server." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "" -"Vermutlich ist dies ein Domainname, aber es gibt keinen\n" -"voreingestellten Server." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "Unbekannte AS-Nummer. Bitte upgraden Sie dieses Programm." - -#: ../whois.c:399 +#: ../whois.c:400 #, fuzzy msgid "Warning: RIPE flags used with a traditional server." msgstr "Warnung: RIPE-Flags wurden ignoriert (\"traditioneller\" Server)." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Verweis auf %s gefunden bei %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 msgid "" "Catastrophic error: disclaimer text has been changed.\n" "Please upgrade this program.\n" @@ -114,22 +99,26 @@ msgstr "" "Schwerer Fehler: Haftungsausschlusstext wurde geaendert.\n" "Bitte upgraden sie dieses Programm.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Host %s nicht gefunden." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: unbekannter Dienst" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "" + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Erhielt Signal %d, unterbrochen..." -#: ../whois.c:620 +#: ../whois.c:628 #, fuzzy msgid "" "Usage: whois [OPTION]... OBJECT...\n" @@ -261,3 +250,20 @@ msgstr "" #: ../mkpasswd.c:260 msgid "Available algorithms:\n" msgstr "" + +#~ msgid "" +#~ "I don't know where this IP has been delegated.\n" +#~ "I'll try ARIN and hope for the best..." +#~ msgstr "" +#~ "Es lieί sich nicht feststellen, wer diese IP vergeben hat.\n" +#~ "Versuche ARIN..." + +#~ msgid "I guess it's a netblock name but I don't know where to look it up." +#~ msgstr "" +#~ "Vermutlich ist dies ein Netblock-Name, aber es gibt keinen\n" +#~ "voreingestellten Server." + +#~ msgid "I guess it's a domain but I don't know where to look it up." +#~ msgstr "" +#~ "Vermutlich ist dies ein Domainname, aber es gibt keinen\n" +#~ "voreingestellten Server." @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.5.3\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" "PO-Revision-Date: 2001-02-23 16:07:57+0900\n" "Last-Translator: Simos Xenitellis <simos@hellug.gr>\n" "Language-Team: Greek <nls@tux.hellug.gr>\n" @@ -24,32 +24,32 @@ msgstr "" "\n" "Αναφέρατε σφάλματα στο %s.\n" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "Γίνεται χρήση του εξυπηρετητή %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Χρήση εξ' ορισμού εξυπηρετητή %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "" "Αυτό το TLD δεν έχει εξυπηρετητή whois, ωστόσο μπορείτε να προσπελάσετε την " "βάση whois στο" -#: ../whois.c:174 +#: ../whois.c:181 msgid "This TLD has no whois server." msgstr "Αυτό το TLD δεν έχει εξυπηρετητή whois." -#: ../whois.c:178 +#: ../whois.c:185 #, fuzzy msgid "Connecting to whois.crsnic.net." msgstr "Γίνεται σύνδεση στο whois.internic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, fuzzy, c-format msgid "" "\n" @@ -60,7 +60,16 @@ msgstr "" "Βρέθηκε αναφορά από το InterNIC στο %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "" + +#: ../whois.c:198 +#, fuzzy +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "¶γνωστος αριθμός AS. Παρακαλώ ενημερώστε αυτό το πρόγραμμα." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -69,44 +78,23 @@ msgstr "" "Αλφαριθμητικό ερώτησης: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Δε γνωρίζε σε ποιον έχει αποδοθεί ευθύνη για αυτήν την διεύθυνση IP.\n" -"Θα δοκιμάσω το ARIN και εύχομε για το καλύτερο..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "" -"Πιστεύω ότι είναι όνομα μπλοκ δικτύου αλλά δε γνωρίζω που να το αναζητήσω." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "Πιστεύω ότι είναι ένα επίθημα αλλά δε γνωρίζω που να το αναζητήσω." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "¶γνωστος αριθμός AS. Παρακαλώ ενημερώστε αυτό το πρόγραμμα." - -#: ../whois.c:399 +#: ../whois.c:400 #, fuzzy msgid "Warning: RIPE flags used with a traditional server." msgstr "" "Προειδοποίηση: Η σημαίες του RIPE αγνοούνται σε έναν παραδοσιακό εξυπηρετητή." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Ανιχνεύθηκε αναφορά του %s στο %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 msgid "" "Catastrophic error: disclaimer text has been changed.\n" "Please upgrade this program.\n" @@ -114,22 +102,26 @@ msgstr "" "Καταστροφικό σφάλμα: το κείμενο της αποποίησης ευθυνών έχει τροποποιηθεί.\n" "Παρακαλώ αναβαθμίστε το πρόγραμμα.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Το σύστημα %s δε βρέθηκε." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: άγνωστη υπηρεσία" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "" + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Διακοπή από το σήμα %d..." -#: ../whois.c:620 +#: ../whois.c:628 #, fuzzy msgid "" "Usage: whois [OPTION]... OBJECT...\n" @@ -268,3 +260,17 @@ msgstr "" #: ../mkpasswd.c:260 msgid "Available algorithms:\n" msgstr "" + +#~ msgid "" +#~ "I don't know where this IP has been delegated.\n" +#~ "I'll try ARIN and hope for the best..." +#~ msgstr "" +#~ "Δε γνωρίζε σε ποιον έχει αποδοθεί ευθύνη για αυτήν την διεύθυνση IP.\n" +#~ "Θα δοκιμάσω το ARIN και εύχομε για το καλύτερο..." + +#~ msgid "I guess it's a netblock name but I don't know where to look it up." +#~ msgstr "" +#~ "Πιστεύω ότι είναι όνομα μπλοκ δικτύου αλλά δε γνωρίζω που να το αναζητήσω." + +#~ msgid "I guess it's a domain but I don't know where to look it up." +#~ msgstr "Πιστεύω ότι είναι ένα επίθημα αλλά δε γνωρίζω που να το αναζητήσω." @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.5.29\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" "PO-Revision-Date: 2002-08-24 16:22+0200\n" "Last-Translator: Francisco Monteagudo <francisco@monteagudo.net>\n" "Language-Team: Spanish <es@li.org>\n" @@ -24,31 +24,31 @@ msgstr "" "\n" "Informar de bugs a %s.\n" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "Usando el servidor %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Usando el servidor predefinido %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "" "Este TLD no dispone de servidor whois, pero puede acceder a la informacion " "de whois en" -#: ../whois.c:174 +#: ../whois.c:181 msgid "This TLD has no whois server." msgstr "No existe servidor whois para este TLD." -#: ../whois.c:178 +#: ../whois.c:185 msgid "Connecting to whois.crsnic.net." msgstr "Conectando a whois.crsnic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, c-format msgid "" "\n" @@ -59,7 +59,16 @@ msgstr "" "Se ha encontrado en crsnic una referencia a %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "" + +#: ../whois.c:198 +#, fuzzy +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "Numero AS desconocido. Por favor, actualice este programa." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -68,44 +77,23 @@ msgstr "" "Consulta: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "No puedo procesar esta linea: %s" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Ignoro a quien a sido delegada esta direccion IP.\n" -"Voy a probar con ARIN a ver si hay suerte..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "" -"Aparentemente, es el nombre de un netblock, pero ignoro donde buscarlo." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "Aparentemente, es un nombre de dominio, pero ignoro donde buscarlo." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "Numero AS desconocido. Por favor, actualice este programa." - -#: ../whois.c:399 +#: ../whois.c:400 #, fuzzy msgid "Warning: RIPE flags used with a traditional server." msgstr "" "Atencion: Los flags RIPE son ignorados por los servidores tradicionales." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Detectada una referencia a %s en %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 msgid "" "Catastrophic error: disclaimer text has been changed.\n" "Please upgrade this program.\n" @@ -113,22 +101,26 @@ msgstr "" "Error catastrofico: el texto de las condiciones de uso ha sido cambiado.\n" "Actualize este programa.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Host %s no encontrado." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: servicio desconocido" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "" + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Interrumpido por la seρal %d..." -#: ../whois.c:620 +#: ../whois.c:628 #, fuzzy msgid "" "Usage: whois [OPTION]... OBJECT...\n" @@ -278,3 +270,17 @@ msgstr "" #: ../mkpasswd.c:260 msgid "Available algorithms:\n" msgstr "Algoritmos disponibles:\n" + +#~ msgid "" +#~ "I don't know where this IP has been delegated.\n" +#~ "I'll try ARIN and hope for the best..." +#~ msgstr "" +#~ "Ignoro a quien a sido delegada esta direccion IP.\n" +#~ "Voy a probar con ARIN a ver si hay suerte..." + +#~ msgid "I guess it's a netblock name but I don't know where to look it up." +#~ msgstr "" +#~ "Aparentemente, es el nombre de un netblock, pero ignoro donde buscarlo." + +#~ msgid "I guess it's a domain but I don't know where to look it up." +#~ msgstr "Aparentemente, es un nombre de dominio, pero ignoro donde buscarlo." @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.4.13\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" -"PO-Revision-Date: 2002-04-26 04:09+0200\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" +"PO-Revision-Date: 2002-11-28 21:22+0100\n" "Last-Translator: Marco d'Itri <md@linux.it>\n" "Language-Team: Italian <it@li.org>\n" "MIME-Version: 1.0\n" @@ -24,30 +24,30 @@ msgstr "" "\n" "Segnalare i bug a %s.\n" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "Uso il server %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Uso il server predefinito %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "" "Questo TLD non ha un server whois, ma si puς accedere al database tramite" -#: ../whois.c:174 +#: ../whois.c:181 msgid "This TLD has no whois server." msgstr "Per questo TLD non esiste un server whois." -#: ../whois.c:178 +#: ../whois.c:185 msgid "Connecting to whois.crsnic.net." msgstr "Mi sto connettendo a whois.crsnic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, c-format msgid "" "\n" @@ -58,7 +58,15 @@ msgstr "" "Trovato un riferimento di CRSNIC a %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "Non θ noto alcun server whois per questo tipo di oggetto." + +#: ../whois.c:198 +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "Numero dell'AS o della rete IP sconosciuto. Per favore aggiorna il programma." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -67,41 +75,21 @@ msgstr "" "Richiesta: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "Impossibile interpretare questa riga: %s" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Non so a chi θ stato delegato questo IP.\n" -"Proverς con ARIN sperando per il meglio..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "Credo che sia il nome di un netblock ma non so dove cercarlo." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "Credo che sia un dominio ma non so dove cercarlo." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "Numero dell'AS sconosciuto. Per favore aggiorna il programma." - -#: ../whois.c:399 +#: ../whois.c:400 msgid "Warning: RIPE flags used with a traditional server." msgstr "Attenzione: sono stati usati dei flag RIPE con un server tradizionale." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Trovato un riferimento a %s su %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 msgid "" "Catastrophic error: disclaimer text has been changed.\n" "Please upgrade this program.\n" @@ -109,22 +97,26 @@ msgstr "" "Errore catastrofico: il testo di avvertenze θ cambiato.\n" "Aggiorna questo programma.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Host %s non trovato." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: servizio sconosciuto" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "Tempo scaduto." + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Interrotto dal segnale %d..." -#: ../whois.c:620 +#: ../whois.c:628 msgid "" "Usage: whois [OPTION]... OBJECT...\n" "\n" @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.4.5\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" "PO-Revision-Date: 1999-12-18 14:00:00\n" "Last-Translator: Egil Kvaleberg <egil@kvaleberg.no>\n" "Language-Team: Norwegian <no@li.org>\n" @@ -22,30 +22,30 @@ msgid "" "Report bugs to %s.\n" msgstr "" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "Bruker tjener %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Bruker standardtjener %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "" -#: ../whois.c:174 +#: ../whois.c:181 msgid "This TLD has no whois server." msgstr "" -#: ../whois.c:178 +#: ../whois.c:185 #, fuzzy msgid "Connecting to whois.crsnic.net." msgstr "Kobler opp mot whois.internic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, fuzzy, c-format msgid "" "\n" @@ -56,7 +56,16 @@ msgstr "" "Fant InterNIC-referanse til %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "" + +#: ../whois.c:198 +#, fuzzy +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "Ukjent AS-nummer. Vennligst oppdater programmet." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -65,42 +74,22 @@ msgstr "" "Forespψrsel: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Vet ikke hvor denne IP-adressen har blitt delegert.\n" -"Prψver ARIN og hεper det beste..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "Gjetter at det er et netblock-navn, men vet ikke hvor det finnes." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "Gjetter at det er er domene, men vet ikke hvor det finnes." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "Ukjent AS-nummer. Vennligst oppdater programmet." - -#: ../whois.c:399 +#: ../whois.c:400 #, fuzzy msgid "Warning: RIPE flags used with a traditional server." msgstr "Merk: RIPE-flaggene ignoreres for en tradisjonell tjener." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Referanse til %s vedrψrende %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 #, fuzzy msgid "" "Catastrophic error: disclaimer text has been changed.\n" @@ -109,22 +98,26 @@ msgstr "" "Alvorlig feil: INTERNIC har endret standardtekst.\n" "Vennligst oppdater programmet.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Finner ikke verten %s." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: ukjent port" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "" + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Avbrudt av signal %d..." -#: ../whois.c:620 +#: ../whois.c:628 #, fuzzy msgid "" "Usage: whois [OPTION]... OBJECT...\n" @@ -249,3 +242,16 @@ msgstr "" #: ../mkpasswd.c:260 msgid "Available algorithms:\n" msgstr "" + +#~ msgid "" +#~ "I don't know where this IP has been delegated.\n" +#~ "I'll try ARIN and hope for the best..." +#~ msgstr "" +#~ "Vet ikke hvor denne IP-adressen har blitt delegert.\n" +#~ "Prψver ARIN og hεper det beste..." + +#~ msgid "I guess it's a netblock name but I don't know where to look it up." +#~ msgstr "Gjetter at det er et netblock-navn, men vet ikke hvor det finnes." + +#~ msgid "I guess it's a domain but I don't know where to look it up." +#~ msgstr "Gjetter at det er er domene, men vet ikke hvor det finnes." @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: whois 4.4.5\n" -"POT-Creation-Date: 2002-11-16 04:27+0100\n" +"POT-Creation-Date: 2002-11-28 21:21+0100\n" "PO-Revision-Date: 1999-12-18 14:00:00\n" "Last-Translator: Micha³ 'CeFeK' Nazarewicz <cefek@career.pl>\n" "Language-Team: Polish <pl@li.org>\n" @@ -22,31 +22,31 @@ msgid "" "Report bugs to %s.\n" msgstr "" -#: ../whois.c:151 ../whois.c:188 +#: ../whois.c:151 ../whois.c:202 #, c-format msgid "Using server %s.\n" msgstr "UΏywam serwera %s.\n" -#: ../whois.c:165 +#: ../whois.c:172 #, c-format msgid "Using default server %s.\n" msgstr "Uzywam domy¶lnego serwera %s.\n" -#: ../whois.c:168 +#: ../whois.c:175 msgid "This TLD has no whois server, but you can access the whois database at" msgstr "" -#: ../whois.c:174 +#: ../whois.c:181 #, fuzzy msgid "This TLD has no whois server." msgstr "Nie ma serwera whois dla tej domeny." -#: ../whois.c:178 +#: ../whois.c:185 #, fuzzy msgid "Connecting to whois.crsnic.net." msgstr "£±czenie z hostem whois.internic.net." -#: ../whois.c:184 +#: ../whois.c:191 #, fuzzy, c-format msgid "" "\n" @@ -57,7 +57,16 @@ msgstr "" "Znaleziono odniesienie z InterNIC do %s.\n" "\n" -#: ../whois.c:197 +#: ../whois.c:195 +msgid "No whois server is known for this kind of object." +msgstr "" + +#: ../whois.c:198 +#, fuzzy +msgid "Unknown AS number or IP network. Please upgrade this program." +msgstr "Nieznany numer AS. Zainstaluj nowsz± wersjκ programu." + +#: ../whois.c:211 #, c-format msgid "" "Query string: \"%s\"\n" @@ -66,42 +75,22 @@ msgstr "" "Zapytanie: \"%s\"\n" "\n" -#: ../whois.c:247 ../whois.c:250 +#: ../whois.c:258 ../whois.c:261 #, c-format msgid "Cannot parse this line: %s" msgstr "" -#: ../whois.c:330 -msgid "" -"I don't know where this IP has been delegated.\n" -"I'll try ARIN and hope for the best..." -msgstr "" -"Nie moΏna ustaliζ, do kogo ten adres IP zosta³ oddelegowany.\n" -"Sprσbujκ ARIN i mam nadziejκ, Ώe siκ uda..." - -#: ../whois.c:347 -msgid "I guess it's a netblock name but I don't know where to look it up." -msgstr "To nazwa bloku sieciowego, ale nie wiem, pod jak± nazw± szukaζ." - -#: ../whois.c:354 -msgid "I guess it's a domain but I don't know where to look it up." -msgstr "To nazwa domeny, ale nie wiem, gdzie jej szukaζ." - -#: ../whois.c:364 -msgid "Unknown AS number. Please upgrade this program." -msgstr "Nieznany numer AS. Zainstaluj nowsz± wersjκ programu." - -#: ../whois.c:399 +#: ../whois.c:400 #, fuzzy msgid "Warning: RIPE flags used with a traditional server." msgstr "Uwaga: flagi RIPE s± ignorowane dla starszych serwerσw." -#: ../whois.c:457 +#: ../whois.c:460 #, c-format msgid "Detected referral to %s on %s.\n" msgstr "Wykryto odniesienie do %s na %s.\n" -#: ../whois.c:474 +#: ../whois.c:477 msgid "" "Catastrophic error: disclaimer text has been changed.\n" "Please upgrade this program.\n" @@ -109,22 +98,26 @@ msgstr "" "Katastrofa! Tekst disclaimera zosta³ zmieniony.\n" "¦ci±gnij nowsz± wersjκ programu.\n" -#: ../whois.c:548 +#: ../whois.c:551 #, c-format msgid "Host %s not found." msgstr "Serwer %s nie zosta³ znaleziony." -#: ../whois.c:558 +#: ../whois.c:561 #, c-format msgid "%s/tcp: unknown service" msgstr "%s/tcp: us³uga nieznana" -#: ../whois.c:575 +#: ../whois.c:573 +msgid "Timeout." +msgstr "" + +#: ../whois.c:579 #, c-format msgid "Interrupted by signal %d..." msgstr "Przerwanie na sygna³ %d..." -#: ../whois.c:620 +#: ../whois.c:628 #, fuzzy msgid "" "Usage: whois [OPTION]... OBJECT...\n" @@ -246,3 +239,16 @@ msgstr "" #: ../mkpasswd.c:260 msgid "Available algorithms:\n" msgstr "" + +#~ msgid "" +#~ "I don't know where this IP has been delegated.\n" +#~ "I'll try ARIN and hope for the best..." +#~ msgstr "" +#~ "Nie moΏna ustaliζ, do kogo ten adres IP zosta³ oddelegowany.\n" +#~ "Sprσbujκ ARIN i mam nadziejκ, Ώe siκ uda..." + +#~ msgid "I guess it's a netblock name but I don't know where to look it up." +#~ msgstr "To nazwa bloku sieciowego, ale nie wiem, pod jak± nazw± szukaζ." + +#~ msgid "I guess it's a domain but I don't know where to look it up." +#~ msgstr "To nazwa domeny, ale nie wiem, gdzie jej szukaζ." diff --git a/tld_serv_list b/tld_serv_list index a4cdbe8..75961b6 100644 --- a/tld_serv_list +++ b/tld_serv_list @@ -4,12 +4,14 @@ # .br.com whois.centralnic.net .cn.com whois.centralnic.net +.de.com whois.centralnic.net .eu.com whois.centralnic.net .gb.com whois.centralnic.net .gb.net whois.centralnic.net .hu.com whois.centralnic.net .no.com whois.centralnic.net .qc.com whois.centralnic.net +.ru.com whois.centralnic.net .sa.com whois.centralnic.net .se.com whois.centralnic.net .se.net whois.centralnic.net @@ -36,19 +38,19 @@ .pro whois.nic.pro .ac whois.nic.ac .ad NONE # www.nic.ad -.ae WEB http://www.uaenic.ae/ +.ae whois.uaenic.ae .af NONE # was whois.nic.af .ag whois.nic.ag -.ai NONE # http://www.offshore.com.ai/domain_names/ +.ai WEB http://whois.offshore.ai/ .al NONE # http://www.inima.al/Domains.html .am whois.amnic.net # down? .am WEB https://www.amnic.net/whois/ .an NONE # http://www.una.net/an_domreg/ .ao NONE # www.dns.ao .aq NONE # 2day.com -.ar WEB http://www.nic.ar/consultas/consdom.htm +.ar WEB http://www.nic.ar/consultas/consdom.html .as whois.nic.as -.at whois.aco.net +.at whois.nic.at .asn.au whois.ausregistry.net.au .com.au whois.ausregistry.net.au .id.au whois.ausregistry.net.au @@ -59,20 +61,20 @@ .az NONE # www.nic.az .ba NONE # http://www.utic.net.ba/domen/ .bb WEB http://domains.org.bb/regsearch/ -.bd NONE # NIC? +.bd NONE # http://www.bttb.net/ .be whois.dns.be -.bf NONE # http://www.onatel.bf/domaine.htm +.bf NONE # NIC? http://www.onatel.bf/ .bg whois.ripe.net #.bh NONE # NIC? www.inet.com.bh -.bi WEB http://www.nic.bi/cgi-bin/whoisbi.pl +.bi WEB http://www.nic.bi/Nic_search.asp #.bj # NIC? www.opt.bj .bm WEB http://www.bermudanic.bm/cgi-bin/BermudaNIC/rwhois_query.pl # rwhois.bermudanic.bm:4321 #.bn NONE # NIC? www.brunet.bn -.bo NONE # www.nic.bo +.bo WEB http://www.nic.bo/ .br whois.nic.br .bs WEB http://www.nic.bs/cgi-bin/search.pl -.bt NONE -.bv NONE # http://www.uninett.no/navn/bv-sj.html +.bt WEB http://www.nic.bt/ +.bv NONE # http://www.norid.no/domenenavnbaser/bv-sj.html #.bw # NIC? www.botsnet.bw btc.bw .by WEB http://www.tld.by/indexeng.html .bz whois.belizenic.bz @@ -90,9 +92,9 @@ .edu.cn whois.edu.cn .cn whois.cnnic.net.cn .uk.co whois.uk.co -.co WEB http://daimon.uniandes.edu.co:8890/dominio/plsql/PConsulta.ConsultarDominio +.co WEB https://www.nic.co/ .cr WEB http://www.nic.cr/consulta-dns.html -.cu WEB http://www.nic.cu/consultas/consult.html +.cu WEB http://www.nic.cu/consult.html #.cv # NIC? dns.cv? .cx whois.nic.cx .cy NONE # www.nic.cy @@ -101,36 +103,36 @@ .dj NONE # www.nic.dj (NOT YET) .dk whois.dk-hostmaster.dk .dm NONE # www.domains.dm ? -.do WEB http://www.nic.do -.dz NONE +.do WEB http://www.nic.do/whois-h.php3 +.dz WEB http://www.nic.dz/anglais/dom-attr-eng.htm .ec WEB http://www.nic.ec/consulta/whois.asp .ee whois.eenet.ee .eg NONE # http://www.ise.org.eg/domain.htm #.eh .er NONE # NO NIC http://www.afridns.org/er/ -.es WEB http://www.nic.es/whois/ +.es WEB http://www.nic.es/cgi-bin/consulta.whois #.et NONE # NIC? www.telecom.net.et .fi WEB http://cgi.ficora.fi/wwwbin/domains.pl?language=eng .fj whois.usp.ac.fj .fk NONE # http://www.fidc.org.fk/domain-registration/home.htm -.fm WEB http://www.nic.fm/register.html +.fm WEB http://www.dot.fm/whois.html .fo whois.ripe.net # www.nic.fo .fr whois.nic.fr #.fx #.ga # NIC? www.inet.ga .gb NONE #.gd # NO NIC (UPR) -.ge WEB http://www.nic.net.ge +.ge WEB http://whois.sanet.ge/ .gf whois.nplus.gf .gg whois.channelisles.net -.gh NONE # http://www.ghana.com/domreg.html -.gi NONE # http://www.gibnet.gi/nic/ -.gl whois.ripe.net +.gh NONE # http://www.ghana.com.gh/domain.htm +.gi WEB http://whois.gibnet.gi/ +.gl whois.ripe.net # www.nic.gl .gm whois.ripe.net # www.nic.gm .gn NONE # http://www.psg.com/dns/gn/ #.gp # www.nic.gp - broken like mq -#.gq # NO NIC http://www.intnet.gq -.gr WEB https://grweb.ics.forth.gr/english/index.html +#.gq # NO NIC http://www.intnet.gq/ http://www.getesa.gq/ +.gr WEB https://grweb.ics.forth.gr/english/ .gs whois.adamsnames.tc .gt WEB http://www.gt/whois.htm .gu WEB http://gadao.gov.gu/Scripts/wwsquery/wwsquery.dll?hois=guamquery @@ -154,7 +156,7 @@ .it whois.nic.it .je whois.channelisles.net #.jm # NIC? uwimona.edu.jm http://nic.jm -.jo WEB http://amon.nic.gov.jo/dns/ +.jo WEB http://www.nis.jo/dns/ # old: http://amon.nic.gov.jo/dns/ .jp whois.nic.ad.jp .ke NONE # http://www.nbnet.co.ke/domain.htm .kg whois.domain.kg @@ -163,7 +165,7 @@ .km NONE # NO NIC #.kn # NO NIC (UPR) #.kp -.kr whois.krnic.net +.kr whois.nic.or.kr .kw WEB http://www.domainname.net.kw .ky WEB http://146.115.157.215/whoisfrontend.asp .kz whois.domain.kz @@ -175,8 +177,8 @@ .lr NONE # http://www.psg.com/dns/lr/ .ls NONE # NIC? .lt whois.ripe.net -.lu whois.restena.lu -.lv whois.ripe.net +.lu whois.dns.lu +.lv whois.nic.lv .ly WEB http://www.lydomains.com/whois.asp #.ma # NIC? http://www.anrt.net.ma/ .mc whois.ripe.net @@ -186,16 +188,16 @@ #.mk # NIC? http://www.mpt.com.mk #.ml # NIC? www.sotelma.ml .mm whois.nic.mm -.mn WEB http://whois.nic.mn -.mo WEB http://www.monic.net.mo # whois.umac.mo +.mn WEB http://whois.nic.mn/ +.mo WEB http://www.monic.net.mo/ # whois.umac.mo .mp NONE # www.marketplace.mp #.mq # www.nic.mq broken like gp .mr NONE # http://www.univ-nkc.mr/nic_mr.html .ms whois.adamsnames.tc -.mt WEB http://www.um.edu.mt/nic/dir/ -.mu WEB http://www.nic.mu/cgi-bin/mu_whois.cgi +.mt WEB http://www.nic.org.mt/dir/home.html +.mu WEB http://www.nic.mu/mauritius/domain.whois.php #.mv # NIC? dhiraagu.com.mv -.mw WEB http://www.tarsus.net/whois/ +.mw WEB http://www.registrar.mw/ .mx whois.nic.mx .my WEB http://www.mynic.net.my/newhp/mynic-lookup.htm #.mz # NIC? www.uem.mz @@ -208,20 +210,20 @@ .nl whois.domain-registry.nl .no whois.norid.no .np WEB http://www.mos.com.np/domsearch.html -#.nr # NIC? www.cenpan.net.nr +.nr WEB http://www.cenpac.net.nr/dns/whois.html .nu whois.nic.nu .nz whois.srs.net.nz -#.om NONE # NIC? http://www.gto.net.om -.pa WEB http://www.nic.pa +#.om NONE # NIC? http://www.gto.net.om http://www.omantel.net.om/ +.pa WEB http://www.nic.pa/ .pe whois.nic.pe #.pf # NIC? mana.pf .pg NONE # http://www.unitech.ac.pg/Unitech_General/ITS/ITS_Dns.htm -.ph WEB http://www.names.ph/search.html -.pk WEB www.pknic.net.pk +.ph WEB http://www.domains.ph/DomainSearch.asp +.pk WEB http://www.pknic.net.pk/ .pl whois.dns.pl .pm whois.nic.fr -.pn NONE # 2day.com www.nic.pn -.pr NONE # http://www.uprr.pr/main.html +.pn WEB http://www.pitcairn.pn/PnRegistry/CheckAvailability.html +.pr NONE # http://www.uprr.pr/ .ps WEB http://www.nic.ps/whois/ .pt NONE # www.dns.pt .pw whois.nic.pw @@ -231,15 +233,15 @@ .ro whois.rotld.ro .ru whois.ripn.net .rw WEB http://www.nic.rw/cgi-bin/whoisrw.pl -.sa WEB http://www.saudinic.net.sa/domain/whois.htm -.sb WEB http://www.sbnic.net.sb/search.html +.sa saudinic.net.sa +.sb WEB http://www.nic.net.sb/search.htm .sc NONE # www.nic.sc #.sd # NIC? http://www.sudatel.sd .se whois.nic-se.se .sg whois.nic.net.sg .sh whois.nic.sh .si whois.arnes.si -.sj NONE # http://www.uninett.no/navn/bv-sj.html +.sj NONE # http://www.norid.no/domenenavnbaser/bv-sj.html .sk whois.ripe.net #.sl # NIC? http://www.sierratel.sl/ .sm whois.ripe.net @@ -250,24 +252,24 @@ .su whois.ripn.net .sv WEB http://www.uca.edu.sv/dns/ # http://www.svnet.org.sv/ #.sy # NIC? (usually offline?) -.sz NONE # http://www.iafrica.sz/domreg/ +.sz NONE # http://www.sispa.org.sz/ .tc whois.adamsnames.tc #.td # NIC? http://www.tit.td .tf whois.adamsnames.tc -.tg WEB http://www.nic.tg +.tg WEB http://www.nic.tg/ .th whois.thnic.net .tj whois.nic.tj .tk whois.dot.tk -.tm NONE +.tm NONE # www.nic.tm .tn NONE # http://www.ati.tn/Nic/ .to whois.tonic.to -.tp NONE # www.nic.tp +.tp WEB http://cgi.connect.ie/cgi-bin/tplookup.cgi .tr whois.metu.edu.tr .tt WEB http://www.nic.tt/cgi-bin/search.pl .tv whois.tv .tw whois.twnic.net .tz NONE # http://www.psg.com/dns/tz/ -.ua whois.com.ua +.ua whois.net.ua .ug www.registry.co.ug .gov.uk whois.ja.net .ac.uk whois.ja.net @@ -276,15 +278,15 @@ .fed.us whois.nic.gov .us whois.nic.us .com.uy WEB http://dns.antel.net.uy/clientes/consultar.htm -.uy WEB http://www.rau.edu.uy/rau/dom/reg.htm -#.uz # www.noc.uz (broken) +.uy WEB http://www.rau.edu.uy/rau/dom/ +.uz WEB http://www.noc.uz/ .va whois.ripe.net .vc whois.opensrs.net .ve WEB http://www.nic.ve/nicwho01.html # rwhois.reacciun.ve:4321 .vg whois.adamsnames.tc -.vi WEB http://208.30.96.227/whoisform.htm +.vi WEB http://www.nic.vi/whoisform.htm .vn WEB http://www.vnnic.net.vn/english/reg_domain/ -.vu WEB http://www.vunic.vu/whois +.vu WEB http://www.vunic.vu/whois.htm #.wf # NIC-FR! .ws whois.samoanic.ws #.ye # NIC? www.y.net.ye @@ -25,10 +25,8 @@ whois \- client for the whois directory service This version of the whois client tries to guess the right server to ask for the specified object. If no guess can be made it will connect -to whois.internic.net for domains, -.\" whois.networksolutions.com for nic handles, -whois.arin.net for IPv4 addresses and whois.6bone.net for -IPv6 addresses. +to whois.networksolutions.com for nic handles or whois.arin.net for +IPv4 addresses and network names. .PP .SH OPTIONS .TP 8 @@ -50,11 +48,8 @@ Display online help. Other options are flags understood by RIPE-like servers. .SH NOTES Please remember that \fIwhois.networksolutions.com\fP by default will -only search in the domains database. If you want to search for hostnames, -NIC handles or people names you have to prepend the appropriate keyword -(\fIHO\fPst, \fIHA\fPndle or \fINA\fPme). -.P -If the \fI!\fP character is prepended to a NIC handle, the default +only search in the domains database. If you want to search for NIC handles +you have to prepend a \fI!\fP character. When you do this, the default server becomes \fIwhois.networksolutions.com\fP. .P When querying \fIwhois.nic.mil\fP for AS numbers, the program will @@ -71,9 +66,9 @@ RIPE-specific options are ignored when querying non-RIPE servers. When querying \fIwhois.nic.ad.jp\fP english text is requested unless the \fILANG\fP environment variable specifies a Japanese locale. .IP "WHOIS_SERVER" -This server will be queried if the program cannot guess where the object -is located. If the variable does not exist then -\fIwhois.internic.net\fP will be queried. +This server will be queried if the program cannot guess where some kind +of objects are located. If the variable does not exist then +\fIwhois.arin.net\fP will be queried. .IP "WHOIS_HIDE" If this variable is defined, legal disclaimers will be hidden even if the \fI-H\fP flag is not used. @@ -152,11 +152,18 @@ int main(int argc, char *argv[]) } #endif + signal(SIGTERM, sighandler); + signal(SIGINT, sighandler); + signal(SIGALRM, alarm_handler); + alarm(60); + if (!server) { char *tmp; + tmp = normalize_domain(qstring); server = whichwhois(tmp); free(tmp); + switch (server[0]) { case 0: if (!(server = getenv("WHOIS_SERVER"))) @@ -178,11 +185,18 @@ int main(int argc, char *argv[]) puts(_("Connecting to whois.crsnic.net.")); sockfd = openconn("whois.crsnic.net", NULL); server = query_crsnic(sockfd, qstring); - closeconn(sockfd); + close(sockfd); if (!server) exit(0); printf(_("\nFound crsnic referral to %s.\n\n"), server); + alarm(60); break; + case 5: + puts(_("No whois server is known for this kind of object.")); + exit(0); + case 6: + puts(_("Unknown AS number or IP network. Please upgrade this program.")); + exit(0); default: if (verb) printf(_("Using server %s.\n"), server); @@ -197,9 +211,6 @@ int main(int argc, char *argv[]) printf(_("Query string: \"%s\"\n\n"), p); strcat(p, "\r\n"); - signal(SIGTERM, sighandler); - signal(SIGINT, sighandler); - sockfd = openconn(server, port); do_query(sockfd, p); @@ -284,28 +295,25 @@ const char *whichwhois(const char *s) /* IPv6 address */ if (strchr(s, ':')) { - if (strncmp(s, "2001:2", 6) == 0 || /* XXX ugly hack! */ - strncmp(s, "2001:02", 6) == 0 || - strncasecmp(s, "2001:A", 6) == 0 || - strncasecmp(s, "2001:0A", 6) == 0 || - strncasecmp(s, "2001:C", 6) == 0 || - strncasecmp(s, "2001:0C", 6) == 0) - return "whois.apnic.net"; - if (strncmp(s, "2001:4", 6) == 0 || - strncmp(s, "2001:04", 6) == 0) - return "whois.arin.net"; - if (strncmp(s, "2001:6", 6) == 0 || - strncmp(s, "2001:06", 6) == 0 || - strncmp(s, "2001:8", 6) == 0 || - strncmp(s, "2001:08", 6) == 0) - return "whois.ripe.net"; - /* if (strncasecmp(s, "3ffe", 4) == 0) */ + if (strncmp(s, "2001:", 5) == 0) { + unsigned long v6net = strtol(s + 5, NULL, 16); + v6net = v6net & 0xfe00; /* we care about the first 7 bits */ + for (i = 0; ip6_assign[i].serv; i++) + if (v6net == ip6_assign[i].net) + return ip6_assign[i].serv; + return "\006"; /* unknown allocation */ + } else if (strncasecmp(s, "3ffe:", 5) == 0) return "whois.6bone.net"; + /* RPSL objects like AS8627:fltr-TRANSIT-OUT */ + else if (strncasecmp(s, "as", 2) == 0 && isasciidigit(s[2])) + return whereas(atoi(s + 2)); + else + return "\005"; } /* email address */ if (strchr(s, '@')) - return ""; + return "\005"; /* no dot and no hyphen means it's a NSI NIC handle or ASN (?) */ if (!strpbrk(s, ".-")) { @@ -313,14 +321,14 @@ const char *whichwhois(const char *s) for (p = s; *p; p++); /* go to the end of s */ if (strncasecmp(s, "as", 2) == 0 && /* it's an AS */ - ((s[2] >= '0' && s[2] <= '9') || s[2] == ' ')) - return whereas(atoi(s + 2), as_assign); + (isasciidigit(s[2]) || s[2] == ' ')) + return whereas(atoi(s + 2)); else if (strncasecmp(p - 2, "jp", 2) == 0) /* JP NIC handle */ return "whois.nic.ad.jp"; - if (*p == '!') /* NSI NIC handle */ + if (*s == '!') /* NSI NIC handle */ return "whois.networksolutions.com"; - else /* it's a NSI NIC handle or something we don't know about */ - return ""; + else + return "\005"; /* probably a unknown kind of nic handle */ } /* smells like an IP? */ @@ -328,13 +336,10 @@ const char *whichwhois(const char *s) for (i = 0; ip_assign[i].serv; i++) if ((ip & ip_assign[i].mask) == ip_assign[i].net) return ip_assign[i].serv; - if (verb) - puts(_("I don't know where this IP has been delegated.\n" - "I'll try ARIN and hope for the best...")); - return "whois.arin.net"; + return "\005"; /* not in the unicast IPv4 space */ } - /* check TLD list */ + /* check the TLDs list */ for (i = 0; tld_serv[i]; i += 2) if (domcmp(s, tld_serv[i])) return tld_serv[i + 1]; @@ -345,29 +350,23 @@ const char *whichwhois(const char *s) for (i = 0; nic_handles[i]; i += 2) if (strncasecmp(s, nic_handles[i], strlen(nic_handles[i])) == 0) return nic_handles[i + 1]; - if (verb) - puts(_("I guess it's a netblock name but I don't know where to" - " look it up.")); - return "whois.arin.net"; + /* it's probably a network name */ + return ""; } - /* has dot and hypen and it's not in tld_serv[], WTF is it? */ - if (verb) - puts(_("I guess it's a domain but I don't know where to look it" - " up.")); - return ""; + /* has dot and maybe a hypen and it's not in tld_serv[], WTF is it? */ + /* either a TLD or a NIC handle we don't know about yet */ + return "\005"; } -const char *whereas(int asn, struct as_del aslist[]) +const char *whereas(const unsigned short asn) { int i; - if (asn > 28671) - puts(_("Unknown AS number. Please upgrade this program.")); - else for (i = 0; aslist[i].serv; i++) - if (asn >= aslist[i].first && asn <= aslist[i].last) - return aslist[i].serv; - return "whois.arin.net"; + for (i = 0; as_assign[i].serv; i++) + if (asn >= as_assign[i].first && asn <= as_assign[i].last) + return as_assign[i].serv; + return "\006"; } char *queryformat(const char *server, const char *flags, const char *query) @@ -402,9 +401,11 @@ char *queryformat(const char *server, const char *flags, const char *query) strcat(buf, flags); } if (!isripe && strcmp(server, "whois.nic.mil") == 0 && - strncasecmp(query, "AS", 2) == 0 && - query[2] >= '0' && query[2] <= '9') + strncasecmp(query, "AS", 2) == 0 && isasciidigit(query[2])) sprintf(buf, "AS %s", query + 2); /* fix query for DDN */ + if (!isripe && strcmp(server, "whois.arin.net") == 0 && + strncasecmp(query, "AS", 2) == 0 && isasciidigit(query[2])) + sprintf(buf, "A %s", query + 2); /* always ask for a ASN */ else if (!isripe && strcmp(server, "whois.corenic.net") == 0) sprintf(buf, "--machine %s", query); /* machine readable output */ else if (!isripe && strcmp(server, "whois.nic.ad.jp") == 0) { @@ -566,14 +567,15 @@ int openconn(const char *server, const char *port) return fd; } -void closeconn(const int fd) +void alarm_handler(int signum) { - close(fd); + close(sockfd); + err_quit(_("Timeout.")); } void sighandler(int signum) { - closeconn(sockfd); + close(sockfd); err_quit(_("Interrupted by signal %d..."), signum); } @@ -614,6 +616,10 @@ unsigned long myinet_aton(const char *s) return (a << 24) + (b << 16) + (c << 8) + d; } +int isasciidigit(const char c) { + return (c >= '0' && c <= '9') ? 1 : 0; +} + /* http://www.ripe.net/ripe/docs/databaseref-manual.html */ void usage(void) @@ -3,20 +3,21 @@ /* String sent to RIPE servers - ONLY FIVE CHARACTERS! */ /* Do *NOT* change it if you don't know what you are doing! */ -#define IDSTRING "Md4.5" +#define IDSTRING "Md4.6" /* prototypes */ const char *whichwhois(const char *); const char *match_config_file(const char *); -const char *whereas(int, struct as_del []); +const char *whereas(const unsigned short); char *queryformat(const char *, const char *, const char *); void do_query(const int, const char *); const char *query_crsnic(const int, const char *); int openconn(const char *, const char *); -void closeconn(const int); void usage(void); +void alarm_handler(int); void sighandler(int); unsigned long myinet_aton(const char *); +int isasciidigit(const char); int domcmp(const char *, const char *); int domfind(const char *, const char *[]); char *normalize_domain(const char *); @@ -1,6 +1,6 @@ Summary: Enhanced WHOIS client Name: whois -Version: 4.5.32 +Version: 4.6.0 Release: 1 License: GPL Vendor: Marco d'Itri <md@linux.it> |