diff options
author | Peter Wu <peter@lekensteyn.nl> | 2017-07-03 19:38:42 +0200 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2017-07-03 19:42:49 +0200 |
commit | 04cd18a57cdec3aee33c932fa431cb630905db08 (patch) | |
tree | 6e088bf8a35d44faad3bca57004099bce79d229e /epan/dissectors/packet-ssl-utils.h | |
parent | 7c8c5524212e438f0ae397fc58c5a93f7a88d69f (diff) | |
download | wireshark-ssl-handshake-reassembly.tar.gz |
[WIP] ssl: support fragmented Handshake messagesssl-handshake-reassembly
Track record fragments to support fragmented handshake messages. This
commonly occurs with large Certificate messages spanning multiple TLS
records in multiple TCP segments.
TODO
- this was changed halfway to not rely on
hs_current_length/hs_total_length and instead use the fragments
table. That does not work well for the second pass however. And
without storing any form of state between records, we do not know
whether it is a continuation or not.
- Need to extend tests.
Bug: 3303
Change-Id: I5e6d344063071646656c3a62bada773cd8f6910d
Diffstat (limited to 'epan/dissectors/packet-ssl-utils.h')
-rw-r--r-- | epan/dissectors/packet-ssl-utils.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ssl-utils.h b/epan/dissectors/packet-ssl-utils.h index 17e539d7f9..50490c40ee 100644 --- a/epan/dissectors/packet-ssl-utils.h +++ b/epan/dissectors/packet-ssl-utils.h @@ -421,6 +421,13 @@ typedef struct _SslSession { dissector_handle_t app_handle; guint32 last_nontls_frame; gboolean is_session_resumed; + + /* Tracks handshake reassembly during the first pass. */ +#if 0 + guint32 hs_seqno; +#endif + guint32 hs_total_length; + guint32 hs_current_length; } SslSession; /* RFC 5246, section 8.1 says that the master secret is always 48 bytes */ |