From: Mark Andrews Date: Tue, 24 Apr 2007 07:20:45 +0000 (+0000) Subject: 2169. [bug] nslookup: when reporting NXDOMAIN report the given X-Git-Tag: v9.5.0a4~12 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=aaa42824d2d1f5cc4add01f0191e3784ee0f7396;p=thirdparty%2Fbind9.git 2169. [bug] nslookup: when reporting NXDOMAIN report the given name and not the last name searched for. [RT #16763] --- diff --git a/CHANGES b/CHANGES index 4ca0655d7f6..424c50c3328 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2169. [bug] nslookup: when reporting NXDOMAIN report the given + name and not the last name searched for. [RT #16763] + 2168. [bug] nsupdate: in non-interactive mode treat syntax errors as fatal errors. [RT #16785] diff --git a/bin/dig/host.c b/bin/dig/host.c index c9f88c597d7..b7ccf40add3 100644 --- a/bin/dig/host.c +++ b/bin/dig/host.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: host.c,v 1.112 2007/02/26 23:46:54 tbox Exp $ */ +/* $Id: host.c,v 1.113 2007/04/24 07:20:45 marka Exp $ */ /*! \file */ @@ -426,8 +426,10 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) { if (msg->rcode != 0) { char namestr[DNS_NAME_FORMATSIZE]; dns_name_format(query->lookup->name, namestr, sizeof(namestr)); - printf("Host %s not found: %d(%s)\n", namestr, - msg->rcode, rcodetext[msg->rcode]); + printf("Host %s not found: %d(%s)\n", + (msg->rcode != dns_rcode_nxdomain) ? namestr : + query->lookup->textname, msg->rcode, + rcodetext[msg->rcode]); return (ISC_R_SUCCESS); } diff --git a/bin/dig/nslookup.c b/bin/dig/nslookup.c index 0e303b62c7e..521985b731a 100644 --- a/bin/dig/nslookup.c +++ b/bin/dig/nslookup.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: nslookup.c,v 1.114 2006/12/07 05:52:16 marka Exp $ */ +/* $Id: nslookup.c,v 1.115 2007/04/24 07:20:45 marka Exp $ */ #include @@ -410,8 +410,9 @@ printmessage(dig_query_t *query, dns_message_t *msg, isc_boolean_t headers) { char nametext[DNS_NAME_FORMATSIZE]; dns_name_format(query->lookup->name, nametext, sizeof(nametext)); - printf("** server can't find %s: %s\n", nametext, - rcodetext[msg->rcode]); + printf("** server can't find %s: %s\n", + (msg->rcode != dns_rcode_nxdomain) ? nametext : + query->lookup->textname, rcodetext[msg->rcode]); debug("returning with rcode == 0"); return (ISC_R_SUCCESS); }