2 /*--------------------------------------------------------------------*/
3 /*--- FreeBSD-specific syscalls stuff. priv_syswrap-freebsd.h ---*/
4 /*--------------------------------------------------------------------*/
7 This file is part of Valgrind, a dynamic binary instrumentation
10 Copyright (C) 2000-2008 Nicholas Nethercote
12 Copyright (C) 2018-2021 Paul Floyd
15 This program is free software; you can redistribute it and/or
16 modify it under the terms of the GNU General Public License as
17 published by the Free Software Foundation; either version 2 of the
18 License, or (at your option) any later version.
20 This program is distributed in the hope that it will be useful, but
21 WITHOUT ANY WARRANTY; without even the implied warranty of
22 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 General Public License for more details.
25 You should have received a copy of the GNU General Public License
26 along with this program; if not, see <http://www.gnu.org/licenses/>.
28 The GNU General Public License is contained in the file COPYING.
31 #ifndef PRIV_SYSWRAP_FREEBSD_H
32 #define PRIV_SYSWRAP_FREEBSD_H
34 /* requires #include "priv_types_n_macros.h" */
35 #include "priv_types_n_macros.h"
38 // Clone-related functions
39 extern Word
ML_(start_thread_NORETURN
) ( void* arg
);
40 extern Addr
ML_(allocstack
) ( ThreadId tid
);
41 extern void ML_(call_on_new_stack_0_1
) ( Addr stack
, Addr retaddr
,
42 void (*f
)(Word
), Word arg1
);
43 extern SysRes
ML_(do_fork
) ( ThreadId tid
);
44 extern SysRes
ML_(do_vfork
) ( ThreadId tid
);
45 extern SysRes
ML_(do_rfork
) ( ThreadId tid
, Int flags
);
48 DECL_TEMPLATE(freebsd
, sys_syscall
)
49 DECL_TEMPLATE(freebsd
, sys_exit
) // 1
50 DECL_TEMPLATE(freebsd
, sys_fork
) // 2
63 #if defined(VGP_arm64_freebsd)
64 DECL_TEMPLATE(freebsd
, sys_brk
) // 17
68 DECL_TEMPLATE(freebsd
, sys_mount
) // 21
69 DECL_TEMPLATE(freebsd
, sys_unmount
) // 22
70 DECL_TEMPLATE(freebsd
, sys_ptrace
) // 26
71 DECL_TEMPLATE(freebsd
, sys_recvmsg
) // 27
72 DECL_TEMPLATE(freebsd
, sys_sendmsg
) // 28
73 DECL_TEMPLATE(freebsd
, sys_recvfrom
) // 29
74 DECL_TEMPLATE(freebsd
, sys_accept
) // 30
75 DECL_TEMPLATE(freebsd
, sys_getpeername
) // 31
76 DECL_TEMPLATE(freebsd
, sys_getsockname
) // 32
78 DECL_TEMPLATE(freebsd
, sys_chflags
) // 34
79 DECL_TEMPLATE(freebsd
, sys_fchflags
) // 35
84 DECL_TEMPLATE(freebsd
, sys_pipe
) // 42
86 // generic profil redirect to ni_syscall 44
87 // sys_ktrace refirect to ni_syscall 45
89 DECL_TEMPLATE(freebsd
, sys_getlogin
) // 49
90 DECL_TEMPLATE(freebsd
, sys_setlogin
) // 50
92 // generic sigaltstack 53
93 DECL_TEMPLATE(freebsd
, sys_ioctl
) // 54
94 DECL_TEMPLATE(freebsd
, sys_reboot
) // 55
95 DECL_TEMPLATE(freebsd
, sys_revoke
) // 56
97 DECL_TEMPLATE(freebsd
, sys_readlink
) // 58
102 DECL_TEMPLATE(freebsd
, sys_vfork
) // 66
103 DECL_TEMPLATE(freebsd
, sys_sbrk
) // 69
105 // freebsd11 vadvise 72
107 // generic mprotect 74
108 // generic madvise 75
109 // generic mincore 78
110 // generic getgroups 79
111 // generic setgroups 80
112 // generic getpgrp 81
113 // generic setpgid 82
114 // generic setitimer 83
116 DECL_TEMPLATE(freebsd
, sys_swapon
) // 85
117 // generic getitimer 86
118 DECL_TEMPLATE(freebsd
, sys_getdtablesize
) // 90
119 DECL_TEMPLATE(freebsd
, sys_fcntl
) // 92
122 // generic setpriority 96
123 DECL_TEMPLATE(freebsd
, sys_socket
) // 97
124 DECL_TEMPLATE(freebsd
, sys_connect
) // 98
125 // generic getpriority 100
126 DECL_TEMPLATE(freebsd
, sys_bind
) // 104
127 DECL_TEMPLATE(freebsd
, sys_setsockopt
) // 105
128 DECL_TEMPLATE(freebsd
, sys_listen
) // 106
129 // generic gettimeofday 116
130 // generic rusage 117
131 DECL_TEMPLATE(freebsd
, sys_getsockopt
) // 118
134 // generic writev 121
135 // generic settimeofday 122
136 // generic fchown 123
137 // generic fchmod 124
138 // generic setreuid 126
139 // generic setregid 127
140 // generic rename 128
142 DECL_TEMPLATE(freebsd
, sys_mkfifo
) // 132
143 DECL_TEMPLATE(freebsd
, sys_sendto
) // 133
144 DECL_TEMPLATE(freebsd
, sys_shutdown
) // 134
145 DECL_TEMPLATE(freebsd
, sys_socketpair
) // 135
149 DECL_TEMPLATE(freebsd
, sys_adjtime
) // 140
150 // generic setsid 147
151 DECL_TEMPLATE(freebsd
, sys_quotactl
) // 148
152 // unimp nlm_syscall 154
153 //DECL_TEMPLATE(freebsd, sys_nfssvc) 155
154 DECL_TEMPLATE(freebsd
, sys_lgetfh
) // 160
155 DECL_TEMPLATE(freebsd
, sys_getfh
) // 161
156 //DECL_TEMPLATE(freebsd, sys_freebsd4_getdomainname) // 162
157 //DECL_TEMPLATE(freebsd, sys_freebsd4_setdomainname) // 163
158 //DECL_TEMPLATE(freebsd, sys_freebsd4_uname) // 164
159 DECL_TEMPLATE(freebsd
, sys_sysarch
) // 165
160 DECL_TEMPLATE(freebsd
, sys_rtprio
) // 166
161 //DECL_TEMPLATE(freebsd, sys_semsys) 169
162 //DECL_TEMPLATE(freebsd, sys_msgsys) 170
163 //DECL_TEMPLATE(freebsd, sys_shmsys) 171
164 //DECL_TEMPLATE(freebsd, sys_freebsd6_pread) // 173
165 //DECL_TEMPLATE(freebsd, sys_freebsd6_pwrite) // 174
166 DECL_TEMPLATE(freebsd
, sys_setfib
) // 175
167 //DECL_TEMPLATE(freebsd, sys_ntp_adjtime) 176
168 // generic setgid 181
169 DECL_TEMPLATE(freebsd
, sys_setegid
) // 182
170 DECL_TEMPLATE(freebsd
, sys_seteuid
) // 183
171 // __FreeBSD_version 1200031
172 DECL_TEMPLATE(freebsd
, sys_freebsd11_stat
) // 188
173 DECL_TEMPLATE(freebsd
, sys_freebsd11_fstat
) // 189
174 DECL_TEMPLATE(freebsd
, sys_freebsd11_lstat
)// 190
176 DECL_TEMPLATE(freebsd
, sys_pathconf
) // 191
177 DECL_TEMPLATE(freebsd
, sys_fpathconf
) // 192
178 // generic getrlimit 194
179 // generic setrlimit 195
180 // __FreeBSD_version 1200031
181 DECL_TEMPLATE(freebsd
, sys_freebsd11_getdirentries
) // 196
183 //DECL_TEMPLATE(freebsd, sys_freebsd6_mmap) // 197
184 //DECL_TEMPLATE(freebsd, sys_freebsd6_lseek) // 199
185 //DECL_TEMPLATE(freebsd, sys_freebsd6_truncate) // 200
186 //DECL_TEMPLATE(freebsd, sys_freebsd6_ftruncate) // 201
188 DECL_TEMPLATE(freebsd
, sys___sysctl
) // 202
190 // generic munlock 203
191 DECL_TEMPLATE(freebsd
, sys_undelete
) // 205
192 DECL_TEMPLATE(freebsd
, sys_futimes
) // 206
193 // generic getpgod 207
195 #if !defined(VGP_arm64_freebsd)
196 DECL_TEMPLATE(freebsd
, sys_freebsd7___semctl
) // 220
198 DECL_TEMPLATE(freebsd
, sys_semget
) // 221
199 DECL_TEMPLATE(freebsd
, sys_semop
) // 222
200 #if !defined(VGP_arm64_freebsd)
201 DECL_TEMPLATE(freebsd
, sys_freebsd7_msgctl
) // 224
203 DECL_TEMPLATE(freebsd
, sys_msgget
) // 225
204 DECL_TEMPLATE(freebsd
, sys_msgsnd
) // 226
205 DECL_TEMPLATE(freebsd
, sys_msgrcv
) // 227
206 DECL_TEMPLATE(freebsd
, sys_shmat
) // 228
207 #if !defined(VGP_arm64_freebsd)
208 DECL_TEMPLATE(freebsd
, sys_freebsd7_shmctl
) // 229
210 DECL_TEMPLATE(freebsd
, sys_shmdt
) // 230
211 DECL_TEMPLATE(freebsd
, sys_shmget
) // 231
212 DECL_TEMPLATE(freebsd
, sys_clock_gettime
) // 232
213 DECL_TEMPLATE(freebsd
, sys_clock_settime
) // 233
214 DECL_TEMPLATE(freebsd
, sys_clock_getres
) // 234
215 DECL_TEMPLATE(freebsd
, sys_timer_create
) // 235
216 DECL_TEMPLATE(freebsd
, sys_timer_delete
) // 236
217 DECL_TEMPLATE(freebsd
, sys_timer_settime
) // 237
218 DECL_TEMPLATE(freebsd
, sys_timer_gettime
) // 238
219 DECL_TEMPLATE(freebsd
, sys_timer_getoverrun
) // 239
220 // generic sys_nanosleep 240
221 // unimpl ffclock_getcounter 241
222 // unimpl ffclock_setestimate 242
223 // unimpl ffclock_getestimate 243
224 DECL_TEMPLATE(freebsd
, sys_clock_nanosleep
) // 244
225 DECL_TEMPLATE(freebsd
, sys_clock_getcpuclockid2
) // 247
226 // unimpl ntp_gettime 248
227 DECL_TEMPLATE(freebsd
, sys_minherit
) // 250
228 DECL_TEMPLATE(freebsd
, sys_rfork
) // 251
229 DECL_TEMPLATE(freebsd
, sys_issetugid
) // 253
230 // generic lchown 254
231 DECL_TEMPLATE(freebsd
, sys_aio_read
) // 255
232 DECL_TEMPLATE(freebsd
, sys_aio_write
) // 256
233 DECL_TEMPLATE(freebsd
, sys_lio_listio
) // 257
234 // generic sys_getdents 272
235 DECL_TEMPLATE(freebsd
, sys_lchmod
) // 274
236 DECL_TEMPLATE(freebsd
, sys_lutimes
) // 276
238 // unimpl freebsd11_nstat 278
239 // unimpl freebsd11_nfstat 279
240 // unimpl freebsd11_nlstat 280
241 DECL_TEMPLATE(freebsd
, sys_preadv
) // 289
242 DECL_TEMPLATE(freebsd
, sys_pwritev
) // 290
244 DECL_TEMPLATE(freebsd
, sys_fhopen
) // 298
246 // __FreeBSD_version 1200031
247 DECL_TEMPLATE(freebsd
, sys_freebsd11_fhstat
) // 299
249 DECL_TEMPLATE(freebsd
, sys_modnext
) // 300
250 DECL_TEMPLATE(freebsd
, sys_modstat
) // 301
251 DECL_TEMPLATE(freebsd
, sys_modfnext
) // 302
252 DECL_TEMPLATE(freebsd
, sys_modfind
) // 303
254 DECL_TEMPLATE(freebsd
, sys_kldload
) // 304
255 DECL_TEMPLATE(freebsd
, sys_kldunload
) // 305
256 DECL_TEMPLATE(freebsd
, sys_kldfind
) // 306
257 DECL_TEMPLATE(freebsd
, sys_kldnext
) // 307
258 DECL_TEMPLATE(freebsd
, sys_kldstat
) // 308
259 DECL_TEMPLATE(freebsd
, sys_kldfirstmod
) // 309
260 DECL_TEMPLATE(freebsd
, sys_setresuid
) // 311
261 DECL_TEMPLATE(freebsd
, sys_setresgid
) // 312
262 DECL_TEMPLATE(freebsd
, sys_aio_return
) //314
263 DECL_TEMPLATE(freebsd
, sys_aio_suspend
) // 315
264 DECL_TEMPLATE(freebsd
, sys_aio_cancel
) // 316
265 DECL_TEMPLATE(freebsd
, sys_aio_error
) // 317
266 DECL_TEMPLATE(freebsd
, sys_yield
) // 321
267 DECL_TEMPLATE(freebsd
, sys_munlockall
) // 325
268 DECL_TEMPLATE(freebsd
, sys___getcwd
) // 326
269 DECL_TEMPLATE(freebsd
, sys_sched_setparam
) // 327
270 DECL_TEMPLATE(freebsd
, sys_sched_getparam
) // 328
271 DECL_TEMPLATE(freebsd
, sys_sched_setscheduler
) // 329
272 DECL_TEMPLATE(freebsd
, sys_sched_getscheduler
) // 330
273 DECL_TEMPLATE(freebsd
, sys_sched_yield
) // 331
274 DECL_TEMPLATE(freebsd
, sys_sched_get_priority_max
) // 332
275 DECL_TEMPLATE(freebsd
, sys_sched_get_priority_min
) // 333
276 DECL_TEMPLATE(freebsd
, sys_sched_rr_get_interval
) // 334
277 DECL_TEMPLATE(freebsd
, sys_utrace
) // 335
278 DECL_TEMPLATE(freebsd
, sys_kldsym
) // 337
279 DECL_TEMPLATE(freebsd
, sys_jail
) // 338
280 // unimpl SYS_nnpfs_syscall 339
281 DECL_TEMPLATE(freebsd
, sys_sigprocmask
) // 340
282 DECL_TEMPLATE(freebsd
, sys_sigsuspend
) // 341
284 DECL_TEMPLATE(freebsd
, sys_sigpending
) // 343
286 DECL_TEMPLATE(freebsd
, sys_sigtimedwait
) // 345
287 DECL_TEMPLATE(freebsd
, sys_sigwaitinfo
) // 346
288 DECL_TEMPLATE(freebsd
, sys___acl_get_file
) // 347
289 DECL_TEMPLATE(freebsd
, sys___acl_set_file
) // 348
290 DECL_TEMPLATE(freebsd
, sys___acl_get_fd
) // // 349
291 DECL_TEMPLATE(freebsd
, sys___acl_set_fd
) // 350
292 DECL_TEMPLATE(freebsd
, sys___acl_delete_file
) // 351
293 DECL_TEMPLATE(freebsd
, sys___acl_delete_fd
) // 352
294 DECL_TEMPLATE(freebsd
, sys___acl_aclcheck_file
) // 353
295 DECL_TEMPLATE(freebsd
, sys___acl_aclcheck_fd
) // 354
297 DECL_TEMPLATE(freebsd
, sys_extattrctl
) // 355
298 DECL_TEMPLATE(freebsd
, sys_extattr_set_file
) // 356
299 DECL_TEMPLATE(freebsd
, sys_extattr_get_file
) // 357
300 DECL_TEMPLATE(freebsd
, sys_extattr_delete_file
) // 358
301 DECL_TEMPLATE(freebsd
, sys_aio_waitcomplete
) // 350
302 DECL_TEMPLATE(freebsd
, sys_getresuid
) // 360
303 DECL_TEMPLATE(freebsd
, sys_getresgid
) // 361
304 DECL_TEMPLATE(freebsd
, sys_kqueue
) // 362
306 // __FreeBSD_version 1200033
307 DECL_TEMPLATE(freebsd
, sys_freebsd11_kevent
) // 363
309 DECL_TEMPLATE(freebsd
, sys_extattr_set_fd
) // 371
310 DECL_TEMPLATE(freebsd
, sys_extattr_get_fd
) // 372
311 DECL_TEMPLATE(freebsd
, sys_extattr_delete_fd
) // 373
312 DECL_TEMPLATE(freebsd
, sys___setugid
) // 374
313 DECL_TEMPLATE(freebsd
, sys_eaccess
) // 376
314 // unimpl afs3_syscall 377
315 DECL_TEMPLATE(freebsd
, sys_nmount
) // 378
316 // unimpl __mac_get_proc 384
317 // unimpl __mac_set_proc 385
318 // unimpl __mac_get_fd 386
319 // unimpl __mac_get_file 387
320 // unimpl __mac_set_fd 388
321 // unimpl __mac_set_file 389
322 DECL_TEMPLATE(freebsd
, sys_kenv
) // 390
323 DECL_TEMPLATE(freebsd
, sys_lchflags
) // 391
324 DECL_TEMPLATE(freebsd
, sys_uuidgen
) // 392
325 DECL_TEMPLATE(freebsd
, sys_sendfile
) // 292
327 // __FreeBSD_version 1200031
328 DECL_TEMPLATE(freebsd
, sys_freebsd11_getfsstat
) // 395
329 DECL_TEMPLATE(freebsd
, sys_freebsd11_statfs
) // 396
330 DECL_TEMPLATE(freebsd
, sys_freebsd11_fstatfs
) // 397
331 DECL_TEMPLATE(freebsd
, sys_freebsd11_fhstatfs
) // 398
333 // unimpl ksem_close 400
334 // unimpl ksem_post 401
335 // unimpl ksem_wait 402
336 // unimpl ksem_trywait 403
338 // unimpl ksem_init 404
339 // unimpl ksem_open 405
340 // unimpl ksem_unlink 406
341 // unimpl ksem_getvalue 407
343 // unimpl ksem_destroy 408
344 // unimpl __mac_get_pid 409
345 // unimpl __mac_get_link 410
346 // unimpl __mac_set_link 411
348 DECL_TEMPLATE(freebsd
, sys_extattr_set_link
) // 412
349 DECL_TEMPLATE(freebsd
, sys_extattr_get_link
) // 413
350 DECL_TEMPLATE(freebsd
, sys_extattr_delete_link
) // 414
351 // unimpl __mac_execve 415
353 DECL_TEMPLATE(freebsd
, sys_sigaction
) // 416
354 DECL_TEMPLATE(freebsd
, sys_sigreturn
) // 417
355 DECL_TEMPLATE(freebsd
, sys_getcontext
) // 421
356 DECL_TEMPLATE(freebsd
, sys_setcontext
) // 422
357 DECL_TEMPLATE(freebsd
, sys_swapcontext
) // 423
358 DECL_TEMPLATE(freebsd
, sys_freebsd13_swapoff
) // 424
359 DECL_TEMPLATE(freebsd
, sys___acl_get_link
) // 425
360 DECL_TEMPLATE(freebsd
, sys___acl_set_link
) // 426
361 DECL_TEMPLATE(freebsd
, sys___acl_delete_link
) // 427
362 DECL_TEMPLATE(freebsd
, sys___acl_aclcheck_link
) // 428
363 DECL_TEMPLATE(freebsd
, sys_sigwait
) // 429
364 DECL_TEMPLATE(freebsd
, sys_thr_create
) // 430
365 DECL_TEMPLATE(freebsd
, sys_thr_exit
) // 431
366 DECL_TEMPLATE(freebsd
, sys_thr_self
) // 432
367 DECL_TEMPLATE(freebsd
, sys_thr_kill
) // 433
368 DECL_TEMPLATE(freebsd
, sys__umtx_lock
) // 434
369 DECL_TEMPLATE(freebsd
, sys__umtx_unlock
) // 435
370 DECL_TEMPLATE(freebsd
, sys_jail_attach
) // 436
371 DECL_TEMPLATE(freebsd
, sys_extattr_list_fd
) // 437
372 DECL_TEMPLATE(freebsd
, sys_extattr_list_file
) // 438
373 DECL_TEMPLATE(freebsd
, sys_extattr_list_link
) // 439
374 // unimpl ksem_timedwait 441
375 DECL_TEMPLATE(freebsd
, sys_thr_suspend
) // 442
376 DECL_TEMPLATE(freebsd
, sys_thr_wake
) // 443
377 DECL_TEMPLATE(freebsd
, sys_kldunloadf
) // 444
379 // unimpl auditon 446
380 // unimpl getauid 447
381 // unimpl setauid 448
382 // unimpl getaudit 449
383 // unimpl setaudit 450
384 // unimpl getaudit_addr 451
385 // unimpl setaudit_addr 452
386 // unimpl auditctl 453
387 DECL_TEMPLATE(freebsd
, sys__umtx_op
) // 454
388 DECL_TEMPLATE(freebsd
, sys_thr_new
) // 455
389 DECL_TEMPLATE(freebsd
, sys_sigqueue
) // 455
390 DECL_TEMPLATE(freebsd
, sys_kmq_open
) // 457
391 DECL_TEMPLATE(freebsd
, sys_kmq_setattr
) // 458
392 DECL_TEMPLATE(freebsd
, sys_kmq_timedreceive
) // 459
393 DECL_TEMPLATE(freebsd
, sys_kmq_timedsend
) // 460
394 DECL_TEMPLATE(freebsd
, sys_kmq_notify
) // 461
395 DECL_TEMPLATE(freebsd
, sys_kmq_unlink
) // 462
396 DECL_TEMPLATE(freebsd
, sys_abort2
) // 463
397 DECL_TEMPLATE(freebsd
, sys_thr_set_name
) // 464
398 DECL_TEMPLATE(freebsd
, sys_aio_fsync
) // 465
399 DECL_TEMPLATE(freebsd
, sys_rtprio_thread
) // 466
400 DECL_TEMPLATE(freebsd
, sys_sctp_generic_sendmsg
) // 472
401 DECL_TEMPLATE(freebsd
, sys_sctp_generic_recvmsg
) // 474
402 DECL_TEMPLATE(freebsd
, sys_pread
) // 475
403 DECL_TEMPLATE(freebsd
, sys_pwrite
) // 476
404 DECL_TEMPLATE(freebsd
, sys_mmap
) // 477
405 DECL_TEMPLATE(freebsd
, sys_lseek
) // 478
406 DECL_TEMPLATE(freebsd
, sys_truncate
) // 479
407 DECL_TEMPLATE(freebsd
, sys_ftruncate
) // 480
408 DECL_TEMPLATE(freebsd
, sys_thr_kill2
) // 481
409 DECL_TEMPLATE(freebsd
, sys_shm_open
) // 482
410 DECL_TEMPLATE(freebsd
, sys_shm_unlink
) // 483
411 DECL_TEMPLATE(freebsd
, sys_cpuset
) // 484
412 DECL_TEMPLATE(freebsd
, sys_cpuset_setid
) // 485
413 DECL_TEMPLATE(freebsd
, sys_cpuset_getid
) // 486
414 DECL_TEMPLATE(freebsd
, sys_cpuset_getaffinity
) // 487
415 DECL_TEMPLATE(freebsd
, sys_cpuset_setaffinity
) // 488
416 DECL_TEMPLATE(freebsd
, sys_faccessat
) // 489
417 DECL_TEMPLATE(freebsd
, sys_fchmodat
) //490
418 DECL_TEMPLATE(freebsd
, sys_fchownat
) // 491
419 DECL_TEMPLATE(freebsd
, sys_fexecve
) // 492
420 // added with __FreeBSD_version 1200031
421 DECL_TEMPLATE(freebsd
, sys_freebsd11_fstatat
) // 493
423 DECL_TEMPLATE(freebsd
, sys_futimesat
) // 494
424 DECL_TEMPLATE(freebsd
, sys_linkat
) // 495
425 DECL_TEMPLATE(freebsd
, sys_mkdirat
) // 496
426 DECL_TEMPLATE(freebsd
, sys_mkfifoat
) // 497
428 // added with __FreeBSD_version 1200031
429 DECL_TEMPLATE(freebsd
, sys_freebsd11_mknodat
) // 498
431 DECL_TEMPLATE(freebsd
, sys_openat
) // 499
432 DECL_TEMPLATE(freebsd
, sys_readlinkat
) // 500
433 DECL_TEMPLATE(freebsd
, sys_renameat
) // 501
434 DECL_TEMPLATE(freebsd
, sys_symlinkat
) // 502
435 DECL_TEMPLATE(freebsd
, sys_unlinkat
) // 503
436 DECL_TEMPLATE(freebsd
, sys_posix_openpt
) // 504
437 // unimp gssd_syscall 505
438 DECL_TEMPLATE(freebsd
, sys_jail_get
) // 506
439 DECL_TEMPLATE(freebsd
, sys_jail_set
) // 507
440 DECL_TEMPLATE(freebsd
, sys_jail_remove
) // 508
441 DECL_TEMPLATE(freebsd
, sys_closefrom
) // 508
442 DECL_TEMPLATE(freebsd
, sys___semctl
) // 510
443 DECL_TEMPLATE(freebsd
, sys_msgctl
) // 511
444 DECL_TEMPLATE(freebsd
, sys_shmctl
) // 512
445 DECL_TEMPLATE(freebsd
, sys_lpathconf
) // 513
446 DECL_TEMPLATE(freebsd
, sys_cap_rights_get
) // 515
447 DECL_TEMPLATE(freebsd
, sys_cap_enter
) // 516
448 DECL_TEMPLATE(freebsd
, sys_cap_getmode
) // 517
449 DECL_TEMPLATE(freebsd
, sys_pdfork
) // 518
450 DECL_TEMPLATE(freebsd
, sys_pdkill
) // 519
451 DECL_TEMPLATE(freebsd
, sys_pdgetpid
) // 520
452 DECL_TEMPLATE(freebsd
, sys_pselect
) // 522
453 DECL_TEMPLATE(freebsd
, sys_getloginclass
) // 523
454 DECL_TEMPLATE(freebsd
, sys_setloginclass
) // 524
455 DECL_TEMPLATE(freebsd
, sys_rctl_get_racct
) // 525
456 DECL_TEMPLATE(freebsd
, sys_rctl_get_rules
) // 526
457 DECL_TEMPLATE(freebsd
, sys_rctl_get_limits
) // 527
458 DECL_TEMPLATE(freebsd
, sys_rctl_add_rule
) // 528
459 DECL_TEMPLATE(freebsd
, sys_rctl_remove_rule
) // 529
460 DECL_TEMPLATE(freebsd
, sys_posix_fallocate
) // 530
461 DECL_TEMPLATE(freebsd
, sys_posix_fadvise
) // 531
462 DECL_TEMPLATE(freebsd
, sys_wait6
) // 532
463 DECL_TEMPLATE(freebsd
, sys_cap_rights_limit
) // 533
464 DECL_TEMPLATE(freebsd
, sys_cap_ioctls_limit
) // 534
465 DECL_TEMPLATE(freebsd
, sys_cap_ioctls_get
) // 535
466 DECL_TEMPLATE(freebsd
, sys_cap_fcntls_limit
) // 536
467 DECL_TEMPLATE(freebsd
, sys_cap_fcntls_get
) // 537
468 DECL_TEMPLATE(freebsd
, sys_bindat
) // 538
469 DECL_TEMPLATE(freebsd
, sys_connectat
) // 539
470 DECL_TEMPLATE(freebsd
, sys_chflagsat
) // 540
471 DECL_TEMPLATE(freebsd
, sys_accept4
) // 541
472 DECL_TEMPLATE(freebsd
, sys_pipe2
) // 542
473 DECL_TEMPLATE(freebsd
, sys_aio_mlock
) // 543
474 DECL_TEMPLATE(freebsd
, sys_procctl
) // 544
475 DECL_TEMPLATE(freebsd
, sys_ppoll
) // 545
476 DECL_TEMPLATE(freebsd
, sys_futimens
) // 546
477 DECL_TEMPLATE(freebsd
, sys_utimensat
) // 547
478 DECL_TEMPLATE(freebsd
, sys_fdatasync
) // 550
480 // added with __FreeBSD_version 12000
481 DECL_TEMPLATE(freebsd
, sys_fstat
) // 551
482 DECL_TEMPLATE(freebsd
, sys_fstatat
) // 552
483 DECL_TEMPLATE(freebsd
, sys_fhstat
) // 553
484 DECL_TEMPLATE(freebsd
, sys_getdirentries
) // 554
485 DECL_TEMPLATE(freebsd
, sys_statfs
) // 555
486 DECL_TEMPLATE(freebsd
, sys_fstatfs
) // 556
487 DECL_TEMPLATE(freebsd
, sys_getfsstat
) // 557
488 DECL_TEMPLATE(freebsd
, sys_fhstatfs
) // 558
489 DECL_TEMPLATE(freebsd
, sys_mknodat
) // 559
491 // added with __FreeBSD_version 1200033)
492 DECL_TEMPLATE(freebsd
, sys_kevent
) // 560
494 DECL_TEMPLATE(freebsd
, sys_cpuset_getdomain
) // 561
495 DECL_TEMPLATE(freebsd
, sys_cpuset_setdomain
) // 562
496 DECL_TEMPLATE(freebsd
, sys_getrandom
) // 563
498 // added with __FreeBSD_version 1200031
499 DECL_TEMPLATE(freebsd
, sys_getfhat
) // 654
500 DECL_TEMPLATE(freebsd
, sys_fhlink
) // 565
501 DECL_TEMPLATE(freebsd
, sys_fhlinkat
) // 566
502 DECL_TEMPLATE(freebsd
, sys_fhreadlink
) // 567
504 // added with __FreeBSD_version 1300018
505 DECL_TEMPLATE(freebsd
, sys_funlinkat
) // 568
506 DECL_TEMPLATE(freebsd
, sys_copy_file_range
) // 569
507 // __FreeBSD_version 1201522 and 1300045
508 DECL_TEMPLATE(freebsd
, sys___sysctlbyname
) // 570
510 // looks like close_range got backported
511 // to 12.2 leaving these 4 marked as UNIMPL in 12.2
512 // added with __FreeBSD_version 1300048
513 DECL_TEMPLATE(freebsd
, sys_shm_open2
) // 571
514 // unimpl __NR_shm_rename 572
515 DECL_TEMPLATE(freebsd
, sys_sigfastblock
) // 573
516 DECL_TEMPLATE(freebsd
, sys___realpathat
) // 574
518 DECL_TEMPLATE(freebsd
, sys_close_range
) // 575
520 // unimpl __NR_rpctls_syscall 576
521 DECL_TEMPLATE(freebsd
, sys___specialfd
) // 577
522 DECL_TEMPLATE(freebsd
, sys_aio_writev
) // 578
523 DECL_TEMPLATE(freebsd
, sys_aio_readv
) // 579
525 // there was a hole in the numbering
526 // __FreeBSD_version 1400030
527 DECL_TEMPLATE(freebsd
, sys_fspacectl
) // 580
529 // unimpl __NR_sched_getcpu 581
530 DECL_TEMPLATE(freebsd
, sys_swapoff
) // 582
532 DECL_TEMPLATE(freebsd
, sys_kqueuex
) // 583
533 DECL_TEMPLATE(freebsd
, sys_membarrier
) // 584
535 DECL_TEMPLATE(freebsd
, sys_timerfd_create
) // 585
536 DECL_TEMPLATE(freebsd
, sys_timerfd_gettime
) // 586
537 DECL_TEMPLATE(freebsd
, sys_timerfd_settime
) // 587
539 // __FreeBSD_version 1400507 and 1500012
540 DECL_TEMPLATE(freebsd
, sys_kcmp
) // 588
541 DECL_TEMPLATE(freebsd
, sys_getrlimitusage
) // 589
543 DECL_TEMPLATE(freebsd
, sys_fake_sigreturn
)
545 #endif // PRIV_SYSWRAP_FREEBSD_H
547 /*--------------------------------------------------------------------*/
549 /*--------------------------------------------------------------------*/