public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
* [PATCH 1/3] make.sh: Remove jwhois and replace with whois
@ 2021-08-06 11:16 Adolf Belka
  2021-08-06 11:16 ` [PATCH 2/3] whois: Installation of aan actively maintained whois client Adolf Belka
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Adolf Belka @ 2021-08-06 11:16 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 765 bytes --]

- jwhois is no longer being maintained. The last release was from 2005 and the last commit
   was in 2015. https://github.com/jonasob/jwhois
- Debian switched to another whois client which is being actively maintained.
   https://github.com/rfc1036/whois
- This patch series is the removal of jwhois and the installation of whois

Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
---
 make.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/make.sh b/make.sh
index 13a48f461..6dc261fb4 100755
--- a/make.sh
+++ b/make.sh
@@ -1129,7 +1129,7 @@ buildbase() {
 	lfsmake2 gzip
 	lfsmake2 hostname
 	lfsmake2 iproute2
-	lfsmake2 jwhois
+	lfsmake2 whois
 	lfsmake2 kbd
 	lfsmake2 less
 	lfsmake2 pkg-config
-- 
2.32.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 2/3] whois: Installation of aan actively maintained whois client
  2021-08-06 11:16 [PATCH 1/3] make.sh: Remove jwhois and replace with whois Adolf Belka
@ 2021-08-06 11:16 ` Adolf Belka
  2021-08-06 15:09   ` Peter Müller
  2021-08-06 11:16 ` [PATCH 3/3] jwhois: Remove jwhois and all associated patches Adolf Belka
  2021-08-06 15:09 ` [PATCH 1/3] make.sh: Remove jwhois and replace with whois Peter Müller
  2 siblings, 1 reply; 6+ messages in thread
From: Adolf Belka @ 2021-08-06 11:16 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 4918 bytes --]

- This whois client is being actively maintained. This version 5.5.10 was released on
   June 6th 2021 and regular updates have been ocurring several times per year.
- This client has all of its default whois servers compiled into it. These can be seen
   by reading the source files in the tarball.
- Therefore the whois.conf file is available for any additional servers that are decided
   to be required but as provided is empty.
- Installed on a vm testbed and worked to identify the details of ip addresses. Selecting
   an IP in the WUI logs screen also gets the ip information provided so it is working
   well with the WUI.

Tested-by:Adolf Belka <adolf.belka(a)ipfire.org>
Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
---
 config/rootfiles/common/whois |  4 ++
 lfs/whois                     | 84 +++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+)
 create mode 100644 config/rootfiles/common/whois
 create mode 100644 lfs/whois

diff --git a/config/rootfiles/common/whois b/config/rootfiles/common/whois
new file mode 100644
index 000000000..c5a16daf1
--- /dev/null
+++ b/config/rootfiles/common/whois
@@ -0,0 +1,4 @@
+etc/whois.conf
+usr/bin/whois
+#usr/share/man/man1/whois.1
+#usr/share/man/man5/whois.conf.5
diff --git a/lfs/whois b/lfs/whois
new file mode 100644
index 000000000..b526b90f4
--- /dev/null
+++ b/lfs/whois
@@ -0,0 +1,84 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2018  IPFire Team  <info(a)ipfire.org>                     #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 5.5.10
+
+THISAPP    = whois_$(VER)
+DL_FILE    = $(THISAPP).tar.xz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+PROG       = whois
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 4db48a482a06261ffa358d9f52c9bd7e
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+	@$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+	@$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+	@$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+	@$(PREBUILD)
+	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+	$(UPDATE_AUTOMAKE)
+
+	cd $(DIR_SRC)/$(PROG) && make $(MAKETUNING) \
+	                            CONFIG_FILE=/etc/whois.conf \
+	                            whois
+	cd $(DIR_SRC)/$(PROG) && make prefix=/usr install-whois
+	cd $(DIR_SRC)/$(PROG) && install -v -m 644 whois.conf -t /etc/
+
+	@rm -rf $(DIR_APP)
+	@$(POSTBUILD)
-- 
2.32.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 3/3] jwhois: Remove jwhois and all associated patches
  2021-08-06 11:16 [PATCH 1/3] make.sh: Remove jwhois and replace with whois Adolf Belka
  2021-08-06 11:16 ` [PATCH 2/3] whois: Installation of aan actively maintained whois client Adolf Belka
