1	$NetBSD: syscalls.master,v 1.36 2010/03/02 21:07:21 pooka Exp $
2
3;	@(#)syscalls.master	8.2 (Berkeley) 1/13/94
4
5; NetBSD 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;	EXCL	implemented, but not included in system
18;	NODEF	included, but don't define the syscall number
19;	NOARGS	included, but don't define the syscall args structure
20;	INDIR	included, but don't define the syscall args structure,
21;		and allow it to be "really" varargs.
22;
23; The compat options are defined in the syscalls.conf file, and the
24; compat option name is prefixed to the syscall name.  Other than
25; that, they're like NODEF (for 'compat' options), or STD (for
26; 'libcompat' options).
27;
28; The type-dependent arguments are as follows:
29; For STD, NODEF, NOARGS, and compat syscalls:
30;	{ pseudo-proto } [alias]
31; For other syscalls:
32;	[comment]
33;
34; #ifdef's, etc. may be included, and are copied to the output files.
35; #include's are copied to the syscall names and switch definition files only.
36
37#if defined(_KERNEL_OPT)
38#include "opt_ktrace.h"
39#include "opt_nfsserver.h"
40#include "opt_ntp.h"
41#include "opt_compat_netbsd.h"
42#include "opt_sysv.h"
43#include "opt_compat_43.h"
44#endif
45
46#include <sys/param.h>
47#include <sys/systm.h>
48#include <sys/signal.h>
49#include <sys/mount.h>
50#include <sys/sched.h>
51#include <sys/syscallargs.h>
52#include <compat/aoutm68k/aoutm68k_syscallargs.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 INDIR	{ int|sys||syscall(int code, \
63			    ... register32_t args[AOUTM68K_SYS_MAXSYSARGS]); }
641	NOARGS		{ void|sys||exit(int rval); }
652	NOARGS		{ int|sys||fork(void); }
663	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
674	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
68			    size_t nbyte); }
695	NOARGS		{ int|sys||open(const char *path, int flags, \
70			    ... mode_t mode); }
716	NOARGS		{ int|sys||close(int fd); }
727	NOARGS		{ int|compat_50_sys||wait4(int pid, int *status, \
73			    int options, struct rusage50 *rusage); }
74#if defined(COMPAT_43) || !defined(_KERNEL)
758	NOARGS		{ int|compat_43_sys||creat(const char *path, \
76			    mode_t mode); } ocreat
77#else
788	EXCL		compat_43_sys_creat
79#endif
809	NOARGS		{ int|sys||link(const char *path, const char *link); }
8110	NOARGS		{ int|sys||unlink(const char *path); }
8211	OBSOL		execv
8312	NOARGS		{ int|sys||chdir(const char *path); }
8413	NOARGS		{ int|sys||fchdir(int fd); }
8514	NOARGS		{ int|compat_50_sys||mknod(const char *path, \
86			    mode_t mode, dev_t dev); }
8715	NOARGS		{ int|sys||chmod(const char *path, mode_t mode); }
8816	NOARGS		{ int|sys||chown(const char *path, uid_t uid, \
89			    gid_t gid); }
9017	NOARGS		{ int|sys||obreak(char *nsize); } break
91#if defined(COMPAT_20) || !defined(_KERNEL)
9218	NOARGS		{ int|compat_20_sys||getfsstat(struct statfs12 *buf, \
93			    long bufsize, int flags); }
94#else
9518	EXCL		compat_20_sys_getfsstat
96#endif
97#if defined(COMPAT_43) || !defined(_KERNEL)
9819	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
99			    int whence); } olseek
100#else
10119	EXCL		compat_43_sys_lseek
102#endif
10320	NOARGS 		{ pid_t|sys||getpid(void); }
10421	NOARGS		{ int|compat_40_sys||mount(const char *type, \
105			    const char *path, int flags, void *data); }
10622	NOARGS		{ int|sys||unmount(const char *path, int flags); }
10723	NOARGS		{ int|sys||setuid(uid_t uid); }
10824	NOARGS		{ uid_t|sys||getuid(void); }
10925	NOARGS		{ uid_t|sys||geteuid(void); }
11026	NOARGS		{ int|sys||ptrace(int req, pid_t pid, void *addr, \
111			    int data); }
11227	NOARGS		{ ssize_t|sys||recvmsg(int s, struct msghdr *msg, \
113			    int flags); }
11428	NOARGS		{ ssize_t|sys||sendmsg(int s, \
115			    const struct msghdr *msg, int flags); }
11629	NOARGS		{ ssize_t|sys||recvfrom(int s, void *buf, size_t len, \
117			    int flags, struct sockaddr *from, \
118			    unsigned int *fromlenaddr); }
11930	NOARGS		{ int|sys||accept(int s, struct sockaddr *name, \
120			    unsigned int *anamelen); }
12131	NOARGS		{ int|sys||getpeername(int fdes, struct sockaddr *asa, \
122			    unsigned int *alen); }
12332	NOARGS		{ int|sys||getsockname(int fdes, struct sockaddr *asa, \
124			    unsigned int *alen); }
12533	NOARGS		{ int|sys||access(const char *path, int flags); }
12634	NOARGS		{ int|sys||chflags(const char *path, u_long flags); }
12735	NOARGS		{ int|sys||fchflags(int fd, u_long flags); }
12836	NOARGS		{ void|sys||sync(void); }
12937	NOARGS		{ int|sys||kill(int pid, int signum); }
130#if defined(COMPAT_43) || !defined(_KERNEL)
13138	STD		{ int|aoutm68k_compat_43_sys||stat(const char *path, \
132			    struct aoutm68k_stat43 *ub); } stat43
133#else
13438	EXCL		aoutm68k_compat_43_sys_stat
135#endif
13639	NOARGS		{ pid_t|sys||getppid(void); }
137#if defined(COMPAT_43) || !defined(_KERNEL)
13840	STD		{ int|aoutm68k_compat_43_sys||lstat(const char *path, \
139			    struct aoutm68k_stat43 *ub); } lstat43
140#else
14140	EXCL		aoutm68k_compat_43_sys_lstat
142#endif
14341	NOARGS		{ int|sys||dup(int fd); }
14442	NOARGS		{ int|sys||pipe(void); }
14543	NOARGS		{ gid_t|sys||getegid(void); }
14644	NOARGS		{ int|sys||profil(void *samples, size_t size, \
147			    u_long offset, u_int scale); }
148#if defined(KTRACE) || !defined(_KERNEL)
14945	NOARGS		{ int|sys||ktrace(const char *fname, int ops, \
150			    int facs, int pid); }
151#else
15245	EXCL		ktrace
153#endif
154#if defined(COMPAT_13) || !defined(_KERNEL)
15546	NOARGS		{ int|compat_13_sys||sigaction(int signum, \
156			    const struct sigaction13 *nsa, \
157			    struct sigaction13 *osa); } sigaction13
158#else
15946	EXCL		compat_13_sys_sigaction
160#endif
16147	NOARGS		{ gid_t|sys||getgid(void); }
162#if defined(COMPAT_13) || !defined(_KERNEL)
16348	NOARGS		{ int|compat_13_sys||sigprocmask(int how, \
164			    int mask); } sigprocmask13
165#else
16648	EXCL		compat_13_sys_sigprocmask
167#endif
16849	NOARGS		{ int|sys||__getlogin(char *namebuf, size_t namelen); }
16950	NOARGS		{ int|sys||__setlogin(const char *namebuf); }
17051	NOARGS		{ int|sys||acct(const char *path); }
171#if defined(COMPAT_13) || !defined(_KERNEL)
17252	NOARGS		{ int|compat_13_sys||sigpending(void); } sigpending13
17353	NOARGS		{ int|compat_13_sys||sigaltstack( \
174			    const struct sigaltstack13 *nss, \
175			    struct sigaltstack13 *oss); } sigaltstack13
176#else
17752	EXCL		compat_13_sys_sigpending
17853	EXCL		compat_13_sys_sigaltstack
179#endif
18054	NOARGS		{ int|sys||ioctl(int fd, u_long com, ... void *data); }
181#if defined(COMPAT_12) || !defined(_KERNEL)
18255	NOARGS		{ int|compat_12_sys||reboot(int opt); } oreboot
183#else
18455	EXCL		compat_12_sys_reboot
185#endif
18656	NOARGS		{ int|sys||revoke(const char *path); }
18757	NOARGS		{ int|sys||symlink(const char *path, \
188			    const char *link); }
18958	NOARGS		{ int|sys||readlink(const char *path, \
190			    char *buf, size_t count); }
19159	NOARGS		{ int|sys||execve(const char *path, \
192			    char * const *argp, char * const *envp); }
19360	NOARGS		{ mode_t|sys||umask(mode_t newmask); }
19461	NOARGS		{ int|sys||chroot(const char *path); }
195#if defined(COMPAT_43) || !defined(_KERNEL)
19662	STD		{ int|aoutm68k_compat_43_sys||fstat(int fd, \
197			    struct aoutm68k_stat43 *sb); } fstat43
19863	NOARGS		{ int|compat_43_sys||getkerninfo(int op, char *where, \
199			    int *size, int arg); } ogetkerninfo
20064	NOARGS		{ int|compat_43_sys||getpagesize(void); } ogetpagesize
201#else
20262	EXCL		aoutm68k_compat_43_sys_fstat
20363	EXCL		compat_43_sys_getkerninfo
20464	EXCL		compat_43_sys_getpagesize
205#endif
206#if defined(COMPAT_12) || !defined(_KERNEL)
20765	NOARGS		{ int|compat_12_sys||msync(void *addr, size_t len); }
208#else
20965	EXCL		compat_12_sys_msync
210#endif
211; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)?
21266	NOARGS		{ int|sys||vfork(void); }
21367	OBSOL		vread
21468	OBSOL		vwrite
21569	NOARGS		{ int|sys||sbrk(intptr_t incr); }
21670	NOARGS		{ int|sys||sstk(int incr); }
217#if defined(COMPAT_43) || !defined(_KERNEL)
21871	NOARGS		{ int|compat_43_sys||mmap(void *addr, size_t len, \
219			    int prot, int flags, int fd, long pos); } ommap
220#else
22171	EXCL		compat_43_sys_mmap
222#endif
22372	NOARGS		{ int|sys||ovadvise(int anom); } vadvise
22473	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
22574	NOARGS		{ int|sys||mprotect(void *addr, size_t len, \
226			    int prot); }
22775	NOARGS		{ int|sys||madvise(void *addr, size_t len, \
228			    int behav); }
22976	OBSOL		vhangup
23077	OBSOL		vlimit
23178	NOARGS		{ int|sys||mincore(void *addr, size_t len, \
232			    char *vec); }
23379	NOARGS		{ int|sys||getgroups(int gidsetsize, \
234			    gid_t *gidset); }
23580	NOARGS		{ int|sys||setgroups(int gidsetsize, \
236			    const gid_t *gidset); }
23781	NOARGS		{ int|sys||getpgrp(void); }
23882	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
23983	NOARGS		{ int|compat_50_sys||setitimer(int which, \
240			    const struct itimerval50 *itv, \
241			    struct itimerval50 *oitv); }
242#if defined(COMPAT_43) || !defined(_KERNEL)
24384	NOARGS		{ int|compat_43_sys||wait(void); } owait
244#else
24584	EXCL		compat_43_sys_wait
246#endif
247#if defined(COMPAT_12) || !defined(_KERNEL)
24885	NOARGS		{ int|compat_12_sys||swapon(const char *name); } oswapon
249#else
25085	EXCL		compat_12_sys_swapon
251#endif
25286	NOARGS		{ int|compat_50_sys||getitimer(int which, \
253			    struct itimerval50 *itv); }
254#if defined(COMPAT_43) || !defined(_KERNEL)
25587	NOARGS		{ int|compat_43_sys||gethostname(char *hostname, \
256			    u_int len); } ogethostname
25788	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
258			    u_int len); } osethostname
25989	NOARGS		{ int|compat_43_sys||getdtablesize(void); } \
260			    ogetdtablesize
261#else
26287	EXCL		compat_43_sys_gethostname
26388	EXCL		compat_43_sys_sethostname
26489	EXCL		compat_43_sys_getdtablesize
265#endif
26690	NOARGS		{ int|sys||dup2(int from, int to); }
26791	UNIMPL		getdopt
26892	NOARGS		{ int|sys||fcntl(int fd, int cmd, ... void *arg); }
26993	NOARGS		{ int|compat_50_sys||select(int nd, fd_set *in, \
270			    fd_set *ou, fd_set *ex, struct timeval50 *tv); }
27194	UNIMPL		setdopt
27295	NOARGS		{ int|sys||fsync(int fd); }
27396	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
27497	NOARGS		{ int|compat_30_sys||socket(int domain, int type, int protocol); }
27598	NOARGS		{ int|sys||connect(int s, const struct sockaddr *name, \
276			    int namelen); }
277#if defined(COMPAT_43) || !defined(_KERNEL)
27899	NOARGS		{ int|compat_43_sys||accept(int s, void *name, \
279			    int *anamelen); } oaccept
280#else
28199	EXCL		compat_43_sys_accept
282#endif
283100	NOARGS		{ int|sys||getpriority(int which, int who); }
284#if defined(COMPAT_43) || !defined(_KERNEL)
285101	NOARGS		{ int|compat_43_sys||send(int s, void *buf, int len, \
286			    int flags); } osend
287102	NOARGS		{ int|compat_43_sys||recv(int s, void *buf, int len, \
288			    int flags); } orecv
289#else
290101	EXCL		compat_43_sys_send
291102	EXCL		compat_43_sys_recv
292#endif
293#if defined(COMPAT_13) || !defined(_KERNEL)
294103	NOARGS		{ int|compat_13_sys||sigreturn( \
295			    struct sigcontext13 *sigcntxp); } sigreturn13
296#else
297103	EXCL		compat_13_sys_sigreturn
298#endif
299104	NOARGS		{ int|sys||bind(int s, const struct sockaddr *name, \
300			    int namelen); }
301105	NOARGS		{ int|sys||setsockopt(int s, int level, int name, \
302			    const void *val, int valsize); }
303106	NOARGS		{ int|sys||listen(int s, int backlog); }
304107	OBSOL		vtimes
305#if defined(COMPAT_43) || !defined(_KERNEL)
306108	NOARGS		{ int|compat_43_sys||sigvec(int signum, \
307			    struct sigvec *nsv, struct sigvec *osv); } osigvec
308109	NOARGS		{ int|compat_43_sys||sigblock(int mask); } osigblock
309110	NOARGS		{ int|compat_43_sys||sigsetmask(int mask); } osigsetmask
310#else
311108	EXCL		compat_43_sys_sigvec
312109	EXCL		compat_43_sys_sigblock
313110	EXCL		compat_43_sys_sigsetmask
314#endif
315#if defined(COMPAT_13) || !defined(_KERNEL)
316111	NOARGS		{ int|compat_13_sys||sigsuspend(int mask); } sigsuspend13
317#else
318111	EXCL		compat_13_sys_sigsuspend
319#endif
320#if defined(COMPAT_43) || !defined(_KERNEL)
321112	NOARGS		{ int|compat_43_sys||sigstack(struct sigstack *nss, \
322			    struct sigstack *oss); } osigstack
323113	NOARGS		{ int|compat_43_sys||recvmsg(int s, \
324			    struct omsghdr *msg, int flags); } orecvmsg
325114	NOARGS		{ int|compat_43_sys||sendmsg(int s, void *msg, \
326			    int flags); } osendmsg
327#else
328112	EXCL		compat_43_sys_sigstack
329113	EXCL		compat_43_sys_recvmesg
330114	EXCL		compat_43_sys_sendmesg
331#endif
332115	OBSOL		vtrace
333116	NOARGS		{ int|compat_50_sys||gettimeofday(struct timeval50 *tp, \
334			    struct timezone *tzp); }
335117	NOARGS		{ int|compat_50_sys||getrusage(int who, \
336			    struct rusage50 *rusage); }
337118	NOARGS		{ int|sys||getsockopt(int s, int level, int name, \
338			    void *val, int *avalsize); }
339119	OBSOL		resuba
340120	NOARGS		{ ssize_t|sys||readv(int fd, \
341			    const struct iovec *iovp, int iovcnt); }
342121	NOARGS		{ ssize_t|sys||writev(int fd, \
343			    const struct iovec *iovp, int iovcnt); }
344122	NOARGS		{ int|compat_50_sys||settimeofday( \
345			    const struct timeval50 *tv, \
346			    const struct timezone *tzp); }
347123	NOARGS		{ int|sys||fchown(int fd, uid_t uid, gid_t gid); }
348124	NOARGS		{ int|sys||fchmod(int fd, mode_t mode); }
349#if defined(COMPAT_43) || !defined(_KERNEL)
350125	NOARGS		{ int|compat_43_sys||recvfrom(int s, void *buf, \
351			    size_t len, int flags, void *from, \
352			    int *fromlenaddr); } orecvfrom
353#else
354125	EXCL		compat_43_sys_recvfrom
355#endif
356126	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
357127	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
358128	NOARGS		{ int|sys||rename(const char *from, const char *to); }
359#if defined(COMPAT_43) || !defined(_KERNEL)
360129	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
361			    long length); } otruncate
362130	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); } \
363			    oftruncate
364#else
365129	EXCL		compat_43_sys_truncate
366130	EXCL		compat_43_sys_ftruncate
367#endif
368131	NOARGS		{ int|sys||flock(int fd, int how); }
369132	NOARGS		{ int|sys||mkfifo(const char *path, mode_t mode); }
370133	NOARGS		{ ssize_t|sys||sendto(int s, const void *buf, \
371			    size_t len, int flags, const struct sockaddr *to, \
372			    int tolen); }
373134	NOARGS		{ int|sys||shutdown(int s, int how); }
374135	NOARGS		{ int|sys||socketpair(int domain, int type, \
375			    int protocol, int *rsv); }
376136	NOARGS		{ int|sys||mkdir(const char *path, mode_t mode); }
377137	NOARGS		{ int|sys||rmdir(const char *path); }
378138	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
379			    const struct timeval50 *tptr); }
380139	OBSOL		4.2 sigreturn
381140	NOARGS		{ int|compat_50_sys||adjtime( \
382			    const struct timeval50 *delta, \
383			    struct timeval50 *olddelta); }
384#if defined(COMPAT_43) || !defined(_KERNEL)
385141	NOARGS		{ int|compat_43_sys||getpeername(int fdes, void *asa, \
386			    int *alen); } ogetpeername
387142	NOARGS		{ int32_t|compat_43_sys||gethostid(void); } ogethostid
388143	NOARGS		{ int|compat_43_sys||sethostid(int32_t hostid); } \
389			    osethostid
390144	NOARGS		{ int|compat_43_sys||getrlimit(int which, \
391			    struct orlimit *rlp); } ogetrlimit
392145	NOARGS		{ int|compat_43_sys||setrlimit(int which, \
393			    const struct orlimit *rlp); } osetrlimit
394146	NOARGS		{ int|compat_43_sys||killpg(int pgid, int signum); } \
395			    okillpg
396#else
397141	EXCL		compat_43_sys_getpeername
398142	EXCL		compat_43_sys_gethostid
399143	EXCL		compat_43_sys_sethostid
400144	EXCL		compat_43_sys_getrlimit
401145	EXCL		compat_43_sys_setrlimit
402146	EXCL		compat_43_sys_killpg
403#endif
404147	NOARGS		{ int|sys||setsid(void); }
405148	NOARGS		{ int|compat_50_sys||quotactl(const char *path, \
406			    int cmd, int uid, void *arg); }
407#if defined(COMPAT_43) || !defined(_KERNEL)
408149	NOARGS		{ int|compat_43_sys||quota(void); } oquota
409150	NOARGS		{ int|compat_43_sys||getsockname(int fdec, void *asa, \
410			    int *alen); } ogetsockname
411#else
412149	EXCL		compat_43_sys_quota
413150	EXCL		compat_43_sys_getsockname
414#endif
415
416; Syscalls 151-180 inclusive are reserved for vendor-specific
417; system calls.  (This includes various calls added for compatibity
418; with other Unix variants.)
419; Some of these calls are now supported by BSD...
420151	UNIMPL
421152	UNIMPL
422153	UNIMPL
423154	UNIMPL
424155	EXCL		nfssvc
425#if defined(COMPAT_43) || !defined(_KERNEL)
426156	NOARGS		{ int|compat_43_sys||getdirentries(int fd, char *buf, \
427			    u_int count, long *basep); } ogetdirentries
428#else
429156	EXCL		compat_43_sys_getdirentries
430#endif
431#if defined(COMPAT_20) || !defined(_KERNEL)
432157	NOARGS		{ int|compat_20_sys||statfs(const char *path, \
433			    struct statfs12 *buf); }
434#else
435157	EXCL		compat_20_sys_statfs
436#endif
437#if defined(COMPAT_20) || !defined(_KERNEL)
438158	NOARGS		{ int|compat_20_sys||fstatfs(int fd, \
439			    struct statfs12 *buf); }
440#else
441158	EXCL		compat_20_sys_statfs
442#endif
443159	UNIMPL
444160	UNIMPL
445161	NOARGS		{ int|compat_30_sys||getfh(const char *fname, \
446			    struct compat_30_fhandle *fhp); }
447#if defined(COMPAT_09) || !defined(_KERNEL)
448162	NOARGS		{ int|compat_09_sys||getdomainname(char *domainname, \
449			    int len); } ogetdomainname
450163	NOARGS		{ int|compat_09_sys||setdomainname(char *domainname, \
451			    int len); } osetdomainname
452164	NOARGS		{ int|compat_09_sys||uname(struct outsname *name); } \
453			    ouname
454#else
455162	EXCL		compat_09_sys_getdomainname
456163	EXCL		compat_09_sys_setdomainname
457164	EXCL		compat_09_sys_uname
458#endif
459165	NOARGS		{ int|sys||sysarch(int op, void *parms); }
460166	UNIMPL
461167	UNIMPL
462168	UNIMPL
463; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
464#if (defined(SYSVSEM) || !defined(_KERNEL)) && !defined(_LP64) && defined(COMPAT_10)
465169	NOARGS		{ int|compat_10_sys||semsys(int which, int a2, int a3, \
466			    int a4, int a5); } osemsys
467#else
468169	EXCL		1.0 semsys
469#endif
470; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
471#if (defined(SYSVMSG) || !defined(_KERNEL)) && !defined(_LP64) && defined(COMPAT_10)
472170	NOARGS		{ int|compat_10_sys||msgsys(int which, int a2, int a3, \
473			    int a4, int a5, int a6); } omsgsys
474#else
475170	EXCL		1.0 msgsys
476#endif
477; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
478#if (defined(SYSVSHM) || !defined(_KERNEL)) && !defined(_LP64) && defined(COMPAT_10)
479171	NOARGS		{ int|compat_10_sys||shmsys(int which, int a2, int a3, \
480			    int a4); } oshmsys
481#else
482171	EXCL		1.0 shmsys
483#endif
484172	UNIMPL
485173	NOARGS		{ ssize_t|sys||pread(int fd, void *buf, \
486			    size_t nbyte, int pad, off_t offset); }
487174	NOARGS		{ ssize_t|sys||pwrite(int fd, const void *buf, \
488			    size_t nbyte, int pad, off_t offset); }
489175	UNIMPL		sys_ntp_gettime
490#if defined(NTP) || !defined(_KERNEL)
491176	NOARGS		{ int|sys||ntp_adjtime(struct timex *tp); }
492#else
493176	EXCL		ntp_adjtime
494#endif
495177	UNIMPL
496178	UNIMPL
497179	UNIMPL
498180	UNIMPL
499
500; Syscalls 180-199 are used by/reserved for BSD
501181	NOARGS		{ int|sys||setgid(gid_t gid); }
502182	NOARGS		{ int|sys||setegid(gid_t egid); }
503183	NOARGS		{ int|sys||seteuid(uid_t euid); }
504184	EXCL		lfs_bmapv
505185	EXCL		lfs_markv
506186	EXCL		lfs_segclean
507187	EXCL		lfs_segwait
508#if defined(COMPAT_12) || !defined(_KERNEL)
509188	STD	{ int|aoutm68k_compat_12_sys||stat(const char *path, \
510			    struct aoutm68k_stat12 *ub); } stat12
511189	STD		{ int|aoutm68k_compat_12_sys||fstat(int fd, \
512			    struct aoutm68k_stat12 *sb); } fstat12
513190	STD		{ int|aoutm68k_compat_12_sys||lstat(const char *path, \
514			    struct aoutm68k_stat12 *ub); } lstat12
515#else
516188	EXCL		aoutm68k_compat_12_sys_stat
517189	EXCL		aoutm68k_compat_12_sys_fstat
518190	EXCL		aoutm68k_compat_12_sys_lstat
519#endif
520191	NOARGS		{ long|sys||pathconf(const char *path, int name); }
521192	NOARGS		{ long|sys||fpathconf(int fd, int name); }
522193	UNIMPL
523194	NOARGS		{ int|sys||getrlimit(int which, \
524			    struct rlimit *rlp); }
525195	NOARGS		{ int|sys||setrlimit(int which, \
526			    const struct rlimit *rlp); }
527#if defined(COMPAT_12) || !defined(_KERNEL)
528196	NOARGS		{ int|compat_12_sys||getdirentries(int fd, char *buf, \
529			    u_int count, long *basep); }
530#else
531196	EXCL		compat_12_sys_getdirentries
532#endif
533197	NOARGS		{ void *|sys||mmap(void *addr, size_t len, int prot, \
534			    int flags, int fd, long pad, off_t pos); }
535198	NOARGS INDIR	{ quad_t|sys||__syscall(quad_t code, \
536			    ... register32_t args[AOUTM68K_SYS_MAXSYSARGS]); }
537199	NOARGS		{ off_t|sys||lseek(int fd, int pad, off_t offset, \
538			    int whence); }
539200	NOARGS		{ int|sys||truncate(const char *path, int pad, \
540			    off_t length); }
541201	NOARGS		{ int|sys||ftruncate(int fd, int pad, off_t length); }
542202	NOARGS		{ int|sys||__sysctl(int *name, u_int namelen, \
543			    void *old, size_t *oldlenp, void *new, \
544			    size_t newlen); }
545203	NOARGS		{ int|sys||mlock(const void *addr, size_t len); }
546204	NOARGS		{ int|sys||munlock(const void *addr, size_t len); }
547205	NOARGS		{ int|sys||undelete(const char *path); }
548206	NOARGS		{ int|compat_50_sys||futimes(int fd, \
549			    const struct timeval50 *tptr); }
550207	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
551208	NOARGS		{ int|sys||reboot(int opt, char *bootstr); }
552209	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
553			    int timeout); }
554210	UNIMPL
555211	UNIMPL
556212	UNIMPL
557213	UNIMPL
558214	UNIMPL
559215	UNIMPL
560216	UNIMPL
561217	UNIMPL
562218	UNIMPL
563219	UNIMPL
564; System calls 220-300 are reserved for use by NetBSD
565#if defined(SYSVSEM) || !defined(_KERNEL)
566#if defined(COMPAT_14) || !defined(_KERNEL)
567220	NOARGS		{ int|compat_14_sys||__semctl(int semid, \
568			    int semnum, int cmd, union __semun *arg); }
569#else
570220	EXCL		compat_14_semctl
571#endif
572221	NOARGS		{ int|sys||semget(key_t key, int nsems, int semflg); }
573222	NOARGS		{ int|sys||semop(int semid, struct sembuf *sops, \
574			    size_t nsops); }
575223	NOARGS		{ int|sys||semconfig(int flag); }
576#else
577220	EXCL		compat_14_semctl
578221	EXCL		semget
579222	EXCL		semop
580223	EXCL		semconfig
581#endif
582#if defined(SYSVMSG) || !defined(_KERNEL)
583#if defined(COMPAT_14) || !defined(_KERNEL)
584224	NOARGS		{ int|compat_14_sys||msgctl(int msqid, int cmd, \
585			    struct msqid_ds14 *buf); }
586#else
587224	EXCL		compat_14_sys_msgctl
588#endif
589225	NOARGS		{ int|sys||msgget(key_t key, int msgflg); }
590226	NOARGS		{ int|sys||msgsnd(int msqid, const void *msgp, \
591			    size_t msgsz, int msgflg); }
592227	NOARGS		{ ssize_t|sys||msgrcv(int msqid, void *msgp, \
593			    size_t msgsz, long msgtyp, int msgflg); }
594#else
595224	EXCL		compat_14_msgctl
596225	EXCL		msgget
597226	EXCL		msgsnd
598227	EXCL		msgrcv
599#endif
600#if defined(SYSVSHM) || !defined(_KERNEL)
601228	NOARGS		{ void *|sys||shmat(int shmid, const void *shmaddr, \
602			    int shmflg); }
603#if defined(COMPAT_14) || !defined(_KERNEL)
604229	NOARGS		{ int|compat_14_sys||shmctl(int shmid, int cmd, \
605			    struct shmid_ds14 *buf); }
606#else
607229	EXCL		compat_14_sys_shmctl
608#endif
609230	NOARGS		{ int|sys||shmdt(const void *shmaddr); }
610231	NOARGS		{ int|sys||shmget(key_t key, size_t size, int shmflg); }
611#else
612228	EXCL		shmat
613229	EXCL		compat_14_shmctl
614230	EXCL		shmdt
615231	EXCL		shmget
616#endif
617232	NOARGS		{ int|compat_50_sys||clock_gettime(clockid_t clock_id, \
618			    struct timespec50 *tp); }
619233	NOARGS		{ int|compat_50_sys||clock_settime(clockid_t clock_id, \
620			    const struct timespec50 *tp); }
621234	NOARGS		{ int|compat_50_sys||clock_getres(clockid_t clock_id, \
622			    struct timespec50 *tp); }
623235	UNIMPL		timer_create
624236	UNIMPL		timer_delete
625237	UNIMPL		timer_settime
626238	UNIMPL		timer_gettime
627239	UNIMPL		timer_getoverrun
628;
629; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
630;
631240	NOARGS		{ int|compat_50_sys||nanosleep( \
632			    const struct timespec50 *rqtp, \
633			    struct timespec50 *rmtp); }
634241	NOARGS		{ int|sys||fdatasync(int fd); }
635242	NOARGS		{ int|sys||mlockall(int flags); }
636243	NOARGS		{ int|sys||munlockall(void); }
637244	UNIMPL
638245	UNIMPL
639246	UNIMPL
640247	UNIMPL
641248	UNIMPL
642249	UNIMPL
643250	UNIMPL
644251	UNIMPL
645252	UNIMPL
646253	UNIMPL
647254	UNIMPL
648255	UNIMPL
649256	UNIMPL
650257	UNIMPL
651258	UNIMPL
652259	UNIMPL
653260	UNIMPL
654261	UNIMPL
655262	UNIMPL
656263	UNIMPL
657264	UNIMPL
658265	UNIMPL
659266	UNIMPL
660267	UNIMPL
661268	UNIMPL
662269	UNIMPL
663270	NOARGS		{ int|sys||__posix_rename(const char *from, \
664			    const char *to); }
665271	NOARGS		{ int|sys||swapctl(int cmd, const void *arg, int misc); }
666#if defined(COMPAT_30) || !defined(_KERNEL)
667272	NOARGS		{ int|compat_30_sys||getdents(int fd, char *buf, size_t count); }
668#else
669272	EXCL		compat_30_sys_getdents
670#endif
671273	NOARGS		{ int|sys||minherit(void *addr, size_t len, \
672			    int inherit); }
673274	NOARGS		{ int|sys||lchmod(const char *path, mode_t mode); }
674275	NOARGS		{ int|sys||lchown(const char *path, uid_t uid, \
675			    gid_t gid); }
676276	NOARGS		{ int|compat_50_sys||lutimes(const char *path, \
677			    const struct timeval50 *tptr); }
678277	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
679278	STD		{ int|aoutm68k_sys|13|stat(const char *path, \
680			    struct aoutm68k_stat *ub); }
681279	STD		{ int|aoutm68k_sys|13|fstat(int fd, \
682			    struct aoutm68k_stat *sb); }
683280	STD		{ int|aoutm68k_sys|13|lstat(const char *path, \
684			    struct aoutm68k_stat *ub); }
685281	NOARGS		{ int|sys|14|sigaltstack( \
686			    const struct sigaltstack *nss, \
687			    struct sigaltstack *oss); }
688282	NOARGS		{ int|sys|14|vfork(void); }
689283	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
690			    gid_t gid); }
691284	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
692			    gid_t gid); }
693285	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
694			    gid_t gid); }
695286	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
696287	UNIMPL
697#if defined(KTRACE) || !defined(_KERNEL)
698288	NOARGS		{ int|sys||fktrace(const int fd, int ops, \
699			    int facs, int pid); }
700#else
701288	EXCL		ktrace
702#endif
703289	NOARGS		{ ssize_t|sys||preadv(int fd, \
704			    const struct iovec *iovp, int iovcnt, \
705			    int pad, off_t offset); }
706290	NOARGS		{ ssize_t|sys||pwritev(int fd, \
707			    const struct iovec *iovp, int iovcnt, \
708			    int pad, off_t offset); }
709#if defined(COMPAT_16) || !defined(_KERNEL)
710291	NOARGS		{ int|compat_16_sys|14|sigaction(int signum, \
711			    const struct sigaction *nsa, \
712			    struct sigaction *osa); }
713#else
714291	EXCL		compat_16_sys___sigaction14
715#endif
716292	NOARGS		{ int|sys|14|sigpending(sigset_t *set); }
717293	NOARGS		{ int|sys|14|sigprocmask(int how, \
718			    const sigset_t *set, \
719			    sigset_t *oset); }
720294	NOARGS		{ int|sys|14|sigsuspend(const sigset_t *set); }
721#if defined(COMPAT_16) || !defined(_KERNEL)
722295	NOARGS		{ int|compat_16_sys|14|sigreturn(\
723			    struct sigcontext *sigcntxp); }
724#else
725295	EXCL		compat_16_sys___sigreturn14
726#endif
727296	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
728297	NOARGS		{ int|sys||fchroot(int fd); }
729298	NOARGS		{ int|compat_30_sys||fhopen(const \
730			    struct compat_30_fhandle *fhp, int flags); }
731299	STD		{ int|aoutm68k_sys||fhstat(const struct \
732			    compat_30_fhandle *fhp, \
733			    struct aoutm68k_stat *sb); }
734#if defined(COMPAT_20) || !defined(_KERNEL)
735300	NOARGS		{ int|compat_20_sys||fhstatfs(const struct \
736			    compat_30-fhandle *fhp, \
737			    struct statfs12 *buf); }
738#else
739300	EXCL		compat_20_sys_fhstatfs
740#endif
741#if defined(SYSVSEM) || !defined(_KERNEL)
742301	NOARGS		{ int|compat_50_sys|13|__semctl(int semid, \
743			    int semnum, int cmd, ... union __semun *arg); }
744#else
745301	EXCL		____semctl13
746#endif
747#if defined(SYSVMSG) || !defined(_KERNEL)
748302	NOARGS		{ int|compat_50_sys|13|msgctl(int msqid, int cmd, \
749			    struct msqid_ds *buf); }
750#else
751302	EXCL		__msgctl13
752#endif
753#if defined(SYSVSHM) || !defined(_KERNEL)
754303	NOARGS		{ int|compat_50_sys|13|shmctl(int shmid, int cmd, \
755			    struct shmid_ds *buf); }
756#else
757303	EXCL		__shmctl13
758#endif
759304	NOARGS		{ int|sys||lchflags(const char *path, u_long flags); }
760305	NOARGS		{ int|sys||issetugid(void); }
761306	NOARGS		{ int|sys||getcontext(struct __ucontext *ucp); }
762307	NOARGS		{ int|sys||setcontext(const struct __ucontext *ucp); }
763