1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-12 07:32:48 +02:00
openwrt-xburst/toolchain/uClibc/patches/200-ipv6_hosts_resolve.patch
nbd b871cf38ee Fix ipv4/ipv6 resolving.
When not using AF_INET, gethostbyname2_r tries to resolve an ipv6 address
from /etc/hosts using __get_hosts_byname_r, but with AF_INET instead of the
supplied address family. This returns ipv4 addresses marked as ipv6 ones.



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6217 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-01-27 15:13:06 +00:00

13 lines
596 B
Diff

diff -pur uClibc.old/libc/inet/resolv.c uClibc.dev/libc/inet/resolv.c
--- uClibc.old/libc/inet/resolv.c 2005-08-18 00:49:41.000000000 +0200
+++ uClibc.dev/libc/inet/resolv.c 2007-01-27 15:33:39.689171960 +0100
@@ -2083,7 +2083,7 @@ int gethostbyname2_r(const char *name, i
int old_errno = errno; /* Save the old errno and reset errno */
__set_errno(0); /* to check for missing /etc/hosts. */
- if ((i=__get_hosts_byname_r(name, AF_INET, result_buf,
+ if ((i=__get_hosts_byname_r(name, family, result_buf,
buf, buflen, result, h_errnop))==0)
return i;
switch (*h_errnop) {