diff options
| author | tv <tv@krebsco.de> | 2026-10-23 13:11:55 +0200 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-23 13:11:55 +0200 |
| commit | 9d95468df589f34309d1e1cd30ce614b8063a0c8 (patch) | |
| tree | 3a08e875fd46a8263e1e3dbfe8b89cfc413aec2a /src/swarm | |
| parent | 1acd998742b9b15ce754650915ccefd7f6e64939 (diff) | |
ping only from one side
Diffstat (limited to 'src/swarm')
| -rw-r--r-- | src/swarm/peer.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/swarm/peer.rs b/src/swarm/peer.rs index d88e63c..b6c9700 100644 --- a/src/swarm/peer.rs +++ b/src/swarm/peer.rs @@ -410,7 +410,8 @@ pub(crate) async fn run_peer_worker(state: AppState) { let (became_dormant, ping_due, unanswered) = { let mut peer_state = peer_state_mutex.lock().await; let became_dormant = ready && peer_state.check_dormancy(&state.timing, now); - let ping_due = peer_state.take_keepalive_due(&state.timing, now); + let we_ping = state.local_id() < peer.as_str(); + let ping_due = peer_state.take_keepalive_due(&state.timing, we_ping, now); let unanswered = peer_state.take_overdue_sync_reply(now); (became_dormant, ping_due, unanswered) }; |
