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.
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.