Enum libp2p_swarm::SwarmEvent
source · [−]pub enum SwarmEvent<TBehaviourOutEvent, THandlerErr> {
Behaviour(TBehaviourOutEvent),
ConnectionEstablished {
peer_id: PeerId,
endpoint: ConnectedPoint,
num_established: NonZeroU32,
concurrent_dial_errors: Option<Vec<(Multiaddr, TransportError<Error>)>>,
},
ConnectionClosed {
peer_id: PeerId,
endpoint: ConnectedPoint,
num_established: u32,
cause: Option<ConnectionError<NodeHandlerWrapperError<THandlerErr>>>,
},
IncomingConnection {
local_addr: Multiaddr,
send_back_addr: Multiaddr,
},
IncomingConnectionError {
local_addr: Multiaddr,
send_back_addr: Multiaddr,
error: PendingInboundConnectionError<Error>,
},
OutgoingConnectionError {
peer_id: Option<PeerId>,
error: DialError,
},
BannedPeer {
peer_id: PeerId,
endpoint: ConnectedPoint,
},
NewListenAddr {
listener_id: ListenerId,
address: Multiaddr,
},
ExpiredListenAddr {
listener_id: ListenerId,
address: Multiaddr,
},
ListenerClosed {
listener_id: ListenerId,
addresses: Vec<Multiaddr>,
reason: Result<(), Error>,
},
ListenerError {
listener_id: ListenerId,
error: Error,
},
Dialing(PeerId),
}
Expand description
Event generated by the Swarm
.
Variants
Behaviour(TBehaviourOutEvent)
Event generated by the NetworkBehaviour
.
ConnectionEstablished
Fields
peer_id: PeerId
Identity of the peer that we have connected to.
endpoint: ConnectedPoint
Endpoint of the connection that has been opened.
num_established: NonZeroU32
Number of established connections to this peer, including the one that has just been opened.
A connection to the given peer has been opened.
ConnectionClosed
Fields
peer_id: PeerId
Identity of the peer that we have connected to.
endpoint: ConnectedPoint
Endpoint of the connection that has been closed.
num_established: u32
Number of other remaining connections to this same peer.
cause: Option<ConnectionError<NodeHandlerWrapperError<THandlerErr>>>
Reason for the disconnection, if it was not a successful active close.
A connection with the given peer has been closed, possibly as a result of an error.
IncomingConnection
Fields
local_addr: Multiaddr
Local connection address.
This address has been earlier reported with a NewListenAddr
event.
A new connection arrived on a listener and is in the process of protocol negotiation.
A corresponding ConnectionEstablished
,
BannedPeer
, or
IncomingConnectionError
event will later be
generated for this connection.
IncomingConnectionError
Fields
local_addr: Multiaddr
Local connection address.
This address has been earlier reported with a NewListenAddr
event.
error: PendingInboundConnectionError<Error>
The error that happened.
An error happened on a connection during its initial handshake.
This can include, for example, an error during the handshake of the encryption layer, or the connection unexpectedly closed.
OutgoingConnectionError
Fields
error: DialError
Error that has been encountered.
Outgoing connection attempt failed.
BannedPeer
Fields
peer_id: PeerId
Identity of the banned peer.
endpoint: ConnectedPoint
Endpoint of the connection that has been closed.
We connected to a peer, but we immediately closed the connection because that peer is banned.
NewListenAddr
Fields
listener_id: ListenerId
The listener that is listening on the new address.
One of our listeners has reported a new local listening address.
ExpiredListenAddr
Fields
listener_id: ListenerId
The listener that is no longer listening on the address.
One of our listeners has reported the expiration of a listening address.
ListenerClosed
Fields
listener_id: ListenerId
The listener that closed.
addresses: Vec<Multiaddr>
The addresses that the listener was listening on. These addresses are now considered
expired, similar to if a ExpiredListenAddr
event
has been generated for each of them.
One of the listeners gracefully closed.
ListenerError
One of the listeners reported a non-fatal error.
Dialing(PeerId)
A new dialing attempt has been initiated by the NetworkBehaviour
implementation.
A ConnectionEstablished
event is
reported if the dialing attempt succeeds, otherwise a
OutgoingConnectionError
event
is reported.