On Wed, Jun 18, 2008 at 7:52 PM, Juliusz Chroboczek < [EMAIL PROTECTED]> wrote:
> > The Windows FIN the connection after sending the last request (in Blue), > > trigger polipo to do httpClientAbort(). > > To me, it might be legal for the media player to FIN as a way to say: "I > > have nothing more to send, but still happy to receive". > > No, it's not. I have this information from Jim Gettys (the second > author of RFC 2616). > > HTTP is defined over an arbitrary stream transport, and RFC 2616 does > not define how to deal with TCP-specific features, such as half-open > connections. According to Jim, this means that if a client > half-closes its connection, the server is allowed to do anything it > wishes including shutting down the connection. > > Now you might argue that Polipo should still be permissive in what it > allows, and handle this case correctly. But there's a good reason to > shut the connection down when we receive a FIN: it means that when the > user presses the STOP button of his browser, we shut down the server > connection straight away, without waiting to send more data to the > client (which we might not have yet) and receiving an RST. This is > a big win if you're waiting for a slow PHP script and decide to hit > stop, or when browsing over a slow modem connection. > > In summary, Polipo is correct, your client is broken, and there are > enough good reasons to behave the way Polipo does that I won't change > its behaviour. Sorry for that. > > Juliusz I agree with you 100% that whatever client doing the half close socket is silly. However, when the offending client is Microsoft Media Player. Ignore the issue might not be a good idea either. Besides, the RFC 2616 leave the handling of half close socket to http server. The server can close immediate upon receiving the FIN, or the server can choose to handle a half close connection. But it is not clear if proxy can make such a decide on behalf of the server. These stream video server seems to think that half-close connection is OK to them. MIng ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Polipo-users mailing list Polipo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/polipo-users