Mark Martinec: > Turns out that the problem is a structure declared too short > by two bytes to receive a sockaddr_in6 from accept(), > and the two bytes of a received IP address are then clobbered. > > In smtp-sink.c/connect_event() the sa is declared > as struct sockaddr instead of struct sockaddr_storage > (RFC 3493).
Thanks. What took you so long? :-) The accept() calls in test programs must have escaped attention when Postfix 2.2 was ported to IPv6 (a similar call exists in the qmqp-sink test program). All other accept() calls are handled by the Postfix library, which has been IPv6 compatible for the past 10 years. Wietse