From d689d14dbcd768c028eab2fb378d849e543dcfe9 Mon Sep 17 00:00:00 2001 From: Fred Klassen Date: Sun, 26 Feb 2017 20:45:59 -0800 Subject: [PATCH] #278 fail if capture has a packet that is too large (#286) * #278 fail if capture has a packet that is too large [baruch: remove the CHANGELOG update] Signed-off-by: Baruch Siach --- Upstream status: upstream commit d689d14db diff --git a/src/tcpcapinfo.c b/src/tcpcapinfo.c index 775f1625b00f..96928820fe94 100644 --- a/src/tcpcapinfo.c +++ b/src/tcpcapinfo.c @@ -281,6 +281,15 @@ main(int argc, char *argv[]) caplen = pcap_ph.caplen; } + if (caplentoobig) { + printf("\n\nCapture file appears to be damaged or corrupt.\n" + "Contains packet of size %u, bigger than snap length %u\n", + caplen, pcap_fh.snaplen); + + close(fd); + break; + } + /* check to make sure timestamps don't go backwards */ if (last_sec > 0 && last_usec > 0) { if ((pcap_ph.ts.tv_sec == last_sec) ? @@ -306,7 +315,7 @@ main(int argc, char *argv[]) } close(fd); - continue; + break; } /* print the frame checksum */ -- 2.11.0