diff options
author | Guy Harris <guy@alum.mit.edu> | 2005-07-03 00:52:08 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2005-07-03 00:52:08 +0000 |
commit | 8b8f22ec945895f63d94c5fd763926e37b82c23b (patch) | |
tree | e95d06d542a68ea2990077673ddc71bc635ef84a | |
parent | 3b62802faa4bdfd6cedfb5656afa09187ca6d717 (diff) |
Note that the MPLS extension dissector will misdissect ICMP packets that
contain more than 128 bytes of the original datagram. (Yes, RFC 1812
and the ICMP Extensions for MPLS draft collide here, as the draft in
question notes.)
svn path=/trunk/; revision=14834
-rw-r--r-- | epan/dissectors/packet-ip.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ip.c b/epan/dissectors/packet-ip.c index 5800c97890..53d59f5b4f 100644 --- a/epan/dissectors/packet-ip.c +++ b/epan/dissectors/packet-ip.c @@ -1849,6 +1849,10 @@ dissect_icmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) pinfo->in_error_pkt = save_in_error_pkt; /* MPLS extensions */ + /* XXX - this doesn't handle ICMP packets with more than + 128 bytes of the original datagram, which RFC 1812 doesn't + disallow. Make whether to handle MPLS extensions a + preference setting? */ if (tvb_reported_length(tvb) > 8 + 128) dissect_mpls_extensions(tvb, 8 + 128, icmp_tree); |