rustls::server::hs

Struct ExpectClientHello

Source
pub(super) struct ExpectClientHello {
    pub(super) config: Arc<ServerConfig>,
    pub(super) extra_exts: Vec<ServerExtension>,
    pub(super) transcript: HandshakeHashOrBuffer,
    pub(super) session_id: SessionId,
    pub(super) using_ems: bool,
    pub(super) done_retry: bool,
    pub(super) send_tickets: usize,
}

Fields§

§config: Arc<ServerConfig>§extra_exts: Vec<ServerExtension>§transcript: HandshakeHashOrBuffer§session_id: SessionId§using_ems: bool§done_retry: bool§send_tickets: usize

Implementations§

Source§

impl ExpectClientHello

Source

pub(super) fn new( config: Arc<ServerConfig>, extra_exts: Vec<ServerExtension>, ) -> Self

Source

pub(super) fn with_certified_key( self, sig_schemes: Vec<SignatureScheme>, client_hello: &ClientHelloPayload, m: &Message<'_>, cx: &mut Context<'_, ServerConnectionData>, ) -> Result<Box<dyn State<ServerConnectionData> + 'static>, Error>

Continues handling of a ClientHello message once config and certificate are available.

Source

fn choose_suite_and_kx_group( &self, selected_version: ProtocolVersion, sig_key_algorithm: SignatureAlgorithm, protocol: Protocol, client_groups: &[NamedGroup], client_suites: &[CipherSuite], ) -> Result<(SupportedCipherSuite, &'static dyn SupportedKxGroup), PeerIncompatible>

Trait Implementations§

Source§

impl State<ServerConnectionData> for ExpectClientHello

Source§

fn handle<'m>( self: Box<Self>, cx: &mut Context<'_, ServerConnectionData>, m: Message<'m>, ) -> Result<Box<dyn State<ServerConnectionData> + 'm>, Error>
where Self: 'm,

Source§

fn into_owned(self: Box<Self>) -> Box<dyn State<ServerConnectionData> + 'static>

Source§

fn export_keying_material( &self, _output: &mut [u8], _label: &[u8], _context: Option<&[u8]>, ) -> Result<(), Error>

Source§

fn extract_secrets(&self) -> Result<PartiallyExtractedSecrets, Error>

Source§

fn send_key_update_request( &mut self, _common: &mut CommonState, ) -> Result<(), Error>

Source§

fn handle_decrypt_error(&self)

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.