diff options
author | Peter Wu <peter@lekensteyn.nl> | 2017-01-27 22:30:34 +0100 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2017-01-29 23:31:29 +0000 |
commit | b3035df88796e0e9058b315791861b03b3b59af7 (patch) | |
tree | 3bd634d05efcbf85297c658fda8741a074c75ea0 /epan/dissectors/packet-dtls.c | |
parent | 9fb9bc52bbed0b8be199e0f3ea21c6e543cde2ab (diff) | |
download | wireshark-b3035df88796e0e9058b315791861b03b3b59af7.tar.gz |
(D)TLS: fix type of record sequence number
The record sequence number is 64-bit, not 32-bit. This applies to all
SSLv3/TLS/DTLS versions. Without this fix, after about four million
records, the wrong MAC is calculated (for TLS 1.2) or decryption will
fail (for TLS 1.3).
Change-Id: I05e5e8bc4229ac443a1b06c5fe984fb885eab1ca
Reviewed-on: https://code.wireshark.org/review/19824
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Diffstat (limited to 'epan/dissectors/packet-dtls.c')
-rw-r--r-- | epan/dissectors/packet-dtls.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/epan/dissectors/packet-dtls.c b/epan/dissectors/packet-dtls.c index 9ac75a4d3f..a13bbf9bc9 100644 --- a/epan/dissectors/packet-dtls.c +++ b/epan/dissectors/packet-dtls.c @@ -714,13 +714,13 @@ dissect_dtls_record(tvbuff_t *tvb, packet_info *pinfo, if(ssl){ if(ssl_packet_from_server(session, dtls_associations, pinfo)){ if (ssl->server) { - ssl->server->seq=(guint32)sequence_number; + ssl->server->seq=sequence_number; ssl->server->epoch=epoch; } } else{ if (ssl->client) { - ssl->client->seq=(guint32)sequence_number; + ssl->client->seq=sequence_number; ssl->client->epoch=epoch; } } |