00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00041 #ifndef APACHE_HTTP_REQUEST_H
00042 #define APACHE_HTTP_REQUEST_H
00043
00044 #include "apr_hooks.h"
00045 #include "util_filter.h"
00046
00047 #ifdef __cplusplus
00048 extern "C" {
00049 #endif
00050
00051 #define AP_SUBREQ_NO_ARGS 0
00052 #define AP_SUBREQ_MERGE_ARGS 1
00053
00060 AP_DECLARE(int) ap_process_request_internal(request_rec *r);
00061
00071 AP_DECLARE(request_rec *) ap_sub_req_lookup_uri(const char *new_uri,
00072 const request_rec *r,
00073 ap_filter_t *next_filter);
00074
00084 AP_DECLARE(request_rec *) ap_sub_req_lookup_file(const char *new_file,
00085 const request_rec *r,
00086 ap_filter_t *next_filter);
00105 AP_DECLARE(request_rec *) ap_sub_req_lookup_dirent(const apr_finfo_t *finfo,
00106 const request_rec *r,
00107 int subtype,
00108 ap_filter_t *next_filter);
00119 AP_DECLARE(request_rec *) ap_sub_req_method_uri(const char *method,
00120 const char *new_uri,
00121 const request_rec *r,
00122 ap_filter_t *next_filter);
00130 AP_CORE_DECLARE_NONSTD(apr_status_t) ap_sub_req_output_filter(ap_filter_t *f,
00131 apr_bucket_brigade *bb);
00132
00138 AP_DECLARE(int) ap_run_sub_req(request_rec *r);
00139
00144 AP_DECLARE(void) ap_destroy_sub_req(request_rec *r);
00145
00146
00147
00148
00149
00150
00151
00157 AP_DECLARE(void) ap_internal_redirect(const char *new_uri, request_rec *r);
00158
00166 AP_DECLARE(void) ap_internal_redirect_handler(const char *new_uri, request_rec *r);
00167
00175 AP_DECLARE(void) ap_internal_fast_redirect(request_rec *sub_req, request_rec *r);
00176
00183 AP_DECLARE(int) ap_some_auth_required(request_rec *r);
00184
00190 AP_DECLARE(int) ap_is_initial_req(request_rec *r);
00191
00198 AP_DECLARE(void) ap_update_mtime(request_rec *r, apr_time_t dependency_mtime);
00199
00215 AP_DECLARE(void) ap_allow_methods(request_rec *r, int reset, ...);
00216
00233 AP_DECLARE(void) ap_allow_standard_methods(request_rec *r, int reset, ...);
00234
00235 #define MERGE_ALLOW 0
00236 #define REPLACE_ALLOW 1
00237
00238 #ifdef CORE_PRIVATE
00239
00243 void ap_process_request(request_rec *);
00244
00250 AP_DECLARE(void) ap_die(int type, request_rec *r);
00251 #endif
00252
00253
00254
00261 AP_DECLARE_HOOK(int,create_request,(request_rec *r))
00262
00263
00271 AP_DECLARE_HOOK(int,translate_name,(request_rec *r))
00272
00273
00286 AP_DECLARE_HOOK(int,map_to_storage,(request_rec *r))
00287
00288
00300 AP_DECLARE_HOOK(int,check_user_id,(request_rec *r))
00301
00302
00309 AP_DECLARE_HOOK(int,fixups,(request_rec *r))
00310
00311
00319 AP_DECLARE_HOOK(int,type_checker,(request_rec *r))
00320
00321
00331 AP_DECLARE_HOOK(int,access_checker,(request_rec *r))
00332
00333
00344 AP_DECLARE_HOOK(int,auth_checker,(request_rec *r))
00345
00346
00351 AP_DECLARE_HOOK(void,insert_filter,(request_rec *r))
00352
00353 AP_DECLARE(int) ap_location_walk(request_rec *r);
00354 AP_DECLARE(int) ap_directory_walk(request_rec *r);
00355 AP_DECLARE(int) ap_file_walk(request_rec *r);
00356
00357 #ifdef __cplusplus
00358 }
00359 #endif
00360
00361 #endif