Tls.Handshake_client13
val answer_server_hello :
State.handshake_state ->
Core.client_hello ->
Core.server_hello ->
(Core.group
* [< `Finite_field of Mirage_crypto_pk.Dh.secret
| `P256 of Mirage_crypto_ec.P256.Dh.secret
| `P384 of Mirage_crypto_ec.P384.Dh.secret
| `P521 of Mirage_crypto_ec.P521.Dh.secret
| `X25519 of Mirage_crypto_ec.X25519.secret ])
list ->
string ->
string ->
(State.handshake_state
* [> `Change_dec of State.crypto_context
| `Change_enc of State.crypto_context ]
list,
[> `Fatal of
[> `Handshake of
[> `BadDH of string
| `BadECDH of Mirage_crypto_ec.error
| `Fragments
| `Message of string ] ] ])
Stdlib.result
val answer_hello_retry_request :
State.handshake_state ->
Core.client_hello ->
Core.hello_retry ->
'a ->
string ->
Stdlib.String.t ->
(State.handshake_state * [> `Record of Packet.content_type * string ] list,
[> `Fatal of [> `Handshake of [> `Message of string ] ] ])
Stdlib.result
val answer_encrypted_extensions :
State.handshake_state ->
State.session_data13 ->
string ->
string ->
[> `ALPN of string ] list ->
string ->
string ->
(State.handshake_state * 'a list, 'b) Stdlib.result
val answer_certificate :
State.handshake_state ->
State.session_data13 ->
string ->
string ->
Core.signature_algorithm list option ->
(string * 'a) list ->
string ->
string ->
(State.handshake_state * 'b list,
[> `Error of
[> `AuthenticationFailure of X509.Validation.validation_error ]
| `Fatal of [> `Bad_certificate of string ] ])
Stdlib.result
val answer_certificate_verify :
State.handshake_state ->
State.session_data13 ->
string ->
string ->
Core.signature_algorithm list option ->
string ->
string ->
Stdlib.String.t ->
(State.handshake_state * 'a list,
[> `Error of
[> `NoConfiguredSignatureAlgorithm of Core.signature_algorithm list ]
| `Fatal of
[> `Bad_certificate of string
| `Decode of string
| `Handshake of [> `Message of string ] ] ])
Stdlib.result
val answer_certificate_request :
State.handshake_state ->
State.session_data13 ->
string ->
string ->
[> `SignatureAlgorithms of Core.signature_algorithm list ] list ->
string ->
string ->
(State.handshake_state * 'a list, 'b) Stdlib.result
val answer_finished :
State.handshake_state ->
State.session_data13 ->
string ->
string ->
Core.signature_algorithm list option ->
Stdlib.String.t ->
string ->
Stdlib.String.t ->
(State.handshake_state
* [> `Change_dec of State.crypto_context
| `Change_enc of State.crypto_context
| `Record of Packet.content_type * string ]
list,
[> `Error of
[> `NoConfiguredSignatureAlgorithm of Core.signature_algorithm list ]
| `Fatal of
[> `Bad_certificate of string
| `Handshake of [> `Fragments | `Message of string ] ] ])
Stdlib.result
val answer_session_ticket :
State.handshake_state ->
Core.session_ticket ->
(State.handshake_state * 'a list, 'b) Stdlib.result
val handle_key_update :
State.handshake_state ->
Packet.key_update_request_type ->
(State.handshake_state
* [> `Change_dec of State.crypto_context
| `Change_enc of State.crypto_context
| `Record of Packet.content_type * string ]
list,
[> `Fatal of [> `Handshake of [> `Fragments | `Message of string ] ] ])
Stdlib.result
val handle_handshake :
State.client13_handshake_state ->
State.handshake_state ->
string ->
(State.handshake_state
* [> `Change_dec of State.crypto_context
| `Change_enc of State.crypto_context
| `Record of Packet.content_type * string ]
list,
[> `Error of
[> `AuthenticationFailure of X509.Validation.validation_error
| `NoConfiguredSignatureAlgorithm of Core.signature_algorithm list ]
| `Fatal of
[> `Bad_certificate of string
| `Decode of string
| `Handshake of
[> `BadDH of string
| `BadECDH of Mirage_crypto_ec.error
| `Fragments
| `Message of string ]
| `Unexpected of [> `Handshake of Core.tls_handshake ] ] ])
Stdlib.result