pub struct SessionState {
pub dht_nodes: Vec<DhtNodeEntry>,
pub dht_node_id: Option<String>,
pub torrents: Vec<FastResumeData>,
pub banned_peers: Vec<String>,
pub peer_strikes: Vec<PeerStrikeEntry>,
}Expand description
Persisted session state containing a DHT node cache and torrent resume data.
Serializes to bencode for on-disk persistence. The DHT node list allows
faster bootstrapping on restart, and the torrent list holds
irontide_core::FastResumeData entries so torrents can skip piece
verification when the bitfield matches.
Fields§
§dht_nodes: Vec<DhtNodeEntry>Cached DHT routing table nodes for faster bootstrap on restart.
dht_node_id: Option<String>BEP 42-compliant DHT node ID (hex). Persisted so the routing table survives across sessions without regeneration.
torrents: Vec<FastResumeData>Fast resume data for each torrent in the session.
banned_peers: Vec<String>IP addresses of permanently banned peers.
peer_strikes: Vec<PeerStrikeEntry>Per-peer strike counts for the smart ban system.
Implementations§
Source§impl SessionState
impl SessionState
Trait Implementations§
Source§impl Clone for SessionState
impl Clone for SessionState
Source§fn clone(&self) -> SessionState
fn clone(&self) -> SessionState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionState
impl Debug for SessionState
Source§impl Default for SessionState
impl Default for SessionState
Source§impl<'de> Deserialize<'de> for SessionState
impl<'de> Deserialize<'de> for SessionState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for SessionState
impl PartialEq for SessionState
Source§impl Serialize for SessionState
impl Serialize for SessionState
impl StructuralPartialEq for SessionState
Auto Trait Implementations§
impl Freeze for SessionState
impl RefUnwindSafe for SessionState
impl Send for SessionState
impl Sync for SessionState
impl Unpin for SessionState
impl UnsafeUnpin for SessionState
impl UnwindSafe for SessionState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more