ws: remove peer from all torrent maps when connection is closed

This commit is contained in:
Joakim Frostegård 2022-07-05 13:13:53 +02:00
parent b30da1a930
commit 720ceacf99
5 changed files with 134 additions and 17 deletions

View file

@ -4,6 +4,7 @@ use aquatic_common::access_list::AccessListArcSwap;
use aquatic_common::CanonicalSocketAddr;
pub use aquatic_common::ValidUntil;
use aquatic_ws_protocol::{InfoHash, PeerId};
#[derive(Default, Clone)]
pub struct State {
@ -28,3 +29,12 @@ pub struct ConnectionMeta {
pub peer_addr: CanonicalSocketAddr,
pub pending_scrape_id: Option<PendingScrapeId>,
}
#[derive(Clone, Copy, Debug)]
pub enum SwarmControlMessage {
ConnectionClosed {
info_hash: InfoHash,
peer_id: PeerId,
peer_addr: CanonicalSocketAddr,
},
}