aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-udp.c
diff options
context:
space:
mode:
authorStig Bjørlykke <stig@bjorlykke.org>2015-11-13 15:34:56 +0100
committerStig Bjørlykke <stig@bjorlykke.org>2015-11-15 18:25:32 +0000
commit82bd3cc9eb49c886a1b6ff1ad0aa3be096bd8aec (patch)
tree0838d52c30ba766b8e7602cffff02b9fcdcc972c /epan/dissectors/packet-udp.c
parentb44e3fc98e611fbd7145be6158d091c222d92712 (diff)
udp: Don't mark zero checksum illegal when in_error_pkt.
A zero checksum is not illegal in IPv6/UDP when in a ICMPv6 packet. Change-Id: I07acc874d2385992089ef3ebc7a82e853904ecfc Ping-Bug: 6232 Reviewed-on: https://code.wireshark.org/review/11808 Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Diffstat (limited to 'epan/dissectors/packet-udp.c')
-rw-r--r--epan/dissectors/packet-udp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/epan/dissectors/packet-udp.c b/epan/dissectors/packet-udp.c
index f40b68b309..6d8885424c 100644
--- a/epan/dissectors/packet-udp.c
+++ b/epan/dissectors/packet-udp.c
@@ -805,7 +805,7 @@ dissect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint32 ip_proto)
udph->uh_sum = tvb_get_ntohs(tvb, offset + 6);
if (udph->uh_sum == 0) {
/* No checksum supplied in the packet. */
- if ((ip_proto == IP_PROTO_UDP) && (pinfo->src.type == AT_IPv4)) {
+ if (((ip_proto == IP_PROTO_UDP) && (pinfo->src.type == AT_IPv4)) || pinfo->flags.in_error_pkt) {
item = proto_tree_add_uint_format_value(udp_tree, hfi_udp_checksum.id, tvb, offset + 6, 2, 0,
"0x%04x (none)", 0);