Date: Fri, 20 Jul 2007 16:06:29 -0700 From: Julian Elischer <julian@elischer.org> To: karels@karels.net Cc: Julian Elischer <julian@ironport.com>, FreeBSD Net <freebsd-net@freebsd.org> Subject: Re: Wierd networking. Message-ID: <46A13FF5.9070806@elischer.org> In-Reply-To: <200707202239.l6KMdSq4035780@redrock.karels.net> References: <200707202239.l6KMdSq4035780@redrock.karels.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Mike Karels wrote: >> I think that the possible courses of action are: > >> 1/ Ignore further incoming data, but ACK it. >> (this is basically what the userland code does in this case) > > This could lead to indefinite data transfer, while misleading the sender > into thinking the data are being delivered. > >> 2/ Stop ACKing the data, and let the other end time out. > > This seems like a waste of resources on both ends of the connection; > both are doomed, but they both have to time out to go away. > >> 3/ Send a RST > > This is my choice, literally: I added the code to send a RST in this > case sometime in the 1980s, after observing connections that hung > with no reader, but with the writer in persist mode indefinitely. > (That's choice 4: accept the data, let the receive buffer fill, then > advertise a zero window forever.) > > Mike 5/ throw away SOME data and then resort to RST. the problem we ahve is that IE7 seems to send some data after the FIN is sent by the server, and complains when it gets the RST.\ The exact problem is when the FIN is because of a redirection (due to a 407, (proxy auth required), and IE aborts the whole transfer.. so: IE: "POST (or GET) bla bla" proxy: "407 (proxy auth required)"... FIN IE: "CR/LF" <don't ask me why..> proxy: "RST" IE: [displays erro screen and fails to continue] We have changed the proxy to do a shutdown and keep receiving (and discarding) the data until it gets an EOF but I worry about DOS possibilities.. I think I may add code to make this only accept some limited amount of data before doing the close().
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46A13FF5.9070806>