HTP
0.5
|
Go to the source code of this file.
Macros | |
#define | HTP_ERROR_RESERVED -1000 |
#define | HTP_ERROR -1 |
#define | HTP_DECLINED 0 |
#define | HTP_OK 1 |
#define | HTP_DATA 2 |
#define | HTP_DATA_OTHER 3 |
#define | HTP_STOP 4 |
#define | HTP_DATA_BUFFER 5 |
#define | HTP_STATUS_RESERVED 1000 |
#define | HTP_CONN_PIPELINED 0x000000001 |
#define | HTP_CONN_HTTP_0_9_EXTRA 0x000000002 |
#define | HTP_FIELD_UNPARSEABLE 0x000000004 |
#define | HTP_FIELD_INVALID 0x000000008 |
#define | HTP_FIELD_FOLDED 0x000000010 |
#define | HTP_FIELD_REPEATED 0x000000020 |
#define | HTP_FIELD_LONG 0x000000040 |
#define | HTP_FIELD_RAW_NUL 0x000000080 |
#define | HTP_REQUEST_SMUGGLING 0x000000100 |
#define | HTP_INVALID_FOLDING 0x000000200 |
#define | HTP_REQUEST_INVALID_T_E 0x000000400 |
#define | HTP_MULTI_PACKET_HEAD 0x000000800 |
#define | HTP_HOST_MISSING 0x000001000 |
#define | HTP_HOST_AMBIGUOUS 0x000002000 |
#define | HTP_PATH_ENCODED_NUL 0x000004000 |
#define | HTP_PATH_RAW_NUL 0x000008000 |
#define | HTP_PATH_INVALID_ENCODING 0x000010000 |
#define | HTP_PATH_INVALID 0x000020000 |
#define | HTP_PATH_OVERLONG_U 0x000040000 |
#define | HTP_PATH_ENCODED_SEPARATOR 0x000080000 |
#define | HTP_PATH_UTF8_VALID 0x000100000 /* At least one valid UTF-8 character and no invalid ones. */ |
#define | HTP_PATH_UTF8_INVALID 0x000200000 |
#define | HTP_PATH_UTF8_OVERLONG 0x000400000 |
#define | HTP_PATH_HALF_FULL_RANGE 0x000800000 /* Range U+FF00 - U+FFEF detected. */ |
#define | HTP_STATUS_LINE_INVALID 0x001000000 |
#define | HTP_HOSTU_INVALID 0x002000000 /* Host in the URI. */ |
#define | HTP_HOSTH_INVALID 0x004000000 /* Host in the Host header. */ |
#define | HTP_URLEN_ENCODED_NUL 0x008000000 |
#define | HTP_URLEN_INVALID_ENCODING 0x010000000 |
#define | HTP_URLEN_OVERLONG_U 0x020000000 |
#define | HTP_URLEN_HALF_FULL_RANGE 0x040000000 /* Range U+FF00 - U+FFEF detected. */ |
#define | HTP_URLEN_RAW_NUL 0x080000000 |
#define | HTP_REQUEST_INVALID 0x100000000 |
#define | HTP_REQUEST_INVALID_C_L 0x200000000 |
#define | HTP_AUTH_INVALID 0x400000000 |
#define | HTP_HOST_INVALID ( HTP_HOSTU_INVALID | HTP_HOSTH_INVALID ) |
#define | HTP_LOG_MARK __FILE__,__LINE__ |
#define | HTP_PROTOCOL_INVALID -2 |
#define | HTP_PROTOCOL_UNKNOWN -1 |
#define | HTP_PROTOCOL_0_9 9 |
#define | HTP_PROTOCOL_1_0 100 |
#define | HTP_PROTOCOL_1_1 101 |
#define | HTP_STATUS_INVALID -1 |
#define | HTP_STATUS_UNKNOWN 0 |
Typedefs | |
typedef int | htp_status_t |
typedef struct htp_cfg_t | htp_cfg_t |
typedef struct htp_conn_t | htp_conn_t |
typedef struct htp_connp_t | htp_connp_t |
typedef struct htp_file_t | htp_file_t |
typedef struct htp_file_data_t | htp_file_data_t |
typedef struct htp_header_t | htp_header_t |
typedef struct htp_header_line_t | htp_header_line_t |
typedef struct htp_log_t | htp_log_t |
typedef struct htp_param_t | htp_param_t |
typedef struct htp_tx_data_t | htp_tx_data_t |
typedef struct htp_tx_t | htp_tx_t |
typedef struct htp_uri_t | htp_uri_t |
typedef struct timeval | htp_time_t |
#define HTP_AUTH_INVALID 0x400000000 |
#define HTP_CONN_HTTP_0_9_EXTRA 0x000000002 |
#define HTP_CONN_PIPELINED 0x000000001 |
#define HTP_DATA 2 |
Returned when processing a connection stream, after consuming all provided data. The caller should call again with more data.
#define HTP_DATA_BUFFER 5 |
Same as HTP_DATA, but indicates that any non-consumed part of the data chunk should be preserved (buffered) for later.
#define HTP_DATA_OTHER 3 |
Returned when processing a connection stream, after encountering a situation where processing needs to continue on the alternate stream (e.g., the inbound parser needs to observe some outbound data). The data provided was not completely consumed. On the next invocation the caller should supply only the data that has not been processed already. Use htp_connp_req_data_consumed() and htp_connp_res_data_consumed() to determine how much of the most recent data chunk was consumed.
#define HTP_DECLINED 0 |
No processing or work was done. This is typically used by callbacks to indicate that they were not interested in doing any work in the given context.
#define HTP_ERROR -1 |
General-purpose error code.
#define HTP_ERROR_RESERVED -1000 |
The lowest htp_status_t value LibHTP will use internally.
#define HTP_FIELD_FOLDED 0x000000010 |
#define HTP_FIELD_INVALID 0x000000008 |
#define HTP_FIELD_LONG 0x000000040 |
#define HTP_FIELD_RAW_NUL 0x000000080 |
#define HTP_FIELD_REPEATED 0x000000020 |
#define HTP_FIELD_UNPARSEABLE 0x000000004 |
#define HTP_HOST_AMBIGUOUS 0x000002000 |
#define HTP_HOST_INVALID ( HTP_HOSTU_INVALID | HTP_HOSTH_INVALID ) |
#define HTP_HOST_MISSING 0x000001000 |
#define HTP_HOSTH_INVALID 0x004000000 /* Host in the Host header. */ |
#define HTP_HOSTU_INVALID 0x002000000 /* Host in the URI. */ |
#define HTP_INVALID_FOLDING 0x000000200 |
#define HTP_LOG_MARK __FILE__,__LINE__ |
#define HTP_MULTI_PACKET_HEAD 0x000000800 |
#define HTP_OK 1 |
Returned by a function when its work was successfully completed.
#define HTP_PATH_ENCODED_NUL 0x000004000 |
#define HTP_PATH_ENCODED_SEPARATOR 0x000080000 |
#define HTP_PATH_HALF_FULL_RANGE 0x000800000 /* Range U+FF00 - U+FFEF detected. */ |
#define HTP_PATH_INVALID 0x000020000 |
#define HTP_PATH_INVALID_ENCODING 0x000010000 |
#define HTP_PATH_OVERLONG_U 0x000040000 |
#define HTP_PATH_RAW_NUL 0x000008000 |
#define HTP_PATH_UTF8_INVALID 0x000200000 |
#define HTP_PATH_UTF8_OVERLONG 0x000400000 |
#define HTP_PATH_UTF8_VALID 0x000100000 /* At least one valid UTF-8 character and no invalid ones. */ |
#define HTP_PROTOCOL_0_9 9 |
#define HTP_PROTOCOL_1_0 100 |
#define HTP_PROTOCOL_1_1 101 |
#define HTP_PROTOCOL_INVALID -2 |
#define HTP_PROTOCOL_UNKNOWN -1 |
#define HTP_REQUEST_INVALID 0x100000000 |
#define HTP_REQUEST_INVALID_C_L 0x200000000 |
#define HTP_REQUEST_INVALID_T_E 0x000000400 |
#define HTP_REQUEST_SMUGGLING 0x000000100 |
#define HTP_STATUS_INVALID -1 |
#define HTP_STATUS_LINE_INVALID 0x001000000 |
#define HTP_STATUS_RESERVED 1000 |
The highest htp_status_t value LibHTP will use internally.
#define HTP_STATUS_UNKNOWN 0 |
#define HTP_STOP 4 |
Used by callbacks to indicate that the processing should stop. For example, returning HTP_STOP from a connection callback indicates that LibHTP should stop following that particular connection.
#define HTP_URLEN_ENCODED_NUL 0x008000000 |
#define HTP_URLEN_HALF_FULL_RANGE 0x040000000 /* Range U+FF00 - U+FFEF detected. */ |
#define HTP_URLEN_INVALID_ENCODING 0x010000000 |
#define HTP_URLEN_OVERLONG_U 0x020000000 |
#define HTP_URLEN_RAW_NUL 0x080000000 |
typedef struct htp_conn_t htp_conn_t |
typedef struct htp_connp_t htp_connp_t |
typedef struct htp_file_data_t htp_file_data_t |
typedef struct htp_file_t htp_file_t |
typedef struct htp_header_line_t htp_header_line_t |
typedef struct htp_header_t htp_header_t |
typedef struct htp_param_t htp_param_t |
typedef int htp_status_t |
typedef struct timeval htp_time_t |
typedef struct htp_tx_data_t htp_tx_data_t |
enum htp_auth_type_t |
Enumerates the possible values for authentication type.
enum htp_data_source_t |
enum htp_file_source_t |
enum htp_log_level_t |
enum htp_method_t |
HTTP methods.
enum htp_parser_id_t |
enum htp_stream_state_t |
Enumerates the possible request and response body codings.