26 #ifndef APACHE_HTTP_PROTOCOL_H
27 #define APACHE_HTTP_PROTOCOL_H
363 #define AP_METHOD_CHECK_ALLOWED(mask, methname) \
364 ((mask) & (AP_METHOD_BIT << ap_method_number_of((methname))))
471 return ap_rwrite(str, (
int)strlen(str), r);
653 #define AP_GET_BASIC_AUTH_PW_NOTE "AP_GET_BASIC_AUTH_PW_NOTE"
669 const
char **username,
670 const
char **password);
683 #define AP_GETLINE_FOLD (1 << 0)
684 #define AP_GETLINE_CRLF (1 << 1)
685 #define AP_GETLINE_NOSPC_EOL (1 << 2)
687 #define AP_GETLINE_NONBLOCK (1 << 3)
801 #define AP_PROTOCOL_HTTP1 "http/1.1"
867 const char *protocol))
937 const
char *protocol);
981 struct ap_bucket_error {
998 #define AP_BUCKET_IS_ERROR(e) (e->type == &ap_bucket_type_error)
This structure is used for recording information about the registered filters. It associates a name w...
Definition: util_filter.h:226
apr_status_t ap_fgetline(char **s, apr_size_t n, apr_size_t *read, ap_filter_t *f, int flags, apr_bucket_brigade *bb, apr_pool_t *p)
A bucket referring to an HTTP error.
Definition: http_protocol.h:981
int ap_discard_request_body(request_rec *r)
Definition: http_protocol.h:230
#define AP_CORE_DECLARE(x)
Definition: macros.h:3
int protocol_propose(conn_rec *c, request_rec *r, server_rec *s, const apr_array_header_t *offers, apr_array_header_t *proposals)
int ap_should_client_block(request_rec *r)
Definition: apr_arch_file_io.h:107
int ap_index_of_response(int status)
apr_status_t ap_switch_protocol(conn_rec *c, request_rec *r, server_rec *s, const char *protocol)
void ap_finalize_sub_req_protocol(request_rec *sub_r)
long ap_get_client_block(request_rec *r, char *buffer, apr_size_t bufsiz)
int force_weak
Definition: http_protocol.h:187
ap_method_list_t * ap_make_method_list(apr_pool_t *p, int nelts)
int ap_is_allowed_protocol(conn_rec *c, request_rec *r, server_rec *s, const char *protocol)
The representation of a filter chain.
Definition: util_filter.h:278
void ap_set_etag(request_rec *r)
#define AP_FN_ATTR_SENTINEL
Definition: ap_config.h:231
struct apr_bucket_alloc_t apr_bucket_alloc_t
Definition: apr_buckets.h:123
apr_bucket_brigade request_rec apr_pool_t * pool
Definition: mod_dav.h:555
const char * ap_method_name_of(apr_pool_t *p, int methnum)
int ap_getline(char *s, int n, request_rec *r, int flags)
A structure with the ingredients for a file based etag.
Definition: http_protocol.h:175
int ap_set_keepalive(request_rec *r)
#define AP_DECLARE(x)
Definition: macros.h:1
int status
Definition: http_protocol.h:985
void ap_note_auth_failure(request_rec *r)
request_rec * ap_create_request(conn_rec *c)
void ap_get_mime_headers_core(request_rec *r, apr_bucket_brigade *bb)
const char * ap_get_status_line_ex(apr_pool_t *p, int status)
const char * pathname
Definition: http_protocol.h:183
void ap_set_content_length(request_rec *r, apr_off_t length)
void ap_copy_method_list(ap_method_list_t *dest, ap_method_list_t *src)
void insert_error_filter(request_rec *r)
#define AP_DECLARE_NONSTD(x)
Definition: macros.h:2
void ap_set_content_type(request_rec *r, const char *ct)
const char * ap_get_protocol(conn_rec *c)
apr_status_t ap_get_protocol_upgrades(conn_rec *c, request_rec *r, server_rec *s, int report_all, const apr_array_header_t **pupgrades)
Definition: http_protocol.h:229
void ap_set_sub_req_protocol(request_rec *rnew, const request_rec *r)
void ap_method_list_remove(ap_method_list_t *l, const char *method)
ap_condition_e ap_condition_if_modified_since(request_rec *r, apr_table_t *headers)
const char const char * uri
Definition: mod_dav.h:631
apr_status_t ap_content_length_filter(ap_filter_t *, apr_bucket_brigade *)
int log_transaction(request_rec *r)
Definition: apr_buckets.h:258
int ap_method_number_of(const char *method)
int protocol_switch(conn_rec *c, request_rec *r, server_rec *s, const char *protocol)
int post_read_request(request_rec *r)
Structure to store things which are per connection.
Definition: httpd.h:1183
int ap_parse_request_line(request_rec *r)
void ap_method_registry_init(apr_pool_t *p)
void ap_send_error_response(request_rec *r, int recursive_error)
char * ap_make_etag_ex(request_rec *r, etag_rec *er)
void ap_note_digest_auth_failure(request_rec *r)
const char * ap_select_protocol(conn_rec *c, request_rec *r, server_rec *s, const apr_array_header_t *choices)
apr_status_t ap_get_basic_auth_components(const request_rec *r, const char **username, const char **password)
const char * vlist_validator
Definition: http_protocol.h:177
int int ap_rflush(request_rec *r)
Definition: apr_mmap.h:62
#define AP_DECLARE_HOOK(ret, name, args)
Definition: ap_hooks.h:74
void ap_method_list_add(ap_method_list_t *l, const char *method)
apr_int64_t apr_time_t
Definition: apr_time.h:45
void ap_set_last_modified(request_rec *r)
apr_file_t * fd
Definition: http_protocol.h:185
apr_bucket_brigade * bb
Definition: mod_dav.h:555
AP_DECLARE_DATA ap_filter_rec_t * ap_old_write_func
void ap_setup_make_content_type(apr_pool_t *pool)
apr_port_t default_port(const request_rec *r)
A structure to store information for each virtual server.
Definition: httpd.h:1370
int ap_map_http_request_error(apr_status_t rv, int status)
int note_auth_failure(request_rec *r, const char *auth_type)
Definition: apr_buckets.h:224
ap_condition_e ap_condition_if_unmodified_since(request_rec *r, apr_table_t *headers)
apr_time_t request_time
Definition: http_protocol.h:179
dav_error * src
Definition: mod_dav.h:186
ap_condition_e
Definition: http_protocol.h:227
void ap_note_basic_auth_failure(request_rec *r)
int ap_rvputs(request_rec *r,...) AP_FN_ATTR_SENTINEL
const char * data
Definition: http_protocol.h:987
APR-UTIL Buckets/Bucket Brigades.
apr_status_t ap_rgetline(char **s, apr_size_t n, apr_size_t *read, request_rec *r, int flags, apr_bucket_brigade *bb)
apr_status_t ap_send_fd(apr_file_t *fd, request_rec *r, apr_off_t offset, apr_size_t length, apr_size_t *nbytes)
request_rec * ap_read_request(conn_rec *c)
void pre_read_request(request_rec *r, conn_rec *c)
void ap_clear_method_list(ap_method_list_t *l)
void ap_set_accept_ranges(request_rec *r)
int ap_vrprintf(request_rec *r, const char *fmt, va_list vlist)
apr_status_t ap_old_write_filter(ap_filter_t *f, apr_bucket_brigade *b)
apr_size_t ap_send_mmap(apr_mmap_t *mm, request_rec *r, apr_size_t offset, apr_size_t length)
int ap_setup_client_block(request_rec *r, int read_policy)
AP_DECLARE_DATA const apr_bucket_type_t ap_bucket_type_error
Definition: apr_buckets.h:534
const char * ap_make_content_type(request_rec *r, const char *type)
void ap_send_interim_response(request_rec *r, int send_headers)
ap_condition_e ap_condition_if_match(request_rec *r, apr_table_t *headers)
apr_time_t ap_rationalize_mtime(request_rec *r, apr_time_t mtime)
A structure that represents the current request.
Definition: httpd.h:860
void ap_set_etag_fd(request_rec *r, apr_file_t *fd)
Structure for handling HTTP methods.
Definition: httpd.h:662
int ap_rputc(int c, request_rec *r)
#define AP_DECLARE_DATA
Definition: macros.h:15
dav_buffer const char * str
Definition: mod_dav.h:464
apr_bucket * ap_bucket_error_make(apr_bucket *b, int error, const char *buf, apr_pool_t *p)
int status
Definition: mod_dav.h:141
struct apr_table_t apr_table_t
Definition: apr_tables.h:56
const char * http_scheme(const request_rec *r)
const char * protocol_get(const conn_rec *c)
Definition: apr_buckets.h:131
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
apr_bucket * ap_bucket_error_create(int error, const char *buf, apr_pool_t *p, apr_bucket_alloc_t *list)
apr_status_t ap_byterange_filter(ap_filter_t *f, apr_bucket_brigade *b)
int apr_status_t
Definition: apr_errno.h:44
int ap_rprintf(request_rec *r, const char *fmt,...) __attribute__((format(printf
int ap_method_in_list(ap_method_list_t *l, const char *method)
int ap_rwrite(const void *buf, int nbyte, request_rec *r)
request_rec * r
Definition: mod_dav.h:518
int ap_method_register(apr_pool_t *p, const char *methname)
apr_uint16_t apr_port_t
Definition: apr_network_io.h:257
char * ap_make_etag(request_rec *r, int force_weak)
int ap_get_basic_auth_pw(request_rec *r, const char **pw)
void ap_get_mime_headers(request_rec *r)
apr_finfo_t * finfo
Definition: http_protocol.h:181
dav_resource int dav_locktoken dav_response int flags
Definition: mod_dav.h:1452
int ap_check_request_header(request_rec *r)
const char * ap_get_status_line(int status)
Definition: http_protocol.h:228
int ap_meets_conditions(request_rec *r)
apr_status_t ap_http_header_filter(ap_filter_t *f, apr_bucket_brigade *b)
void ap_parse_uri(request_rec *r, const char *uri)
apr_bucket_refcount refcount
Definition: http_protocol.h:983
ap_condition_e ap_condition_if_range(request_rec *r, apr_table_t *headers)
Definition: apr_file_info.h:174
APR Portability Routines.
ap_condition_e ap_condition_if_none_match(request_rec *r, apr_table_t *headers)
Definition: http_protocol.h:231
void ap_finalize_request_protocol(request_rec *r)