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: usize = SYS_CLASS_PATH | SYS_RET_FILE | 7;
14pub const SYS_OPENAT_WITH_FILTER: usize = SYS_CLASS_PATH | SYS_RET_FILE | 985;
15pub const SYS_UNLINKAT: usize = SYS_CLASS_PATH | 263;
16pub const SYS_UNLINKAT_WITH_FILTER: usize = SYS_CLASS_PATH | 986;
17
18pub const SYS_CLOSE: usize = SYS_CLASS_FILE | 6;
19pub const SYS_DUP: usize = SYS_CLASS_FILE | SYS_RET_FILE | 41;
20pub const SYS_DUP2: usize = SYS_CLASS_FILE | SYS_RET_FILE | 63;
21pub const SYS_READ: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 3;
22pub const SYS_READ2: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 35;
23pub const SYS_WRITE: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 4;
24pub const SYS_WRITE2: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 45;
25pub const SYS_LSEEK: usize = SYS_CLASS_FILE | 19;
26pub const SYS_FCHMOD: usize = SYS_CLASS_FILE | 94;
27pub const SYS_FCHOWN: usize = SYS_CLASS_FILE | 207;
28pub const SYS_FCNTL: usize = SYS_CLASS_FILE | 55;
29pub const SYS_FEVENT: usize = SYS_CLASS_FILE | 927;
30
31// SYS_CALL, fd, inout buf ptr, inout buf len, flags, metadata buf ptr, metadata buf len
32// TODO: new number for SYS_CALL where flags are sent as 6th argument (using syscall6)
33pub const SYS_CALL: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | SYS_ARG_MSLICE | 0xCA11;
34
35pub const SYS_SENDFD: usize = SYS_CLASS_FILE | 34;
36pub const SYS_GETDENTS: usize = SYS_CLASS_FILE | 43;
37
38// TODO: Rename FMAP/FUNMAP to MMAP/MUNMAP
39pub const SYS_FMAP: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 900;
40// TODO: SYS_FUNMAP should be SYS_CLASS_FILE
41pub const SYS_FUNMAP: usize = SYS_CLASS_FILE | 92;
42pub const SYS_MREMAP: usize = 155;
43
44pub const SYS_FLINK: usize = SYS_CLASS_FILE | SYS_ARG_PATH | 9;
45pub const SYS_FPATH: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 928;
46pub const SYS_FRENAME: usize = SYS_CLASS_FILE | SYS_ARG_PATH | 38;
47pub const SYS_FSTAT: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 28;
48pub const SYS_FSTATVFS: usize = SYS_CLASS_FILE | SYS_ARG_MSLICE | 100;
49pub const SYS_FSYNC: usize = SYS_CLASS_FILE | 118;
50pub const SYS_FTRUNCATE: usize = SYS_CLASS_FILE | 93;
51pub const SYS_FUTIMENS: usize = SYS_CLASS_FILE | SYS_ARG_SLICE | 320;
52
53pub const SYS_CLOCK_GETTIME: usize = 265;
54pub const SYS_FUTEX: usize = 240;
55pub const SYS_MPROTECT: usize = 125;
56pub const SYS_MKNS: usize = 984;
57pub const SYS_NANOSLEEP: usize = 162;
58pub const SYS_YIELD: usize = 158;