1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

http_request.[ch]:

*) add the "install_filter" hook as a hook/control point for modules to
   install their filters. [Ryan Bloom]

http_protocol.c:
*) move check_first_conn_error() up in the file; no actual changes
*) add checked_bputstrs(), checked_bflush(), and checked_bputs(). These are
   copies of ap_rvputs(), ap_rflush(), and ap_rputs() respectively. The
   users of the checked_* functions will be independent of filtering changes
   to the ap_r* functions.
*) add flush_filters() place holder


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85685 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Greg Stein
2000-06-24 16:27:47 +00:00
parent 76f1e03870
commit 1f993fdbb5
3 changed files with 128 additions and 85 deletions

View File

@@ -86,6 +86,7 @@ AP_HOOK_STRUCT(
AP_HOOK_LINK(type_checker)
AP_HOOK_LINK(access_checker)
AP_HOOK_LINK(auth_checker)
AP_HOOK_LINK(insert_filter)
)
AP_IMPLEMENT_HOOK_RUN_FIRST(int,translate_name,
@@ -100,6 +101,7 @@ AP_IMPLEMENT_HOOK_RUN_ALL(int,access_checker,
(request_rec *r),(r),OK,DECLINED)
AP_IMPLEMENT_HOOK_RUN_FIRST(int,auth_checker,
(request_rec *r),(r),DECLINED)
AP_IMPLEMENT_HOOK_VOID(insert_filter, (request_rec *r), (r))
/*****************************************************************
*
@@ -1247,6 +1249,15 @@ static void process_request_internal(request_rec *r)
return;
}
/* The new insert_filter stage makes sense here IMHO. We are sure that
* we are going to run the request now, so we may as well insert filters
* if any are available. Since the goal of this phase is to allow all
* modules to insert a filter if they want to, this filter returns
* void. I just can't see any way that this filter can reasonably
* fail, either your modules inserts something or it doesn't. rbb
*/
ap_run_insert_filter(r);
if ((access_status = ap_invoke_handler(r)) != 0) {
ap_die(access_status, r);
return;