Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Jan 2001 00:28:11 GMT
From:      Mike Barcroft <mike@q9media.com>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   bin/24707: [patch] Whois IP Address Handling
Message-ID:  <200101290028.f0T0SBR60587@ikabod.private>

next in thread | raw e-mail | index | archive | help

>Number:         24707
>Category:       bin
>Synopsis:       [patch] Whois IP Address Handling
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 28 16:30:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Mike Barcroft
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
Q9 Media
>Environment:

$FreeBSD: src/usr.bin/whois/whois.c,v 1.16 2000/07/07 07:52:21 kris Exp $
$FreeBSD: src/usr.bin/whois/whois.1,v 1.16 2000/11/20 19:21:19 ru Exp $

>Description:

	If a host is not specified and the user enters a query of 
	an IP address, query whois.arin.net instead of returning:
	whois: 0.whois-servers.net: No Address associated with hostname

>How-To-Repeat:

	Apply patches below.

>Fix:

--- whois.c.orig	Fri Jul  7 07:52:21 2000
+++ whois.c	Sun Jan 28 19:08:14 2001
@@ -49,6 +49,7 @@
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
+#include <ctype.h>
 #include <err.h>
 #include <netdb.h>
 #include <stdio.h>
@@ -166,13 +167,19 @@
 				}
 			}
 			if (j != 0) {
-				qnichost = (char *) calloc(i - j + 1 +
-				    strlen(QNICHOST_TAIL), sizeof(char));
-				if (!qnichost) {
-					err(1, "calloc");
+				if (isdigit(*(*argv + j + 1))) {
+					(void) asprintf(&qnichost, "%s",
+					    ANICHOST);
+				} else {
+					qnichost = (char *) calloc(i - j
+					    + 1 + strlen(QNICHOST_TAIL),
+					    sizeof(char));
+					if (!qnichost) {
+						err(1, "calloc");
+					}
+					strcpy(qnichost, *argv + j + 1);
+					strcat(qnichost, QNICHOST_TAIL);
 				}
-				strcpy(qnichost, *argv + j + 1);
-				strcat(qnichost, QNICHOST_TAIL);
 
 				memset(&hints, 0, sizeof(hints));
 				hints.ai_flags = 0;

--- whois.1.orig	Mon Jan 29 00:06:42 2001
+++ whois.1	Mon Jan 29 00:12:55 2001
@@ -81,7 +81,10 @@
 .Pq Tn TLD
 of the supplied (single) argument, and appending ".whois-servers.net".
 This effectively allows a suitable whois server to be selected
-automatically for a large number of TLDs.
+automatically for a large number of TLDs.  In the event that an IP
+address is specified, the whois server will default to the American
+Registry for Internet Numbers
+.Pq Tn ARIN .
 If no required whois-servers.net subdomain found, fallback
 to whois.crsnic.net provided.
 .It Fl i

>Release-Note:
>Audit-Trail:
>Unformatted:
 >System: FreeBSD 5.0-CURRENT


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101290028.f0T0SBR60587>