Skip to main content

Module server

Module server 

Available on crate feature tls only.
Expand description

TLS implementation agnostic server types

Structs§

InputWithClientHello
An input with a Client Hello (tls) attached to it, usually used in combination with PeekTlsClientHelloService.
NoTlsRejectError
non-tls connection is rejected
PeekTlsClientHelloService
A peek Service which returns the ClientHello to the inner service for tls-detected traffic, and otherwise make use of the Reject service.
SelfSignedData
Data used to configure the generation of a self-signed certificate.
ServerAuthData
Raw private key and certificate data to facilitate server authentication.
SniRequest
A request ready for SNI routing, usually used in combination with SniRouter.
SniRouter
A Service router that can be used to support routing of tls traffic as well as non-tls traffic.
TlsClientVerify
How the client is verified (mTLS).
TlsPeekRouter
A Service router that can be used to support tls traffic as well as non-tls traffic.
TlsServerAuth
Server auth (cert chain + key) to use, as configured on TlsServerConfig.
TlsServerConfig
A backend agnostic TLS server config
TlsStoreClientCertChain
Whether to capture the client certificate chain into NegotiatedTlsParameters.

Enums§

ClientVerifyMode
Mode of client verification by a (tls) server
SelfSignedKeyKind
Key algorithm to use when generating a self-signed key pair.

Traits§

DynamicCertIssuer
Trait that needs to be implemented by cert issuers to support dynamically issueing (external) certs based on client_hello input.

Functions§

peek_client_hello_from_input
Functional API to try to peek TLS:CH from an existing I/O input, returning the stream as-is with the read data prefixed from memory.

Type Aliases§

SniPrefixedIo
PrefixedIo alias used by SniRouter.
TlsClientHelloPrefixedIo
PrefixedIo alias used by PeekTlsClientHelloService.
TlsPrefixedIo
PrefixedIo alias used by TlsPeekRouter.