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 0x000000001ULL |
#define | HTP_CONN_HTTP_0_9_EXTRA 0x000000002ULL |
#define | HTP_FIELD_UNPARSEABLE 0x000000004ULL |
#define | HTP_FIELD_INVALID 0x000000008ULL |
#define | HTP_FIELD_FOLDED 0x000000010ULL |
#define | HTP_FIELD_REPEATED 0x000000020ULL |
#define | HTP_FIELD_LONG 0x000000040ULL |
#define | HTP_FIELD_RAW_NUL 0x000000080ULL |
#define | HTP_REQUEST_SMUGGLING 0x000000100ULL |
#define | HTP_INVALID_FOLDING 0x000000200ULL |
#define | HTP_REQUEST_INVALID_T_E 0x000000400ULL |
#define | HTP_MULTI_PACKET_HEAD 0x000000800ULL |
#define | HTP_HOST_MISSING 0x000001000ULL |
#define | HTP_HOST_AMBIGUOUS 0x000002000ULL |
#define | HTP_PATH_ENCODED_NUL 0x000004000ULL |
#define | HTP_PATH_RAW_NUL 0x000008000ULL |
#define | HTP_PATH_INVALID_ENCODING 0x000010000ULL |
#define | HTP_PATH_INVALID 0x000020000ULL |
#define | HTP_PATH_OVERLONG_U 0x000040000ULL |
#define | HTP_PATH_ENCODED_SEPARATOR 0x000080000ULL |
#define | HTP_PATH_UTF8_VALID 0x000100000ULL /* At least one valid UTF-8 character and no invalid ones. */ |
#define | HTP_PATH_UTF8_INVALID 0x000200000ULL |
#define | HTP_PATH_UTF8_OVERLONG 0x000400000ULL |
#define | HTP_PATH_HALF_FULL_RANGE 0x000800000ULL /* Range U+FF00 - U+FFEF detected. */ |
#define | HTP_STATUS_LINE_INVALID 0x001000000ULL |
#define | HTP_HOSTU_INVALID 0x002000000ULL /* Host in the URI. */ |
#define | HTP_HOSTH_INVALID 0x004000000ULL /* Host in the Host header. */ |
#define | HTP_URLEN_ENCODED_NUL 0x008000000ULL |
#define | HTP_URLEN_INVALID_ENCODING 0x010000000ULL |
#define | HTP_URLEN_OVERLONG_U 0x020000000ULL |
#define | HTP_URLEN_HALF_FULL_RANGE 0x040000000ULL /* Range U+FF00 - U+FFEF detected. */ |
#define | HTP_URLEN_RAW_NUL 0x080000000ULL |
#define | HTP_REQUEST_INVALID 0x100000000ULL |
#define | HTP_REQUEST_INVALID_C_L 0x200000000ULL |
#define | HTP_AUTH_INVALID 0x400000000ULL |
#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 0x400000000ULL |
#define HTP_CONN_HTTP_0_9_EXTRA 0x000000002ULL |
#define HTP_CONN_PIPELINED 0x000000001ULL |
#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 0x000000010ULL |
#define HTP_FIELD_INVALID 0x000000008ULL |
#define HTP_FIELD_LONG 0x000000040ULL |
#define HTP_FIELD_RAW_NUL 0x000000080ULL |
#define HTP_FIELD_REPEATED 0x000000020ULL |
#define HTP_FIELD_UNPARSEABLE 0x000000004ULL |
#define HTP_HOST_AMBIGUOUS 0x000002000ULL |
#define HTP_HOST_INVALID ( HTP_HOSTU_INVALID | HTP_HOSTH_INVALID ) |
#define HTP_HOST_MISSING 0x000001000ULL |
#define HTP_HOSTH_INVALID 0x004000000ULL /* Host in the Host header. */ |
#define HTP_HOSTU_INVALID 0x002000000ULL /* Host in the URI. */ |
#define HTP_INVALID_FOLDING 0x000000200ULL |
#define HTP_LOG_MARK __FILE__,__LINE__ |
#define HTP_MULTI_PACKET_HEAD 0x000000800ULL |
#define HTP_OK 1 |
Returned by a function when its work was successfully completed.
#define HTP_PATH_ENCODED_NUL 0x000004000ULL |
#define HTP_PATH_ENCODED_SEPARATOR 0x000080000ULL |
#define HTP_PATH_HALF_FULL_RANGE 0x000800000ULL /* Range U+FF00 - U+FFEF detected. */ |
#define HTP_PATH_INVALID 0x000020000ULL |
#define HTP_PATH_INVALID_ENCODING 0x000010000ULL |
#define HTP_PATH_OVERLONG_U 0x000040000ULL |
#define HTP_PATH_RAW_NUL 0x000008000ULL |
#define HTP_PATH_UTF8_INVALID 0x000200000ULL |
#define HTP_PATH_UTF8_OVERLONG 0x000400000ULL |
#define HTP_PATH_UTF8_VALID 0x000100000ULL /* 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 0x100000000ULL |
#define HTP_REQUEST_INVALID_C_L 0x200000000ULL |
#define HTP_REQUEST_INVALID_T_E 0x000000400ULL |
#define HTP_REQUEST_SMUGGLING 0x000000100ULL |
#define HTP_STATUS_INVALID -1 |
#define HTP_STATUS_LINE_INVALID 0x001000000ULL |
#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 0x008000000ULL |
#define HTP_URLEN_HALF_FULL_RANGE 0x040000000ULL /* Range U+FF00 - U+FFEF detected. */ |
#define HTP_URLEN_INVALID_ENCODING 0x010000000ULL |
#define HTP_URLEN_OVERLONG_U 0x020000000ULL |
#define HTP_URLEN_RAW_NUL 0x080000000ULL |
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.