htp_urlencoded.h File Reference

#include "htp.h"

Go to the source code of this file.

Data Structures

struct  htp_urlenp_t
struct  htp_urlen_param_t

Defines

#define HTP_URLENP_DEFAULT_PARAMS_SIZE   32
#define HTP_URLENP_STATE_KEY   1
#define HTP_URLENP_STATE_VALUE   2
#define HTP_URLENCODED_MIME_TYPE   "application/x-www-form-urlencoded"

Typedefs

typedef struct htp_urlenp_t htp_urlenp_t
typedef struct htp_urlen_param_t htp_urlen_param_t

Functions

htp_urlenp_thtp_urlenp_create (htp_tx_t *tx)
void htp_urlenp_destroy (htp_urlenp_t *urlenp)
void htp_urlenp_set_argument_separator (htp_urlenp_t *urlenp, unsigned char argument_separator)
void htp_urlenp_set_decode_url_encoding (htp_urlenp_t *urlenp, int decode_url_encoding)
htp_status_t htp_urlenp_parse_partial (htp_urlenp_t *urlenp, const void *data, size_t len)
htp_status_t htp_urlenp_parse_complete (htp_urlenp_t *urlenp, const void *data, size_t len)
htp_status_t htp_urlenp_finalize (htp_urlenp_t *urlenp)

Detailed Description

Author:
Ivan Ristic <ivanr@webkreator.com>

Define Documentation

#define HTP_URLENCODED_MIME_TYPE   "application/x-www-form-urlencoded"
#define HTP_URLENP_DEFAULT_PARAMS_SIZE   32
#define HTP_URLENP_STATE_KEY   1
#define HTP_URLENP_STATE_VALUE   2

Typedef Documentation

typedef struct htp_urlenp_t htp_urlenp_t

Function Documentation

htp_urlenp_t* htp_urlenp_create ( htp_tx_t tx  ) 

Creates a new URLENCODED parser.

Returns:
New parser, or NULL on memory allocation failure.
void htp_urlenp_destroy ( htp_urlenp_t urlenp  ) 

Destroys an existing URLENCODED parser.

Parameters:
[in] urlenp 
htp_status_t htp_urlenp_finalize ( htp_urlenp_t urlenp  ) 

Finalizes parsing, forcing the parser to convert any outstanding data into parameters. This method should be invoked at the end of a parsing operation that used htp_urlenp_parse_partial().

Parameters:
[in] urlenp 
Returns:
Success indication
htp_status_t htp_urlenp_parse_complete ( htp_urlenp_t urlenp,
const void *  data,
size_t  len 
)

Parses the provided data chunk under the assumption that it contains all the data that will be parsed. When this method is used for parsing the finalization method should not be invoked.

Parameters:
[in] urlenp 
[in] data 
[in] len 
Returns:
htp_status_t htp_urlenp_parse_partial ( htp_urlenp_t urlenp,
const void *  _data,
size_t  len 
)

Parses the provided data chunk, keeping state to allow streaming parsing, i.e., the parsing where only partial information is available at any one time. The method htp_urlenp_finalize() must be invoked at the end to finalize parsing.

Parameters:
[in] urlenp 
[in] _data 
[in] len 
Returns:
void htp_urlenp_set_argument_separator ( htp_urlenp_t urlenp,
unsigned char  argument_separator 
)
void htp_urlenp_set_decode_url_encoding ( htp_urlenp_t urlenp,
int  decode_url_encoding 
)

Generated on 15 Jul 2018 for HTP by  doxygen 1.6.1