Received: (qmail 89715 invoked by uid 501); 1 Oct 2000 23:02:15 -0000 Message-Id: <20001001230215.89714.qmail@locus.apache.org> Date: 1 Oct 2000 23:02:15 -0000 From: robert chou Reply-To: robert@rcreations.com To: submit@bugz.apache.org Subject: ajpv12_function() should use send() for windows rather than write() X-Send-Pr-Version: 3.110 >Number: 6612 >Category: mod_jserv >Synopsis: ajpv12_function() should use send() for windows rather than write() >Confidential: no >Severity: non-critical >Priority: medium >Responsible: jserv >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Sun Oct 01 16:10:00 PDT 2000 >Closed-Date: >Last-Modified: >Originator: robert@rcreations.com >Release: 1.3.1.2/JServ1.1.2 >Organization: apache >Environment: Windows 2000 (or any flavor of windows) >Description: For Windows, the JVM is not shutdown gracefully because the signal is sent by mod_jserv using "write()" (function ajpv12_function in file jserv_ajpv12.c), instead of "send()" for windows. >How-To-Repeat: Kill ap_child, wait for it to come back along with the JVM. Vi the mod_jserv.log file and you'll see: [01/10/2000 19:39:56:750] (INFO) ajp12: sending shutdown signal [01/10/2000 19:39:56:750] (EMERGENCY) ajp12: cannot send function The jserv.log file shows that the request as "Stream closed prematurely" because no bytes were sent. >Fix: Change the following line from (jserv_ajpv12.c:773): ret = write( sock, signal, 2); To: #ifdef WIN32 ret = send( sock, signal, 2, 0 ); #else ret = write( sock, signal, 2); #endif >Release-Note: >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, you need] [to include in the Cc line and make sure the] [subject line starts with the report component and number, with ] [or without any 'Re:' prefixes (such as "general/1098:" or ] ["Re: general/1098:"). If the subject doesn't match this ] [pattern, your message will be misfiled and ignored. The ] ["apbugs" address is not added to the Cc line of messages from ] [the database 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! ]