Apache2
|
Module API. More...
Go to the source code of this file.
Data Structures | |
struct | apreq_handle_t |
struct | apreq_module_t |
Vtable describing the necessary module functions. More... | |
Macros | |
#define | APREQ_MODULE(pre, mmn) |
#define | apreq_cookie(req, name) apreq_jar_get(req, name) |
Typedefs | |
typedef struct apreq_handle_t | apreq_handle_t |
typedef struct apreq_module_t | apreq_module_t |
Vtable describing the necessary module functions. More... | |
Functions | |
apreq_handle_t * | apreq_handle_cgi (apr_pool_t *pool) |
apreq_handle_t * | apreq_handle_custom (apr_pool_t *pool, const char *query_string, const char *cookie, apreq_parser_t *parser, apr_uint64_t read_limit, apr_bucket_brigade *in) |
apreq_param_t * | apreq_param (apreq_handle_t *req, const char *key) |
apr_table_t * | apreq_params (apreq_handle_t *req, apr_pool_t *p) |
apr_table_t * | apreq_cookies (apreq_handle_t *req, apr_pool_t *p) |
Module API.
Find the first cookie with the specified name. The match is case-insensitive.
req | request handle. |
name | desired cookie name |
#define APREQ_MODULE | ( | pre, | |
mmn | |||
) |
Convenience macro for defining a module by mapping a function prefix to an associated apreq_module_t structure.
pre | Prefix to define new module. All attributes of the apreq_module_t struct are defined with this as their prefix. The generated struct is named by appending "_module" to the prefix. |
mmn | Magic number (i.e. version number) of this module. |
typedef struct apreq_handle_t apreq_handle_t |
An apreq handle associated with a module. The structure may have variable size, because the module may append its own data structures after it.
typedef struct apreq_module_t apreq_module_t |
Vtable describing the necessary module functions.
apr_table_t* apreq_cookies | ( | apreq_handle_t * | req, |
apr_pool_t * | p | ||
) |
Returns a table containing all request cookies.
req | the apreq request handle |
p | Allocates the returned table. |
apreq_handle_t* apreq_handle_cgi | ( | apr_pool_t * | pool | ) |
Create an apreq handle which is suitable for a CGI program. It reads input from stdin and writes output to stdout.
pool | Pool associated to this handle. |
apreq_handle_t* apreq_handle_custom | ( | apr_pool_t * | pool, |
const char * | query_string, | ||
const char * | cookie, | ||
apreq_parser_t * | parser, | ||
apr_uint64_t | read_limit, | ||
apr_bucket_brigade * | in | ||
) |
Create a custom apreq handle which knows only some static values. Useful if you want to test the parser code or if you have got data from a custom source (neither Apache 2 nor CGI).
pool | allocates the parse data, |
query_string | parsed into args table |
cookie | value of the request "Cookie" header |
parser | parses the request body |
read_limit | maximum bytes to read from the body |
in | brigade containing the request body |
apreq_param_t* apreq_param | ( | apreq_handle_t * | req, |
const char * | key | ||
) |
Find the first query string parameter or body parameter with the specified name. The match is case-insensitive.
req | request handle. |
key | desired parameter name |
apr_table_t* apreq_params | ( | apreq_handle_t * | req, |
apr_pool_t * | p | ||
) |
Returns a table containing key-value pairs for the full request (args + body).
req | request handle |
p | allocates the returned table. |