xref: /freebsd/sys/kern/syscalls.master (revision 5477372324b92240a96310ef2d45fa44ce8d0a93)
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_SETFIB	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	STD	{ int clock_nanosleep(clockid_t clock_id, \
465				    int flags, const struct timespec *rqtp, \
466				    struct timespec *rmtp); }
467245	AUE_NULL	UNIMPL	nosys
468246	AUE_NULL	UNIMPL	nosys
469247	AUE_NULL	STD	{ int clock_getcpuclockid2(id_t id,\
470				    int which, clockid_t *clock_id); }
471248	AUE_NULL	STD	{ int ntp_gettime(struct ntptimeval *ntvp); }
472249	AUE_NULL	UNIMPL	nosys
473; syscall numbers initially used in OpenBSD
474250	AUE_MINHERIT	STD	{ int minherit(void *addr, size_t len, \
475				    int inherit); }
476251	AUE_RFORK	STD	{ int rfork(int flags); }
477252	AUE_POLL	OBSOL	openbsd_poll
478253	AUE_ISSETUGID	STD	{ int issetugid(void); }
479254	AUE_LCHOWN	STD	{ int lchown(char *path, int uid, int gid); }
480255	AUE_AIO_READ	STD	{ int aio_read(struct aiocb *aiocbp); }
481256	AUE_AIO_WRITE	STD	{ int aio_write(struct aiocb *aiocbp); }
482257	AUE_LIO_LISTIO	STD	{ int lio_listio(int mode, \
483				    struct aiocb * const *acb_list, \
484				    int nent, struct sigevent *sig); }
485258	AUE_NULL	UNIMPL	nosys
486259	AUE_NULL	UNIMPL	nosys
487260	AUE_NULL	UNIMPL	nosys
488261	AUE_NULL	UNIMPL	nosys
489262	AUE_NULL	UNIMPL	nosys
490263	AUE_NULL	UNIMPL	nosys
491264	AUE_NULL	UNIMPL	nosys
492265	AUE_NULL	UNIMPL	nosys
493266	AUE_NULL	UNIMPL	nosys
494267	AUE_NULL	UNIMPL	nosys
495268	AUE_NULL	UNIMPL	nosys
496269	AUE_NULL	UNIMPL	nosys
497270	AUE_NULL	UNIMPL	nosys
498271	AUE_NULL	UNIMPL	nosys
499272	AUE_O_GETDENTS	STD	{ int getdents(int fd, char *buf, \
500				    size_t count); }
501273	AUE_NULL	UNIMPL	nosys
502274	AUE_LCHMOD	STD	{ int lchmod(char *path, mode_t mode); }
503275	AUE_LCHOWN	NOPROTO	{ int lchown(char *path, uid_t uid, \
504				    gid_t gid); } netbsd_lchown lchown_args \
505				    int
506276	AUE_LUTIMES	STD	{ int lutimes(char *path, \
507				    struct timeval *tptr); }
508277	AUE_MSYNC	NOPROTO	{ int msync(void *addr, size_t len, \
509				    int flags); } netbsd_msync msync_args int
510278	AUE_STAT	STD	{ int nstat(char *path, struct nstat *ub); }
511279	AUE_FSTAT	STD	{ int nfstat(int fd, struct nstat *sb); }
512280	AUE_LSTAT	STD	{ int nlstat(char *path, struct nstat *ub); }
513281	AUE_NULL	UNIMPL	nosys
514282	AUE_NULL	UNIMPL	nosys
515283	AUE_NULL	UNIMPL	nosys
516284	AUE_NULL	UNIMPL	nosys
517285	AUE_NULL	UNIMPL	nosys
518286	AUE_NULL	UNIMPL	nosys
519287	AUE_NULL	UNIMPL	nosys
520288	AUE_NULL	UNIMPL	nosys
521; 289 and 290 from NetBSD (OpenBSD: 267 and 268)
522289	AUE_PREADV	STD	{ ssize_t preadv(int fd, struct iovec *iovp, \
523					u_int iovcnt, off_t offset); }
524290	AUE_PWRITEV	STD	{ ssize_t pwritev(int fd, struct iovec *iovp, \
525					u_int iovcnt, off_t offset); }
526291	AUE_NULL	UNIMPL	nosys
527292	AUE_NULL	UNIMPL	nosys
528293	AUE_NULL	UNIMPL	nosys
529294	AUE_NULL	UNIMPL	nosys
530295	AUE_NULL	UNIMPL	nosys
531296	AUE_NULL	UNIMPL	nosys
532; XXX 297 is 300 in NetBSD
533297	AUE_FHSTATFS	COMPAT4	{ int fhstatfs( \
534				    const struct fhandle *u_fhp, \
535				    struct ostatfs *buf); }
536298	AUE_FHOPEN	STD	{ int fhopen(const struct fhandle *u_fhp, \
537				    int flags); }
538299	AUE_FHSTAT	STD	{ int fhstat(const struct fhandle *u_fhp, \
539				    struct stat *sb); }
540; syscall numbers for FreeBSD
541300	AUE_NULL	STD	{ int modnext(int modid); }
542301	AUE_NULL	STD	{ int modstat(int modid, \
543				    struct module_stat *stat); }
544302	AUE_NULL	STD	{ int modfnext(int modid); }
545303	AUE_NULL	STD	{ int modfind(const char *name); }
546304	AUE_MODLOAD	STD	{ int kldload(const char *file); }
547305	AUE_MODUNLOAD	STD	{ int kldunload(int fileid); }
548306	AUE_NULL	STD	{ int kldfind(const char *file); }
549307	AUE_NULL	STD	{ int kldnext(int fileid); }
550308	AUE_NULL	STD	{ int kldstat(int fileid, struct \
551				    kld_file_stat* stat); }
552309	AUE_NULL	STD	{ int kldfirstmod(int fileid); }
553310	AUE_GETSID	STD	{ int getsid(pid_t pid); }
554311	AUE_SETRESUID	STD	{ int setresuid(uid_t ruid, uid_t euid, \
555				    uid_t suid); }
556312	AUE_SETRESGID	STD	{ int setresgid(gid_t rgid, gid_t egid, \
557				    gid_t sgid); }
558313	AUE_NULL	OBSOL	signanosleep
559314	AUE_AIO_RETURN	STD	{ ssize_t aio_return(struct aiocb *aiocbp); }
560315	AUE_AIO_SUSPEND	STD	{ int aio_suspend( \
561				    struct aiocb * const * aiocbp, int nent, \
562				    const struct timespec *timeout); }
563316	AUE_AIO_CANCEL	STD	{ int aio_cancel(int fd, \
564				    struct aiocb *aiocbp); }
565317	AUE_AIO_ERROR	STD	{ int aio_error(struct aiocb *aiocbp); }
566318	AUE_AIO_READ	COMPAT6	{ int aio_read(struct oaiocb *aiocbp); }
567319	AUE_AIO_WRITE	COMPAT6	{ int aio_write(struct oaiocb *aiocbp); }
568320	AUE_LIO_LISTIO	COMPAT6	{ int lio_listio(int mode, \
569				    struct oaiocb * const *acb_list, \
570				    int nent, struct osigevent *sig); }
571321	AUE_NULL	STD	{ int yield(void); }
572322	AUE_NULL	OBSOL	thr_sleep
573323	AUE_NULL	OBSOL	thr_wakeup
574324	AUE_MLOCKALL	STD	{ int mlockall(int how); }
575325	AUE_MUNLOCKALL	STD	{ int munlockall(void); }
576326	AUE_GETCWD	STD	{ int __getcwd(char *buf, size_t buflen); }
577
578327	AUE_NULL	STD	{ int sched_setparam (pid_t pid, \
579				    const struct sched_param *param); }
580328	AUE_NULL	STD	{ int sched_getparam (pid_t pid, struct \
581				    sched_param *param); }
582
583329	AUE_NULL	STD	{ int sched_setscheduler (pid_t pid, int \
584				    policy, const struct sched_param \
585				    *param); }
586330	AUE_NULL	STD	{ int sched_getscheduler (pid_t pid); }
587
588331	AUE_NULL	STD	{ int sched_yield (void); }
589332	AUE_NULL	STD	{ int sched_get_priority_max (int policy); }
590333	AUE_NULL	STD	{ int sched_get_priority_min (int policy); }
591334	AUE_NULL	STD	{ int sched_rr_get_interval (pid_t pid, \
592				    struct timespec *interval); }
593335	AUE_NULL	STD	{ int utrace(const void *addr, size_t len); }
594336	AUE_SENDFILE	COMPAT4	{ int sendfile(int fd, int s, \
595				    off_t offset, size_t nbytes, \
596				    struct sf_hdtr *hdtr, off_t *sbytes, \
597				    int flags); }
598337	AUE_NULL	STD	{ int kldsym(int fileid, int cmd, \
599				    void *data); }
600338	AUE_JAIL	STD	{ int jail(struct jail *jail); }
601339	AUE_NULL	NOSTD|NOTSTATIC	{ int nnpfs_syscall(int operation, \
602				    char *a_pathP, int a_opcode, \
603				    void *a_paramsP, int a_followSymlinks); }
604340	AUE_SIGPROCMASK	STD	{ int sigprocmask(int how, \
605				    const sigset_t *set, sigset_t *oset); }
606341	AUE_SIGSUSPEND	STD	{ int sigsuspend(const sigset_t *sigmask); }
607342	AUE_SIGACTION	COMPAT4	{ int sigaction(int sig, const \
608				    struct sigaction *act, \
609				    struct sigaction *oact); }
610343	AUE_SIGPENDING	STD	{ int sigpending(sigset_t *set); }
611344	AUE_SIGRETURN	COMPAT4	{ int sigreturn( \
612				    const struct ucontext4 *sigcntxp); }
613345	AUE_SIGWAIT	STD	{ int sigtimedwait(const sigset_t *set, \
614				    siginfo_t *info, \
615				    const struct timespec *timeout); }
616346	AUE_NULL	STD	{ int sigwaitinfo(const sigset_t *set, \
617				    siginfo_t *info); }
618347	AUE_ACL_GET_FILE	STD	{ int __acl_get_file(const char *path, \
619				    acl_type_t type, struct acl *aclp); }
620348	AUE_ACL_SET_FILE	STD	{ int __acl_set_file(const char *path, \
621				    acl_type_t type, struct acl *aclp); }
622349	AUE_ACL_GET_FD	STD	{ int __acl_get_fd(int filedes, \
623				    acl_type_t type, struct acl *aclp); }
624350	AUE_ACL_SET_FD	STD	{ int __acl_set_fd(int filedes, \
625				    acl_type_t type, struct acl *aclp); }
626351	AUE_ACL_DELETE_FILE	STD	{ int __acl_delete_file(const char *path, \
627				    acl_type_t type); }
628352	AUE_ACL_DELETE_FD	STD	{ int __acl_delete_fd(int filedes, \
629				    acl_type_t type); }
630353	AUE_ACL_CHECK_FILE	STD	{ int __acl_aclcheck_file(const char *path, \
631				    acl_type_t type, struct acl *aclp); }
632354	AUE_ACL_CHECK_FD	STD	{ int __acl_aclcheck_fd(int filedes, \
633				    acl_type_t type, struct acl *aclp); }
634355	AUE_EXTATTRCTL	STD	{ int extattrctl(const char *path, int cmd, \
635				    const char *filename, int attrnamespace, \
636				    const char *attrname); }
637356	AUE_EXTATTR_SET_FILE	STD	{ ssize_t extattr_set_file( \
638				    const char *path, int attrnamespace, \
639				    const char *attrname, void *data, \
640				    size_t nbytes); }
641357	AUE_EXTATTR_GET_FILE	STD	{ ssize_t extattr_get_file( \
642				    const char *path, int attrnamespace, \
643				    const char *attrname, void *data, \
644				    size_t nbytes); }
645358	AUE_EXTATTR_DELETE_FILE	STD	{ int extattr_delete_file(const char *path, \
646				    int attrnamespace, \
647				    const char *attrname); }
648359	AUE_AIO_WAITCOMPLETE	STD	{ ssize_t aio_waitcomplete( \
649				    struct aiocb **aiocbp, \
650				    struct timespec *timeout); }
651360	AUE_GETRESUID	STD	{ int getresuid(uid_t *ruid, uid_t *euid, \
652				    uid_t *suid); }
653361	AUE_GETRESGID	STD	{ int getresgid(gid_t *rgid, gid_t *egid, \
654				    gid_t *sgid); }
655362	AUE_KQUEUE	STD	{ int kqueue(void); }
656363	AUE_KEVENT	STD	{ int kevent(int fd, \
657				    struct kevent *changelist, int nchanges, \
658				    struct kevent *eventlist, int nevents, \
659				    const struct timespec *timeout); }
660364	AUE_NULL	UNIMPL	__cap_get_proc
661365	AUE_NULL	UNIMPL	__cap_set_proc
662366	AUE_NULL	UNIMPL	__cap_get_fd
663367	AUE_NULL	UNIMPL	__cap_get_file
664368	AUE_NULL	UNIMPL	__cap_set_fd
665369	AUE_NULL	UNIMPL	__cap_set_file
666370	AUE_NULL	UNIMPL	nosys
667371	AUE_EXTATTR_SET_FD	STD	{ ssize_t extattr_set_fd(int fd, \
668				    int attrnamespace, const char *attrname, \
669				    void *data, size_t nbytes); }
670372	AUE_EXTATTR_GET_FD	STD	{ ssize_t extattr_get_fd(int fd, \
671				    int attrnamespace, const char *attrname, \
672				    void *data, size_t nbytes); }
673373	AUE_EXTATTR_DELETE_FD	STD	{ int extattr_delete_fd(int fd, \
674				    int attrnamespace, \
675				    const char *attrname); }
676374	AUE_SETUGID	STD	{ int __setugid(int flag); }
677375	AUE_NULL	UNIMPL	nfsclnt
678376	AUE_EACCESS	STD	{ int eaccess(char *path, int amode); }
679377	AUE_NULL	NOSTD|NOTSTATIC	{ int afs3_syscall(long syscall, \
680				    long parm1, long parm2, long parm3, \
681				    long parm4, long parm5, long parm6); }
682378	AUE_NMOUNT	STD	{ int nmount(struct iovec *iovp, \
683				    unsigned int iovcnt, int flags); }
684379	AUE_NULL	UNIMPL	kse_exit
685380	AUE_NULL	UNIMPL	kse_wakeup
686381	AUE_NULL	UNIMPL	kse_create
687382	AUE_NULL	UNIMPL	kse_thr_interrupt
688383	AUE_NULL	UNIMPL	kse_release
689384	AUE_NULL	STD	{ int __mac_get_proc(struct mac *mac_p); }
690385	AUE_NULL	STD	{ int __mac_set_proc(struct mac *mac_p); }
691386	AUE_NULL	STD	{ int __mac_get_fd(int fd, \
692				    struct mac *mac_p); }
693387	AUE_NULL	STD	{ int __mac_get_file(const char *path_p, \
694				    struct mac *mac_p); }
695388	AUE_NULL	STD	{ int __mac_set_fd(int fd, \
696				    struct mac *mac_p); }
697389	AUE_NULL	STD	{ int __mac_set_file(const char *path_p, \
698				    struct mac *mac_p); }
699390	AUE_NULL	STD	{ int kenv(int what, const char *name, \
700				    char *value, int len); }
701391	AUE_LCHFLAGS	STD	{ int lchflags(const char *path, \
702				    u_long flags); }
703392	AUE_NULL	STD	{ int uuidgen(struct uuid *store, \
704				    int count); }
705393	AUE_SENDFILE	STD	{ int sendfile(int fd, int s, off_t offset, \
706				    size_t nbytes, struct sf_hdtr *hdtr, \
707				    off_t *sbytes, int flags); }
708394	AUE_NULL	STD	{ int mac_syscall(const char *policy, \
709				    int call, void *arg); }
710395	AUE_GETFSSTAT	STD	{ int getfsstat(struct statfs *buf, \
711				    long bufsize, int mode); }
712396	AUE_STATFS	STD	{ int statfs(char *path, \
713				    struct statfs *buf); }
714397	AUE_FSTATFS	STD	{ int fstatfs(int fd, struct statfs *buf); }
715398	AUE_FHSTATFS	STD	{ int fhstatfs(const struct fhandle *u_fhp, \
716				    struct statfs *buf); }
717399	AUE_NULL	UNIMPL	nosys
718400	AUE_SEMCLOSE	NOSTD	{ int ksem_close(semid_t id); }
719401	AUE_SEMPOST	NOSTD	{ int ksem_post(semid_t id); }
720402	AUE_SEMWAIT	NOSTD	{ int ksem_wait(semid_t id); }
721403	AUE_SEMTRYWAIT	NOSTD	{ int ksem_trywait(semid_t id); }
722404	AUE_SEMINIT	NOSTD	{ int ksem_init(semid_t *idp, \
723				    unsigned int value); }
724405	AUE_SEMOPEN	NOSTD	{ int ksem_open(semid_t *idp, \
725				    const char *name, int oflag, \
726				    mode_t mode, unsigned int value); }
727406	AUE_SEMUNLINK	NOSTD	{ int ksem_unlink(const char *name); }
728407	AUE_SEMGETVALUE	NOSTD	{ int ksem_getvalue(semid_t id, int *val); }
729408	AUE_SEMDESTROY	NOSTD	{ int ksem_destroy(semid_t id); }
730409	AUE_NULL	STD	{ int __mac_get_pid(pid_t pid, \
731				    struct mac *mac_p); }
732410	AUE_NULL	STD	{ int __mac_get_link(const char *path_p, \
733				    struct mac *mac_p); }
734411	AUE_NULL	STD	{ int __mac_set_link(const char *path_p, \
735				    struct mac *mac_p); }
736412	AUE_EXTATTR_SET_LINK	STD	{ ssize_t extattr_set_link( \
737				    const char *path, int attrnamespace, \
738				    const char *attrname, void *data, \
739				    size_t nbytes); }
740413	AUE_EXTATTR_GET_LINK	STD	{ ssize_t extattr_get_link( \
741				    const char *path, int attrnamespace, \
742				    const char *attrname, void *data, \
743				    size_t nbytes); }
744414	AUE_EXTATTR_DELETE_LINK	STD	{ int extattr_delete_link( \
745				    const char *path, int attrnamespace, \
746				    const char *attrname); }
747415	AUE_NULL	STD	{ int __mac_execve(char *fname, char **argv, \
748				    char **envv, struct mac *mac_p); }
749416	AUE_SIGACTION	STD	{ int sigaction(int sig, \
750				    const struct sigaction *act, \
751				    struct sigaction *oact); }
752417	AUE_SIGRETURN	STD	{ int sigreturn( \
753				    const struct __ucontext *sigcntxp); }
754418	AUE_NULL	UNIMPL	__xstat
755419	AUE_NULL	UNIMPL	__xfstat
756420	AUE_NULL	UNIMPL	__xlstat
757421	AUE_NULL	STD	{ int getcontext(struct __ucontext *ucp); }
758422	AUE_NULL	STD	{ int setcontext( \
759				    const struct __ucontext *ucp); }
760423	AUE_NULL	STD	{ int swapcontext(struct __ucontext *oucp, \
761				    const struct __ucontext *ucp); }
762424	AUE_SWAPOFF	STD	{ int swapoff(const char *name); }
763425	AUE_ACL_GET_LINK	STD	{ int __acl_get_link(const char *path, \
764				    acl_type_t type, struct acl *aclp); }
765426	AUE_ACL_SET_LINK	STD	{ int __acl_set_link(const char *path, \
766				    acl_type_t type, struct acl *aclp); }
767427	AUE_ACL_DELETE_LINK	STD	{ int __acl_delete_link(const char *path, \
768				    acl_type_t type); }
769428	AUE_ACL_CHECK_LINK	STD	{ int __acl_aclcheck_link(const char *path, \
770				    acl_type_t type, struct acl *aclp); }
771429	AUE_SIGWAIT	STD	{ int sigwait(const sigset_t *set, \
772				    int *sig); }
773430	AUE_THR_CREATE	STD	{ int thr_create(ucontext_t *ctx, long *id, \
774				    int flags); }
775431	AUE_THR_EXIT	STD	{ void thr_exit(long *state); }
776432	AUE_NULL	STD	{ int thr_self(long *id); }
777433	AUE_THR_KILL	STD	{ int thr_kill(long id, int sig); }
778434	AUE_NULL	UNIMPL	nosys
779435	AUE_NULL	UNIMPL	nosys
780436	AUE_JAIL_ATTACH	STD	{ int jail_attach(int jid); }
781437	AUE_EXTATTR_LIST_FD	STD	{ ssize_t extattr_list_fd(int fd, \
782				    int attrnamespace, void *data, \
783				    size_t nbytes); }
784438	AUE_EXTATTR_LIST_FILE	STD	{ ssize_t extattr_list_file( \
785				    const char *path, int attrnamespace, \
786				    void *data, size_t nbytes); }
787439	AUE_EXTATTR_LIST_LINK	STD	{ ssize_t extattr_list_link( \
788				    const char *path, int attrnamespace, \
789				    void *data, size_t nbytes); }
790440	AUE_NULL	UNIMPL	kse_switchin
791441	AUE_SEMWAIT	NOSTD	{ int ksem_timedwait(semid_t id, \
792				    const struct timespec *abstime); }
793442	AUE_NULL	STD	{ int thr_suspend( \
794				    const struct timespec *timeout); }
795443	AUE_NULL	STD	{ int thr_wake(long id); }
796444	AUE_MODUNLOAD	STD	{ int kldunloadf(int fileid, int flags); }
797445	AUE_AUDIT	STD	{ int audit(const void *record, \
798				    u_int length); }
799446	AUE_AUDITON	STD	{ int auditon(int cmd, void *data, \
800				    u_int length); }
801447	AUE_GETAUID	STD	{ int getauid(uid_t *auid); }
802448	AUE_SETAUID	STD	{ int setauid(uid_t *auid); }
803449	AUE_GETAUDIT	STD	{ int getaudit(struct auditinfo *auditinfo); }
804450	AUE_SETAUDIT	STD	{ int setaudit(struct auditinfo *auditinfo); }
805451	AUE_GETAUDIT_ADDR	STD	{ int getaudit_addr( \
806				    struct auditinfo_addr *auditinfo_addr, \
807				    u_int length); }
808452	AUE_SETAUDIT_ADDR	STD	{ int setaudit_addr( \
809				    struct auditinfo_addr *auditinfo_addr, \
810				    u_int length); }
811453	AUE_AUDITCTL	STD	{ int auditctl(char *path); }
812454	AUE_NULL	STD	{ int _umtx_op(void *obj, int op, \
813				    u_long val, void *uaddr1, void *uaddr2); }
814455	AUE_THR_NEW	STD	{ int thr_new(struct thr_param *param, \
815				    int param_size); }
816456	AUE_NULL	STD	{ int sigqueue(pid_t pid, int signum, void *value); }
817457	AUE_MQ_OPEN	NOSTD	{ int kmq_open(const char *path, int flags, \
818				    mode_t mode, const struct mq_attr *attr); }
819458	AUE_MQ_SETATTR	NOSTD	{ int kmq_setattr(int mqd,		\
820				    const struct mq_attr *attr,		\
821				    struct mq_attr *oattr); }
822459	AUE_MQ_TIMEDRECEIVE	NOSTD	{ int kmq_timedreceive(int mqd,	\
823				    char *msg_ptr, size_t msg_len,	\
824				    unsigned *msg_prio,			\
825				    const struct timespec *abs_timeout); }
826460	AUE_MQ_TIMEDSEND	NOSTD	{ int kmq_timedsend(int mqd,		\
827				    const char *msg_ptr, size_t msg_len,\
828				    unsigned msg_prio,			\
829				    const struct timespec *abs_timeout);}
830461	AUE_MQ_NOTIFY	NOSTD	{ int kmq_notify(int mqd,		\
831				    const struct sigevent *sigev); }
832462	AUE_MQ_UNLINK	NOSTD	{ int kmq_unlink(const char *path); }
833463	AUE_NULL	STD	{ int abort2(const char *why, int nargs, void **args); }
834464	AUE_NULL	STD	{ int thr_set_name(long id, const char *name); }
835465	AUE_AIO_FSYNC	STD	{ int aio_fsync(int op, struct aiocb *aiocbp); }
836466	AUE_RTPRIO	STD	{ int rtprio_thread(int function, \
837				    lwpid_t lwpid, struct rtprio *rtp); }
838467	AUE_NULL	UNIMPL	nosys
839468	AUE_NULL	UNIMPL	nosys
840469	AUE_NULL	UNIMPL	__getpath_fromfd
841470	AUE_NULL	UNIMPL	__getpath_fromaddr
842471	AUE_SCTP_PEELOFF	NOSTD	{ int sctp_peeloff(int sd, uint32_t name); }
843472	AUE_SCTP_GENERIC_SENDMSG	NOSTD	{ int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, \
844				    caddr_t to, __socklen_t tolen, \
845				    struct sctp_sndrcvinfo *sinfo, int flags); }
846473	AUE_SCTP_GENERIC_SENDMSG_IOV	NOSTD	{ int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, \
847				    caddr_t to, __socklen_t tolen, \
848				    struct sctp_sndrcvinfo *sinfo, int flags); }
849474	AUE_SCTP_GENERIC_RECVMSG	NOSTD	{ int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, \
850				    struct sockaddr * from, __socklen_t *fromlenaddr, \
851				    struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
852475	AUE_PREAD	STD	{ ssize_t pread(int fd, void *buf, \
853				    size_t nbyte, off_t offset); }
854476	AUE_PWRITE	STD	{ ssize_t pwrite(int fd, const void *buf, \
855				    size_t nbyte, off_t offset); }
856477	AUE_MMAP	STD	{ caddr_t mmap(caddr_t addr, size_t len, \
857				    int prot, int flags, int fd, off_t pos); }
858478	AUE_LSEEK	STD	{ off_t lseek(int fd, off_t offset, \
859				    int whence); }
860479	AUE_TRUNCATE	STD	{ int truncate(char *path, off_t length); }
861480	AUE_FTRUNCATE	STD	{ int ftruncate(int fd, off_t length); }
862481	AUE_THR_KILL2	STD	{ int thr_kill2(pid_t pid, long id, int sig); }
863482	AUE_SHMOPEN	STD	{ int shm_open(const char *path, int flags, \
864				    mode_t mode); }
865483	AUE_SHMUNLINK	STD	{ int shm_unlink(const char *path); }
866484	AUE_NULL	STD	{ int cpuset(cpusetid_t *setid); }
867485	AUE_NULL	STD	{ int cpuset_setid(cpuwhich_t which, id_t id, \
868				    cpusetid_t setid); }
869486	AUE_NULL	STD	{ int cpuset_getid(cpulevel_t level, \
870				    cpuwhich_t which, id_t id, \
871				    cpusetid_t *setid); }
872487	AUE_NULL	STD	{ int cpuset_getaffinity(cpulevel_t level, \
873				    cpuwhich_t which, id_t id, size_t cpusetsize, \
874				    cpuset_t *mask); }
875488	AUE_NULL	STD	{ int cpuset_setaffinity(cpulevel_t level, \
876				    cpuwhich_t which, id_t id, size_t cpusetsize, \
877				    const cpuset_t *mask); }
878489	AUE_FACCESSAT	STD	{ int faccessat(int fd, char *path, int amode, \
879				    int flag); }
880490	AUE_FCHMODAT	STD	{ int fchmodat(int fd, char *path, mode_t mode, \
881				    int flag); }
882491	AUE_FCHOWNAT	STD	{ int fchownat(int fd, char *path, uid_t uid, \
883				    gid_t gid, int flag); }
884492	AUE_FEXECVE	STD	{ int fexecve(int fd, char **argv, \
885				    char **envv); }
886493	AUE_FSTATAT	STD	{ int fstatat(int fd, char *path, \
887				    struct stat *buf, int flag); }
888494	AUE_FUTIMESAT	STD	{ int futimesat(int fd, char *path, \
889				    struct timeval *times); }
890495	AUE_LINKAT	STD	{ int linkat(int fd1, char *path1, int fd2, \
891				    char *path2, int flag); }
892496	AUE_MKDIRAT	STD	{ int mkdirat(int fd, char *path, mode_t mode); }
893497	AUE_MKFIFOAT	STD	{ int mkfifoat(int fd, char *path, mode_t mode); }
894498	AUE_MKNODAT	STD	{ int mknodat(int fd, char *path, mode_t mode, \
895				    dev_t dev); }
896; XXX: see the comment for open
897499	AUE_OPENAT_RWTC	STD	{ int openat(int fd, char *path, int flag, \
898				    mode_t mode); }
899500	AUE_READLINKAT	STD	{ int readlinkat(int fd, char *path, char *buf, \
900				    size_t bufsize); }
901501	AUE_RENAMEAT	STD	{ int renameat(int oldfd, char *old, int newfd, \
902				     char *new); }
903502	AUE_SYMLINKAT	STD	{ int symlinkat(char *path1, int fd, \
904				     char *path2); }
905503	AUE_UNLINKAT	STD	{ int unlinkat(int fd, char *path, int flag); }
906504	AUE_POSIX_OPENPT	STD	{ int posix_openpt(int flags); }
907; 505 is initialised by the kgssapi code, if present.
908505	AUE_NULL	NOSTD	{ int gssd_syscall(char *path); }
909506	AUE_JAIL_GET	STD	{ int jail_get(struct iovec *iovp, \
910				    unsigned int iovcnt, int flags); }
911507	AUE_JAIL_SET	STD	{ int jail_set(struct iovec *iovp, \
912				    unsigned int iovcnt, int flags); }
913508	AUE_JAIL_REMOVE	STD	{ int jail_remove(int jid); }
914509	AUE_CLOSEFROM	STD	{ int closefrom(int lowfd); }
915510	AUE_SEMCTL	NOSTD	{ int __semctl(int semid, int semnum, \
916				    int cmd, union semun *arg); }
917511	AUE_MSGCTL	NOSTD	{ int msgctl(int msqid, int cmd, \
918				    struct msqid_ds *buf); }
919512	AUE_SHMCTL	NOSTD	{ int shmctl(int shmid, int cmd, \
920				    struct shmid_ds *buf); }
921513	AUE_LPATHCONF	STD	{ int lpathconf(char *path, int name); }
922514	AUE_NULL	OBSOL	cap_new
923515	AUE_CAP_RIGHTS_GET	STD	{ int __cap_rights_get(int version, \
924				    int fd, cap_rights_t *rightsp); }
925516	AUE_CAP_ENTER	STD	{ int cap_enter(void); }
926517	AUE_CAP_GETMODE	STD	{ int cap_getmode(u_int *modep); }
927518	AUE_PDFORK	STD	{ int pdfork(int *fdp, int flags); }
928519	AUE_PDKILL	STD	{ int pdkill(int fd, int signum); }
929520	AUE_PDGETPID	STD	{ int pdgetpid(int fd, pid_t *pidp); }
930521	AUE_PDWAIT	UNIMPL	pdwait4
931522	AUE_SELECT	STD	{ int pselect(int nd, fd_set *in, \
932				    fd_set *ou, fd_set *ex, \
933				    const struct timespec *ts, \
934				    const sigset_t *sm); }
935523	AUE_GETLOGINCLASS	STD	{ int getloginclass(char *namebuf, \
936				    size_t namelen); }
937524	AUE_SETLOGINCLASS	STD	{ int setloginclass(const char *namebuf); }
938525	AUE_NULL	STD	{ int rctl_get_racct(const void *inbufp, \
939				    size_t inbuflen, void *outbufp, \
940				    size_t outbuflen); }
941526	AUE_NULL	STD	{ int rctl_get_rules(const void *inbufp, \
942				    size_t inbuflen, void *outbufp, \
943				    size_t outbuflen); }
944527	AUE_NULL	STD	{ int rctl_get_limits(const void *inbufp, \
945				    size_t inbuflen, void *outbufp, \
946				    size_t outbuflen); }
947528	AUE_NULL	STD	{ int rctl_add_rule(const void *inbufp, \
948				    size_t inbuflen, void *outbufp, \
949				    size_t outbuflen); }
950529	AUE_NULL	STD	{ int rctl_remove_rule(const void *inbufp, \
951				    size_t inbuflen, void *outbufp, \
952				    size_t outbuflen); }
953530	AUE_POSIX_FALLOCATE	STD	{ int posix_fallocate(int fd, \
954				    off_t offset, off_t len); }
955531	AUE_POSIX_FADVISE	STD	{ int posix_fadvise(int fd, off_t offset, \
956				    off_t len, int advice); }
957532	AUE_WAIT6	STD	{ int wait6(idtype_t idtype, id_t id, \
958				    int *status, int options, \
959				    struct __wrusage *wrusage, \
960				    siginfo_t *info); }
961533	AUE_CAP_RIGHTS_LIMIT	STD	{ int cap_rights_limit(int fd, \
962					    cap_rights_t *rightsp); }
963534	AUE_CAP_IOCTLS_LIMIT	STD	{ int cap_ioctls_limit(int fd, \
964					    const u_long *cmds, size_t ncmds); }
965535	AUE_CAP_IOCTLS_GET	STD	{ ssize_t cap_ioctls_get(int fd, \
966					    u_long *cmds, size_t maxcmds); }
967536	AUE_CAP_FCNTLS_LIMIT	STD	{ int cap_fcntls_limit(int fd, \
968					    uint32_t fcntlrights); }
969537	AUE_CAP_FCNTLS_GET	STD	{ int cap_fcntls_get(int fd, \
970					    uint32_t *fcntlrightsp); }
971538	AUE_BINDAT	STD	{ int bindat(int fd, int s, caddr_t name, \
972				    int namelen); }
973539	AUE_CONNECTAT	STD	{ int connectat(int fd, int s, caddr_t name, \
974				    int namelen); }
975540	AUE_CHFLAGSAT	STD	{ int chflagsat(int fd, const char *path, \
976				    u_long flags, int atflag); }
977541	AUE_ACCEPT	STD	{ int accept4(int s, \
978				    struct sockaddr * __restrict name, \
979				    __socklen_t * __restrict anamelen, \
980				    int flags); }
981542	AUE_PIPE	STD	{ int pipe2(int *fildes, int flags); }
982543	AUE_AIO_MLOCK	STD	{ int aio_mlock(struct aiocb *aiocbp); }
983544	AUE_PROCCTL	STD	{ int procctl(idtype_t idtype, id_t id, \
984				    int com, void *data); }
985545	AUE_POLL	STD	{ int ppoll(struct pollfd *fds, u_int nfds, \
986				    const struct timespec *ts, \
987				    const sigset_t *set); }
988546	AUE_FUTIMES	STD	{ int futimens(int fd, \
989				    struct timespec *times); }
990547	AUE_FUTIMESAT	STD	{ int utimensat(int fd, \
991				    char *path, \
992				    struct timespec *times, int flag); }
993548	AUE_NULL	STD	{ int numa_getaffinity(cpuwhich_t which, \
994				    id_t id, \
995				    struct vm_domain_policy_entry *policy); }
996549	AUE_NULL	STD	{ int numa_setaffinity(cpuwhich_t which, \
997				    id_t id, const struct \
998				    vm_domain_policy_entry *policy); }
999550	AUE_FSYNC	STD	{ int fdatasync(int fd); }
1000
1001; Please copy any additions and changes to the following compatability tables:
1002; sys/compat/freebsd32/syscalls.master
1003