>Number: 3401 >Category: general >Synopsis: no shutdown() of client socket in ap_bclose() >Confidential: no >Severity: non-critical >Priority: medium >Responsible: apache >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Fri Nov 13 19:40:01 PST 1998 >Last-Modified: >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.3.3 >Environment: NeXT, netbsd, with NO_LINGCLOSE >Description: Wouldn't it be better to shutdown() the socket before close()ing it? As it stands the client may not get a FIN, and hence not realize no more data was coming. On many OSes a close() of a socket doesn't automatically terminate the connection. If no Content-Length header was generated in the reply (if it ever is), then the browser may sit for a while. >How-To-Repeat:
>Fix: Check for B_SOCKET flag and call shutdown(fd, 1 or 2) before calling ap_pclosef () in main/buff.c:1421. I'm not sure whether that should be done with alarms blocked or not. May instead want to write ap_pclosesocket() for the UNIX side which is basically ap_pclosef() with a shutdown(). >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, ] [you need to include <[EMAIL PROTECTED]> in the Cc line ] [and leave the subject line UNCHANGED. This is not done] [automatically because of the potential for mail loops. ] [If you do not include this Cc, your reply may be ig- ] [nored unless you are responding to an explicit request ] [from a developer. ] [Reply only with text; DO NOT SEND ATTACHMENTS! ]
