Struct libp2p_mplex::MplexConfig [−][src]
Configuration for the multiplexer.
Implementations
impl MplexConfig
[src]
pub fn new() -> MplexConfig
[src]
Builds the default configuration.
pub fn set_max_num_streams(&mut self, max: usize) -> &mut Self
[src]
Sets the maximum number of simultaneously used substreams.
A substream is used as long as it has not been dropped,
even if it may already be closed or reset at the protocol
level (in which case it may still have buffered data that
can be read before the StreamMuxer
API signals EOF).
When the limit is reached, opening of outbound substreams
is delayed until another substream is dropped, whereas new
inbound substreams are immediately answered with a Reset
.
If the number of inbound substreams that need to be reset
accumulates too quickly (judged by internal bounds), the
connection is closed with an error due to the misbehaved
remote.
pub fn set_max_buffer_size(&mut self, max: usize) -> &mut Self
[src]
Sets the maximum number of frames buffered per substream.
A limit is necessary in order to avoid DoS attacks.
pub fn set_max_buffer_behaviour(
&mut self,
behaviour: MaxBufferBehaviour
) -> &mut Self
[src]
&mut self,
behaviour: MaxBufferBehaviour
) -> &mut Self
Sets the behaviour when the maximum buffer size is reached for a substream.
See the documentation of MaxBufferBehaviour
.
pub fn set_split_send_size(&mut self, size: usize) -> &mut Self
[src]
Sets the frame size used when sending data. Capped at 1Mbyte as per the Mplex spec.
Trait Implementations
impl Clone for MplexConfig
[src]
fn clone(&self) -> MplexConfig
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for MplexConfig
[src]
impl Default for MplexConfig
[src]
fn default() -> MplexConfig
[src]
impl<C> InboundUpgrade<C> for MplexConfig where
C: AsyncRead + AsyncWrite + Unpin,
[src]
C: AsyncRead + AsyncWrite + Unpin,
type Output = Multiplex<C>
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = Error
Possible error during the handshake.
type Future = Ready<Result<Self::Output, Error>>
Future that performs the handshake with the remote.
fn upgrade_inbound(self, socket: C, _: Self::Info) -> Self::Future
[src]
impl<C> OutboundUpgrade<C> for MplexConfig where
C: AsyncRead + AsyncWrite + Unpin,
[src]
C: AsyncRead + AsyncWrite + Unpin,
type Output = Multiplex<C>
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = Error
Possible error during the handshake.
type Future = Ready<Result<Self::Output, Error>>
Future that performs the handshake with the remote.
fn upgrade_outbound(self, socket: C, _: Self::Info) -> Self::Future
[src]
impl UpgradeInfo for MplexConfig
[src]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
type InfoIter = Once<Self::Info>
Iterator returned by protocol_info
.
fn protocol_info(&self) -> Self::InfoIter
[src]
Auto Trait Implementations
impl RefUnwindSafe for MplexConfig
[src]
impl Send for MplexConfig
[src]
impl Sync for MplexConfig
[src]
impl Unpin for MplexConfig
[src]
impl UnwindSafe for MplexConfig
[src]
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,
pub 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>,
pub fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
[src]
F: FnOnce(Self::Output) -> T,
pub 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, 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>,
pub fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
[src]
F: FnOnce(Self::Output) -> T,
pub 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> 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.
pub fn to_owned(&self) -> T
[src]
pub 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.
pub 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.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,