xref: /freebsd/sys/kern/syscalls.master (revision 86c9d9918f1db7cdd968b60f8902466887bcd9e9)
1 $FreeBSD$
2;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
3;
4; System call name/number master file.
5; Processed to created init_sysent.c, syscalls.c and syscall.h.
6
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, 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	psuedo-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
24
25; types:
26;	STD	always included
27;	COMPAT	included on COMPAT #ifdef
28;	COMPAT4	included on COMPAT4 #ifdef (FreeBSD 4 compat)
29;	COMPAT6	included on COMPAT6 #ifdef (FreeBSD 6 compat)
30;	COMPAT7	included on COMPAT7 #ifdef (FreeBSD 7 compat)
31;	OBSOL	obsolete, not included in system, only specifies name
32;	UNIMPL	not implemented, placeholder only
33;	NOSTD	implemented but as a lkm that can be statically
34;		compiled in; sysent entry will be filled with lkmressys
35;		so the SYSCALL_MODULE macro works
36;	NOARGS	same as STD except do not create structure in sys/sysproto.h
37;	NODEF	same as STD except only have the entry in the syscall table
38;		added.  Meaning - do not create structure or function
39;		prototype in sys/sysproto.h
40;	NOPROTO	same as STD except do not create structure or
41;		function prototype in sys/sysproto.h.  Does add a
42;		definition to syscall.h besides adding a sysent.
43;	NOTSTATIC syscall is loadable
44;
45; Please copy any additions and changes to the following compatability tables:
46; sys/compat/freebsd32/syscalls.master
47
48; #ifdef's, etc. may be included, and are copied to the output files.
49
50#include <sys/param.h>
51#include <sys/sysent.h>
52#include <sys/sysproto.h>
53
54; Reserved/unimplemented system calls in the range 0-150 inclusive
55; are reserved for use in future Berkeley releases.
56; Additional system calls implemented in vendor and other
57; redistributions should be placed in the reserved range at the end
58; of the current calls.
59
600	AUE_NULL	STD	{ int nosys(void); } syscall nosys_args int
611	AUE_EXIT	STD	{ void sys_exit(int rval); } exit \
62				    sys_exit_args void
632	AUE_FORK	STD	{ int fork(void); }
643	AUE_NULL	STD	{ ssize_t read(int fd, void *buf, \
65				    size_t nbyte); }
664	AUE_NULL	STD	{ ssize_t write(int fd, const void *buf, \
67				    size_t nbyte); }
685	AUE_OPEN_RWTC	STD	{ int open(char *path, int flags, int mode); }
69; XXX should be		{ int open(const char *path, int flags, ...); }
70; but we're not ready for `const' or varargs.
71; XXX man page says `mode_t mode'.
726	AUE_CLOSE	STD	{ int close(int fd); }
737	AUE_WAIT4	STD	{ int wait4(int pid, int *status, \
74				    int options, struct rusage *rusage); }
758	AUE_CREAT	COMPAT	{ int creat(char *path, int mode); }
769	AUE_LINK	STD	{ int link(char *path, char *link); }
7710	AUE_UNLINK	STD	{ int unlink(char *path); }
7811	AUE_NULL	OBSOL	execv
7912	AUE_CHDIR	STD	{ int chdir(char *path); }
8013	AUE_FCHDIR	STD	{ int fchdir(int fd); }
8114	AUE_MKNOD	STD	{ int mknod(char *path, int mode, int dev); }
8215	AUE_CHMOD	STD	{ int chmod(char *path, int mode); }
8316	AUE_CHOWN	STD	{ int chown(char *path, int uid, int gid); }
8417	AUE_NULL	STD	{ int obreak(char *nsize); } break \
85				    obreak_args int
8618	AUE_GETFSSTAT	COMPAT4	{ int getfsstat(struct ostatfs *buf, \
87				    long bufsize, int flags); }
8819	AUE_LSEEK	COMPAT	{ long lseek(int fd, long offset, \
89				    int whence); }
9020	AUE_GETPID	STD	{ pid_t getpid(void); }
9121	AUE_MOUNT	STD	{ int mount(char *type, char *path, \
92				    int flags, caddr_t data); }
93; XXX `path' should have type `const char *' but we're not ready for that.
9422	AUE_UMOUNT	STD	{ int unmount(char *path, int flags); }
9523	AUE_SETUID	STD	{ int setuid(uid_t uid); }
9624	AUE_GETUID	STD	{ uid_t getuid(void); }
9725	AUE_GETEUID	STD	{ uid_t geteuid(void); }
9826	AUE_PTRACE	STD	{ int ptrace(int req, pid_t pid, \
99				    caddr_t addr, int data); }
10027	AUE_RECVMSG	STD	{ int recvmsg(int s, struct msghdr *msg, \
101				    int flags); }
10228	AUE_SENDMSG	STD	{ int sendmsg(int s, struct msghdr *msg, \
103				    int flags); }
10429	AUE_RECVFROM	STD	{ int recvfrom(int s, caddr_t buf, \
105				    size_t len, int flags, \
106				    struct sockaddr * __restrict from, \
107				    __socklen_t * __restrict fromlenaddr); }
10830	AUE_ACCEPT	STD	{ int accept(int s, \
109				    struct sockaddr * __restrict name, \
110				    __socklen_t * __restrict anamelen); }
11131	AUE_GETPEERNAME	STD	{ int getpeername(int fdes, \
112				    struct sockaddr * __restrict asa, \
113				    __socklen_t * __restrict alen); }
11432	AUE_GETSOCKNAME	STD	{ int getsockname(int fdes, \
115				    struct sockaddr * __restrict asa, \
116				    __socklen_t * __restrict alen); }
11733	AUE_ACCESS	STD	{ int access(char *path, int amode); }
11834	AUE_CHFLAGS	STD	{ int chflags(const char *path, u_long flags); }
11935	AUE_FCHFLAGS	STD	{ int fchflags(int fd, u_long flags); }
12036	AUE_SYNC	STD	{ int sync(void); }
12137	AUE_KILL	STD	{ int kill(int pid, int signum); }
12238	AUE_STAT	COMPAT	{ int stat(char *path, struct ostat *ub); }
12339	AUE_GETPPID	STD	{ pid_t getppid(void); }
12440	AUE_LSTAT	COMPAT	{ int lstat(char *path, struct ostat *ub); }
12541	AUE_DUP		STD	{ int dup(u_int fd); }
12642	AUE_PIPE	STD	{ int pipe(void); }
12743	AUE_GETEGID	STD	{ gid_t getegid(void); }
12844	AUE_PROFILE	STD	{ int profil(caddr_t samples, size_t size, \
129				    size_t offset, u_int scale); }
13045	AUE_KTRACE	STD	{ int ktrace(const char *fname, int ops, \
131				    int facs, int pid); }
13246	AUE_SIGACTION	COMPAT	{ int sigaction(int signum, \
133				    struct osigaction *nsa, \
134				    struct osigaction *osa); }
13547	AUE_GETGID	STD	{ gid_t getgid(void); }
13648	AUE_SIGPROCMASK	COMPAT	{ int sigprocmask(int how, osigset_t mask); }
137; XXX note nonstandard (bogus) calling convention - the libc stub passes
138; us the mask, not a pointer to it, and we return the old mask as the
139; (int) return value.
14049	AUE_GETLOGIN	STD	{ int getlogin(char *namebuf, u_int \
141				    namelen); }
14250	AUE_SETLOGIN	STD	{ int setlogin(char *namebuf); }
14351	AUE_ACCT	STD	{ int acct(char *path); }
14452	AUE_SIGPENDING	COMPAT	{ int sigpending(void); }
14553	AUE_SIGALTSTACK	STD	{ int sigaltstack(stack_t *ss, \
146				    stack_t *oss); }
14754	AUE_IOCTL	STD	{ int ioctl(int fd, u_long com, \
148				    caddr_t data); }
14955	AUE_REBOOT	STD	{ int reboot(int opt); }
15056	AUE_REVOKE	STD	{ int revoke(char *path); }
15157	AUE_SYMLINK	STD	{ int symlink(char *path, char *link); }
15258	AUE_READLINK	STD	{ ssize_t readlink(char *path, char *buf, \
153				    size_t count); }
15459	AUE_EXECVE	STD	{ int execve(char *fname, char **argv, \
155				    char **envv); }
15660	AUE_UMASK	STD	{ int umask(int newmask); } umask umask_args \
157				    int
15861	AUE_CHROOT	STD	{ int chroot(char *path); }
15962	AUE_FSTAT	COMPAT	{ int fstat(int fd, struct ostat *sb); }
16063	AUE_NULL	COMPAT	{ int getkerninfo(int op, char *where, \
161				    size_t *size, int arg); } getkerninfo \
162				    getkerninfo_args int
16364	AUE_NULL	COMPAT	{ int getpagesize(void); } getpagesize \
164				    getpagesize_args int
16565	AUE_MSYNC	STD	{ int msync(void *addr, size_t len, \
166				    int flags); }
16766	AUE_VFORK	STD	{ int vfork(void); }
16867	AUE_NULL	OBSOL	vread
16968	AUE_NULL	OBSOL	vwrite
17069	AUE_SBRK	STD	{ int sbrk(int incr); }
17170	AUE_SSTK	STD	{ int sstk(int incr); }
17271	AUE_MMAP	COMPAT	{ int mmap(void *addr, int len, int prot, \
173				    int flags, int fd, long pos); }
17472	AUE_O_VADVISE	STD	{ int ovadvise(int anom); } vadvise \
175				    ovadvise_args int
17673	AUE_MUNMAP	STD	{ int munmap(void *addr, size_t len); }
17774	AUE_MPROTECT	STD	{ int mprotect(const void *addr, size_t len, \
178				    int prot); }
17975	AUE_MADVISE	STD	{ int madvise(void *addr, size_t len, \
180				    int behav); }
18176	AUE_NULL	OBSOL	vhangup
18277	AUE_NULL	OBSOL	vlimit
18378	AUE_MINCORE	STD	{ int mincore(const void *addr, size_t len, \
184				    char *vec); }
18579	AUE_GETGROUPS	STD	{ int getgroups(u_int gidsetsize, \
186				    gid_t *gidset); }
18780	AUE_SETGROUPS	STD	{ int setgroups(u_int gidsetsize, \
188				    gid_t *gidset); }
18981	AUE_GETPGRP	STD	{ int getpgrp(void); }
19082	AUE_SETPGRP	STD	{ int setpgid(int pid, int pgid); }
19183	AUE_SETITIMER	STD	{ int setitimer(u_int which, struct \
192				    itimerval *itv, struct itimerval *oitv); }
19384	AUE_WAIT4	COMPAT	{ int wait(void); }
19485	AUE_SWAPON	STD	{ int swapon(char *name); }
19586	AUE_GETITIMER	STD	{ int getitimer(u_int which, \
196				    struct itimerval *itv); }
19787	AUE_SYSCTL	COMPAT	{ int gethostname(char *hostname, \
198				    u_int len); } gethostname \
199				    gethostname_args int
20088	AUE_SYSCTL	COMPAT	{ int sethostname(char *hostname, \
201				    u_int len); } sethostname \
202				    sethostname_args int
20389	AUE_GETDTABLESIZE	STD	{ int getdtablesize(void); }
20490	AUE_DUP2	STD	{ int dup2(u_int from, u_int to); }
20591	AUE_NULL	UNIMPL	getdopt
20692	AUE_FCNTL	STD	{ int fcntl(int fd, int cmd, long arg); }
207; XXX should be	{ int fcntl(int fd, int cmd, ...); }
208; but we're not ready for varargs.
20993	AUE_SELECT	STD	{ int select(int nd, fd_set *in, fd_set *ou, \
210				    fd_set *ex, struct timeval *tv); }
21194	AUE_NULL	UNIMPL	setdopt
21295	AUE_FSYNC	STD	{ int fsync(int fd); }
21396	AUE_SETPRIORITY	STD	{ int setpriority(int which, int who, \
214				    int prio); }
21597	AUE_SOCKET	STD	{ int socket(int domain, int type, \
216				    int protocol); }
21798	AUE_CONNECT	STD	{ int connect(int s, caddr_t name, \
218				    int namelen); }
21999	AUE_ACCEPT	COMPAT|NOARGS { int accept(int s, caddr_t name, \
220				    int *anamelen); } accept accept_args int
221100	AUE_GETPRIORITY	STD	{ int getpriority(int which, int who); }
222101	AUE_SEND	COMPAT	{ int send(int s, caddr_t buf, int len, \
223				    int flags); }
224102	AUE_RECV	COMPAT	{ int recv(int s, caddr_t buf, int len, \
225				    int flags); }
226103	AUE_SIGRETURN	COMPAT	{ int sigreturn( \
227				    struct osigcontext *sigcntxp); }
228104	AUE_BIND	STD	{ int bind(int s, caddr_t name, \
229				    int namelen); }
230105	AUE_SETSOCKOPT	STD	{ int setsockopt(int s, int level, int name, \
231				    caddr_t val, int valsize); }
232106	AUE_LISTEN	STD	{ int listen(int s, int backlog); }
233107	AUE_NULL	OBSOL	vtimes
234108	AUE_NULL	COMPAT	{ int sigvec(int signum, struct sigvec *nsv, \
235				    struct sigvec *osv); }
236109	AUE_NULL	COMPAT	{ int sigblock(int mask); }
237110	AUE_NULL	COMPAT	{ int sigsetmask(int mask); }
238111	AUE_NULL	COMPAT	{ int sigsuspend(osigset_t mask); }
239; XXX note nonstandard (bogus) calling convention - the libc stub passes
240; us the mask, not a pointer to it.
241112	AUE_NULL	COMPAT	{ int sigstack(struct sigstack *nss, \
242				    struct sigstack *oss); }
243113	AUE_RECVMSG	COMPAT	{ int recvmsg(int s, struct omsghdr *msg, \
244				    int flags); }
245114	AUE_SENDMSG	COMPAT	{ int sendmsg(int s, caddr_t msg, \
246				    int flags); }
247115	AUE_NULL	OBSOL	vtrace
248116	AUE_GETTIMEOFDAY	STD	{ int gettimeofday(struct timeval *tp, \
249				    struct timezone *tzp); }
250117	AUE_GETRUSAGE	STD	{ int getrusage(int who, \
251				    struct rusage *rusage); }
252118	AUE_GETSOCKOPT	STD	{ int getsockopt(int s, int level, int name, \
253				    caddr_t val, int *avalsize); }
254119	AUE_NULL	UNIMPL	resuba (BSD/OS 2.x)
255120	AUE_READV	STD	{ int readv(int fd, struct iovec *iovp, \
256				    u_int iovcnt); }
257121	AUE_WRITEV	STD	{ int writev(int fd, struct iovec *iovp, \
258				    u_int iovcnt); }
259122	AUE_SETTIMEOFDAY	STD	{ int settimeofday(struct timeval *tv, \
260				    struct timezone *tzp); }
261123	AUE_FCHOWN	STD	{ int fchown(int fd, int uid, int gid); }
262124	AUE_FCHMOD	STD	{ int fchmod(int fd, int mode); }
263125	AUE_RECVFROM	COMPAT|NOARGS { int recvfrom(int s, caddr_t buf, \
264				    size_t len, int flags, caddr_t from, int \
265				    *fromlenaddr); } recvfrom recvfrom_args \
266				    int
267126	AUE_SETREUID	STD	{ int setreuid(int ruid, int euid); }
268127	AUE_SETREGID	STD	{ int setregid(int rgid, int egid); }
269128	AUE_RENAME	STD	{ int rename(char *from, char *to); }
270129	AUE_TRUNCATE	COMPAT	{ int truncate(char *path, long length); }
271130	AUE_FTRUNCATE	COMPAT	{ int ftruncate(int fd, long length); }
272131	AUE_FLOCK	STD	{ int flock(int fd, int how); }
273132	AUE_MKFIFO	STD	{ int mkfifo(char *path, int mode); }
274133	AUE_SENDTO	STD	{ int sendto(int s, caddr_t buf, size_t len, \
275				    int flags, caddr_t to, int tolen); }
276134	AUE_SHUTDOWN	STD	{ int shutdown(int s, int how); }
277135	AUE_SOCKETPAIR	STD	{ int socketpair(int domain, int type, \
278				    int protocol, int *rsv); }
279136	AUE_MKDIR	STD	{ int mkdir(char *path, int mode); }
280137	AUE_RMDIR	STD	{ int rmdir(char *path); }
281138	AUE_UTIMES	STD	{ int utimes(char *path, \
282				    struct timeval *tptr); }
283139	AUE_NULL	OBSOL	4.2 sigreturn
284140	AUE_ADJTIME	STD	{ int adjtime(struct timeval *delta, \
285				    struct timeval *olddelta); }
286141	AUE_GETPEERNAME	COMPAT	{ int getpeername(int fdes, caddr_t asa, \
287				    int *alen); }
288142	AUE_SYSCTL	COMPAT	{ long gethostid(void); }
289143	AUE_SYSCTL	COMPAT	{ int sethostid(long hostid); }
290144	AUE_GETRLIMIT	COMPAT	{ int getrlimit(u_int which, struct \
291				    orlimit *rlp); }
292145	AUE_SETRLIMIT	COMPAT	{ int setrlimit(u_int which, \
293				    struct orlimit *rlp); }
294146	AUE_KILLPG	COMPAT	{ int killpg(int pgid, int signum); }
295147	AUE_SETSID	STD	{ int setsid(void); }
296148	AUE_QUOTACTL	STD	{ int quotactl(char *path, int cmd, int uid, \
297				    caddr_t arg); }
298149	AUE_O_QUOTA	COMPAT	{ int quota(void); }
299150	AUE_GETSOCKNAME	COMPAT|NOARGS { int getsockname(int fdec, \
300				    caddr_t asa, int *alen); } getsockname \
301				    getsockname_args int
302
303; Syscalls 151-180 inclusive are reserved for vendor-specific
304; system calls.  (This includes various calls added for compatibity
305; with other Unix variants.)
306; Some of these calls are now supported by BSD...
307151	AUE_NULL	UNIMPL	sem_lock (BSD/OS 2.x)
308152	AUE_NULL	UNIMPL	sem_wakeup (BSD/OS 2.x)
309153	AUE_NULL	UNIMPL	asyncdaemon (BSD/OS 2.x)
310; 154 is initialised by the NLM code, if present.
311154	AUE_NULL	NOSTD	{ int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
312; 155 is initialized by the NFS code, if present.
313155	AUE_NFS_SVC	NOSTD	{ int nfssvc(int flag, caddr_t argp); }
314156	AUE_GETDIRENTRIES	COMPAT	{ int getdirentries(int fd, char *buf, \
315				    u_int count, long *basep); }
316157	AUE_STATFS	COMPAT4	{ int statfs(char *path, \
317				    struct ostatfs *buf); }
318158	AUE_FSTATFS	COMPAT4	{ int fstatfs(int fd, \
319				    struct ostatfs *buf); }
320159	AUE_NULL	UNIMPL	nosys
321160	AUE_LGETFH	STD	{ int lgetfh(char *fname, \
322				    struct fhandle *fhp); }
323161	AUE_NFS_GETFH	STD	{ int getfh(char *fname, \
324				    struct fhandle *fhp); }
325162	AUE_SYSCTL	COMPAT4	{ int getdomainname(char *domainname, \
326				    int len); }
327163	AUE_SYSCTL	COMPAT4	{ int setdomainname(char *domainname, \
328				    int len); }
329164	AUE_NULL	COMPAT4	{ int uname(struct utsname *name); }
330165	AUE_SYSARCH	STD	{ int sysarch(int op, char *parms); }
331166	AUE_RTPRIO	STD	{ int rtprio(int function, pid_t pid, \
332				    struct rtprio *rtp); }
333167	AUE_NULL	UNIMPL	nosys
334168	AUE_NULL	UNIMPL	nosys
335169	AUE_SEMSYS	NOSTD	{ int semsys(int which, int a2, int a3, \
336				    int a4, int a5); }
337; XXX should be	{ int semsys(int which, ...); }
338170	AUE_MSGSYS	NOSTD	{ int msgsys(int which, int a2, int a3, \
339				    int a4, int a5, int a6); }
340; XXX should be	{ int msgsys(int which, ...); }
341171	AUE_SHMSYS	NOSTD	{ int shmsys(int which, int a2, int a3, \
342				    int a4); }
343; XXX should be	{ int shmsys(int which, ...); }
344172	AUE_NULL	UNIMPL	nosys
345173	AUE_PREAD	COMPAT6	{ ssize_t pread(int fd, void *buf, \
346				    size_t nbyte, int pad, off_t offset); }
347174	AUE_PWRITE	COMPAT6	{ ssize_t pwrite(int fd, \
348				    const void *buf, \
349				    size_t nbyte, int pad, off_t offset); }
350175	AUE_NULL	STD	{ int setfib(int fibnum); }
351176	AUE_NTP_ADJTIME	STD	{ int ntp_adjtime(struct timex *tp); }
352177	AUE_NULL	UNIMPL	sfork (BSD/OS 2.x)
353178	AUE_NULL	UNIMPL	getdescriptor (BSD/OS 2.x)
354179	AUE_NULL	UNIMPL	setdescriptor (BSD/OS 2.x)
355180	AUE_NULL	UNIMPL	nosys
356
357; Syscalls 181-199 are used by/reserved for BSD
358181	AUE_SETGID	STD	{ int setgid(gid_t gid); }
359182	AUE_SETEGID	STD	{ int setegid(gid_t egid); }
360183	AUE_SETEUID	STD	{ int seteuid(uid_t euid); }
361184	AUE_NULL	UNIMPL	lfs_bmapv
362185	AUE_NULL	UNIMPL	lfs_markv
363186	AUE_NULL	UNIMPL	lfs_segclean
364187	AUE_NULL	UNIMPL	lfs_segwait
365188	AUE_STAT	STD	{ int stat(char *path, struct stat *ub); }
366189	AUE_FSTAT	STD	{ int fstat(int fd, struct stat *sb); }
367190	AUE_LSTAT	STD	{ int lstat(char *path, struct stat *ub); }
368191	AUE_PATHCONF	STD	{ int pathconf(char *path, int name); }
369192	AUE_FPATHCONF	STD	{ int fpathconf(int fd, int name); }
370193	AUE_NULL	UNIMPL	nosys
371194	AUE_GETRLIMIT	STD	{ int getrlimit(u_int which, \
372				    struct rlimit *rlp); } getrlimit \
373				    __getrlimit_args int
374195	AUE_SETRLIMIT	STD	{ int setrlimit(u_int which, \
375				    struct rlimit *rlp); } setrlimit \
376				    __setrlimit_args int
377196	AUE_GETDIRENTRIES	STD	{ int getdirentries(int fd, char *buf, \
378				    u_int count, long *basep); }
379197	AUE_MMAP	COMPAT6	{ caddr_t mmap(caddr_t addr, \
380				    size_t len, int prot, int flags, int fd, \
381				    int pad, off_t pos); }
382198	AUE_NULL	NOPROTO	{ int nosys(void); } __syscall \
383				    __syscall_args int
384199	AUE_LSEEK	COMPAT6	{ off_t lseek(int fd, int pad, \
385				    off_t offset, int whence); }
386200	AUE_TRUNCATE	COMPAT6	{ int truncate(char *path, int pad, \
387				    off_t length); }
388201	AUE_FTRUNCATE	COMPAT6	{ int ftruncate(int fd, int pad, \
389				    off_t length); }
390202	AUE_SYSCTL	STD	{ int __sysctl(int *name, u_int namelen, \
391				    void *old, size_t *oldlenp, void *new, \
392				    size_t newlen); } __sysctl sysctl_args int
393203	AUE_MLOCK	STD	{ int mlock(const void *addr, size_t len); }
394204	AUE_MUNLOCK	STD	{ int munlock(const void *addr, size_t len); }
395205	AUE_UNDELETE	STD	{ int undelete(char *path); }
396206	AUE_FUTIMES	STD	{ int futimes(int fd, struct timeval *tptr); }
397207	AUE_GETPGID	STD	{ int getpgid(pid_t pid); }
398208	AUE_NULL	UNIMPL	newreboot (NetBSD)
399209	AUE_POLL	STD	{ int poll(struct pollfd *fds, u_int nfds, \
400				    int timeout); }
401
402;
403; The following are reserved for loadable syscalls
404;
405210	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
406211	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
407212	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
408213	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
409214	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
410215	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
411216	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
412217	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
413218	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
414219	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
415
416;
417; The following were introduced with NetBSD/4.4Lite-2
418220	AUE_SEMCTL	COMPAT7|NOSTD { int __semctl(int semid, int semnum, \
419				    int cmd, union semun_old *arg); }
420221	AUE_SEMGET	NOSTD	{ int semget(key_t key, int nsems, \
421				    int semflg); }
422222	AUE_SEMOP	NOSTD	{ int semop(int semid, struct sembuf *sops, \
423				    size_t nsops); }
424223	AUE_NULL	UNIMPL	semconfig
425224	AUE_MSGCTL	COMPAT7|NOSTD { int msgctl(int msqid, int cmd, \
426				    struct msqid_ds_old *buf); }
427225	AUE_MSGGET	NOSTD	{ int msgget(key_t key, int msgflg); }
428226	AUE_MSGSND	NOSTD	{ int msgsnd(int msqid, const void *msgp, \
429				    size_t msgsz, int msgflg); }
430227	AUE_MSGRCV	NOSTD	{ int msgrcv(int msqid, void *msgp, \
431				    size_t msgsz, long msgtyp, int msgflg); }
432228	AUE_SHMAT	NOSTD	{ int shmat(int shmid, const void *shmaddr, \
433				    int shmflg); }
434229	AUE_SHMCTL	COMPAT7|NOSTD { int shmctl(int shmid, int cmd, \
435				    struct shmid_ds_old *buf); }
436230	AUE_SHMDT	NOSTD	{ int shmdt(const void *shmaddr); }
437231	AUE_SHMGET	NOSTD	{ int shmget(key_t key, size_t size, \
438				    int shmflg); }
439;
440232	AUE_NULL	STD	{ int clock_gettime(clockid_t clock_id, \
441				    struct timespec *tp); }
442233	AUE_CLOCK_SETTIME	STD	{ int clock_settime( \
443				    clockid_t clock_id, \
444				    const struct timespec *tp); }
445234	AUE_NULL	STD	{ int clock_getres(clockid_t clock_id, \
446				    struct timespec *tp); }
447235	AUE_NULL	STD	{ int ktimer_create(clockid_t clock_id, \
448				    struct sigevent *evp, int *timerid); }
449236	AUE_NULL	STD	{ int ktimer_delete(int timerid); }
450237	AUE_NULL	STD	{ int ktimer_settime(int timerid, int flags, \
451				    const struct itimerspec *value, \
452				    struct itimerspec *ovalue); }
453238	AUE_NULL	STD	{ int ktimer_gettime(int timerid, struct \
454				    itimerspec *value); }
455239	AUE_NULL	STD	{ int ktimer_getoverrun(int timerid); }
456240	AUE_NULL	STD	{ int nanosleep(const struct timespec *rqtp, \
457				    struct timespec *rmtp); }
458241	AUE_NULL	STD	{ int ffclock_getcounter(ffcounter *ffcount); }
459242	AUE_NULL	STD	{ int ffclock_setestimate( \
460				    struct ffclock_estimate *cest); }
461243	AUE_NULL	STD	{ int ffclock_getestimate( \
462				    struct ffclock_estimate *cest); }
463244	AUE_NULL	UNIMPL	nosys
464245	AUE_NULL	UNIMPL	nosys
465246	AUE_NULL	UNIMPL	nosys
466247	AUE_NULL	STD	{ int clock_getcpuclockid2(id_t id,\
467				    int which, clockid_t *clock_id); }
468248	AUE_NULL	STD	{ int ntp_gettime(struct ntptimeval *ntvp); }
469249	AUE_NULL	UNIMPL	nosys
470; syscall numbers initially used in OpenBSD
471250	AUE_MINHERIT	STD	{ int minherit(void *addr, size_t len, \
472				    int inherit); }
473251	AUE_RFORK	STD	{ int rfork(int flags); }
474252	AUE_POLL	STD	{ int openbsd_poll(struct pollfd *fds, \
475				    u_int nfds, int timeout); }
476253	AUE_ISSETUGID	STD	{ int issetugid(void); }
477254	AUE_LCHOWN	STD	{ int lchown(char *path, int uid, int gid); }
478255	AUE_NULL	STD	{ int aio_read(struct aiocb *aiocbp); }
479256	AUE_NULL	STD	{ int aio_write(struct aiocb *aiocbp); }
480257	AUE_NULL	STD	{ int lio_listio(int mode, \
481				    struct aiocb * const *acb_list, \
482				    int nent, struct sigevent *sig); }
483258	AUE_NULL	UNIMPL	nosys
484259	AUE_NULL	UNIMPL	nosys
485260	AUE_NULL	UNIMPL	nosys
486261	AUE_NULL	UNIMPL	nosys
487262	AUE_NULL	UNIMPL	nosys
488263	AUE_NULL	UNIMPL	nosys
489264	AUE_NULL	UNIMPL	nosys
490265	AUE_NULL	UNIMPL	nosys
491266	AUE_NULL	UNIMPL	nosys
492267	AUE_NULL	UNIMPL	nosys
493268	AUE_NULL	UNIMPL	nosys
494269	AUE_NULL	UNIMPL	nosys
495270	AUE_NULL	UNIMPL	nosys
496271	AUE_NULL	UNIMPL	nosys
497272	AUE_O_GETDENTS	STD	{ int getdents(int fd, char *buf, \
498				    size_t count); }
499273	AUE_NULL	UNIMPL	nosys
500274	AUE_LCHMOD	STD	{ int lchmod(char *path, mode_t mode); }
501275	AUE_LCHOWN	NOPROTO	{ int lchown(char *path, uid_t uid, \
502				    gid_t gid); } netbsd_lchown lchown_args \
503				    int
504276	AUE_LUTIMES	STD	{ int lutimes(char *path, \
505				    struct timeval *tptr); }
506277	AUE_MSYNC	NOPROTO	{ int msync(void *addr, size_t len, \
507				    int flags); } netbsd_msync msync_args int
508278	AUE_STAT	STD	{ int nstat(char *path, struct nstat *ub); }
509279	AUE_FSTAT	STD	{ int nfstat(int fd, struct nstat *sb); }
510280	AUE_LSTAT	STD	{ int nlstat(char *path, struct nstat *ub); }
511281	AUE_NULL	UNIMPL	nosys
512282	AUE_NULL	UNIMPL	nosys
513283	AUE_NULL	UNIMPL	nosys
514284	AUE_NULL	UNIMPL	nosys
515285	AUE_NULL	UNIMPL	nosys
516286	AUE_NULL	UNIMPL	nosys
517287	AUE_NULL	UNIMPL	nosys
518288	AUE_NULL	UNIMPL	nosys
519; 289 and 290 from NetBSD (OpenBSD: 267 and 268)
520289	AUE_PREADV	STD	{ ssize_t preadv(int fd, struct iovec *iovp, \
521					u_int iovcnt, off_t offset); }
522290	AUE_PWRITEV	STD	{ ssize_t pwritev(int fd, struct iovec *iovp, \
523					u_int iovcnt, off_t offset); }
524291	AUE_NULL	UNIMPL	nosys
525292	AUE_NULL	UNIMPL	nosys
526293	AUE_NULL	UNIMPL	nosys
527294	AUE_NULL	UNIMPL	nosys
528295	AUE_NULL	UNIMPL	nosys
529296	AUE_NULL	UNIMPL	nosys
530; XXX 297 is 300 in NetBSD
531297	AUE_FHSTATFS	COMPAT4	{ int fhstatfs( \
532				    const struct fhandle *u_fhp, \
533				    struct ostatfs *buf); }
534298	AUE_FHOPEN	STD	{ int fhopen(const struct fhandle *u_fhp, \
535				    int flags); }
536299	AUE_FHSTAT	STD	{ int fhstat(const struct fhandle *u_fhp, \
537				    struct stat *sb); }
538; syscall numbers for FreeBSD
539300	AUE_NULL	STD	{ int modnext(int modid); }
540301	AUE_NULL	STD	{ int modstat(int modid, \
541				    struct module_stat *stat); }
542302	AUE_NULL	STD	{ int modfnext(int modid); }
543303	AUE_NULL	STD	{ int modfind(const char *name); }
544304	AUE_MODLOAD	STD	{ int kldload(const char *file); }
545305	AUE_MODUNLOAD	STD	{ int kldunload(int fileid); }
546306	AUE_NULL	STD	{ int kldfind(const char *file); }
547307	AUE_NULL	STD	{ int kldnext(int fileid); }
548308	AUE_NULL	STD	{ int kldstat(int fileid, struct \
549				    kld_file_stat* stat); }
550309	AUE_NULL	STD	{ int kldfirstmod(int fileid); }
551310	AUE_GETSID	STD	{ int getsid(pid_t pid); }
552311	AUE_SETRESUID	STD	{ int setresuid(uid_t ruid, uid_t euid, \
553				    uid_t suid); }
554312	AUE_SETRESGID	STD	{ int setresgid(gid_t rgid, gid_t egid, \
555				    gid_t sgid); }
556313	AUE_NULL	OBSOL	signanosleep
557314	AUE_NULL	STD	{ ssize_t aio_return(struct aiocb *aiocbp); }
558315	AUE_NULL	STD	{ int aio_suspend( \
559				    struct aiocb * const * aiocbp, int nent, \
560				    const struct timespec *timeout); }
561316	AUE_NULL	STD	{ int aio_cancel(int fd, \
562				    struct aiocb *aiocbp); }
563317	AUE_NULL	STD	{ int aio_error(struct aiocb *aiocbp); }
564318	AUE_NULL	COMPAT6	{ int aio_read(struct oaiocb *aiocbp); }
565319	AUE_NULL	COMPAT6	{ int aio_write(struct oaiocb *aiocbp); }
566320	AUE_NULL	COMPAT6	{ int lio_listio(int mode, \
567				    struct oaiocb * const *acb_list, \
568				    int nent, struct osigevent *sig); }
569321	AUE_NULL	STD	{ int yield(void); }
570322	AUE_NULL	OBSOL	thr_sleep
571323	AUE_NULL	OBSOL	thr_wakeup
572324	AUE_MLOCKALL	STD	{ int mlockall(int how); }
573325	AUE_MUNLOCKALL	STD	{ int munlockall(void); }
574326	AUE_GETCWD	STD	{ int __getcwd(char *buf, u_int buflen); }
575
576327	AUE_NULL	STD	{ int sched_setparam (pid_t pid, \
577				    const struct sched_param *param); }
578328	AUE_NULL	STD	{ int sched_getparam (pid_t pid, struct \
579				    sched_param *param); }
580
581329	AUE_NULL	STD	{ int sched_setscheduler (pid_t pid, int \
582				    policy, const struct sched_param \
583				    *param); }
584330	AUE_NULL	STD	{ int sched_getscheduler (pid_t pid); }
585
586331	AUE_NULL	STD	{ int sched_yield (void); }
587332	AUE_NULL	STD	{ int sched_get_priority_max (int policy); }
588333	AUE_NULL	STD	{ int sched_get_priority_min (int policy); }
589334	AUE_NULL	STD	{ int sched_rr_get_interval (pid_t pid, \
590				    struct timespec *interval); }
591335	AUE_NULL	STD	{ int utrace(const void *addr, size_t len); }
592336	AUE_SENDFILE	COMPAT4	{ int sendfile(int fd, int s, \
593				    off_t offset, size_t nbytes, \
594				    struct sf_hdtr *hdtr, off_t *sbytes, \
595				    int flags); }
596337	AUE_NULL	STD	{ int kldsym(int fileid, int cmd, \
597				    void *data); }
598338	AUE_JAIL	STD	{ int jail(struct jail *jail); }
599339	AUE_NULL	NOSTD|NOTSTATIC	{ int nnpfs_syscall(int operation, \
600				    char *a_pathP, int a_opcode, \
601				    void *a_paramsP, int a_followSymlinks); }
602340	AUE_SIGPROCMASK	STD	{ int sigprocmask(int how, \
603				    const sigset_t *set, sigset_t *oset); }
604341	AUE_SIGSUSPEND	STD	{ int sigsuspend(const sigset_t *sigmask); }
605342	AUE_SIGACTION	COMPAT4	{ int sigaction(int sig, const \
606				    struct sigaction *act, \
607				    struct sigaction *oact); }
608343	AUE_SIGPENDING	STD	{ int sigpending(sigset_t *set); }
609344	AUE_SIGRETURN	COMPAT4	{ int sigreturn( \
610				    const struct ucontext4 *sigcntxp); }
611345	AUE_SIGWAIT	STD	{ int sigtimedwait(const sigset_t *set, \
612				    siginfo_t *info, \
613				    const struct timespec *timeout); }
614346	AUE_NULL	STD	{ int sigwaitinfo(const sigset_t *set, \
615				    siginfo_t *info); }
616347	AUE_NULL	STD	{ int __acl_get_file(const char *path, \
617				    acl_type_t type, struct acl *aclp); }
618348	AUE_NULL	STD	{ int __acl_set_file(const char *path, \
619				    acl_type_t type, struct acl *aclp); }
620349	AUE_NULL	STD	{ int __acl_get_fd(int filedes, \
621				    acl_type_t type, struct acl *aclp); }
622350	AUE_NULL	STD	{ int __acl_set_fd(int filedes, \
623				    acl_type_t type, struct acl *aclp); }
624351	AUE_NULL	STD	{ int __acl_delete_file(const char *path, \
625				    acl_type_t type); }
626352	AUE_NULL	STD	{ int __acl_delete_fd(int filedes, \
627				    acl_type_t type); }
628353	AUE_NULL	STD	{ int __acl_aclcheck_file(const char *path, \
629				    acl_type_t type, struct acl *aclp); }
630354	AUE_NULL	STD	{ int __acl_aclcheck_fd(int filedes, \
631				    acl_type_t type, struct acl *aclp); }
632355	AUE_EXTATTRCTL	STD	{ int extattrctl(const char *path, int cmd, \
633				    const char *filename, int attrnamespace, \
634				    const char *attrname); }
635356	AUE_EXTATTR_SET_FILE	STD	{ ssize_t extattr_set_file( \
636				    const char *path, int attrnamespace, \
637				    const char *attrname, void *data, \
638				    size_t nbytes); }
639357	AUE_EXTATTR_GET_FILE	STD	{ ssize_t extattr_get_file( \
640				    const char *path, int attrnamespace, \
641				    const char *attrname, void *data, \
642				    size_t nbytes); }
643358	AUE_EXTATTR_DELETE_FILE	STD	{ int extattr_delete_file(const char *path, \
644				    int attrnamespace, \
645				    const char *attrname); }
646359	AUE_NULL	STD	{ ssize_t aio_waitcomplete( \
647				    struct aiocb **aiocbp, \
648				    struct timespec *timeout); }
649360	AUE_GETRESUID	STD	{ int getresuid(uid_t *ruid, uid_t *euid, \
650				    uid_t *suid); }
651361	AUE_GETRESGID	STD	{ int getresgid(gid_t *rgid, gid_t *egid, \
652				    gid_t *sgid); }
653362	AUE_KQUEUE	STD	{ int kqueue(void); }
654363	AUE_NULL	STD	{ int kevent(int fd, \
655				    struct kevent *changelist, int nchanges, \
656				    struct kevent *eventlist, int nevents, \
657				    const struct timespec *timeout); }
658364	AUE_NULL	UNIMPL	__cap_get_proc
659365	AUE_NULL	UNIMPL	__cap_set_proc
660366	AUE_NULL	UNIMPL	__cap_get_fd
661367	AUE_NULL	UNIMPL	__cap_get_file
662368	AUE_NULL	UNIMPL	__cap_set_fd
663369	AUE_NULL	UNIMPL	__cap_set_file
664370	AUE_NULL	UNIMPL	nosys
665371	AUE_EXTATTR_SET_FD	STD	{ ssize_t extattr_set_fd(int fd, \
666				    int attrnamespace, const char *attrname, \
667				    void *data, size_t nbytes); }
668372	AUE_EXTATTR_GET_FD	STD	{ ssize_t extattr_get_fd(int fd, \
669				    int attrnamespace, const char *attrname, \
670				    void *data, size_t nbytes); }
671373	AUE_EXTATTR_DELETE_FD	STD	{ int extattr_delete_fd(int fd, \
672				    int attrnamespace, \
673				    const char *attrname); }
674374	AUE_NULL	STD	{ int __setugid(int flag); }
675375	AUE_NULL	UNIMPL	nfsclnt
676376	AUE_EACCESS	STD	{ int eaccess(char *path, int amode); }
677377	AUE_NULL	NOSTD|NOTSTATIC	{ int afs3_syscall(long syscall, \
678				    long parm1, long parm2, long parm3, \
679				    long parm4, long parm5, long parm6); }
680378	AUE_NMOUNT	STD	{ int nmount(struct iovec *iovp, \
681				    unsigned int iovcnt, int flags); }
682379	AUE_NULL	UNIMPL	kse_exit
683380	AUE_NULL	UNIMPL	kse_wakeup
684381	AUE_NULL	UNIMPL	kse_create
685382	AUE_NULL	UNIMPL	kse_thr_interrupt
686383	AUE_NULL	UNIMPL	kse_release
687384	AUE_NULL	STD	{ int __mac_get_proc(struct mac *mac_p); }
688385	AUE_NULL	STD	{ int __mac_set_proc(struct mac *mac_p); }
689386	AUE_NULL	STD	{ int __mac_get_fd(int fd, \
690				    struct mac *mac_p); }
691387	AUE_NULL	STD	{ int __mac_get_file(const char *path_p, \
692				    struct mac *mac_p); }
693388	AUE_NULL	STD	{ int __mac_set_fd(int fd, \
694				    struct mac *mac_p); }
695389	AUE_NULL	STD	{ int __mac_set_file(const char *path_p, \
696				    struct mac *mac_p); }
697390	AUE_NULL	STD	{ int kenv(int what, const char *name, \
698				    char *value, int len); }
699391	AUE_LCHFLAGS	STD	{ int lchflags(const char *path, \
700				    u_long flags); }
701392	AUE_NULL	STD	{ int uuidgen(struct uuid *store, \
702				    int count); }
703393	AUE_SENDFILE	STD	{ int sendfile(int fd, int s, off_t offset, \
704				    size_t nbytes, struct sf_hdtr *hdtr, \
705				    off_t *sbytes, int flags); }
706394	AUE_NULL	STD	{ int mac_syscall(const char *policy, \
707				    int call, void *arg); }
708395	AUE_GETFSSTAT	STD	{ int getfsstat(struct statfs *buf, \
709				    long bufsize, int flags); }
710396	AUE_STATFS	STD	{ int statfs(char *path, \
711				    struct statfs *buf); }
712397	AUE_FSTATFS	STD	{ int fstatfs(int fd, struct statfs *buf); }
713398	AUE_FHSTATFS	STD	{ int fhstatfs(const struct fhandle *u_fhp, \
714				    struct statfs *buf); }
715399	AUE_NULL	UNIMPL	nosys
716400	AUE_NULL	NOSTD	{ int ksem_close(semid_t id); }
717401	AUE_NULL	NOSTD	{ int ksem_post(semid_t id); }
718402	AUE_NULL	NOSTD	{ int ksem_wait(semid_t id); }
719403	AUE_NULL	NOSTD	{ int ksem_trywait(semid_t id); }
720404	AUE_NULL	NOSTD	{ int ksem_init(semid_t *idp, \
721				    unsigned int value); }
722405	AUE_NULL	NOSTD	{ int ksem_open(semid_t *idp, \
723				    const char *name, int oflag, \
724				    mode_t mode, unsigned int value); }
725406	AUE_NULL	NOSTD	{ int ksem_unlink(const char *name); }
726407	AUE_NULL	NOSTD	{ int ksem_getvalue(semid_t id, int *val); }
727408	AUE_NULL	NOSTD	{ int ksem_destroy(semid_t id); }
728409	AUE_NULL	STD	{ int __mac_get_pid(pid_t pid, \
729				    struct mac *mac_p); }
730410	AUE_NULL	STD	{ int __mac_get_link(const char *path_p, \
731				    struct mac *mac_p); }
732411	AUE_NULL	STD	{ int __mac_set_link(const char *path_p, \
733				    struct mac *mac_p); }
734412	AUE_EXTATTR_SET_LINK	STD	{ ssize_t extattr_set_link( \
735				    const char *path, int attrnamespace, \
736				    const char *attrname, void *data, \
737				    size_t nbytes); }
738413	AUE_EXTATTR_GET_LINK	STD	{ ssize_t extattr_get_link( \
739				    const char *path, int attrnamespace, \
740				    const char *attrname, void *data, \
741				    size_t nbytes); }
742414	AUE_EXTATTR_DELETE_LINK	STD	{ int extattr_delete_link( \
743				    const char *path, int attrnamespace, \
744				    const char *attrname); }
745415	AUE_NULL	STD	{ int __mac_execve(char *fname, char **argv, \
746				    char **envv, struct mac *mac_p); }
747416	AUE_SIGACTION	STD	{ int sigaction(int sig, \
748				    const struct sigaction *act, \
749				    struct sigaction *oact); }
750417	AUE_SIGRETURN	STD	{ int sigreturn( \
751				    const struct __ucontext *sigcntxp); }
752418	AUE_NULL	UNIMPL	__xstat
753419	AUE_NULL	UNIMPL	__xfstat
754420	AUE_NULL	UNIMPL	__xlstat
755421	AUE_NULL	STD	{ int getcontext(struct __ucontext *ucp); }
756422	AUE_NULL	STD	{ int setcontext( \
757				    const struct __ucontext *ucp); }
758423	AUE_NULL	STD	{ int swapcontext(struct __ucontext *oucp, \
759				    const struct __ucontext *ucp); }
760424	AUE_SWAPOFF	STD	{ int swapoff(const char *name); }
761425	AUE_NULL	STD	{ int __acl_get_link(const char *path, \
762				    acl_type_t type, struct acl *aclp); }
763426	AUE_NULL	STD	{ int __acl_set_link(const char *path, \
764				    acl_type_t type, struct acl *aclp); }
765427	AUE_NULL	STD	{ int __acl_delete_link(const char *path, \
766				    acl_type_t type); }
767428	AUE_NULL	STD	{ int __acl_aclcheck_link(const char *path, \
768				    acl_type_t type, struct acl *aclp); }
769429	AUE_SIGWAIT	STD	{ int sigwait(const sigset_t *set, \
770				    int *sig); }
771430	AUE_NULL	STD	{ int thr_create(ucontext_t *ctx, long *id, \
772				    int flags); }
773431	AUE_NULL	STD	{ void thr_exit(long *state); }
774432	AUE_NULL	STD	{ int thr_self(long *id); }
775433	AUE_NULL	STD	{ int thr_kill(long id, int sig); }
776434	AUE_NULL	UNIMPL	nosys
777435	AUE_NULL	UNIMPL	nosys
778436	AUE_NULL	STD	{ int jail_attach(int jid); }
779437	AUE_EXTATTR_LIST_FD	STD	{ ssize_t extattr_list_fd(int fd, \
780				    int attrnamespace, void *data, \
781				    size_t nbytes); }
782438	AUE_EXTATTR_LIST_FILE	STD	{ ssize_t extattr_list_file( \
783				    const char *path, int attrnamespace, \
784				    void *data, size_t nbytes); }
785439	AUE_EXTATTR_LIST_LINK	STD	{ ssize_t extattr_list_link( \
786				    const char *path, int attrnamespace, \
787				    void *data, size_t nbytes); }
788440	AUE_NULL	UNIMPL	kse_switchin
789441	AUE_NULL	NOSTD	{ int ksem_timedwait(semid_t id, \
790				    const struct timespec *abstime); }
791442	AUE_NULL	STD	{ int thr_suspend( \
792				    const struct timespec *timeout); }
793443	AUE_NULL	STD	{ int thr_wake(long id); }
794444	AUE_MODUNLOAD	STD	{ int kldunloadf(int fileid, int flags); }
795445	AUE_AUDIT	STD	{ int audit(const void *record, \
796				    u_int length); }
797446	AUE_AUDITON	STD	{ int auditon(int cmd, void *data, \
798				    u_int length); }
799447	AUE_GETAUID	STD	{ int getauid(uid_t *auid); }
800448	AUE_SETAUID	STD	{ int setauid(uid_t *auid); }
801449	AUE_GETAUDIT	STD	{ int getaudit(struct auditinfo *auditinfo); }
802450	AUE_SETAUDIT	STD	{ int setaudit(struct auditinfo *auditinfo); }
803451	AUE_GETAUDIT_ADDR	STD	{ int getaudit_addr( \
804				    struct auditinfo_addr *auditinfo_addr, \
805				    u_int length); }
806452	AUE_SETAUDIT_ADDR	STD	{ int setaudit_addr( \
807				    struct auditinfo_addr *auditinfo_addr, \
808				    u_int length); }
809453	AUE_AUDITCTL	STD	{ int auditctl(char *path); }
810454	AUE_NULL	STD	{ int _umtx_op(void *obj, int op, \
811				    u_long val, void *uaddr1, void *uaddr2); }
812455	AUE_NULL	STD	{ int thr_new(struct thr_param *param, \
813				    int param_size); }
814456	AUE_NULL	STD	{ int sigqueue(pid_t pid, int signum, void *value); }
815457	AUE_NULL	NOSTD	{ int kmq_open(const char *path, int flags, \
816				    mode_t mode, const struct mq_attr *attr); }
817458	AUE_NULL	NOSTD	{ int kmq_setattr(int mqd,		\
818				    const struct mq_attr *attr,		\
819				    struct mq_attr *oattr); }
820459	AUE_NULL	NOSTD	{ int kmq_timedreceive(int mqd,	\
821				    char *msg_ptr, size_t msg_len,	\
822				    unsigned *msg_prio,			\
823				    const struct timespec *abs_timeout); }
824460	AUE_NULL	NOSTD	{ int kmq_timedsend(int mqd,		\
825				    const char *msg_ptr, size_t msg_len,\
826				    unsigned msg_prio,			\
827				    const struct timespec *abs_timeout);}
828461	AUE_NULL	NOSTD	{ int kmq_notify(int mqd,		\
829				    const struct sigevent *sigev); }
830462	AUE_NULL	NOSTD	{ int kmq_unlink(const char *path); }
831463	AUE_NULL	STD	{ int abort2(const char *why, int nargs, void **args); }
832464	AUE_NULL	STD	{ int thr_set_name(long id, const char *name); }
833465	AUE_NULL	STD	{ int aio_fsync(int op, struct aiocb *aiocbp); }
834466	AUE_RTPRIO	STD	{ int rtprio_thread(int function, \
835				    lwpid_t lwpid, struct rtprio *rtp); }
836467	AUE_NULL	UNIMPL	nosys
837468	AUE_NULL	UNIMPL	nosys
838469	AUE_NULL	UNIMPL	__getpath_fromfd
839470	AUE_NULL	UNIMPL	__getpath_fromaddr
840471	AUE_NULL	NOSTD	{ int sctp_peeloff(int sd, uint32_t name); }
841472     AUE_NULL        NOSTD	{ int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, \
842	                            caddr_t to, __socklen_t tolen, \
843				    struct sctp_sndrcvinfo *sinfo, int flags); }
844473     AUE_NULL        NOSTD	{ int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, \
845	                            caddr_t to, __socklen_t tolen, \
846				    struct sctp_sndrcvinfo *sinfo, int flags); }
847474     AUE_NULL        NOSTD	{ int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, \
848				    struct sockaddr * from, __socklen_t *fromlenaddr, \
849				    struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
850475	AUE_PREAD	STD	{ ssize_t pread(int fd, void *buf, \
851				    size_t nbyte, off_t offset); }
852476	AUE_PWRITE	STD	{ ssize_t pwrite(int fd, const void *buf, \
853				    size_t nbyte, off_t offset); }
854477	AUE_MMAP	STD	{ caddr_t mmap(caddr_t addr, size_t len, \
855				    int prot, int flags, int fd, off_t pos); }
856478	AUE_LSEEK	STD	{ off_t lseek(int fd, off_t offset, \
857				    int whence); }
858479	AUE_TRUNCATE	STD	{ int truncate(char *path, off_t length); }
859480	AUE_FTRUNCATE	STD	{ int ftruncate(int fd, off_t length); }
860481	AUE_KILL	STD	{ int thr_kill2(pid_t pid, long id, int sig); }
861482	AUE_SHMOPEN	STD	{ int shm_open(const char *path, int flags, \
862				    mode_t mode); }
863483	AUE_SHMUNLINK	STD	{ int shm_unlink(const char *path); }
864484	AUE_NULL	STD	{ int cpuset(cpusetid_t *setid); }
865485	AUE_NULL	STD	{ int cpuset_setid(cpuwhich_t which, id_t id, \
866				    cpusetid_t setid); }
867486	AUE_NULL	STD	{ int cpuset_getid(cpulevel_t level, \
868				    cpuwhich_t which, id_t id, \
869				    cpusetid_t *setid); }
870487	AUE_NULL	STD	{ int cpuset_getaffinity(cpulevel_t level, \
871				    cpuwhich_t which, id_t id, size_t cpusetsize, \
872				    cpuset_t *mask); }
873488	AUE_NULL	STD	{ int cpuset_setaffinity(cpulevel_t level, \
874				    cpuwhich_t which, id_t id, size_t cpusetsize, \
875				    const cpuset_t *mask); }
876489	AUE_FACCESSAT	STD	{ int faccessat(int fd, char *path, int amode, \
877				    int flag); }
878490	AUE_FCHMODAT	STD	{ int fchmodat(int fd, char *path, mode_t mode, \
879				    int flag); }
880491	AUE_FCHOWNAT	STD	{ int fchownat(int fd, char *path, uid_t uid, \
881				    gid_t gid, int flag); }
882492	AUE_FEXECVE	STD	{ int fexecve(int fd, char **argv, \
883				    char **envv); }
884493	AUE_FSTATAT	STD	{ int fstatat(int fd, char *path, \
885				    struct stat *buf, int flag); }
886494	AUE_FUTIMESAT	STD	{ int futimesat(int fd, char *path, \
887				    struct timeval *times); }
888495	AUE_LINKAT	STD	{ int linkat(int fd1, char *path1, int fd2, \
889				    char *path2, int flag); }
890496	AUE_MKDIRAT	STD	{ int mkdirat(int fd, char *path, mode_t mode); }
891497	AUE_MKFIFOAT	STD	{ int mkfifoat(int fd, char *path, mode_t mode); }
892498	AUE_MKNODAT	STD	{ int mknodat(int fd, char *path, mode_t mode, \
893				    dev_t dev); }
894; XXX: see the comment for open
895499	AUE_OPENAT_RWTC	STD	{ int openat(int fd, char *path, int flag, \
896				    mode_t mode); }
897500	AUE_READLINKAT	STD	{ int readlinkat(int fd, char *path, char *buf, \
898				    size_t bufsize); }
899501	AUE_RENAMEAT	STD	{ int renameat(int oldfd, char *old, int newfd, \
900				     char *new); }
901502	AUE_SYMLINKAT	STD	{ int symlinkat(char *path1, int fd, \
902				     char *path2); }
903503	AUE_UNLINKAT	STD	{ int unlinkat(int fd, char *path, int flag); }
904504	AUE_POSIX_OPENPT	STD	{ int posix_openpt(int flags); }
905; 505 is initialised by the kgssapi code, if present.
906505	AUE_NULL	NOSTD	{ int gssd_syscall(char *path); }
907506	AUE_NULL	STD	{ int jail_get(struct iovec *iovp, \
908				    unsigned int iovcnt, int flags); }
909507	AUE_NULL	STD	{ int jail_set(struct iovec *iovp, \
910				    unsigned int iovcnt, int flags); }
911508	AUE_NULL	STD	{ int jail_remove(int jid); }
912509	AUE_CLOSEFROM	STD	{ int closefrom(int lowfd); }
913510	AUE_SEMCTL	NOSTD	{ int __semctl(int semid, int semnum, \
914				    int cmd, union semun *arg); }
915511	AUE_MSGCTL	NOSTD	{ int msgctl(int msqid, int cmd, \
916				    struct msqid_ds *buf); }
917512	AUE_SHMCTL	NOSTD	{ int shmctl(int shmid, int cmd, \
918				    struct shmid_ds *buf); }
919513	AUE_LPATHCONF	STD	{ int lpathconf(char *path, int name); }
920514	AUE_NULL	OBSOL	cap_new
921515	AUE_CAP_RIGHTS_GET	STD	{ int __cap_rights_get(int version, \
922				    int fd, cap_rights_t *rightsp); }
923516	AUE_CAP_ENTER	STD	{ int cap_enter(void); }
924517	AUE_CAP_GETMODE	STD	{ int cap_getmode(u_int *modep); }
925518	AUE_PDFORK	STD	{ int pdfork(int *fdp, int flags); }
926519	AUE_PDKILL	STD	{ int pdkill(int fd, int signum); }
927520	AUE_PDGETPID	STD	{ int pdgetpid(int fd, pid_t *pidp); }
928521	AUE_PDWAIT	UNIMPL	pdwait4
929522	AUE_SELECT	STD	{ int pselect(int nd, fd_set *in, \
930				    fd_set *ou, fd_set *ex, \
931				    const struct timespec *ts, \
932				    const sigset_t *sm); }
933523	AUE_NULL	STD	{ int getloginclass(char *namebuf, \
934				    size_t namelen); }
935524	AUE_NULL	STD	{ int setloginclass(const char *namebuf); }
936525	AUE_NULL	STD	{ int rctl_get_racct(const void *inbufp, \
937				    size_t inbuflen, void *outbufp, \
938				    size_t outbuflen); }
939526	AUE_NULL	STD	{ int rctl_get_rules(const void *inbufp, \
940				    size_t inbuflen, void *outbufp, \
941				    size_t outbuflen); }
942527	AUE_NULL	STD	{ int rctl_get_limits(const void *inbufp, \
943				    size_t inbuflen, void *outbufp, \
944				    size_t outbuflen); }
945528	AUE_NULL	STD	{ int rctl_add_rule(const void *inbufp, \
946				    size_t inbuflen, void *outbufp, \
947				    size_t outbuflen); }
948529	AUE_NULL	STD	{ int rctl_remove_rule(const void *inbufp, \
949				    size_t inbuflen, void *outbufp, \
950				    size_t outbuflen); }
951530	AUE_NULL	STD	{ int posix_fallocate(int fd, \
952				    off_t offset, off_t len); }
953531	AUE_NULL	STD	{ int posix_fadvise(int fd, off_t offset, \
954				    off_t len, int advice); }
955532	AUE_WAIT6	STD	{ int wait6(idtype_t idtype, id_t id, \
956				    int *status, int options, \
957				    struct __wrusage *wrusage, \
958				    siginfo_t *info); }
959533	AUE_CAP_RIGHTS_LIMIT	STD	{ int cap_rights_limit(int fd, \
960					    cap_rights_t *rightsp); }
961534	AUE_CAP_IOCTLS_LIMIT	STD	{ int cap_ioctls_limit(int fd, \
962					    const u_long *cmds, size_t ncmds); }
963535	AUE_CAP_IOCTLS_GET	STD	{ ssize_t cap_ioctls_get(int fd, \
964					    u_long *cmds, size_t maxcmds); }
965536	AUE_CAP_FCNTLS_LIMIT	STD	{ int cap_fcntls_limit(int fd, \
966					    uint32_t fcntlrights); }
967537	AUE_CAP_FCNTLS_GET	STD	{ int cap_fcntls_get(int fd, \
968					    uint32_t *fcntlrightsp); }
969538	AUE_BINDAT	STD	{ int bindat(int fd, int s, caddr_t name, \
970				    int namelen); }
971539	AUE_CONNECTAT	STD	{ int connectat(int fd, int s, caddr_t name, \
972				    int namelen); }
973540	AUE_CHFLAGSAT	STD	{ int chflagsat(int fd, const char *path, \
974				    u_long flags, int atflag); }
975541	AUE_ACCEPT	STD	{ int accept4(int s, \
976				    struct sockaddr * __restrict name, \
977				    __socklen_t * __restrict anamelen, \
978				    int flags); }
979542	AUE_PIPE	STD	{ int pipe2(int *fildes, int flags); }
980543	AUE_NULL	STD	{ int aio_mlock(struct aiocb *aiocbp); }
981544	AUE_NULL	STD	{ int procctl(idtype_t idtype, id_t id, \
982				    int com, void *data); }
983545	AUE_POLL	STD	{ int ppoll(struct pollfd *fds, u_int nfds, \
984				    const struct timespec *ts, \
985				    const sigset_t *set); }
986546	AUE_FUTIMES	STD	{ int futimens(int fd, \
987				    struct timespec *times); }
988547	AUE_FUTIMESAT	STD	{ int utimensat(int fd, \
989				    char *path, \
990				    struct timespec *times, int flag); }
991548	AUE_NULL	STD	{ int numa_getaffinity(cpuwhich_t which, \
992				    id_t id, \
993				    struct vm_domain_policy_entry *policy); }
994549	AUE_NULL	STD	{ int numa_setaffinity(cpuwhich_t which, \
995				    id_t id, \
996				    const struct vm_domain_policy_entry *policy); }
997
998; Please copy any additions and changes to the following compatability tables:
999; sys/compat/freebsd32/syscalls.master
1000