aboutsummaryrefslogtreecommitdiff
path: root/src/lib/protocols/http.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/protocols/http.c')
-rw-r--r--src/lib/protocols/http.c28
1 files changed, 4 insertions, 24 deletions
diff --git a/src/lib/protocols/http.c b/src/lib/protocols/http.c
index eb64265ee..d190e1e9b 100644
--- a/src/lib/protocols/http.c
+++ b/src/lib/protocols/http.c
@@ -265,7 +265,7 @@ static void ndpi_check_user_agent(struct ndpi_detection_module_struct *ndpi_stru
// printf("***** [%s:%d] ==> '%s'\n", __FILE__, __LINE__, ua);
// printf("***** %u\n", ndpi_check_dga_name(ndpi_struct, NULL, "uclient-fetch]"));
-
+
if((strlen(ua) < 4)
|| (!strncmp(ua, "test", 4))
|| (!strncmp(ua, "<?", 2))
@@ -339,28 +339,8 @@ static void check_content_type_and_change_protocol(struct ndpi_detection_module_
if(flow->packet.http_method.len < 3)
flow->http.method = NDPI_HTTP_METHOD_UNKNOWN;
- else {
- switch(flow->packet.http_method.ptr[0]) {
- case 'O': flow->http.method = NDPI_HTTP_METHOD_OPTIONS; break;
- case 'G': flow->http.method = NDPI_HTTP_METHOD_GET; break;
- case 'H': flow->http.method = NDPI_HTTP_METHOD_HEAD; break;
-
- case 'P':
- switch(flow->packet.http_method.ptr[1]) {
- case 'A': flow->http.method = NDPI_HTTP_METHOD_PATCH; break;
- case 'O': flow->http.method = NDPI_HTTP_METHOD_POST; break;
- case 'U': flow->http.method = NDPI_HTTP_METHOD_PUT; break;
- }
- break;
-
- case 'D': flow->http.method = NDPI_HTTP_METHOD_DELETE; break;
- case 'T': flow->http.method = NDPI_HTTP_METHOD_TRACE; break;
- case 'C': flow->http.method = NDPI_HTTP_METHOD_CONNECT; break;
- default:
- flow->http.method = NDPI_HTTP_METHOD_UNKNOWN;
- break;
- }
- }
+ else
+ flow->http.method = ndpi_http_str2method((const char*)flow->packet.http_method.ptr);
}
if(packet->user_agent_line.ptr != NULL && packet->user_agent_line.len != 0) {
@@ -613,7 +593,7 @@ static u_int16_t http_request_url_offset(struct ndpi_detection_module_struct *nd
/* Check first char */
if(!packet->payload_packet_len || !strchr(http_fs,packet->payload[0]))
return 0;
-
+
/**
FIRST PAYLOAD PACKET FROM CLIENT
**/