On 17-02-2007 17:25, Evgeniy Polyakov wrote: > On Fri, Feb 16, 2007 at 09:34:27PM +0300, Evgeniy Polyakov ([EMAIL > PROTECTED]) wrote: >> Otherwise we can extend select output mask to include hungup too >> (getting into account that hungup is actually output event). > > This is another possible way to fix select after write after connection > reset.
I hope you know what you are doing and that this will change functionality for some users. In my opinion it looks like a problem with interpretation and not a bug. From tcp.c: " * Some poll() documentation says that POLLHUP is incompatible * with the POLLOUT/POLLWR flags, so somebody should check this * all. But careful, it tends to be safer to return too many * bits than too few, and you can easily break real applications * if you don't tell them that something has hung up! ... * Actually, it is interesting to look how Solaris and DUX * solve this dilemma. I would prefer, if PULLHUP were maskable, * then we could set it on SND_SHUTDOWN. BTW examples given * in Stevens' books assume exactly this behaviour, it explains * why PULLHUP is incompatible with POLLOUT. --ANK * * NOTE. Check for TCP_CLOSE is added. The goal is to prevent * blocking on fresh not-connected or disconnected socket. --ANK */" So it seems ANK hesitated and somebody choose not to do this - maybe for some reason... Regards, Jarek P. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html