syscalls.master revision 146806
1 $FreeBSD: head/sys/compat/freebsd32/syscalls.master 146806 2005-05-30 15:09:18Z rwatson $
2;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
3;	from: src/sys/kern/syscalls.master 1.107
4;
5; System call name/number master file.
6; Processed to created init_sysent.c, syscalls.c and syscall.h.
7
8; Columns: number [M]type nargs name alt{name,tag,rtyp}/comments
9;	number	system call number, must be in order
10;	audit	the audit event associated with the system call
11;		A value of AUE_NULL means no auditing, but it also means that
12;		there is no audit event for the call at this time. For the
13;		case where the event exists, but we don't want auditing, the
14;		event should be #defined to AUE_NULL in audit_kevents.h.
15;	type	one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA,
16;		[M]LIBCOMPAT, [M]NODEF,  [M]NOARGS,  [M]NOPROTO,  [M]NOIMPL,
17;		[M]NOSTD
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;	[M]	e.g. like MSTD -- means the system call is MP-safe.  If no
27;		M prefix is used, the syscall wrapper will obtain the Giant
28;		lock for the syscall.
29;	STD	always included
30;	COMPAT	included on COMPAT #ifdef
31;	LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
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 lkmsys
36;			so the SYSCALL_MODULE macro works
37
38; #ifdef's, etc. may be included, and are copied to the output files.
39
40#include <sys/param.h>
41#include <sys/sysent.h>
42#include <sys/sysproto.h>
43#include <sys/mount.h>
44#include <compat/freebsd32/freebsd32.h>
45#include <compat/freebsd32/freebsd32_proto.h>
46
47; Reserved/unimplemented system calls in the range 0-150 inclusive
48; are reserved for use in future Berkeley releases.
49; Additional system calls implemented in vendor and other
50; redistributions should be placed in the reserved range at the end
51; of the current calls.
52
530	AUE_NULL	MNOPROTO { int nosys(void); } syscall nosys_args int
541	AUE_NULL	MNOPROTO { void sys_exit(int rval); } exit \
55				    sys_exit_args void
562	AUE_NULL	MNOPROTO { int fork(void); }
573	AUE_NULL	MNOPROTO { ssize_t read(int fd, void *buf, \
58				    size_t nbyte); }
594	AUE_NULL	MNOPROTO { ssize_t write(int fd, const void *buf, \
60				    size_t nbyte); }
615	AUE_NULL	MNOPROTO { int open(char *path, int flags, \
62				    int mode); }
636	AUE_NULL	MNOPROTO { int close(int fd); }
647	AUE_NULL	MSTD	{ int freebsd32_wait4(int pid, int *status, \
65				    int options, struct rusage32 *rusage); }
668	AUE_NULL	OBSOL	old creat
679	AUE_NULL	MNOPROTO { int link(char *path, char *link); }
6810	AUE_NULL	MNOPROTO { int unlink(char *path); }
6911	AUE_NULL	OBSOL	execv
7012	AUE_NULL	NOPROTO	{ int chdir(char *path); }
7113	AUE_NULL	NOPROTO	{ int fchdir(int fd); }
7214	AUE_NULL	NOPROTO	{ int mknod(char *path, int mode, int dev); }
7315	AUE_NULL	NOPROTO	{ int chmod(char *path, int mode); }
7416	AUE_NULL	NOPROTO	{ int chown(char *path, int uid, int gid); }
7517	AUE_NULL	MNOPROTO { int obreak(char *nsize); } break \
76				    obreak_args int
7718	AUE_NULL	COMPAT4	{ int freebsd32_getfsstat( \
78				    struct statfs32 *buf, long bufsize, \
79				    int flags); }
8019	AUE_NULL	OBSOL	olseek
8120	AUE_NULL	MNOPROTO { pid_t getpid(void); }
8221	AUE_NULL	MNOPROTO { int mount(char *type, char *path, \
83				    int flags, caddr_t data); }
8422	AUE_NULL	MNOPROTO { int unmount(char *path, int flags); }
8523	AUE_NULL	MNOPROTO { int setuid(uid_t uid); }
8624	AUE_NULL	MNOPROTO { uid_t getuid(void); }
8725	AUE_NULL	MNOPROTO { uid_t geteuid(void); }
8826	AUE_NULL	MNOPROTO { int ptrace(int req, pid_t pid, \
89				    caddr_t addr, int data); }
90; XXX implement
9127	AUE_NULL	UNIMPL	recvmsg
9228	AUE_NULL	MNOPROTO { int sendmsg(int s, caddr_t msg, \
93				    int flags); }
9429	AUE_NULL	MNOPROTO { int recvfrom(int s, caddr_t buf, \
95				    size_t len, int flags, caddr_t from, \
96				    int *fromlenaddr); }
9730	AUE_NULL	MNOPROTO { int accept(int s, caddr_t name, \
98				    int *anamelen); }
9931	AUE_NULL	MNOPROTO { int getpeername(int fdes, caddr_t asa, \
100				    int *alen); }
10132	AUE_NULL	MNOPROTO { int getsockname(int fdes, caddr_t asa, \
102				    int *alen); }
10333	AUE_NULL	NOPROTO	{ int access(char *path, int flags); }
10434	AUE_NULL	NOPROTO	{ int chflags(char *path, int flags); }
10535	AUE_NULL	NOPROTO	{ int fchflags(int fd, int flags); }
10636	AUE_NULL	NOPROTO	{ int sync(void); }
10737	AUE_NULL	MNOPROTO { int kill(int pid, int signum); }
10838	AUE_NULL	UNIMPL	ostat
10939	AUE_NULL	MNOPROTO { pid_t getppid(void); }
11040	AUE_NULL	UNIMPL	olstat
11141	AUE_NULL	MNOPROTO { int dup(u_int fd); }
11242	AUE_NULL	MNOPROTO { int pipe(void); }
11343	AUE_NULL	MNOPROTO { gid_t getegid(void); }
11444	AUE_NULL	MNOPROTO { int profil(caddr_t samples, size_t size, \
115				    size_t offset, u_int scale); }
11645	AUE_NULL	MNOPROTO { int ktrace(const char *fname, int ops, \
117				    int facs, int pid); }
11846	AUE_NULL	UNIMPL	osigaction
11947	AUE_NULL	MNOPROTO { gid_t getgid(void); }
12048	AUE_NULL	UNIMPL	osigprocmask
12149	AUE_NULL	MNOPROTO { int getlogin(char *namebuf, \
122				    u_int namelen); }
12350	AUE_NULL	MNOPROTO { int setlogin(char *namebuf); }
12451	AUE_NULL	MNOPROTO { int acct(char *path); }
12552	AUE_NULL	OBSOL	osigpending
12653	AUE_NULL	MSTD	{ int freebsd32_sigaltstack( \
127				    struct sigaltstack32 *ss, \
128				    struct sigaltstack32 *oss); }
12954	AUE_NULL	MNOPROTO { int ioctl(int fd, u_long com, \
130				    caddr_t data); }
13155	AUE_NULL	MNOPROTO { int reboot(int opt); }
13256	AUE_NULL	NOPROTO	{ int revoke(char *path); }
13357	AUE_NULL	NOPROTO	{ int symlink(char *path, char *link); }
13458	AUE_NULL	NOPROTO	{ int readlink(char *path, char *buf, \
135				    int count); }
13659	AUE_NULL	STD	 { int freebsd32_execve(char *fname, \
137				    u_int32_t *argv, u_int32_t *envv); }
13860	AUE_NULL	MNOPROTO { int umask(int newmask); } umask \
139				    umask_args int
14061	AUE_NULL	NOPROTO	{ int chroot(char *path); }
14162	AUE_NULL	OBSOL	ofstat
14263	AUE_NULL	OBSOL	ogetkerninfo
14364	AUE_NULL	OBSOL	ogetpagesize
144; XXX implement (not OBSOL at all)
14565	AUE_NULL	MNOPROTO { int msync(void *addr, size_t len, \
146				    int flags); }
14766	AUE_NULL	MNOPROTO { int vfork(void); }
14867	AUE_NULL	OBSOL	vread
14968	AUE_NULL	OBSOL	vwrite
15069	AUE_NULL	MNOPROTO { int sbrk(int incr); }
15170	AUE_NULL	MNOPROTO { int sstk(int incr); }
15271	AUE_NULL	OBSOL	ommap
15372	AUE_NULL	MNOPROTO { int ovadvise(int anom); } vadvise \
154				    ovadvise_args int
15573	AUE_NULL	MNOPROTO { int munmap(void *addr, size_t len); }
15674	AUE_NULL	MNOPROTO { int mprotect(const void *addr, \
157				    size_t len, int prot); }
15875	AUE_NULL	MNOPROTO { int madvise(void *addr, size_t len, \
159				    int behav); }
16076	AUE_NULL	OBSOL	vhangup
16177	AUE_NULL	OBSOL	vlimit
16278	AUE_NULL	MNOPROTO { int mincore(const void *addr, size_t len, \
163				    char *vec); }
16479	AUE_NULL	MNOPROTO { int getgroups(u_int gidsetsize, \
165				    gid_t *gidset); }
16680	AUE_NULL	MNOPROTO { int setgroups(u_int gidsetsize, \
167				    gid_t *gidset); }
16881	AUE_NULL	MNOPROTO { int getpgrp(void); }
16982	AUE_NULL	MNOPROTO { int setpgid(int pid, int pgid); }
17083	AUE_NULL	STD	{ int freebsd32_setitimer(u_int which, \
171				    struct itimerval32 *itv, \
172				    struct itimerval32 *oitv); }
17384	AUE_NULL	OBSOL	owait
174; XXX implement
17585	AUE_NULL	OBSOL	oswapon
17686	AUE_NULL	STD	{ int freebsd32_getitimer(u_int which, \
177				    struct itimerval32 *itv); }
17887	AUE_NULL	OBSOL	ogethostname
17988	AUE_NULL	OBSOL	osethostname
18089	AUE_NULL	MNOPROTO { int getdtablesize(void); }
18190	AUE_NULL	MNOPROTO { int dup2(u_int from, u_int to); }
18291	AUE_NULL	UNIMPL	getdopt
18392	AUE_NULL	MNOPROTO { int fcntl(int fd, int cmd, long arg); }
18493	AUE_NULL	STD	{ int freebsd32_select(int nd, fd_set *in, \
185				    fd_set *ou, fd_set *ex, \
186				    struct timeval32 *tv); }
187; XXX need to override for big-endian - little-endian should work fine.
18894	AUE_NULL	UNIMPL	setdopt
18995	AUE_NULL	NOPROTO	{ int fsync(int fd); }
19096	AUE_NULL	MNOPROTO { int setpriority(int which, int who, \
191				    int prio); }
19297	AUE_NULL	MNOPROTO { int socket(int domain, int type, \
193				    int protocol); }
19498	AUE_NULL	MNOPROTO { int connect(int s, caddr_t name, \
195				    int namelen); }
19699	AUE_NULL	OBSOL	oaccept
197100	AUE_NULL	MNOPROTO { int getpriority(int which, int who); }
198101	AUE_NULL	OBSOL	osend
199102	AUE_NULL	OBSOL	orecv
200103	AUE_NULL	OBSOL	osigreturn
201104	AUE_NULL	MNOPROTO { int bind(int s, caddr_t name, \
202				    int namelen); }
203105	AUE_NULL	MNOPROTO { int setsockopt(int s, int level, \
204				    int name, caddr_t val, int valsize); }
205106	AUE_NULL	MNOPROTO { int listen(int s, int backlog); }
206107	AUE_NULL	OBSOL	vtimes
207108	AUE_NULL	OBSOL	osigvec
208109	AUE_NULL	OBSOL	osigblock
209110	AUE_NULL	OBSOL	osigsetmask
210111	AUE_NULL	OBSOL	osigsuspend
211112	AUE_NULL	OBSOL	osigstack
212113	AUE_NULL	OBSOL	orecvmsg
213114	AUE_NULL	OBSOL	osendmsg
214115	AUE_NULL	OBSOL	vtrace
215116	AUE_NULL	MSTD	{ int freebsd32_gettimeofday( \
216				    struct timeval32 *tp, \
217				    struct timezone *tzp); }
218117	AUE_NULL	STD	{ int freebsd32_getrusage(int who, \
219				    struct rusage32 *rusage); }
220118	AUE_NULL	MNOPROTO { int getsockopt(int s, int level, \
221				    int name, caddr_t val, int *avalsize); }
222119	AUE_NULL	UNIMPL	resuba (BSD/OS 2.x)
223120	AUE_NULL	STD	{ int freebsd32_readv(int fd, \
224				    struct iovec32 *iovp, u_int iovcnt); }
225121	AUE_NULL	STD	{ int freebsd32_writev(int fd, \
226				    struct iovec32 *iovp, u_int iovcnt); }
227122	AUE_NULL	STD	{ int freebsd32_settimeofday( \
228				    struct timeval32 *tv, \
229				    struct timezone *tzp); }
230123	AUE_NULL	NOPROTO	{ int fchown(int fd, int uid, int gid); }
231124	AUE_NULL	NOPROTO	{ int fchmod(int fd, int mode); }
232125	AUE_NULL	OBSOL	orecvfrom
233126	AUE_NULL	MNOPROTO { int setreuid(int ruid, int euid); }
234127	AUE_NULL	MNOPROTO { int setregid(int rgid, int egid); }
235128	AUE_NULL	NOPROTO	{ int rename(char *from, char *to); }
236129	AUE_NULL	OBSOL	otruncate
237130	AUE_NULL	OBSOL	ftruncate
238131	AUE_NULL	MNOPROTO { int flock(int fd, int how); }
239132	AUE_NULL	NOPROTO	{ int mkfifo(char *path, int mode); }
240133	AUE_NULL	MNOPROTO { int sendto(int s, caddr_t buf, \
241				    size_t len, int flags, caddr_t to, \
242				    int tolen); }
243134	AUE_NULL	MNOPROTO { int shutdown(int s, int how); }
244135	AUE_NULL	MNOPROTO { int socketpair(int domain, int type, \
245				    int protocol, int *rsv); }
246136	AUE_NULL	NOPROTO	{ int mkdir(char *path, int mode); }
247137	AUE_NULL	NOPROTO	{ int rmdir(char *path); }
248138	AUE_NULL	STD	{ int freebsd32_utimes(char *path, \
249				    struct timeval32 *tptr); }
250139	AUE_NULL	OBSOL	4.2 sigreturn
251140	AUE_NULL	STD	{ int freebsd32_adjtime( \
252				    struct timeval32 *delta, \
253				    struct timeval32 *olddelta); }
254141	AUE_NULL	OBSOL	ogetpeername
255142	AUE_NULL	OBSOL	ogethostid
256143	AUE_NULL	OBSOL	sethostid
257144	AUE_NULL	OBSOL	getrlimit
258145	AUE_NULL	OBSOL	setrlimit
259146	AUE_NULL	OBSOL	killpg
260147	AUE_NULL	MNOPROTO { int setsid(void); }
261148	AUE_NULL	NOPROTO	{ int quotactl(char *path, int cmd, int uid, \
262				    caddr_t arg); }
263149	AUE_NULL	OBSOL oquota
264150	AUE_NULL	OBSOL ogetsockname
265
266; Syscalls 151-180 inclusive are reserved for vendor-specific
267; system calls.  (This includes various calls added for compatibity
268; with other Unix variants.)
269; Some of these calls are now supported by BSD...
270151	AUE_NULL	UNIMPL	sem_lock (BSD/OS 2.x)
271152	AUE_NULL	UNIMPL	sem_wakeup (BSD/OS 2.x)
272153	AUE_NULL	UNIMPL	asyncdaemon (BSD/OS 2.x)
273154	AUE_NULL	UNIMPL	nosys
274; 155 is initialized by the NFS code, if present.
275; XXX this is a problem!!!
276155	AUE_NULL	UNIMPL	nfssvc
277156	AUE_NULL	OBSOL	ogetdirentries
278157	AUE_NULL	COMPAT4	{ int freebsd32_statfs(char *path, \
279				    struct statfs32 *buf); }
280158	AUE_NULL	COMPAT4	{ int freebsd32_fstatfs(int fd, \
281				    struct statfs32 *buf); }
282159	AUE_NULL	UNIMPL	nosys
283160	AUE_NULL	UNIMPL	nosys
284161	AUE_NULL	NOPROTO	{ int getfh(char *fname, \
285				    struct fhandle *fhp); }
286162	AUE_NULL	MNOPROTO { int getdomainname(char *domainname, \
287				    int len); }
288163	AUE_NULL	MNOPROTO { int setdomainname(char *domainname, \
289				    int len); }
290164	AUE_NULL	MNOPROTO { int uname(struct utsname *name); }
291165	AUE_NULL	MNOPROTO { int sysarch(int op, char *parms); }
292166	AUE_NULL	MNOPROTO { int rtprio(int function, pid_t pid, \
293				    struct rtprio *rtp); }
294167	AUE_NULL	UNIMPL	nosys
295168	AUE_NULL	UNIMPL	nosys
296169	AUE_NULL	STD	{ int freebsd32_semsys(int which, int a2, \
297				    int a3, int a4, int a5); }
298170	AUE_NULL	STD	{ int freebsd32_msgsys(int which, int a2, \
299				    int a3, int a4, int a5, int a6); }
300171	AUE_NULL	STD	{ int freebsd32_shmsys(int which, int a2, \
301				    int a3, int a4); }
302172	AUE_NULL	UNIMPL	nosys
303173	AUE_NULL	STD	{ ssize_t freebsd32_pread(int fd, void *buf, \
304				    size_t nbyte, int pad, \
305				    u_int32_t offsetlo, u_int32_t offsethi); }
306; XXX note - bigendian is different
307174	AUE_NULL	STD	{ ssize_t freebsd32_pwrite(int fd, \
308				    const void *buf, size_t nbyte, int pad, \
309				    u_int32_t offsetlo, u_int32_t offsethi); }
310; XXX note - bigendian is different
311175	AUE_NULL	UNIMPL	nosys
312176	AUE_NULL	MNOPROTO { int ntp_adjtime(struct timex *tp); }
313177	AUE_NULL	UNIMPL	sfork (BSD/OS 2.x)
314178	AUE_NULL	UNIMPL	getdescriptor (BSD/OS 2.x)
315179	AUE_NULL	UNIMPL	setdescriptor (BSD/OS 2.x)
316180	AUE_NULL	UNIMPL	nosys
317
318; Syscalls 181-199 are used by/reserved for BSD
319181	AUE_NULL	MNOPROTO { int setgid(gid_t gid); }
320182	AUE_NULL	MNOPROTO { int setegid(gid_t egid); }
321183	AUE_NULL	MNOPROTO { int seteuid(uid_t euid); }
322184	AUE_NULL	UNIMPL	lfs_bmapv
323185	AUE_NULL	UNIMPL	lfs_markv
324186	AUE_NULL	UNIMPL	lfs_segclean
325187	AUE_NULL	UNIMPL	lfs_segwait
326188	AUE_NULL	STD	{ int freebsd32_stat(char *path, \
327				    struct stat32 *ub); }
328189	AUE_NULL	MSTD	{ int freebsd32_fstat(int fd, \
329				    struct stat32 *ub); }
330190	AUE_NULL	STD	{ int freebsd32_lstat(char *path, \
331				    struct stat32 *ub); }
332191	AUE_NULL	NOPROTO	{ int pathconf(char *path, int name); }
333192	AUE_NULL	MNOPROTO { int fpathconf(int fd, int name); }
334193	AUE_NULL	UNIMPL	nosys
335194	AUE_NULL	MNOPROTO { int getrlimit(u_int which, \
336				    struct rlimit *rlp); } getrlimit \
337				    __getrlimit_args int
338195	AUE_NULL	MNOPROTO { int setrlimit(u_int which, \
339				    struct rlimit *rlp); } setrlimit \
340				    __setrlimit_args int
341196	AUE_NULL	NOPROTO	{ int getdirentries(int fd, char *buf, \
342				    u_int count, long *basep); }
343197	AUE_NULL	STD 	{ caddr_t freebsd32_mmap(caddr_t addr, \
344				    size_t len, int prot, int flags, int fd, \
345				    int pad, u_int32_t poslo, \
346				    u_int32_t poshi); }
347198	AUE_NULL	NOPROTO	{ int nosys(void); } __syscall \
348				    __syscall_args int
349; XXX note - bigendian is different
350199	AUE_NULL	STD	{ off_t freebsd32_lseek(int fd, int pad, \
351				    u_int32_t offsetlo, u_int32_t offsethi, \
352				    int whence); }
353; XXX note - bigendian is different
354200	AUE_NULL	STD	{ int freebsd32_truncate(char *path, \
355				    int pad, u_int32_t lengthlo, \
356				    u_int32_t lengthhi); }
357; XXX note - bigendian is different
358201	AUE_NULL	STD	{ int freebsd32_ftruncate(int fd, int pad, \
359				    u_int32_t lengthlo, u_int32_t lengthhi); }
360202	AUE_NULL	MSTD	{ int freebsd32_sysctl(int *name, \
361				    u_int namelen, void *old, \
362				    u_int32_t *oldlenp, void *new, \
363				    u_int32_t newlen); }
364203	AUE_NULL	MNOPROTO { int mlock(const void *addr, \
365				    size_t len); }
366204	AUE_NULL	MNOPROTO { int munlock(const void *addr, \
367				    size_t len); }
368205	AUE_NULL	NOPROTO	{ int undelete(char *path); }
369206	AUE_NULL	NOPROTO	{ int futimes(int fd, struct timeval *tptr); }
370207	AUE_NULL	MNOPROTO { int getpgid(pid_t pid); }
371208	AUE_NULL	UNIMPL	newreboot (NetBSD)
372209	AUE_NULL	MNOPROTO { int poll(struct pollfd *fds, u_int nfds, \
373				    int timeout); }
374
375;
376; The following are reserved for loadable syscalls
377;
378210	AUE_NULL	UNIMPL
379211	AUE_NULL	UNIMPL
380212	AUE_NULL	UNIMPL
381213	AUE_NULL	UNIMPL
382214	AUE_NULL	UNIMPL
383215	AUE_NULL	UNIMPL
384216	AUE_NULL	UNIMPL
385217	AUE_NULL	UNIMPL
386218	AUE_NULL	UNIMPL
387219	AUE_NULL	UNIMPL
388
389;
390; The following were introduced with NetBSD/4.4Lite-2
391; They are initialized by thier respective modules/sysinits
392; XXX PROBLEM!!
393220	AUE_NULL	MNOPROTO { int __semctl(int semid, int semnum, \
394				    int cmd, union semun *arg); }
395221	AUE_NULL	MNOPROTO { int semget(key_t key, int nsems, \
396				    int semflg); }
397222	AUE_NULL	MNOPROTO { int semop(int semid, struct sembuf *sops, \
398				    u_int nsops); }
399223	AUE_NULL	UNIMPL	semconfig
400224	AUE_NULL	MNOPROTO { int msgctl(int msqid, int cmd, \
401				    struct msqid_ds *buf); }
402225	AUE_NULL	MNOPROTO { int msgget(key_t key, int msgflg); }
403226	AUE_NULL	MNOPROTO { int msgsnd(int msqid, void *msgp, \
404				    size_t msgsz, int msgflg); }
405227	AUE_NULL	MNOPROTO { int msgrcv(int msqid, void *msgp, \
406				    size_t msgsz, long msgtyp, int msgflg); }
407228	AUE_NULL	MNOPROTO { int shmat(int shmid, void *shmaddr, \
408				    int shmflg); }
409229	AUE_NULL	MNOPROTO { int shmctl(int shmid, int cmd, \
410				    struct shmid_ds *buf); }
411230	AUE_NULL	MNOPROTO { int shmdt(void *shmaddr); }
412231	AUE_NULL	MNOPROTO { int shmget(key_t key, int size, \
413				    int shmflg); }
414;
415232	AUE_NULL	MNOPROTO { int clock_gettime(clockid_t clock_id, \
416				    struct timespec *tp); }
417233	AUE_NULL	MNOPROTO { int clock_settime(clockid_t clock_id, \
418				    const struct timespec *tp); }
419234	AUE_NULL	MNOPROTO { int clock_getres(clockid_t clock_id, \
420				    struct timespec *tp); }
421235	AUE_NULL	UNIMPL	timer_create
422236	AUE_NULL	UNIMPL	timer_delete
423237	AUE_NULL	UNIMPL	timer_settime
424238	AUE_NULL	UNIMPL	timer_gettime
425239	AUE_NULL	UNIMPL	timer_getoverrun
426240	AUE_NULL	MSTD	{ int freebsd32_nanosleep( \
427				    const struct timespec *rqtp, \
428				    struct timespec *rmtp); }
429241	AUE_NULL	UNIMPL	nosys
430242	AUE_NULL	UNIMPL	nosys
431243	AUE_NULL	UNIMPL	nosys
432244	AUE_NULL	UNIMPL	nosys
433245	AUE_NULL	UNIMPL	nosys
434246	AUE_NULL	UNIMPL	nosys
435247	AUE_NULL	UNIMPL	nosys
436248	AUE_NULL	UNIMPL	ntp_gettime
437249	AUE_NULL	UNIMPL	nosys
438; syscall numbers initially used in OpenBSD
439250	AUE_NULL	MNOPROTO { int minherit(void *addr, size_t len, \
440				    int inherit); }
441251	AUE_NULL	MNOPROTO { int rfork(int flags); }
442252	AUE_NULL	MNOPROTO { int openbsd_poll(struct pollfd *fds, \
443				    u_int nfds, int timeout); }
444253	AUE_NULL	MNOPROTO { int issetugid(void); }
445254	AUE_NULL	NOPROTO	{ int lchown(char *path, int uid, int gid); }
446255	AUE_NULL	UNIMPL	nosys
447256	AUE_NULL	UNIMPL	nosys
448257	AUE_NULL	UNIMPL	nosys
449258	AUE_NULL	UNIMPL	nosys
450259	AUE_NULL	UNIMPL	nosys
451260	AUE_NULL	UNIMPL	nosys
452261	AUE_NULL	UNIMPL	nosys
453262	AUE_NULL	UNIMPL	nosys
454263	AUE_NULL	UNIMPL	nosys
455264	AUE_NULL	UNIMPL	nosys
456265	AUE_NULL	UNIMPL	nosys
457266	AUE_NULL	UNIMPL	nosys
458267	AUE_NULL	UNIMPL	nosys
459268	AUE_NULL	UNIMPL	nosys
460269	AUE_NULL	UNIMPL	nosys
461270	AUE_NULL	UNIMPL	nosys
462271	AUE_NULL	UNIMPL	nosys
463272	AUE_NULL	NOPROTO	{ int getdents(int fd, char *buf, \
464				    size_t count); }
465273	AUE_NULL	UNIMPL	nosys
466274	AUE_NULL	NOPROTO	{ int lchmod(char *path, mode_t mode); }
467275	AUE_NULL	NOPROTO { int lchown(char *path, uid_t uid, \
468				    gid_t gid); } netbsd_lchown \
469				    lchown_args int
470276	AUE_NULL	NOPROTO	{ int lutimes(char *path, \
471				    struct timeval *tptr); }
472277	AUE_NULL	MNOPROTO { int msync(void *addr, size_t len, \
473				    int flags); } netbsd_msync msync_args int
474278	AUE_NULL	NOPROTO	{ int nstat(char *path, struct nstat *ub); }
475279	AUE_NULL	MNOPROTO { int nfstat(int fd, struct nstat *sb); }
476280	AUE_NULL	NOPROTO	{ int nlstat(char *path, struct nstat *ub); }
477281	AUE_NULL	UNIMPL	nosys
478282	AUE_NULL	UNIMPL	nosys
479283	AUE_NULL	UNIMPL	nosys
480284	AUE_NULL	UNIMPL	nosys
481285	AUE_NULL	UNIMPL	nosys
482286	AUE_NULL	UNIMPL	nosys
483287	AUE_NULL	UNIMPL	nosys
484288	AUE_NULL	UNIMPL	nosys
485289	AUE_NULL	UNIMPL	nosys
486290	AUE_NULL	UNIMPL	nosys
487291	AUE_NULL	UNIMPL	nosys
488292	AUE_NULL	UNIMPL	nosys
489293	AUE_NULL	UNIMPL	nosys
490294	AUE_NULL	UNIMPL	nosys
491295	AUE_NULL	UNIMPL	nosys
492296	AUE_NULL	UNIMPL	nosys
493; XXX 297 is 300 in NetBSD 
494297	AUE_NULL	COMPAT4	{ int freebsd32_fhstatfs( \
495				    const struct fhandle *u_fhp, \
496				    struct statfs32 *buf); }
497298	AUE_NULL	NOPROTO	{ int fhopen(const struct fhandle *u_fhp, \
498			 	    int flags); }
499299	AUE_NULL	NOPROTO	{ int fhstat(const struct fhandle *u_fhp, \
500				    struct stat *sb); }
501; syscall numbers for FreeBSD
502300	AUE_NULL	MNOPROTO { int modnext(int modid); }
503301	AUE_NULL	MSTD	{ int freebsd32_modstat(int modid, \
504				    struct module_stat32* stat); }
505302	AUE_NULL	MNOPROTO { int modfnext(int modid); }
506303	AUE_NULL	MNOPROTO { int modfind(const char *name); }
507304	AUE_NULL	MNOPROTO { int kldload(const char *file); }
508305	AUE_NULL	MNOPROTO { int kldunload(int fileid); }
509306	AUE_NULL	MNOPROTO { int kldfind(const char *file); }
510307	AUE_NULL	MNOPROTO { int kldnext(int fileid); }
511308	AUE_NULL	MNOPROTO { int kldstat(int fileid, \
512				    struct kld_file_stat* stat); }
513309	AUE_NULL	MNOPROTO { int kldfirstmod(int fileid); }
514310	AUE_NULL	MNOPROTO { int getsid(pid_t pid); }
515311	AUE_NULL	MNOPROTO { int setresuid(uid_t ruid, uid_t euid, \
516				    uid_t suid); }
517312	AUE_NULL	MNOPROTO { int setresgid(gid_t rgid, gid_t egid, \
518				    gid_t sgid); }
519313	AUE_NULL	OBSOL	signanosleep
520314	AUE_NULL	UNIMPL	aio_return
521315	AUE_NULL	UNIMPL	aio_suspend
522316	AUE_NULL	UNIMPL	aio_cancel
523317	AUE_NULL	UNIMPL	aio_error
524318	AUE_NULL	UNIMPL	aio_read
525319	AUE_NULL	UNIMPL	aio_write
526320	AUE_NULL	UNIMPL	lio_listio
527321	AUE_NULL	MNOPROTO { int yield(void); }
528322	AUE_NULL	OBSOL	thr_sleep
529323	AUE_NULL	OBSOL	thr_wakeup
530324	AUE_NULL	MNOPROTO { int mlockall(int how); }
531325	AUE_NULL	MNOPROTO { int munlockall(void); }
532326	AUE_NULL	NOPROTO	{ int __getcwd(u_char *buf, u_int buflen); }
533
534327	AUE_NULL	MNOPROTO { int sched_setparam (pid_t pid, \
535				    const struct sched_param *param); }
536328	AUE_NULL	MNOPROTO { int sched_getparam (pid_t pid, \
537				    struct sched_param *param); }
538
539329	AUE_NULL	MNOPROTO { int sched_setscheduler (pid_t pid, \
540				    int policy, \
541				    const struct sched_param *param); }
542330	AUE_NULL	MNOPROTO { int sched_getscheduler (pid_t pid); }
543
544331	AUE_NULL	MNOPROTO { int sched_yield (void); }
545332	AUE_NULL	MNOPROTO { int sched_get_priority_max (int policy); }
546333	AUE_NULL	MNOPROTO { int sched_get_priority_min (int policy); }
547334	AUE_NULL	MNOPROTO { int sched_rr_get_interval (pid_t pid, \
548				    struct timespec *interval); }
549335	AUE_NULL	MNOPROTO { int utrace(const void *addr, size_t len); }
550; XXX note - bigendian is different
551336	AUE_NULL	MCOMPAT4 { int freebsd32_sendfile(int fd, int s, \
552				    u_int32_t offsetlo, u_int32_t offsethi, \
553				    size_t nbytes, struct sf_hdtr *hdtr, \
554				    off_t *sbytes, int flags); }
555337	AUE_NULL	NOPROTO	{ int kldsym(int fileid, int cmd, \
556				    void *data); }
557338	AUE_NULL	MNOPROTO { int jail(struct jail *jail); }
558339	AUE_NULL	UNIMPL	pioctl
559340	AUE_NULL	MNOPROTO { int sigprocmask(int how, \
560				    const sigset_t *set, sigset_t *oset); }
561341	AUE_NULL	MNOPROTO { int sigsuspend(const sigset_t *sigmask); }
562342	AUE_NULL	MCOMPAT4 { int freebsd32_sigaction(int sig, \
563				    struct sigaction32 *act, \
564				    struct sigaction32 *oact); }
565343	AUE_NULL	MNOPROTO { int sigpending(sigset_t *set); }
566344	AUE_NULL	MCOMPAT4 { int freebsd32_sigreturn( \
567		    const struct freebsd4_freebsd32_ucontext *sigcntxp); }
568; XXX implement
569345	AUE_NULL	UNIMPL	sigtimedwait
570; XXX implement
571346	AUE_NULL	UNIMPL	sigwaitinfo
572347	AUE_NULL	MNOPROTO { int __acl_get_file(const char *path, \
573				    acl_type_t type, struct acl *aclp); }
574348	AUE_NULL	MNOPROTO { int __acl_set_file(const char *path, \
575				    acl_type_t type, struct acl *aclp); }
576349	AUE_NULL	MNOPROTO { int __acl_get_fd(int filedes, \
577				    acl_type_t type, struct acl *aclp); }
578350	AUE_NULL	MNOPROTO { int __acl_set_fd(int filedes, \
579				    acl_type_t type, struct acl *aclp); }
580351	AUE_NULL	MNOPROTO { int __acl_delete_file(const char *path, \
581				    acl_type_t type); }
582352	AUE_NULL	MNOPROTO { int __acl_delete_fd(int filedes, \
583				    acl_type_t type); }
584353	AUE_NULL	MNOPROTO { int __acl_aclcheck_file(const char *path, \
585				    acl_type_t type, struct acl *aclp); }
586354	AUE_NULL	MNOPROTO { int __acl_aclcheck_fd(int filedes, \
587				    acl_type_t type, struct acl *aclp); }
588355	AUE_NULL	NOPROTO	{ int extattrctl(const char *path, int cmd, \
589				    const char *filename, int attrnamespace, \
590				    const char *attrname); }
591356	AUE_NULL	NOPROTO	{ int extattr_set_file(const char *path, \
592				    int attrnamespace, const char *attrname, \
593				    void *data, size_t nbytes); }
594357	AUE_NULL	NOPROTO	{ ssize_t extattr_get_file(const char *path, \
595				    int attrnamespace, const char *attrname, \
596				    void *data, size_t nbytes); }
597358	AUE_NULL	NOPROTO	{ int extattr_delete_file(const char *path, \
598				    int attrnamespace, \
599				    const char *attrname); }
600359	AUE_NULL	UNIMPL	aio_waitcomplete
601360	AUE_NULL	MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \
602				    uid_t *suid); }
603361	AUE_NULL	MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \
604				    gid_t *sgid); }
605362	AUE_NULL	MNOPROTO { int kqueue(void); }
606363	AUE_NULL	MSTD { int freebsd32_kevent(int fd, \
607				    const struct kevent32 *changelist, \
608				    int nchanges, \
609				    struct kevent32 *eventlist, int nevents, \
610				    const struct timespec32 *timeout); }
611364	AUE_NULL	UNIMPL	__cap_get_proc
612365	AUE_NULL	UNIMPL	__cap_set_proc
613366	AUE_NULL	UNIMPL	__cap_get_fd
614367	AUE_NULL	UNIMPL	__cap_get_file
615368	AUE_NULL	UNIMPL	__cap_set_fd
616369	AUE_NULL	UNIMPL	__cap_set_file
617370	AUE_NULL	UNIMPL	lkmressys
618371	AUE_NULL	NOPROTO	{ int extattr_set_fd(int fd, \
619				    int attrnamespace, const char *attrname, \
620				    void *data, size_t nbytes); }
621372	AUE_NULL	NOPROTO	{ ssize_t extattr_get_fd(int fd, \
622				    int attrnamespace, const char *attrname, \
623				    void *data, size_t nbytes); }
624373	AUE_NULL	NOPROTO	{ int extattr_delete_fd(int fd, \
625				    int attrnamespace, \
626				    const char *attrname); }
627374	AUE_NULL	MNOPROTO { int __setugid(int flag); }
628375	AUE_NULL	UNIMPL	nfsclnt
629376	AUE_NULL	NOPROTO	{ int eaccess(char *path, int flags); }
630377	AUE_NULL	UNIMPL	afs_syscall
631378	AUE_NULL	MNOPROTO { int nmount(struct iovec *iovp, \
632				    unsigned int iovcnt, int flags); }
633379	AUE_NULL	NOPROTO	{ int kse_exit(void); }
634380	AUE_NULL	NOPROTO	{ int kse_wakeup(struct kse_mailbox *mbx); }
635381	AUE_NULL	NOPROTO	{ int kse_create(struct kse_mailbox *mbx, \
636				    int newgroup); }
637382	AUE_NULL	NOPROTO	{ int kse_thr_interrupt( \
638				    struct kse_thr_mailbox *tmbx); }
639383	AUE_NULL	NOPROTO	{ int kse_release(void); }
640384	AUE_NULL	UNIMPL	__mac_get_proc
641385	AUE_NULL	UNIMPL	__mac_set_proc
642386	AUE_NULL	UNIMPL	__mac_get_fd
643387	AUE_NULL	UNIMPL	__mac_get_file
644388	AUE_NULL	UNIMPL	__mac_set_fd
645389	AUE_NULL	UNIMPL	__mac_set_file
646390	AUE_NULL	NOPROTO	{ int kenv(int what, const char *name, \
647				    char *value, int len); }
648391	AUE_NULL	NOPROTO	{ int lchflags(const char *path, int flags); }
649392	AUE_NULL	MNOPROTO { int uuidgen(struct uuid *store, \
650				    int count); }
651393	AUE_NULL	MSTD	{ int freebsd32_sendfile(int fd, int s, \
652				    u_int32_t offsetlo, u_int32_t offsethi, \
653				    size_t nbytes, struct sf_hdtr *hdtr, \
654				    off_t *sbytes, int flags); }
655394	AUE_NULL	UNIMPL	mac_syscall
656395	AUE_NULL	NOPROTO	{ int getfsstat(struct statfs *buf, \
657				    long bufsize, int flags); }
658396	AUE_NULL	NOPROTO	{ int statfs(char *path, \
659				    struct statfs *buf); }
660397	AUE_NULL	NOPROTO	{ int fstatfs(int fd, struct statfs *buf); }
661398	AUE_NULL	NOPROTO	{ int fhstatfs(const struct fhandle *u_fhp, \
662				    struct statfs *buf); }
663399	AUE_NULL	UNIMPL	nosys
664; XXX implement these?
665400	AUE_NULL	UNIMPL	ksem_close
666401	AUE_NULL	UNIMPL	ksem_post
667402	AUE_NULL	UNIMPL	ksem_wait
668403	AUE_NULL	UNIMPL	ksem_trywait
669404	AUE_NULL	UNIMPL	ksem_init
670405	AUE_NULL	UNIMPL	ksem_open
671406	AUE_NULL	UNIMPL	ksem_unlink
672407	AUE_NULL	UNIMPL	ksem_getvalue
673408	AUE_NULL	UNIMPL	ksem_destroy
674409	AUE_NULL	UNIMPL	__mac_get_pid
675410	AUE_NULL	UNIMPL	__mac_get_link
676411	AUE_NULL	UNIMPL	__mac_set_link
677412	AUE_NULL	UNIMPL	extattr_set_link
678413	AUE_NULL	UNIMPL	extattr_get_link
679414	AUE_NULL	UNIMPL	extattr_delete_link
680415	AUE_NULL	UNIMPL	__mac_execve
681416	AUE_NULL	MSTD { int freebsd32_sigaction(int sig, \
682				    struct sigaction32 *act, \
683				    struct sigaction32 *oact); }
684417	AUE_NULL	MSTD { int freebsd32_sigreturn( \
685		    const struct freebsd32_ucontext *sigcntxp); }
686418	AUE_NULL	UNIMPL	__xstat
687419	AUE_NULL	UNIMPL	__xfstat
688420	AUE_NULL	UNIMPL	__xlstat
689; XXX implement
690421	AUE_NULL	UNIMPL	getcontext
691; XXX implement
692422	AUE_NULL	UNIMPL	setcontext
693; XXX implement
694423	AUE_NULL	UNIMPL	swapcontext
695424	AUE_NULL	UNIMPL	swapoff
696425	AUE_NULL	UNIMPL	__acl_get_link
697426	AUE_NULL	UNIMPL	__acl_set_link
698427	AUE_NULL	UNIMPL	__acl_delete_link
699428	AUE_NULL	UNIMPL	__acl_aclcheck_link
700; XXX implement
701429	AUE_NULL	UNIMPL	sigwait
702430	AUE_NULL	MNOPROTO { int thr_create(ucontext_t *ctx, long *id, \
703				    int flag s); }
704431	AUE_NULL	MNOPROTO { void thr_exit(long *state); }
705432	AUE_NULL	MNOPROTO { int thr_self(long *id); }
706433	AUE_NULL	MNOPROTO { int thr_kill(long id, int sig); }
707434	AUE_NULL	MNOPROTO { int _umtx_lock(struct umtx *umtx); }
708435	AUE_NULL	MNOPROTO { int _umtx_unlock(struct umtx *umtx); }
709436	AUE_NULL	MNOPROTO { int jail_attach(int jid); }
710437	AUE_NULL	UNIMPL	extattr_list_fd
711438	AUE_NULL	UNIMPL	extattr_list_file
712439	AUE_NULL	UNIMPL	extattr_list_link
713440	AUE_NULL	UNIMPL	kse_switchin
714441	AUE_NULL	UNIMPL	ksem_timedwait
715442	AUE_NULL	MNOPROTO { int thr_suspend( \
716				    const struct timespec *timeout); }
717443	AUE_NULL	MNOPROTO { int thr_wake(long id); }
718444	AUE_NULL	MNOPROTO { int kldunloadf(int fileid, int flags); }
719445	AUE_NULL	UNIMPL	audit
720446	AUE_NULL	UNIMPL	auditon
721447	AUE_NULL	UNIMPL	getauid
722448	AUE_NULL	UNIMPL	setauid
723449	AUE_NULL	UNIMPL	getaudit
724450	AUE_NULL	UNIMPL	setaudit
725451	AUE_NULL	UNIMPL	getaudit_addr
726452	AUE_NULL	UNIMPL	setaudit_addr
727453	AUE_NULL	UNIMPL	auditctl
728454	AUE_NULL	UNIMPL	_umtx_op
729