xref: /freebsd/sys/kern/syscalls.master (revision 1456f0f9681bbd7fdae7b683553f6c7491508c4e)
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 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;	OBSOL	obsolete, not included in system, only specifies name
33;	UNIMPL	not implemented, placeholder only
34;	NOSTD	implemented but as a lkm that can be statically
35;		compiled in; sysent entry will be filled with lkmressys
36;		so the SYSCALL_MODULE macro works
37;	NOARGS	same as STD except do not create structure in sys/sysproto.h
38;	NODEF	same as STD except only have the entry in the syscall table
39;		added.  Meaning - do not create structure or function
40;		prototype in sys/sysproto.h
41;	NOPROTO	same as STD except do not create structure or
42;		function prototype in sys/sysproto.h.  Does add a
43;		definition to syscall.h besides adding a sysent.
44;	NOTSTATIC syscall is loadable
45;
46; Please copy any additions and changes to the following compatability tables:
47; sys/compat/freebsd32/syscalls.master
48
49; #ifdef's, etc. may be included, and are copied to the output files.
50
51#include <sys/param.h>
52#include <sys/sysent.h>
53#include <sys/sysproto.h>
54
55; Reserved/unimplemented system calls in the range 0-150 inclusive
56; are reserved for use in future Berkeley releases.
57; Additional system calls implemented in vendor and other
58; redistributions should be placed in the reserved range at the end
59; of the current calls.
60
610	AUE_NULL	STD	{ int nosys(void); } syscall nosys_args int
621	AUE_EXIT	STD	{ void sys_exit(int rval); } exit \
63				    sys_exit_args void
642	AUE_FORK	STD	{ int fork(void); }
653	AUE_READ	STD	{ ssize_t read(int fd, void *buf, \
66				    size_t nbyte); }
674	AUE_WRITE	STD	{ ssize_t write(int fd, const void *buf, \
68				    size_t nbyte); }
695	AUE_OPEN_RWTC	STD	{ int open(char *path, int flags, int mode); }
70; XXX should be		{ int open(const char *path, int flags, ...); }
71; but we're not ready for `const' or varargs.
72; XXX man page says `mode_t mode'.
736	AUE_CLOSE	STD	{ int close(int fd); }
747	AUE_WAIT4	STD	{ int wait4(int pid, int *status, \
75				    int options, struct rusage *rusage); }
768	AUE_CREAT	COMPAT	{ int creat(char *path, int mode); }
779	AUE_LINK	STD	{ int link(char *path, char *link); }
7810	AUE_UNLINK	STD	{ int unlink(char *path); }
7911	AUE_NULL	OBSOL	execv
8012	AUE_CHDIR	STD	{ int chdir(char *path); }
8113	AUE_FCHDIR	STD	{ int fchdir(int fd); }
8214	AUE_MKNOD	STD	{ int mknod(char *path, int mode, int dev); }
8315	AUE_CHMOD	STD	{ int chmod(char *path, int mode); }
8416	AUE_CHOWN	STD	{ int chown(char *path, int uid, int gid); }
8517	AUE_NULL	STD	{ int obreak(char *nsize); } break \
86				    obreak_args int
8718	AUE_GETFSSTAT	COMPAT4	{ int getfsstat(struct ostatfs *buf, \
88				    long bufsize, int mode); }
8919	AUE_LSEEK	COMPAT	{ long lseek(int fd, long offset, \
90				    int whence); }
9120	AUE_GETPID	STD	{ pid_t getpid(void); }
9221	AUE_MOUNT	STD	{ int mount(char *type, char *path, \
93				    int flags, caddr_t data); }
94; XXX `path' should have type `const char *' but we're not ready for that.
9522	AUE_UMOUNT	STD	{ int unmount(char *path, int flags); }
9623	AUE_SETUID	STD	{ int setuid(uid_t uid); }
9724	AUE_GETUID	STD	{ uid_t getuid(void); }
9825	AUE_GETEUID	STD	{ uid_t geteuid(void); }
9926	AUE_PTRACE	STD	{ int ptrace(int req, pid_t pid, \
100				    caddr_t addr, int data); }
10127	AUE_RECVMSG	STD	{ int recvmsg(int s, struct msghdr *msg, \
102				    int flags); }
10328	AUE_SENDMSG	STD	{ int sendmsg(int s, struct msghdr *msg, \
104				    int flags); }
10529	AUE_RECVFROM	STD	{ int recvfrom(int s, caddr_t buf, \
106				    size_t len, int flags, \
107				    struct sockaddr * __restrict from, \
108				    __socklen_t * __restrict fromlenaddr); }
10930	AUE_ACCEPT	STD	{ int accept(int s, \
110				    struct sockaddr * __restrict name, \
111				    __socklen_t * __restrict anamelen); }
11231	AUE_GETPEERNAME	STD	{ int getpeername(int fdes, \
113				    struct sockaddr * __restrict asa, \
114				    __socklen_t * __restrict alen); }
11532	AUE_GETSOCKNAME	STD	{ int getsockname(int fdes, \
116				    struct sockaddr * __restrict asa, \
117				    __socklen_t * __restrict alen); }
11833	AUE_ACCESS	STD	{ int access(char *path, int amode); }
11934	AUE_CHFLAGS	STD	{ int chflags(const char *path, u_long flags); }
12035	AUE_FCHFLAGS	STD	{ int fchflags(int fd, u_long flags); }
12136	AUE_SYNC	STD	{ int sync(void); }
12237	AUE_KILL	STD	{ int kill(int pid, int signum); }
12338	AUE_STAT	COMPAT	{ int stat(char *path, struct ostat *ub); }
12439	AUE_GETPPID	STD	{ pid_t getppid(void); }
12540	AUE_LSTAT	COMPAT	{ int lstat(char *path, struct ostat *ub); }
12641	AUE_DUP		STD	{ int dup(u_int fd); }
12742	AUE_PIPE	COMPAT10	{ int pipe(void); }
12843	AUE_GETEGID	STD	{ gid_t getegid(void); }
12944	AUE_PROFILE	STD	{ int profil(caddr_t samples, size_t size, \
130				    size_t offset, u_int scale); }
13145	AUE_KTRACE	STD	{ int ktrace(const char *fname, int ops, \
132				    int facs, int pid); }
13346	AUE_SIGACTION	COMPAT	{ int sigaction(int signum, \
134				    struct osigaction *nsa, \
135				    struct osigaction *osa); }
13647	AUE_GETGID	STD	{ gid_t getgid(void); }
13748	AUE_SIGPROCMASK	COMPAT	{ int sigprocmask(int how, osigset_t mask); }
138; XXX note nonstandard (bogus) calling convention - the libc stub passes
139; us the mask, not a pointer to it, and we return the old mask as the
140; (int) return value.
14149	AUE_GETLOGIN	STD	{ int getlogin(char *namebuf, u_int \
142				    namelen); }
14350	AUE_SETLOGIN	STD	{ int setlogin(char *namebuf); }
14451	AUE_ACCT	STD	{ int acct(char *path); }
14552	AUE_SIGPENDING	COMPAT	{ int sigpending(void); }
14653	AUE_SIGALTSTACK	STD	{ int sigaltstack(stack_t *ss, \
147				    stack_t *oss); }
14854	AUE_IOCTL	STD	{ int ioctl(int fd, u_long com, \
149				    caddr_t data); }
15055	AUE_REBOOT	STD	{ int reboot(int opt); }
15156	AUE_REVOKE	STD	{ int revoke(char *path); }
15257	AUE_SYMLINK	STD	{ int symlink(char *path, char *link); }
15358	AUE_READLINK	STD	{ ssize_t readlink(char *path, char *buf, \
154				    size_t count); }
15559	AUE_EXECVE	STD	{ int execve(char *fname, char **argv, \
156				    char **envv); }
15760	AUE_UMASK	STD	{ int umask(int newmask); } umask umask_args \
158				    int
15961	AUE_CHROOT	STD	{ int chroot(char *path); }
16062	AUE_FSTAT	COMPAT	{ int fstat(int fd, struct ostat *sb); }
16163	AUE_NULL	COMPAT	{ int getkerninfo(int op, char *where, \
162				    size_t *size, int arg); } getkerninfo \
163				    getkerninfo_args int
16464	AUE_NULL	COMPAT	{ int getpagesize(void); } getpagesize \
165				    getpagesize_args int
16665	AUE_MSYNC	STD	{ int msync(void *addr, size_t len, \
167				    int flags); }
16866	AUE_VFORK	STD	{ int vfork(void); }
16967	AUE_NULL	OBSOL	vread
17068	AUE_NULL	OBSOL	vwrite
17169	AUE_SBRK	STD	{ int sbrk(int incr); }
17270	AUE_SSTK	STD	{ int sstk(int incr); }
17371	AUE_MMAP	COMPAT	{ int mmap(void *addr, int len, int prot, \
174				    int flags, int fd, long pos); }
17572	AUE_O_VADVISE	STD	{ int ovadvise(int anom); } vadvise \
176				    ovadvise_args int
17773	AUE_MUNMAP	STD	{ int munmap(void *addr, size_t len); }
17874	AUE_MPROTECT	STD	{ int mprotect(void *addr, size_t len, \
179				    int prot); }
18075	AUE_MADVISE	STD	{ int madvise(void *addr, size_t len, \
181				    int behav); }
18276	AUE_NULL	OBSOL	vhangup
18377	AUE_NULL	OBSOL	vlimit
18478	AUE_MINCORE	STD	{ int mincore(const void *addr, size_t len, \
185				    char *vec); }
18679	AUE_GETGROUPS	STD	{ int getgroups(u_int gidsetsize, \
187				    gid_t *gidset); }
18880	AUE_SETGROUPS	STD	{ int setgroups(u_int gidsetsize, \
189				    gid_t *gidset); }
19081	AUE_GETPGRP	STD	{ int getpgrp(void); }
19182	AUE_SETPGRP	STD	{ int setpgid(int pid, int pgid); }
19283	AUE_SETITIMER	STD	{ int setitimer(u_int which, struct \
193				    itimerval *itv, struct itimerval *oitv); }
19484	AUE_WAIT4	COMPAT	{ int wait(void); }
19585	AUE_SWAPON	STD	{ int swapon(char *name); }
19686	AUE_GETITIMER	STD	{ int getitimer(u_int which, \
197				    struct itimerval *itv); }
19887	AUE_SYSCTL	COMPAT	{ int gethostname(char *hostname, \
199				    u_int len); } gethostname \
200				    gethostname_args int
20188	AUE_SYSCTL	COMPAT	{ int sethostname(char *hostname, \
202				    u_int len); } sethostname \
203				    sethostname_args int
20489	AUE_GETDTABLESIZE	STD	{ int getdtablesize(void); }
20590	AUE_DUP2	STD	{ int dup2(u_int from, u_int to); }
20691	AUE_NULL	UNIMPL	getdopt
20792	AUE_FCNTL	STD	{ int fcntl(int fd, int cmd, long arg); }
208; XXX should be	{ int fcntl(int fd, int cmd, ...); }
209; but we're not ready for varargs.
21093	AUE_SELECT	STD	{ int select(int nd, fd_set *in, fd_set *ou, \
211				    fd_set *ex, struct timeval *tv); }
21294	AUE_NULL	UNIMPL	setdopt
21395	AUE_FSYNC	STD	{ int fsync(int fd); }
21496	AUE_SETPRIORITY	STD	{ int setpriority(int which, int who, \
215				    int prio); }
21697	AUE_SOCKET	STD	{ int socket(int domain, int type, \
217				    int protocol); }
21898	AUE_CONNECT	STD	{ int connect(int s, caddr_t name, \
219				    int namelen); }
22099	AUE_ACCEPT	COMPAT|NOARGS { int accept(int s, caddr_t name, \
221				    int *anamelen); } accept accept_args int
222100	AUE_GETPRIORITY	STD	{ int getpriority(int which, int who); }
223101	AUE_SEND	COMPAT	{ int send(int s, caddr_t buf, int len, \
224				    int flags); }
225102	AUE_RECV	COMPAT	{ int recv(int s, caddr_t buf, int len, \
226				    int flags); }
227103	AUE_SIGRETURN	COMPAT	{ int sigreturn( \
228				    struct osigcontext *sigcntxp); }
229104	AUE_BIND	STD	{ int bind(int s, caddr_t name, \
230				    int namelen); }
231105	AUE_SETSOCKOPT	STD	{ int setsockopt(int s, int level, int name, \
232				    caddr_t val, int valsize); }
233106	AUE_LISTEN	STD	{ int listen(int s, int backlog); }
234107	AUE_NULL	OBSOL	vtimes
235108	AUE_NULL	COMPAT	{ int sigvec(int signum, struct sigvec *nsv, \
236				    struct sigvec *osv); }
237109	AUE_NULL	COMPAT	{ int sigblock(int mask); }
238110	AUE_NULL	COMPAT	{ int sigsetmask(int mask); }
239111	AUE_NULL	COMPAT	{ int sigsuspend(osigset_t mask); }
240; XXX note nonstandard (bogus) calling convention - the libc stub passes
241; us the mask, not a pointer to it.
242112	AUE_NULL	COMPAT	{ int sigstack(struct sigstack *nss, \
243				    struct sigstack *oss); }
244113	AUE_RECVMSG	COMPAT	{ int recvmsg(int s, struct omsghdr *msg, \
245				    int flags); }
246114	AUE_SENDMSG	COMPAT	{ int sendmsg(int s, caddr_t msg, \
247				    int flags); }
248115	AUE_NULL	OBSOL	vtrace
249116	AUE_GETTIMEOFDAY	STD	{ int gettimeofday(struct timeval *tp, \
250				    struct timezone *tzp); }
251117	AUE_GETRUSAGE	STD	{ int getrusage(int who, \
252				    struct rusage *rusage); }
253118	AUE_GETSOCKOPT	STD	{ int getsockopt(int s, int level, int name, \
254				    caddr_t val, int *avalsize); }
255119	AUE_NULL	UNIMPL	resuba (BSD/OS 2.x)
256120	AUE_READV	STD	{ int readv(int fd, struct iovec *iovp, \
257				    u_int iovcnt); }
258121	AUE_WRITEV	STD	{ int writev(int fd, struct iovec *iovp, \
259				    u_int iovcnt); }
260122	AUE_SETTIMEOFDAY	STD	{ int settimeofday(struct timeval *tv, \
261				    struct timezone *tzp); }
262123	AUE_FCHOWN	STD	{ int fchown(int fd, int uid, int gid); }
263124	AUE_FCHMOD	STD	{ int fchmod(int fd, int mode); }
264125	AUE_RECVFROM	COMPAT|NOARGS { int recvfrom(int s, caddr_t buf, \
265				    size_t len, int flags, caddr_t from, int \
266				    *fromlenaddr); } recvfrom recvfrom_args \
267				    int
268126	AUE_SETREUID	STD	{ int setreuid(int ruid, int euid); }
269127	AUE_SETREGID	STD	{ int setregid(int rgid, int egid); }
270128	AUE_RENAME	STD	{ int rename(char *from, char *to); }
271129	AUE_TRUNCATE	COMPAT	{ int truncate(char *path, long length); }
272130	AUE_FTRUNCATE	COMPAT	{ int ftruncate(int fd, long length); }
273131	AUE_FLOCK	STD	{ int flock(int fd, int how); }
274132	AUE_MKFIFO	STD	{ int mkfifo(char *path, int mode); }
275133	AUE_SENDTO	STD	{ int sendto(int s, caddr_t buf, size_t len, \
276				    int flags, caddr_t to, int tolen); }
277134	AUE_SHUTDOWN	STD	{ int shutdown(int s, int how); }
278135	AUE_SOCKETPAIR	STD	{ int socketpair(int domain, int type, \
279				    int protocol, int *rsv); }
280136	AUE_MKDIR	STD	{ int mkdir(char *path, int mode); }
281137	AUE_RMDIR	STD	{ int rmdir(char *path); }
282138	AUE_UTIMES	STD	{ int utimes(char *path, \
283				    struct timeval *tptr); }
284139	AUE_NULL	OBSOL	4.2 sigreturn
285140	AUE_ADJTIME	STD	{ int adjtime(struct timeval *delta, \
286				    struct timeval *olddelta); }
287141	AUE_GETPEERNAME	COMPAT	{ int getpeername(int fdes, caddr_t asa, \
288				    int *alen); }
289142	AUE_SYSCTL	COMPAT	{ long gethostid(void); }
290143	AUE_SYSCTL	COMPAT	{ int sethostid(long hostid); }
291144	AUE_GETRLIMIT	COMPAT	{ int getrlimit(u_int which, struct \
292				    orlimit *rlp); }
293145	AUE_SETRLIMIT	COMPAT	{ int setrlimit(u_int which, \
294				    struct orlimit *rlp); }
295146	AUE_KILLPG	COMPAT	{ int killpg(int pgid, int signum); }
296147	AUE_SETSID	STD	{ int setsid(void); }
297148	AUE_QUOTACTL	STD	{ int quotactl(char *path, int cmd, int uid, \
298				    caddr_t arg); }
299149	AUE_O_QUOTA	COMPAT	{ int quota(void); }
300150	AUE_GETSOCKNAME	COMPAT|NOARGS { int getsockname(int fdec, \
301				    caddr_t asa, int *alen); } getsockname \
302				    getsockname_args int
303
304; Syscalls 151-180 inclusive are reserved for vendor-specific
305; system calls.  (This includes various calls added for compatibity
306; with other Unix variants.)
307; Some of these calls are now supported by BSD...
308151	AUE_NULL	UNIMPL	sem_lock (BSD/OS 2.x)
309152	AUE_NULL	UNIMPL	sem_wakeup (BSD/OS 2.x)
310153	AUE_NULL	UNIMPL	asyncdaemon (BSD/OS 2.x)
311; 154 is initialised by the NLM code, if present.
312154	AUE_NULL	NOSTD	{ int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
313; 155 is initialized by the NFS code, if present.
314155	AUE_NFS_SVC	NOSTD	{ int nfssvc(int flag, caddr_t argp); }
315156	AUE_GETDIRENTRIES	COMPAT	{ int getdirentries(int fd, char *buf, \
316				    u_int count, long *basep); }
317157	AUE_STATFS	COMPAT4	{ int statfs(char *path, \
318				    struct ostatfs *buf); }
319158	AUE_FSTATFS	COMPAT4	{ int fstatfs(int fd, \
320				    struct ostatfs *buf); }
321159	AUE_NULL	UNIMPL	nosys
322160	AUE_LGETFH	STD	{ int lgetfh(char *fname, \
323				    struct fhandle *fhp); }
324161	AUE_NFS_GETFH	STD	{ int getfh(char *fname, \
325				    struct fhandle *fhp); }
326162	AUE_SYSCTL	COMPAT4	{ int getdomainname(char *domainname, \
327				    int len); }
328163	AUE_SYSCTL	COMPAT4	{ int setdomainname(char *domainname, \
329				    int len); }
330164	AUE_NULL	COMPAT4	{ int uname(struct utsname *name); }
331165	AUE_SYSARCH	STD	{ int sysarch(int op, char *parms); }
332166	AUE_RTPRIO	STD	{ int rtprio(int function, pid_t pid, \
333				    struct rtprio *rtp); }
334167	AUE_NULL	UNIMPL	nosys
335168	AUE_NULL	UNIMPL	nosys
336169	AUE_SEMSYS	NOSTD	{ int semsys(int which, int a2, int a3, \
337				    int a4, int a5); }
338; XXX should be	{ int semsys(int which, ...); }
339170	AUE_MSGSYS	NOSTD	{ int msgsys(int which, int a2, int a3, \
340				    int a4, int a5, int a6); }
341; XXX should be	{ int msgsys(int which, ...); }
342171	AUE_SHMSYS	NOSTD	{ int shmsys(int which, int a2, int a3, \
343				    int a4); }
344; XXX should be	{ int shmsys(int which, ...); }
345172	AUE_NULL	UNIMPL	nosys
346173	AUE_PREAD	COMPAT6	{ ssize_t pread(int fd, void *buf, \
347				    size_t nbyte, int pad, off_t offset); }
348174	AUE_PWRITE	COMPAT6	{ ssize_t pwrite(int fd, \
349				    const void *buf, \
350				    size_t nbyte, int pad, off_t offset); }
351175	AUE_NULL	STD	{ int setfib(int fibnum); }
352176	AUE_NTP_ADJTIME	STD	{ int ntp_adjtime(struct timex *tp); }
353177	AUE_NULL	UNIMPL	sfork (BSD/OS 2.x)
354178	AUE_NULL	UNIMPL	getdescriptor (BSD/OS 2.x)
355179	AUE_NULL	UNIMPL	setdescriptor (BSD/OS 2.x)
356180	AUE_NULL	UNIMPL	nosys
357
358; Syscalls 181-199 are used by/reserved for BSD
359181	AUE_SETGID	STD	{ int setgid(gid_t gid); }
360182	AUE_SETEGID	STD	{ int setegid(gid_t egid); }
361183	AUE_SETEUID	STD	{ int seteuid(uid_t euid); }
362184	AUE_NULL	UNIMPL	lfs_bmapv
363185	AUE_NULL	UNIMPL	lfs_markv
364186	AUE_NULL	UNIMPL	lfs_segclean
365187	AUE_NULL	UNIMPL	lfs_segwait
366188	AUE_STAT	STD	{ int stat(char *path, struct stat *ub); }
367189	AUE_FSTAT	STD	{ int fstat(int fd, struct stat *sb); }
368190	AUE_LSTAT	STD	{ int lstat(char *path, struct stat *ub); }
369191	AUE_PATHCONF	STD	{ int pathconf(char *path, int name); }
370192	AUE_FPATHCONF	STD	{ int fpathconf(int fd, int name); }
371193	AUE_NULL	UNIMPL	nosys
372194	AUE_GETRLIMIT	STD	{ int getrlimit(u_int which, \
373				    struct rlimit *rlp); } getrlimit \
374				    __getrlimit_args int
375195	AUE_SETRLIMIT	STD	{ int setrlimit(u_int which, \
376				    struct rlimit *rlp); } setrlimit \
377				    __setrlimit_args int
378196	AUE_GETDIRENTRIES	STD	{ int getdirentries(int fd, char *buf, \
379				    u_int count, long *basep); }
380197	AUE_MMAP	COMPAT6	{ caddr_t mmap(caddr_t addr, \
381				    size_t len, int prot, int flags, int fd, \
382				    int pad, off_t pos); }
383198	AUE_NULL	NOPROTO	{ int nosys(void); } __syscall \
384				    __syscall_args int
385199	AUE_LSEEK	COMPAT6	{ off_t lseek(int fd, int pad, \
386				    off_t offset, int whence); }
387200	AUE_TRUNCATE	COMPAT6	{ int truncate(char *path, int pad, \
388				    off_t length); }
389201	AUE_FTRUNCATE	COMPAT6	{ int ftruncate(int fd, int pad, \
390				    off_t length); }
391202	AUE_SYSCTL	STD	{ int __sysctl(int *name, u_int namelen, \
392				    void *old, size_t *oldlenp, void *new, \
393				    size_t newlen); } __sysctl sysctl_args int
394203	AUE_MLOCK	STD	{ int mlock(const void *addr, size_t len); }
395204	AUE_MUNLOCK	STD	{ int munlock(const void *addr, size_t len); }
396205	AUE_UNDELETE	STD	{ int undelete(char *path); }
397206	AUE_FUTIMES	STD	{ int futimes(int fd, struct timeval *tptr); }
398207	AUE_GETPGID	STD	{ int getpgid(pid_t pid); }
399208	AUE_NULL	UNIMPL	newreboot (NetBSD)
400209	AUE_POLL	STD	{ int poll(struct pollfd *fds, u_int nfds, \
401				    int timeout); }
402
403;
404; The following are reserved for loadable syscalls
405;
406210	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
407211	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
408212	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
409213	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
410214	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
411215	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
412216	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
413217	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
414218	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
415219	AUE_NULL	NODEF|NOTSTATIC	lkmnosys lkmnosys nosys_args int
416
417;
418; The following were introduced with NetBSD/4.4Lite-2
419220	AUE_SEMCTL	COMPAT7|NOSTD { int __semctl(int semid, int semnum, \
420				    int cmd, union semun_old *arg); }
421221	AUE_SEMGET	NOSTD	{ int semget(key_t key, int nsems, \
422				    int semflg); }
423222	AUE_SEMOP	NOSTD	{ int semop(int semid, struct sembuf *sops, \
424				    size_t nsops); }
425223	AUE_NULL	UNIMPL	semconfig
426224	AUE_MSGCTL	COMPAT7|NOSTD { int msgctl(int msqid, int cmd, \
427				    struct msqid_ds_old *buf); }
428225	AUE_MSGGET	NOSTD	{ int msgget(key_t key, int msgflg); }
429226	AUE_MSGSND	NOSTD	{ int msgsnd(int msqid, const void *msgp, \
430				    size_t msgsz, int msgflg); }
431227	AUE_MSGRCV	NOSTD	{ ssize_t msgrcv(int msqid, void *msgp, \
432				    size_t msgsz, long msgtyp, int msgflg); }
433228	AUE_SHMAT	NOSTD	{ int shmat(int shmid, const void *shmaddr, \
434				    int shmflg); }
435229	AUE_SHMCTL	COMPAT7|NOSTD { int shmctl(int shmid, int cmd, \
436				    struct shmid_ds_old *buf); }
437230	AUE_SHMDT	NOSTD	{ int shmdt(const void *shmaddr); }
438231	AUE_SHMGET	NOSTD	{ int shmget(key_t key, size_t size, \
439				    int shmflg); }
440;
441232	AUE_NULL	STD	{ int clock_gettime(clockid_t clock_id, \
442				    struct timespec *tp); }
443233	AUE_CLOCK_SETTIME	STD	{ int clock_settime( \
444				    clockid_t clock_id, \
445				    const struct timespec *tp); }
446234	AUE_NULL	STD	{ int clock_getres(clockid_t clock_id, \
447				    struct timespec *tp); }
448235	AUE_NULL	STD	{ int ktimer_create(clockid_t clock_id, \
449				    struct sigevent *evp, int *timerid); }
450236	AUE_NULL	STD	{ int ktimer_delete(int timerid); }
451237	AUE_NULL	STD	{ int ktimer_settime(int timerid, int flags, \
452				    const struct itimerspec *value, \
453				    struct itimerspec *ovalue); }
454238	AUE_NULL	STD	{ int ktimer_gettime(int timerid, struct \
455				    itimerspec *value); }
456239	AUE_NULL	STD	{ int ktimer_getoverrun(int timerid); }
457240	AUE_NULL	STD	{ int nanosleep(const struct timespec *rqtp, \
458				    struct timespec *rmtp); }
459241	AUE_NULL	STD	{ int ffclock_getcounter(ffcounter *ffcount); }
460242	AUE_NULL	STD	{ int ffclock_setestimate( \
461				    struct ffclock_estimate *cest); }
462243	AUE_NULL	STD	{ int ffclock_getestimate( \
463				    struct ffclock_estimate *cest); }
464244	AUE_NULL	UNIMPL	nosys
465245	AUE_NULL	UNIMPL	nosys
466246	AUE_NULL	UNIMPL	nosys
467247	AUE_NULL	STD	{ int clock_getcpuclockid2(id_t id,\
468				    int which, clockid_t *clock_id); }
469248	AUE_NULL	STD	{ int ntp_gettime(struct ntptimeval *ntvp); }
470249	AUE_NULL	UNIMPL	nosys
471; syscall numbers initially used in OpenBSD
472250	AUE_MINHERIT	STD	{ int minherit(void *addr, size_t len, \
473				    int inherit); }
474251	AUE_RFORK	STD	{ int rfork(int flags); }
475252	AUE_NULL	OBSOL	openbsd_poll
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 mode); }
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, const struct \
996				    vm_domain_policy_entry *policy); }
997550	AUE_FSYNC	STD	{ int fdatasync(int fd); }
998
999; Please copy any additions and changes to the following compatability tables:
1000; sys/compat/freebsd32/syscalls.master
1001