smoke_elf_minimal.nx source
↩ module page · 12 lines · 398 B
1// Minimal write_elf test: 4 bytes of code, write to stderr (fd 2).
2
3import "syscalls.nx"
4import "elf_writer.nx"
5
6func main() -> i64 {
7 let code: *u8 = sys_mmap(64)
8 code[0] = 0x67; code[1] = 0x80; code[2] = 0x00; code[3] = 0x00 // ret
9 let n: i64 = write_elf(code, 4, 2)
10 if n < 0 { return __syscall(93, 50, 0, 0, 0, 0, 0) }
11 return __syscall(93, 42, 0, 0, 0, 0, 0)
12}