diff options
author | Campus <campus@ntop.org> | 2016-11-12 16:35:25 +0100 |
---|---|---|
committer | Campus <campus@ntop.org> | 2016-11-12 16:35:25 +0100 |
commit | 48a206a4347d38f0bed322d194ce40076417ac59 (patch) | |
tree | 0c3349a86f167b984e27f54416e6a5d5e2a69c95 | |
parent | 4564b973df4fd6bbc90782ee98f80e459416b244 (diff) | |
parent | 3a6d2c7c5f28dacca0a99f0e122e10807cce22fb (diff) |
Merge branch 'alagoutte-scan-build' into dev
-rw-r--r-- | src/lib/ndpi_main.c | 4 | ||||
-rw-r--r-- | src/lib/protocols/coap.c | 2 | ||||
-rw-r--r-- | src/lib/protocols/http.c | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index 2f0b5c336..d1f522e84 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -2888,11 +2888,11 @@ static int ndpi_init_packet_header(struct ndpi_detection_module_struct *ndpi_str } #endif /* NDPI_DETECTION_SUPPORT_IPV6 */ - if(decaps_iph->version == 4 && decaps_iph->ihl >= 5) { + if(decaps_iph && decaps_iph->version == 4 && decaps_iph->ihl >= 5) { NDPI_LOG(NDPI_PROTOCOL_UNKNOWN, ndpi_struct, NDPI_LOG_DEBUG, "ipv4 header\n"); } #ifdef NDPI_DETECTION_SUPPORT_IPV6 - else if(decaps_iph->version == 6 && l3len >= sizeof(struct ndpi_ipv6hdr) && + else if(decaps_iph && decaps_iph->version == 6 && l3len >= sizeof(struct ndpi_ipv6hdr) && (ndpi_struct->ip_version_limit & NDPI_DETECTION_ONLY_IPV4) == 0) { NDPI_LOG(NDPI_PROTOCOL_UNKNOWN, ndpi_struct, NDPI_LOG_DEBUG, "ipv6 header\n"); flow->packet.iphv6 = (struct ndpi_ipv6hdr *)flow->packet.iph; diff --git a/src/lib/protocols/coap.c b/src/lib/protocols/coap.c index 5f8e97863..252ffc9c4 100644 --- a/src/lib/protocols/coap.c +++ b/src/lib/protocols/coap.c @@ -115,7 +115,7 @@ void ndpi_search_coap (struct ndpi_detection_module_struct *ndpi_struct, u_int16_t s_port = ntohs(flow->packet.udp->source); u_int16_t d_port = ntohs(flow->packet.udp->dest); - if((!isCoAPport(s_port) && !isCoAPport(s_port)) + if((!isCoAPport(s_port) && !isCoAPport(d_port)) || (packet->payload_packet_len < 4) // header too short ) { NDPI_LOG(NDPI_PROTOCOL_COAP, ndpi_struct, NDPI_LOG_DEBUG, "excluding Coap\n"); diff --git a/src/lib/protocols/http.c b/src/lib/protocols/http.c index 11ea138db..4e4d01ca2 100644 --- a/src/lib/protocols/http.c +++ b/src/lib/protocols/http.c @@ -164,7 +164,7 @@ static void setHttpUserAgent(struct ndpi_flow_struct *flow, char *ua) { static void parseHttpSubprotocol(struct ndpi_detection_module_struct *ndpi_struct, struct ndpi_flow_struct *flow) { // int i = 0; - struct ndpi_packet_struct *packet = &flow->packet; + //struct ndpi_packet_struct *packet = &flow->packet; if((flow->l4.tcp.http_stage == 0) || (flow->http.url && flow->http_detected)) { |