libp2p_allow_block_list

Struct Behaviour

Source
pub struct Behaviour<S> { /* private fields */ }
Expand description

A NetworkBehaviour that can act as an allow or block list.

Implementations§

Source§

impl Behaviour<AllowedPeers>

Source

pub fn allowed_peers(&self) -> &HashSet<PeerId>

Peers that are currently allowed.

Source

pub fn allow_peer(&mut self, peer: PeerId) -> bool

Allow connections to the given peer.

Returns whether the peer was newly inserted. Does nothing if the peer was already present in the set.

Source

pub fn disallow_peer(&mut self, peer: PeerId) -> bool

Disallow connections to the given peer.

All active connections to this peer will be closed immediately.

Returns whether the peer was present in the set. Does nothing if the peer was not present in the set.

Source§

impl Behaviour<BlockedPeers>

Source

pub fn blocked_peers(&self) -> &HashSet<PeerId>

Peers that are currently blocked.

Source

pub fn block_peer(&mut self, peer: PeerId) -> bool

Block connections to a given peer.

All active connections to this peer will be closed immediately.

Returns whether the peer was newly inserted. Does nothing if the peer was already present in the set.

Source

pub fn unblock_peer(&mut self, peer: PeerId) -> bool

Unblock connections to a given peer.

Returns whether the peer was present in the set. Does nothing if the peer was not present in the set.

Trait Implementations§

Source§

impl<S: Debug> Debug for Behaviour<S>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<S: Default> Default for Behaviour<S>

Source§

fn default() -> Behaviour<S>

Returns the “default value” for a type. Read more
Source§

impl<S> NetworkBehaviour for Behaviour<S>
where S: Enforce,

Source§

type ConnectionHandler = ConnectionHandler

Handler for all the protocols the network behaviour supports.
Source§

type ToSwarm = Infallible

Event generated by the NetworkBehaviour and that the swarm will report back.
Source§

fn handle_established_inbound_connection( &mut self, _: ConnectionId, peer: PeerId, _: &Multiaddr, _: &Multiaddr, ) -> Result<THandler<Self>, ConnectionDenied>

Callback that is invoked for every established inbound connection. Read more
Source§

fn handle_pending_outbound_connection( &mut self, _: ConnectionId, peer: Option<PeerId>, _: &[Multiaddr], _: Endpoint, ) -> Result<Vec<Multiaddr>, ConnectionDenied>

Callback that is invoked for every outbound connection attempt. Read more
Source§

fn handle_established_outbound_connection( &mut self, _: ConnectionId, peer: PeerId, _: &Multiaddr, _: Endpoint, _: PortUse, ) -> Result<THandler<Self>, ConnectionDenied>

Callback that is invoked for every established outbound connection. Read more
Source§

fn on_swarm_event(&mut self, _event: FromSwarm<'_>)

Informs the behaviour about an event from the Swarm.
Source§

fn on_connection_handler_event( &mut self, _id: PeerId, _: ConnectionId, event: THandlerOutEvent<Self>, )

Informs the behaviour about an event generated by the ConnectionHandler dedicated to the peer identified by peer_id. for the behaviour. Read more
Source§

fn poll( &mut self, cx: &mut Context<'_>, ) -> Poll<ToSwarm<Self::ToSwarm, THandlerInEvent<Self>>>

Polls for things that swarm should do. Read more
Source§

fn handle_pending_inbound_connection( &mut self, _connection_id: ConnectionId, _local_addr: &Multiaddr, _remote_addr: &Multiaddr, ) -> Result<(), ConnectionDenied>

Callback that is invoked for every new inbound connection. Read more

Auto Trait Implementations§

§

impl<S> Freeze for Behaviour<S>
where S: Freeze,

§

impl<S> RefUnwindSafe for Behaviour<S>
where S: RefUnwindSafe,

§

impl<S> Send for Behaviour<S>
where S: Send,

§

impl<S> Sync for Behaviour<S>
where S: Sync,

§

impl<S> Unpin for Behaviour<S>
where S: Unpin,

§

impl<S> UnwindSafe for Behaviour<S>
where S: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

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

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T