pub struct CastHeader {Show 14 fields
pub version: u32,
pub width: u16,
pub height: u16,
pub timestamp: i64,
pub command: String,
pub src_node: String,
pub src_node_id: String,
pub src_node_tags: Vec<String>,
pub src_node_user_id: i64,
pub src_node_user: String,
pub env: BTreeMap<String, String>,
pub ssh_user: String,
pub local_user: String,
pub connection_id: String,
}Expand description
The header of an asciinema cast file (Go sessionrecording.CastHeader).
Only the fields Tailscale SSH sets are modelled; the Kubernetes-proxy fields have no counterpart in this fork. Field order matches the Go struct so the emitted JSON is byte-comparable.
Fields§
§version: u32asciinema file format version. Always 2.
width: u16Terminal width in characters; non-zero for PTY sessions.
height: u16Terminal height in characters; non-zero for PTY sessions.
timestamp: i64Unix timestamp of when the recording started.
command: StringThe command that was executed. Empty for shell sessions.
src_node: StringFQDN (MagicDNS name, no trailing dot) of the node originating the connection.
src_node_id: StringStable node id of the node originating the connection.
Tags on the originating node, if it is tagged.
src_node_user_id: i64User id of the originating node’s owner, if it is not tagged.
src_node_user: StringLogin name of the originating node’s owner, if it is not tagged.
env: BTreeMap<String, String>Session environment. Go sets only TERM.
ssh_user: StringThe username as presented by the client.
local_user: StringThe effective local username on the server.
connection_id: StringIdentifier of the SSH connection this session belongs to; shared across sessions multiplexed on one connection.
Implementations§
Trait Implementations§
Source§impl Clone for CastHeader
impl Clone for CastHeader
Source§fn clone(&self) -> CastHeader
fn clone(&self) -> CastHeader
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CastHeader
impl Debug for CastHeader
Source§impl Default for CastHeader
impl Default for CastHeader
Source§fn default() -> CastHeader
fn default() -> CastHeader
impl Eq for CastHeader
Source§impl PartialEq for CastHeader
impl PartialEq for CastHeader
Source§impl Serialize for CastHeader
impl Serialize for CastHeader
impl StructuralPartialEq for CastHeader
Auto Trait Implementations§
impl Freeze for CastHeader
impl RefUnwindSafe for CastHeader
impl Send for CastHeader
impl Sync for CastHeader
impl Unpin for CastHeader
impl UnsafeUnpin for CastHeader
impl UnwindSafe for CastHeader
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<A, T> DynMessage<A> for T
impl<A, T> DynMessage<A> for T
Source§fn handle_dyn<'a>(
self: Box<T>,
state: &'a mut A,
actor_ref: ActorRef<A>,
tx: Option<Sender<Result<Box<dyn Any + Send>, SendError<Box<dyn Any + Send>, Box<dyn Any + Send>>>>>,
stop: &'a mut bool,
) -> Pin<Box<dyn Future<Output = Result<(), Box<dyn ReplyError>>> + Send + 'a>>
fn handle_dyn<'a>( self: Box<T>, state: &'a mut A, actor_ref: ActorRef<A>, tx: Option<Sender<Result<Box<dyn Any + Send>, SendError<Box<dyn Any + Send>, Box<dyn Any + Send>>>>>, stop: &'a mut bool, ) -> Pin<Box<dyn Future<Output = Result<(), Box<dyn ReplyError>>> + Send + 'a>>
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
key and return true if they are equal.impl<T> ErasedDestructor for Twhere
T: 'static,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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