Skip to content

Instantly share code, notes, and snippets.

@rmoriz
Created November 30, 2011 21:09
Show Gist options
  • Select an option

  • Save rmoriz/1410836 to your computer and use it in GitHub Desktop.

Select an option

Save rmoriz/1410836 to your computer and use it in GitHub Desktop.
jwhois-4 patches of RHEL6 beta by Redhat
diff -up jwhois-4.0/example/jwhois.conf_old jwhois-4.0/example/jwhois.conf
--- jwhois-4.0/example/jwhois.conf_old 2007-03-26 11:12:08.000000000 +0200
+++ jwhois-4.0/example/jwhois.conf 2008-10-13 14:43:48.000000000 +0200
@@ -593,13 +593,12 @@ cidr6-blocks {
"2001:1600::/23" = "whois.ripe.net";
"2001:1800::/23" = "whois.arin.net";
"2001:1A00::/23" = "whois.ripe.net";
- "2001:1C00::/23" = "whois.ripe.net";
- "2001:1E00::/23" = "whois.ripe.net";
+ "2001:1C00::/22" = "whois.ripe.net";
"2001:2000::/20" = "whois.ripe.net";
"2001:3000::/21" = "whois.ripe.net";
"2001:3800::/22" = "whois.ripe.net";
"2001:4000::/23" = "whois.ripe.net";
- "2001:4200::/23" = "whois.arin.net";
+ "2001:4200::/23" = "whois.afrinic.net";
"2001:4400::/23" = "whois.apnic.net";
"2001:4600::/23" = "whois.ripe.net";
"2001:4800::/23" = "whois.arin.net";
@@ -612,21 +611,15 @@ cidr6-blocks {
"2003:0000::/18" = "whois.ripe.net";
- "2400:0000::/19" = "whois.apnic.net";
- "2400:2000::/19" = "whois.apnic.net";
- "2400:4000::/21" = "whois.apnic.net";
- "2404:0000::/23" = "whois.apnic.net";
-
- "2600:0000::/22" = "whois.arin.net";
- "2604:0000::/22" = "whois.arin.net";
- "2608:0000::/22" = "whois.arin.net";
- "260C:0000::/22" = "whois.arin.net";
+ "2400:0000::/12" = "whois.apnic.net";
+
+ "2600:0000::/12" = "whois.arin.net";
"2610:0000::/23" = "whois.arin.net";
+ "2620:0000::/23" = "whois.arin.net";
- "2800:0000::/23" = "whois.lacnic.net";
+ "2800:0000::/12" = "whois.lacnic.net";
- "2A00:0000::/21" = "whois.ripe.net";
- "2A01:0000::/16" = "whois.ripe.net";
+ "2C00:0000::/12" = "whois.afrinic.net";
#
# Experimental IPv6 network 6bone (RFC2471)
diff -up jwhois-4.0/example/jwhois.conf.conf_update jwhois-4.0/example/jwhois.conf
--- jwhois-4.0/example/jwhois.conf.conf_update 2009-02-27 10:17:01.000000000 +0100
+++ jwhois-4.0/example/jwhois.conf 2009-02-27 10:57:26.000000000 +0100
@@ -32,6 +32,7 @@ whois-servers {
"^CORE-[0-9]+$" = "struct handles";
"^CO[CH]O-[0-9]+$" = "struct handles";
".*-[A-Z]+$" = "struct handles";
+ ".*-6BONE$" = "struct handles";
#
# Catch AS numbers
@@ -86,6 +87,7 @@ whois-servers {
# Pseudo-ccTLDs must be listed above gTLDs
#
"\\.ae\\.org$" = "whois.centralnic.net";
+ "\\.ar\\.com$" = "whois.centralnic.com";
"\\.br\\.com$" = "whois.centralnic.net";
"\\.cn\\.com$" = "whois.centralnic.net";
"\\.de\\.com$" = "whois.centralnic.net";
@@ -108,17 +110,21 @@ whois-servers {
"\\.uy\\.com$" = "whois.centralnic.net";
"\\.web\\.com$" = "whois.centralnic.net";
"\\.za\\.com$" = "whois.centralnic.net";
+ "\\.za\\.net$" = "whois.za.net";
+ "\\.za\\.org$" = "whois.za.org";
"\\.ac$" = "whois.nic.ac";
- "\\.ae$" = "whois.uaenic.ae";
+ "\\.ae$" = "whois.aeda.net.ae";
"\\.aero$" = "whois.aero";
- "\\.af$" = "whois.nic.af";
+ "\\.af$" = "whois.cocca.cx";
"\\.ag$" = "whois.nic.ag";
- "\\.ai$" = "whois.offshore.ai";
+ "\\.ai$" = "whois.ai";
"\\.al$" = "whois.ripe.net";
"\\.am$" = "whois.amnic.net";
"\\.ar$" = "www.nic.ar";
+ "\\.arpa$" = "whois.iana.org";
"\\.as$" = "whois.nic.as";
+ "\\.asia$" = "whois.nic.asia";
"\\.at$" = "whois.nic.at";
"\\.asn\\.au$" = "whois.ausregistry.net.au";
"\\.com\\.au$" = "whois.ausregistry.net.au";
@@ -130,25 +136,33 @@ whois-servers {
"\\.ba$" = "whois.ripe.net";
"\\.be$" = "whois.dns.be";
"\\.bg$" = "whois.register.bg";
- "\\.bi$" = "www.nic.bi";
- "\\.biz$" = "whois.neulevel.biz";
+ "\\.bi$" = "whois.nic.bi";
+ "\\.biz$" = "whois.biz";
"\\.bj$" = "whois.nic.bj";
"\\.bm$" = "rwhois.ibl.bm 4321";
+ "\\.bo$" = "whois.nic.bo";
"\\.br$" = "whois.nic.br";
"\\.bv$" = "whois.ripe.net";
"\\.by$" = "whois.ripe.net";
"\\.bz$" = "whois.belizenic.bz";
+ "\\.co\\.ca$" = "whois.co.ca";
"\\.ca$" = "whois.cira.ca";
"\\.cat$" = "whois.cat";
- "\\.cc$" = "whois.nic.cc";
+ "\\.cc$" {
+ whois-server = "ccwhois.verisign-grs.com";
+ query-format = "domain $*";
+ }
"\\.cd$" = "whois.nic.cd";
"\\.cg$" = "www.nic.cg";
"\\.ch$" = "whois.nic.ch";
"\\.ci$" = "whois.nic.ci";
"\\.ck$" = "whois.nic.ck";
"\\.cl$" = "whois.nic.cl";
+ "\\.co\\.cm$" = "whois.netcom.cm";
+ "\\.com\\.cm$" = "whois.netcom.cm";
+ "\\.net\\.cm$" = "whois.netcom.cm";
"\\.edu\\.cn$" = "whois.edu.cn";
- "\\.cn$" = "whois.cnnic.net.cn";
+ "\\.cn$" = "whois.cnnic.cn";
"\\.com$" {
whois-server = "whois.verisign-grs.com";
query-format = "domain $*";
@@ -166,7 +180,7 @@ whois-servers {
"\\.do$" = "whois.nic.do";
"\\.dz$" = "whois.ripe.net";
"\\.ec$" = "www.nic.ec";
- "\\.edu$" = "whois.educause.net";
+ "\\.edu$" = "whois.educause.edu";
"\\.ee$" = "whois.eenet.ee";
"\\.eg$" = "whois.ripe.net";
"\\.es$" = "www.nic.es";
@@ -176,17 +190,20 @@ whois-servers {
"\\.fm$" = "www.dot.fm";
"\\.fo$" = "whois.ripe.net";
"\\.fr$" = "whois.nic.fr";
+ "\\.gd$" = "whois.adamsnames.com";
"\\.gi$" = "whois2.afilias-grs.net";
"\\.gov$" = "whois.nic.gov";
- "\\.gg$" = "whois.isles.net";
+ "\\.gg$" = "whois.gg";
"\\.gm$" = "whois.ripe.net";
"\\.gp$" = "whois.nic.gp";
"\\.gr$" = "whois.ripe.net";
- "\\.gs$" = "203.119.12.22";
+ "\\.gs$" = "whois.nic.gs";
"\\.gt$" = "www.gt";
- "\\.hk$" = "whois.hkdnr.net.hk";
+ "\\.hk$" = "whois.hkirc.hk";
"\\.hm$" = "whois.registry.hm";
+ "\\.hn$" = "whois2.afilias-grs.net";
"\\.hr$" = "www.dns.hr";
+ "\\.ht$" = "whois.nic.ht";
"\\.hu$" = "whois.nic.hu";
"\\.id$" = "whois.idnic.net.id";
"\\.ie$" = "whois.domainregistry.ie";
@@ -200,29 +217,39 @@ whois-servers {
"\\.is$" = "whois.isnic.is";
"\\.it$" = "whois.nic.it";
"\\.je$" = "whois.isles.net";
+ "\\.jobs$" {
+ whois-server = "jobswhois.verisign-grs.com";
+ query-format = "domain $*";
+ }
"\\.jp$" {
whois-server = "whois.jprs.jp";
query-format = "$* /e";
}
+ "\\.ke$" = "whois.kenic.or.ke";
+ "\\.kp$" = "whois.kcce.kp";
"\\.kg$" = "whois.domain.kg";
- "\\.ki$" = "whois.nic.ki";
+ "\\.ki$" = "whois.cocca.cx";
"\\.kr$" = "whois.krnic.net";
"\\.kz$" = "whois.nic.kz";
"\\.la$" = "whois.nic.la";
"\\.lb$" = "cgi.aub.edu.lb";
+ "\\.lc$" = "whois2.afilias-grs.net";
"\\.li$" = "whois.nic.li";
"\\.lk$" = "whois.nic.lk";
"\\.lt$" = "whois.domreg.lt";
"\\.lu$" = "whois.dns.lu";
"\\.lv$" = "whois.nic.lv";
"\\.ly$" = "whois.nic.ly";
- "\\.ma$" = "whois.ripe.net";
+ "\\.ma$" = "whois.iam.net.ma";
+ "\\.md$" = "whois.nic.md";
+ "\\.me$" = "whois.nic.me";
"\\.mil$" = "whois.nic.mil";
"\\.mk$" = "whois.ripe.net";
"\\.mm$" = "whois.nic.mm";
+ "\\.mn$" = "whois2.afilias-grs.net";
"\\.mobi$" = "whois.dotmobiregistry.net";
- "\\.ms$" = "whois.adamsnames.tc";
- "\\.mt$" = "www.um.edu.mt";
+ "\\.ms$" = "whois.nic.ms";
+ "\\.mt$" = "whois.nic.org.mt";
"\\.mu$" = "whois.nic.mu";
"\\.museum$" = "whois.museum";
"\\.mw$" = "www.tarsus.net";
@@ -234,31 +261,37 @@ whois-servers {
whois-server = "whois.verisign-grs.com";
query-format = "domain $*";
}
+ "\\.nf$" = "whois.cocca.cx";
"\\.ng$" = "whois.rg.net";
"\\.nl$" = "whois.domain-registry.nl";
"\\.no$" = "whois.norid.no";
"\\.nu$" = "whois.nic.nu";
"\\.nz$" = "whois.srs.net.nz";
"\\.org$" = "whois.publicinterestregistry.net";
- "\\.pe$" = "whois.nic.pe";
+ "\\.pe$" = "kero.yachay.pe";
"\\.pk$" = "pknic.net.pk";
"\\.pl$" = "whois.dns.pl";
"\\.pm$" = "whois.nic.pm";
+ "\\.pr$" = "whois.nic.pr";
"\\.pro$" = "whois.registrypro.pro";
"\\.pt$" = "whois.dns.pt";
"\\.pw$" = "whois.nic.pw";
"\\.re$" = "whois.nic.re";
"\\.ro$" = "whois.rotld.ro";
+ "\\.edu\.ru$" = "whois.informika.ru";
"\\.ru$" = "whois.ripn.net";
"\\.rw$" = "www.nic.rw";
"\\.sa$" = "saudinic.net.sa";
+ "\\.sb$" = "whois.nic.sb";
+ "\\.sc$" = "whois2.afilias-grs.net";
"\\.se$" = "whois.iis.se";
"\\.sg$" = "whois.nic.net.sg";
"\\.sh$" = "whois.nic.sh";
"\\.si$" = "whois.arnes.si";
"\\.sj$" = "whois.ripe.net";
- "\\.sk$" = "whois.ripe.net";
+ "\\.sk$" = "whois.sk-nic.sk";
"\\.sm$" = "whois.ripe.net";
+ "\\.sn$" = "whois.nic.sn";
"\\.sr$" = "whois.register.sr";
"\\.st$" = "whois.nic.st";
"\\.su$" = "whois.ripn.net";
@@ -273,8 +306,12 @@ whois-servers {
"\\.tn$" = "whois.ripe.net";
"\\.to$" = "whois.tonic.to";
"\\.tr$" = "whois.nic.tr";
+ "\\.travel$" = "whois.nic.travel";
"\\.tt$" = "www.nic.tt";
- "\\.tv$" = "whois.nic.tv";
+ "\\.tv$" {
+ whois-server = "tvwhois.verisign-grs.com";
+ query-format = "domain $*";
+ }
"\\.tw$" = "whois.twnic.net";
"\\.ua$" = "whois.com.ua";
"\\.ug$" = "whois.co.ug";
@@ -285,8 +322,11 @@ whois-servers {
"\\.us$" = "whois.nic.us";
"\\.com\\.uy$" = "dns.antel.net.uy";
"\\.uy$" = "www.rau.edu.uy"; # is a whois server
- "\\.uz$" = "www.noc.uz";
+ "\\.co\\.uz$" = "whois.reg.uz";
+ "\\.com\\.uz$" = "whois.reg.uz";
+ "\\.uz$" = "whois.cctld.uz";
"\\.va$" = "whois.ripe.net";
+ "\\.vc$" = "whois2.afilias-grs.net";
"\\.ve$" = "whois.nic.ve";
"\\.vi$" = "www.nic.vi";
"\\.vg$" = "whois.adamsnames.tc";
@@ -299,6 +339,7 @@ whois-servers {
"\\.ac\\.za$" = "whois.ac.za";
"\\.org\\.za$" = "rwhois.org.za 4321";
"\\.co\\.za$" = "whois.co.za";
+ "\\.nom\\.za$" = "www.nom.za";
# "\\.za$" = "whois.frd.ac.za";
#
@@ -594,7 +635,7 @@ cidr-blocks {
cidr6-blocks {
type = cidr6;
- "2001:0000::/23" = "whois.iana.org";
+ "2001:0000::/23" = "whois.iana.org"; # correct, but nothing usable is returned
"2001:0200::/23" = "whois.apnic.net";
"2001:0400::/23" = "whois.arin.net";
"2001:0600::/23" = "whois.ripe.net";
@@ -611,6 +652,7 @@ cidr6-blocks {
"2001:2000::/20" = "whois.ripe.net";
"2001:3000::/21" = "whois.ripe.net";
"2001:3800::/22" = "whois.ripe.net";
+ "2001:3C00::/22" = "whois.arin.net"; # not correct, but shows better information
"2001:4000::/23" = "whois.ripe.net";
"2001:4200::/23" = "whois.afrinic.net";
"2001:4400::/23" = "whois.apnic.net";
@@ -623,6 +665,8 @@ cidr6-blocks {
"2001:A000::/20" = "whois.apnic.net";
"2001:B000::/20" = "whois.apnic.net";
+ "2002:0000::/16" = "whois.arin.net"; # not correct, but shows better information
+
"2003:0000::/18" = "whois.ripe.net";
"2400:0000::/12" = "whois.apnic.net";
@@ -636,6 +680,34 @@ cidr6-blocks {
"2C00:0000::/12" = "whois.afrinic.net";
#
+ # IPv6 blocks by carriers used for SixXS;
+ # see e.g. http://www.sixxs.net/pops/
+ #
+ "2001:0610::/32" = "whois.sixxs.net";
+ "2001:06A0::/32" = "whois.sixxs.net";
+ "2001:06A8::/32" = "whois.sixxs.net";
+ "2001:06F8::/32" = "whois.sixxs.net";
+ "2001:0770::/32" = "whois.sixxs.net";
+ "2001:07B8::/32" = "whois.sixxs.net";
+ "2001:0808::/32" = "whois.sixxs.net";
+ "2001:0838::/32" = "whois.sixxs.net";
+ "2001:0960::/32" = "whois.sixxs.net";
+ "2001:0A60::/32" = "whois.sixxs.net";
+ "2001:0AD0::/32" = "whois.sixxs.net";
+ "2001:0B18::/32" = "whois.sixxs.net";
+ "2001:1418::/32" = "whois.sixxs.net";
+ "2001:14B8::/32" = "whois.sixxs.net";
+ "2001:15C0::/32" = "whois.sixxs.net";
+ "2001:16D8::/32" = "whois.sixxs.net";
+ "2001:1938::/32" = "whois.sixxs.net";
+ "2001:4830::/32" = "whois.sixxs.net";
+ "2001:4978::/32" = "whois.sixxs.net";
+ "2001:41E0::/32" = "whois.sixxs.net";
+ "2001:4428::/32" = "whois.sixxs.net";
+ "2A01:0198::/32" = "whois.sixxs.net";
+ "2A01:0348::/32" = "whois.sixxs.net";
+
+ #
# Experimental IPv6 network 6bone (RFC2471)
# Phaseout at Jun, 6 2006 (RFC3701)
#
@@ -678,6 +750,33 @@ handles {
whois-server = "saudinic.net.sa";
query-format = "PERSON $*";
}
+ ".*-SIXXS$" = "whois.sixxs.net";
+ ".*-6BONE$" = "whois.6bone.net";
+ ".*-IRNIC$" = "whois.nic.ir";
+ ".*-RIPN$" = "whois.ripn.net";
+ ".*-AFRINIC$" = "whois.afrinic.net";
+ "^C[0-9]+-LRMS$" {
+ whois-server = "whois.afilias.info";
+ query-format = "CONTACT ID $*";
+ }
+ "^D[0-9]+-LRMS$" {
+ whois-server = "whois.afilias.info";
+ query-format = "DOMAIN ID $*";
+ }
+ "^H[0-9]+-LRMS$" {
+ whois-server = "whois.afilias.info";
+ query-format = "HOST ID $*";
+ }
+ "^R[0-9]+-LRMS$" {
+ whois-server = "whois.afilias.info";
+ query-format = "REGISTRAR ID $*";
+ }
+ ".*-KENIC$" = "whois.kenic.or.ke";
+ ".*-UANIC$" = "whois.com.ua";
+ ".*-COOP$" {
+ whois-server = "whois.nic.coop";
+ query-format = "CONTACT $*";
+ }
}
#
@@ -685,11 +784,6 @@ handles {
# each host.
#
server-options {
- "rwhois\\.nic\\.ve" {
- rwhois = true;
- rwhois-display = "dump";
- rwhois-limit = 10;
- }
"rwhois\\.exodus\\.net" {
rwhois = true;
}
@@ -761,13 +855,6 @@ server-options {
form-element = "name";
}
- "www\\.um\\.edu\\.mt" {
- http = "true";
- http-method = "GET";
- http-action = "/cgi-bin/nic/whois";
- form-element = "domain";
- }
-
"www\\.gt" {
http = "true";
http-method = "GET";
@@ -784,13 +871,6 @@ server-options {
query-format = "Upit=${+2}"; # All but last domain segment
}
- "whois\\.offshore\\.ai" {
- http = "true";
- http-method = "POST";
- http-action = "/cgi-bin/whois.pl";
- form-element = "domain-name";
- }
-
"www\\.io\\.io" {
http = "true";
http-method = "GET";
@@ -820,11 +900,12 @@ server-options {
form-element = "query";
}
- "www\\.nic\\.bi" {
- http = "true";
- http-method = "POST";
- http-action = "/cgi-bin/whoisbi.pl"; # Formatting problems in Lynx
- form-element = "DOMAINWHOIS";
+ "whois\\.nic\\.bi" {
+ http = "true"; # I can't connect on port 43
+ http-method = "GET";
+ http-action = "/register/whois.hei";
+ form-element = "query";
+ form-extra = "type=domain";
}
"www\\.nic\\.cg" {
@@ -855,13 +936,6 @@ server-options {
form-element = "name";
}
- "www\\.noc\\.uz" {
- http = "true";
- http-method = "POST";
- http-action = "/whois.php4";
- form-element = "dname";
- }
-
"www\\.nic\\.vi" {
http = "true";
http-method = "POST";
@@ -885,9 +959,9 @@ server-options {
"www\\.nic\\.tg" {
http = "true";
- http-method = "GET";
- http-action = "/moteur/info_dom.php";
- form-element = "domaine";
+ http-method = "POST";
+ http-action = "/nictg/indexplus.php?pg=verifdom&op=whois";
+ query-format = "tosearch=${+2}&typedom=.tg";
}
"cgi\\.aub\\.edu\\.lb" {
@@ -917,38 +991,60 @@ server-options {
form-element = "nombre";
}
- "www\\.denic\\.de" {
- http = "true";
- http-method = "POST";
- http-action = "/en/whois/data.jsp";
- form-element = "domainname";
- form-extra = "service=WhoisData&lang=en&submit=Accept";
- }
"whois\\.denic\\.de" {
whois-server = "whois.denic.de";
query-format = "-C UTF-8 -T dn,ace $*";
answer-charset = "UTF-8";
}
+
"whois\\.enum\\.denic\\.de" {
whois-server = "whois.enum.denic.de";
query-format = "-C UTF-8 -T dn $*";
answer-charset = "UTF-8";
}
+
"whois\\.nic\\.ad\\.jp" {
query-format = "$*/e";
}
+
"whois\\.nic\\.ch" {
answer-charset = "UTF-8";
}
+
"whois\\.nic\\.li" {
answer-charset = "UTF-8";
}
+
"whois\\.centralnic\\.*" {
whois-redirect = ".*Whois Server: \\(.*\\)";
}
+
".*\\.verisign-grs\\.com" {
whois-redirect = ".*Whois Server: \\(.*\\)";
}
+
+ "whois\\.sixxs\\.net" {
+ whois-redirect = ".*ReferralServer: whois:\/\/\\(.*\\)";
+ }
+
+ "whois2\\.afilias-grs\\.net" {
+ whois-redirect = "Whois Server:\\(.*\\)";
+ }
+
+ "whois\\.registrar\\.telekom\\.de" {
+ query-format = "full $*";
+ }
+
+ "whois\\.rrpproxy\\.net" {
+ answer-charset = "UTF-8";
+ }
+
+ "www\\.nom\\.za" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/do.php";
+ query-format = "chkDomain=${+3}&chkAvail=Check";
+ }
}
#
--- jwhois-4.0/example/jwhois.conf 2009-02-27 22:20:48.000000000 +0100
+++ jwhois-4.0/example/jwhois.conf.rsc 2009-03-08 12:33:22.000000000 +0100
@@ -178,7 +178,7 @@
"\\.dk$" = "whois.dk-hostmaster.dk";
"\\.dm$" = "whois.nic.dm";
"\\.do$" = "whois.nic.do";
- "\\.dz$" = "whois.ripe.net";
+ "\\.dz$" = "www.nic.dz";
"\\.ec$" = "www.nic.ec";
"\\.edu$" = "whois.educause.edu";
"\\.ee$" = "whois.eenet.ee";
@@ -268,6 +268,7 @@
"\\.nu$" = "whois.nic.nu";
"\\.nz$" = "whois.srs.net.nz";
"\\.org$" = "whois.publicinterestregistry.net";
+ "\\.pa$" = "www.nic.pa";
"\\.pe$" = "kero.yachay.pe";
"\\.pk$" = "pknic.net.pk";
"\\.pl$" = "whois.dns.pl";
@@ -296,6 +297,7 @@
"\\.st$" = "whois.nic.st";
"\\.su$" = "whois.ripn.net";
"\\.tc$" = "whois.adamsnames.tc";
+ "\\.tel$" = "whois.nic.tel";
"\\.tf$" = "whois.afnic.fr";
"\\.tg$" = "www.nic.tg";
"\\.th$" = "whois.thnic.net";
@@ -321,7 +323,7 @@
"\\.fed\\.us$" = "whois.nic.gov";
"\\.us$" = "whois.nic.us";
"\\.com\\.uy$" = "dns.antel.net.uy";
- "\\.uy$" = "www.rau.edu.uy"; # is a whois server
+ "\\.uy$" = "whois.nic.org.uy";
"\\.co\\.uz$" = "whois.reg.uz";
"\\.com\\.uz$" = "whois.reg.uz";
"\\.uz$" = "whois.cctld.uz";
@@ -335,7 +337,7 @@
"\\.wf$" = "whois.nic.wf";
"\\.ws$" = "whois.worldsite.ws";
"\\.yt$" = "whois.nic.yt";
- "\\.yu$" = "whois.ripe.net";
+ "\\.yu$" = "www.nic.yu";
"\\.ac\\.za$" = "whois.ac.za";
"\\.org\\.za$" = "rwhois.org.za 4321";
"\\.co\\.za$" = "whois.co.za";
@@ -363,6 +365,7 @@
type = regex;
"\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
+ "\\.1\\.6\\.e164\\.arpa$" = "whois-check.enum.com.au";
}
#
@@ -741,7 +744,7 @@
".*-NICAT$" = "whois.nic.at";
".*-CZ$" = "whois.nic.cz";
".*-NICIR$" = "whois.nic.ir";
- ".*-UYNIC$" = "www.rau.edu.uy";
+ ".*-UYNIC$" = "whois.nic.org.uy";
".*-ITNIC$" = "whois.nic.it";
".*-FRNIC$" = "whois.nic.fr";
".*-LACNIC$" = "whois.lacnic.net";
@@ -1045,6 +1048,27 @@
http-action = "/do.php";
query-format = "chkDomain=${+3}&chkAvail=Check";
}
+
+ "www\\.nic\\.pa" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/egh/whois.php";
+ form-element = "nombre_d";
+ }
+
+ "www\\.nic\\.dz" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/index.php?option=com_content&task=view&id=37&Itemid=51";
+ form-element = "domain_name";
+ }
+
+ "www\\.nic\\.yu" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/cgi-bin/checkavail.cgi";
+ form-element = "domain";
+ }
}
#
--- jwhois-4.0/example/jwhois.conf 2009-05-03 13:15:33.000000000 +0200
+++ jwhois-4.0/example/jwhois.conf.rsc 2009-05-03 13:17:52.000000000 +0200
@@ -119,7 +119,7 @@
"\\.af$" = "whois.cocca.cx";
"\\.ag$" = "whois.nic.ag";
"\\.ai$" = "whois.ai";
- "\\.al$" = "whois.ripe.net";
+ "\\.al$" = "www.ert.gov.al";
"\\.am$" = "whois.amnic.net";
"\\.ar$" = "www.nic.ar";
"\\.arpa$" = "whois.iana.org";
@@ -168,6 +168,7 @@
query-format = "domain $*";
}
"\\.coop$" = "whois.nic.coop";
+ "\\.cu$" = "www.nic.cu";
"\\.cx$" = "whois.nic.cx";
"\\.cy$" = "whois.ripe.net";
"\\.cz$" = "whois.nic.cz";
@@ -254,7 +255,7 @@
"\\.museum$" = "whois.museum";
"\\.mw$" = "www.tarsus.net";
"\\.mx$" = "whois.nic.mx";
- "\\.my$" = "whois.mynic.net.my";
+ "\\.my$" = "whois.domainregistry.my";
"\\.na$" = "whois.na-nic.com.na";
"\\.name$" = "whois.nic.name";
"\\.net$" {
@@ -293,6 +294,7 @@
"\\.sk$" = "whois.sk-nic.sk";
"\\.sm$" = "whois.ripe.net";
"\\.sn$" = "whois.nic.sn";
+ "\\.so$" = "whois.nic.so";
"\\.sr$" = "whois.register.sr";
"\\.st$" = "whois.nic.st";
"\\.su$" = "whois.ripn.net";
@@ -1069,9 +1071,24 @@
http-action = "/cgi-bin/checkavail.cgi";
form-element = "domain";
}
+
"whois\\.dotster\\.com" {
answer-charset = "UTF-8";
}
+
+ "www\\.ert\\.gov\\.al" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/ert_eng/domain_res.html";
+ query-format = "Domain=${+2}";
+ }
+
+ "www\\.nic\\.cu" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/dom_det.php";
+ form-element = "domsrch";
+ }
}
#
--- jwhois-4.0/example/jwhois.conf 2009-08-16 17:59:06.000000000 +0200
+++ jwhois-4.0/example/jwhois.conf.rsc 2009-08-16 17:59:39.000000000 +0200
@@ -121,6 +121,7 @@
"\\.ai$" = "whois.ai";
"\\.al$" = "www.ert.gov.al";
"\\.am$" = "whois.amnic.net";
+ "\\.edu\\.ar$" = "www.riu.edu.ar";
"\\.ar$" = "www.nic.ar";
"\\.arpa$" = "whois.iana.org";
"\\.as$" = "whois.nic.as";
@@ -142,8 +143,9 @@
"\\.bm$" = "rwhois.ibl.bm 4321";
"\\.bo$" = "whois.nic.bo";
"\\.br$" = "whois.nic.br";
+ "\\.bs$" = "www.register.bs";
"\\.bv$" = "whois.ripe.net";
- "\\.by$" = "whois.ripe.net";
+ "\\.by$" = "www.domain.by";
"\\.bz$" = "whois.belizenic.bz";
"\\.co\\.ca$" = "whois.co.ca";
"\\.ca$" = "whois.cira.ca";
@@ -176,7 +178,10 @@
whois-server = "whois.denic.de";
query-format = "-C UTF-8 -T dn,ace $*";
}
- "\\.dk$" = "whois.dk-hostmaster.dk";
+ "\\.dk$" {
+ whois-server = "whois.dk-hostmaster.dk";
+ query-format = "--show-handles $*";
+ }
"\\.dm$" = "whois.nic.dm";
"\\.do$" = "whois.nic.do";
"\\.dz$" = "www.nic.dz";
@@ -257,13 +262,16 @@
"\\.mx$" = "whois.nic.mx";
"\\.my$" = "whois.domainregistry.my";
"\\.na$" = "whois.na-nic.com.na";
- "\\.name$" = "whois.nic.name";
+ "\\.name$" {
+ whois-server = "whois.nic.name";
+ query-format = "domain = $*";
+ }
"\\.net$" {
whois-server = "whois.verisign-grs.com";
query-format = "domain $*";
}
"\\.nf$" = "whois.cocca.cx";
- "\\.ng$" = "whois.rg.net";
+ "\\.ng$" = "whois.nic.net.ng";
"\\.nl$" = "whois.domain-registry.nl";
"\\.no$" = "whois.norid.no";
"\\.nu$" = "whois.nic.nu";
@@ -276,6 +284,7 @@
"\\.pm$" = "whois.nic.pm";
"\\.pr$" = "whois.nic.pr";
"\\.pro$" = "whois.registrypro.pro";
+ "\\.ps$" = "www.nic.ps";
"\\.pt$" = "whois.dns.pt";
"\\.pw$" = "whois.nic.pw";
"\\.re$" = "whois.nic.re";
@@ -287,17 +296,19 @@
"\\.sb$" = "whois.nic.sb";
"\\.sc$" = "whois2.afilias-grs.net";
"\\.se$" = "whois.iis.se";
- "\\.sg$" = "whois.nic.net.sg";
+ "\\.sg$" = "whois.sgnic.sg";
"\\.sh$" = "whois.nic.sh";
"\\.si$" = "whois.arnes.si";
"\\.sj$" = "whois.ripe.net";
"\\.sk$" = "whois.sk-nic.sk";
+ "\\.sl$" = "whois.nic.sl";
"\\.sm$" = "whois.ripe.net";
"\\.sn$" = "whois.nic.sn";
"\\.so$" = "whois.nic.so";
"\\.sr$" = "whois.register.sr";
"\\.st$" = "whois.nic.st";
"\\.su$" = "whois.ripn.net";
+ "\\.sv$" = "www.svnet.org.sv";
"\\.tc$" = "whois.adamsnames.tc";
"\\.tel$" = "whois.nic.tel";
"\\.tf$" = "whois.afnic.fr";
@@ -345,6 +356,7 @@
"\\.co\\.za$" = "whois.co.za";
"\\.nom\\.za$" = "www.nom.za";
# "\\.za$" = "whois.frd.ac.za";
+ "\\.co\\.zw$" = "www.zispa.co.zw";
#
# Specify different port numbers to connect to by postfixing the IP
@@ -782,6 +794,22 @@
whois-server = "whois.nic.coop";
query-format = "CONTACT $*";
}
+ ".*CONTACT-NAME$" {
+ whois-server = "whois.nic.name";
+ query-format = "contact = $*";
+ }
+ ".*REGISTRAR-NAME$" {
+ whois-server = "whois.nic.name";
+ query-format = "registrar = $*";
+ }
+ "^C[0-9]+-AERO$" {
+ whois-server = "whois.aero";
+ query-format = "CONTACT ID $*";
+ }
+ "^D[0-9]+-AERO$" {
+ whois-server = "whois.aero";
+ query-format = "DOMAIN ID $*";
+ }
}
#
@@ -1089,6 +1117,55 @@
http-action = "/dom_det.php";
form-element = "domsrch";
}
+
+ "www\\.nic\\.ps" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/whois/domain_whois.php";
+ form-element = "dname";
+ }
+
+ "www\\.svnet\\.org\\.sv" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/registro/consultas/whois.php";
+ form-element = "subdominio";
+ }
+
+ "www\\.zispa\\.co\\.zw" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/cgi-bin/search";
+ form-element = "domain";
+ }
+
+ "www\\.riu\\.edu\\.ar" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/cgi-bin/verdom.pl.nuevo";
+ query-format = "username=${+3}";
+ }
+
+ "www\\.register\\.bs" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/cgi-bin/search.pl";
+ form-element = "name";
+ }
+
+ "www\\.domain\\.by" {
+ http = "true";
+ http-method = "POST";
+ http-action = "/cgi-bin/registry.cgi";
+ query-format = "domain=${+2}&lang=e&mode=slquest";
+ }
+
+ "www\\.nic\\.ac" {
+ http = "true";
+ http-method = "GET";
+ http-action = "/cgi-bin/whois";
+ form-element = "textfield";
+ }
}
#
This fixes somewhat reversed logic of trying to connect to WHOIS server.
Tue Nov 20 2007, Lubomir Kundrak <lkundrak@redhat.com>
--- jwhois-4.0/src/utils.c.connect 2007-06-26 09:00:20.000000000 +0200
+++ jwhois-4.0/src/utils.c 2007-11-20 17:05:33.000000000 +0100
@@ -247,7 +247,7 @@ make_connect(const char *host, int port)
{
return -1;
}
- while (res)
+ for (; res; res = res->ai_next)
{
sa = res->ai_addr;
sockfd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
@@ -266,15 +266,15 @@ make_connect(const char *host, int port)
flags = fcntl(sockfd, F_GETFL, 0);
if (fcntl(sockfd, F_SETFL, flags|O_NONBLOCK) == -1)
{
+ close (sockfd);
return -1;
}
-
error = connect(sockfd, res->ai_addr, res->ai_addrlen);
-
if (error < 0 && errno != EINPROGRESS)
{
- break;
+ close (sockfd);
+ continue;
}
FD_ZERO(&fdset);
@@ -283,18 +283,20 @@ make_connect(const char *host, int port)
error = select(FD_SETSIZE, NULL, &fdset, NULL, &timeout);
if (error == 0)
{
- break;
+ close (sockfd);
+ return -1;
}
retlen = sizeof(retval);
error = getsockopt(sockfd, SOL_SOCKET, SO_ERROR, &retval, &retlen);
if (error < 0 || retval)
{
- break;
+ close (sockfd);
+ return -1;
}
- res = res->ai_next;
+
+ break;
}
- if (error < 0 || retval) return -1;
#endif
return sockfd;
diff -up jwhois-4.0/example/jwhois.conf_old jwhois-4.0/example/jwhois.conf
--- jwhois-4.0/example/jwhois.conf_old 2009-04-23 16:16:41.000000000 +0200
+++ jwhois-4.0/example/jwhois.conf 2009-04-23 16:18:15.000000000 +0200
@@ -1069,6 +1069,9 @@ server-options {
http-action = "/cgi-bin/checkavail.cgi";
form-element = "domain";
}
+ "whois\\.dotster\\.com" {
+ answer-charset = "UTF-8";
+ }
}
#
diff -up jwhois-4.0/example/jwhois.conf.enum jwhois-4.0/example/jwhois.conf
--- jwhois-4.0/example/jwhois.conf.enum 2009-01-27 13:39:48.000000000 +0100
+++ jwhois-4.0/example/jwhois.conf 2009-01-27 13:42:09.000000000 +0100
@@ -17,6 +17,11 @@ whois-servers {
type = regex;
#
+ # Catch ENUM domains
+ #
+ "\\([0-9]\\.\\)+e164\\.arpa" = "struct enum-blocks";
+
+ #
# You can use the special value `struct' to redirect the query
# to another block which optionally can use another type of matching.
# Here we use it to have IPv4 numbers matched using CIDR blocks instead
@@ -311,6 +316,15 @@ whois-servers {
}
#
+# enum-blocks
+#
+enum-blocks {
+ type = regex;
+
+ "\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
+}
+
+#
# cidr-blocks contains a list of all known CIDR blocks assigned to
# RIPE or APNIC. Default all queries to ARIN which has most other blocks.
#
@@ -915,6 +929,11 @@ server-options {
query-format = "-C UTF-8 -T dn,ace $*";
answer-charset = "UTF-8";
}
+ "whois\\.enum\\.denic\\.de" {
+ whois-server = "whois.enum.denic.de";
+ query-format = "-C UTF-8 -T dn $*";
+ answer-charset = "UTF-8";
+ }
"whois\\.nic\\.ad\\.jp" {
query-format = "$*/e";
}
diff -up jwhois-4.0/src/init.c_old jwhois-4.0/src/init.c
--- jwhois-4.0/src/init.c_old 2007-06-26 08:59:17.000000000 +0200
+++ jwhois-4.0/src/init.c 2009-01-27 15:49:35.000000000 +0100
@@ -283,6 +283,8 @@ parse_args(int *argc, char ***argv)
if (in)
jconfig_parse_file(in);
+ fclose(in);
+
if (verbose>1)
{
printf("[Debug: Cache = %s]\n", cache?"On":"Off");
diff -up jwhois-4.0/example/jwhois.conf_old jwhois-4.0/example/jwhois.conf
--- jwhois-4.0/example/jwhois.conf_old 2009-01-23 12:57:35.000000000 +0100
+++ jwhois-4.0/example/jwhois.conf 2009-01-23 12:58:41.000000000 +0100
@@ -171,7 +171,7 @@ whois-servers {
"\\.fm$" = "www.dot.fm";
"\\.fo$" = "whois.ripe.net";
"\\.fr$" = "whois.nic.fr";
- "\\.gi$" = "www.nic.gi";
+ "\\.gi$" = "whois2.afilias-grs.net";
"\\.gov$" = "whois.nic.gov";
"\\.gg$" = "whois.isles.net";
"\\.gm$" = "whois.ripe.net";
When IPv6 address mask did not end on an octed boundary, the the opposite
part of last byte of host address was taken into account when a match was
attempted. -- Lubomir Kundrak <lkundrak@redhat.com>
--- jwhois-4.0/src/lookup.c.ipv6-match 2007-12-04 17:09:57.000000000 +0100
+++ jwhois-4.0/src/lookup.c 2007-12-04 17:10:20.000000000 +0100
@@ -149,7 +149,7 @@ static int ipv6_address_is_in_network(co
}
/* i == bits / 8 */
if (bits % 8 != 0
- && (addr->s6_addr[i] & (0xFFu << (bits % 8))) != net->s6_addr[i])
+ && (addr->s6_addr[i] & (0xFFu << 8-(bits % 8))) != net->s6_addr[i])
return 0;
return 1;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment