2 ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
4 ; System call name/number master file.
5 ; Processed to created init_sysent.c, syscalls.c and syscall.h.
7 ; Columns: number audit type name alt{name,tag,rtyp}/comments
8 ; number system call number, must be in order
9 ; audit the audit event associated with the system call
10 ; A value of AUE_NULL means no auditing, but it also means that
11 ; there is no audit event for the call at this time. For the
12 ; case where the event exists, but we don't want auditing, the
13 ; event should be #defined to AUE_NULL in audit_kevents.h.
14 ; type one of STD, OBSOL, UNIMPL, COMPAT, COMPAT4, COMPAT6,
15 ; COMPAT7, COMPAT11, NODEF, NOARGS, NOPROTO, NOSTD
16 ; The COMPAT* options may be combined with one or more NO*
17 ; options separated by '|' with no spaces (e.g. COMPAT|NOARGS)
18 ; name pseudo-prototype of syscall routine
19 ; If one of the following alts is different, then all appear:
20 ; altname name of system call if different
21 ; alttag name of args struct tag if different from [o]`name'"_args"
22 ; altrtyp return type if not int (bogus - syscalls always return int)
23 ; for UNIMPL/OBSOL, name continues with comments
27 ; COMPAT included on COMPAT #ifdef
28 ; COMPAT4 included on COMPAT_FREEBSD4 #ifdef (FreeBSD 4 compat)
29 ; COMPAT6 included on COMPAT_FREEBSD6 #ifdef (FreeBSD 6 compat)
30 ; COMPAT7 included on COMPAT_FREEBSD7 #ifdef (FreeBSD 7 compat)
31 ; COMPAT10 included on COMPAT_FREEBSD10 #ifdef (FreeBSD 10 compat)
32 ; COMPAT11 included on COMPAT11 #ifdef (FreeBSD 11 compat)
33 ; OBSOL obsolete, not included in system, only specifies name
34 ; UNIMPL not implemented, placeholder only
35 ; NOSTD implemented but as a lkm that can be statically
36 ; compiled in; sysent entry will be filled with lkmressys
37 ; so the SYSCALL_MODULE macro works
38 ; NOARGS same as STD except do not create structure in sys/sysproto.h
39 ; NODEF same as STD except only have the entry in the syscall table
40 ; added. Meaning - do not create structure or function
41 ; prototype in sys/sysproto.h
42 ; NOPROTO same as STD except do not create structure or
43 ; function prototype in sys/sysproto.h. Does add a
44 ; definition to syscall.h besides adding a sysent.
45 ; NOTSTATIC syscall is loadable
48 ; SAL 2.0 annotations are used to specify how system calls treat
49 ; arguments that are passed using pointers. There are three basic
52 ; _In_ Object pointed to will be read and not modified.
53 ; _Out_ Object pointed to will be written and not read.
54 ; _Inout_ Object pointed to will be written and read.
56 ; These annotations are used alone when the pointer refers to a single
57 ; object i.e. scalar types, structs, and pointers, and not NULL. Adding
58 ; the _opt_ suffix, e.g. _In_opt_, implies that the pointer may also
61 ; For pointers to arrays, additional suffixes are added:
63 ; _In_z_, _Out_z_, _Inout_z_:
64 ; for a NUL terminated array e.g. a string.
65 ; _In_reads_z_(n),_Out_writes_z_(n), _Inout_updates_z_(n):
66 ; for a NUL terminated array e.g. a string, of known length n bytes.
67 ; _In_reads_(n),_Out_writes_(n),_Inout_updates_(n):
68 ; for an array of n elements.
69 ; _In_reads_bytes_(n), _Out_writes_bytes_(n), _Inout_updates_bytes(n):
70 ; for a buffer of n-bytes.
72 ; Please copy any additions and changes to the following compatability tables:
73 ; sys/compat/freebsd32/syscalls.master
75 ; #ifdef's, etc. may be included, and are copied to the output files.
77 #include <sys/param.h>
78 #include <sys/sysent.h>
79 #include <sys/sysproto.h>
81 ; Reserved/unimplemented system calls in the range 0-150 inclusive
82 ; are reserved for use in future Berkeley releases.
83 ; Additional system calls implemented in vendor and other
84 ; redistributions should be placed in the reserved range at the end
85 ; of the current calls.
87 0 AUE_NULL STD { int nosys(void); } syscall nosys_args int
88 1 AUE_EXIT STD { void sys_exit(int rval); } exit \
90 2 AUE_FORK STD { int fork(void); }
91 3 AUE_READ STD { ssize_t read(int fd, \
92 _Out_writes_bytes_(nbyte) void *buf, \
94 4 AUE_WRITE STD { ssize_t write(int fd, \
95 _In_reads_bytes_(nbyte) const void *buf, \
97 5 AUE_OPEN_RWTC STD { int open( \
101 ; XXX should be { int open(const char *path, int flags, ...); }
102 ; but we're not ready for `const' or varargs.
103 ; XXX man page says `mode_t mode'.
104 6 AUE_CLOSE STD { int close(int fd); }
105 7 AUE_WAIT4 STD { int wait4(int pid, \
106 _Out_opt_ int *status, \
108 _Out_opt_ struct rusage *rusage); }
109 8 AUE_CREAT COMPAT { int creat(_In_z_ char *path, int mode); }
110 9 AUE_LINK STD { int link(_In_z_ char *path, \
111 _In_z_ char *link); }
112 10 AUE_UNLINK STD { int unlink(_In_z_ char *path); }
113 11 AUE_NULL OBSOL execv
114 12 AUE_CHDIR STD { int chdir(_In_z_ char *path); }
115 13 AUE_FCHDIR STD { int fchdir(int fd); }
116 14 AUE_MKNOD COMPAT11 { int mknod(_In_z_ char *path, int mode, \
118 15 AUE_CHMOD STD { int chmod(_In_z_ char *path, int mode); }
119 16 AUE_CHOWN STD { int chown(_In_z_ char *path, \
121 17 AUE_NULL STD { int obreak(_In_ char *nsize); } break \
123 18 AUE_GETFSSTAT COMPAT4 { int getfsstat( \
124 _Out_writes_bytes_opt_(bufsize) \
125 struct ostatfs *buf, \
126 long bufsize, int mode); }
127 19 AUE_LSEEK COMPAT { long lseek(int fd, long offset, \
129 20 AUE_GETPID STD { pid_t getpid(void); }
130 21 AUE_MOUNT STD { int mount(_In_z_ char *type, \
131 _In_z_ char *path, int flags, \
132 _In_opt_ caddr_t data); }
133 ; XXX `path' should have type `const char *' but we're not ready for that.
134 22 AUE_UMOUNT STD { int unmount(_In_z_ char *path, int flags); }
135 23 AUE_SETUID STD { int setuid(uid_t uid); }
136 24 AUE_GETUID STD { uid_t getuid(void); }
137 25 AUE_GETEUID STD { uid_t geteuid(void); }
138 26 AUE_PTRACE STD { int ptrace(int req, pid_t pid, \
139 _Inout_opt_ caddr_t addr, int data); }
140 27 AUE_RECVMSG STD { int recvmsg(int s, \
141 _Inout_ struct msghdr *msg, int flags); }
142 28 AUE_SENDMSG STD { int sendmsg(int s, _In_ struct msghdr *msg, \
144 29 AUE_RECVFROM STD { int recvfrom(int s, \
145 _Out_writes_bytes_(len) caddr_t buf, \
146 size_t len, int flags, \
147 _Out_writes_bytes_opt_(*fromlenaddr) \
148 struct sockaddr * __restrict from, \
150 __socklen_t * __restrict fromlenaddr); }
151 30 AUE_ACCEPT STD { int accept(int s, \
152 _Out_writes_bytes_opt_(*anamelen) \
153 struct sockaddr * __restrict name, \
155 __socklen_t * __restrict anamelen); }
156 31 AUE_GETPEERNAME STD { int getpeername(int fdes, \
157 _Out_writes_bytes_(*alen) \
158 struct sockaddr * __restrict asa, \
160 __socklen_t * __restrict alen); }
161 32 AUE_GETSOCKNAME STD { int getsockname(int fdes, \
162 _Out_writes_bytes_(*alen) \
163 struct sockaddr * __restrict asa, \
164 _Inout_ __socklen_t * __restrict alen); }
165 33 AUE_ACCESS STD { int access(_In_z_ char *path, int amode); }
166 34 AUE_CHFLAGS STD { int chflags(_In_z_ const char *path, \
168 35 AUE_FCHFLAGS STD { int fchflags(int fd, u_long flags); }
169 36 AUE_SYNC STD { int sync(void); }
170 37 AUE_KILL STD { int kill(int pid, int signum); }
171 38 AUE_STAT COMPAT { int stat(_In_z_ char *path, \
172 _Out_ struct ostat *ub); }
173 39 AUE_GETPPID STD { pid_t getppid(void); }
174 40 AUE_LSTAT COMPAT { int lstat(_In_z_ char *path, \
175 _Out_ struct ostat *ub); }
176 41 AUE_DUP STD { int dup(u_int fd); }
177 42 AUE_PIPE COMPAT10 { int pipe(void); }
178 43 AUE_GETEGID STD { gid_t getegid(void); }
179 44 AUE_PROFILE STD { int profil( \
180 _Out_writes_bytes_(size) caddr_t samples, \
181 size_t size, size_t offset, u_int scale); }
182 45 AUE_KTRACE STD { int ktrace(_In_z_ const char *fname, \
183 int ops, int facs, int pid); }
184 46 AUE_SIGACTION COMPAT { int sigaction(int signum, \
185 _In_opt_ struct osigaction *nsa, \
186 _Out_opt_ struct osigaction *osa); }
187 47 AUE_GETGID STD { gid_t getgid(void); }
188 48 AUE_SIGPROCMASK COMPAT { int sigprocmask(int how, osigset_t mask); }
189 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
190 ; us the mask, not a pointer to it, and we return the old mask as the
191 ; (int) return value.
192 49 AUE_GETLOGIN STD { int getlogin( \
193 _Out_writes_z_(namelen) char *namebuf, \
195 50 AUE_SETLOGIN STD { int setlogin(_In_z_ char *namebuf); }
196 51 AUE_ACCT STD { int acct(_In_z_ char *path); }
197 52 AUE_SIGPENDING COMPAT { int sigpending(void); }
198 53 AUE_SIGALTSTACK STD { int sigaltstack(_In_opt_ stack_t *ss, \
199 _Out_opt_ stack_t *oss); }
200 54 AUE_IOCTL STD { int ioctl(int fd, u_long com, \
201 _Inout_opt_ caddr_t data); }
202 55 AUE_REBOOT STD { int reboot(int opt); }
203 56 AUE_REVOKE STD { int revoke(_In_z_ char *path); }
204 57 AUE_SYMLINK STD { int symlink(_In_z_ char *path, \
205 _In_z_ char *link); }
206 58 AUE_READLINK STD { ssize_t readlink(_In_z_ char *path, \
207 _Out_writes_z_(count) char *buf, \
209 59 AUE_EXECVE STD { int execve( \
210 _In_z_ char *fname, \
211 _In_z_ char **argv, \
212 _In_z_ char **envv); }
213 60 AUE_UMASK STD { int umask(int newmask); } umask umask_args \
215 61 AUE_CHROOT STD { int chroot(_In_z_ char *path); }
216 62 AUE_FSTAT COMPAT { int fstat(int fd, _Out_ struct ostat *sb); }
217 63 AUE_NULL COMPAT { int getkerninfo(int op, \
218 _Out_writes_bytes_opt(*size) char *where, \
219 _Inout_opt_ size_t *size, \
220 int arg); } getkerninfo getkerninfo_args int
221 64 AUE_NULL COMPAT { int getpagesize(void); } getpagesize \
223 65 AUE_MSYNC STD { int msync(_In_ void *addr, size_t len, \
225 66 AUE_VFORK STD { int vfork(void); }
226 67 AUE_NULL OBSOL vread
227 68 AUE_NULL OBSOL vwrite
228 69 AUE_SBRK STD { int sbrk(int incr); }
229 70 AUE_SSTK STD { int sstk(int incr); }
230 71 AUE_MMAP COMPAT { int mmap(_In_ void *addr, int len, int prot, \
231 int flags, int fd, long pos); }
232 72 AUE_O_VADVISE STD { int ovadvise(int anom); } vadvise \
234 73 AUE_MUNMAP STD { int munmap(_In_ void *addr, size_t len); }
235 74 AUE_MPROTECT STD { int mprotect(_In_ void *addr, \
236 size_t len, int prot); }
237 75 AUE_MADVISE STD { int madvise(_In_ void *addr, \
238 size_t len, int behav); }
239 76 AUE_NULL OBSOL vhangup
240 77 AUE_NULL OBSOL vlimit
241 78 AUE_MINCORE STD { int mincore( \
242 _In_ const void *addr, \
244 _Out_writes_bytes_(len/PAGE_SIZE) \
246 79 AUE_GETGROUPS STD { int getgroups(u_int gidsetsize, \
247 _Out_writes_opt_(gidsetsize) \
249 80 AUE_SETGROUPS STD { int setgroups(u_int gidsetsize, \
250 _In_reads_(gidsetsize) gid_t *gidset); }
251 81 AUE_GETPGRP STD { int getpgrp(void); }
252 82 AUE_SETPGRP STD { int setpgid(int pid, int pgid); }
253 83 AUE_SETITIMER STD { int setitimer(u_int which, \
254 _In_ struct itimerval *itv, \
255 _Out_opt_ struct itimerval *oitv); }
256 84 AUE_WAIT4 COMPAT { int wait(void); }
257 85 AUE_SWAPON STD { int swapon(_In_z_ char *name); }
258 86 AUE_GETITIMER STD { int getitimer(u_int which, \
259 _Out_ struct itimerval *itv); }
260 87 AUE_SYSCTL COMPAT { int gethostname( \
261 _Out_writes_z_(len) char *hostname, \
262 u_int len); } gethostname \
264 88 AUE_SYSCTL COMPAT { int sethostname( \
265 _In_reads_z_(len) char *hostname, \
266 u_int len); } sethostname \
268 89 AUE_GETDTABLESIZE STD { int getdtablesize(void); }
269 90 AUE_DUP2 STD { int dup2(u_int from, u_int to); }
270 91 AUE_NULL UNIMPL getdopt
271 92 AUE_FCNTL STD { int fcntl(int fd, int cmd, long arg); }
272 ; XXX should be { int fcntl(int fd, int cmd, ...); }
273 ; but we're not ready for varargs.
274 93 AUE_SELECT STD { int select(int nd, \
275 _Inout_opt_ fd_set *in, \
276 _Inout_opt_ fd_set *ou, \
277 _Inout_opt_ fd_set *ex, \
278 _In_opt_ struct timeval *tv); }
279 94 AUE_NULL UNIMPL setdopt
280 95 AUE_FSYNC STD { int fsync(int fd); }
281 96 AUE_SETPRIORITY STD { int setpriority(int which, int who, \
283 97 AUE_SOCKET STD { int socket(int domain, int type, \
285 98 AUE_CONNECT STD { int connect(int s, \
286 _In_reads_bytes_(namelen) caddr_t name, \
288 99 AUE_ACCEPT COMPAT|NOARGS { int accept(int s, \
289 _Out_writes_bytes_opt_(*anamelen) \
290 caddr_t name, int *anamelen); } \
291 accept accept_args int
292 100 AUE_GETPRIORITY STD { int getpriority(int which, int who); }
293 101 AUE_SEND COMPAT { int send(int s, \
294 _In_reads_bytes_(len) caddr_t buf, \
297 102 AUE_RECV COMPAT { int recv(int s, \
298 _Out_writes_bytes_(len) caddr_t buf, \
299 int len, int flags); }
300 103 AUE_SIGRETURN COMPAT { int sigreturn( \
301 _In_ struct osigcontext *sigcntxp); }
302 104 AUE_BIND STD { int bind(int s, \
303 _In_reads_bytes_(namelen) caddr_t name, \
305 105 AUE_SETSOCKOPT STD { int setsockopt(int s, int level, int name, \
306 _In_reads_bytes_opt_(valsize) caddr_t val, \
308 106 AUE_LISTEN STD { int listen(int s, int backlog); }
309 107 AUE_NULL OBSOL vtimes
310 108 AUE_NULL COMPAT { int sigvec(int signum, \
311 _In_opt_ struct sigvec *nsv, \
312 _Out_opt_ struct sigvec *osv); }
313 109 AUE_NULL COMPAT { int sigblock(int mask); }
314 110 AUE_NULL COMPAT { int sigsetmask(int mask); }
315 111 AUE_NULL COMPAT { int sigsuspend(osigset_t mask); }
316 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
317 ; us the mask, not a pointer to it.
318 112 AUE_NULL COMPAT { int sigstack(_In_opt_ struct sigstack *nss, \
319 _Out_opt_ struct sigstack *oss); }
320 113 AUE_RECVMSG COMPAT { int recvmsg(int s, \
321 _Inout_ struct omsghdr *msg, \
323 114 AUE_SENDMSG COMPAT { int sendmsg(int s, _In_ caddr_t msg, \
325 115 AUE_NULL OBSOL vtrace
326 116 AUE_GETTIMEOFDAY STD { int gettimeofday( \
327 _Out_ struct timeval *tp, \
328 _Out_opt_ struct timezone *tzp); }
329 117 AUE_GETRUSAGE STD { int getrusage(int who, \
330 _Out_ struct rusage *rusage); }
331 118 AUE_GETSOCKOPT STD { int getsockopt(int s, int level, int name, \
332 _Out_writes_bytes_opt_(*avalsize) \
333 caddr_t val, _Inout_ int *avalsize); }
334 119 AUE_NULL UNIMPL resuba (BSD/OS 2.x)
335 120 AUE_READV STD { int readv(int fd, \
336 _Inout_updates_(iovcnt) struct iovec *iovp, \
338 121 AUE_WRITEV STD { int writev(int fd, \
339 _In_reads_opt_(iovcnt) struct iovec *iovp, \
341 122 AUE_SETTIMEOFDAY STD { int settimeofday( \
342 _In_ struct timeval *tv, \
343 _In_opt_ struct timezone *tzp); }
344 123 AUE_FCHOWN STD { int fchown(int fd, int uid, int gid); }
345 124 AUE_FCHMOD STD { int fchmod(int fd, int mode); }
346 125 AUE_RECVFROM COMPAT|NOARGS { int recvfrom(int s, \
347 _Out_writes_(len) caddr_t buf, \
348 size_t len, int flags, \
349 _Out_writes_bytes_(*fromlenaddr) \
351 _Inout_ int *fromlenaddr); } \
352 recvfrom recvfrom_args int
353 126 AUE_SETREUID STD { int setreuid(int ruid, int euid); }
354 127 AUE_SETREGID STD { int setregid(int rgid, int egid); }
355 128 AUE_RENAME STD { int rename(_In_z_ char *from, \
357 129 AUE_TRUNCATE COMPAT { int truncate(_In_z_ char *path, \
359 130 AUE_FTRUNCATE COMPAT { int ftruncate(int fd, long length); }
360 131 AUE_FLOCK STD { int flock(int fd, int how); }
361 132 AUE_MKFIFO STD { int mkfifo(_In_z_ char *path, int mode); }
362 133 AUE_SENDTO STD { int sendto(int s, \
363 _In_reads_bytes_(len) caddr_t buf, \
364 size_t len, int flags, \
365 _In_reads_bytes_opt_(tolen) caddr_t to, \
367 134 AUE_SHUTDOWN STD { int shutdown(int s, int how); }
368 135 AUE_SOCKETPAIR STD { int socketpair(int domain, int type, \
369 int protocol, _Out_writes_(2) int *rsv); }
370 136 AUE_MKDIR STD { int mkdir(_In_z_ char *path, int mode); }
371 137 AUE_RMDIR STD { int rmdir(_In_z_ char *path); }
372 138 AUE_UTIMES STD { int utimes(_In_z_ char *path, \
373 _In_ struct timeval *tptr); }
374 139 AUE_NULL OBSOL 4.2 sigreturn
375 140 AUE_ADJTIME STD { int adjtime(_In_ struct timeval *delta, \
376 _Out_opt_ struct timeval *olddelta); }
377 141 AUE_GETPEERNAME COMPAT { int getpeername(int fdes, \
378 _Out_writes_bytes_(*alen) \
380 _Inout_opt_ int *alen); }
381 142 AUE_SYSCTL COMPAT { long gethostid(void); }
382 143 AUE_SYSCTL COMPAT { int sethostid(long hostid); }
383 144 AUE_GETRLIMIT COMPAT { int getrlimit(u_int which, _Out_ struct \
385 145 AUE_SETRLIMIT COMPAT { int setrlimit(u_int which, \
386 _Out_ struct orlimit *rlp); }
387 146 AUE_KILLPG COMPAT { int killpg(int pgid, int signum); }
388 147 AUE_SETSID STD { int setsid(void); }
389 148 AUE_QUOTACTL STD { int quotactl( \
390 _In_z_ char *path, int cmd, int uid, \
392 149 AUE_O_QUOTA COMPAT { int quota(void); }
393 150 AUE_GETSOCKNAME COMPAT|NOARGS { int getsockname(int fdec, \
394 _Out_writes_bytes_(*alen) \
396 _Inout_ int *alen); } getsockname \
399 ; Syscalls 151-180 inclusive are reserved for vendor-specific
400 ; system calls. (This includes various calls added for compatibity
401 ; with other Unix variants.)
402 ; Some of these calls are now supported by BSD...
403 151 AUE_NULL UNIMPL sem_lock (BSD/OS 2.x)
404 152 AUE_NULL UNIMPL sem_wakeup (BSD/OS 2.x)
405 153 AUE_NULL UNIMPL asyncdaemon (BSD/OS 2.x)
406 ; 154 is initialised by the NLM code, if present.
407 154 AUE_NULL NOSTD { int nlm_syscall(int debug_level, \
408 int grace_period, int addr_count, \
409 _In_reads_(addr_count) \
411 ; 155 is initialized by the NFS code, if present.
412 155 AUE_NFS_SVC NOSTD { int nfssvc(int flag, _In_ caddr_t argp); }
413 156 AUE_GETDIRENTRIES COMPAT { int getdirentries(int fd, \
414 _Out_writes_bytes_(count) char *buf, \
415 u_int count, _Out_ long *basep); }
416 157 AUE_STATFS COMPAT4 { int statfs(_In_z_ char *path, \
417 _Out_ struct ostatfs *buf); }
418 158 AUE_FSTATFS COMPAT4 { int fstatfs(int fd, \
419 _Out_ struct ostatfs *buf); }
420 159 AUE_NULL UNIMPL nosys
421 160 AUE_LGETFH STD { int lgetfh(_In_z_ char *fname, \
422 _Out_ struct fhandle *fhp); }
423 161 AUE_NFS_GETFH STD { int getfh(_In_z_ char *fname, \
424 _Out_ struct fhandle *fhp); }
425 162 AUE_SYSCTL COMPAT4 { int getdomainname( \
426 _Out_writes_z_(len) char *domainname, \
428 163 AUE_SYSCTL COMPAT4 { int setdomainname( \
429 _In_reads_z_(len) char *domainname, \
431 164 AUE_NULL COMPAT4 { int uname(_Out_ struct utsname *name); }
432 165 AUE_SYSARCH STD { int sysarch(int op, _In_z_ char *parms); }
433 166 AUE_RTPRIO STD { int rtprio(int function, pid_t pid, \
434 _Inout_ struct rtprio *rtp); }
435 167 AUE_NULL UNIMPL nosys
436 168 AUE_NULL UNIMPL nosys
437 169 AUE_SEMSYS NOSTD { int semsys(int which, int a2, int a3, \
439 ; XXX should be { int semsys(int which, ...); }
440 170 AUE_MSGSYS NOSTD { int msgsys(int which, int a2, int a3, \
441 int a4, int a5, int a6); }
442 ; XXX should be { int msgsys(int which, ...); }
443 171 AUE_SHMSYS NOSTD { int shmsys(int which, int a2, int a3, \
445 ; XXX should be { int shmsys(int which, ...); }
446 172 AUE_NULL UNIMPL nosys
447 173 AUE_PREAD COMPAT6 { ssize_t pread(int fd, \
448 _Out_writes_bytes_(nbyte) void *buf, \
449 size_t nbyte, int pad, off_t offset); }
450 174 AUE_PWRITE COMPAT6 { ssize_t pwrite(int fd, \
451 _In_reads_bytes_(nbyte) \
453 size_t nbyte, int pad, off_t offset); }
454 175 AUE_SETFIB STD { int setfib(int fibnum); }
455 176 AUE_NTP_ADJTIME STD { int ntp_adjtime(_Inout_ struct timex *tp); }
456 177 AUE_NULL UNIMPL sfork (BSD/OS 2.x)
457 178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x)
458 179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x)
459 180 AUE_NULL UNIMPL nosys
461 ; Syscalls 181-199 are used by/reserved for BSD
462 181 AUE_SETGID STD { int setgid(gid_t gid); }
463 182 AUE_SETEGID STD { int setegid(gid_t egid); }
464 183 AUE_SETEUID STD { int seteuid(uid_t euid); }
465 184 AUE_NULL UNIMPL lfs_bmapv
466 185 AUE_NULL UNIMPL lfs_markv
467 186 AUE_NULL UNIMPL lfs_segclean
468 187 AUE_NULL UNIMPL lfs_segwait
469 188 AUE_STAT COMPAT11 { int stat(_In_z_ char *path, \
470 _Out_ struct freebsd11_stat *ub); }
471 189 AUE_FSTAT COMPAT11 { int fstat(int fd, \
472 _Out_ struct freebsd11_stat *sb); }
473 190 AUE_LSTAT COMPAT11 { int lstat(_In_z_ char *path, \
474 _Out_ struct freebsd11_stat *ub); }
475 191 AUE_PATHCONF STD { int pathconf(_In_z_ char *path, int name); }
476 192 AUE_FPATHCONF STD { int fpathconf(int fd, int name); }
477 193 AUE_NULL UNIMPL nosys
478 194 AUE_GETRLIMIT STD { int getrlimit(u_int which, \
479 _Out_ struct rlimit *rlp); } getrlimit \
481 195 AUE_SETRLIMIT STD { int setrlimit(u_int which, \
482 _In_ struct rlimit *rlp); } setrlimit \
484 196 AUE_GETDIRENTRIES COMPAT11 { int getdirentries(int fd, \
485 _Out_writes_bytes_(count) char *buf, \
486 u_int count, _Out_ long *basep); }
487 197 AUE_MMAP COMPAT6 { caddr_t mmap(_In_ caddr_t addr, size_t len, \
488 int prot, int flags, int fd, int pad, \
490 198 AUE_NULL NOPROTO { int nosys(void); } __syscall \
492 199 AUE_LSEEK COMPAT6 { off_t lseek(int fd, int pad, \
493 off_t offset, int whence); }
494 200 AUE_TRUNCATE COMPAT6 { int truncate(_In_z_ char *path, int pad, \
496 201 AUE_FTRUNCATE COMPAT6 { int ftruncate(int fd, int pad, \
498 202 AUE_SYSCTL STD { int __sysctl( \
499 _In_reads_(namelen) int *name, \
501 _Out_writes_bytes_opt_(*oldlenp) \
503 _Inout_opt_ size_t *oldlenp, \
504 _In_reads_bytes_opt_(newlen) \
507 __sysctl sysctl_args int
508 203 AUE_MLOCK STD { int mlock(_In_ const void *addr, \
510 204 AUE_MUNLOCK STD { int munlock(_In_ const void *addr, \
512 205 AUE_UNDELETE STD { int undelete(_In_z_ char *path); }
513 206 AUE_FUTIMES STD { int futimes(int fd, \
514 _In_reads_(2) struct timeval *tptr); }
515 207 AUE_GETPGID STD { int getpgid(pid_t pid); }
516 208 AUE_NULL UNIMPL nosys
517 209 AUE_POLL STD { int poll( \
518 _Inout_updates_(nfds) \
519 struct pollfd *fds, \
520 u_int nfds, int timeout); }
522 ; The following are reserved for loadable syscalls
524 210 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
525 211 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
526 212 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
527 213 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
528 214 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
529 215 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
530 216 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
531 217 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
532 218 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
533 219 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int
535 220 AUE_SEMCTL COMPAT7|NOSTD { int __semctl(int semid, int semnum, \
536 int cmd, union semun_old *arg); }
537 221 AUE_SEMGET NOSTD { int semget(key_t key, int nsems, \
539 222 AUE_SEMOP NOSTD { int semop(int semid, \
540 _In_reads_(nsops) struct sembuf *sops, \
542 223 AUE_NULL UNIMPL semconfig
543 224 AUE_MSGCTL COMPAT7|NOSTD { int msgctl(int msqid, int cmd, \
544 struct msqid_ds_old *buf); }
545 225 AUE_MSGGET NOSTD { int msgget(key_t key, int msgflg); }
546 226 AUE_MSGSND NOSTD { int msgsnd(int msqid, \
547 _In_reads_bytes_(msgsz) const void *msgp, \
548 size_t msgsz, int msgflg); }
549 227 AUE_MSGRCV NOSTD { ssize_t msgrcv(int msqid, \
550 _Out_writes_bytes_(msgsz) void *msgp, \
551 size_t msgsz, long msgtyp, int msgflg); }
552 228 AUE_SHMAT NOSTD { int shmat(int shmid, \
553 _In_ const void *shmaddr, \
555 229 AUE_SHMCTL COMPAT7|NOSTD { int shmctl(int shmid, int cmd, \
556 struct shmid_ds_old *buf); }
557 230 AUE_SHMDT NOSTD { int shmdt(_In_ const void *shmaddr); }
558 231 AUE_SHMGET NOSTD { int shmget(key_t key, size_t size, \
561 232 AUE_NULL STD { int clock_gettime(clockid_t clock_id, \
562 _Out_ struct timespec *tp); }
563 233 AUE_CLOCK_SETTIME STD { int clock_settime(clockid_t clock_id, \
564 _In_ const struct timespec *tp); }
565 234 AUE_NULL STD { int clock_getres(clockid_t clock_id, \
566 _Out_ struct timespec *tp); }
567 235 AUE_NULL STD { int ktimer_create( \
568 clockid_t clock_id, \
569 _In_ struct sigevent *evp, \
570 _Out_ int *timerid); }
571 236 AUE_NULL STD { int ktimer_delete(int timerid); }
572 237 AUE_NULL STD { int ktimer_settime(int timerid, \
574 _In_ const struct itimerspec *value, \
575 _Out_opt_ struct itimerspec *ovalue); }
576 238 AUE_NULL STD { int ktimer_gettime(int timerid, \
577 _Out_ struct itimerspec *value); }
578 239 AUE_NULL STD { int ktimer_getoverrun(int timerid); }
579 240 AUE_NULL STD { int nanosleep( \
580 _In_ const struct timespec *rqtp, \
581 _Out_opt_ struct timespec *rmtp); }
582 241 AUE_NULL STD { int ffclock_getcounter( \
583 _Out_ ffcounter *ffcount); }
584 242 AUE_NULL STD { int ffclock_setestimate( \
585 _In_ struct ffclock_estimate *cest); }
586 243 AUE_NULL STD { int ffclock_getestimate( \
587 _Out_ struct ffclock_estimate *cest); }
588 244 AUE_NULL STD { int clock_nanosleep(clockid_t clock_id, \
590 _In_ const struct timespec *rqtp, \
591 _Out_opt_ struct timespec *rmtp); }
592 245 AUE_NULL UNIMPL nosys
593 246 AUE_NULL UNIMPL nosys
594 247 AUE_NULL STD { int clock_getcpuclockid2(id_t id, \
595 int which, _Out_ clockid_t *clock_id); }
596 248 AUE_NULL STD { int ntp_gettime( \
597 _Out_ struct ntptimeval *ntvp); }
598 249 AUE_NULL UNIMPL nosys
599 ; syscall numbers initially used in OpenBSD
600 250 AUE_MINHERIT STD { int minherit( \
602 size_t len, int inherit); }
603 251 AUE_RFORK STD { int rfork(int flags); }
604 252 AUE_POLL OBSOL openbsd_poll
605 253 AUE_ISSETUGID STD { int issetugid(void); }
606 254 AUE_LCHOWN STD { int lchown(_In_z_ char *path, int uid, \
608 255 AUE_AIO_READ STD { int aio_read( \
609 _Inout_ struct aiocb *aiocbp); }
610 256 AUE_AIO_WRITE STD { int aio_write( \
611 _Inout_ struct aiocb *aiocbp); }
612 257 AUE_LIO_LISTIO STD { int lio_listio(int mode, \
613 _Inout_updates_(nent) \
614 struct aiocb* const *acb_list, \
616 _In_opt_ struct sigevent *sig); }
617 258 AUE_NULL UNIMPL nosys
618 259 AUE_NULL UNIMPL nosys
619 260 AUE_NULL UNIMPL nosys
620 261 AUE_NULL UNIMPL nosys
621 262 AUE_NULL UNIMPL nosys
622 263 AUE_NULL UNIMPL nosys
623 264 AUE_NULL UNIMPL nosys
624 265 AUE_NULL UNIMPL nosys
625 266 AUE_NULL UNIMPL nosys
626 267 AUE_NULL UNIMPL nosys
627 268 AUE_NULL UNIMPL nosys
628 269 AUE_NULL UNIMPL nosys
629 270 AUE_NULL UNIMPL nosys
630 271 AUE_NULL UNIMPL nosys
631 272 AUE_O_GETDENTS COMPAT11 { int getdents(int fd, \
632 _Out_writes_bytes_(count) char *buf, \
634 273 AUE_NULL UNIMPL nosys
635 274 AUE_LCHMOD STD { int lchmod(_In_z_ char *path, mode_t mode); }
636 275 AUE_LCHOWN NOPROTO { int lchown(char *path, uid_t uid, \
637 gid_t gid); } netbsd_lchown lchown_args \
639 276 AUE_LUTIMES STD { int lutimes(_In_z_ char *path, \
640 _In_ struct timeval *tptr); }
641 277 AUE_MSYNC NOPROTO { int msync(_In_ void *addr, size_t len, \
642 int flags); } netbsd_msync msync_args int
643 278 AUE_STAT COMPAT11 { int nstat(_In_z_ char *path, \
644 _Out_ struct nstat *ub); }
645 279 AUE_FSTAT COMPAT11 { int nfstat(int fd, _Out_ struct nstat *sb); }
646 280 AUE_LSTAT COMPAT11 { int nlstat(_In_z_ char *path, \
647 _Out_ struct nstat *ub); }
648 281 AUE_NULL UNIMPL nosys
649 282 AUE_NULL UNIMPL nosys
650 283 AUE_NULL UNIMPL nosys
651 284 AUE_NULL UNIMPL nosys
652 285 AUE_NULL UNIMPL nosys
653 286 AUE_NULL UNIMPL nosys
654 287 AUE_NULL UNIMPL nosys
655 288 AUE_NULL UNIMPL nosys
656 289 AUE_PREADV STD { ssize_t preadv(int fd, \
658 struct iovec *iovp, \
659 u_int iovcnt, off_t offset); }
660 290 AUE_PWRITEV STD { ssize_t pwritev(int fd, \
661 _In_reads_(iovcnt) struct iovec *iovp, \
662 u_int iovcnt, off_t offset); }
663 291 AUE_NULL UNIMPL nosys
664 292 AUE_NULL UNIMPL nosys
665 293 AUE_NULL UNIMPL nosys
666 294 AUE_NULL UNIMPL nosys
667 295 AUE_NULL UNIMPL nosys
668 296 AUE_NULL UNIMPL nosys
669 297 AUE_FHSTATFS COMPAT4 { int fhstatfs( \
670 _In_ const struct fhandle *u_fhp, \
671 _Out_ struct ostatfs *buf); }
672 298 AUE_FHOPEN STD { int fhopen( \
673 _In_ const struct fhandle *u_fhp, \
675 299 AUE_FHSTAT COMPAT11 { int fhstat( \
676 _In_ const struct fhandle *u_fhp, \
677 _Out_ struct freebsd11_stat *sb); }
678 300 AUE_NULL STD { int modnext(int modid); }
679 301 AUE_NULL STD { int modstat(int modid, \
680 _Out_ struct module_stat* stat); }
681 302 AUE_NULL STD { int modfnext(int modid); }
682 303 AUE_NULL STD { int modfind(_In_z_ const char *name); }
683 304 AUE_MODLOAD STD { int kldload(_In_z_ const char *file); }
684 305 AUE_MODUNLOAD STD { int kldunload(int fileid); }
685 306 AUE_NULL STD { int kldfind(_In_z_ const char *file); }
686 307 AUE_NULL STD { int kldnext(int fileid); }
687 308 AUE_NULL STD { int kldstat(int fileid, \
688 _Out_ struct kld_file_stat *stat); }
689 309 AUE_NULL STD { int kldfirstmod(int fileid); }
690 310 AUE_GETSID STD { int getsid(pid_t pid); }
691 311 AUE_SETRESUID STD { int setresuid(uid_t ruid, uid_t euid, \
693 312 AUE_SETRESGID STD { int setresgid(gid_t rgid, gid_t egid, \
695 313 AUE_NULL OBSOL signanosleep
696 314 AUE_AIO_RETURN STD { ssize_t aio_return( \
697 _Inout_ struct aiocb *aiocbp); }
698 315 AUE_AIO_SUSPEND STD { int aio_suspend( \
699 _Inout_updates_(nent) \
700 struct aiocb * const * aiocbp, \
703 const struct timespec *timeout); }
704 316 AUE_AIO_CANCEL STD { int aio_cancel(int fd, \
705 _In_opt_ struct aiocb *aiocbp); }
706 317 AUE_AIO_ERROR STD { int aio_error( \
707 _In_ struct aiocb *aiocbp); }
708 318 AUE_AIO_READ COMPAT6 { int aio_read( \
709 _Inout_ struct oaiocb *aiocbp); }
710 319 AUE_AIO_WRITE COMPAT6 { int aio_write( \
711 _Inout_ struct oaiocb *aiocbp); }
712 320 AUE_LIO_LISTIO COMPAT6 { int lio_listio(int mode, \
713 _Inout_updates_(nent) \
714 struct oaiocb * const *acb_list, \
716 _In_opt_ struct osigevent *sig); }
717 321 AUE_NULL STD { int yield(void); }
718 322 AUE_NULL OBSOL thr_sleep
719 323 AUE_NULL OBSOL thr_wakeup
720 324 AUE_MLOCKALL STD { int mlockall(int how); }
721 325 AUE_MUNLOCKALL STD { int munlockall(void); }
722 326 AUE_GETCWD STD { int __getcwd( \
723 _Out_writes_z_(buflen) char *buf, \
725 327 AUE_NULL STD { int sched_setparam (pid_t pid, \
726 _In_ const struct sched_param *param); }
727 328 AUE_NULL STD { int sched_getparam (pid_t pid, \
728 _Out_ struct sched_param *param); }
729 329 AUE_NULL STD { int sched_setscheduler (pid_t pid, int \
730 policy, _In_ const struct sched_param \
732 330 AUE_NULL STD { int sched_getscheduler (pid_t pid); }
733 331 AUE_NULL STD { int sched_yield (void); }
734 332 AUE_NULL STD { int sched_get_priority_max (int policy); }
735 333 AUE_NULL STD { int sched_get_priority_min (int policy); }
736 334 AUE_NULL STD { int sched_rr_get_interval (pid_t pid, \
737 _Out_ struct timespec *interval); }
738 335 AUE_NULL STD { int utrace( \
739 _In_reads_bytes_(len) const void *addr, \
741 336 AUE_SENDFILE COMPAT4 { int sendfile(int fd, int s, \
742 off_t offset, size_t nbytes, \
743 _In_opt_ struct sf_hdtr *hdtr, \
744 _Out_opt_ off_t *sbytes, int flags); }
745 337 AUE_NULL STD { int kldsym(int fileid, int cmd, \
747 338 AUE_JAIL STD { int jail( \
748 _In_ struct jail *jail); }
750 339 AUE_NULL NOSTD|NOTSTATIC { int nnpfs_syscall(int operation, \
751 char *a_pathP, int a_opcode, \
753 int a_followSymlinks); }
754 340 AUE_SIGPROCMASK STD { int sigprocmask(int how, \
755 _In_opt_ const sigset_t *set, \
756 _Out_opt_ sigset_t *oset); }
757 341 AUE_SIGSUSPEND STD { int sigsuspend( \
758 _In_ const sigset_t *sigmask); }
759 342 AUE_SIGACTION COMPAT4 { int sigaction(int sig, \
760 _In_opt_ const struct sigaction *act, \
761 _Out_opt_ struct sigaction *oact); }
762 343 AUE_SIGPENDING STD { int sigpending(_In_ sigset_t *set); }
763 344 AUE_SIGRETURN COMPAT4 { int sigreturn( \
764 _In_ const struct ucontext4 *sigcntxp); }
765 345 AUE_SIGWAIT STD { int sigtimedwait(_In_ const sigset_t *set, \
766 _Out_opt_ siginfo_t *info, \
767 _In_opt_ const struct timespec *timeout); }
768 346 AUE_NULL STD { int sigwaitinfo(_In_ const sigset_t *set, \
769 _Out_opt_ siginfo_t *info); }
770 347 AUE_ACL_GET_FILE STD { int __acl_get_file( \
771 _In_z_ const char *path, \
773 _Out_ struct acl *aclp); }
774 348 AUE_ACL_SET_FILE STD { int __acl_set_file( \
775 _In_z_ const char *path, \
776 acl_type_t type, _In_ struct acl *aclp); }
777 349 AUE_ACL_GET_FD STD { int __acl_get_fd(int filedes, \
778 acl_type_t type, _Out_ struct acl *aclp); }
779 350 AUE_ACL_SET_FD STD { int __acl_set_fd(int filedes, \
780 acl_type_t type, _In_ struct acl *aclp); }
781 351 AUE_ACL_DELETE_FILE STD { int __acl_delete_file( \
782 _In_z_ const char *path, \
784 352 AUE_ACL_DELETE_FD STD { int __acl_delete_fd(int filedes, \
786 353 AUE_ACL_CHECK_FILE STD { int __acl_aclcheck_file( \
787 _In_z_ const char *path, \
788 acl_type_t type, _In_ struct acl *aclp); }
789 354 AUE_ACL_CHECK_FD STD { int __acl_aclcheck_fd(int filedes, \
790 acl_type_t type, _In_ struct acl *aclp); }
791 355 AUE_EXTATTRCTL STD { int extattrctl(_In_z_ const char *path, \
792 int cmd, _In_z_opt_ const char *filename, \
794 _In_z_ const char *attrname); }
795 356 AUE_EXTATTR_SET_FILE STD { ssize_t extattr_set_file( \
796 _In_z_ const char *path, \
798 _In_z_ const char *attrname, \
799 _In_reads_bytes_(nbytes) void *data, \
801 357 AUE_EXTATTR_GET_FILE STD { ssize_t extattr_get_file( \
802 _In_z_ const char *path, \
804 _In_z_ const char *attrname, \
805 _Out_writes_bytes_(nbytes) void *data, \
807 358 AUE_EXTATTR_DELETE_FILE STD { int extattr_delete_file( \
808 _In_z_ const char *path, \
810 _In_z_ const char *attrname); }
811 359 AUE_AIO_WAITCOMPLETE STD { ssize_t aio_waitcomplete( \
812 _Outptr_result_maybenull_ \
813 struct aiocb **aiocbp, \
814 _In_opt_ struct timespec *timeout); }
815 360 AUE_GETRESUID STD { int getresuid(_Out_opt_ uid_t *ruid, \
816 _Out_opt_ uid_t *euid, \
817 _Out_opt_ uid_t *suid); }
818 361 AUE_GETRESGID STD { int getresgid(_Out_opt_ gid_t *rgid, \
819 _Out_opt_ gid_t *egid, \
820 _Out_opt_ gid_t *sgid); }
821 362 AUE_KQUEUE STD { int kqueue(void); }
822 363 AUE_KEVENT COMPAT11 { int kevent(int fd, \
823 _In_reads_opt_(nchanges) \
824 struct kevent_freebsd11 *changelist, \
826 _Out_writes_opt_(nevents) \
827 struct kevent_freebsd11 *eventlist, \
829 _In_opt_ const struct timespec *timeout); }
830 364 AUE_NULL UNIMPL __cap_get_proc
831 365 AUE_NULL UNIMPL __cap_set_proc
832 366 AUE_NULL UNIMPL __cap_get_fd
833 367 AUE_NULL UNIMPL __cap_get_file
834 368 AUE_NULL UNIMPL __cap_set_fd
835 369 AUE_NULL UNIMPL __cap_set_file
836 370 AUE_NULL UNIMPL nosys
837 371 AUE_EXTATTR_SET_FD STD { ssize_t extattr_set_fd(int fd, \
839 _In_z_ const char *attrname, \
840 _In_reads_bytes_(nbytes) void *data, \
842 372 AUE_EXTATTR_GET_FD STD { ssize_t extattr_get_fd(int fd, \
844 _In_z_ const char *attrname, \
845 _Out_writes_bytes_(nbytes) void *data, \
847 373 AUE_EXTATTR_DELETE_FD STD { int extattr_delete_fd(int fd, \
849 _In_z_ const char *attrname); }
850 374 AUE_SETUGID STD { int __setugid(int flag); }
851 375 AUE_NULL UNIMPL nfsclnt
852 376 AUE_EACCESS STD { int eaccess(_In_z_ char *path, int amode); }
853 377 AUE_NULL NOSTD|NOTSTATIC { int afs3_syscall(long syscall, \
854 long parm1, long parm2, long parm3, \
855 long parm4, long parm5, long parm6); }
856 378 AUE_NMOUNT STD { int nmount( \
857 _In_reads_(iovcnt) struct iovec *iovp, \
858 unsigned int iovcnt, int flags); }
859 379 AUE_NULL UNIMPL kse_exit
860 380 AUE_NULL UNIMPL kse_wakeup
861 381 AUE_NULL UNIMPL kse_create
862 382 AUE_NULL UNIMPL kse_thr_interrupt
863 383 AUE_NULL UNIMPL kse_release
864 384 AUE_NULL STD { int __mac_get_proc( \
865 _In_ struct mac *mac_p); }
866 385 AUE_NULL STD { int __mac_set_proc( \
867 _In_ struct mac *mac_p); }
868 386 AUE_NULL STD { int __mac_get_fd(int fd, \
869 _In_ struct mac *mac_p); }
870 387 AUE_NULL STD { int __mac_get_file( \
871 _In_z_ const char *path_p, \
872 _In_ struct mac *mac_p); }
873 388 AUE_NULL STD { int __mac_set_fd(int fd, \
874 _In_ struct mac *mac_p); }
875 389 AUE_NULL STD { int __mac_set_file( \
876 _In_z_ const char *path_p, \
877 _In_ struct mac *mac_p); }
878 390 AUE_NULL STD { int kenv(int what, \
879 _In_z_opt_ const char *name, \
880 _Inout_updates_opt_(len) \
881 char *value, int len); }
882 391 AUE_LCHFLAGS STD { int lchflags(_In_z_ const char *path, \
884 392 AUE_NULL STD { int uuidgen( \
885 _Out_writes_(count) struct uuid *store, \
887 393 AUE_SENDFILE STD { int sendfile(int fd, int s, \
890 _In_opt_ struct sf_hdtr *hdtr, \
891 _Out_opt_ off_t *sbytes, int flags); }
892 394 AUE_NULL STD { int mac_syscall( \
893 _In_z_ const char *policy, \
895 _In_opt_ void *arg); }
896 395 AUE_GETFSSTAT COMPAT11 { int getfsstat( \
897 _Out_writes_bytes_opt_(bufsize) \
898 struct freebsd11_statfs *buf, \
899 long bufsize, int mode); }
900 396 AUE_STATFS COMPAT11 { int statfs(_In_z_ char *path, \
901 _Out_ struct freebsd11_statfs *buf); }
902 397 AUE_FSTATFS COMPAT11 { int fstatfs(int fd, \
903 _Out_ struct freebsd11_statfs *buf); }
904 398 AUE_FHSTATFS COMPAT11 { int fhstatfs( \
905 _In_ const struct fhandle *u_fhp, \
906 _Out_ struct freebsd11_statfs *buf); }
907 399 AUE_NULL UNIMPL nosys
908 400 AUE_SEMCLOSE NOSTD { int ksem_close(semid_t id); }
909 401 AUE_SEMPOST NOSTD { int ksem_post(semid_t id); }
910 402 AUE_SEMWAIT NOSTD { int ksem_wait(semid_t id); }
911 403 AUE_SEMTRYWAIT NOSTD { int ksem_trywait(semid_t id); }
912 404 AUE_SEMINIT NOSTD { int ksem_init(_Out_ semid_t *idp, \
913 unsigned int value); }
914 405 AUE_SEMOPEN NOSTD { int ksem_open(_Out_ semid_t *idp, \
915 _In_z_ const char *name, int oflag, \
916 mode_t mode, unsigned int value); }
917 406 AUE_SEMUNLINK NOSTD { int ksem_unlink( \
918 _In_z_ const char *name); }
919 407 AUE_SEMGETVALUE NOSTD { int ksem_getvalue(semid_t id, \
921 408 AUE_SEMDESTROY NOSTD { int ksem_destroy(semid_t id); }
922 409 AUE_NULL STD { int __mac_get_pid(pid_t pid, \
923 _In_ struct mac *mac_p); }
924 410 AUE_NULL STD { int __mac_get_link( \
925 _In_z_ const char *path_p, \
926 _In_ struct mac *mac_p); }
927 411 AUE_NULL STD { int __mac_set_link( \
928 _In_z_ const char *path_p, \
929 _In_ struct mac *mac_p); }
930 412 AUE_EXTATTR_SET_LINK STD { ssize_t extattr_set_link( \
931 _In_z_ const char *path, \
933 _In_z_ const char *attrname, \
934 _In_reads_bytes_(nbytes) void *data, \
936 413 AUE_EXTATTR_GET_LINK STD { ssize_t extattr_get_link( \
937 _In_z_ const char *path, \
939 _In_z_ const char *attrname, \
940 _Out_writes_bytes_(nbytes) void *data, \
942 414 AUE_EXTATTR_DELETE_LINK STD { int extattr_delete_link( \
943 _In_z_ const char *path, \
945 _In_z_ const char *attrname); }
946 415 AUE_NULL STD { int __mac_execve(_In_z_ char *fname, \
949 _In_ struct mac *mac_p); }
950 416 AUE_SIGACTION STD { int sigaction(int sig, \
951 _In_opt_ const struct sigaction *act, \
952 _Out_opt_ struct sigaction *oact); }
953 417 AUE_SIGRETURN STD { int sigreturn( \
954 _In_ const struct __ucontext *sigcntxp); }
955 418 AUE_NULL UNIMPL __xstat
956 419 AUE_NULL UNIMPL __xfstat
957 420 AUE_NULL UNIMPL __xlstat
958 421 AUE_NULL STD { int getcontext( \
959 _Out_ struct __ucontext *ucp); }
960 422 AUE_NULL STD { int setcontext( \
961 _In_ const struct __ucontext *ucp); }
962 423 AUE_NULL STD { int swapcontext( \
963 _Out_ struct __ucontext *oucp, \
964 _In_ const struct __ucontext *ucp); }
965 424 AUE_SWAPOFF STD { int swapoff(_In_z_ const char *name); }
966 425 AUE_ACL_GET_LINK STD { int __acl_get_link( \
967 _In_z_ const char *path, acl_type_t type, \
968 _Out_ struct acl *aclp); }
969 426 AUE_ACL_SET_LINK STD { int __acl_set_link( \
970 _In_z_ const char *path, acl_type_t type, \
971 _In_ struct acl *aclp); }
972 427 AUE_ACL_DELETE_LINK STD { int __acl_delete_link( \
973 _In_z_ const char *path, \
975 428 AUE_ACL_CHECK_LINK STD { int __acl_aclcheck_link( \
976 _In_z_ const char *path, acl_type_t type, \
977 _In_ struct acl *aclp); }
978 429 AUE_SIGWAIT STD { int sigwait(_In_ const sigset_t *set, \
980 430 AUE_THR_CREATE STD { int thr_create(_In_ ucontext_t *ctx, \
981 _Out_ long *id, int flags); }
982 431 AUE_THR_EXIT STD { void thr_exit(_Out_opt_ long *state); }
983 432 AUE_NULL STD { int thr_self(_Out_ long *id); }
984 433 AUE_THR_KILL STD { int thr_kill(long id, int sig); }
985 434 AUE_NULL UNIMPL nosys
986 435 AUE_NULL UNIMPL nosys
987 436 AUE_JAIL_ATTACH STD { int jail_attach(int jid); }
988 437 AUE_EXTATTR_LIST_FD STD { ssize_t extattr_list_fd(int fd, \
990 _Out_writes_bytes_opt_(nbytes) \
993 438 AUE_EXTATTR_LIST_FILE STD { ssize_t extattr_list_file( \
994 _In_z_ const char *path, \
996 _Out_writes_bytes_opt_(nbytes) \
997 void *data, size_t nbytes); }
998 439 AUE_EXTATTR_LIST_LINK STD { ssize_t extattr_list_link( \
999 _In_z_ const char *path, \
1000 int attrnamespace, \
1001 _Out_writes_bytes_opt_(nbytes) \
1002 void *data, size_t nbytes); }
1003 440 AUE_NULL UNIMPL kse_switchin
1004 441 AUE_SEMWAIT NOSTD { int ksem_timedwait(semid_t id, \
1005 _In_opt_ const struct timespec *abstime); }
1006 442 AUE_NULL STD { int thr_suspend( \
1007 _In_opt_ const struct timespec *timeout); }
1008 443 AUE_NULL STD { int thr_wake(long id); }
1009 444 AUE_MODUNLOAD STD { int kldunloadf(int fileid, int flags); }
1010 445 AUE_AUDIT STD { int audit( \
1011 _In_reads_bytes_(length) \
1012 const void *record, \
1014 446 AUE_AUDITON STD { int auditon(int cmd, \
1015 _In_opt_ void *data, \
1017 447 AUE_GETAUID STD { int getauid(_Out_ uid_t *auid); }
1018 448 AUE_SETAUID STD { int setauid(_In_ uid_t *auid); }
1019 449 AUE_GETAUDIT STD { int getaudit( \
1020 _Out_ struct auditinfo *auditinfo); }
1021 450 AUE_SETAUDIT STD { int setaudit( \
1022 _In_ struct auditinfo *auditinfo); }
1023 451 AUE_GETAUDIT_ADDR STD { int getaudit_addr( \
1024 _Out_writes_bytes_(length) \
1025 struct auditinfo_addr *auditinfo_addr, \
1027 452 AUE_SETAUDIT_ADDR STD { int setaudit_addr( \
1028 _In_reads_bytes_(length) \
1029 struct auditinfo_addr *auditinfo_addr, \
1031 453 AUE_AUDITCTL STD { int auditctl(_In_z_ char *path); }
1032 454 AUE_NULL STD { int _umtx_op(_Inout_ void *obj, int op, \
1033 u_long val, _In_ void *uaddr1, \
1034 _In_ void *uaddr2); }
1035 455 AUE_THR_NEW STD { int thr_new(_In_ struct thr_param *param, \
1037 456 AUE_NULL STD { int sigqueue(pid_t pid, int signum, \
1038 _In_ void *value); }
1040 457 AUE_MQ_OPEN NOSTD { int kmq_open( \
1041 _In_z_ const char *path, \
1044 _In_opt_ const struct mq_attr *attr); }
1045 458 AUE_MQ_SETATTR NOSTD { int kmq_setattr(int mqd, \
1046 _In_opt_ const struct mq_attr *attr, \
1047 _Out_opt_ struct mq_attr *oattr); }
1048 459 AUE_MQ_TIMEDRECEIVE NOSTD { int kmq_timedreceive( \
1050 _Out_writes_bytes_(msg_len) char *msg_ptr, \
1052 _Out_opt_ unsigned *msg_prio, \
1054 const struct timespec *abs_timeout); }
1055 460 AUE_MQ_TIMEDSEND NOSTD { int kmq_timedsend(int mqd, \
1056 _In_reads_bytes_(msg_len) \
1057 const char *msg_ptr, size_t msg_len, \
1058 unsigned msg_prio, \
1060 const struct timespec *abs_timeout); }
1061 461 AUE_MQ_NOTIFY NOSTD { int kmq_notify(int mqd, \
1062 _In_opt_ const struct sigevent *sigev); }
1063 462 AUE_MQ_UNLINK NOSTD { int kmq_unlink(_In_z_ const char *path); }
1064 463 AUE_NULL STD { int abort2(_In_z_ const char *why, \
1066 _In_reads_(nargs) void **args); }
1067 464 AUE_NULL STD { int thr_set_name(long id, \
1068 _In_z_ const char *name); }
1069 465 AUE_AIO_FSYNC STD { int aio_fsync(int op, \
1070 _In_ struct aiocb *aiocbp); }
1071 466 AUE_RTPRIO STD { int rtprio_thread(int function, \
1073 _Inout_ struct rtprio *rtp); }
1074 467 AUE_NULL UNIMPL nosys
1075 468 AUE_NULL UNIMPL nosys
1076 469 AUE_NULL UNIMPL __getpath_fromfd
1077 470 AUE_NULL UNIMPL __getpath_fromaddr
1078 471 AUE_SCTP_PEELOFF NOSTD { int sctp_peeloff(int sd, \
1080 472 AUE_SCTP_GENERIC_SENDMSG NOSTD { int sctp_generic_sendmsg( \
1082 _In_reads_bytes_(mlen) caddr_t msg, \
1084 _In_reads_bytes_(tolen) \
1086 __socklen_t tolen, \
1087 _In_opt_ struct sctp_sndrcvinfo *sinfo, \
1089 473 AUE_SCTP_GENERIC_SENDMSG_IOV NOSTD { \
1090 int sctp_generic_sendmsg_iov( \
1092 _In_reads_(iovlen) struct iovec *iov, \
1094 _In_reads_bytes_(tolen) \
1096 __socklen_t tolen, \
1097 _In_opt_ struct sctp_sndrcvinfo *sinfo, \
1099 474 AUE_SCTP_GENERIC_RECVMSG NOSTD { int sctp_generic_recvmsg( \
1101 _In_reads_(iovlen) struct iovec *iov, \
1103 _Out_writes_bytes_(*fromlenaddr) \
1104 struct sockaddr *from, \
1105 _Out_ __socklen_t *fromlenaddr, \
1106 _In_opt_ struct sctp_sndrcvinfo *sinfo, \
1107 _Out_opt_ int *msg_flags); }
1108 475 AUE_PREAD STD { ssize_t pread(int fd, \
1109 _Out_writes_bytes_(nbyte) void *buf, \
1110 size_t nbyte, off_t offset); }
1111 476 AUE_PWRITE STD { ssize_t pwrite(int fd, \
1112 _In_reads_bytes_(nbyte) \
1114 size_t nbyte, off_t offset); }
1115 477 AUE_MMAP STD { caddr_t mmap(_In_ caddr_t addr, size_t len, \
1116 int prot, int flags, int fd, off_t pos); }
1117 478 AUE_LSEEK STD { off_t lseek(int fd, off_t offset, \
1119 479 AUE_TRUNCATE STD { int truncate(_In_z_ char *path, \
1121 480 AUE_FTRUNCATE STD { int ftruncate(int fd, off_t length); }
1122 481 AUE_THR_KILL2 STD { int thr_kill2(pid_t pid, long id, int sig); }
1123 482 AUE_SHMOPEN STD { int shm_open( \
1124 _In_z_ const char *path, \
1127 483 AUE_SHMUNLINK STD { int shm_unlink(_In_z_ const char *path); }
1128 484 AUE_NULL STD { int cpuset(_Out_ cpusetid_t *setid); }
1129 485 AUE_NULL STD { int cpuset_setid(cpuwhich_t which, id_t id, \
1130 cpusetid_t setid); }
1131 486 AUE_NULL STD { int cpuset_getid(cpulevel_t level, \
1132 cpuwhich_t which, id_t id, \
1133 _Out_ cpusetid_t *setid); }
1134 487 AUE_NULL STD { int cpuset_getaffinity(cpulevel_t level, \
1135 cpuwhich_t which, id_t id, \
1136 size_t cpusetsize, \
1137 _Out_ cpuset_t *mask); }
1138 488 AUE_NULL STD { int cpuset_setaffinity(cpulevel_t level, \
1139 cpuwhich_t which, id_t id, \
1140 size_t cpusetsize, \
1141 _Out_ const cpuset_t *mask); }
1142 489 AUE_FACCESSAT STD { int faccessat(int fd, _In_z_ char *path, \
1143 int amode, int flag); }
1144 490 AUE_FCHMODAT STD { int fchmodat(int fd, \
1145 _In_z_ char *path, mode_t mode, \
1147 491 AUE_FCHOWNAT STD { int fchownat(int fd, _In_z_ char *path, \
1148 uid_t uid, gid_t gid, int flag); }
1149 492 AUE_FEXECVE STD { int fexecve(int fd, \
1151 _In_ char **envv); }
1152 493 AUE_FSTATAT COMPAT11 { int fstatat(int fd, _In_z_ char *path, \
1153 _Out_ struct freebsd11_stat *buf, \
1155 494 AUE_FUTIMESAT STD { int futimesat(int fd, \
1156 _In_z_ char *path, \
1157 _In_reads_(2) struct timeval *times); }
1158 495 AUE_LINKAT STD { int linkat(int fd1, \
1159 _In_z_ char *path1, \
1161 _In_z_ char *path2, \
1163 496 AUE_MKDIRAT STD { int mkdirat(int fd, _In_z_ char *path, \
1165 497 AUE_MKFIFOAT STD { int mkfifoat(int fd, \
1166 _In_z_ char *path, mode_t mode); }
1167 498 AUE_MKNODAT COMPAT11 { int mknodat(int fd, _In_z_ char *path, \
1170 ; XXX: see the comment for open
1171 499 AUE_OPENAT_RWTC STD { int openat(int fd, _In_z_ char *path, \
1172 int flag, mode_t mode); }
1173 500 AUE_READLINKAT STD { int readlinkat(int fd, \
1174 _In_z_ char *path, \
1175 _Out_writes_bytes_(bufsize) char *buf, \
1177 501 AUE_RENAMEAT STD { int renameat(int oldfd, \
1179 int newfd, _In_z_ char *new); }
1180 502 AUE_SYMLINKAT STD { int symlinkat(_In_z_ char *path1, int fd, \
1181 _In_z_ char *path2); }
1182 503 AUE_UNLINKAT STD { int unlinkat(int fd, _In_z_ char *path, \
1184 504 AUE_POSIX_OPENPT STD { int posix_openpt(int flags); }
1185 ; 505 is initialised by the kgssapi code, if present.
1186 505 AUE_NULL NOSTD { int gssd_syscall(_In_z_ char *path); }
1187 506 AUE_JAIL_GET STD { int jail_get( \
1188 _In_reads_(iovcnt) struct iovec *iovp, \
1189 unsigned int iovcnt, int flags); }
1190 507 AUE_JAIL_SET STD { int jail_set( \
1191 _In_reads_(iovcnt) struct iovec *iovp, \
1192 unsigned int iovcnt, int flags); }
1193 508 AUE_JAIL_REMOVE STD { int jail_remove(int jid); }
1194 509 AUE_CLOSEFROM STD { int closefrom(int lowfd); }
1195 510 AUE_SEMCTL NOSTD { int __semctl(int semid, int semnum, \
1196 int cmd, _Inout_ union semun *arg); }
1197 511 AUE_MSGCTL NOSTD { int msgctl(int msqid, int cmd, \
1198 _Inout_opt_ struct msqid_ds *buf); }
1199 512 AUE_SHMCTL NOSTD { int shmctl(int shmid, int cmd, \
1200 _Inout_opt_ struct shmid_ds *buf); }
1201 513 AUE_LPATHCONF STD { int lpathconf(_In_z_ char *path, \
1203 514 AUE_NULL OBSOL cap_new
1204 515 AUE_CAP_RIGHTS_GET STD { int __cap_rights_get(int version, \
1205 int fd, _Out_ cap_rights_t *rightsp); }
1206 516 AUE_CAP_ENTER STD { int cap_enter(void); }
1207 517 AUE_CAP_GETMODE STD { int cap_getmode(_Out_ u_int *modep); }
1208 518 AUE_PDFORK STD { int pdfork(_Out_ int *fdp, int flags); }
1209 519 AUE_PDKILL STD { int pdkill(int fd, int signum); }
1210 520 AUE_PDGETPID STD { int pdgetpid(int fd, _Out_ pid_t *pidp); }
1211 521 AUE_PDWAIT UNIMPL pdwait4
1212 522 AUE_SELECT STD { int pselect(int nd, \
1213 _Inout_opt_ fd_set *in, \
1214 _Inout_opt_ fd_set *ou, \
1215 _Inout_opt_ fd_set *ex, \
1216 _In_opt_ const struct timespec *ts, \
1217 _In_opt_ const sigset_t *sm); }
1218 523 AUE_GETLOGINCLASS STD { int getloginclass( \
1219 _Out_writes_z_(namelen) char *namebuf, \
1221 524 AUE_SETLOGINCLASS STD { int setloginclass( \
1222 _In_z_ const char *namebuf); }
1223 525 AUE_NULL STD { int rctl_get_racct( \
1224 _In_reads_bytes_(inbuflen) \
1225 const void *inbufp, size_t inbuflen, \
1226 _Out_writes_bytes_(outbuflen) \
1227 void *outbufp, size_t outbuflen); }
1228 526 AUE_NULL STD { int rctl_get_rules( \
1229 _In_reads_bytes_(inbuflen) \
1230 const void *inbufp, size_t inbuflen, \
1231 _Out_writes_bytes_(outbuflen) \
1232 void *outbufp, size_t outbuflen); }
1233 527 AUE_NULL STD { int rctl_get_limits( \
1234 _In_reads_bytes_(inbuflen) \
1235 const void *inbufp, size_t inbuflen, \
1236 _Out_writes_bytes_(outbuflen) \
1237 void *outbufp, size_t outbuflen); }
1238 528 AUE_NULL STD { int rctl_add_rule( \
1239 _In_reads_bytes_(inbuflen) \
1240 const void *inbufp, size_t inbuflen, \
1241 _Out_writes_bytes_(outbuflen) \
1242 void *outbufp, size_t outbuflen); }
1243 529 AUE_NULL STD { int rctl_remove_rule( \
1244 _In_reads_bytes_(inbuflen) \
1245 const void *inbufp, size_t inbuflen, \
1246 _Out_writes_bytes_(outbuflen) \
1247 void *outbufp, size_t outbuflen); }
1248 530 AUE_POSIX_FALLOCATE STD { int posix_fallocate(int fd, \
1249 off_t offset, off_t len); }
1250 531 AUE_POSIX_FADVISE STD { int posix_fadvise(int fd, \
1252 off_t len, int advice); }
1253 532 AUE_WAIT6 STD { int wait6(idtype_t idtype, id_t id, \
1254 _Out_opt_ int *status, int options, \
1255 _Out_opt_ struct __wrusage *wrusage, \
1256 _Out_opt_ siginfo_t *info); }
1257 533 AUE_CAP_RIGHTS_LIMIT STD { int cap_rights_limit(int fd, \
1258 _In_ cap_rights_t *rightsp); }
1259 534 AUE_CAP_IOCTLS_LIMIT STD { int cap_ioctls_limit(int fd, \
1260 _In_reads_(ncmds) const u_long *cmds, \
1262 535 AUE_CAP_IOCTLS_GET STD { ssize_t cap_ioctls_get(int fd, \
1263 _Out_writes_(maxcmds) u_long *cmds, \
1265 536 AUE_CAP_FCNTLS_LIMIT STD { int cap_fcntls_limit(int fd, \
1266 uint32_t fcntlrights); }
1267 537 AUE_CAP_FCNTLS_GET STD { int cap_fcntls_get(int fd, \
1268 _Out_ uint32_t *fcntlrightsp); }
1269 538 AUE_BINDAT STD { int bindat(int fd, int s, \
1270 _In_reads_bytes_(namelen) \
1273 539 AUE_CONNECTAT STD { int connectat(int fd, int s, \
1274 _In_reads_bytes_(namelen) \
1277 540 AUE_CHFLAGSAT STD { int chflagsat(int fd, \
1278 _In_z_ const char *path, \
1279 u_long flags, int atflag); }
1280 541 AUE_ACCEPT STD { int accept4(int s, \
1281 _Out_writes_bytes_opt_(*anamelen) \
1282 struct sockaddr * __restrict name, \
1284 __socklen_t * __restrict anamelen, \
1286 542 AUE_PIPE STD { int pipe2(_Out_writes_(2) int *fildes, \
1288 543 AUE_AIO_MLOCK STD { int aio_mlock(_In_ struct aiocb *aiocbp); }
1289 544 AUE_PROCCTL STD { int procctl(idtype_t idtype, id_t id, \
1290 int com, _In_opt_ void *data); }
1291 545 AUE_POLL STD { int ppoll( \
1292 _Inout_updates_(nfds) struct pollfd *fds, \
1294 _In_opt_ const struct timespec *ts, \
1295 _In_opt_ const sigset_t *set); }
1296 546 AUE_FUTIMES STD { int futimens(int fd, \
1298 struct timespec *times); }
1299 547 AUE_FUTIMESAT STD { int utimensat(int fd, \
1300 _In_z_ char *path, \
1302 struct timespec *times, \
1304 548 AUE_NULL UNIMPL numa_getaffinity
1305 549 AUE_NULL UNIMPL numa_setaffinity
1306 550 AUE_FSYNC STD { int fdatasync(int fd); }
1307 551 AUE_FSTAT STD { int fstat(int fd, _Out_ struct stat *sb); }
1308 552 AUE_FSTATAT STD { int fstatat(int fd, _In_z_ char *path, \
1309 _Out_ struct stat *buf, int flag); }
1310 553 AUE_FHSTAT STD { int fhstat(_In_ const struct fhandle *u_fhp, \
1311 _Out_ struct stat *sb); }
1312 554 AUE_GETDIRENTRIES STD { ssize_t getdirentries(int fd, \
1313 _Out_writes_bytes_(count) char *buf, \
1314 size_t count, _Out_ off_t *basep); }
1315 555 AUE_STATFS STD { int statfs(_In_z_ char *path, \
1316 _Out_ struct statfs *buf); }
1317 556 AUE_FSTATFS STD { int fstatfs(int fd, \
1318 _Out_ struct statfs *buf); }
1319 557 AUE_GETFSSTAT STD { int getfsstat( \
1320 _Out_writes_bytes_opt_(bufsize) \
1321 struct statfs *buf, \
1322 long bufsize, int mode); }
1323 558 AUE_FHSTATFS STD { int fhstatfs( \
1324 _In_ const struct fhandle *u_fhp, \
1325 _Out_ struct statfs *buf); }
1326 559 AUE_MKNODAT STD { int mknodat(int fd, _In_z_ char *path, \
1327 mode_t mode, dev_t dev); }
1328 560 AUE_KEVENT STD { int kevent(int fd, \
1329 _In_reads_opt_(nchanges) \
1330 struct kevent *changelist, \
1332 _Out_writes_opt_(nevents) \
1333 struct kevent *eventlist, int nevents, \
1334 _In_opt_ const struct timespec *timeout); }
1335 561 AUE_NULL STD { int cpuset_getdomain(cpulevel_t level, \
1336 cpuwhich_t which, id_t id, \
1337 size_t domainsetsize, \
1338 _Out_writes_bytes_(domainsetsize) \
1339 domainset_t *mask, \
1340 _Out_ int *policy); }
1341 562 AUE_NULL STD { int cpuset_setdomain(cpulevel_t level, \
1342 cpuwhich_t which, id_t id, \
1343 size_t domainsetsize, \
1344 _In_ domainset_t *mask, \
1346 563 AUE_NULL STD { int getrandom( \
1347 _Out_writes_bytes_(buflen) void *buf, \
1348 size_t buflen, unsigned int flags); }
1350 ; Please copy any additions and changes to the following compatability tables:
1351 ; sys/compat/freebsd32/syscalls.master