Tls.Packet
Magic numbers of the TLS protocol.
val content_type_to_int : content_type -> int
val int_to_content_type : int -> content_type option
val content_type_to_string : content_type -> string
val pp_content_type : Stdlib.Format.formatter -> content_type -> unit
val pp_alert_level : Stdlib.Format.formatter -> alert_level -> unit
val alert_level_to_int : alert_level -> int
val int_to_alert_level : int -> alert_level option
type alert_type =
| CLOSE_NOTIFY
| UNEXPECTED_MESSAGE
| BAD_RECORD_MAC
| RECORD_OVERFLOW
| HANDSHAKE_FAILURE
| BAD_CERTIFICATE
| CERTIFICATE_EXPIRED
| DECODE_ERROR
| PROTOCOL_VERSION
| INAPPROPRIATE_FALLBACK
| USER_CANCELED
| NO_RENEGOTIATION
| MISSING_EXTENSION
| UNSUPPORTED_EXTENSION
| UNRECOGNIZED_NAME
| NO_APPLICATION_PROTOCOL
| UNKNOWN of int
val alert_type_to_string : alert_type -> string
val alert_type_to_int : alert_type -> int
val int_to_alert_type : int -> alert_type
val pp_alert : Stdlib.Format.formatter -> (alert_level * alert_type) -> unit
type handshake_type =
| HELLO_REQUEST
| CLIENT_HELLO
| SERVER_HELLO
| HELLO_VERIFY_REQUEST
| SESSION_TICKET
| END_OF_EARLY_DATA
| ENCRYPTED_EXTENSIONS
| CERTIFICATE
| SERVER_KEY_EXCHANGE
| CERTIFICATE_REQUEST
| SERVER_HELLO_DONE
| CERTIFICATE_VERIFY
| CLIENT_KEY_EXCHANGE
| FINISHED
| CERTIFICATE_URL
| CERTIFICATE_STATUS
| SUPPLEMENTAL_DATA
| KEY_UPDATE
| MESSAGE_HASH
val handshake_type_to_int : handshake_type -> int
val int_to_handshake_type : int -> handshake_type option
val client_certificate_type_to_int : client_certificate_type -> int
val int_to_client_certificate_type : int -> client_certificate_type option
val compression_method_to_int : compression_method -> int
val int_to_compression_method : int -> compression_method option
type extension_type =
| SERVER_NAME
| MAX_FRAGMENT_LENGTH
| SUPPORTED_GROUPS
| EC_POINT_FORMATS
| SIGNATURE_ALGORITHMS
| APPLICATION_LAYER_PROTOCOL_NEGOTIATION
| PADDING
| EXTENDED_MASTER_SECRET
| SESSION_TICKET
| PRE_SHARED_KEY
| EARLY_DATA
| SUPPORTED_VERSIONS
| COOKIE
| PSK_KEY_EXCHANGE_MODES
| CERTIFICATE_AUTHORITIES
| POST_HANDSHAKE_AUTH
| KEY_SHARE
| RENEGOTIATION_INFO
val extension_type_to_int : extension_type -> int
val int_to_extension_type : int -> extension_type option
val extension_type_to_string : extension_type -> string
val max_fragment_length_to_int : max_fragment_length -> int
val int_to_max_fragment_length : int -> max_fragment_length option
val psk_key_exchange_mode_to_int : psk_key_exchange_mode -> int
val int_to_psk_key_exchange_mode : int -> psk_key_exchange_mode option
type signature_alg =
| RSA_PKCS1_MD5
| RSA_PKCS1_SHA1
| RSA_PKCS1_SHA224
| RSA_PKCS1_SHA256
| RSA_PKCS1_SHA384
| RSA_PKCS1_SHA512
| ECDSA_SECP256R1_SHA1
| ECDSA_SECP256R1_SHA256
| ECDSA_SECP384R1_SHA384
| ECDSA_SECP521R1_SHA512
| RSA_PSS_RSAENC_SHA256
| RSA_PSS_RSAENC_SHA384
| RSA_PSS_RSAENC_SHA512
| ED25519
| ED448
| RSA_PSS_PSS_SHA256
| RSA_PSS_PSS_SHA384
| RSA_PSS_PSS_SHA512
val signature_alg_to_int : signature_alg -> int
val int_to_signature_alg : int -> signature_alg option
val to_signature_alg :
[< `ECDSA_SECP256R1_SHA1
| `ECDSA_SECP256R1_SHA256
| `ECDSA_SECP384R1_SHA384
| `ECDSA_SECP521R1_SHA512
| `ED25519
| `RSA_PKCS1_MD5
| `RSA_PKCS1_SHA1
| `RSA_PKCS1_SHA224
| `RSA_PKCS1_SHA256
| `RSA_PKCS1_SHA384
| `RSA_PKCS1_SHA512
| `RSA_PSS_RSAENC_SHA256
| `RSA_PSS_RSAENC_SHA384
| `RSA_PSS_RSAENC_SHA512 ] ->
signature_alg
val of_signature_alg :
signature_alg ->
[> `ECDSA_SECP256R1_SHA1
| `ECDSA_SECP256R1_SHA256
| `ECDSA_SECP384R1_SHA384
| `ECDSA_SECP521R1_SHA512
| `ED25519
| `RSA_PKCS1_MD5
| `RSA_PKCS1_SHA1
| `RSA_PKCS1_SHA224
| `RSA_PKCS1_SHA256
| `RSA_PKCS1_SHA384
| `RSA_PKCS1_SHA512
| `RSA_PSS_RSAENC_SHA256
| `RSA_PSS_RSAENC_SHA384
| `RSA_PSS_RSAENC_SHA512 ]
option
val ec_curve_type_to_int : ec_curve_type -> int
val int_to_ec_curve_type : int -> ec_curve_type option
val named_group_to_int : named_group -> int
val int_to_named_group : int -> named_group option
type any_ciphersuite =
| TLS_RSA_WITH_3DES_EDE_CBC_SHA
| TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
| TLS_RSA_WITH_AES_128_CBC_SHA
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA
| TLS_RSA_WITH_AES_256_CBC_SHA
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA
| TLS_RSA_WITH_AES_128_CBC_SHA256
| TLS_RSA_WITH_AES_256_CBC_SHA256
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
| TLS_RSA_WITH_AES_128_GCM_SHA256
| TLS_RSA_WITH_AES_256_GCM_SHA384
| TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
| TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
| TLS_EMPTY_RENEGOTIATION_INFO_SCSV
| TLS_AES_128_GCM_SHA256
| TLS_AES_256_GCM_SHA384
| TLS_CHACHA20_POLY1305_SHA256
| TLS_AES_128_CCM_SHA256
| TLS_FALLBACK_SCSV
| TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
| TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
| TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
| TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
| TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
| TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
| TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
| TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
| TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
| TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
| TLS_RSA_WITH_AES_128_CCM
| TLS_RSA_WITH_AES_256_CCM
| TLS_DHE_RSA_WITH_AES_128_CCM
| TLS_DHE_RSA_WITH_AES_256_CCM
| TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
| TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
| TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
enum of all TLS ciphersuites
val any_ciphersuite_to_int : any_ciphersuite -> int
val int_to_any_ciphersuite : int -> any_ciphersuite option
val key_update_request_type_to_int : key_update_request_type -> int
val int_to_key_update_request_type : int -> key_update_request_type option