diff options
author | ume <ume@FreeBSD.org> | 2001-08-11 15:01:12 +0000 |
---|---|---|
committer | ume <ume@FreeBSD.org> | 2001-08-11 15:01:12 +0000 |
commit | 2004f62eea1d7940b4d69e6d0a01ed9dea6c5255 (patch) | |
tree | 0ddb835dd4797e28cfb78da14d928a13f2423dc4 /lib/libc/net | |
parent | 77f1de760e5eb4c9e52f61d48883479bc55d3068 (diff) | |
download | FreeBSD-src-2004f62eea1d7940b4d69e6d0a01ed9dea6c5255.zip FreeBSD-src-2004f62eea1d7940b4d69e6d0a01ed9dea6c5255.tar.gz |
Fill _res.sort_list with harmless entry. sortlist for IPv6/IPv4
is stored in _res_ext.sort_list, and sortlist for IPv4 is stored in
_res.sort_list for backward compatibility. However, both sort_list's
are maintaind by just one index _res.nsort. So, when IPv6 address is
specified to sortlist, empty entry was created in _res.sort_list. It
broke sortlist facility of gethostbyname().
Discussed on users@jp.ipv6.org.
Diffstat (limited to 'lib/libc/net')
-rw-r--r-- | lib/libc/net/res_init.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/libc/net/res_init.c b/lib/libc/net/res_init.c index 035dd05..2d25677 100644 --- a/lib/libc/net/res_init.c +++ b/lib/libc/net/res_init.c @@ -429,6 +429,9 @@ res_init() u++; } } + _res.sort_list[nsort].addr.s_addr = + (u_int32_t)0xffffffff; + _res.sort_list[nsort].mask = (u_int32_t)0xffffffff; nsort++; } *cp = n; |