You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "Roy T. Fielding" <fi...@kiwi.ics.uci.edu> on 1999/03/08 14:19:33 UTC

Re: [PATCH] always ignore SIGPIPE

>I tried out this patch with a mod_perl script that produces output
>slowly, so that I can abort the connection before it completes.
>r->connection->aborted did not get set and the script continued to
>run, oblivious of the fact that its output was going nowhere.

I just found that bug a couple minutes ago -- to be committed soon.
ap_send_fb_length was not checking the call to ap_bflush.

>Most callers of ap_bwrite() in http_protocol.c check that the write
>was successful and set r->connection->aborted if not.  mod_perl's
>writes go via ap_rwrite(), and that routine does not check the
>return value from ap_bwrite().  It does pass it up to the caller, but
>mod_perl does not does not make the information available as a
>success/failure return value to callers of its Apache::print method.
>
>I would suggest that r->connection->aborted should be set if the
>ap_bwrite() call in ap_rwrite() fails.

Yep, I seem to recall Doug mentioning that at some point.

....Roy