From c1eb36b84b6fcfea93bfc087b280da60273b597d Mon Sep 17 00:00:00 2001 From: ishaangandhi Date: Sat, 3 Oct 2020 12:43:36 -0400 Subject: [PATCH] ICMP: Fix dissection of Interface Information Object If an address subobject was included, all subsequent subobjects (eg, interface name or MTU subobjects) would read from the same offset. --- epan/dissectors/packet-icmp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/epan/dissectors/packet-icmp.c b/epan/dissectors/packet-icmp.c index 22546afbee..74fb286883 100644 --- a/epan/dissectors/packet-icmp.c +++ b/epan/dissectors/packet-icmp.c @@ -840,9 +840,11 @@ dissect_interface_information_object(tvbuff_t * tvb, gint offset, switch(afi){ case 1: /* IPv4 */ proto_tree_add_item(int_ipaddr_object_tree, hf_icmp_int_info_ipv4, tvb, offset, 4, ENC_BIG_ENDIAN); + offset += 4; break; case 2: /* IPv6 */ proto_tree_add_item(int_ipaddr_object_tree, hf_icmp_int_info_ipv6, tvb, offset, 16, ENC_NA); + offset += 16; break; default: /* Unknown ?! */ proto_tree_add_item(int_ipaddr_object_tree, hf_icmp_int_info_ipunknown, tvb, offset, offset - obj_end_offset, ENC_NA);