summaryrefslogtreecommitdiffstats
path: root/src/swarm/peer/mod.rs
blob: 086f5d20cd661b25830aead6888036c31e2dc07f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//! Peers: handshake (HELLO / HELLO_REPLY), liveness and keepalives, self-healing,
//! swarm-wide forget records, and dispatch of inbound messages.
//!
//! * `handshake`: discovering peers, HELLO / HELLO_REPLY, membership.
//! * `keepalive`: PING / PONG and the self-healing re-handshake.
//! * `epoch`: the epochs peers advertise.
//! * `admit`: admission with a swarm key.
//! * `forget`: swarm-wide forget records.
//! * `worker`: the periodic peer worker.
//! * `inbound`: dispatch of inbound messages.

mod admit;
mod epoch;
mod forget;
mod handshake;
mod inbound;
mod keepalive;
mod worker;

pub(crate) use forget::forgotten_path;
pub(crate) use handshake::{
    apply_neighbour_change, peer_swarm, rehandshake, remember_peer, send_hello_once,
};
pub(crate) use inbound::handle_message;
pub(crate) use keepalive::send_ping;
pub(crate) use worker::run_peer_worker;