pub struct TraceeInfo {
pub ids: Option<Ids>,
pub groups: Option<Vec<u32>>,
pub exe_guest: Option<Vec<u8>>,
pub exe_host: Option<Vec<u8>>,
pub cwd: Option<Vec<u8>>,
pub vfork_parent: Option<i32>,
pub view: Option<Arc<View>>,
pub undumpable: bool,
pub cmdline_prefix: Option<Vec<Vec<u8>>>,
pub pending: Option<PendingExec>,
}Expand description
What the supervisor remembers about one tracee process.
Fields§
§ids: Option<Ids>Virtual identity under -0; None until the process changes it.
groups: Option<Vec<u32>>Supplementary groups set with setgroups under -0.
exe_guest: Option<Vec<u8>>Canonical guest path of the running executable, for /proc/self/exe.
exe_host: Option<Vec<u8>>Host path actually executed, for diagnostics.
cwd: Option<Vec<u8>>Working directory as a canonical guest path, kept here without ptrace (the kernel’s own cwd is then pinned to the supervisor’s alias directory).
vfork_parent: Option<i32>The process this one was vforked from and still shares memory with,
until it execs; a rewritten exec path then has to be restored there.
view: Option<Arc<View>>The view this process lives in; None for the root view.
undumpable: boolSet when the process cleared its dumpable flag with prctl, which the
supervisor answers without doing; an exec resets it as the kernel
resets the flag.
cmdline_prefix: Option<Vec<Vec<u8>>>Arguments that stand in /proc/<pid>/cmdline before the kernel’s
argv[1..]: the interpreter, its argument and the script of a #!
program the guest-stub trampoline loaded, where the kernel’s file
keeps the vector the script was exec’d with.
pending: Option<PendingExec>Set between a rewritten exec and the trampoline’s exec of the real target. Inherited by a child the trampoline forks, which then carries out the exec itself.
Trait Implementations§
Source§impl Clone for TraceeInfo
impl Clone for TraceeInfo
Source§fn clone(&self) -> TraceeInfo
fn clone(&self) -> TraceeInfo
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more