summaryrefslogtreecommitdiff
path: root/include/httpd.h
diff options
context:
space:
mode:
authorYann Ylavic <ylavic@apache.org>2018-09-03 10:27:40 +0000
committerYann Ylavic <ylavic@apache.org>2018-09-03 10:27:40 +0000
commitee0e1be9c3fb5e25cd14dabd6e3b8b6870ca3e98 (patch)
tree4d5a58c9a058e8470033acd64cc70aedcdd5d10f /include/httpd.h
parentfa321ddeba38b0cd5f8bf55ce4306a8006c9e39c (diff)
downloadhttpd-ee0e1be9c3fb5e25cd14dabd6e3b8b6870ca3e98.tar.gz
util_filter: split pending filters ring in two: input and output ones.
Pending input and output are now maintained separately in respectively c->pending_input_filters and c->pending_output_filters, which improves both performances and debug-ability. Also, struct ap_filter_ring is made opaque, it's only used by util_filter and this will allow us to later change it e.g. to a dual ring+apr_hash to avoid quadratic search in ap_filter_prepare_brigade(). MMN major bumped due to the change in conn_rec (this is trunk only code anyway for now). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1839933 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'include/httpd.h')
-rw-r--r--include/httpd.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/httpd.h b/include/httpd.h
index ff620aefec..808e3d4caf 100644
--- a/include/httpd.h
+++ b/include/httpd.h
@@ -1111,6 +1111,9 @@ typedef enum {
AP_CONN_KEEPALIVE
} ap_conn_keepalive_e;
+/* For struct ap_filter and ap_filter_ring */
+#include "util_filter.h"
+
/**
* @brief Structure to store things which are per connection
*/
@@ -1221,8 +1224,10 @@ struct conn_rec {
/** Array of requests being handled under this connection. */
apr_array_header_t *requests;
- /** Ring of pending filters (with setaside buckets) */
- struct ap_filter_ring *pending_filters;
+ /** Ring of pending input filters (with setaside buckets) */
+ struct ap_filter_ring *pending_input_filters;
+ /** Ring of pending output filters (with setaside buckets) */
+ struct ap_filter_ring *pending_output_filters;
/** The minimum level of filter type to allow setaside buckets */
int async_filter;