@ 2021-08-06 11:16 ` Adolf Belka
  2021-08-06 15:09   ` Peter Müller
  2021-08-06 15:09 ` [PATCH 1/3] make.sh: Remove jwhois and replace with whois Peter Müller
  2 siblings, 1 reply; 6+ messages in thread
From: Adolf Belka @ 2021-08-06 11:16 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 39589 bytes --]

- jwhois being replaced with whois
- Removal of jwhois lfs, rootfile and assoicated patch files.

Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
---
 config/rootfiles/common/jwhois            |  25 -
 lfs/jwhois                                |  92 ---
 src/patches/jwhois-4.0-conf_update.patch  | 714 ----------------------
 src/patches/jwhois-4.0-conf_update2.patch | 163 -----
 src/patches/jwhois-4.0-connect.patch      |  58 --
 src/patches/jwhois-4.0-fclose.patch       |  12 -
 src/patches/jwhois-4.0-idna.patch         |  43 --
 src/patches/jwhois-4.0-ipv6match.patch    |  15 -
 src/patches/jwhois-4.0-multi-homed.patch  |  15 -
 src/patches/jwhois-4.0-select.patch       |  27 -
 10 files changed, 1164 deletions(-)
 delete mode 100644 config/rootfiles/common/jwhois
 delete mode 100644 lfs/jwhois
 delete mode 100644 src/patches/jwhois-4.0-conf_update.patch
 delete mode 100644 src/patches/jwhois-4.0-conf_update2.patch
 delete mode 100644 src/patches/jwhois-4.0-connect.patch
 delete mode 100644 src/patches/jwhois-4.0-fclose.patch
 delete mode 100644 src/patches/jwhois-4.0-idna.patch
 delete mode 100644 src/patches/jwhois-4.0-ipv6match.patch
 delete mode 100644 src/patches/jwhois-4.0-multi-homed.patch
 delete mode 100644 src/patches/jwhois-4.0-select.patch

diff --git a/config/rootfiles/common/jwhois b/config/rootfiles/common/jwhois
deleted file mode 100644
index 135b453b9..000000000
--- a/config/rootfiles/common/jwhois
+++ /dev/null
@@ -1,25 +0,0 @@
-etc/jwhois.conf
-usr/bin/jwhois
-usr/bin/whois
-#usr/share/info/jwhois.info
-#usr/share/locale/es/LC_MESSAGES/jwhois.mo
-#usr/share/locale/fr/LC_MESSAGES/jwhois.mo
-#usr/share/locale/hu/LC_MESSAGES/jwhois.mo
-#usr/share/locale/id/LC_MESSAGES/jwhois.mo
-#usr/share/locale/it/LC_MESSAGES/jwhois.mo
-#usr/share/locale/nl/LC_MESSAGES/jwhois.mo
-#usr/share/locale/pl/LC_MESSAGES/jwhois.mo
-#usr/share/locale/pt_BR/LC_MESSAGES/jwhois.mo
-#usr/share/locale/ro
-#usr/share/locale/ro/LC_MESSAGES
-#usr/share/locale/ro/LC_MESSAGES/jwhois.mo
-#usr/share/locale/ru/LC_MESSAGES/jwhois.mo
-#usr/share/locale/rw/LC_MESSAGES/jwhois.mo
-#usr/share/locale/sv/LC_MESSAGES/jwhois.mo
-#usr/share/locale/tr/LC_MESSAGES/jwhois.mo
-#usr/share/locale/vi/LC_MESSAGES/jwhois.mo
-#usr/share/locale/zh_TW/LC_MESSAGES/jwhois.mo
-#usr/share/man/man1/jwhois.1
-#usr/share/man/sv
-#usr/share/man/sv/man1
-#usr/share/man/sv/man1/jwhois.1
diff --git a/lfs/jwhois b/lfs/jwhois
deleted file mode 100644
index ed12681c7..000000000
--- a/lfs/jwhois
+++ /dev/null
@@ -1,92 +0,0 @@
-###############################################################################
-#                                                                             #
-# IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2018  IPFire Team  <info(a)ipfire.org>                     #
-#                                                                             #
-# This program is free software: you can redistribute it and/or modify        #
-# it under the terms of the GNU General Public License as published by        #
-# the Free Software Foundation, either version 3 of the License, or           #
-# (at your option) any later version.                                         #
-#                                                                             #
-# This program is distributed in the hope that it will be useful,             #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
-# GNU General Public License for more details.                                #
-#                                                                             #
-# You should have received a copy of the GNU General Public License           #
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
-#                                                                             #
-###############################################################################
-
-###############################################################################
-# Definitions
-###############################################################################
-
-include Config
-
-VER        = 4.0
-
-THISAPP    = jwhois-$(VER)
-DL_FILE    = $(THISAPP).tar.gz
-DL_FROM    = $(URL_IPFIRE)
-DIR_APP    = $(DIR_SRC)/$(THISAPP)
-TARGET     = $(DIR_INFO)/$(THISAPP)
-
-###############################################################################
-# Top-level Rules
-###############################################################################
-
-objects = $(DL_FILE)
-
-$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-
-$(DL_FILE)_MD5 = 977d0ba90ee058a7998c94d933fc9546
-
-install : $(TARGET)
-
-check : $(patsubst %,$(DIR_CHK)/%,$(objects))
-
-download :$(patsubst %,$(DIR_DL)/%,$(objects))
-
-md5 : $(subst %,%_MD5,$(objects))
-
-###############################################################################
-# Downloading, checking, md5sum
-###############################################################################
-
-$(patsubst %,$(DIR_CHK)/%,$(objects)) :
-	@$(CHECK)
-
-$(patsubst %,$(DIR_DL)/%,$(objects)) :
-	@$(LOAD)
-
-$(subst %,%_MD5,$(objects)) :
-	@$(MD5)
-
-###############################################################################
-# Installation Details
-###############################################################################
-
-$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
-	@$(PREBUILD)
-	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
-	$(UPDATE_AUTOMAKE)
-
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-conf_update.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-conf_update2.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-connect.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-fclose.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-idna.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-ipv6match.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-multi-homed.patch
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-select.patch
-
-	cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc
-	cd $(DIR_APP) && make $(MAKETUNING)
-	cd $(DIR_APP) && make install
-
-	# Add alias for whois command.
-	ln -svf jwhois /usr/bin/whois
-
-	@rm -rf $(DIR_APP)
-	@$(POSTBUILD)
diff --git a/src/patches/jwhois-4.0-conf_update.patch b/src/patches/jwhois-4.0-conf_update.patch
deleted file mode 100644
index 512d30006..000000000
--- a/src/patches/jwhois-4.0-conf_update.patch
+++ /dev/null
@@ -1,714 +0,0 @@
-diff -up jwhois-4.0/example/jwhois.conf.orig jwhois-4.0/example/jwhois.conf
---- jwhois-4.0/example/jwhois.conf.orig	2007-03-26 11:12:08.000000000 +0200
-+++ jwhois-4.0/example/jwhois.conf	2010-12-20 14:26:06.450882316 +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
-@@ -27,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
-@@ -81,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";
-@@ -103,17 +110,30 @@ 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";
-+	"\\.co\\.ae$" = "whois.aeda.net.ae";
-+	"\\.net\\.ae$" = "whois.aeda.net.ae";
-+	"\\.org\\.ae$" = "whois.aeda.net.ae";
-+	"\\.sch\\.ae$" = "whois.aeda.net.ae";
-+	"\\.ac\\.ae$" = "whois.aeda.net.ae";
-+	"\\.mil\\.ae$" = "whois.aeda.net.ae";
-+	"\\.gov\\.ae$" = "whois.aeda.net.ae";
-+	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
- 	"\\.aero$" = "whois.aero";
--	"\\.af$" = "whois.nic.af";
-+	"\\.af$" = "whois.cocca.cx";
- 	"\\.ag$" = "whois.nic.ag";
--	"\\.ai$" = "whois.offshore.ai";
--	"\\.al$" = "whois.ripe.net";
-+	"\\.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";
-+	"\\.asia$" = "whois.nic.asia";
- 	"\\.at$" = "whois.nic.at";
- 	"\\.asn\\.au$" = "whois.ausregistry.net.au";
- 	"\\.com\\.au$" = "whois.ausregistry.net.au";
-@@ -125,30 +145,40 @@ 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";
-+	"\\.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";
- 	"\\.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 $*";
- 	}
- 	"\\.coop$" = "whois.nic.coop";
-+	"\\.cu$" = "www.nic.cu";
- 	"\\.cx$" = "whois.nic.cx";
- 	"\\.cy$" = "whois.ripe.net";
- 	"\\.cz$" = "whois.nic.cz";
-@@ -156,12 +186,15 @@ whois-servers {
- 		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$" = "whois.ripe.net";
-+	"\\.dz$" = "www.nic.dz";
- 	"\\.ec$" = "www.nic.ec";
--	"\\.edu$" = "whois.educause.net";
-+	"\\.edu$" = "whois.educause.edu";
- 	"\\.ee$" = "whois.eenet.ee";
- 	"\\.eg$" = "whois.ripe.net";
- 	"\\.es$" = "www.nic.es";
-@@ -171,17 +204,20 @@ whois-servers {
- 	"\\.fm$" = "www.dot.fm";
- 	"\\.fo$" = "whois.ripe.net";
- 	"\\.fr$" = "whois.nic.fr";
--	"\\.gi$" = "www.nic.gi";
-+	"\\.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";
-@@ -195,69 +231,94 @@ 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";
- 	"\\.mx$" = "whois.nic.mx";
--	"\\.my$" = "whois.mynic.net.my";
-+	"\\.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 $*";
- 	}
--	"\\.ng$" = "whois.rg.net";
-+	"\\.nf$" = "whois.cocca.cx";
-+	"\\.ng$" = "whois.nic.net.ng";
- 	"\\.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";
-+	"\\.pa$" = "www.nic.pa";
-+	"\\.pe$" = "kero.yachay.pe";
- 	"\\.pk$" = "pknic.net.pk";
- 	"\\.pl$" = "whois.dns.pl";
- 	"\\.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";
- 	"\\.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";
-+	"\\.sg$" = "whois.sgnic.sg";
- 	"\\.sh$" = "whois.nic.sh";
- 	"\\.si$" = "whois.arnes.si";
- 	"\\.sj$" = "whois.ripe.net";
--	"\\.sk$" = "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";
- 	"\\.tg$" = "www.nic.tg";
- 	"\\.th$" = "whois.thnic.net";
-@@ -268,8 +329,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";
-@@ -279,9 +344,12 @@ whois-servers {
- 	"\\.fed\\.us$" = "whois.nic.gov";
- 	"\\.us$" = "whois.nic.us";
- 	"\\.com\\.uy$" = "dns.antel.net.uy";
--	"\\.uy$" = "www.rau.edu.uy"; # is a whois server
--	"\\.uz$" = "www.noc.uz";
-+	"\\.uy$" = "whois.nic.org.uy";
-+	"\\.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";
-@@ -289,12 +357,15 @@ whois-servers {
- 	"\\.vu$" = "www.vunic.vu";
- 	"\\.wf$" = "whois.nic.wf";
- 	"\\.ws$" = "whois.worldsite.ws";
-+	"\\.xn--mgbaam7a8h$" = "whois.aeda.net.ae";
- 	"\\.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";
-+	"\\.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
-@@ -311,6 +382,16 @@ whois-servers {
- }
- 
- #
-+# enum-blocks
-+#
-+enum-blocks {
-+	type = regex;
-+
-+	"\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
-+	"\\.1\\.6\\.e164\\.arpa$" = "whois-check.enum.com.au";
-+}
-+
-+#
- # 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.
- #
-@@ -580,7 +661,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";
-@@ -593,13 +674,13 @@ 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:3C00::/22" = "whois.arin.net"; # not correct, but shows better information
- 	"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";
-@@ -610,23 +691,47 @@ 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::/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::/12" = "whois.lacnic.net";
- 
--	"2800:0000::/23" = "whois.lacnic.net";
-+	"2C00:0000::/12" = "whois.afrinic.net";
- 
--	"2A00:0000::/21" = "whois.ripe.net";
--	"2A01:0000::/16" = "whois.ripe.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)
-@@ -662,7 +767,7 @@ handles {
- 	".*-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";
-@@ -671,6 +776,49 @@ 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 $*";
-+	}
-+	".*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 $*";
-+	}
- }
- 
- #
-@@ -678,11 +826,6 @@ handles {
- # each host. 
- #
- server-options {
--	"rwhois\\.nic\\.ve" {
--		rwhois = true;
--		rwhois-display = "dump";
--		rwhois-limit = 10;
--	}
- 	"rwhois\\.exodus\\.net" {
- 		rwhois = true;
- 	}
-@@ -754,13 +897,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";
-@@ -777,13 +913,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";
-@@ -813,11 +942,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" {
-@@ -848,13 +978,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";
-@@ -878,9 +1001,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" {
-@@ -910,33 +1033,152 @@ 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";
-+	}
-+
-+	"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";
-+	}
-+
-+	"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";
-+	}
-+
-+	"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";
-+	}
-+
-+	"whois\\.1api\\.net" {
-+		answer-charset = "UTF-8";
-+	}
- }
- 
- #
diff --git a/src/patches/jwhois-4.0-conf_update2.patch b/src/patches/jwhois-4.0-conf_update2.patch
deleted file mode 100644
index 72dd300ff..000000000
--- a/src/patches/jwhois-4.0-conf_update2.patch
+++ /dev/null
@@ -1,163 +0,0 @@
-Patch by Robert Scheck <robert(a)fedoraproject.org> for jwhois >= 4.0, which adds various new
-IDN top-level-domains, updates some whois servers of ccTLDs and corrects the answer charset
-setting for some whois servers, too.
-
---- jwhois-4.0/example/jwhois.conf			2011-05-22 20:36:19.000000000 +0200
-+++ jwhois-4.0/example/jwhois.conf.conf_update2		2011-05-22 23:46:21.000000000 +0200
-@@ -122,7 +122,6 @@
- 	"\\.ac\\.ae$" = "whois.aeda.net.ae";
- 	"\\.mil\\.ae$" = "whois.aeda.net.ae";
- 	"\\.gov\\.ae$" = "whois.aeda.net.ae";
--	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
- 	"\\.aero$" = "whois.aero";
- 	"\\.af$" = "whois.cocca.cx";
- 	"\\.ag$" = "whois.nic.ag";
-@@ -192,7 +191,7 @@
- 	}
- 	"\\.dm$" = "whois.nic.dm";
- 	"\\.do$" = "whois.nic.do";
--	"\\.dz$" = "www.nic.dz";
-+	"\\.dz$" = "whois.nic.dz";
- 	"\\.ec$" = "www.nic.ec";
- 	"\\.edu$" = "whois.educause.edu";
- 	"\\.ee$" = "whois.eenet.ee";
-@@ -243,7 +242,7 @@
- 	"\\.kp$" = "whois.kcce.kp";
- 	"\\.kg$" = "whois.domain.kg";
- 	"\\.ki$" = "whois.cocca.cx";
--	"\\.kr$" = "whois.krnic.net";
-+	"\\.kr$" = "whois.kr";
- 	"\\.kz$" = "whois.nic.kz";
- 	"\\.la$" = "whois.nic.la";
- 	"\\.lb$" = "cgi.aub.edu.lb";
-@@ -292,13 +291,14 @@
- 	"\\.pm$" = "whois.nic.pm";
- 	"\\.pr$" = "whois.nic.pr";
- 	"\\.pro$" = "whois.registrypro.pro";
--	"\\.ps$" = "www.nic.ps";
-+	"\\.ps$" = "whois.pnina.ps";
- 	"\\.pt$" = "whois.dns.pt";
- 	"\\.pw$" = "whois.nic.pw";
- 	"\\.re$" = "whois.nic.re";
- 	"\\.ro$" = "whois.rotld.ro";
-+	"\\.rs$" = "whois.rnids.rs";
- 	"\\.edu\.ru$" = "whois.informika.ru";
--	"\\.ru$" = "whois.ripn.net";
-+	"\\.ru$" = "whois.tcinet.ru";
- 	"\\.rw$" = "www.nic.rw";
- 	"\\.sa$" = "saudinic.net.sa";
- 	"\\.sb$" = "whois.nic.sb";
-@@ -317,6 +317,7 @@
- 	"\\.st$" = "whois.nic.st";
- 	"\\.su$" = "whois.ripn.net";
- 	"\\.sv$" = "www.svnet.org.sv";
-+	"\\.sy$" = "whois.tld.sy";
- 	"\\.tc$" = "whois.adamsnames.tc";
- 	"\\.tel$" = "whois.nic.tel";
- 	"\\.tf$" = "whois.afnic.fr";
-@@ -335,7 +336,7 @@
- 		whois-server = "tvwhois.verisign-grs.com";
- 		query-format = "domain $*";
-         }
--	"\\.tw$" = "whois.twnic.net";
-+	"\\.tw$" = "whois.twnic.net.tw";
- 	"\\.ua$" = "whois.com.ua";
- 	"\\.ug$" = "whois.co.ug";
- 	"\\.ac\\.uk$" = "whois.ja.net";
-@@ -357,9 +358,25 @@
- 	"\\.vu$" = "www.vunic.vu";
- 	"\\.wf$" = "whois.nic.wf";
- 	"\\.ws$" = "whois.worldsite.ws";
-+	"\\.xn--3e0b707e$" = "whois.kr";
-+	"\\.xn--90a3ac$" = "whois.rnids.rs";
-+	"\\.xn--clchc0ea0b2g2a9gcd$" = "whois.sgnic.sg";
-+	"\\.xn--fiqs8s$" = "cwhois.cnnic.cn";
-+	"\\.xn--fiqz9s$" = "cwhois.cnnic.cn";
-+	"\\.xn--fzc2c9e2c$" = "whois.nic.lk";
-+	"\\.xn--j6w193g$" = "whois.hkirc.hk";
-+	"\\.xn--kprw13d$" = "whois.twnic.net.tw";
-+	"\\.xn--kpry57d$" = "whois.twnic.net.tw";
-+	"\\.xn--lgbbat1ad8j$" = "whois.nic.dz";
- 	"\\.xn--mgbaam7a8h$" = "whois.aeda.net.ae";
-+	"\\.xn--mgberp4a5d4ar$" = "whois.nic.net.sa";
-+	"\\.xn--o3cw4h$" = "whois.thnic.co.th";
-+	"\\.xn--ogbpf8fl$" = "whois.tld.sy";
-+	"\\.xn--p1ai$" = "whois.tcinet.ru";
-+	"\\.xn--xkc2al3hye2a$" = "whois.nic.lk";
-+	"\\.xn--yfro4i67o$" = "whois.sgnic.sg";
-+	"\\.xn--ygbi2ammx$" = "whois.pnina.ps";
- 	"\\.yt$" = "whois.nic.yt";
--	"\\.yu$" = "www.nic.yu";
- 	"\\.ac\\.za$" = "whois.ac.za";
- 	"\\.org\\.za$" = "rwhois.org.za 4321";
- 	"\\.co\\.za$" = "whois.co.za";
-@@ -389,6 +406,7 @@
- 
- 	"\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
- 	"\\.1\\.6\\.e164\\.arpa$" = "whois-check.enum.com.au";
-+	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
- }
- 
- #
-@@ -1095,20 +1113,6 @@
- 		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";
--	}
--
- 	"whois\\.dotster\\.com" {
- 		answer-charset = "UTF-8";
- 	}
-@@ -1127,13 +1131,6 @@
- 		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";
-@@ -1179,6 +1176,26 @@
- 	"whois\\.1api\\.net" {
- 		answer-charset = "UTF-8";
- 	}
-+
-+	"whois\\.kr" {
-+		answer-charset = "EUC-KR";
-+	}
-+
-+	"whois\\.nic\\.or\\.kr" {
-+		answer-charset = "EUC-KR";
-+	}
-+
-+	"whois\\.nic\\.dz" {
-+		answer-charset = "UTF-8";
-+	}
-+
-+	"whois\\.nic\\.lk" {
-+		answer-charset = "ISO-8859-11";
-+	}
-+
-+	"whois\\.iana\\.org" {
-+		answer-charset = "UTF-8";
-+	}
- }
- 
- #
diff --git a/src/patches/jwhois-4.0-connect.patch b/src/patches/jwhois-4.0-connect.patch
deleted file mode 100644
index 2a639d779..000000000
--- a/src/patches/jwhois-4.0-connect.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-This fixes somewhat reversed logic of trying to connect to WHOIS server.
-Tue Nov 20 2007, Lubomir Kundrak <lkundrak(a)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 --git a/src/patches/jwhois-4.0-fclose.patch b/src/patches/jwhois-4.0-fclose.patch
deleted file mode 100644
index e9c896f68..000000000
--- a/src/patches/jwhois-4.0-fclose.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-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 --git a/src/patches/jwhois-4.0-idna.patch b/src/patches/jwhois-4.0-idna.patch
deleted file mode 100644
index ff13a4f71..000000000
--- a/src/patches/jwhois-4.0-idna.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-diff -up jwhois-4.0/src/jwhois.c.orig jwhois-4.0/src/jwhois.c
---- jwhois-4.0/src/jwhois.c.orig	2007-06-26 08:59:35.000000000 +0200
-+++ jwhois-4.0/src/jwhois.c	2011-05-24 12:29:37.398892451 +0200
-@@ -98,7 +98,7 @@ main(int argc, char **argv)
- 
-   /* Parse remaining arguments and place them into the wq
-      structure. */
--  while (optind < argc)
-+  while (optind < argc-1)
-     {
-       count += strlen(argv[optind])+1;
-       if (!qstring)
-@@ -116,19 +116,25 @@ main(int argc, char **argv)
-       strcat(qstring, " ");
-       optind++;
-     }
--  qstring[strlen(qstring)-1] = '\0';
- #ifdef LIBIDN
--  rc = idna_to_ascii_lz(qstring, &idn, 0);
-+  rc = idna_to_ascii_lz(argv[optind], &idn, 0);
-   if (rc != IDNA_SUCCESS)
-     {
--      printf("[IDN encoding of '%s' failed with error code %d]\n", qstring, rc);
-+      printf("[IDN encoding of '%s' failed with error code %d]\n", argv[optind], rc);
-       exit(1);
-     }
--  wq.query = strdup(idn);
-+  qstring = realloc(qstring, count+strlen(idn)+1);
-+  memcpy(qstring+count,
-+         idn,
-+         strlen(idn)+1);
-   free(idn);
- #else
--  wq.query = qstring;
-+  qstring = realloc(qstring, count+strlen(argv[optind])+1);
-+  memcpy(qstring+count,
-+         argv[optind],
-+         strlen(argv[optind])+1);
- #endif
-+  wq.query = qstring;
- 
-   if (ghost)
-     {
diff --git a/src/patches/jwhois-4.0-ipv6match.patch b/src/patches/jwhois-4.0-ipv6match.patch
deleted file mode 100644
index 0e5ad0e9a..000000000
--- a/src/patches/jwhois-4.0-ipv6match.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-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(a)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;
- }
diff --git a/src/patches/jwhois-4.0-multi-homed.patch b/src/patches/jwhois-4.0-multi-homed.patch
deleted file mode 100644
index 05d6f46af..000000000
--- a/src/patches/jwhois-4.0-multi-homed.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -up jwhois-4.0/src/utils.c.orig jwhois-4.0/src/utils.c
---- jwhois-4.0/src/utils.c.orig	2010-09-29 16:19:24.453608330 +0200
-+++ jwhois-4.0/src/utils.c	2010-09-29 16:20:10.686608189 +0200
-@@ -292,7 +292,10 @@ make_connect(const char *host, int port)
-       if (error < 0 || retval)
- 	{
- 	  close (sockfd);
--	  return -1;
-+	  if (retval == ENETUNREACH)
-+	    continue;
-+	  else
-+	    return -1;
- 	}
- 
-       break;
diff --git a/src/patches/jwhois-4.0-select.patch b/src/patches/jwhois-4.0-select.patch
deleted file mode 100644
index b60ec9692..000000000
--- a/src/patches/jwhois-4.0-select.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -ur jwhois-4.0.old/src/whois.c jwhois-4.0/src/whois.c
---- jwhois-4.0.old/src/whois.c	2007-06-26 03:00:29.000000000 -0400
-+++ jwhois-4.0/src/whois.c	2009-04-29 11:42:56.000000000 -0400
-@@ -115,6 +115,7 @@
-   unsigned int count, start_count;
-   int ret;
-   char data[MAXBUFSIZE];
-+  fd_set rfds;
- 
-   count = 0;
- 
-@@ -124,7 +125,15 @@
- 
-   do
-     {
-+      FD_ZERO(&rfds);
-+      FD_SET(fd, &rfds);
-+      ret = select(fd + 1, &rfds, NULL, NULL, NULL);
-+
-+      if (ret <= 0)
-+        return -1;
-+
-       ret = read(fd, data, MAXBUFSIZE-1);
-+
-       if (ret >= 0)
- 	{
- 	  count += ret;
-- 
2.32.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/3] whois: Installation of aan actively maintained whois client
  2021-08-06 11:16 ` [PATCH 2/3] whois: Installation of aan actively maintained whois client Adolf Belka
