Struct libp2p_noise::NoiseAuthenticated [−][src]
pub struct NoiseAuthenticated<P, C: Zeroize, R> { /* fields omitted */ }
Expand description
A NoiseAuthenticated
transport upgrade that wraps around any
NoiseConfig
handshake and verifies that the remote identified with a
RemoteIdentity::IdentityKey
, aborting otherwise.
See NoiseConfig::into_authenticated
.
On success, the upgrade yields the PeerId
obtained from the
RemoteIdentity
. The output of this upgrade is thus directly suitable
for creating an authenticated
transport for use with a Network
.
Trait Implementations
impl<T, P, C, R> InboundUpgrade<T> for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo + InboundUpgrade<T, Output = (RemoteIdentity<C>, NoiseOutput<T>), Error = NoiseError> + 'static,
<NoiseConfig<P, C, R> as InboundUpgrade<T>>::Future: Send,
T: AsyncRead + AsyncWrite + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, P, C, R> InboundUpgrade<T> for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo + InboundUpgrade<T, Output = (RemoteIdentity<C>, NoiseOutput<T>), Error = NoiseError> + 'static,
<NoiseConfig<P, C, R> as InboundUpgrade<T>>::Future: Send,
T: AsyncRead + AsyncWrite + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (PeerId, NoiseOutput<T>)
type Output = (PeerId, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
Future that performs the handshake with the remote.
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
impl<T, P, C, R> OutboundUpgrade<T> for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo + OutboundUpgrade<T, Output = (RemoteIdentity<C>, NoiseOutput<T>), Error = NoiseError> + 'static,
<NoiseConfig<P, C, R> as OutboundUpgrade<T>>::Future: Send,
T: AsyncRead + AsyncWrite + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, P, C, R> OutboundUpgrade<T> for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo + OutboundUpgrade<T, Output = (RemoteIdentity<C>, NoiseOutput<T>), Error = NoiseError> + 'static,
<NoiseConfig<P, C, R> as OutboundUpgrade<T>>::Future: Send,
T: AsyncRead + AsyncWrite + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (PeerId, NoiseOutput<T>)
type Output = (PeerId, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
Future that performs the handshake with the remote.
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
impl<P, C: Zeroize, R> UpgradeInfo for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo,
impl<P, C: Zeroize, R> UpgradeInfo for NoiseAuthenticated<P, C, R> where
NoiseConfig<P, C, R>: UpgradeInfo,
type Info = <NoiseConfig<P, C, R> as UpgradeInfo>::Info
type Info = <NoiseConfig<P, C, R> as UpgradeInfo>::Info
Opaque type representing a negotiable protocol.
type InfoIter = <NoiseConfig<P, C, R> as UpgradeInfo>::InfoIter
type InfoIter = <NoiseConfig<P, C, R> as UpgradeInfo>::InfoIter
Iterator returned by protocol_info
.
Returns the list of protocols that are supported. Used during the negotiation process.
Auto Trait Implementations
impl<P, C, R> RefUnwindSafe for NoiseAuthenticated<P, C, R> where
C: RefUnwindSafe,
P: RefUnwindSafe,
R: RefUnwindSafe,
impl<P, C, R> Send for NoiseAuthenticated<P, C, R> where
C: Send,
P: Send,
R: Send,
impl<P, C, R> Sync for NoiseAuthenticated<P, C, R> where
C: Sync,
P: Sync,
R: Sync,
impl<P, C, R> Unpin for NoiseAuthenticated<P, C, R> where
C: Unpin,
P: Unpin,
R: Unpin,
impl<P, C, R> UnwindSafe for NoiseAuthenticated<P, C, R> where
C: UnwindSafe,
P: UnwindSafe,
R: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around Self
and applies a closure to the Output
.
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around Self
and applies a closure to the Error
.
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around Self
and applies a closure to the Output
.
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around Self
and applies a closure to the Error
.