]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
core: add r->flushed flag and set it when the response is sent.
authorYann Ylavic <ylavic@apache.org>
Wed, 1 Apr 2020 22:56:44 +0000 (22:56 +0000)
committerYann Ylavic <ylavic@apache.org>
Wed, 1 Apr 2020 22:56:44 +0000 (22:56 +0000)
commit343cdd9bb4488c4f0c632583af8bb4bdae0a32dc
tree94f3e8526ca2a497d660930a9b945ab2b5a7d52f
parentfd5afc092ccd71a4e48a0f6c891ed6e1b14e187f
core: add r->flushed flag and set it when the response is sent.

By setting EOR->r->flushed in the core output filter, allow one to determine at
log_transaction hook time whether the request has been fully flushed through
the network, or not (network issue, filter error, n-th pipelined resposne...).

Introduce the ap_bucket_eor_request() helper to get the request bound to an EOR
bucket, and uses it in ap_core_output_filter() to mark the EOR's request just
before destroying it, after all the previous buckets have been sent.

While at it, rename the request_rec* member of struct ap_bucket_eor from "data"
to "r", which makes the code clearer (not to be confused with b->data).

Finally, add CustomLog format %F, showing "F" or "-" depending on r->flushed,
for admins to figure out for each request.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1876017 13f79535-47bb-0310-9956-ffa450edef68
include/ap_mmn.h
include/http_request.h
include/httpd.h
modules/loggers/mod_log_config.c
server/core_filters.c
server/eor_bucket.c
server/util_filter.c