[−][src]Struct libp2p::noise::NoiseConfig
The protocol upgrade configuration.
Implementations
impl<H, C, R> NoiseConfig<H, C, R> where
C: Zeroize,
[src]
C: Zeroize,
pub fn into_authenticated(self) -> NoiseAuthenticated<H, C, R>
[src]
Turn the NoiseConfig
into an authenticated upgrade for use
with a Network
.
impl<C> NoiseConfig<IX, C, ()> where
C: Protocol<C> + Zeroize,
[src]
C: Protocol<C> + Zeroize,
pub fn ix(dh_keys: AuthenticKeypair<C>) -> NoiseConfig<IX, C, ()>
[src]
Create a new NoiseConfig
for the IX
handshake pattern.
impl<C> NoiseConfig<XX, C, ()> where
C: Protocol<C> + Zeroize,
[src]
C: Protocol<C> + Zeroize,
pub fn xx(dh_keys: AuthenticKeypair<C>) -> NoiseConfig<XX, C, ()>
[src]
Create a new NoiseConfig
for the XX
handshake pattern.
impl<C> NoiseConfig<IK, C, ()> where
C: Protocol<C> + Zeroize,
[src]
C: Protocol<C> + Zeroize,
pub fn ik_listener(dh_keys: AuthenticKeypair<C>) -> NoiseConfig<IK, C, ()>
[src]
Create a new NoiseConfig
for the IK
handshake pattern (recipient side).
Since the identity of the local node is known to the remote, this configuration does not transmit a static DH public key or public identity key to the remote.
impl<C> NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
C: Protocol<C> + Zeroize,
[src]
C: Protocol<C> + Zeroize,
pub fn ik_dialer(
dh_keys: AuthenticKeypair<C>,
remote_id: PublicKey,
remote_dh: PublicKey<C>
) -> NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>
[src]
dh_keys: AuthenticKeypair<C>,
remote_id: PublicKey,
remote_dh: PublicKey<C>
) -> NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>
Create a new NoiseConfig
for the IK
handshake pattern (initiator side).
In this configuration, the remote identity is known to the local node, but the local node still needs to transmit its own public identity.
Trait Implementations
impl<P, C, R> Clone for NoiseConfig<P, C, R> where
C: Clone + Zeroize,
P: Clone,
R: Clone,
[src]
C: Clone + Zeroize,
P: Clone,
R: Clone,
fn clone(&self) -> NoiseConfig<P, C, R>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T, C, R> InboundUpgrade<T> for NoiseConfig<IK, C, R> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IK, C, R>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IK, C, R>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_inbound(
self,
socket: T,
<NoiseConfig<IK, C, R> as UpgradeInfo>::Info
) -> <NoiseConfig<IK, C, R> as InboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<IK, C, R> as UpgradeInfo>::Info
) -> <NoiseConfig<IK, C, R> as InboundUpgrade<T>>::Future
impl<T, C> InboundUpgrade<T> for NoiseConfig<XX, C, ()> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<XX, C, ()>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<XX, C, ()>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_inbound(
self,
socket: T,
<NoiseConfig<XX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<XX, C, ()> as InboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<XX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<XX, C, ()> as InboundUpgrade<T>>::Future
impl<T, C> InboundUpgrade<T> for NoiseConfig<IX, C, ()> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IX, C, ()>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IX, C, ()>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_inbound(
self,
socket: T,
<NoiseConfig<IX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<IX, C, ()> as InboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<IX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<IX, C, ()> as InboundUpgrade<T>>::Future
impl<T, C> OutboundUpgrade<T> for NoiseConfig<XX, C, ()> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<XX, C, ()>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<XX, C, ()>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_outbound(
self,
socket: T,
<NoiseConfig<XX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<XX, C, ()> as OutboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<XX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<XX, C, ()> as OutboundUpgrade<T>>::Future
impl<T, C> OutboundUpgrade<T> for NoiseConfig<IX, C, ()> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IX, C, ()>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IX, C, ()>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_outbound(
self,
socket: T,
<NoiseConfig<IX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<IX, C, ()> as OutboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<IX, C, ()> as UpgradeInfo>::Info
) -> <NoiseConfig<IX, C, ()> as OutboundUpgrade<T>>::Future
impl<T, C> OutboundUpgrade<T> for NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>: UpgradeInfo,
[src]
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>: UpgradeInfo,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
Possible error during the handshake.
type Future = Handshake<T, C>
Future that performs the handshake with the remote.
fn upgrade_outbound(
self,
socket: T,
<NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> as UpgradeInfo>::Info
) -> <NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> as OutboundUpgrade<T>>::Future
[src]
self,
socket: T,
<NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> as UpgradeInfo>::Info
) -> <NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> as OutboundUpgrade<T>>::Future
impl UpgradeInfo for NoiseConfig<IX, X25519, ()>
[src]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<IX, X25519, ()> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(
&self
) -> <NoiseConfig<IX, X25519, ()> as UpgradeInfo>::InfoIter
[src]
&self
) -> <NoiseConfig<IX, X25519, ()> as UpgradeInfo>::InfoIter
impl<R> UpgradeInfo for NoiseConfig<IK, X25519, R>
[src]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<IK, X25519, R> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(&self) -> <NoiseConfig<IK, X25519, R> as UpgradeInfo>::InfoIter
[src]
impl<R> UpgradeInfo for NoiseConfig<IK, X25519Spec, R>
[src]
Note: This is not currently a standardised upgrade.
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<IK, X25519Spec, R> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(
&self
) -> <NoiseConfig<IK, X25519Spec, R> as UpgradeInfo>::InfoIter
[src]
&self
) -> <NoiseConfig<IK, X25519Spec, R> as UpgradeInfo>::InfoIter
impl UpgradeInfo for NoiseConfig<XX, X25519, ()>
[src]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<XX, X25519, ()> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(
&self
) -> <NoiseConfig<XX, X25519, ()> as UpgradeInfo>::InfoIter
[src]
&self
) -> <NoiseConfig<XX, X25519, ()> as UpgradeInfo>::InfoIter
impl UpgradeInfo for NoiseConfig<IX, X25519Spec, ()>
[src]
Note: This is not currentlyy a standardised upgrade.
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<IX, X25519Spec, ()> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(
&self
) -> <NoiseConfig<IX, X25519Spec, ()> as UpgradeInfo>::InfoIter
[src]
&self
) -> <NoiseConfig<IX, X25519Spec, ()> as UpgradeInfo>::InfoIter
impl UpgradeInfo for NoiseConfig<XX, X25519Spec, ()>
[src]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<<NoiseConfig<XX, X25519Spec, ()> as UpgradeInfo>::Info>
Iterator returned by protocol_info
.
fn protocol_info(
&self
) -> <NoiseConfig<XX, X25519Spec, ()> as UpgradeInfo>::InfoIter
[src]
&self
) -> <NoiseConfig<XX, X25519Spec, ()> as UpgradeInfo>::InfoIter
Auto Trait Implementations
impl<P, C, R> RefUnwindSafe for NoiseConfig<P, C, R> where
C: RefUnwindSafe,
P: RefUnwindSafe,
R: RefUnwindSafe,
C: RefUnwindSafe,
P: RefUnwindSafe,
R: RefUnwindSafe,
impl<P, C, R> Send for NoiseConfig<P, C, R> where
C: Send,
P: Send,
R: Send,
C: Send,
P: Send,
R: Send,
impl<P, C, R> Sync for NoiseConfig<P, C, R> where
C: Sync,
P: Sync,
R: Sync,
C: Sync,
P: Sync,
R: Sync,
impl<P, C, R> Unpin for NoiseConfig<P, C, R> where
C: Unpin,
P: Unpin,
R: Unpin,
C: Unpin,
P: Unpin,
R: Unpin,
impl<P, C, R> UnwindSafe for NoiseConfig<P, C, R> where
C: UnwindSafe,
P: UnwindSafe,
R: UnwindSafe,
C: UnwindSafe,
P: UnwindSafe,
R: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<C, U> InboundUpgradeExt<C> for U where
U: InboundUpgrade<C>,
[src]
U: InboundUpgrade<C>,
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
[src]
F: FnOnce(Self::Output) -> T,
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
[src]
F: FnOnce(Self::Error) -> T,
impl<T, TInfo> InboundUpgradeSend for T where
T: InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>, Info = TInfo> + UpgradeInfoSend<Info = TInfo>,
TInfo: ProtocolName + Clone + Send + 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: 'static,
[src]
T: InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>, Info = TInfo> + UpgradeInfoSend<Info = TInfo>,
TInfo: ProtocolName + Clone + Send + 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: 'static,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: Send,
<T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: 'static,
type Output = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output
Equivalent to InboundUpgrade::Output
.
type Error = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error
Equivalent to InboundUpgrade::Error
.
type Future = <T as InboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future
Equivalent to InboundUpgrade::Future
.
fn upgrade_inbound(
self,
socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
info: TInfo
) -> <T as InboundUpgradeSend>::Future
[src]
self,
socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
info: TInfo
) -> <T as InboundUpgradeSend>::Future
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<C, U> OutboundUpgradeExt<C> for U where
U: OutboundUpgrade<C>,
[src]
U: OutboundUpgrade<C>,
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
[src]
F: FnOnce(Self::Output) -> T,
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
[src]
F: FnOnce(Self::Error) -> T,
impl<T, TInfo> OutboundUpgradeSend for T where
T: OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>, Info = TInfo> + UpgradeInfoSend<Info = TInfo>,
TInfo: ProtocolName + Clone + Send + 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: 'static,
[src]
T: OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>, Info = TInfo> + UpgradeInfoSend<Info = TInfo>,
TInfo: ProtocolName + Clone + Send + 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output: 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error: 'static,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: Send,
<T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future: 'static,
type Output = <T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Output
Equivalent to OutboundUpgrade::Output
.
type Error = <T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Error
Equivalent to OutboundUpgrade::Error
.
type Future = <T as OutboundUpgrade<Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>>>::Future
Equivalent to OutboundUpgrade::Future
.
fn upgrade_outbound(
self,
socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
info: TInfo
) -> <T as OutboundUpgradeSend>::Future
[src]
self,
socket: Negotiated<SubstreamRef<Arc<StreamMuxerBox>>>,
info: TInfo
) -> <T as OutboundUpgradeSend>::Future
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> UpgradeInfoSend for T where
T: UpgradeInfo + Send + 'static,
<T as UpgradeInfo>::Info: Send,
<T as UpgradeInfo>::Info: 'static,
<<T as UpgradeInfo>::InfoIter as IntoIterator>::IntoIter: Send,
<<T as UpgradeInfo>::InfoIter as IntoIterator>::IntoIter: 'static,
[src]
T: UpgradeInfo + Send + 'static,
<T as UpgradeInfo>::Info: Send,
<T as UpgradeInfo>::Info: 'static,
<<T as UpgradeInfo>::InfoIter as IntoIterator>::IntoIter: Send,
<<T as UpgradeInfo>::InfoIter as IntoIterator>::IntoIter: 'static,
type Info = <T as UpgradeInfo>::Info
Equivalent to UpgradeInfo::Info
.
type InfoIter = <<T as UpgradeInfo>::InfoIter as IntoIterator>::IntoIter
Equivalent to UpgradeInfo::InfoIter
.
fn protocol_info(&self) -> <T as UpgradeInfoSend>::InfoIter
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,