https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6841
Kevin A. McGrail <kmcgr...@pccc.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kmcgr...@pccc.com --- Comment #1 from Kevin A. McGrail <kmcgr...@pccc.com> --- As noted on the mailing list, this issue might be OS specific. Per DFS: I think this is a FreeBSDism. On Linux, something listening on :: will answer both IPv4 and IPv6 connection attempts. Maybe FreeBSD has a way to emulate that? And continued with Greg Toxel: It's not quite right to call that a FreeBSDism; it's much messier than that. IPv6 supports a concept called mapped addresses, where v4 addresses can be represented in v6 addresses. A system can be configured to have sockets that listen on :: also listen on INADDR_ANY and present the v4 addresses as mapped v6 addresses. This feature is somewhat controversial, because of security concerns (if the program didn't open a v4 socket, why is it possible to connect to it over the net via v4?): http://en.wikipedia.org/wiki/IPv4_mapped_address#IPv4-mapped_IPv6_addresses On NetBSD, the default is that v6 sockets are only v6 (via sysctl): "net.inet6.ip6.v6only = 1", and I believe OpenBSD and FreeBSD are the same way. See http://tools.ietf.org/html/rfc3493 http://tools.ietf.org/html/rfc3542#section-13 So I suspect that on Linux, v6only defaults to off (while on *BSD it defaults to on). Apparently on some systems it's always off because the stacks are separate IMHO, portable software should have two sockets, one on INADDR_ANY and one on IN6ADDR_ANY. But, setting the socket option may be a workaround. It's certainly wrong to assume that an OS has a particular default. -- You are receiving this mail because: You are the assignee for the bug.