@ 2021-08-06 15:09   ` Peter Müller
  0 siblings, 0 replies; 6+ messages in thread
From: Peter Müller @ 2021-08-06 15:09 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 5308 bytes --]

Hello Adolf,

excellent work. Thank you so much. :-)

Reviewed-by: Peter Müller <peter.mueller(a)ipfire.org>

Thanks, and best regards,
Peter Müller


> - This whois client is being actively maintained. This version 5.5.10 was released on
>    June 6th 2021 and regular updates have been ocurring several times per year.
> - This client has all of its default whois servers compiled into it. These can be seen
>    by reading the source files in the tarball.
> - Therefore the whois.conf file is available for any additional servers that are decided
>    to be required but as provided is empty.
> - Installed on a vm testbed and worked to identify the details of ip addresses. Selecting
>    an IP in the WUI logs screen also gets the ip information provided so it is working
>    well with the WUI.
> 
> Tested-by:Adolf Belka <adolf.belka(a)ipfire.org>
> Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
> ---
>  config/rootfiles/common/whois |  4 ++
>  lfs/whois                     | 84 +++++++++++++++++++++++++++++++++++
>  2 files changed, 88 insertions(+)
>  create mode 100644 config/rootfiles/common/whois
>  create mode 100644 lfs/whois
> 
> diff --git a/config/rootfiles/common/whois b/config/rootfiles/common/whois
> new file mode 100644
> index 000000000..c5a16daf1
> --- /dev/null
> +++ b/config/rootfiles/common/whois
> @@ -0,0 +1,4 @@
> +etc/whois.conf
> +usr/bin/whois
> +#usr/share/man/man1/whois.1
> +#usr/share/man/man5/whois.conf.5
> diff --git a/lfs/whois b/lfs/whois
> new file mode 100644
> index 000000000..b526b90f4
> --- /dev/null
> +++ b/lfs/whois
> @@ -0,0 +1,84 @@
> +###############################################################################
> +#                                                                             #
> +# IPFire.org - A linux based firewall                                         #
> +# Copyright (C) 2007-2018  IPFire Team  <info(a)ipfire.org>                     #
> +#                                                                             #
> +# This program is free software: you can redistribute it and/or modify        #
> +# it under the terms of the GNU General Public License as published by        #
> +# the Free Software Foundation, either version 3 of the License, or           #
> +# (at your option) any later version.                                         #
> +#                                                                             #
> +# This program is distributed in the hope that it will be useful,             #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
> +# GNU General Public License for more details.                                #
> +#                                                                             #
> +# You should have received a copy of the GNU General Public License           #
> +# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
> +#                                                                             #
> +###############################################################################
> +
> +###############################################################################
> +# Definitions
> +###############################################################################
> +
> +include Config
> +
> +VER        = 5.5.10
> +
> +THISAPP    = whois_$(VER)
> +DL_FILE    = $(THISAPP).tar.xz
> +DL_FROM    = $(URL_IPFIRE)
> +DIR_APP    = $(DIR_SRC)/$(THISAPP)
> +TARGET     = $(DIR_INFO)/$(THISAPP)
> +
> +PROG       = whois
> +
> +###############################################################################
> +# Top-level Rules
> +###############################################################################
> +
> +objects = $(DL_FILE)
> +
> +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> +
> +$(DL_FILE)_MD5 = 4db48a482a06261ffa358d9f52c9bd7e
> +
> +install : $(TARGET)
> +
> +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> +
> +download :$(patsubst %,$(DIR_DL)/%,$(objects))
> +
> +md5 : $(subst %,%_MD5,$(objects))
> +
> +###############################################################################
> +# Downloading, checking, md5sum
> +###############################################################################
> +
> +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> +	@$(CHECK)
> +
> +$(patsubst %,$(DIR_DL)/%,$(objects)) :
> +	@$(LOAD)
> +
> +$(subst %,%_MD5,$(objects)) :
> +	@$(MD5)
> +
> +###############################################################################
> +# Installation Details
> +###############################################################################
> +
> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> +	@$(PREBUILD)
> +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
> +	$(UPDATE_AUTOMAKE)
> +
> +	cd $(DIR_SRC)/$(PROG) && make $(MAKETUNING) \
> +	                            CONFIG_FILE=/etc/whois.conf \
> +	                            whois
> +	cd $(DIR_SRC)/$(PROG) && make prefix=/usr install-whois
> +	cd $(DIR_SRC)/$(PROG) && install -v -m 644 whois.conf -t /etc/
> +
> +	@rm -rf $(DIR_APP)
> +	@$(POSTBUILD)
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 3/3] jwhois: Remove jwhois and all associated patches
  2021-08-06 11:16 ` [PATCH 3/3] jwhois: Remove jwhois and all associated patches Adolf Belka
