thistle-sdk
Thistle SDK documentation
Loading...
Searching...
No Matches
rustls_client_hello Struct Reference

#include <rustls.h>

Data Fields

struct rustls_str sni_name
 
struct rustls_slice_u16 signature_schemes
 
const struct rustls_slice_slice_bytesalpn
 

Detailed Description

The TLS Client Hello information provided to a ClientHelloCallback function. sni_name is the SNI servername provided by the client. If the client did not provide an SNI, the length of this rustls_string will be 0. The signature_schemes carries the values supplied by the client or, should the client not use this TLS extension, the default schemes in the rustls library. See: https://docs.rs/rustls/0.20.0/rustls/internal/msgs/enums/enum.SignatureScheme.html. alpn carries the list of ALPN protocol names that the client proposed to the server. Again, the length of this list will be 0 if none were supplied.

All this data, when passed to a callback function, is only accessible during the call and may not be modified. Users of this API must copy any values that they want to access when the callback returned.

EXPERIMENTAL: this feature of rustls-ffi is likely to change in the future, as the rustls library is re-evaluating their current approach to client hello handling.

Field Documentation

◆ alpn

const struct rustls_slice_slice_bytes* rustls_client_hello::alpn

◆ signature_schemes

struct rustls_slice_u16 rustls_client_hello::signature_schemes

◆ sni_name

struct rustls_str rustls_client_hello::sni_name

The documentation for this struct was generated from the following file: