Remove MULTI_PTRS_ARE_ALIASES in dns-hosts.c

The code in gethnamaddr.c for gethostbyaddr used and set this macro to
allow multiple PTR records to be added as aliases.  This was useful
for gethostbyaddr since it returns a hostent structure, which can
return aliases.

The gethnamaddr.c source however is unused in glibc since pretty much
forever.  Instead, the DNS lookup bits for gethostbyaddr (as well as
getnameinfo) are implemented in dns-hosts.c and in that implementation
all but one (the first one) of the multiple PTR records are ignored.
Since gethnamaddr.c is essentially dead code, ignore that
implementation and replace the MULTI_PTRS_ARE_ALIASES bit with a
comment mentioning that bind adds PTR records as aliases while we
don't.
This commit is contained in:
Siddhesh Poyarekar 2014-07-01 14:14:09 +05:30
parent b0cb309635
commit 76985d3e03
2 changed files with 7 additions and 22 deletions

View File

@ -1,3 +1,8 @@
2014-07-01 Siddhesh Poyarekar <siddhesh@redhat.com>
* resolv/nss_dns/dns-host.c (getanswer_r)
[MULTI_PTRS_ARE_ALIASES]: Remove code.
2014-07-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/microblaze/kernel-features.h

View File

@ -869,27 +869,8 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype,
++had_error;
break;
}
#if MULTI_PTRS_ARE_ALIASES
cp += n;
if (haveanswer == 0)
result->h_name = bp;
else if (ap < &host_data->aliases[MAXALIASES-1])
*ap++ = bp;
else
n = -1;
if (n != -1)
{
n = strlen (bp) + 1; /* for the \0 */
if (__builtin_expect (n, 0) >= MAXHOSTNAMELEN)
{
++had_error;
break;
}
bp += n;
linebuflen -= n;
}
break;
#else
/* bind would put multiple PTR records as aliases, but we don't do
that. */
result->h_name = bp;
if (have_to_map)
{
@ -906,7 +887,6 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype,
}
*h_errnop = NETDB_SUCCESS;
return NSS_STATUS_SUCCESS;
#endif
case T_A:
case T_AAAA:
if (__builtin_expect (strcasecmp (result->h_name, bp), 0) != 0)