Re: (usagi-core 01159) Re: broken IPv6 code (attached exampled app)
Thanks, itojun.
In article <4358.978671224@coconut.itojun.org> (at Fri, 05 Jan 2001 14:07:04 +0900), itojun@iijlab.net says:
> first, let us think about bind(2) ordering options.
> normal linux falls into 1 + a. netbsd/openbsd falls into 1 + d.
:
> option 1: getaddrinfo returns ::, then 0.0.0.0
:
> option a: kernel forbids bind(0.0.0.0) after bind(::), but
> bind(::) after bind(0.0.0.0) is okay
:
> option c: only one of them is allowed
> option d: kernel works okay with any order
No. Original Linux kernels (and USAGI linux kernels without
CONFIG_IPV6_DOUBLE_BIND) take 1+c; not 1+a.
> for kernel designers:
>
> i believe the safest option to take is 1 + d + alpha.
> when there's AF_INET6 listening socket only, either x or y is fine.
USAGI linux kernels with CONFIG_IPV6_DOUBLE_BIND take 1 + d + alpha.
--
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@linux-ipv6.org>
PGP5i FP: F731 6599 5EB2 BBA7 1515 1323 1806 A96F 5700 6B25
Reply to: