pub struct Session {Show 15 fields
pub id: SessionId,
pub user_id: Option<UserId>,
pub state: SessionState,
pub vpn_address: Option<VpnAddress>,
pub client_ip: IpAddr,
pub client_port: u16,
pub created_at: DateTime<Utc>,
pub last_activity: DateTime<Utc>,
pub expires_at: DateTime<Utc>,
pub bytes_rx: u64,
pub bytes_tx: u64,
pub packets_rx: u64,
pub packets_tx: u64,
pub client_version: Option<String>,
pub oauth_token: Option<String>,
}Expand description
VPN Session
Fields§
§id: SessionIdUnique session ID
user_id: Option<UserId>Associated user (if authenticated)
state: SessionStateSession state
vpn_address: Option<VpnAddress>Assigned VPN IP address
client_ip: IpAddrClient’s real IP address
client_port: u16Client’s port
created_at: DateTime<Utc>Session creation time
last_activity: DateTime<Utc>Last activity time
expires_at: DateTime<Utc>Session expiration time
bytes_rx: u64Bytes received from client
bytes_tx: u64Bytes sent to client
packets_rx: u64Packets received from client
packets_tx: u64Packets sent to client
client_version: Option<String>Client user agent / version
oauth_token: Option<String>OAuth2 access token (if using OAuth2 auth)
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Session
impl<'de> Deserialize<'de> for Session
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
Auto Trait Implementations§
impl Freeze for Session
impl RefUnwindSafe for Session
impl Send for Session
impl Sync for Session
impl Unpin for Session
impl UnwindSafe for Session
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