@ 2021-08-06 15:09   ` Peter Müller
  0 siblings, 0 replies; 6+ messages in thread
From: Peter Müller @ 2021-08-06 15:09 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 42139 bytes --]

Reviewed-by: Peter Müller <peter.mueller(a)ipfire.org>

> - jwhois being replaced with whois
> - Removal of jwhois lfs, rootfile and assoicated patch files.
> 
> Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
> ---
>  config/rootfiles/common/jwhois            |  25 -
>  lfs/jwhois                                |  92 ---
>  src/patches/jwhois-4.0-conf_update.patch  | 714 ----------------------
>  src/patches/jwhois-4.0-conf_update2.patch | 163 -----
>  src/patches/jwhois-4.0-connect.patch      |  58 --
>  src/patches/jwhois-4.0-fclose.patch       |  12 -
>  src/patches/jwhois-4.0-idna.patch         |  43 --
>  src/patches/jwhois-4.0-ipv6match.patch    |  15 -
>  src/patches/jwhois-4.0-multi-homed.patch  |  15 -
>  src/patches/jwhois-4.0-select.patch       |  27 -
>  10 files changed, 1164 deletions(-)
>  delete mode 100644 config/rootfiles/common/jwhois
>  delete mode 100644 lfs/jwhois
>  delete mode 100644 src/patches/jwhois-4.0-conf_update.patch
>  delete mode 100644 src/patches/jwhois-4.0-conf_update2.patch
>  delete mode 100644 src/patches/jwhois-4.0-connect.patch
>  delete mode 100644 src/patches/jwhois-4.0-fclose.patch
>  delete mode 100644 src/patches/jwhois-4.0-idna.patch
>  delete mode 100644 src/patches/jwhois-4.0-ipv6match.patch
>  delete mode 100644 src/patches/jwhois-4.0-multi-homed.patch
>  delete mode 100644 src/patches/jwhois-4.0-select.patch
> 
> diff --git a/config/rootfiles/common/jwhois b/config/rootfiles/common/jwhois
> deleted file mode 100644
> index 135b453b9..000000000
> --- a/config/rootfiles/common/jwhois
> +++ /dev/null
> @@ -1,25 +0,0 @@
> -etc/jwhois.conf
> -usr/bin/jwhois
> -usr/bin/whois
> -#usr/share/info/jwhois.info
> -#usr/share/locale/es/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/fr/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/hu/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/id/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/it/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/nl/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/pl/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/pt_BR/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/ro
> -#usr/share/locale/ro/LC_MESSAGES
> -#usr/share/locale/ro/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/ru/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/rw/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/sv/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/tr/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/vi/LC_MESSAGES/jwhois.mo
> -#usr/share/locale/zh_TW/LC_MESSAGES/jwhois.mo
> -#usr/share/man/man1/jwhois.1
> -#usr/share/man/sv
> -#usr/share/man/sv/man1
> -#usr/share/man/sv/man1/jwhois.1
> diff --git a/lfs/jwhois b/lfs/jwhois
> deleted file mode 100644
> index ed12681c7..000000000
> --- a/lfs/jwhois
> +++ /dev/null
> @@ -1,92 +0,0 @@
> -###############################################################################
> -#                                                                             #
> -# IPFire.org - A linux based firewall                                         #
> -# Copyright (C) 2007-2018  IPFire Team  <info(a)ipfire.org>                     #
> -#                                                                             #
> -# This program is free software: you can redistribute it and/or modify        #
> -# it under the terms of the GNU General Public License as published by        #
> -# the Free Software Foundation, either version 3 of the License, or           #
> -# (at your option) any later version.                                         #
> -#                                                                             #
> -# This program is distributed in the hope that it will be useful,             #
> -# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
> -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
> -# GNU General Public License for more details.                                #
> -#                                                                             #
> -# You should have received a copy of the GNU General Public License           #
> -# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
> -#                                                                             #
> -###############################################################################
> -
> -###############################################################################
> -# Definitions
> -###############################################################################
> -
> -include Config
> -
> -VER        = 4.0
> -
> -THISAPP    = jwhois-$(VER)
> -DL_FILE    = $(THISAPP).tar.gz
> -DL_FROM    = $(URL_IPFIRE)
> -DIR_APP    = $(DIR_SRC)/$(THISAPP)
> -TARGET     = $(DIR_INFO)/$(THISAPP)
> -
> -###############################################################################
> -# Top-level Rules
> -###############################################################################
> -
> -objects = $(DL_FILE)
> -
> -$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> -
> -$(DL_FILE)_MD5 = 977d0ba90ee058a7998c94d933fc9546
> -
> -install : $(TARGET)
> -
> -check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> -
> -download :$(patsubst %,$(DIR_DL)/%,$(objects))
> -
> -md5 : $(subst %,%_MD5,$(objects))
> -
> -###############################################################################
> -# Downloading, checking, md5sum
> -###############################################################################
> -
> -$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> -	@$(CHECK)
> -
> -$(patsubst %,$(DIR_DL)/%,$(objects)) :
> -	@$(LOAD)
> -
> -$(subst %,%_MD5,$(objects)) :
> -	@$(MD5)
> -
> -###############################################################################
> -# Installation Details
> -###############################################################################
> -
> -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> -	@$(PREBUILD)
> -	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
> -	$(UPDATE_AUTOMAKE)
> -
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-conf_update.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-conf_update2.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-connect.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-fclose.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-idna.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-ipv6match.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-multi-homed.patch
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/jwhois-4.0-select.patch
> -
> -	cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc
> -	cd $(DIR_APP) && make $(MAKETUNING)
> -	cd $(DIR_APP) && make install
> -
> -	# Add alias for whois command.
> -	ln -svf jwhois /usr/bin/whois
> -
> -	@rm -rf $(DIR_APP)
> -	@$(POSTBUILD)
> diff --git a/src/patches/jwhois-4.0-conf_update.patch b/src/patches/jwhois-4.0-conf_update.patch
> deleted file mode 100644
> index 512d30006..000000000
> --- a/src/patches/jwhois-4.0-conf_update.patch
> +++ /dev/null
> @@ -1,714 +0,0 @@
> -diff -up jwhois-4.0/example/jwhois.conf.orig jwhois-4.0/example/jwhois.conf
> ---- jwhois-4.0/example/jwhois.conf.orig	2007-03-26 11:12:08.000000000 +0200
> -+++ jwhois-4.0/example/jwhois.conf	2010-12-20 14:26:06.450882316 +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
> -@@ -27,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
> -@@ -81,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";
> -@@ -103,17 +110,30 @@ 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";
> -+	"\\.co\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.net\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.org\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.sch\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.ac\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.mil\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.gov\\.ae$" = "whois.aeda.net.ae";
> -+	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
> - 	"\\.aero$" = "whois.aero";
> --	"\\.af$" = "whois.nic.af";
> -+	"\\.af$" = "whois.cocca.cx";
> - 	"\\.ag$" = "whois.nic.ag";
> --	"\\.ai$" = "whois.offshore.ai";
> --	"\\.al$" = "whois.ripe.net";
> -+	"\\.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";
> -+	"\\.asia$" = "whois.nic.asia";
> - 	"\\.at$" = "whois.nic.at";
> - 	"\\.asn\\.au$" = "whois.ausregistry.net.au";
> - 	"\\.com\\.au$" = "whois.ausregistry.net.au";
> -@@ -125,30 +145,40 @@ 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";
> -+	"\\.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";
> - 	"\\.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 $*";
> - 	}
> - 	"\\.coop$" = "whois.nic.coop";
> -+	"\\.cu$" = "www.nic.cu";
> - 	"\\.cx$" = "whois.nic.cx";
> - 	"\\.cy$" = "whois.ripe.net";
> - 	"\\.cz$" = "whois.nic.cz";
> -@@ -156,12 +186,15 @@ whois-servers {
> - 		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$" = "whois.ripe.net";
> -+	"\\.dz$" = "www.nic.dz";
> - 	"\\.ec$" = "www.nic.ec";
> --	"\\.edu$" = "whois.educause.net";
> -+	"\\.edu$" = "whois.educause.edu";
> - 	"\\.ee$" = "whois.eenet.ee";
> - 	"\\.eg$" = "whois.ripe.net";
> - 	"\\.es$" = "www.nic.es";
> -@@ -171,17 +204,20 @@ whois-servers {
> - 	"\\.fm$" = "www.dot.fm";
> - 	"\\.fo$" = "whois.ripe.net";
> - 	"\\.fr$" = "whois.nic.fr";
> --	"\\.gi$" = "www.nic.gi";
> -+	"\\.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";
> -@@ -195,69 +231,94 @@ 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";
> - 	"\\.mx$" = "whois.nic.mx";
> --	"\\.my$" = "whois.mynic.net.my";
> -+	"\\.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 $*";
> - 	}
> --	"\\.ng$" = "whois.rg.net";
> -+	"\\.nf$" = "whois.cocca.cx";
> -+	"\\.ng$" = "whois.nic.net.ng";
> - 	"\\.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";
> -+	"\\.pa$" = "www.nic.pa";
> -+	"\\.pe$" = "kero.yachay.pe";
> - 	"\\.pk$" = "pknic.net.pk";
> - 	"\\.pl$" = "whois.dns.pl";
> - 	"\\.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";
> - 	"\\.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";
> -+	"\\.sg$" = "whois.sgnic.sg";
> - 	"\\.sh$" = "whois.nic.sh";
> - 	"\\.si$" = "whois.arnes.si";
> - 	"\\.sj$" = "whois.ripe.net";
> --	"\\.sk$" = "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";
> - 	"\\.tg$" = "www.nic.tg";
> - 	"\\.th$" = "whois.thnic.net";
> -@@ -268,8 +329,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";
> -@@ -279,9 +344,12 @@ whois-servers {
> - 	"\\.fed\\.us$" = "whois.nic.gov";
> - 	"\\.us$" = "whois.nic.us";
> - 	"\\.com\\.uy$" = "dns.antel.net.uy";
> --	"\\.uy$" = "www.rau.edu.uy"; # is a whois server
> --	"\\.uz$" = "www.noc.uz";
> -+	"\\.uy$" = "whois.nic.org.uy";
> -+	"\\.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";
> -@@ -289,12 +357,15 @@ whois-servers {
> - 	"\\.vu$" = "www.vunic.vu";
> - 	"\\.wf$" = "whois.nic.wf";
> - 	"\\.ws$" = "whois.worldsite.ws";
> -+	"\\.xn--mgbaam7a8h$" = "whois.aeda.net.ae";
> - 	"\\.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";
> -+	"\\.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
> -@@ -311,6 +382,16 @@ whois-servers {
> - }
> - 
> - #
> -+# enum-blocks
> -+#
> -+enum-blocks {
> -+	type = regex;
> -+
> -+	"\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
> -+	"\\.1\\.6\\.e164\\.arpa$" = "whois-check.enum.com.au";
> -+}
> -+
> -+#
> - # 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.
> - #
> -@@ -580,7 +661,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";
> -@@ -593,13 +674,13 @@ 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:3C00::/22" = "whois.arin.net"; # not correct, but shows better information
> - 	"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";
> -@@ -610,23 +691,47 @@ 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::/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::/12" = "whois.lacnic.net";
> - 
> --	"2800:0000::/23" = "whois.lacnic.net";
> -+	"2C00:0000::/12" = "whois.afrinic.net";
> - 
> --	"2A00:0000::/21" = "whois.ripe.net";
> --	"2A01:0000::/16" = "whois.ripe.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)
> -@@ -662,7 +767,7 @@ handles {
> - 	".*-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";
> -@@ -671,6 +776,49 @@ 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 $*";
> -+	}
> -+	".*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 $*";
> -+	}
> - }
> - 
> - #
> -@@ -678,11 +826,6 @@ handles {
> - # each host. 
> - #
> - server-options {
> --	"rwhois\\.nic\\.ve" {
> --		rwhois = true;
> --		rwhois-display = "dump";
> --		rwhois-limit = 10;
> --	}
> - 	"rwhois\\.exodus\\.net" {
> - 		rwhois = true;
> - 	}
> -@@ -754,13 +897,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";
> -@@ -777,13 +913,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";
> -@@ -813,11 +942,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" {
> -@@ -848,13 +978,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";
> -@@ -878,9 +1001,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" {
> -@@ -910,33 +1033,152 @@ 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";
> -+	}
> -+
> -+	"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";
> -+	}
> -+
> -+	"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";
> -+	}
> -+
> -+	"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";
> -+	}
> -+
> -+	"whois\\.1api\\.net" {
> -+		answer-charset = "UTF-8";
> -+	}
> - }
> - 
> - #
> diff --git a/src/patches/jwhois-4.0-conf_update2.patch b/src/patches/jwhois-4.0-conf_update2.patch
> deleted file mode 100644
> index 72dd300ff..000000000
> --- a/src/patches/jwhois-4.0-conf_update2.patch
> +++ /dev/null
> @@ -1,163 +0,0 @@
> -Patch by Robert Scheck <robert(a)fedoraproject.org> for jwhois >= 4.0, which adds various new
> -IDN top-level-domains, updates some whois servers of ccTLDs and corrects the answer charset
> -setting for some whois servers, too.
> -
> ---- jwhois-4.0/example/jwhois.conf			2011-05-22 20:36:19.000000000 +0200
> -+++ jwhois-4.0/example/jwhois.conf.conf_update2		2011-05-22 23:46:21.000000000 +0200
> -@@ -122,7 +122,6 @@
> - 	"\\.ac\\.ae$" = "whois.aeda.net.ae";
> - 	"\\.mil\\.ae$" = "whois.aeda.net.ae";
> - 	"\\.gov\\.ae$" = "whois.aeda.net.ae";
> --	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
> - 	"\\.aero$" = "whois.aero";
> - 	"\\.af$" = "whois.cocca.cx";
> - 	"\\.ag$" = "whois.nic.ag";
> -@@ -192,7 +191,7 @@
> - 	}
> - 	"\\.dm$" = "whois.nic.dm";
> - 	"\\.do$" = "whois.nic.do";
> --	"\\.dz$" = "www.nic.dz";
> -+	"\\.dz$" = "whois.nic.dz";
> - 	"\\.ec$" = "www.nic.ec";
> - 	"\\.edu$" = "whois.educause.edu";
> - 	"\\.ee$" = "whois.eenet.ee";
> -@@ -243,7 +242,7 @@
> - 	"\\.kp$" = "whois.kcce.kp";
> - 	"\\.kg$" = "whois.domain.kg";
> - 	"\\.ki$" = "whois.cocca.cx";
> --	"\\.kr$" = "whois.krnic.net";
> -+	"\\.kr$" = "whois.kr";
> - 	"\\.kz$" = "whois.nic.kz";
> - 	"\\.la$" = "whois.nic.la";
> - 	"\\.lb$" = "cgi.aub.edu.lb";
> -@@ -292,13 +291,14 @@
> - 	"\\.pm$" = "whois.nic.pm";
> - 	"\\.pr$" = "whois.nic.pr";
> - 	"\\.pro$" = "whois.registrypro.pro";
> --	"\\.ps$" = "www.nic.ps";
> -+	"\\.ps$" = "whois.pnina.ps";
> - 	"\\.pt$" = "whois.dns.pt";
> - 	"\\.pw$" = "whois.nic.pw";
> - 	"\\.re$" = "whois.nic.re";
> - 	"\\.ro$" = "whois.rotld.ro";
> -+	"\\.rs$" = "whois.rnids.rs";
> - 	"\\.edu\.ru$" = "whois.informika.ru";
> --	"\\.ru$" = "whois.ripn.net";
> -+	"\\.ru$" = "whois.tcinet.ru";
> - 	"\\.rw$" = "www.nic.rw";
> - 	"\\.sa$" = "saudinic.net.sa";
> - 	"\\.sb$" = "whois.nic.sb";
> -@@ -317,6 +317,7 @@
> - 	"\\.st$" = "whois.nic.st";
> - 	"\\.su$" = "whois.ripn.net";
> - 	"\\.sv$" = "www.svnet.org.sv";
> -+	"\\.sy$" = "whois.tld.sy";
> - 	"\\.tc$" = "whois.adamsnames.tc";
> - 	"\\.tel$" = "whois.nic.tel";
> - 	"\\.tf$" = "whois.afnic.fr";
> -@@ -335,7 +336,7 @@
> - 		whois-server = "tvwhois.verisign-grs.com";
> - 		query-format = "domain $*";
> -         }
> --	"\\.tw$" = "whois.twnic.net";
> -+	"\\.tw$" = "whois.twnic.net.tw";
> - 	"\\.ua$" = "whois.com.ua";
> - 	"\\.ug$" = "whois.co.ug";
> - 	"\\.ac\\.uk$" = "whois.ja.net";
> -@@ -357,9 +358,25 @@
> - 	"\\.vu$" = "www.vunic.vu";
> - 	"\\.wf$" = "whois.nic.wf";
> - 	"\\.ws$" = "whois.worldsite.ws";
> -+	"\\.xn--3e0b707e$" = "whois.kr";
> -+	"\\.xn--90a3ac$" = "whois.rnids.rs";
> -+	"\\.xn--clchc0ea0b2g2a9gcd$" = "whois.sgnic.sg";
> -+	"\\.xn--fiqs8s$" = "cwhois.cnnic.cn";
> -+	"\\.xn--fiqz9s$" = "cwhois.cnnic.cn";
> -+	"\\.xn--fzc2c9e2c$" = "whois.nic.lk";
> -+	"\\.xn--j6w193g$" = "whois.hkirc.hk";
> -+	"\\.xn--kprw13d$" = "whois.twnic.net.tw";
> -+	"\\.xn--kpry57d$" = "whois.twnic.net.tw";
> -+	"\\.xn--lgbbat1ad8j$" = "whois.nic.dz";
> - 	"\\.xn--mgbaam7a8h$" = "whois.aeda.net.ae";
> -+	"\\.xn--mgberp4a5d4ar$" = "whois.nic.net.sa";
> -+	"\\.xn--o3cw4h$" = "whois.thnic.co.th";
> -+	"\\.xn--ogbpf8fl$" = "whois.tld.sy";
> -+	"\\.xn--p1ai$" = "whois.tcinet.ru";
> -+	"\\.xn--xkc2al3hye2a$" = "whois.nic.lk";
> -+	"\\.xn--yfro4i67o$" = "whois.sgnic.sg";
> -+	"\\.xn--ygbi2ammx$" = "whois.pnina.ps";
> - 	"\\.yt$" = "whois.nic.yt";
> --	"\\.yu$" = "www.nic.yu";
> - 	"\\.ac\\.za$" = "whois.ac.za";
> - 	"\\.org\\.za$" = "rwhois.org.za 4321";
> - 	"\\.co\\.za$" = "whois.co.za";
> -@@ -389,6 +406,7 @@
> - 
> - 	"\\.9\\.4\\.e164\\.arpa$" = "whois.enum.denic.de";
> - 	"\\.1\\.6\\.e164\\.arpa$" = "whois-check.enum.com.au";
> -+	"\\.1\\.7\\.9\\.e164\\.arpa$" = "whois.aeda.net.ae";
> - }
> - 
> - #
> -@@ -1095,20 +1113,6 @@
> - 		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";
> --	}
> --
> - 	"whois\\.dotster\\.com" {
> - 		answer-charset = "UTF-8";
> - 	}
> -@@ -1127,13 +1131,6 @@
> - 		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";
> -@@ -1179,6 +1176,26 @@
> - 	"whois\\.1api\\.net" {
> - 		answer-charset = "UTF-8";
> - 	}
> -+
> -+	"whois\\.kr" {
> -+		answer-charset = "EUC-KR";
> -+	}
> -+
> -+	"whois\\.nic\\.or\\.kr" {
> -+		answer-charset = "EUC-KR";
> -+	}
> -+
> -+	"whois\\.nic\\.dz" {
> -+		answer-charset = "UTF-8";
> -+	}
> -+
> -+	"whois\\.nic\\.lk" {
> -+		answer-charset = "ISO-8859-11";
> -+	}
> -+
> -+	"whois\\.iana\\.org" {
> -+		answer-charset = "UTF-8";
> -+	}
> - }
> - 
> - #
> diff --git a/src/patches/jwhois-4.0-connect.patch b/src/patches/jwhois-4.0-connect.patch
> deleted file mode 100644
> index 2a639d779..000000000
> --- a/src/patches/jwhois-4.0-connect.patch
> +++ /dev/null
> @@ -1,58 +0,0 @@
> -This fixes somewhat reversed logic of trying to connect to WHOIS server.
> -Tue Nov 20 2007, Lubomir Kundrak <lkundrak(a)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 --git a/src/patches/jwhois-4.0-fclose.patch b/src/patches/jwhois-4.0-fclose.patch
> deleted file mode 100644
> index e9c896f68..000000000
> --- a/src/patches/jwhois-4.0-fclose.patch
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -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 --git a/src/patches/jwhois-4.0-idna.patch b/src/patches/jwhois-4.0-idna.patch
> deleted file mode 100644
> index ff13a4f71..000000000
> --- a/src/patches/jwhois-4.0-idna.patch
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -diff -up jwhois-4.0/src/jwhois.c.orig jwhois-4.0/src/jwhois.c
> ---- jwhois-4.0/src/jwhois.c.orig	2007-06-26 08:59:35.000000000 +0200
> -+++ jwhois-4.0/src/jwhois.c	2011-05-24 12:29:37.398892451 +0200
> -@@ -98,7 +98,7 @@ main(int argc, char **argv)
> - 
> -   /* Parse remaining arguments and place them into the wq
> -      structure. */
> --  while (optind < argc)
> -+  while (optind < argc-1)
> -     {
> -       count += strlen(argv[optind])+1;
> -       if (!qstring)
> -@@ -116,19 +116,25 @@ main(int argc, char **argv)
> -       strcat(qstring, " ");
> -       optind++;
> -     }
> --  qstring[strlen(qstring)-1] = '\0';
> - #ifdef LIBIDN
> --  rc = idna_to_ascii_lz(qstring, &idn, 0);
> -+  rc = idna_to_ascii_lz(argv[optind], &idn, 0);
> -   if (rc != IDNA_SUCCESS)
> -     {
> --      printf("[IDN encoding of '%s' failed with error code %d]\n", qstring, rc);
> -+      printf("[IDN encoding of '%s' failed with error code %d]\n", argv[optind], rc);
> -       exit(1);
> -     }
> --  wq.query = strdup(idn);
> -+  qstring = realloc(qstring, count+strlen(idn)+1);
> -+  memcpy(qstring+count,
> -+         idn,
> -+         strlen(idn)+1);
> -   free(idn);
> - #else
> --  wq.query = qstring;
> -+  qstring = realloc(qstring, count+strlen(argv[optind])+1);
> -+  memcpy(qstring+count,
> -+         argv[optind],
> -+         strlen(argv[optind])+1);
> - #endif
> -+  wq.query = qstring;
> - 
> -   if (ghost)
> -     {
> diff --git a/src/patches/jwhois-4.0-ipv6match.patch b/src/patches/jwhois-4.0-ipv6match.patch
> deleted file mode 100644
> index 0e5ad0e9a..000000000
> --- a/src/patches/jwhois-4.0-ipv6match.patch
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -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(a)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;
> - }
> diff --git a/src/patches/jwhois-4.0-multi-homed.patch b/src/patches/jwhois-4.0-multi-homed.patch
> deleted file mode 100644
> index 05d6f46af..000000000
> --- a/src/patches/jwhois-4.0-multi-homed.patch
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -diff -up jwhois-4.0/src/utils.c.orig jwhois-4.0/src/utils.c
> ---- jwhois-4.0/src/utils.c.orig	2010-09-29 16:19:24.453608330 +0200
> -+++ jwhois-4.0/src/utils.c	2010-09-29 16:20:10.686608189 +0200
> -@@ -292,7 +292,10 @@ make_connect(const char *host, int port)
> -       if (error < 0 || retval)
> - 	{
> - 	  close (sockfd);
> --	  return -1;
> -+	  if (retval == ENETUNREACH)
> -+	    continue;
> -+	  else
> -+	    return -1;
> - 	}
> - 
> -       break;
> diff --git a/src/patches/jwhois-4.0-select.patch b/src/patches/jwhois-4.0-select.patch
> deleted file mode 100644
> index b60ec9692..000000000
> --- a/src/patches/jwhois-4.0-select.patch
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -diff -ur jwhois-4.0.old/src/whois.c jwhois-4.0/src/whois.c
> ---- jwhois-4.0.old/src/whois.c	2007-06-26 03:00:29.000000000 -0400
> -+++ jwhois-4.0/src/whois.c	2009-04-29 11:42:56.000000000 -0400
> -@@ -115,6 +115,7 @@
> -   unsigned int count, start_count;
> -   int ret;
> -   char data[MAXBUFSIZE];
> -+  fd_set rfds;
> - 
> -   count = 0;
> - 
> -@@ -124,7 +125,15 @@
> - 
> -   do
> -     {
> -+      FD_ZERO(&rfds);
> -+      FD_SET(fd, &rfds);
> -+      ret = select(fd + 1, &rfds, NULL, NULL, NULL);
> -+
> -+      if (ret <= 0)
> -+        return -1;
> -+
> -       ret = read(fd, data, MAXBUFSIZE-1);
> -+
> -       if (ret >= 0)
> - 	{
> - 	  count += ret;
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] make.sh: Remove jwhois and replace with whois
  2021-08-06 11:16 [PATCH 1/3] make.sh: Remove jwhois and replace with whois Adolf Belka
  2021-08-06 11:16 ` [PATCH 2/3] whois: Installation of aan actively maintained whois client Adolf Belka
  2021-08-06 11:16 ` [PATCH 3/3] jwhois: Remove jwhois and all associated patches Adolf Belka
@ 2021-08-06 15:09 ` Peter Müller
  2 siblings, 0 replies; 6+ messages in thread
