Struct libp2prs_secio::Config[][src]

pub struct Config { /* fields omitted */ }

Config for Secio

Implementations

impl Config[src]

pub fn new(key_pair: Keypair) -> Self[src]

Create config

pub fn max_frame_length(self, size: usize) -> Self[src]

Max frame length

pub fn key_agreements<'a, I>(self, xs: I) -> Self where
    I: IntoIterator<Item = &'a KeyAgreement>, 
[src]

Override the default set of supported key agreement algorithms.

pub fn ciphers<'a, I>(self, xs: I) -> Self where
    I: IntoIterator<Item = &'a CipherType>, 
[src]

Override the default set of supported ciphers.

pub fn digests<'a, I>(self, xs: I) -> Self where
    I: IntoIterator<Item = &'a Digest>, 
[src]

Override the default set of supported digest algorithms.

pub async fn handshake<T>(
    self,
    socket: T
) -> Result<(SecureStream<T>, PublicKey, EphemeralPublicKey), SecioError> where
    T: AsyncRead + AsyncWrite + Send + Unpin + 'static, 
[src]

Attempts to perform a handshake on the given socket.

On success, produces a SecureStream that can then be used to encode/decode communications, plus the public key of the remote, plus the ephemeral public key.

Trait Implementations

impl Clone for Config[src]

impl UpgradeInfo for Config[src]

type Info = &'static [u8]

Opaque type representing a negotiable protocol.

impl<T> Upgrader<T> for Config where
    T: ConnectionInfo + AsyncRead + AsyncWrite + Send + Unpin + 'static, 
[src]

type Output = SecioOutput<T>

Output after the upgrade has been successfully negotiated and the handshake performed.

Auto Trait Implementations

impl RefUnwindSafe for Config

impl Send for Config

impl Sync for Config

impl Unpin for Config

impl UnwindSafe for Config

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,