about summary refs log tree commit diff
path: root/resolv
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-08-02 20:17:36 +0000
committerUlrich Drepper <drepper@redhat.com>2002-08-02 20:17:36 +0000
commit62a08e44422d2422c455b281843fe7ae1ab19984 (patch)
tree337090744b093d831096b107138a21ea5f39e746 /resolv
parentc64f25a39041476acf1e5d5b765e83880671de68 (diff)
downloadglibc-62a08e44422d2422c455b281843fe7ae1ab19984.tar.gz
glibc-62a08e44422d2422c455b281843fe7ae1ab19984.tar.xz
glibc-62a08e44422d2422c455b281843fe7ae1ab19984.zip
Update.
2002-08-02  Ulrich Drepper  <drepper@redhat.com>

	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Adapt
	previous patch.

2002-06-29  Todd Fries  <todd@openbsd.org>

	* resolv/gethnamaddr.c (gethostbyaddr): Try ip6.int if ip6.arpa fails.
Diffstat (limited to 'resolv')
-rw-r--r--resolv/gethnamaddr.c4
-rw-r--r--resolv/nss_dns/dns-host.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/resolv/gethnamaddr.c b/resolv/gethnamaddr.c
index 117e4a321e..14758df231 100644
--- a/resolv/gethnamaddr.c
+++ b/resolv/gethnamaddr.c
@@ -696,6 +696,10 @@ gethostbyaddr(addr, len, af)
 		abort();
 	}
 	n = res_nquery(&_res, qbuf, C_IN, T_PTR, (u_char *)buf.buf, sizeof buf.buf);
+	if (n < 0 && af == AF_INET6) {
+		strcpy(qp, "ip6.int");
+		n = res_nquery(&_res, qbuf, C_IN, T_PTR, (u_char *)buf.buf, sizeof buf.buf);
+	}
 	if (n < 0) {
 		dprintf("res_nquery failed (%d)\n", n);
 		if (errno == ECONNREFUSED)
diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c
index 7b82486803..f5e3058cbd 100644
--- a/resolv/nss_dns/dns-host.c
+++ b/resolv/nss_dns/dns-host.c
@@ -291,6 +291,12 @@ _nss_dns_gethostbyaddr_r (const void *addr, socklen_t len, int af,
 
   n = res_nquery (&_res, qbuf, C_IN, T_PTR, (u_char *)host_buffer.buf,
 		  sizeof host_buffer);
+  if (n < 0 && af == AF_INET6)
+    {
+      strcpy (qp, "ip6.int");
+      n = res_nquery (&_res, qbuf, C_IN, T_PTR, (u_char *)host_buffer.buf,
+		      sizeof host_buffer);
+    }
   if (n < 0)
     {
       *h_errnop = h_errno;