syscall-napi 0.0.8 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,11 +4,11 @@ Node.js module to perform promise-based asynchronous syscalls
4
4
 
5
5
  ## About
6
6
 
7
- This module allows to execute syscalls on linux based systems. NAPI is being used to stay ABI compatible with future Node.js versions. The focus of this module is not (yet) performance, but providing a clear promise based interface to the linux kernel.
7
+ This module allows to execute syscalls on linux based systems. NAPI is being used to stay ABI compatible with future Node.js versions. The focus of this module is not (yet) performance, but providing a clear interface to the linux kernel.
8
8
 
9
9
  ## Requirements
10
10
 
11
- - `Node.js >= 12` as ES6 modules are used.
11
+ - `Node.js >= 22` as this is a native TypeScript module
12
12
 
13
13
  ## Installation
14
14
 
@@ -24,36 +24,32 @@ yarn install syscall-napi
24
24
 
25
25
  ## API
26
26
 
27
- ### `sys.syscall(...params)` => `Promise(BigInt)`
28
- Execute syscall asynchronously.
27
+ ### `syscall({ syscallNumber: bigint, args: (bigint | Uint8Array)[] })` => `{ errno: undefined, ret: BigInt } | { errno: number, ret: undefined }`
29
28
 
30
29
  Supported argument types:
31
30
  - `BigInt` arguments are converted to native integers
32
- - `Buffer` arguments are converted to the address of the buffer in memory. The native code holds a reference to this buffer so it will not by freed by the garbage collector while the syscall is running. During a syscall the referenced buffer instance should not be modified. Be aware that passing buffers of wrong sizes (i.e. smaller than the kernel expects) leads to undefined behaviour as it may overwrite vital data or crash the application.
31
+ - `Buffer` arguments are converted to the address of the buffer in memory. Be aware that passing buffers of wrong sizes (i.e. smaller than the kernel expects) leads to undefined behaviour as it may overwrite vital data or crash the application.
33
32
 
34
33
  In case of an error the promise is rejected with an error object.
35
34
 
36
35
  For params see `man 2 syscall`.
37
-
38
- ### `sys.syscall.sync(...params)` => `BigInt`
39
-
40
- Same as above, but synchronous.
41
36
 
42
- ### `sys.__NR_xxx`
43
- This module provides syscall numbers (e.g. `__NR_getpid`) that are defined in `uapi/asm-generic/unistd.h` in the linux kernel.
37
+ ### `syscallNumbers.{syscall}`
38
+ This module provides syscall numbers (e.g. `getpid`) that are defined in `uapi/asm-generic/unistd.h` in the linux kernel.
44
39
 
45
40
  ## Minimal example
46
41
 
47
42
  ```javascript
48
- import sys from "syscall-napi";
49
-
50
- process.nextTick(async () => {
51
- try {
52
- const pid = await sys.syscall(sys.__NR_getpid);
53
- console.log(`pid = ${pid}`);
54
- } catch (ex) {
55
- console.error(ex);
56
- process.exitCode = -1;
57
- }
43
+ import { syscall, syscallNumbers } from "syscall-napi";
44
+
45
+ const { errno, ret: pid } = syscall({
46
+ syscallNumber: syscallNumbers.__NR_getpid,
47
+ args: []
58
48
  });
49
+
50
+ if (errno === undefined) {
51
+ console.log(`pid = ${pid}`);
52
+ } else {
53
+ console.log(`errno = ${errno}`);
54
+ }
59
55
  ```