From: Peter Müller @ 2021-08-06 15:09 UTC (permalink / raw)
  To: development

[-- Attachment #1: Type: text/plain, Size: 861 bytes --]

Reviewed-by: Peter Müller <peter.mueller(a)ipfire.org>

> - jwhois is no longer being maintained. The last release was from 2005 and the last commit
>    was in 2015. https://github.com/jonasob/jwhois
> - Debian switched to another whois client which is being actively maintained.
>    https://github.com/rfc1036/whois
> - This patch series is the removal of jwhois and the installation of whois
> 
> Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
> ---
>  make.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/make.sh b/make.sh
> index 13a48f461..6dc261fb4 100755
> --- a/make.sh
> +++ b/make.sh
> @@ -1129,7 +1129,7 @@ buildbase() {
>  	lfsmake2 gzip
>  	lfsmake2 hostname
>  	lfsmake2 iproute2
> -	lfsmake2 jwhois
> +	lfsmake2 whois
>  	lfsmake2 kbd
>  	lfsmake2 less
>  	lfsmake2 pkg-config
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-08-06 15:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-06 11:16 [PATCH 1/3] make.sh: Remove jwhois and replace with whois Adolf Belka
2021-08-06 11:16 ` [PATCH 2/3] whois: Installation of aan actively maintained whois client Adolf Belka
2021-08-06 15:09   ` Peter Müller
2021-08-06 11:16 ` [PATCH 3/3] jwhois: Remove jwhois and all associated patches Adolf Belka
2021-08-06 15:09   ` Peter Müller
2021-08-06 15:09 ` [PATCH 1/3] make.sh: Remove jwhois and replace with whois Peter Müller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox