xref: /netbsd-src/sys/compat/freebsd/syscalls.master (revision bdc22b2e01993381dcefeff2bc9b56ca75a4235c)
1	$NetBSD: syscalls.master,v 1.72 2018/01/06 16:41:23 kamil Exp $
2
3;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
4
5; NetBSD COMPAT_FREEBSD system call name/number "master" file.
6; (See syscalls.conf to see what it is processed into.)
7;
8; Fields: number type [type-dependent ...]
9;	number	system call number, must be in order
10;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11;		the compatibility options defined in syscalls.conf.
12;
13; types:
14;	STD	always included
15;	OBSOL	obsolete, not included in system
16;	UNIMPL	unimplemented, not included in system
17;	NODEF	included, but don't define the syscall number
18;	NOARGS	included, but don't define the syscall args structure
19;
20; The compat options are defined in the syscalls.conf file, and the
21; compat option name is prefixed to the syscall name.  Other than
22; that, they're like NODEF (for 'compat' options), or STD (for
23; 'libcompat' options).
24;
25; The type-dependent arguments are as follows:
26; For STD, NODEF, NOARGS, and compat syscalls:
27;	{ pseudo-proto } [alias]
28; For other syscalls:
29;	[comment]
30;
31; #ifdef's, etc. may be included, and are copied to the output files.
32; #include's are copied to the syscall names and switch definition files only.
33
34#if defined(_KERNEL_OPT)
35#include "opt_ktrace.h"
36#include "opt_ntp.h"
37#include "opt_sysv.h"
38#include "opt_compat_43.h"
39#endif
40
41#include <sys/param.h>
42#include <sys/systm.h>
43#include <sys/signal.h>
44#include <sys/mount.h>
45#include <sys/syscallargs.h>
46
47#include <compat/sys/signal.h>
48#include <compat/sys/time.h>
49
50#include <compat/freebsd/freebsd_syscallargs.h>
51
52#include <compat/freebsd/freebsd_machdep.h>
53
54%%
55
56; Reserved/unimplemented system calls in the range 0-150 inclusive
57; are reserved for use in future Berkeley releases.
58; Additional system calls implemented in vendor and other
59; redistributions should be placed in the reserved range at the end
60; of the current calls.
61
620	NOARGS		{ int|sys||nosys(void); } syscall
631	NOARGS		{ int|sys||exit(int rval); }
642	NOARGS		{ int|sys||fork(void); }
653	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
664	NOARGS		{ int|sys||write(int fd, char *buf, u_int nbyte); }
675	NOARGS		{ int|sys||open(const char *path, int flags, int mode); }
686	NOARGS		{ int|sys||close(int fd); }
697	NOARGS		{ int|compat_50_sys||wait4(int pid, int *status, \
70			    int options, struct rusage50 *rusage); }
718	NOARGS		{ int|compat_43_sys||creat(const char *path, \
72			    int mode); } ocreat
739	NOARGS		{ int|sys||link(const char *path, const char *link); }
7410	NOARGS		{ int|sys||unlink(const char *path); }
7511	OBSOL		execv
7612	NOARGS		{ int|sys||chdir(const char *path); }
7713	NOARGS		{ int|sys||fchdir(int fd); }
7814	NOARGS		{ int|compat_50_sys||mknod(const char *path, int mode, int dev); }
7915	NOARGS		{ int|sys||chmod(const char *path, int mode); }
8016	NOARGS		{ int|sys||chown(const char *path, int uid, int gid); }
8117	NOARGS		{ int|sys||obreak(char *nsize); } break
8218	NOARGS		{ int|compat_20_sys||getfsstat(struct statfs12 *buf, \
83			    long bufsize, int flags); }
8419	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
85			    int whence); } olseek
8620	NOARGS		{ pid_t|sys||getpid_with_ppid(void); }
8721	STD		{ int|freebsd_sys||mount(int type, const char *path, \
88			    int flags, void *data); }
8922	NOARGS		{ int|sys||unmount(const char *path, int flags); }
9023	NOARGS		{ int|sys||setuid(uid_t uid); }
9124	NOARGS		{ uid_t|sys||getuid_with_euid(void); }
9225	NOARGS		{ uid_t|sys||geteuid(void); }
9326	STD		{ int|freebsd_sys||ptrace(int req, pid_t pid, \
94			    void *addr, int data); }
9527	NOARGS		{ int|sys||recvmsg(int s, struct msghdr *msg, \
96			    int flags); }
9728	NOARGS		{ int|sys||sendmsg(int s, void *msg, int flags); }
9829	NOARGS		{ int|sys||recvfrom(int s, void *buf, size_t len, \
99			    int flags, void *from, int *fromlenaddr); }
10030	NOARGS		{ int|sys||accept(int s, void *name, int *anamelen); }
10131	NOARGS		{ int|sys||getpeername(int fdes, void *asa, \
102			    int *alen); }
10332	NOARGS		{ int|sys||getsockname(int fdes, void *asa, \
104			    int *alen); }
10533	NOARGS		{ int|sys||access(const char *path, int flags); }
10634	NOARGS		{ int|sys||chflags(const char *path, int flags); }
10735	NOARGS		{ int|sys||fchflags(int fd, int flags); }
10836	NOARGS		{ int|sys||sync(void); }
10937	NOARGS		{ int|sys||kill(int pid, int signum); }
11038	NOARGS		{ int|compat_43_sys||stat(const char *path, \
111			    struct stat43 *ub); } stat43
11239	NOARGS		{ pid_t|sys||getppid(void); }
11340	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
114			    struct stat43 *ub); } lstat43
11541	NOARGS		{ int|sys||dup(int fd); }
11642	NOARGS		{ int|sys||pipe(void); }
11743	NOARGS		{ gid_t|sys||getegid(void); }
11844	NOARGS		{ int|sys||profil(void *samples, u_int size, \
119			    u_int offset, u_int scale); }
120#ifdef KTRACE
12145	NOARGS		{ int|sys||ktrace(char *fname, int ops, int facs, \
122			    int pid); }
123#else
12445	EXCL		ktrace
125#endif
12646	NOARGS		{ int|compat_13_sys||sigaction(int signum, \
127			    const struct sigaction13 *nsa, \
128			    struct sigaction13 *osa); }
12947	NOARGS		{ gid_t|sys||getgid_with_egid(void); }
13048	NOARGS		{ int|compat_13_sys||sigprocmask(int how, \
131			    int mask); }
13249	NOARGS		{ int|sys||__getlogin(char *namebuf, u_int namelen); }
13350	NOARGS		{ int|sys||__setlogin(char *namebuf); }
13451	NOARGS		{ int|sys||acct(char *path); }
13552	NOARGS		{ int|compat_13_sys||sigpending(void); }
13653	NOARGS		{ int|compat_13_sys||sigaltstack( \
137			    const struct sigaltstack13 *nss, \
138			    struct sigaltstack13 *oss); }
13954	STD		{ int|freebsd_sys||ioctl(int fd, u_long com, \
140			    void *data); }
14155	NOARGS		{ int|sys||reboot(int opt); } oreboot
14256	NOARGS		{ int|sys||revoke(const char *path); }
14357	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
14458	NOARGS		{ int|sys||readlink(const char *path, \
145			    char *buf, int count); }
14659	NOARGS		{ int|sys||execve(const char *path, \
147			    char **argp, char **envp); }
14860	NOARGS		{ int|sys||umask(int newmask); }
14961	NOARGS		{ int|sys||chroot(const char *path); }
15062	NOARGS		{ int|compat_43_sys||fstat(int fd, struct stat43 *sb); } \
151			    fstat43
15263	NOARGS		{ int|compat_43_sys||getkerninfo(int op, char *where, \
153			    int *size, int arg); } ogetkerninfo
15464	NOARGS		{ int|compat_43_sys||getpagesize(void); } ogetpagesize
15565	STD		{ int|freebsd_sys||msync(void *addr, size_t len, \
156			    int flags); }
15766	NOARGS		{ int|sys||vfork(void); }
15867	OBSOL		vread
15968	OBSOL		vwrite
16069	OBSOL		sbrk
16170	OBSOL		sstk
16271	NOARGS		{ int|compat_43_sys||mmap(void *addr, size_t len, \
163			    int prot, int flags, int fd, long pos); } ommap
16472	NOARGS		{ int|sys||ovadvise(int anom); } vadvise
16573	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
16674	NOARGS		{ int|sys||mprotect(void *addr, size_t len, \
167			    int prot); }
16875	NOARGS		{ int|sys||madvise(void *addr, size_t len, \
169			    int behav); }
17076	OBSOL		vhangup
17177	OBSOL		vlimit
17278	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
17379	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
17480	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
17581	NOARGS		{ int|sys||getpgrp(void); }
17682	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
17783	NOARGS		{ int|compat_50_sys||setitimer(u_int which, \
178			    struct itimerval50 *itv, struct itimerval50 *oitv); }
17984	NOARGS		{ int|compat_43_sys||wait(void); } owait
18085	NOARGS		{ int|compat_12_sys||swapon(char *name); }
18186	NOARGS		{ int|compat_50_sys||getitimer(u_int which, \
182			    struct itimerval50 *itv); }
18387	NOARGS		{ int|compat_43_sys||gethostname(char *hostname, \
184			    u_int len); } ogethostname
18588	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
186			    u_int len); } osethostname
18789	NOARGS		{ int|compat_43_sys||getdtablesize(void); } \
188			    ogetdtablesize
18990	NOARGS		{ int|sys||dup2(int from, int to); }
19091	UNIMPL		getdopt
19192	NOARGS		{ int|sys||fcntl(int fd, int cmd, void *arg); }
19293	NOARGS		{ int|compat_50_sys||select(u_int nd, fd_set *in, \
193			    fd_set *ou, fd_set *ex, struct timeval50 *tv); }
19494	UNIMPL		setdopt
19595	NOARGS		{ int|sys||fsync(int fd); }
19696	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
19797	NOARGS		{ int|compat_30_sys||socket(int domain, int type, int protocol); }
19898	NOARGS		{ int|sys||connect(int s, void *name, int namelen); }
19999	NOARGS		{ int|compat_43_sys||accept(int s, void *name, \
200			    int *anamelen); } oaccept
201100	NOARGS		{ int|sys||getpriority(int which, int who); }
202101	NOARGS		{ int|compat_43_sys||send(int s, void *buf, int len, \
203			    int flags); } osend
204102	NOARGS		{ int|compat_43_sys||recv(int s, void *buf, int len, \
205			    int flags); } orecv
206103	STD		{ int|freebsd_sys||sigreturn( \
207			    struct freebsd_sigcontext *scp); }
208104	NOARGS		{ int|sys||bind(int s, void *name, int namelen); }
209105	NOARGS		{ int|sys||setsockopt(int s, int level, int name, \
210			    void *val, int valsize); }
211106	NOARGS		{ int|sys||listen(int s, int backlog); }
212107	OBSOL		vtimes
213108	NOARGS		{ int|compat_43_sys||sigvec(int signum, \
214			    struct sigvec *nsv, struct sigvec *osv); } osigvec
215109	NOARGS		{ int|compat_43_sys||sigblock(int mask); } osigblock
216110	NOARGS		{ int|compat_43_sys||sigsetmask(int mask); } osigsetmask
217111	NOARGS		{ int|compat_13_sys||sigsuspend(int mask); }
218112	NOARGS		{ int|compat_43_sys||sigstack(struct sigstack *nss, \
219			    struct sigstack *oss); } osigstack
220113	NOARGS		{ int|compat_43_sys||recvmsg(int s, \
221			    struct omsghdr *msg, int flags); } orecvmsg
222114	NOARGS		{ int|compat_43_sys||sendmsg(int s, void *msg, \
223			    int flags); } osendmsg
224#ifdef TRACE
225115	NOARGS		{ int|sys||vtrace(int request, int value); }
226#else
227115	OBSOL		vtrace
228#endif
229116	NOARGS		{ int|compat_50_sys||gettimeofday(struct timeval50 *tp, \
230			    struct timezone *tzp); }
231117	NOARGS		{ int|compat_50_sys||getrusage(int who, \
232			    struct rusage50 *rusage); }
233118	NOARGS		{ int|sys||getsockopt(int s, int level, int name, \
234			    void *val, int *avalsize); }
235119	OBSOL		resuba
236120	NOARGS		{ int|sys||readv(int fd, struct iovec *iovp, \
237			    u_int iovcnt); }
238121	NOARGS		{ int|sys||writev(int fd, struct iovec *iovp, \
239			    u_int iovcnt); }
240122	NOARGS		{ int|compat_50_sys||settimeofday(struct timeval50 *tv, \
241			    struct timezone50 *tzp); }
242123	NOARGS		{ int|sys||fchown(int fd, int uid, int gid); }
243124	NOARGS		{ int|sys||fchmod(int fd, int mode); }
244125	NOARGS		{ int|compat_43_sys||recvfrom(int s, void *buf, \
245			    size_t len, int flags, void *from, \
246			    int *fromlenaddr); } orecvfrom
247126	NOARGS		{ int|sys||setreuid(int ruid, int euid); }
248127	NOARGS		{ int|sys||setregid(int rgid, int egid); }
249128	NOARGS		{ int|sys||rename(const char *from, const char *to); }
250129	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
251			    long length); } otruncate
252130	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); } \
253			    oftruncate
254131	NOARGS		{ int|sys||flock(int fd, int how); }
255132	NOARGS		{ int|sys||mkfifo(const char *path, int mode); }
256133	NOARGS		{ int|sys||sendto(int s, void *buf, size_t len, \
257			    int flags, void *to, int tolen); }
258134	NOARGS		{ int|sys||shutdown(int s, int how); }
259135	NOARGS		{ int|sys||socketpair(int domain, int type, \
260			    int protocol, int *rsv); }
261136	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
262137	NOARGS		{ int|sys||rmdir(const char *path); }
263138	NOARGS		{ int|compat_50_sys||utimes(char *path, \
264			    struct timeval50 *tptr); }
265139	OBSOL		4.2 sigreturn
266140	NOARGS		{ int|compat_50_sys||adjtime(struct timeval50 *delta, \
267			    struct timeval50 *olddelta); }
268141	NOARGS		{ int|compat_43_sys||getpeername(int fdes, void *asa, \
269			    int *alen); } ogetpeername
270142	NOARGS		{ int32_t|compat_43_sys||gethostid(void); } ogethostid
271143	NOARGS		{ int|compat_43_sys||sethostid(int32_t hostid); } \
272			    osethostid
273144	NOARGS		{ int|compat_43_sys||getrlimit(u_int which, \
274			    struct orlimit *rlp); } ogetrlimit
275145	NOARGS		{ int|compat_43_sys||setrlimit(u_int which, \
276			    struct orlimit *rlp); } osetrlimit
277146	NOARGS		{ int|compat_43_sys||killpg(int pgid, int signum); } \
278			    okillpg
279147	NOARGS		{ int|sys||setsid(void); }
280148	NOARGS		{ int|compat_50_sys||quotactl(char *path, int cmd, \
281			    int uid, void *arg); }
282149	NOARGS		{ int|compat_43_sys||quota(void); } oquota
283150	NOARGS		{ int|compat_43_sys||getsockname(int fdec, void *asa, \
284			    int *alen); } ogetsockname
285
286; Syscalls 151-180 inclusive are reserved for vendor-specific
287; system calls.  (This includes various calls added for compatibity
288; with other Unix variants.)
289; Some of these calls are now supported by BSD...
290151	UNIMPL		sem_lock
291152	UNIMPL		sem_wakeup
292153	UNIMPL		asyncdaemon
293154	UNIMPL
294155	UNIMPL		nfssvc
295156	NOARGS		{ int|compat_43_sys||getdirentries(int fd, char *buf, \
296			    u_int count, long *basep); } ogetdirentries
297157	NOARGS		{ int|compat_20_sys||statfs(const char *path, \
298			    struct statfs12 *buf); }
299158	NOARGS		{ int|compat_20_sys||fstatfs(int fd, \
300			    struct statfs12 *buf); }
301159	UNIMPL
302160	UNIMPL
303161	NOARGS		{ int|compat_30_sys||getfh(const char *fname, \
304			    struct compat_30_fhandle *fhp); }
305162	NOARGS		{ int|compat_09_sys||getdomainname(char *domainname, \
306			    int len); }
307163	NOARGS		{ int|compat_09_sys||setdomainname(char *domainname, \
308			    int len); }
309164	NOARGS		{ int|compat_09_sys||uname(struct outsname *name); }
310165	NOARGS		{ int|sys||sysarch(int op, char *parms); }
311166	STD		{ int|freebsd_sys||rtprio(int function, pid_t pid, \
312			    struct freebsd_rtprio *rtp); }
313167	UNIMPL
314168	UNIMPL
315; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
316#if defined(SYSVSEM) && !defined(_LP64)
317169	STD		{ int|freebsd_sys||semsys(int which, int a2, int a3, \
318			    int a4, int a5); }
319#else
320169	UNIMPL		1.0 semsys
321#endif
322; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
323#if defined(SYSVMSG) && !defined(_LP64)
324170	STD		{ int|freebsd_sys||msgsys(int which, int a2, int a3, \
325			    int a4, int a5, int a6); }
326#else
327170	UNIMPL		1.0 msgsys
328#endif
329; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
330#if defined(SYSVSHM) && !defined(_LP64)
331171	STD		{ int|freebsd_sys||shmsys(int which, int a2, int a3, \
332			    int a4); }
333#else
334171	UNIMPL		1.0 shmsys
335#endif
336172	UNIMPL
337173	NOARGS		{ ssize_t|sys||pread(int fd, void *buf, \
338			    size_t nbyte, int pad, off_t offset); }
339174	NOARGS		{ ssize_t|sys||pwrite(int fd, const void *buf, \
340			    size_t nbyte, int pad, off_t offset); }
341175	UNIMPL
342#ifdef NTP
343176	STD		{ int|freebsd||ntp_adjtime(struct freebsd_timex *tp); }
344#else
345176     EXCL            ntp_adjtime
346#endif
347177	UNIMPL		sfork
348178	UNIMPL		getdescriptor
349179	UNIMPL		setdescriptor
350180	UNIMPL
351
352; Syscalls 180-199 are used by/reserved for BSD
353181	NOARGS		{ int|sys||setgid(gid_t gid); }
354182	NOARGS		{ int|sys||setegid(gid_t egid); }
355183	NOARGS		{ int|sys||seteuid(uid_t euid); }
356184	UNIMPL
357185	UNIMPL
358186	UNIMPL
359187	UNIMPL
360188	NOARGS		{ int|compat_12_sys||stat(const char *path, \
361			    struct stat12 *ub); }
362189	NOARGS		{ int|compat_12_sys||fstat(int fd, \
363			    struct stat12 *sb); }
364190	NOARGS		{ int|compat_12_sys||lstat(const char *path, \
365			    struct stat12 *ub); }
366191	NOARGS		{ int|sys||pathconf(const char *path, int name); }
367192	NOARGS		{ int|sys||fpathconf(int fd, int name); }
368193	UNIMPL
369194	NOARGS		{ int|sys||getrlimit(u_int which, struct rlimit *rlp); }
370195	NOARGS		{ int|sys||setrlimit(u_int which, struct rlimit *rlp); }
371196	NOARGS		{ int|compat_12_sys||getdirentries(int fd, char *buf, \
372			    u_int count, long *basep); }
373197	STD		{ void *|freebsd_sys||mmap(void *addr, size_t len, \
374			    int prot, int flags, int fd, long pad, off_t pos); }
375198	NOARGS		{ int|sys||nosys(void); } __syscall
376199	NOARGS		{ off_t|sys||lseek(int fd, int pad, off_t offset, \
377			    int whence); }
378200	NOARGS		{ int|sys||truncate(const char *path, int pad, \
379			    off_t length); }
380201	NOARGS		{ int|sys||ftruncate(int fd, int pad, off_t length); }
381202	STD		{ int|freebsd_sys||sysctl(int *name, u_int namelen, \
382			    void *old, size_t *oldlenp, void *new, \
383			    size_t newlen); }
384203	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
385204	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
386#ifdef FREEBSD_BASED_ON_44LITE_R2
387205	STD		{ int|freebsd_sys||undelete(char *path); }
388#else
389205	UNIMPL		undelete
390#endif
391206	NOARGS		{ int|compat_50_sys||futimes(int fd, \
392			    const struct timeval50 *tptr); }
393207	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
394#if 0
395208	NOARGS		{ int|sys||reboot(int opt, char *bootstr); }
396#else
397208	UNIMPL		newreboot
398#endif
399209	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
400			    int timeout); }
401;
402; Syscalls 210-219 are reserved for dynamically loaded syscalls
403;
404210	UNIMPL
405211	UNIMPL
406212	UNIMPL
407213	UNIMPL
408214	UNIMPL
409215	UNIMPL
410216	UNIMPL
411217	UNIMPL
412218	UNIMPL
413219	UNIMPL
414;
415; Syscalls 220-239 are reserved for syscalls imported from NetBSD
416;
417#ifdef SYSVSEM
418220	NOARGS		{ int|compat_14_sys||__semctl(int semid, int semnum, \
419			    int cmd, union __semun *arg); }
420221	NOARGS		{ int|sys||semget(key_t key, int nsems, int semflg); }
421222	NOARGS		{ int|sys||semop(int semid, struct sembuf *sops, \
422			    u_int nsops); }
423223	NOARGS		{ int|sys||semconfig(int flag); }
424#else
425220	UNIMPL		semctl
426221	UNIMPL		semget
427222	UNIMPL		semop
428223	UNIMPL		semconfig
429#endif
430#ifdef SYSVMSG
431224	NOARGS		{ int|compat_14_sys||msgctl(int msqid, int cmd, \
432			    struct msqid14_ds *buf); }
433225	NOARGS		{ int|sys||msgget(key_t key, int msgflg); }
434226	NOARGS		{ int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
435			    int msgflg); }
436227	NOARGS		{ int|sys||msgrcv(int msqid, void *msgp, size_t msgsz, \
437			    long msgtyp, int msgflg); }
438#else
439224	UNIMPL		msgctl
440225	UNIMPL		msgget
441226	UNIMPL		msgsnd
442227	UNIMPL		msgrcv
443#endif
444#ifdef SYSVSHM
445228	NOARGS		{ int|sys||shmat(int shmid, void *shmaddr, int shmflg); }
446229	NOARGS		{ int|compat_14_sys||shmctl(int shmid, int cmd, \
447			    struct shmid_ds14 *buf); }
448230	NOARGS		{ int|sys||shmdt(void *shmaddr); }
449231	NOARGS		{ int|sys||shmget(key_t key, int size, int shmflg); }
450#else
451228	UNIMPL		shmat
452229	UNIMPL		shmctl
453230	UNIMPL		shmdt
454231	UNIMPL		shmget
455#endif
456;
457; XXXX
458232	NOARGS		{ int|compat_50_sys||clock_gettime(clockid_t clock_id, \
459			    struct timespec50 *tp); }
460233	NOARGS		{ int|compat_50_sys||clock_settime(clockid_t clock_id, \
461			    const struct timespec50 *tp); }
462234	NOARGS		{ int|compat_50_sys||clock_getres(clockid_t clock_id, \
463			    struct timespec50 *tp); }
464235	UNIMPL		timer_create
465236	UNIMPL		timer_delete
466237	UNIMPL		timer_settime
467238	UNIMPL		timer_gettime
468239	UNIMPL		timer_getoverrun
469240	NOARGS		{ int|compat_50_sys||nanosleep( \
470			    const struct timespec50 *rqtp, \
471			    struct timespec50 *rmtp); }
472241	UNIMPL
473242	UNIMPL
474243	UNIMPL
475244	UNIMPL
476245	UNIMPL
477246	UNIMPL
478247	UNIMPL
479248	UNIMPL
480249	UNIMPL
481; syscall numbers initially used in OpenBSD
482250	NOARGS		{ int|sys||minherit(void *addr, size_t len, \
483			    int inherit); }
484251	STD		{ int|freebsd_sys||rfork(int flags); }
485252	UNIMPL		openbsd_poll
486253	NOARGS		{ int|sys||issetugid(void); }
487254	NOARGS		{ int|sys||lchown(const char *path, int uid, int gid); }
488255	UNIMPL
489256	UNIMPL
490257	UNIMPL
491258	UNIMPL
492259	UNIMPL
493260	UNIMPL
494261	UNIMPL
495262	UNIMPL
496263	UNIMPL
497264	UNIMPL
498265	UNIMPL
499266	UNIMPL
500267	UNIMPL
501268	UNIMPL
502269	UNIMPL
503270	UNIMPL
504271	UNIMPL
505272	NOARGS		{ int|compat_30_sys||getdents(int fd, char *buf, size_t count); }
506273	UNIMPL
507274	NOARGS		{ int|sys||lchmod(const char *path, mode_t mode); }
508275	NOARGS		{ int|sys||lchown(const char *path, uid_t uid, \
509			    gid_t gid); } netbsd_lchown
510276	NOARGS		{ int|compat_50_sys||lutimes(const char *path, \
511			    const struct timeval50 *tptr); }
512277	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
513278	NOARGS		{ int|compat_30_sys|13|stat(const char *path, struct stat13 *ub); }
514279	NOARGS		{ int|compat_30_sys|13|fstat(int fd, struct stat13 *sb); }
515280	NOARGS		{ int|compat_30_sys|13|lstat(const char *path, struct stat13 *ub);}
516281	UNIMPL
517282	UNIMPL
518283	UNIMPL
519284	UNIMPL
520285	UNIMPL
521286	UNIMPL
522287	UNIMPL
523288	UNIMPL
524289	UNIMPL
525290	UNIMPL
526291	UNIMPL
527292	UNIMPL
528293	UNIMPL
529294	UNIMPL
530295	UNIMPL
531296	UNIMPL
532297	NOARGS		{ int|compat_20_sys||fhstatfs(const struct	\
533			    compat_30_fhandle *fhp, \
534			    struct statfs12 *buf); }
535298	NOARGS		{ int|compat_30_sys||fhopen(const	\
536			    struct compat_30_fhandle *fhp, int flags); }
537299	NOARGS		{ int|compat_30_sys||fhstat(const 	\
538			    struct cocmpat_30_fhandlez *fhp, 	\
539			    struct stat13 *sb); }
540; syscall numbers for FreeBSD
541300	UNIMPL		modnext
542301	UNIMPL		modstat
543302	UNIMPL		modfnext
544303	UNIMPL		modfind
545304	UNIMPL		kldload
546305	UNIMPL		kldunload
547306	UNIMPL		kldfind
548307	UNIMPL		kldnext
549308	UNIMPL		kldstat
550309	UNIMPL		kldfirstmod
551310	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
552311	UNIMPL		setresuid
553312	UNIMPL		setresgid
554313	UNIMPL		signanosleep
555314	UNIMPL		aio_return
556315	UNIMPL		aio_suspend
557316	UNIMPL		aio_cancel
558317	UNIMPL		aio_error
559318	UNIMPL		aio_read
560319	UNIMPL		aio_write
561320	UNIMPL		lio_listio
562321	NOARGS		{ void|freebsd_sys||yield(void); }
563322	UNIMPL		thr_sleep
564323	UNIMPL		thr_wakeup
565324	NOARGS		{ int|sys||mlockall(int flags); }
566325	NOARGS		{ int|sys||munlockall(void); }
567326	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
568327	STD		{ int|freebsd_sys||sched_setparam(pid_t pid, \
569			    const struct freebsd_sched_param *sp); }
570328	STD		{ int|freebsd_sys||sched_getparam(pid_t pid, \
571			    struct freebsd_sched_param *sp); }
572329	STD		{ int|freebsd_sys||sched_setscheduler(pid_t pid, \
573			    int policy, const struct sched_param *sp); }
574330	STD		{ int|freebsd_sys||sched_getscheduler(pid_t pid); }
575331	STD		{ int|freebsd_sys||sched_yield(void); }
576332	STD		{ int|freebsd_sys||sched_get_priority_max(int policy); }
577333	STD		{ int|freebsd_sys||sched_get_priority_min(int policy); }
578334	UNIMPL		sched_rr_get_interval
579335	STD		{ int|freebsd_sys||utrace(void *addr, size_t len); }
580336	UNIMPL		sendfile
581337	UNIMPL		kldsym
582338	UNIMPL		jail
583339	UNIMPL		pioctl
584340	NOARGS		{ int|sys|14|sigprocmask(int how, \
585			    const sigset_t *set, \
586			    sigset_t *oset); }
587341	NOARGS		{ int|sys|14|sigsuspend(const sigset_t *set); }
588342	STD		{ int|freebsd_sys||sigaction4(int signum, \
589			    const struct freebsd_sigaction4 *nsa, \
590			    struct freebsd_sigaction4 *osa); }
591343	NOARGS		{ int|sys|14|sigpending(const sigset_t *set); }
592344	UNIMPL		4.0 sigreturn
593345	UNIMPL		sigtimedwait
594346	UNIMPL		sigwaitinfo
595347	UNIMPL		__acl_get_file
596348	UNIMPL		__acl_set_file
597349	UNIMPL		__acl_get_fd
598350	UNIMPL		__acl_set_fd
599351	UNIMPL		__acl_delete_file
600352	UNIMPL		__acl_delete_fd
601353	UNIMPL		__acl_aclcheck_file
602354	UNIMPL		__acl_aclcheck_fd
603355	UNIMPL		extattrctl
604356	UNIMPL		extattr_set_file
605357	UNIMPL		extattr_get_file
606358	UNIMPL		extattr_delete_file
607359	UNIMPL		aio_waitcomplete
608360	UNIMPL		getresuid
609361	UNIMPL		getresgid
610362	UNIMPL		kqueue
611363	UNIMPL		kevent
612364	UNIMPL		__cap_get_proc
613365	UNIMPL		__cap_set_proc
614366	UNIMPL		__cap_get_fd
615367	UNIMPL		__cap_get_file
616368	UNIMPL		__cap_set_fd
617369	UNIMPL		__cap_set_file
618370	UNIMPL		lkmressym
619371	UNIMPL		extattr_set_fd
620372	UNIMPL		extattr_get_fd
621373	UNIMPL		extattr_delete_fd
622374	UNIMPL		__setugid
623375	UNIMPL		nfsclnt
624376	UNIMPL		eaccess
625377	UNIMPL		afs_syscall
626378	UNIMPL		nmount
627379	UNIMPL		kse_exit
628380	UNIMPL		kse_wakeup
629381	UNIMPL		kse_create
630382	UNIMPL		kse_thr_interrupt
631383	UNIMPL		kse_release
632384	UNIMPL		__mac_get_proc
633385	UNIMPL		__mac_set_proc
634386	UNIMPL		__mac_get_fd
635387	UNIMPL		__mac_get_file
636388	UNIMPL		__mac_set_fd
637389	UNIMPL		__mac_set_file
638390	UNIMPL		kenv
639391	NOARGS		{ int|sys||lchflags(const char *path, u_long flags); }
640392	NOARGS		{ int|sys||uuidgen(struct uuid *store, int count); }
641393	UNIMPL		sendfile
642394	UNIMPL		mac_syscall
643395	UNIMPL		getfsstat
644396	UNIMPL		statfs
645397	UNIMPL		fsstatfs
646398	UNIMPL		fhstatfs
647399	UNIMPL		nosys
648400	NOARGS		{ int|sys||_ksem_close(intptr_t id); }
649401	NOARGS		{ int|sys||_ksem_post(intptr_t id); }
650402	NOARGS		{ int|sys||_ksem_wait(intptr_t id); }
651403	NOARGS		{ int|sys||_ksem_trywait(intptr_t id); }
652404	UNIMPL		ksem_init
653405	UNIMPL		ksem_open
654406	NOARGS		{ int|sys||_ksem_unlink(const char *name); }
655407	NOARGS		{ int|sys||_ksem_getvalue(intptr_t id, \
656			    unsigned int *value); }
657408	NOARGS		{ int|sys||_ksem_destroy(intptr_t id); }
658409	UNIMPL		__mac_get_pid
659410	UNIMPL		__mac_get_link
660411	UNIMPL		__mac_set_link
661412	UNIMPL		extattr_set_link
662413	UNIMPL		extattr_get_link
663414	UNIMPL		extattr_delete_link
664415	UNIMPL		__mac_execve
665416	UNIMPL		sigaction
666417	UNIMPL		sigreturn
667418	UNIMPL		__xstat
668419	UNIMPL		__xfstat
669420	UNIMPL		__xlstat
670421	UNIMPL		getcontext
671422	UNIMPL		setcontext
672423	UNIMPL		swapcontext
673424	UNIMPL		swapoff
674425	UNIMPL		__acl_get_link
675426	UNIMPL		__acl_set_link
676427	UNIMPL		__acl_delete_link
677428	UNIMPL		__acl_aclcheck_link
678429	UNIMPL		sigwait
679430	UNIMPL		thr_create
680431	UNIMPL		thr_exit
681432	UNIMPL		thr_self
682433	UNIMPL		thr_kill
683434	UNIMPL		_umtx_lock
684435	UNIMPL		_umtx_unlock
685436	UNIMPL		jail_attach
686437	UNIMPL		extattr_list_fd
687438	UNIMPL		extattr_list_file
688439	UNIMPL		extattr_list_link
689