summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README9
-rw-r--r--as_del_list4
-rw-r--r--config.h2
-rw-r--r--data.h135
-rw-r--r--debian/changelog91
-rw-r--r--debian/compat1
-rw-r--r--debian/control6
-rwxr-xr-xdebian/rules28
-rw-r--r--ip_del_list23
-rw-r--r--mkpasswd.14
-rw-r--r--mkpasswd.c7
-rw-r--r--po/de.po111
-rw-r--r--po/it.po9
-rw-r--r--po/pl.po136
-rw-r--r--tld_serv_list78
-rw-r--r--whois.16
-rw-r--r--whois.c57
-rw-r--r--whois.spec4
18 files changed, 424 insertions, 287 deletions
diff --git a/README b/README
index 13f712d..0e38ef7 100644
--- a/README
+++ b/README
@@ -1,3 +1,12 @@
+This version of whois is compiled without idn-support (means: it cannot
+directly resolve domains with non-ascii characters). If you need a version
+with idn-support, please use any of the floating backports.
+
+
+Andreas Barth <aba@not.so.argh.org>, 2004-12-23
+
+
+
Why another whois client? Because the RIPE client is a mess of hacks and
#ifdefs and more complex programs lack features or are bloated.
diff --git a/as_del_list b/as_del_list
index 212c52b..6e327be 100644
--- a/as_del_list
+++ b/as_del_list
@@ -47,9 +47,9 @@
26592 26623 lacnic
27648 28671 lacnic
28672 29695 ripe
-29696 30719 arin
30720 31743 ripe
+33792 34815 ripe
# catch all: everything else comes from ARIN
-1 31743 arin
+1 34815 arin
diff --git a/config.h b/config.h
index 2123849..28cf09c 100644
--- a/config.h
+++ b/config.h
@@ -1,6 +1,6 @@
/* Program version */
/* not for the inetutils version */
-#define VERSION "4.6.11"
+#define VERSION "4.6.25"
/* Configurable features */
diff --git a/data.h b/data.h
index 1394b6d..c056445 100644
--- a/data.h
+++ b/data.h
@@ -9,17 +9,13 @@
const char *ripe_servers[] = {
"whois.ripe.net",
"whois.apnic.net",
- "whois.oleane.net",
"whois.denic.de",
"rr.arin.net", /* does not accept the old syntax */
"whois.6bone.net", /* 3.0.0b1 */
- "whois.aunic.net",
"whois.connect.com.au", /* 3.0.0b1 */
"whois.nic.fr",
"whois.nic.it",
- "whois.cw.net",
"whois.telstra.net",
- "whois.nic.net.sg",
"whois.metu.edu.tr",
"whois.restena.lu",
"rr.level3.net", /* 3.0.0a13 */
@@ -28,14 +24,7 @@ const char *ripe_servers[] = {
"www.registry.co.ug",
"whois.nic.ir",
"whois.nic.ck",
- NULL
-};
-
-/* servers which do not accept the new syntax */
-const char *ripe_servers_old[] = {
"whois.ra.net",
- "whois.domain.kg",
- "whois.nic.ch",
NULL
};
@@ -51,7 +40,6 @@ const char *hide_strings[] = {
"This whois service currently only", "top-level domains.",
"Signature Domains' Whois Service", "agree to abide by the above",
"Access to ASNIC", "by this policy.", /* as */
- "**************", "**************", /* sg */
"The Data in Gabia", "you agree to abide",
"The data contained in Go Daddy", "is not the registrant", /* Go Daddy */
"Disclaimer: The Global Name Registry", "for any commercial",
@@ -62,11 +50,14 @@ const char *hide_strings[] = {
// This must be disabled because whois.bizcn.com uses a similar text
"The data in this whois", "using our Whois information", /* enom */
#endif
- "By submitting a WHOIS query,", "LACK OF A DOMAIN", /* directNIC */
- "The Data in OnlineNIC", "\tBy starting this query", /* OnlineNIC */
+ "By submitting a WHOIS query, you agree you will", "LACK OF A DOMAIN", /* directNIC */
+ "The Data in Moniker.com", "this query, you agree",
+ "The Data in OnlineNIC", " By starting this query", /* OnlineNIC */
"The data in Bulkregister.com", "you agree to abide", /* bulkregister */
"The Data in Alldomains.com's", "By submitting this query,",/*alldomains*/
"Interdomain's WHOIS", "DOES NOT SIGNIFY",
+ "The Data provided by Stargate.com", "(2) enable any",
+ "; This data is provided by dd24", "; By submitting this query",
NULL, NULL
};
@@ -91,46 +82,114 @@ const char *nic_handles[] = {
};
struct ip_del {
- unsigned long net;
- unsigned long mask;
- const char *serv;
+ const unsigned long net;
+ const unsigned long mask;
+ const char *serv;
};
-struct ip_del ip_assign[] = {
+const struct ip_del ip_assign[] = {
#include "ip_del.h"
{ 0, 0, NULL }
};
struct ip6_del {
- unsigned long net; /* bits 16-22 of the address */
- const char *serv;
+ const unsigned char net; /* bits 16-21 of the address */
+ const char *serv;
+};
+
+/* http://www.ripe.net/ripe/draft-documents/ipv6.html */
+/* address bits 0-6 */
+const struct ip6_del ip6_assign_rirs[] = {
+ { 0x24, "whois.apnic.net" },
+ { 0x28, "whois.afrinic.net" },
+ { 0x2A, "whois.arin.net" },
+ { 0x30, "whois.lacnic.net" },
+ { 0x34, "whois.ripe.net" },
+ { 0, NULL }
};
/* http://www.iana.org./assignments/ipv6-tla-assignments */
-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" },
- { 0x0E00, "whois.apnic.net" },
-/* { 0x1000, "" }, */
- { 0x1200, "whois.lacnic.net" },
- { 0x1400, "whois.ripe.net" },
- { 0x1600, "whois.ripe.net" },
- { 0x1800, "whois.arin.net" },
- { 0x1A00, "whois.ripe.net" },
+/* address bits 16 + 0-7 */
+const struct ip6_del ip6_assign_misc[] = {
+ { 0x02, "whois.apnic.net" },
+ { 0x04, "whois.arin.net" },
+ { 0x06, "whois.ripe.net" },
+ { 0x08, "whois.ripe.net" },
+ { 0x0A, "whois.ripe.net" },
+ { 0x0C, "whois.apnic.net" },
+ { 0x0E, "whois.apnic.net" },
+/* { 0x10, "" }, */
+ { 0x12, "whois.lacnic.net" },
+ { 0x14, "whois.ripe.net" },
+ { 0x16, "whois.ripe.net" },
+ { 0x18, "whois.arin.net" },
+ { 0x1A, "whois.ripe.net" },
+ { 0x1C, "whois.ripe.net" },
+ { 0x1E, "whois.ripe.net" },
+ { 0x20, "whois.ripe.net" },
+ { 0x22, "whois.ripe.net" },
+ { 0x24, "whois.ripe.net" },
+ { 0x26, "whois.ripe.net" },
+ { 0x28, "whois.ripe.net" },
+ { 0x2A, "whois.ripe.net" },
+ { 0x2C, "whois.ripe.net" },
+ { 0x2E, "whois.ripe.net" },
+ { 0x30, "whois.ripe.net" },
+ { 0x32, "whois.ripe.net" },
+ { 0x34, "whois.ripe.net" },
+ { 0x36, "whois.ripe.net" },
+ { 0x38, "whois.ripe.net" },
+ { 0x3A, "whois.ripe.net" },
+ { 0x40, "whois.ripe.net" },
+ { 0x42, "whois.arin.net" },
+ { 0x44, "whois.apnic.net" },
+ { 0x46, "whois.ripe.net" },
+ { 0x48, "whois.arin.net" },
+ { 0x4A, "whois.ripe.net" },
+
+ { 0x50, "whois.ripe.net" },
+ { 0x52, "whois.ripe.net" },
+ { 0x54, "whois.ripe.net" },
+ { 0x56, "whois.ripe.net" },
+ { 0x58, "whois.ripe.net" },
+ { 0x5A, "whois.ripe.net" },
+ { 0x5C, "whois.ripe.net" },
+ { 0x5E, "whois.ripe.net" },
+
+ { 0x80, "whois.apnic.net" },
+ { 0x82, "whois.apnic.net" },
+ { 0x84, "whois.apnic.net" },
+ { 0x86, "whois.apnic.net" },
+ { 0x88, "whois.apnic.net" },
+ { 0x8A, "whois.apnic.net" },
+ { 0x8C, "whois.apnic.net" },
+ { 0x8E, "whois.apnic.net" },
+ { 0x90, "whois.apnic.net" },
+ { 0x92, "whois.apnic.net" },
+ { 0x94, "whois.apnic.net" },
+ { 0x96, "whois.apnic.net" },
+ { 0x98, "whois.apnic.net" },
+ { 0x9A, "whois.apnic.net" },
+ { 0x9C, "whois.apnic.net" },
+ { 0x9E, "whois.apnic.net" },
+ { 0xA0, "whois.apnic.net" },
+ { 0xA2, "whois.apnic.net" },
+ { 0xA4, "whois.apnic.net" },
+ { 0xA6, "whois.apnic.net" },
+ { 0xA8, "whois.apnic.net" },
+ { 0xAA, "whois.apnic.net" },
+ { 0xAC, "whois.apnic.net" },
+ { 0xAE, "whois.apnic.net" },
{ 0, NULL }
};
struct as_del {
- unsigned short first;
- unsigned short last;
- const char *serv;
+ const unsigned short first;
+ const unsigned short last;
+ const char *serv;
};
-struct as_del as_assign[] = {
+const struct as_del as_assign[] = {
#include "as_del.h"
{ 0, 0, NULL }
};
diff --git a/debian/changelog b/debian/changelog
index 004695b..403e894 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,94 @@
+whois (4.6.25) unstable; urgency=medium
+
+ * Added the .fi TLD server. (Closes: #283714)
+ * Updated the IPv6 allocations.
+ * Updated the Polish translation.
+
+ -- Marco d'Itri <md@linux.it> Sat, 4 Dec 2004 16:06:42 +0100
+
+whois (4.6.24) unstable; urgency=medium
+
+ * Updated the .tf server. (Closes: #279647)
+ * Removed whois.nic.net.sg from the list of RIPE-like servers, because it's
+ not one anymore. Congratulations to SGNIC for breaking backward
+ compatibility. (Closes: #282931)
+ * Updated the RFC number in the man page. (Closes: #279645)
+ * Removed the ripe_servers_old list, because there is none left.
+
+ -- Marco d'Itri <md@linux.it> Sat, 27 Nov 2004 00:43:53 +0100
+
+whois (4.6.23) unstable; urgency=medium
+
+ * Fixed the moniker.com disclaimer strings.
+ * Updated the IPv6 allocations.
+ * Fixed some IPv4 allocations. (Closes: #272721, #274565)
+
+ -- Marco d'Itri <md@linux.it> Thu, 21 Oct 2004 14:21:42 +0200
+
+whois (4.6.22) unstable; urgency=medium
+
+ * Updated the onlinenic.com disclaimer strings. (Closes: #270721)
+ * Updated the IPv6 allocations.
+
+ -- Marco d'Itri <md@linux.it> Sun, 29 Aug 2004 20:19:58 +0200
+
+whois (4.6.21) unstable; urgency=medium
+
+ * Fixed a segfault in mkpasswd -H, made the argument of -H mandatory.
+ * Updated IPv6 allocations.
+
+ -- Marco d'Itri <md@linux.it> Wed, 25 Aug 2004 12:34:29 +0200
+
+whois (4.6.20) testing-proposed-updates; urgency=medium
+
+ * Updated IPv6 allocations, added support for the new allocations system.
+ * Added edu.ru TLD server.
+ * Updated es TLD server. (Closes: #264386)
+
+ -- Marco d'Itri <md@linux.it> Mon, 9 Aug 2004 18:48:32 +0200
+
+whois (4.6.19) unstable; urgency=high
+
+ * Updated IPv4 allocations.
+
+ -- Marco d'Itri <md@linux.it> Wed, 28 Jul 2004 00:50:00 +0200
+
+whois (4.6.18) unstable; urgency=medium
+
+ * Fix displaying of URLs of HTTP servers. (Closes: #258308)
+
+ -- Marco d'Itri <md@linux.it> Thu, 8 Jul 2004 22:24:18 +0200
+
+whois (4.6.17) unstable; urgency=medium
+
+ * Added new ASN allocation.
+ * Updated the German translation. (Closes: #254486)
+ * Removed whois.aunic.net from the list of RIPE-like servers, because
+ apparently it's not one anymore. (Closes: #257609, #257610)
+ * Updated .az, .au, .ba, .cy, .gl, .gr, .io, .ke, .ki, .la, .mn, .mo, .my,
+ .nf, .pr, .td, .tm, .uz TLD servers.
+
+ -- Marco d'Itri <md@linux.it> Wed, 7 Jul 2004 13:51:29 +0200
+
+whois (4.6.16) unstable; urgency=medium
+
+ * Added new IPv6 and ASN allocations.
+
+ -- Marco d'Itri <md@linux.it> Sat, 12 Jun 2004 12:36:45 +0200
+
+whois (4.6.15) unstable; urgency=medium
+
+ * Added new IPv4 and IPv6 allocations.
+
+ -- Marco d'Itri <md@linux.it> Thu, 13 May 2004 21:40:57 +0200
+
+whois (4.6.14) unstable; urgency=medium
+
+ * Removed whois.oleane.net from the list of RIPE-like servers, because
+ apparently it's not one anymore.
+
+ -- Marco d'Itri <md@linux.it> Fri, 16 Apr 2004 18:39:21 +0200
+
whois (4.6.13) unstable; urgency=medium
* Fix the DENIC code. (Closes: #242424)
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..b8626c4
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+4
diff --git a/debian/control b/debian/control
index 237c54b..d10a0a9 100644
--- a/debian/control
+++ b/debian/control
@@ -2,15 +2,15 @@ Source: whois
Section: net
Priority: standard
Maintainer: Marco d'Itri <md@linux.it>
-Standards-Version: 3.6.1
-Build-Depends: debhelper, gettext, libidn11-dev
+Standards-Version: 3.6.1.1
+Build-Depends: debhelper (>= 4), gettext, libidn11-dev
Package: whois
Architecture: any
Depends: ${shlibs:Depends}
Replaces: bsdmainutils (<= 4.5.1), bsdutils (<< 3.0-0)
Description: The GNU whois client
- This is a new whois (RFC 954) client rewritten from scratch.
+ This is a new whois (RFC 3912) client rewritten from scratch.
It is inspired from and compatible with the usual BSD and RIPE whois(1)
programs.
It is intelligent and can automatically select the appropriate whois
diff --git a/debian/rules b/debian/rules
index 0e6c9ea..2306f07 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,45 +1,41 @@
#!/usr/bin/make -f
-# Original version Copyright by Ian Jackson.
-
SHELL+= -e
#export DH_VERBOSE=1
+D := $(shell pwd)/debian/whois
+
build:
- $(checkdir)
+ dh_testdir
make whois mkpasswd \
OPTS="-O2 -g -DCONFIG_FILE=\\\"/etc/whois.conf\\\"" \
HAVE_LIBIDN=1
- touch build
+ touch $@
clean:
- $(checkdir)
+ dh_testdir
-rm -f build
-make distclean
- -cd debian && rm -rf tmp files* substvars *debhelper
+ dh_clean
binary-arch: checkroot build
- $(checkdir)
- -rm -rf debian/tmp
+ dh_testdir
+ dh_clean
dh_installdirs usr/bin
- install whois mkpasswd debian/tmp/usr/bin/
- cd po && make install BASEDIR=../debian/tmp
- dh_installmanpages
+ install whois mkpasswd $D/usr/bin/
+ cd po && make install BASEDIR=$D
+ dh_installman whois.1 mkpasswd.1
dh_installdocs README
dh_installchangelogs
dh_strip
dh_compress
dh_fixperms
dh_shlibdeps
- dh_gencontrol
dh_installdeb
+ dh_gencontrol
dh_builddeb
-define checkdir
- test -f debian/rules
-endef
-
binary: binary-arch
checkroot:
diff --git a/ip_del_list b/ip_del_list
index becd934..d863a3e 100644
--- a/ip_del_list
+++ b/ip_del_list
@@ -4,8 +4,8 @@
# unless they are very big and contains multiple assignments to different
# customers documented in the whois database.
#
-24.192.0.0/14 apnic
24.132.0.0/14 ripe
+58.0.0.0/7 apnic
61.72.0.0/13 whois.nic.or.kr
61.80.0.0/14 whois.nic.or.kr
61.84.0.0/15 whois.nic.or.kr
@@ -35,6 +35,7 @@
149.224.0.0/12 ripe
149.240.0.0/13 ripe
149.248.0.0/14 ripe
+150.183.0.0/16 whois.nic.or.kr
150.254.0.0/16 ripe
151.0.0.0/10 ripe
151.64.0.0/11 ripe
@@ -78,6 +79,7 @@
200.17.0.0/16 whois.nic.br
200.18.0.0/15 whois.nic.br
200.20.0.0/16 whois.nic.br
+200.96.0.0/13 whois.nic.br
200.128.0.0/9 whois.nic.br
200.0.0.0/7 lacnic
202.11.0.0/16 whois.nic.ad.jp
@@ -155,13 +157,22 @@
218.48.0.0/13 whois.nic.or.kr
218.144.0.0/12 whois.nic.or.kr
218.232.0.0/13 whois.nic.or.kr
-218.0.0.0/7 apnic
219.240.0.0/15 whois.nic.or.kr
219.248.0.0/13 whois.nic.or.kr
-220.64.0.0/13 whois.nic.or.kr
-220.72.0.0/13 whois.nic.or.kr
-220.80.0.0/14 whois.nic.or.kr
-220.84.0.0/15 whois.nic.or.kr
+218.0.0.0/7 apnic
+220.64.0.0/11 whois.nic.or.kr
+220.96.0.0/14 whois.nic.ad.jp
+220.103.0.0/16 whois.nic.or.kr
+220.104.0.0/13 whois.nic.ad.jp
+220.149.0.0/16 whois.nic.or.kr
+221.138.0.0/13 whois.nic.or.kr
+221.144.0.0/12 whois.nic.or.kr
+221.160.0.0/13 whois.nic.or.kr
+222.96.0.0/12 whois.nic.or.kr
+222.112.0.0/13 whois.nic.or.kr
+222.120.0.0/15 whois.nic.or.kr
+222.122.0.0/16 whois.nic.or.kr
+222.232.0.0/13 whois.nic.or.kr
223.0.0.0/8 UNALLOCATED # returned from APNIC to IANA
220.0.0.0/6 apnic
# that's all... here starts the multicast space
diff --git a/mkpasswd.1 b/mkpasswd.1
index 1ab62e1..dbfc161 100644
--- a/mkpasswd.1
+++ b/mkpasswd.1
@@ -14,11 +14,11 @@ libc function using the given salt.
.SH OPTIONS
.TP
.B -S, --salt=STRING
-Use the \fISTRING\fP as salt. It must not contain prefixes like \fI$1$\fP.
+Use the \fISTRING\fP as salt. It must not contain prefixes such as \fI$1$\fP.
.TP
.B -H, --hash=TYPE
Compute the password using the \fITYPE\fP algorithm.
-If \fITYPE\fP is missing available algorithms are printed.
+If \fITYPE\fP is \fIhelp\fP available algorithms are printed.
.TP
.B -P, --password-fd=NUM
Read the password from file descriptor \fINUM\fP instead of using
diff --git a/mkpasswd.c b/mkpasswd.c
index 4963167..bf549c1 100644
--- a/mkpasswd.c
+++ b/mkpasswd.c
@@ -57,6 +57,7 @@ struct salt_prefix salt_prefixes[] = {
#if defined OpenBSD || defined FreeBSD
{ "blf", "$2$", 16, "\tBlowfish" },
#endif
+ { NULL, NULL, 0, NULL }
};
void generate_salt(char *buf, const unsigned int len);
@@ -79,7 +80,7 @@ int main(int argc, char *argv[])
textdomain(NLS_CAT_NAME);
#endif
- while ((ch = GETOPT_LONGISH(argc, argv, "hH::P:sS:V", longopts, 0)) > 0) {
+ while ((ch = GETOPT_LONGISH(argc, argv, "hH:P:sS:V", longopts, 0)) > 0) {
switch (ch) {
case 'H':
if (!optarg || strcasecmp("help", optarg) == 0) {
@@ -240,7 +241,7 @@ void display_help(void)
"\n"
"If PASSWORD is missing then it is asked interactively.\n"
"If no SALT is specified, a random one is generated.\n"
-"If TYPE is missing available algorithms are printed.\n"
+"If TYPE is 'help', available algorithms are printed.\n"
"\n"
"Report bugs to %s.\n"), "<md+whois@linux.it>");
}
@@ -248,7 +249,7 @@ void display_help(void)
void display_version(void)
{
printf("GNU mkpasswd %s\n\n", VERSION);
- puts("Copyright (C) 2001-2002 Marco d'Itri\n"
+ puts("Copyright (C) 2001-2004 Marco d'Itri\n"
"This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.");
}
diff --git a/po/de.po b/po/de.po
index 0a13de5..6dbf640 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,15 +1,15 @@
# Abgeleitet von whois.pot.
-# Copyright (C) 2001 Simon Richter
-# Simon Richter <Simon.Richter@in.tum.de> 2001
-#
+# Copyright (C) 2001 Simon Richter <Simon.Richter@in.tum.de>
+# Copyright (C) 2004 Adrian Bunk <bunk@fs.tum.de>
+#
+#
msgid ""
msgstr ""
-"Project-Id-Version: whois 4.4.13\n"
-"Report-Msgid-Bugs-To: \n"
+"Project-Id-Version: whois 4.6.16\n"
"POT-Creation-Date: 2003-12-01 18:31+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"
+"PO-Revision-Date: 2004-06-15 00:08+0100\n"
+"Last-Translator: Adrian Bunk <bunk@fs.tum.de>\n"
+"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -23,9 +23,10 @@ msgid ""
msgstr ""
"Version %s.\n"
"\n"
-"Senden sie Bugreports an %s.\n"
+"Senden Sie Bugreports an %s.\n"
-#: ../whois.c:151 ../whois.c:240
+#: ../whois.c:151
+#: ../whois.c:240
#, c-format
msgid "Using server %s.\n"
msgstr "Benutze Server %s.\n"
@@ -44,50 +45,47 @@ msgid "This TLD has no whois server."
msgstr "Diese TLD hat keinen whois-Server."
#: ../whois.c:186
-#, fuzzy
msgid "Connecting to whois.crsnic.net."
-msgstr "Verbinde zu whois.internic.net."
+msgstr "Verbinde mit whois.crsnic.net."
-#: ../whois.c:192 ../whois.c:203
-#, fuzzy, c-format
+#: ../whois.c:192
+#: ../whois.c:203
+#, c-format
msgid ""
"\n"
"Found a referral to %s.\n"
"\n"
msgstr ""
"\n"
-"InterNIC verweist auf %s.\n"
+"Verweis auf %s gefunden.\n"
"\n"
#: ../whois.c:197
-#, fuzzy
msgid "Connecting to whois.nic.cc."
-msgstr "Verbinde zu whois.internic.net."
+msgstr "Verbinde mit whois.nic.cc."
#: ../whois.c:208
-#, fuzzy
msgid "Connecting to whois.publicinterestregistry.net."
-msgstr "Verbinde zu whois.internic.net."
+msgstr "Verbinde mit whois.publicinterestregistry.net."
#: ../whois.c:214
-#, fuzzy, c-format
+#, c-format
msgid ""
"\n"
"Found referral to %s.\n"
"\n"
msgstr ""
"\n"
-"InterNIC verweist auf %s.\n"
+"Verweis auf %s gefunden.\n"
"\n"
#: ../whois.c:218
msgid "No whois server is known for this kind of object."
-msgstr ""
+msgstr "Hierfür ist kein Whois-Server bekannt."
#: ../whois.c:221
-#, fuzzy
msgid "Unknown AS number or IP network. Please upgrade this program."
-msgstr "Unbekannte AS-Nummer. Bitte upgraden Sie dieses Programm."
+msgstr "Unbekannte AS- oder IP-Netzwerk-Nummer. Bitte upgraden Sie dieses Programm."
#: ../whois.c:228
#, c-format
@@ -96,6 +94,9 @@ msgid ""
"Querying for the IPv4 endpoint %s of a 6to4 IPv6 address.\n"
"\n"
msgstr ""
+"\n"
+"Frage nach dem IPv4 Endpunkt %s einer 6to3 IPv6-Adresse.\n"
+"\n"
#: ../whois.c:249
#, c-format
@@ -106,15 +107,15 @@ msgstr ""
"Suche nach: \"%s\"\n"
"\n"
-#: ../whois.c:302 ../whois.c:305
+#: ../whois.c:302
+#: ../whois.c:305
#, c-format
msgid "Cannot parse this line: %s"
-msgstr ""
+msgstr "Kann diese Zeile nicht parsen: %s"
#: ../whois.c:446
-#, fuzzy
msgid "Warning: RIPE flags used with a traditional server."
-msgstr "Warnung: RIPE-Flags wurden ignoriert (\"traditioneller\" Server)."
+msgstr "Warnung: RIPE-Flags wurden mit einem \"traditionellen\" Server verwendet."
#: ../whois.c:503
#, c-format
@@ -141,7 +142,7 @@ msgstr "%s/tcp: unbekannter Dienst"
#: ../whois.c:661
msgid "Timeout."
-msgstr ""
+msgstr "Timeout."
#: ../whois.c:667
#, c-format
@@ -157,11 +158,9 @@ msgid ""
"-L find all Less specific matches\n"
"-m find first level more specific matches\n"
"-M find all More specific matches\n"
-"-c find the smallest match containing a mnt-irt "
-"attribute\n"
+"-c find the smallest match containing a mnt-irt attribute\n"
"-x exact match [RPSL only]\n"
-"-d return DNS reverse delegation objects too [RPSL "
-"only]\n"
+"-d return DNS reverse delegation objects too [RPSL only]\n"
"-i ATTR[,ATTR]... do an inverse lookup for specified ATTRibutes\n"
"-T TYPE[,TYPE]... only look for objects of TYPE\n"
"-K only primary keys are returned [RPSL only]\n"
@@ -171,8 +170,7 @@ msgid ""
"-a search all databases\n"
"-s SOURCE[,SOURCE]... search the database from SOURCE\n"
"-g SOURCE:FIRST-LAST find updates from SOURCE from serial FIRST to LAST\n"
-"-t TYPE request template for object of TYPE ('all' for a "
-"list)\n"
+"-t TYPE request template for object of TYPE ('all' for a list)\n"
"-v TYPE request verbose template for object of TYPE\n"
"-q [version|sources|types] query specified server info [RPSL only]\n"
"-F fast raw output (implies -r)\n"
@@ -205,8 +203,7 @@ msgstr ""
"-s QUELLE[,QUELLE]... suche in der Datenbank von QUELLE\n"
"-T TYP[,TYP]... suche nur nach Objekten vom Typ TYP\n"
"-t TYP fordere Formular für Typ TYP an (\"all\" für eine \n"
-" Liste)-v TYP fordere ausführliches "
-"Formular für Typ TYP an\n"
+" Liste)-v TYP fordere ausführliches Formular für Typ TYP an\n"
"-q [version|quellen] frage nach angegebener Server-Information [nur RPSL]\n"
"-d zeige auch DNS-Rückübertragungsobjekte [nur RPSL]\n"
"-K zeige nur Primärschlüssel [nur RPSL]\n"
@@ -216,41 +213,42 @@ msgstr ""
#: ../mkpasswd.c:55
msgid "\tstandard 56 bit DES-based crypt(3)"
-msgstr ""
+msgstr "\tStandard 56 Bit DES-basiertes crypt(3)"
#: ../mkpasswd.c:96
#, c-format
msgid "Invalid hash type '%s'.\n"
-msgstr ""
+msgstr "Falscher Hash-Typ '%s'.\n"
#: ../mkpasswd.c:105
#, c-format
msgid "Invalid number '%s'.\n"
-msgstr ""
+msgstr "Falsche Nummer '%s'.\n"
#: ../mkpasswd.c:123
#, c-format
msgid "Try '%s --help' for more information.\n"
-msgstr ""
+msgstr "Versuchen Sie '%s --help' für mehr Informationen.\n"
#: ../mkpasswd.c:152
#, c-format
msgid "Wrong salt length: %d byte(s) when %d expected.\n"
-msgstr ""
+msgstr "Falsche Salt-Länge: %d Byte(s), aber%d wurden erwartet.\n"
#: ../mkpasswd.c:158
#, c-format
msgid "Illegal salt character '%c'.\n"
-msgstr ""
+msgstr "Illegaler Salt-Buchstabe '%c'.\n"
-#: ../mkpasswd.c:172 ../mkpasswd.c:199
+#: ../mkpasswd.c:172
+#: ../mkpasswd.c:199
msgid "Password: "
-msgstr ""
+msgstr "Passwort:"
#: ../mkpasswd.c:193
#, c-format
msgid "Illegal password character '0x%hhx'.\n"
-msgstr ""
+msgstr "Illegaler Passwort-Buchstabe '0x%hhx'.\n"
#: ../mkpasswd.c:230
msgid ""
@@ -258,6 +256,9 @@ msgid ""
"Crypts the PASSWORD using crypt(3).\n"
"\n"
msgstr ""
+"Aufruf: mkpasswd [OPTIONEN] ... {PASSWORT] [SALT]]\n"
+"Verschluesselt das PASWORT mit crypt(3).\n"
+"\n"
#: ../mkpasswd.c:233
#, c-format
@@ -279,21 +280,5 @@ msgstr ""
#: ../mkpasswd.c:260
msgid "Available algorithms:\n"
-msgstr ""
+msgstr "Verfügbare Algorithmen:\n"
-#~ 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."
diff --git a/po/it.po b/po/it.po
index 2c5b371..0ffc354 100644
--- a/po/it.po
+++ b/po/it.po
@@ -4,12 +4,12 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: whois 4.4.13\n"
+"Project-Id-Version: whois 4.6.21\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2003-12-01 18:31+0100\n"
-"PO-Revision-Date: 2003-05-05 18:21+0200\n"
+"PO-Revision-Date: 2004-08-25 12:41+0200\n"
"Last-Translator: Marco d'Itri <md@linux.it>\n"
-"Language-Team: Italian <it@li.org>\n"
+"Language-Team: Italian <tp@lists.linux.it>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
@@ -291,8 +291,7 @@ msgstr ""
"\n"
"Se la PASSWORD non č specificata allora viene chiesta interattivamente.\n"
"Se il SALE non č specificato ne viene generato uno casuale.\n"
-"Se il TIPO non č specificato viene stampata la lista degli algoritmi\n"
-"disponibili.\n"
+"Se il TIPO č 'help' viene stampata la lista degli algoritmi disponibili.\n"
"\n"
"Segnalare i bug a %s.\n"
diff --git a/po/pl.po b/po/pl.po
index 1e2db87..199aebd 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,23 +1,21 @@
-# cokolwi3k. whois.pot.
+# Polish translation for whois.
# Michał 'CeFeK' Nazarewicz <cefek@career.pl>, 1999
# Przemysław Knycz <djrzulf@pld.org.pl>, 2003
-# Jakub Bogusz <qboosh@pld-linux.org>, 2003
-#
-# BUG: xxx
+# Jakub Bogusz <qboosh@pld-linux.org>, 2003-2004
#
msgid ""
msgstr ""
-"Project-Id-Version: whois 4.6.9\n"
+"Project-Id-Version: whois 4.6.24\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-12-01 18:31+0100\n"
-"PO-Revision-Date: 2003-12-02 20:41+0100\n"
+"POT-Creation-Date: 2004-11-28 15:03+0100\n"
+"PO-Revision-Date: 2004-11-28 15:09+0100\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../whois.c:108
+#: ../whois.c:107
#, c-format
msgid ""
"Version %s.\n"
@@ -28,102 +26,84 @@ msgstr ""
"\n"
"Błędy proszę zgłaszać na adres %s.\n"
-#: ../whois.c:151 ../whois.c:240
+#: ../whois.c:157 ../whois.c:250
#, c-format
msgid "Using server %s.\n"
msgstr "Użycie serwera %s.\n"
-#: ../whois.c:173
-#, c-format
-msgid "Using default server %s.\n"
-msgstr "Użycie domyślnego serwera %s.\n"
-
-#: ../whois.c:176
+#: ../whois.c:200
msgid "This TLD has no whois server, but you can access the whois database at"
msgstr ""
"Ta główna domena nie ma serwera whois, ale można użyć bazy danych whois pod"
-#: ../whois.c:182
+#: ../whois.c:208
msgid "This TLD has no whois server."
msgstr "Ta główna domena nie ma serwera whois."
-#: ../whois.c:186
+#: ../whois.c:211
+msgid "No whois server is known for this kind of object."
+msgstr "Dla tego rodzaju obiektu nie jest znany żaden serwer whois."
+
+#: ../whois.c:214
+msgid "Unknown AS number or IP network. Please upgrade this program."
+msgstr "Nieznany numer AS lub sieć IP. Proszę uaktualnić ten program."
+
+#: ../whois.c:218
msgid "Connecting to whois.crsnic.net."
msgstr "Łączenie z whois.crsnic.net."
-#: ../whois.c:192 ../whois.c:203
-#, c-format
-msgid ""
-"\n"
-"Found a referral to %s.\n"
-"\n"
-msgstr ""
-"\n"
-"Znaleziono odniesienie do %s.\n"
-"\n"
+#: ../whois.c:224
+msgid "Connecting to whois.publicinterestregistry.net."
+msgstr "Łączenie z whois.publicinterestregistry.net."
-#: ../whois.c:197
+#: ../whois.c:230
msgid "Connecting to whois.nic.cc."
msgstr "Łączenie z whois.nic.cc."
-#: ../whois.c:208
-msgid "Connecting to whois.publicinterestregistry.net."
-msgstr "Łączenie z whois.publicinterestregistry.net."
-
-#: ../whois.c:214
+#. XXX should fail if p = 0.0.0.0
+#: ../whois.c:237
#, c-format
msgid ""
"\n"
-"Found referral to %s.\n"
+"Querying for the IPv4 endpoint %s of a 6to4 IPv6 address.\n"
"\n"
msgstr ""
"\n"
-"Znaleziono odniesienie do %s.\n"
+"Pytanie o zakończenie IPv4 %s adresu IPv6 typu 6to4.\n"
"\n"
-#: ../whois.c:218
-msgid "No whois server is known for this kind of object."
-msgstr "Dla tego rodzaju obiektu nie jest znany żaden serwer whois."
-
-#: ../whois.c:221
-msgid "Unknown AS number or IP network. Please upgrade this program."
-msgstr "Nieznany numer AS lub sieć IP. Proszę uaktualnić ten program."
-
-#: ../whois.c:228
+#: ../whois.c:251
#, c-format
msgid ""
-"\n"
-"Querying for the IPv4 endpoint %s of a 6to4 IPv6 address.\n"
+"Query string: \"%s\"\n"
"\n"
msgstr ""
-"\n"
-"Pytanie o zakończenie IPv4 %s adresu IPv6 typu 6to4.\n"
+"Zapytanie: \"%s\"\n"
"\n"
-#: ../whois.c:249
+#: ../whois.c:261
#, c-format
msgid ""
-"Query string: \"%s\"\n"
+"\n"
+"\n"
+"Found a referral to %s.\n"
"\n"
msgstr ""
-"Zapytanie: \"%s\"\n"
+"\n"
+"\n"
+"Znaleziono odniesienie do %s.\n"
"\n"
-#: ../whois.c:302 ../whois.c:305
+#: ../whois.c:304 ../whois.c:307
#, c-format
msgid "Cannot parse this line: %s"
msgstr "Nie można przeanalizować tej linii: %s"
-#: ../whois.c:446
+#: ../whois.c:454
msgid "Warning: RIPE flags used with a traditional server."
msgstr "Uwaga: użyto flag RIPE ze starszym serwerem."
-#: ../whois.c:503
-#, c-format
-msgid "Detected referral to %s on %s.\n"
-msgstr "Wykryto odniesienie do %s na %s.\n"
-
-#: ../whois.c:520
+#: ../whois.c:578
msgid ""
"Catastrophic error: disclaimer text has been changed.\n"
"Please upgrade this program.\n"
@@ -131,26 +111,27 @@ msgstr ""
"Katastrofa! Tekst oświadczenia został zmieniony.\n"
"Proszę uaktualnić ten program.\n"
-#: ../whois.c:639
+#: ../whois.c:704
#, c-format
msgid "Host %s not found."
msgstr "Serwer %s nie został znaleziony."
-#: ../whois.c:649
+#: ../whois.c:714
#, c-format
msgid "%s/tcp: unknown service"
msgstr "%s/tcp: usługa nieznana"
-#: ../whois.c:661
+#: ../whois.c:733
msgid "Timeout."
msgstr "Upłynął limit czasu."
-#: ../whois.c:667
+#: ../whois.c:739
#, c-format
msgid "Interrupted by signal %d..."
msgstr "Przerwano sygnałem %d..."
-#: ../whois.c:728
+#: ../whois.c:826
+#, c-format
msgid ""
"Usage: whois [OPTION]... OBJECT...\n"
"\n"
@@ -227,42 +208,44 @@ msgstr ""
msgid "\tstandard 56 bit DES-based crypt(3)"
msgstr "\tstandardowa 56-bitowa, oparta o DES funkcja crypt(3)"
-#: ../mkpasswd.c:96
+#: ../mkpasswd.c:97
#, c-format
msgid "Invalid hash type '%s'.\n"
msgstr "Nieprawidłowy rodzaj skrótu '%s'.\n"
-#: ../mkpasswd.c:105
+#: ../mkpasswd.c:106
#, c-format
msgid "Invalid number '%s'.\n"
msgstr "Nieprawidłowa liczba '%s'.\n"
-#: ../mkpasswd.c:123
+#: ../mkpasswd.c:124
#, c-format
msgid "Try '%s --help' for more information.\n"
msgstr "'%s --help' poda więcej informacji.\n"
# : ../mkpasswd.c:152
-#: ../mkpasswd.c:152
+#: ../mkpasswd.c:153
#, c-format
msgid "Wrong salt length: %d byte(s) when %d expected.\n"
msgstr "Błędna długość zarodka: %d bajtów kiedy oczekiwano %d.\n"
-#: ../mkpasswd.c:158
+#: ../mkpasswd.c:159
#, c-format
msgid "Illegal salt character '%c'.\n"
msgstr "Błędny znak zarodka '%c'.\n"
-#: ../mkpasswd.c:172 ../mkpasswd.c:199
+#: ../mkpasswd.c:173 ../mkpasswd.c:200
+#, c-format
msgid "Password: "
msgstr "Hasło: "
-#: ../mkpasswd.c:193
+#: ../mkpasswd.c:194
#, c-format
msgid "Illegal password character '0x%hhx'.\n"
msgstr "Błędny znak w haśle '0x%hhx'.\n"
-#: ../mkpasswd.c:230
+#: ../mkpasswd.c:231
+#, c-format
msgid ""
"Usage: mkpasswd [OPTIONS]... [PASSWORD [SALT]]\n"
"Crypts the PASSWORD using crypt(3).\n"
@@ -272,7 +255,7 @@ msgstr ""
"Koduje HASŁO przy użyciu funkcji crypt(3).\n"
"\n"
-#: ../mkpasswd.c:233
+#: ../mkpasswd.c:234
#, c-format
msgid ""
" -H, --hash=TYPE select hash TYPE\n"
@@ -285,7 +268,7 @@ msgid ""
"\n"
"If PASSWORD is missing then it is asked interactively.\n"
"If no SALT is specified, a random one is generated.\n"
-"If TYPE is missing available algorithms are printed.\n"
+"If TYPE is 'help', available algorithms are printed.\n"
"\n"
"Report bugs to %s.\n"
msgstr ""
@@ -300,10 +283,11 @@ msgstr ""
"\n"
"Jeśli nie podano HASŁA, pobierane jest interaktywnie.\n"
"Jeśli nie podano ZARODKA, generowany jest losowy.\n"
-"Jeśli nie podano TYPU, wypisywane są dostępne algorytmy.\n"
+"Jeśli podano TYP 'help', wypisywane są dostępne algorytmy.\n"
"\n"
"Błędy proszę zgłaszać na adres %s.\n"
-#: ../mkpasswd.c:260
+#: ../mkpasswd.c:261
+#, c-format
msgid "Available algorithms:\n"
msgstr "Dostępne algorytmy:\n"
diff --git a/tld_serv_list b/tld_serv_list
index 9f11ab4..bb7f3b8 100644
--- a/tld_serv_list
+++ b/tld_serv_list
@@ -35,16 +35,15 @@
.info whois.afilias.info
.museum whois.museum
.name whois.nic.name
-# not yet delegated, I hope they will not screw up the hostname
-.pro whois.nic.pro
+.pro whois.registrypro.pro
.ac whois.nic.ac
.ad NONE # www.nic.ad
.ae whois.uaenic.ae
-.af NONE # was whois.nic.af
+.af NONE # whois.nic.af
.ag whois.nic.ag
.ai WEB http://whois.offshore.ai/
.al NONE # http://www.inima.al/Domains.html
-.am whois.amnic.net # down?
+.am whois.amnic.net
.am WEB https://www.amnic.net/whois/
.an NONE # http://www.una.net/an_domreg/
.ao NONE # www.dns.ao
@@ -52,15 +51,10 @@
.ar WEB http://www.nic.ar/consultas/consdom.html
.as whois.nic.as
.at whois.nic.at
-.asn.au whois.ausregistry.net.au
-.com.au whois.ausregistry.net.au
-.id.au whois.ausregistry.net.au
-.net.au whois.ausregistry.net.au
-.org.au whois.ausregistry.net.au
-.au whois.aunic.net # edu gov
+.au whois.ausregistry.net.au
#.aw # NIC? www.setarnet.aw
-.az NONE # www.nic.az
-.ba NONE # http://www.utic.net.ba/domen/
+.az WEB http://www.nic.az/AzCheck.htm
+.ba WEB http://www.nic.ba/stream/whois/
.bb WEB http://domains.org.bb/regsearch/
.bd NONE # http://www.bttb.net/
.be whois.dns.be
@@ -95,24 +89,24 @@
.co WEB https://www.nic.co/
.cr WEB http://www.nic.cr/servlet/niccr?tid=TWhois&Lng=5&Act=NEW
.cu WEB http://www.nic.cu/consult.html
-#.cv # NIC? dns.cv?
+.cv NONE # www.dns.cv?
.cx whois.nic.cx
-.cy NONE # www.nic.cy
+.cy WEB http://www.nic.cy/nslookup/online_database.php
.cz whois.nic.cz
.de whois.denic.de
.dj whois.domain.dj
.dk whois.dk-hostmaster.dk
-.dm NONE # www.domains.dm ?
+.dm NONE # www.domains.dm
.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
+.eg NONE # http://www.ise.org.eg/domain.htm http://www.frcu.eun.eg/docs/e/dns.php
#.eh
-.er NONE # NO NIC http://www.afridns.org/er/
-.es WEB http://www.nic.es/cgi-bin/consulta.whois
+.er NONE # http://www.afridns.org/er/tld_er.txt
+.es WEB https://www.nic.es/esnic/jsp/whois_ctos.jsp
#.et NONE # NIC? www.telecom.net.et
-.fi WEB https://domain.ficora.fi/fiDomain/aca.aspx
+.fi whois.ficora.fi
.fj whois.usp.ac.fj
.fk NONE # http://www.fidc.org.fk/domain-registration/home.htm
.fm WEB http://www.dot.fm/whois.html
@@ -127,12 +121,12 @@
.gg whois.channelisles.net
.gh NONE # http://www.ghana.com.gh/domain.htm
.gi WEB http://whois.gibnet.gi/
-.gl whois.ripe.net # www.nic.gl
+.gl NONE # 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/ http://www.getesa.gq/
-.gr WEB https://grweb.ics.forth.gr/english/
+.gr WEB https://grweb.ics.forth.gr/Whois?lang=en
.gs whois.adamsnames.tc
.gt WEB http://www.gt/whois.htm
.gu WEB http://gadao.gov.gu/Scripts/wwsquery/wwsquery.dll?hois=guamquery
@@ -140,16 +134,16 @@
#.gy # NIC? (UPR)
.hk whois.hkdnr.net.hk
.hm whois.registry.hm
-.hn NONE # www.nic.hn
+.hn NONE # http://www.nic.hn/busquedas/
.hr WEB http://www.dns.hr/pretrazivanje.html
-#.ht # NIC? http://www.haitiworld.com/
+.ht NONE # http://www.nic.ht/
.hu whois.nic.hu
.id whois.idnic.net.id
.ie whois.domainregistry.ie
.il whois.isoc.org.il
.im WEB http://www.nic.im/exist.html
.in whois.ncst.ernet.in
-.io WEB http://www.io.io/whois.html
+.io whois.nic.io
#.iq # see http://nic-iq.nic-naa.net/
.ir whois.nic.ir
.is whois.isnet.is
@@ -158,10 +152,10 @@
#.jm # NIC? uwimona.edu.jm http://nic.jm
.jo WEB http://www.nis.jo/dns/ # old: http://amon.nic.gov.jo/dns/
.jp whois.nic.ad.jp
-.ke NONE # http://www.kenic.or.ke/
+.ke whois.kenic.or.ke
.kg whois.domain.kg
.kh NONE # http://www.mptc.gov.kh/Reculation/DNS.htm
-#.ki # NIC? www.tsk.net.ki
+.ki WEB http://www.ki/dns/
.km NONE # NO NIC
#.kn # NO NIC (UPR)
#.kp
@@ -169,13 +163,13 @@
.kw WEB http://www.domainname.net.kw
.ky WEB http://146.115.157.215/whoisfrontend.asp
.kz whois.domain.kz
-#.la # was whois.nic.la. See lacnic.net too
+.la whois.nic.la
.lb WEB http://www.aub.edu.lb/lbdr/search.html
.lc NONE # http://www.isisworld.lc/domains/
.li whois.nic.li
.lk whois.nic.lk
.lr NONE # http://www.psg.com/dns/lr/
-.ls NONE # NIC?
+.ls NONE # NIC? http://www.co.ls/
.lt whois.ripe.net
.lu whois.dns.lu
.lv whois.nic.lv
@@ -188,9 +182,9 @@
#.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
-.mp NONE # www.marketplace.mp
+.mn whois.nic.mn
+.mo NONE # http://www.monic.net.mo/
+.mp NONE # www.nic.mp
#.mq # www.nic.mq broken like gp
.mr NONE # http://www.univ-nkc.mr/nic_mr.html
.ms whois.adamsnames.tc
@@ -199,12 +193,12 @@
#.mv # NIC? dhiraagu.com.mv
.mw WEB http://www.registrar.mw/
.mx whois.nic.mx
-.my WEB http://www.mynic.net.my/newhp/mynic-lookup.htm
+.my whois.mynic.net.my
#.mz # NIC? www.uem.mz
.na whois.na-nic.com.na
.nc whois.cctld.nc
#.ne # NIC? http://www.intnet.ne
-.nf NONE # http://www.names.nf
+.nf WEB http://whois.nic.nf/whois.jsp
.ng NONE # http://psg.com/dns/ng/
.ni NONE # www.nic.ni
.nl whois.domain-registry.nl
@@ -223,7 +217,7 @@
.pl whois.dns.pl
.pm whois.nic.fr
.pn WEB http://www.pitcairn.pn/PnRegistry/CheckAvailability.html
-.pr NONE # http://www.uprr.pr/
+.pr WEB http://www.nic.pr/domain/whois.asp
.ps WEB http://www.nic.ps/whois/
.pt whois.dns.pt
.pw whois.nic.pw
@@ -231,12 +225,13 @@
.qa NONE # http://www.qatar.net.qa/services/virtual.htm
.re whois.nic.fr
.ro whois.rotld.ro
+.edu.ru whois.informika.ru
.ru whois.ripn.net
.rw WEB http://www.nic.rw/cgi-bin/whoisrw.pl
.sa saudinic.net.sa
.sb WEB http://www.nic.net.sb/search.htm
.sc NONE # www.nic.sc
-.sd NONE # http://www.sudatel.sd - not functional
+.sd NONE # http://www.isoc.sd/sd.php
.se whois.nic-se.se
.sg whois.nic.net.sg
.sh whois.nic.sh
@@ -251,16 +246,16 @@
.st whois.nic.st
.su whois.ripn.net
.sv WEB http://www.uca.edu.sv/dns/ # http://www.svnet.org.sv/
-#.sy # NIC? (usually offline?)
+#.sy # NIC? www.ste.gov.sy
.sz NONE # http://www.sispa.org.sz/
.tc whois.adamsnames.tc
-.td NONE # www.nic.td
-.tf whois.adamsnames.tc
+.td WEB http://www.nic.td/
+.tf whois.nic.tf
.tg WEB http://www.nic.tg/
.th whois.thnic.net
.tj whois.nic.tj
.tk whois.dot.tk
-.tm NONE # www.nic.tm
+.tm whois.nic.tm
.tn NONE # http://www.ati.tn/Nic/
.to whois.tonic.to
.tp WEB http://cgi.connect.ie/cgi-bin/tplookup.cgi
@@ -279,7 +274,7 @@
.us whois.nic.us
.com.uy WEB http://dns.antel.net.uy/clientes/consultar.htm
.uy WEB http://www.rau.edu.uy/rau/dom/
-.uz WEB http://www.noc.uz/
+.uz WEB http://www.noc.uz/dom_01.htm
.va whois.ripe.net
.vc whois.opensrs.net
.ve WEB http://www.nic.ve/nicwho01.html # rwhois.reacciun.ve:4321
@@ -300,7 +295,6 @@
.za NONE # http://www2.frd.ac.za/uninet/zadomains.html
.zm NONE # http://www.zamnet.zm/domain.shtml
#.zw # NIC? zptc.co.zw http://www.zispa.co.zw/
--au-dom whois.aunic.net
-dom whois.networksolutions.com
-org whois.networksolutions.com
-hst whois.networksolutions.com
@@ -310,7 +304,7 @@
-lacnic whois.lacnic.net
-gandi whois.gandi.net
-ap whois.apnic.net
--au whois.aunic.net
+-ar whois.aunic.net
-cn whois.cnnic.net.cn
-dk whois.dk-hostmaster.dk
-ti whois.telstra.net
diff --git a/whois.1 b/whois.1
index 4ba4764..fd79a2e 100644
--- a/whois.1
+++ b/whois.1
@@ -1,4 +1,4 @@
-.TH "WHOIS" "1" "3 December 1999" "Marco d'Itri" "Debian GNU/Linux"
+.TH "WHOIS" "1" "27 November 2004" "Marco d'Itri" "Debian GNU/Linux"
.SH "NAME"
whois \- client for the whois directory service
.SH "SYNOPSIS"
@@ -21,7 +21,7 @@ whois \- client for the whois directory service
.I keyword
.PP
.SH "DESCRIPTION"
-\fBwhois\fP searches for an object in a \fIRFC\-812\fP database.
+\fBwhois\fP searches for an object in a \fIRFC\ 3912\fP database.
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
@@ -81,7 +81,7 @@ of objects are located. If the variable does not exist then
If this variable is defined, legal disclaimers will be hidden even if
the \fI\-H\fP flag is not used.
.SH "SEE ALSO"
-\fIRFC 812\fP: NICNAME/WHOIS
+\fIRFC 3912\fP: WHOIS Protocol Specification
.PP
\fIRIPE\-223\fP: RIPE NCC Database Documentation
.PP
diff --git a/whois.c b/whois.c
index c3d771f..6167e43 100644
--- a/whois.c
+++ b/whois.c
@@ -186,7 +186,9 @@ const char *handle_query(const char *hserver, const char *hport,
if (hport) {
server = strdup(hserver);
port = strdup(hport);
- } else
+ } else if (hserver[0] < ' ')
+ server = strdup(hserver);
+ else
split_server_port(hserver, &server, &port);
switch (server[0]) {
@@ -231,6 +233,7 @@ const char *handle_query(const char *hserver, const char *hport,
break;
case 0x0A:
p = convert_6to4(qstring);
+ /* XXX should fail if p = 0.0.0.0 */
printf(_("\nQuerying for the IPv4 endpoint %s of a 6to4 IPv6 address.\n\n"), p);
server = whichwhois(p);
qstring = p; /* XXX leak */
@@ -341,22 +344,35 @@ const char *whichwhois(const char *s)
/* IPv6 address */
if (strchr(s, ':')) {
- 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 "\x06"; /* unknown allocation */
- } else if (strncmp(s, "2002:", 5) == 0) {
- return "\x0A";
- } else if (strncasecmp(s, "3ffe:", 5) == 0)
- return "whois.6bone.net";
- /* RPSL hierarchical object like AS8627:fltr-TRANSIT-OUT */
- else if (strncasecmp(s, "as", 2) == 0 && isasciidigit(s[2]))
- return whereas(atoi(s + 2));
- else
+ unsigned long v6prefix, v6net;
+ const struct ip6_del *ip6_assign;
+
+ v6prefix = strtol(s, NULL, 16);
+
+ if (v6prefix == 0) {
+ /* RPSL hierarchical object like AS8627:fltr-TRANSIT-OUT */
+ if (strncasecmp(s, "as", 2) == 0 && isasciidigit(s[2]))
+ return whereas(atoi(s + 2));
return "\x05";
+ } else if (v6prefix == 0x3FFE) {
+ return "whois.6bone.net";
+ } else if (v6prefix == 0x2002) {
+ return "\x0A";
+ } else if (v6prefix == 0x2001) {
+ v6net = strtol(s + 5, NULL, 16); /* second u16 */
+ v6net = (v6net & 0xFE00) >> 8; /* first 7 bits */
+ ip6_assign = ip6_assign_misc;
+ } else if (v6prefix >= 0x2400 && v6prefix <= 0x3A00) {
+ v6net = (v6prefix & 0xFC00) >> 8; /* first 6 bits */
+ ip6_assign = ip6_assign_rirs;
+ } else
+ return "\x06";
+
+ for (i = 0; ip6_assign[i].serv; i++)
+ if (v6net == ip6_assign[i].net)
+ return ip6_assign[i].serv;
+
+ return "\x06"; /* unknown allocation */
}
/* email address */
@@ -433,15 +449,6 @@ char *queryformat(const char *server, const char *flags, const char *query)
isripe = 1;
break;
}
- if (!isripe)
- for (i = 0; ripe_servers_old[i]; i++)
- if (strcmp(server, ripe_servers_old[i]) == 0) {
- strcat(buf, "-V");
- strcat(buf, client_tag);
- strcat(buf, " ");
- isripe = 1;
- break;
- }
if (*flags) {
if (!isripe && strcmp(server, "whois.corenic.net") != 0)
puts(_("Warning: RIPE flags used with a traditional server."));
diff --git a/whois.spec b/whois.spec
index a3fe987..5bee55f 100644
--- a/whois.spec
+++ b/whois.spec
@@ -1,11 +1,11 @@
Summary: Enhanced WHOIS client
Name: whois
-Version: 4.6.11
+Version: 4.6.25
Release: 1
License: GPL
Vendor: Marco d'Itri <md@linux.it>
Group: Applications/Internet
-Source: http://www.linux.it/~md/software/whois_%{version}.tar.gz
+Source: http://ftp.debian.org/debian/pool/main/w/whois/whois_%{version}.tar.gz
BuildRoot: /var/tmp/%{name}-root
Prefix: /usr