aboutsummaryrefslogtreecommitdiff
path: root/example/reader_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'example/reader_util.c')
-rw-r--r--example/reader_util.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/example/reader_util.c b/example/reader_util.c
index 136bef914..d47b5a5ec 100644
--- a/example/reader_util.c
+++ b/example/reader_util.c
@@ -2037,9 +2037,14 @@ struct ndpi_proto ndpi_workflow_process_packet(struct ndpi_workflow * workflow,
if(iph->version == 6) {
iph6 = (struct ndpi_ipv6hdr *)&packet[ip_offset];
iph = NULL;
+ if(header->caplen < ip_offset + sizeof(struct ndpi_ipv6hdr))
+ return(nproto);
} else if(iph->version != IPVERSION) {
// printf("WARNING: not good (packet_id=%u)!\n", (unsigned int)workflow->stats.raw_packet_count);
goto v4_warning;
+ } else {
+ if(header->caplen < ip_offset + sizeof(struct ndpi_iphdr))
+ return(nproto);
}
}
}