1 unstable release
0.1.0 | Aug 19, 2020 |
---|
#224 in No standard library
152 downloads per month
Used in 6 crates
(5 directly)
38KB
799 lines
crt0stack
Create the initial stack frame to start an ELF binary on Linux
Examples
use crt0stack::{Builder, Entry};
let mut stack = [1u8; 512];
let stack = stack.as_mut();
let mut builder = Builder::new(stack);
builder.push("/init").unwrap();
let mut builder = builder.done().unwrap();
builder.push("HOME=/root").unwrap();
let mut builder = builder.done().unwrap();
let auxv = [
Entry::Gid(1000),
Entry::Uid(1000),
Entry::Platform("x86_64"),
Entry::ExecFilename("/init"),
];
auxv.iter().for_each(|e| builder.push(e).unwrap());
let handle = builder.done().unwrap();
License: Apache-2.0