[][src]Module tls_parser::tls

TLS parser structures and functions

TLS parser

Parsing functions for the TLS protocol, supporting versions 1.0 to 1.3

Structs

KeyUpdateRequest

Key update request (TLS 1.3)

RawCertificate

A raw certificate, which should be a DER-encoded X.509 certificate.

TlsCertificateContents

The certificate chain, usually composed of the certificate, and all required certificate authorities.

TlsCertificateRequestContents

Certificate request, as defined in RFC5246 section 7.4.4

TlsCertificateStatusContents

Certificate status response, as defined in RFC6066 section 8

TlsCipherSuiteID
TlsClientHelloContents

TLS Client Hello (from TLS 1.0 to TLS 1.2)

TlsCompressionID
TlsEncrypted

Encrypted TLS record (containing opaque data)

TlsEncryptedContent

TLS encrypted data

TlsHandshakeType

Handshake type

TlsHeartbeatMessageType

Heartbeat type, as defined in RFC6520 section 3

TlsHelloRetryRequestContents

TLS Hello Retry Request (TLS 1.3)

TlsMessageApplicationData

TLS application data

TlsMessageHeartbeat

TLS heartbeat message, as defined in RFC6520

TlsNewSessionTicketContent

Session ticket, as defined in RFC5077

TlsNextProtocolContent

Next protocol response, defined in draft-agl-tls-nextprotoneg-03

TlsPlaintext

TLS plaintext record

TlsRawRecord

Tls Record with raw (unparsed) data

TlsRecordHeader

TLS record header

TlsRecordType

Content type, as defined in IANA TLS ContentType registry

TlsServerHelloContents

TLS Server Hello (from TLS 1.0 to TLS 1.2)

TlsServerHelloV13Draft18Contents

TLS Server Hello (TLS 1.3 draft 18)

TlsServerKeyExchangeContents

Server key exchange parameters

TlsVersion

TLS version

Enums

TlsClientKeyExchangeContents

Client key exchange parameters

TlsMessage

TLS plaintext message

TlsMessageHandshake

Generic handshake message

Constants

MAX_RECORD_LEN

Max record size (RFC8446 5.1)

Functions

parse_tls_encrypted

Parse one packet only, as encrypted content

parse_tls_plaintext

Parse one packet only, as plaintext A single record can contain multiple messages, they must share the same record type

parse_tls_raw_record

Read TLS record envelope, but do not decode data

parse_tls_record_with_header

Given data and a TLS record header, parse content.

tls_parser

Parse one packet only, as plaintext This function is deprecated. Use parse_tls_plaintext instead.

tls_parser_many

Parse one chunk of data, possibly containing multiple TLS plaintext records This function is deprecated. Use parse_tls_plaintext instead, checking if there are remaining bytes, and calling parse_tls_plaintext recursively.