pub struct SessionMigration {
pub migration_version: SessionMigration_MigrationVersion,
pub session_id: String,
pub generation: i64,
pub from_binding: TransportBinding,
pub to_binding: TransportBinding,
pub preserved_capabilities: Option<Vec<Capability>>,
pub rotated_keys: Option<bool>,
pub migrated_at: Timestamp,
pub reason: Option<String>,
pub signer: ActorId,
pub signature: SignatureEnvelope,
}Expand description
Signed record describing a TrustForge session being moved between transports while preserving session_id, generation, and trust continuity (TF-0003 “session migration”).
Fields§
§migration_version: SessionMigration_MigrationVersionVersion of the session-migration schema itself.
session_id: StringThe session id that survives the migration. Must equal the pre-migration session id.
generation: i64Migration counter. Increases by 1 per migration; lets receivers detect replays.
from_binding: TransportBinding§to_binding: TransportBinding§preserved_capabilities: Option<Vec<Capability>>Capabilities the migration explicitly preserves.
rotated_keys: Option<bool>Whether the session keys were rotated as part of the migration.
migrated_at: Timestamp§reason: Option<String>Human-readable reason (transport upgrade, network change, peer reconnect, …).
signer: ActorId§signature: SignatureEnvelopeTrait Implementations§
Source§impl Clone for SessionMigration
impl Clone for SessionMigration
Source§fn clone(&self) -> SessionMigration
fn clone(&self) -> SessionMigration
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 SessionMigration
impl Debug for SessionMigration
Source§impl<'de> Deserialize<'de> for SessionMigration
impl<'de> Deserialize<'de> for SessionMigration
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
impl Eq for SessionMigration
Source§impl PartialEq for SessionMigration
impl PartialEq for SessionMigration
Source§fn eq(&self, other: &SessionMigration) -> bool
fn eq(&self, other: &SessionMigration) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for SessionMigration
impl Serialize for SessionMigration
impl StructuralPartialEq for SessionMigration
Auto Trait Implementations§
impl Freeze for SessionMigration
impl RefUnwindSafe for SessionMigration
impl Send for SessionMigration
impl Sync for SessionMigration
impl Unpin for SessionMigration
impl UnsafeUnpin for SessionMigration
impl UnwindSafe for SessionMigration
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more