Enum libp2p_swarm::SwarmEvent [−][src]
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
Event generated by the NetworkBehaviour.
A connection to the given peer has been opened.
Fields of ConnectionEstablished
peer_id: PeerIdIdentity of the peer that we have connected to.
endpoint: ConnectedPointEndpoint of the connection that has been opened.
num_established: NonZeroU32Number of established connections to this peer, including the one that has just been opened.
concurrent_dial_errors: Option<Vec<(Multiaddr, TransportError<Error>)>>Some when the new connection is an outgoing connection.
Addresses are dialed concurrently. Contains the addresses and errors
of dial attempts that failed before the one successful dial.
A connection with the given peer has been closed, possibly as a result of an error.
Fields of ConnectionClosed
peer_id: PeerIdIdentity of the peer that we have connected to.
endpoint: ConnectedPointEndpoint of the connection that has been closed.
num_established: u32Number 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 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.
Fields of IncomingConnection
local_addr: MultiaddrLocal connection address.
This address has been earlier reported with a NewListenAddr
event.
send_back_addr: MultiaddrAddress used to send back data to the remote.
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.
Fields of IncomingConnectionError
local_addr: MultiaddrLocal connection address.
This address has been earlier reported with a NewListenAddr
event.
send_back_addr: MultiaddrAddress used to send back data to the remote.
error: PendingInboundConnectionError<Error>The error that happened.
Outgoing connection attempt failed.
Fields of OutgoingConnectionError
We connected to a peer, but we immediately closed the connection because that peer is banned.
Fields of BannedPeer
peer_id: PeerIdIdentity of the banned peer.
endpoint: ConnectedPointEndpoint of the connection that has been closed.
One of our listeners has reported a new local listening address.
Fields of NewListenAddr
listener_id: ListenerIdThe listener that is listening on the new address.
address: MultiaddrThe new address that is being listened on.
One of our listeners has reported the expiration of a listening address.
Fields of ExpiredListenAddr
listener_id: ListenerIdThe listener that is no longer listening on the address.
address: MultiaddrThe expired address.
One of the listeners gracefully closed.
Fields of ListenerClosed
listener_id: ListenerIdThe 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.
reason: Result<(), Error>Reason for the closure. Contains Ok(()) if the stream produced None, or Err
if the stream produced an error.
One of the listeners reported a non-fatal error.
Fields of ListenerError
Dialing(PeerId)A new dialing attempt has been initiated.
A ConnectionEstablished event is
reported if the dialing attempt succeeds, otherwise a
OutgoingConnectionError event
is reported with attempts_remaining equal to 0.
Tuple Fields of Dialing
0: PeerId