Skip to main content

syscall/
number.rs

1pub const SYS_CLASS: usize = 0xF000_0000;
2pub const SYS_CLASS_PATH: usize = 0x1000_0000;
3pub const SYS_CLASS_FILE: usize = 0x2000_0000;
4
5pub const SYS_ARG: usize = 0x0F00_0000;
6pub const SYS_ARG_SLICE: usize = 0x0100_0000;
7pub const SYS_ARG_MSLICE: usize = 0x0200_0000;
8pub const SYS_ARG_PATH: usize = 0x0300_0000;
9
10pub const SYS_RET: usize = 0x00F0_0000;
11pub const SYS_RET_FILE: usize = 0x0010_0000;
12
13pub const SYS_OPENAT_INTO: usize = SYS_CLASS_PATH | SYS_RET_FILE | 987;
14pub const SYS_UNLINKAT: usize = SYS_CLASS_PATH | 263;
15
16pub const SYS_CLOSE: usize = SYS_CLASS_FILE | 6;
17pub const SYS_DUP_INTO: usize = SYS_CLASS_FILE | SYS_RET_FILE | 988;
18pub const SYS_DUP2: usize = SYS_CLASS_FILE | SYS_RET_FILE | 63;
19pub const SYS_READ: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 3;
20pub const SYS_READ2: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 35;
21pub const SYS_WRITE: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 4;
22pub const SYS_WRITE2: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 45;
23pub const SYS_LSEEK: usize = SYS_CLASS_FILE | 19;
24pub const SYS_FCHMOD: usize = SYS_CLASS_FILE | 94;
25pub const SYS_FCHOWN: usize = SYS_CLASS_FILE | 207;
26pub const SYS_FCNTL: usize = SYS_CLASS_FILE | 55;
27pub const SYS_FEVENT: usize = SYS_CLASS_FILE | 927;
28
29// SYS_CALL, fd, inout buf ptr, inout buf len, flags, metadata buf ptr, metadata buf len
30// TODO: new number for SYS_CALL where flags are sent as 6th argument (using syscall6)
31pub const SYS_CALL: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | SYS_ARG_MSLICE | 0xCA11;
32
33pub const SYS_GETDENTS: usize = SYS_CLASS_FILE | 43;
34
35// TODO: Rename FMAP/FUNMAP to MMAP/MUNMAP
36pub const SYS_FMAP: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 900;
37// TODO: SYS_FUNMAP should be SYS_CLASS_FILE
38pub const SYS_FUNMAP: usize = SYS_CLASS_FILE | 92;
39pub const SYS_MREMAP: usize = 155;
40
41pub const SYS_FLINK: usize = SYS_CLASS_FILE | SYS_ARG_PATH | 9;
42pub const SYS_FPATH: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 928;
43pub const SYS_FRENAME: usize = SYS_CLASS_FILE | SYS_ARG_PATH | 38;
44pub const SYS_FSTAT: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 28;
45pub const SYS_FSTATVFS: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 100;
46pub const SYS_FSYNC: usize = SYS_CLASS_FILE | 118;
47pub const SYS_FTRUNCATE: usize = SYS_CLASS_FILE | 93;
48pub const SYS_FUTIMENS: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 320;
49
50pub const SYS_CLOCK_GETTIME: usize = 265;
51pub const SYS_FUTEX: usize = 240;
52pub const SYS_MPROTECT: usize = 125;
53pub const SYS_MKNS: usize = 984;
54pub const SYS_NANOSLEEP: usize = 162;
55pub const SYS_YIELD: usize = 158;