diff options
| author | tv <tv@krebsco.de> | 2026-11-07 22:35:21 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-07 22:35:21 +0100 |
| commit | c3fde0fdd410902125f006f0a7d77ca030cb9061 (patch) | |
| tree | d5506388f0f94b77c5172c96074ff68b54186726 /src/swarm/peer | |
| parent | 2ff408c024a0ef5db2a770e8a091783f1b6d9cfc (diff) | |
signatures: on their own (SIGNATURES)
Signatures no sync message took go on their own within a second, to
each peer not sent them yet (wire version bumped).
Auth plan M5.
Diffstat (limited to 'src/swarm/peer')
| -rw-r--r-- | src/swarm/peer/inbound.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/swarm/peer/inbound.rs b/src/swarm/peer/inbound.rs index d25c7de..e261702 100644 --- a/src/swarm/peer/inbound.rs +++ b/src/swarm/peer/inbound.rs @@ -242,6 +242,16 @@ pub(crate) async fn handle_message( heard_heads(state, &peer, &remote); on_status(state, &peer, &remote, reactivated).await; } + transport::ParsedMessage::Signatures(message) => { + // From members, of our epoch: checking costs (`Signatures::offer`). + let member = matches!( + peer_state.lock().await.standing, + crate::state::Standing::Member { .. } + ); + if member && same_epoch { + crate::swarm::signatures::received(state, message).await; + } + } transport::ParsedMessage::Probe(request) => { crate::swarm::working_links::answer(state, &peer, request).await; } |
