aboutsummaryrefslogtreecommitdiffstats
path: root/src/state/mod.rs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-30 17:36:23 +0100
committertv <tv@krebsco.de>2026-10-30 17:36:23 +0100
commit0bb7a35141c12a58001b481851d33291d2a6ec98 (patch)
treeefa4f97f3ffe8e26e8ff697be97b05d31f530d43 /src/state/mod.rs
parent236a11a4798574b9c710dde4b97231ff4cade86d (diff)
add links messages
Introduce two new wire messages, LINKS and LINKS_REPLY (swarm::links). A member answers with its links: for each peer, the transport, whether it’s relayed, the RTT, and whether it’s dormant. It answers members only, at most every 5 s. This bumps wire::VERSION to 7. Every build answers, with or without the feature, so every node needs this patch before the map shows anything beyond its own node.
Diffstat (limited to 'src/state/mod.rs')
-rw-r--r--src/state/mod.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/state/mod.rs b/src/state/mod.rs
index fec164d..d7c80c2 100644
--- a/src/state/mod.rs
+++ b/src/state/mod.rs
@@ -112,6 +112,8 @@ pub(crate) struct AppState {
pub(crate) electorate_window: Duration,
/// Chunked transfers served and fetched (`swarm::blob`).
pub(crate) blobs: Arc<crate::swarm::blob::Blobs>,
+ /// LINKS asked and answered, for a map of the swarm (`swarm::links`).
+ pub(crate) links: Arc<crate::swarm::links::Links>,
/// HTTP API users who may write protocol data through the store API
/// (`--protocol-writers`).
pub(crate) protocol_writers: Arc<std::collections::HashSet<String>>,