From 9777e2aa772a970eb9f9c623ced9bf8102562c66 Mon Sep 17 00:00:00 2001 From: Marco d'Itri Date: Tue, 22 Aug 2017 16:52:56 +0200 Subject: Do not request domain results for name server queries If there is more than one dot in the query string then it can only be a name server, so do not restrict the results to domains only. --- whois.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'whois.c') diff --git a/whois.c b/whois.c index 53829b6..365d618 100644 --- a/whois.c +++ b/whois.c @@ -816,11 +816,17 @@ char *query_crsnic(const int sock, const char *query) int hide = hide_discl; char *referral_server = NULL; int state = 0; + int dotscount = 0; temp = malloc(strlen("domain ") + strlen(query) + 2 + 1); *temp = '\0'; - if (!strpbrk(query, "=~ ")) + /* if this has more than one dot then it is a name server */ + for (p = (char *) query; *p != '\0'; p++) + if (*p == '.') + dotscount++; + + if (dotscount == 1 && !strpbrk(query, "=~ ")) strcpy(temp, "domain "); strcat(temp, query); strcat(temp, "\r\n"); -- cgit v1.2.3