On Fri, 31 Aug 2007, Michael Holzt wrote:

You can't have multiple processes bound to the same
local_IP/local_port,

Of course you can.

bind -> listen -> fork

Yes, brain fart at my end. s/$/ except by inheritance post-fork/.

If we stop listening post-fork (as qpsmtpd-forkserver does) then this state only occurs briefly. And since the fork occurs after accept(), then we already have a TCP four-tuple during that time interval.

However, there is still an issue with Peter's proposed "zero out remote address components" proposal - prior to accept(), qpstmpd-forkserver may have multiple listening sockets. Some of those sockets (e.g. 127.0.0.1:25) won't be unique across multiple hosts.

Reply via email to