18 #ifndef APREQ_PARSERS_H
19 #define APREQ_PARSERS_H
47 #define APREQ_PARSER_ARGS apreq_parser_t *parser, \
49 apr_bucket_brigade *bb
52 #define APREQ_HOOK_ARGS apreq_hook_t *hook, \
53 apreq_param_t *param, \
54 apr_bucket_brigade *bb
69 #define APREQ_DECLARE_PARSER(f) APREQ_DECLARE_NONSTD(apr_status_t) \
75 #define APREQ_DECLARE_HOOK(f) APREQ_DECLARE_NONSTD(apr_status_t) \
141 return h->
hook(h, param,
bb);
199 const char *content_type,
202 const char *temp_dir,
Request parsing and parameter API.
apr_status_t apreq_parse_generic(apreq_parser_t *parser, apr_table_t *t, apr_bucket_brigade *bb)
apr_status_t apreq_parse_urlencoded(apreq_parser_t *parser, apr_table_t *t, apr_bucket_brigade *bb)
apr_status_t(* apreq_hook_function_t)(apreq_hook_t *hook, apreq_param_t *param, apr_bucket_brigade *bb)
Definition: apreq_parser.h:64
apr_status_t(* apreq_parser_function_t)(apreq_parser_t *parser, apr_table_t *t, apr_bucket_brigade *bb)
Definition: apreq_parser.h:59
apreq_hook_t * apreq_hook_make(apr_pool_t *pool, apreq_hook_function_t hook, apreq_hook_t *next, void *ctx)
apreq_parser_t * apreq_parser_make(apr_pool_t *pool, apr_bucket_alloc_t *ba, const char *content_type, apreq_parser_function_t pfn, apr_size_t brigade_limit, const char *temp_dir, apreq_hook_t *hook, void *ctx)
apr_status_t apreq_register_parser(const char *enctype, apreq_parser_function_t pfn)
#define APREQ_HOOK_ARGS
Definition: apreq_parser.h:52
apreq_parser_function_t apreq_parser(const char *enctype)
#define APREQ_DECLARE_PARSER(f)
Definition: apreq_parser.h:69
apr_status_t apreq_hook_find_param(apreq_hook_t *hook, apreq_param_t *param, apr_bucket_brigade *bb)
apr_status_t apreq_parse_multipart(apreq_parser_t *parser, apr_table_t *t, apr_bucket_brigade *bb)
apr_status_t apreq_parser_add_hook(apreq_parser_t *p, apreq_hook_t *h)
apr_status_t apreq_hook_disable_uploads(apreq_hook_t *hook, apreq_param_t *param, apr_bucket_brigade *bb)
struct apreq_hook_find_param_ctx_t apreq_hook_find_param_ctx_t
#define APREQ_DECLARE_HOOK(f)
Definition: apreq_parser.h:75
apr_status_t apreq_parse_headers(apreq_parser_t *parser, apr_table_t *t, apr_bucket_brigade *bb)
apr_status_t apreq_hook_discard_brigade(apreq_hook_t *hook, apreq_param_t *param, apr_bucket_brigade *bb)
apr_status_t apreq_hook_apr_xml_parser(apreq_hook_t *hook, apreq_param_t *param, apr_bucket_brigade *bb)
#define APREQ_PARSER_ARGS
Definition: apreq_parser.h:47
struct apr_bucket_alloc_t apr_bucket_alloc_t
Definition: apr_buckets.h:128
apr_bucket_brigade * bb
Definition: mod_dav.h:555
apr_bucket_brigade request_rec apr_pool_t * pool
Definition: mod_dav.h:557
enctype
Definition: mod_proxy.h:75
int apr_status_t
Definition: apr_errno.h:44
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
struct apr_table_t apr_table_t
Definition: apr_tables.h:56
#define APREQ_DECLARE(x)
Definition: macros.h:12
Definition: apr_buckets.h:263
Definition: apreq_parser.h:272
apreq_param_t * param
Definition: apreq_parser.h:274
const char * name
Definition: apreq_parser.h:273
apreq_hook_t * prev
Definition: apreq_parser.h:275
Definition: apreq_parser.h:83
apreq_hook_t * next
Definition: apreq_parser.h:85
apr_pool_t * pool
Definition: apreq_parser.h:86
void * ctx
Definition: apreq_parser.h:87
apreq_hook_function_t hook
Definition: apreq_parser.h:84
Definition: apreq_param.h:37
Definition: apreq_parser.h:93
apr_size_t brigade_limit
Definition: apreq_parser.h:103
const char * content_type
Definition: apreq_parser.h:97
apr_pool_t * pool
Definition: apreq_parser.h:99
const char * temp_dir
Definition: apreq_parser.h:105
void * ctx
Definition: apreq_parser.h:109
apreq_parser_function_t parser
Definition: apreq_parser.h:95
apreq_hook_t * hook
Definition: apreq_parser.h:107
apr_bucket_alloc_t * bucket_alloc
Definition: apreq_parser.h:101