HTP
0.3
|
Go to the source code of this file.
#define HTP_MULTIPART_MIME_TYPE "multipart/form-data" |
#define MULTIPART_DEFAULT_FILE_EXTRACT_LIMIT 16 |
#define MULTIPART_MODE_DATA 1 |
#define MULTIPART_MODE_LINE 0 |
#define MULTIPART_PART_EPILOGUE 4 |
#define MULTIPART_PART_FILE 2 |
#define MULTIPART_PART_PREAMBLE 3 |
#define MULTIPART_PART_TEXT 1 |
#define MULTIPART_PART_UNKNOWN 0 |
#define MULTIPART_STATE_BOUNDARY 2 |
#define MULTIPART_STATE_BOUNDARY_EAT_LF 5 |
#define MULTIPART_STATE_BOUNDARY_IS_LAST1 3 |
#define MULTIPART_STATE_BOUNDARY_IS_LAST2 4 |
#define MULTIPART_STATE_DATA 1 |
typedef struct htp_mpart_part_t htp_mpart_part_t |
typedef struct htp_mpartp_t htp_mpartp_t |
htp_mpart_part_t* htp_mpart_part_create | ( | htp_mpartp_t * | mpartp | ) |
Creates new multipart part.
mpartp |
void htp_mpart_part_destroy | ( | htp_mpart_part_t * | part | ) |
Destroys multipart part.
part |
int htp_mpart_part_finalize_data | ( | htp_mpart_part_t * | part | ) |
Finalizes part processing.
part |
int htp_mpart_part_receive_data | ( | htp_mpart_part_t * | part, |
unsigned char * | data, | ||
size_t | len, | ||
int | line | ||
) |
htp_mpartp_t* htp_mpartp_create | ( | htp_connp_t * | connp, |
char * | boundary | ||
) |
Creates a new multipart/form-data parser.
boundary |
void htp_mpartp_destroy | ( | htp_mpartp_t ** | _mpartp | ) |
Destroys a multipart/form-data parser.
mpartp |
int htp_mpartp_extract_boundary | ( | bstr * | content_type, |
char ** | boundary | ||
) |
Extract boundary from the supplied Content-Type request header. The extracted boundary will be allocated on heap.
content_type | |
boundary |
int htp_mpartp_finalize | ( | htp_mpartp_t * | mpartp | ) |
Finalize parsing.
mpartp |
int htp_mpartp_parse | ( | htp_mpartp_t * | mpartp, |
unsigned char * | data, | ||
size_t | len | ||
) |
Parses a chunk of multipart/form-data data. This function should be called as many times as necessary until all data has been consumed.
mpartp | data |
len |
int htp_mpartp_run_request_file_data_hook | ( | htp_mpart_part_t * | part, |
unsigned char * | data, | ||
size_t | len | ||
) |