@@ -0,0 +1,340 @@
1
+ const syscallNumbers = {
2
+ io_setup: 243n,
3
+ io_destroy: 244n,
4
+ io_submit: 246n,
5
+ io_cancel: 247n,
6
+ io_getevents: 245n,
7
+ setxattr: 226n,
8
+ lsetxattr: 227n,
9
+ fsetxattr: 228n,
10
+ getxattr: 229n,
11
+ lgetxattr: 230n,
12
+ fgetxattr: 231n,
13
+ listxattr: 232n,
14
+ llistxattr: 233n,
15
+ flistxattr: 234n,
16
+ removexattr: 235n,
17
+ lremovexattr: 236n,
18
+ fremovexattr: 237n,
19
+ getcwd: 183n,
20
+ lookup_dcookie: 249n,
21
+ eventfd2: 356n,
22
+ epoll_create1: 357n,
23
+ epoll_ctl: 251n,
24
+ epoll_pwait: 346n,
25
+ dup: 41n,
26
+ dup3: 358n,
27
+ inotify_init1: 360n,
28
+ inotify_add_watch: 317n,
29
+ inotify_rm_watch: 318n,
30
+ ioctl: 54n,
31
+ ioprio_set: 314n,
32
+ ioprio_get: 315n,
33
+ flock: 143n,
34
+ mknodat: 324n,
35
+ mkdirat: 323n,
36
+ unlinkat: 328n,
37
+ symlinkat: 331n,
38
+ linkat: 330n,
39
+ renameat: 329n,
40
+ umount2: 52n,
41
+ mount: 21n,
42
+ pivot_root: 218n,
43
+ nfsservctl: 169n,
44
+ fallocate: 352n,
45
+ faccessat: 334n,
46
+ chdir: 12n,
47
+ fchdir: 133n,
48
+ chroot: 61n,
49
+ fchmod: 94n,
50
+ fchmodat: 333n,
51
+ fchownat: 325n,
52
+ fchown: 95n,
53
+ openat: 322n,
54
+ close: 6n,
55
+ vhangup: 111n,
56
+ pipe2: 359n,
57
+ quotactl: 131n,
58
+ getdents64: 217n,
59
+ read: 3n,
60
+ write: 4n,
61
+ readv: 145n,
62
+ writev: 146n,
63
+ pread64: 180n,
64
+ pwrite64: 181n,
65
+ preadv: 361n,
66
+ pwritev: 362n,
67
+ pselect6: 335n,
68
+ ppoll: 336n,
69
+ signalfd4: 355n,
70
+ vmsplice: 343n,
71
+ splice: 340n,
72
+ tee: 342n,
73
+ readlinkat: 332n,
74
+ sync: 36n,
75
+ fsync: 118n,
76
+ fdatasync: 148n,
77
+ sync_file_range2: 341n,
78
+ timerfd_create: 350n,
79
+ timerfd_settime: 353n,
80
+ timerfd_gettime: 354n,
81
+ utimensat: 348n,
82
+ acct: 51n,
83
+ capget: 184n,
84
+ capset: 185n,
85
+ personality: 136n,
86
+ exit: 1n,
87
+ exit_group: 248n,
88
+ waitid: 280n,
89
+ set_tid_address: 256n,
90
+ unshare: 337n,
91
+ futex: 240n,
92
+ set_robust_list: 338n,
93
+ get_robust_list: 339n,
94
+ nanosleep: 162n,
95
+ getitimer: 105n,
96
+ setitimer: 104n,
97
+ kexec_load: 347n,
98
+ init_module: 128n,
99
+ delete_module: 129n,
100
+ timer_create: 257n,
101
+ timer_gettime: 259n,
102
+ timer_getoverrun: 260n,
103
+ timer_settime: 258n,
104
+ timer_delete: 261n,
105
+ clock_settime: 262n,
106
+ clock_gettime: 263n,
107
+ clock_getres: 264n,
108
+ clock_nanosleep: 265n,
109
+ syslog: 103n,
110
+ ptrace: 26n,
111
+ sched_setparam: 154n,
112
+ sched_setscheduler: 156n,
113
+ sched_getscheduler: 157n,
114
+ sched_getparam: 155n,
115
+ sched_setaffinity: 241n,
116
+ sched_getaffinity: 242n,
117
+ sched_yield: 158n,
118
+ sched_get_priority_max: 159n,
119
+ sched_get_priority_min: 160n,
120
+ sched_rr_get_interval: 161n,
121
+ restart_syscall: 0n,
122
+ kill: 37n,
123
+ tkill: 238n,
124
+ tgkill: 268n,
125
+ sigaltstack: 186n,
126
+ rt_sigsuspend: 179n,
127
+ rt_sigaction: 174n,
128
+ rt_sigprocmask: 175n,
129
+ rt_sigpending: 176n,
130
+ rt_sigtimedwait: 177n,
131
+ rt_sigqueueinfo: 178n,
132
+ rt_sigreturn: 173n,
133
+ setpriority: 97n,
134
+ getpriority: 96n,
135
+ reboot: 88n,
136
+ setregid: 71n,
137
+ setgid: 46n,
138
+ setreuid: 70n,
139
+ setuid: 23n,
140
+ setresuid: 164n,
141
+ getresuid: 165n,
142
+ setresgid: 170n,
143
+ getresgid: 171n,
144
+ setfsuid: 138n,
145
+ setfsgid: 139n,
146
+ times: 43n,
147
+ setpgid: 57n,
148
+ getpgid: 132n,
149
+ getsid: 147n,
150
+ setsid: 66n,
151
+ getgroups: 80n,
152
+ setgroups: 81n,
153
+ uname: 122n,
154
+ sethostname: 74n,
155
+ setdomainname: 121n,
156
+ setrlimit: 75n,
157
+ getrusage: 77n,
158
+ umask: 60n,
159
+ prctl: 172n,
160
+ getcpu: 345n,
161
+ gettimeofday: 78n,
162
+ settimeofday: 79n,
163
+ adjtimex: 124n,
164
+ getpid: 20n,
165
+ getppid: 64n,
166
+ getuid: 24n,
167
+ geteuid: 49n,
168
+ getgid: 47n,
169
+ getegid: 50n,
170
+ gettid: 224n,
171
+ sysinfo: 116n,
172
+ mq_open: 274n,
173
+ mq_unlink: 275n,
174
+ mq_timedsend: 276n,
175
+ mq_timedreceive: 277n,
176
+ mq_notify: 278n,
177
+ mq_getsetattr: 279n,
178
+ msgget: 303n,
179
+ msgctl: 304n,
180
+ msgrcv: 302n,
181
+ msgsnd: 301n,
182
+ semget: 299n,
183
+ semctl: 300n,
184
+ semtimedop: 312n,
185
+ semop: 298n,
186
+ shmget: 307n,
187
+ shmctl: 308n,
188
+ shmat: 305n,
189
+ shmdt: 306n,
190
+ socket: 281n,
191
+ socketpair: 288n,
192
+ bind: 282n,
193
+ listen: 284n,
194
+ accept: 285n,
195
+ connect: 283n,
196
+ getsockname: 286n,
197
+ getpeername: 287n,
198
+ sendto: 290n,
199
+ recvfrom: 292n,
200
+ setsockopt: 294n,
201
+ getsockopt: 295n,
202
+ shutdown: 293n,
203
+ sendmsg: 296n,
204
+ recvmsg: 297n,
205
+ readahead: 225n,
206
+ brk: 45n,
207
+ munmap: 91n,
208
+ mremap: 163n,
209
+ add_key: 309n,
210
+ request_key: 310n,
211
+ keyctl: 311n,
212
+ clone: 120n,
213
+ execve: 11n,
214
+ swapon: 87n,
215
+ swapoff: 115n,
216
+ mprotect: 125n,
217
+ msync: 144n,
218
+ mlock: 150n,
219
+ munlock: 151n,
220
+ mlockall: 152n,
221
+ munlockall: 153n,
222
+ mincore: 219n,
223
+ madvise: 220n,
224
+ remap_file_pages: 253n,
225
+ mbind: 319n,
226
+ get_mempolicy: 320n,
227
+ set_mempolicy: 321n,
228
+ migrate_pages: 400n,
229
+ move_pages: 344n,
230
+ rt_tgsigqueueinfo: 363n,
231
+ perf_event_open: 364n,
232
+ accept4: 366n,
233
+ recvmmsg: 365n,
234
+ wait4: 114n,
235
+ prlimit64: 369n,
236
+ fanotify_init: 367n,
237
+ fanotify_mark: 368n,
238
+ name_to_handle_at: 370n,
239
+ open_by_handle_at: 371n,
240
+ clock_adjtime: 372n,
241
+ syncfs: 373n,
242
+ setns: 375n,
243
+ sendmmsg: 374n,
244
+ process_vm_readv: 376n,
245
+ process_vm_writev: 377n,
246
+ kcmp: 378n,
247
+ finit_module: 379n,
248
+ sched_setattr: 380n,
249
+ sched_getattr: 381n,
250
+ renameat2: 382n,
251
+ seccomp: 383n,
252
+ getrandom: 384n,
253
+ memfd_create: 385n,
254
+ bpf: 386n,
255
+ execveat: 387n,
256
+ userfaultfd: 388n,
257
+ membarrier: 389n,
258
+ mlock2: 390n,
259
+ copy_file_range: 391n,
260
+ preadv2: 392n,
261
+ pwritev2: 393n,
262
+ pkey_mprotect: 394n,
263
+ pkey_alloc: 395n,
264
+ pkey_free: 396n,
265
+ statx: 397n,
266
+ io_pgetevents: 399n,
267
+ rseq: 398n,
268
+ kexec_file_load: 401n,
269
+ clock_gettime64: 403n,
270
+ clock_settime64: 404n,
271
+ clock_adjtime64: 405n,
272
+ clock_getres_time64: 406n,
273
+ clock_nanosleep_time64: 407n,
274
+ timer_gettime64: 408n,
275
+ timer_settime64: 409n,
276
+ timerfd_gettime64: 410n,
277
+ timerfd_settime64: 411n,
278
+ utimensat_time64: 412n,
279
+ pselect6_time64: 413n,
280
+ ppoll_time64: 414n,
281
+ io_pgetevents_time64: 416n,
282
+ recvmmsg_time64: 417n,
283
+ mq_timedsend_time64: 418n,
284
+ mq_timedreceive_time64: 419n,
285
+ semtimedop_time64: 420n,
286
+ rt_sigtimedwait_time64: 421n,
287
+ futex_time64: 422n,
288
+ sched_rr_get_interval_time64: 423n,
289
+ pidfd_send_signal: 424n,
290
+ io_uring_setup: 425n,
291
+ io_uring_enter: 426n,
292
+ io_uring_register: 427n,
293
+ open_tree: 428n,
294
+ move_mount: 429n,
295
+ fsopen: 430n,
296
+ fsconfig: 431n,
297
+ fsmount: 432n,
298
+ fspick: 433n,
299
+ pidfd_open: 434n,
300
+ clone3: 435n,
301
+ close_range: 436n,
302
+ openat2: 437n,
303
+ pidfd_getfd: 438n,
304
+ faccessat2: 439n,
305
+ process_madvise: 440n,
306
+ epoll_pwait2: 441n,
307
+ mount_setattr: 442n,
308
+ quotactl_fd: 443n,
309
+ landlock_create_ruleset: 444n,
310
+ landlock_add_rule: 445n,
311
+ landlock_restrict_self: 446n,
312
+ process_mrelease: 448n,
313
+ futex_waitv: 449n,
314
+ set_mempolicy_home_node: 450n,
315
+ fcntl: 55n,
316
+ statfs: 99n,
317
+ fstatfs: 100n,
318
+ truncate: 92n,
319
+ ftruncate: 93n,
320
+ lseek: 19n,
321
+ sendfile: 187n,
322
+ fstat: 108n,
323
+ stat: 106n,
324
+ lstat: 107n,
325
+ fcntl64: 221n,
326
+ statfs64: 266n,
327
+ fstatfs64: 267n,
328
+ truncate64: 193n,
329
+ ftruncate64: 194n,
330
+ sendfile64: 239n,
331
+ fstatat64: 327n,
332
+ fstat64: 197n,
333
+ mmap2: 192n,
334
+ stat64: 195n,
335
+ lstat64: 196n,
336
+ };
337
+
338
+ export {
339
+ syscallNumbers
340
+ };
@@ -0,0 +1,314 @@
1
+ const syscallNumbers = {
2
+ io_setup: 0n,
3
+ io_destroy: 1n,
4
+ io_submit: 2n,
5
+ io_cancel: 3n,
6
+ io_getevents: 4n,
7
+ setxattr: 5n,
8
+ lsetxattr: 6n,
9
+ fsetxattr: 7n,
10
+ getxattr: 8n,
11
+ lgetxattr: 9n,
12
+ fgetxattr: 10n,
13
+ listxattr: 11n,
14
+ llistxattr: 12n,
15
+ flistxattr: 13n,
16
+ removexattr: 14n,
17
+ lremovexattr: 15n,
18
+ fremovexattr: 16n,
19
+ getcwd: 17n,
20
+ lookup_dcookie: 18n,
21
+ eventfd2: 19n,
22
+ epoll_create1: 20n,
23
+ epoll_ctl: 21n,
24
+ epoll_pwait: 22n,
25
+ dup: 23n,
26
+ dup3: 24n,
27
+ inotify_init1: 26n,
28
+ inotify_add_watch: 27n,
29
+ inotify_rm_watch: 28n,
30
+ ioctl: 29n,
31
+ ioprio_set: 30n,
32
+ ioprio_get: 31n,
33
+ flock: 32n,
34
+ mknodat: 33n,
35
+ mkdirat: 34n,
36
+ unlinkat: 35n,
37
+ symlinkat: 36n,
38
+ linkat: 37n,
39
+ renameat: 38n,
40
+ umount2: 39n,
41
+ mount: 40n,
42
+ pivot_root: 41n,
43
+ nfsservctl: 42n,
44
+ fallocate: 47n,
45
+ faccessat: 48n,
46
+ chdir: 49n,
47
+ fchdir: 50n,
48
+ chroot: 51n,
49
+ fchmod: 52n,
50
+ fchmodat: 53n,
51
+ fchownat: 54n,
52
+ fchown: 55n,
53
+ openat: 56n,
54
+ close: 57n,
55
+ vhangup: 58n,
56
+ pipe2: 59n,
57
+ quotactl: 60n,
58
+ getdents64: 61n,
59
+ read: 63n,
60
+ write: 64n,
61
+ readv: 65n,
62
+ writev: 66n,
63
+ pread64: 67n,
64
+ pwrite64: 68n,
65
+ preadv: 69n,
66
+ pwritev: 70n,
67
+ pselect6: 72n,
68
+ ppoll: 73n,
69
+ signalfd4: 74n,
70
+ vmsplice: 75n,
71
+ splice: 76n,
72
+ tee: 77n,
73
+ readlinkat: 78n,
74
+ sync: 81n,
75
+ fsync: 82n,
76
+ fdatasync: 83n,
77
+ sync_file_range: 84n,
78
+ timerfd_create: 85n,
79
+ timerfd_settime: 86n,
80
+ timerfd_gettime: 87n,
81
+ utimensat: 88n,
82
+ acct: 89n,
83
+ capget: 90n,
84
+ capset: 91n,
85
+ personality: 92n,
86
+ exit: 93n,
87
+ exit_group: 94n,
88
+ waitid: 95n,
89
+ set_tid_address: 96n,
90
+ unshare: 97n,
91
+ futex: 98n,
92
+ set_robust_list: 99n,
93
+ get_robust_list: 100n,
94
+ nanosleep: 101n,
95
+ getitimer: 102n,
96
+ setitimer: 103n,
97
+ kexec_load: 104n,
98
+ init_module: 105n,
99
+ delete_module: 106n,
100
+ timer_create: 107n,
101
+ timer_gettime: 108n,
102
+ timer_getoverrun: 109n,
103
+ timer_settime: 110n,
104
+ timer_delete: 111n,
105
+ clock_settime: 112n,
106
+ clock_gettime: 113n,
107
+ clock_getres: 114n,
108
+ clock_nanosleep: 115n,
109
+ syslog: 116n,
110
+ ptrace: 117n,
111
+ sched_setparam: 118n,
112
+ sched_setscheduler: 119n,
113
+ sched_getscheduler: 120n,
114
+ sched_getparam: 121n,
115
+ sched_setaffinity: 122n,
116
+ sched_getaffinity: 123n,
117
+ sched_yield: 124n,
118
+ sched_get_priority_max: 125n,
119
+ sched_get_priority_min: 126n,
120
+ sched_rr_get_interval: 127n,
121
+ restart_syscall: 128n,
122
+ kill: 129n,
123
+ tkill: 130n,
124
+ tgkill: 131n,
125
+ sigaltstack: 132n,
126
+ rt_sigsuspend: 133n,
127
+ rt_sigaction: 134n,
128
+ rt_sigprocmask: 135n,
129
+ rt_sigpending: 136n,
130
+ rt_sigtimedwait: 137n,
131
+ rt_sigqueueinfo: 138n,
132
+ rt_sigreturn: 139n,
133
+ setpriority: 140n,
134
+ getpriority: 141n,
135
+ reboot: 142n,
136
+ setregid: 143n,
137
+ setgid: 144n,
138
+ setreuid: 145n,
139
+ setuid: 146n,
140
+ setresuid: 147n,
141
+ getresuid: 148n,
142
+ setresgid: 149n,
143
+ getresgid: 150n,
144
+ setfsuid: 151n,
145
+ setfsgid: 152n,
146
+ times: 153n,
147
+ setpgid: 154n,
148
+ getpgid: 155n,
149
+ getsid: 156n,
150
+ setsid: 157n,
151
+ getgroups: 158n,
152
+ setgroups: 159n,
153
+ uname: 160n,
154
+ sethostname: 161n,
155
+ setdomainname: 162n,
156
+ getrlimit: 163n,
157
+ setrlimit: 164n,
158
+ getrusage: 165n,
159
+ umask: 166n,
160
+ prctl: 167n,
161
+ getcpu: 168n,
162
+ gettimeofday: 169n,
163
+ settimeofday: 170n,
164
+ adjtimex: 171n,
165
+ getpid: 172n,
166
+ getppid: 173n,
167
+ getuid: 174n,
168
+ geteuid: 175n,
169
+ getgid: 176n,
170
+ getegid: 177n,
171
+ gettid: 178n,
172
+ sysinfo: 179n,
173
+ mq_open: 180n,
174
+ mq_unlink: 181n,
175
+ mq_timedsend: 182n,
176
+ mq_timedreceive: 183n,
177
+ mq_notify: 184n,
178
+ mq_getsetattr: 185n,
179
+ msgget: 186n,
180
+ msgctl: 187n,
181
+ msgrcv: 188n,
182
+ msgsnd: 189n,
183
+ semget: 190n,
184
+ semctl: 191n,
185
+ semtimedop: 192n,
186
+ semop: 193n,
187
+ shmget: 194n,
188
+ shmctl: 195n,
189
+ shmat: 196n,
190
+ shmdt: 197n,
191
+ socket: 198n,
192
+ socketpair: 199n,
193
+ bind: 200n,
194
+ listen: 201n,
195
+ accept: 202n,
196
+ connect: 203n,
197
+ getsockname: 204n,
198
+ getpeername: 205n,
199
+ sendto: 206n,
200
+ recvfrom: 207n,
201
+ setsockopt: 208n,
202
+ getsockopt: 209n,
203
+ shutdown: 210n,
204
+ sendmsg: 211n,
205
+ recvmsg: 212n,
206
+ readahead: 213n,
207
+ brk: 214n,
208
+ munmap: 215n,
209
+ mremap: 216n,
210
+ add_key: 217n,
211
+ request_key: 218n,
212
+ keyctl: 219n,
213
+ clone: 220n,
214
+ execve: 221n,
215
+ swapon: 224n,
216
+ swapoff: 225n,
217
+ mprotect: 226n,
218
+ msync: 227n,
219
+ mlock: 228n,
220
+ munlock: 229n,
221
+ mlockall: 230n,
222
+ munlockall: 231n,
223
+ mincore: 232n,
224
+ madvise: 233n,
225
+ remap_file_pages: 234n,
226
+ mbind: 235n,
227
+ get_mempolicy: 236n,
228
+ set_mempolicy: 237n,
229
+ migrate_pages: 238n,
230
+ move_pages: 239n,
231
+ rt_tgsigqueueinfo: 240n,
232
+ perf_event_open: 241n,
233
+ accept4: 242n,
234
+ recvmmsg: 243n,
235
+ arch_specific_syscall: 244n,
236
+ wait4: 260n,
237
+ prlimit64: 261n,
238
+ fanotify_init: 262n,
239
+ fanotify_mark: 263n,
240
+ name_to_handle_at: 264n,
241
+ open_by_handle_at: 265n,
242
+ clock_adjtime: 266n,
243
+ syncfs: 267n,
244
+ setns: 268n,
245
+ sendmmsg: 269n,
246
+ process_vm_readv: 270n,
247
+ process_vm_writev: 271n,
248
+ kcmp: 272n,
249
+ finit_module: 273n,
250
+ sched_setattr: 274n,
251
+ sched_getattr: 275n,
252
+ renameat2: 276n,
253
+ seccomp: 277n,
254
+ getrandom: 278n,
255
+ memfd_create: 279n,
256
+ bpf: 280n,
257
+ execveat: 281n,
258
+ userfaultfd: 282n,
259
+ membarrier: 283n,
260
+ mlock2: 284n,
261
+ copy_file_range: 285n,
262
+ preadv2: 286n,
263
+ pwritev2: 287n,
264
+ pkey_mprotect: 288n,
265
+ pkey_alloc: 289n,
266
+ pkey_free: 290n,
267
+ statx: 291n,
268
+ io_pgetevents: 292n,
269
+ rseq: 293n,
270
+ kexec_file_load: 294n,
271
+ pidfd_send_signal: 424n,
272
+ io_uring_setup: 425n,
273
+ io_uring_enter: 426n,
274
+ io_uring_register: 427n,
275
+ open_tree: 428n,
276
+ move_mount: 429n,
277
+ fsopen: 430n,
278
+ fsconfig: 431n,
279
+ fsmount: 432n,
280
+ fspick: 433n,
281
+ pidfd_open: 434n,
282
+ clone3: 435n,
283
+ close_range: 436n,
284
+ openat2: 437n,
285
+ pidfd_getfd: 438n,
286
+ faccessat2: 439n,
287
+ process_madvise: 440n,
288
+ epoll_pwait2: 441n,
289
+ mount_setattr: 442n,
290
+ quotactl_fd: 443n,
291
+ landlock_create_ruleset: 444n,
292
+ landlock_add_rule: 445n,
293
+ landlock_restrict_self: 446n,
294
+ memfd_secret: 447n,
295
+ process_mrelease: 448n,
296
+ futex_waitv: 449n,
297
+ set_mempolicy_home_node: 450n,
298
+ syscalls: 451n,
299
+ fcntl: 25n,
300
+ statfs: 43n,
301
+ fstatfs: 44n,
302
+ truncate: 45n,
303
+ ftruncate: 46n,
304
+ lseek: 62n,
305
+ sendfile: 71n,
306
+ newfstatat: 79n,
307
+ fstat: 80n,
308
+ mmap: 222n,
309
+ fadvise64: 223n,
310
+ };
311
+
312
+ export {
313
+ syscallNumbers
314
+ };