sport = EXTRACT_16BITS(&up->uh_sport);
dport = EXTRACT_16BITS(&up->uh_dport);
+ if (!ND_TTEST(up->uh_ulen)) {
+ udpipaddr_print(ndo, ip, sport, dport);
+ ND_PRINT((ndo, "[|udp]"));
+ return;
+ }
if (length < sizeof(struct udphdr)) {
udpipaddr_print(ndo, ip, sport, dport);
ND_PRINT((ndo, "truncated-udp %d", length));
tcp_header_heapoverflow tcp_header_heapoverflow.pcap tcp_header_heapoverflow.out -t -v -n
ipcomp-heapoverflow ipcomp-heapoverflow.pcap ipcomp-heapoverflow.out -t -v -n
llc-xid-heapoverflow llc-xid-heapoverflow.pcap llc-xid-heapoverflow.out -t -v -n
+udp-length-heapoverflow udp-length-heapoverflow.pcap udp-length-heapoverflow.out -t -v -n
--- /dev/null
+IP (tos 0x30, ttl 48, id 12336, offset 0, flags [none], proto UDP (17), length 12336, bad cksum 3030 (->699d)!)
+ 48.48.48.48.12336 > 48.48.48.48.12336: [|udp]