]> git.kaiwu.me - nginx.git/commit
Core: only resolve address families configured on the local system.
authorRuslan Ermilov <ru@nginx.com>
Mon, 5 Aug 2013 06:55:59 +0000 (10:55 +0400)
committerRuslan Ermilov <ru@nginx.com>
Mon, 5 Aug 2013 06:55:59 +0000 (10:55 +0400)
commit7c6971cff3de85e50c9fcda45eaa50d788dc86e5
treef8d6a64cfb7ef1becad73a1ed4d991b6037b8fd5
parent3086ab2996403fbb4cf6525986e00e4a521ada1e
Core: only resolve address families configured on the local system.

This is done by passing AI_ADDRCONFIG to getaddrinfo().

On Linux, setting net.ipv6.conf.all.disable_ipv6 to 1 will now be
respected.

On FreeBSD, AI_ADDRCONFIG filtering is currently implemented by
attempting to create a datagram socket for the corresponding family,
which succeeds even if the system doesn't in fact have any addresses
of that family configured.  That is, if the system with IPv6 support
in the kernel doesn't have IPv6 addresses configured, AI_ADDRCONFIG
will filter out IPv6 only inside a jail without IPv6 addresses or
with IPv6 disabled.
auto/unix
src/core/ngx_inet.c