diff options
author | Pascal Quantin <pascal@wireshark.org> | 2020-09-01 15:22:14 +0000 |
---|---|---|
committer | Pascal Quantin <pascal@wireshark.org> | 2020-09-02 17:53:34 +0000 |
commit | 9d7ab8b46f9f91600b95f2e31d6f579aee20af46 (patch) | |
tree | 638129b9a8c78277caf32ad41a3c444b2721c95e | |
parent | 5803c7b87b3414cdb8bf502af50bb406ca774482 (diff) | |
download | wireshark-9d7ab8b46f9f91600b95f2e31d6f579aee20af46.tar.gz wireshark-9d7ab8b46f9f91600b95f2e31d6f579aee20af46.tar.bz2 wireshark-9d7ab8b46f9f91600b95f2e31d6f579aee20af46.zip |
TCP: do not use an unknown status when the checksum is 0xffff
Otherwise it triggers an assert when adding the column as the field is
defined as BASE_NONE and not BASE_DEC or BASE_HEX. Thus an unknown value
(not in proto_checksum_vals[)array) cannot be represented.
Mark the checksum as bad even if we process the packet.
Closes #16816
Conflicts:
epan/dissectors/packet-tcp.c
(cherry picked from commit 7f3fe6164a68b76d9988c4253b24d43f498f1753)
-rw-r--r-- | epan/dissectors/packet-tcp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/epan/dissectors/packet-tcp.c b/epan/dissectors/packet-tcp.c index 512454e471..bb12e0d963 100644 --- a/epan/dissectors/packet-tcp.c +++ b/epan/dissectors/packet-tcp.c @@ -6235,7 +6235,7 @@ dissect_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_) PROTO_ITEM_SET_GENERATED(item); /* XXX - What should this special status be? */ item = proto_tree_add_uint(checksum_tree, hf_tcp_checksum_status, tvb, - offset + 16, 0, 4); + offset + 16, 0, PROTO_CHECKSUM_E_BAD); PROTO_ITEM_SET_GENERATED(item); expert_add_info(pinfo, item, &ei_tcp_checksum_ffff); |