diff options
author | João Valverde <joao.valverde@tecnico.ulisboa.pt> | 2016-01-28 02:08:06 +0000 |
---|---|---|
committer | João Valverde <j@v6e.pt> | 2016-05-01 23:32:41 +0000 |
commit | f69b3b1f0e6aa2edc3fe51e9e0fd3a28ba2f4306 (patch) | |
tree | 55de7a45c4a2e0d774649520264c8c90427e1586 /epan/dissectors/packet-ssl-utils.h | |
parent | 3270dfac43da861c714df76513456b46765ff47f (diff) | |
download | wireshark-f69b3b1f0e6aa2edc3fe51e9e0fd3a28ba2f4306.tar.gz |
IMAP: Add heuristic check for TLS
If the IMAP TCP stream doesn't include the STARTTLS command/response
the IMAP dissector will try to dissect TLS ciphertext as IMAP protocol
plaintext.
Add heuristic check for SSLv3/TLS and if the heuristic matches register
dissect_ssl() as the dissector for that IMAP session.
Change-Id: If84eca22315193a306e93e66c608de6634e6cd85
Reviewed-on: https://code.wireshark.org/review/13570
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Diffstat (limited to 'epan/dissectors/packet-ssl-utils.h')
-rw-r--r-- | epan/dissectors/packet-ssl-utils.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/epan/dissectors/packet-ssl-utils.h b/epan/dissectors/packet-ssl-utils.h index 272dcb3f8b..f010f22c16 100644 --- a/epan/dissectors/packet-ssl-utils.h +++ b/epan/dissectors/packet-ssl-utils.h @@ -465,6 +465,18 @@ extern guint32 ssl_starttls_ack(dissector_handle_t ssl_handle, packet_info *pinfo, dissector_handle_t app_handle); +/** Marks this packet as belonging to an SSL conversation started with STARTTLS. + * @param ssl_handle The dissector handle for SSL or DTLS. + * @param pinfo Packet Info. + * @param app_handle Dissector handle for the protocol inside the decrypted + * Application Data record. + * @return 0 for the first STARTTLS acknowledgement (success) or if ssl_handle + * is NULL. >0 if STARTTLS was started before. + */ +extern guint32 +ssl_starttls_post_ack(dissector_handle_t ssl_handle, packet_info *pinfo, + dissector_handle_t app_handle); + /** set the data and len for the stringInfo buffer. buf should be big enough to * contain the provided data @param buf the buffer to update |