syscalls.master revision 1.56
1	$NetBSD: syscalls.master,v 1.56 2007/02/18 09:03:55 cube Exp $
2
3;	from: NetBSD: syscalls.master,v 1.81 1998/07/05 08:49:50 jonathan Exp
4;	@(#)syscalls.master	8.2 (Berkeley) 1/13/94
5
6; NetBSD system call name/number "master" file.
7; (See syscalls.conf to see what it is processed into.)
8;
9; Fields: number type [type-dependent ...]
10;	number	system call number, must be in order
11;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
12;		the compatibility options defined in syscalls.conf.
13;
14; types:
15;	STD	always included
16;	OBSOL	obsolete, not included in system
17;	UNIMPL	unimplemented, not included in system
18;	EXCL	implemented, but not included in system
19;	NODEF	included, but don't define the syscall number
20;	NOARGS	included, but don't define the syscall args structure
21;	INDIR	included, but don't define the syscall args structure,
22;		and allow it to be "really" varargs.
23;
24; The compat options are defined in the syscalls.conf file, and the
25; compat option name is prefixed to the syscall name.  Other than
26; that, they're like NODEF (for 'compat' options), or STD (for
27; 'libcompat' options).
28;
29; The type-dependent arguments are as follows:
30; For STD, NODEF, NOARGS, and compat syscalls:
31;	{ pseudo-proto } [alias]
32; For other syscalls:
33;	[comment]
34;
35; #ifdef's, etc. may be included, and are copied to the output files.
36; #include's are copied to the syscall names and switch definition files only.
37
38#if defined(_KERNEL_OPT)
39#include "opt_ktrace.h"
40#include "opt_nfsserver.h"
41#include "opt_compat_netbsd.h"
42#include "opt_ntp.h"
43#include "opt_sysv.h"
44#include "opt_compat_43.h"
45#include "opt_posix.h"
46
47#include "fs_lfs.h"
48#include "fs_nfs.h"
49#endif
50
51#include <sys/param.h>
52#include <sys/systm.h>
53#include <sys/signal.h>
54#include <sys/mount.h>
55#include <sys/syscallargs.h>
56
57#include <compat/netbsd32/netbsd32.h>
58#include <compat/netbsd32/netbsd32_syscallargs.h>
59
60%%
61
62; Reserved/unimplemented system calls in the range 0-150 inclusive
63; are reserved for use in future Berkeley releases.
64; Additional system calls implemented in vendor and other
65; redistributions should be placed in the reserved range at the end
66; of the current calls.
67
680	INDIR		{ int sys_syscall(int number, ...); }
691	STD		{ void netbsd32_exit(int rval); }
702	NOARGS		{ int sys_fork(void); }
713	STD		{ netbsd32_ssize_t netbsd32_read(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte); }
724	STD		{ netbsd32_ssize_t netbsd32_write(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte); }
735	STD		{ int netbsd32_open(const netbsd32_charp path, int flags, ... mode_t mode); }
746	STD		{ int netbsd32_close(int fd); }
757	STD		{ int netbsd32_wait4(int pid, netbsd32_intp status, int options, netbsd32_rusagep_t rusage); }
768	COMPAT_43	{ int netbsd32_ocreat(const netbsd32_charp path, mode_t mode); }
779	STD		{ int netbsd32_link(const netbsd32_charp path, const netbsd32_charp link); }
7810	STD		{ int netbsd32_unlink(const netbsd32_charp path); }
7911	OBSOL		execv
8012	STD		{ int netbsd32_chdir(const netbsd32_charp path); }
8113	STD		{ int netbsd32_fchdir(int fd); }
8214	STD		{ int netbsd32_mknod(const netbsd32_charp path, mode_t mode, dev_t dev); }
8315	STD		{ int netbsd32_chmod(const netbsd32_charp path, mode_t mode); }
8416	STD		{ int netbsd32_chown(const netbsd32_charp path, uid_t uid, gid_t gid); }
8517	STD		{ int netbsd32_break(netbsd32_charp nsize); }
8618	COMPAT_20	{ int netbsd32_getfsstat(netbsd32_statfsp_t buf, netbsd32_long bufsize, int flags); }
8719	COMPAT_43	{ netbsd32_long netbsd32_olseek(int fd, netbsd32_long offset, int whence); }
8820	NOARGS MPSAFE	{ pid_t sys_getpid(void); }
8921	STD		{ int netbsd32_mount(const netbsd32_charp type, const netbsd32_charp path, int flags, netbsd32_voidp data); }
9022	STD		{ int netbsd32_unmount(const netbsd32_charp path, int flags); }
9123	STD		{ int netbsd32_setuid(uid_t uid); }
9224	NOARGS		{ uid_t sys_getuid(void); }
9325	NOARGS		{ uid_t sys_geteuid(void); }
9426	STD		{ int netbsd32_ptrace(int req, pid_t pid, netbsd32_caddr_t addr, int data); }
9527	STD		{ netbsd32_ssize_t netbsd32_recvmsg(int s, netbsd32_msghdrp_t msg, int flags); }
9628	STD		{ netbsd32_ssize_t netbsd32_sendmsg(int s, const netbsd32_msghdrp_t msg, int flags); }
9729	STD		{ netbsd32_ssize_t netbsd32_recvfrom(int s, netbsd32_voidp buf, netbsd32_size_t len, int flags, netbsd32_sockaddrp_t from, netbsd32_intp fromlenaddr); }
9830	STD		{ int netbsd32_accept(int s, netbsd32_sockaddrp_t name, netbsd32_intp anamelen); }
9931	STD		{ int netbsd32_getpeername(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
10032	STD		{ int netbsd32_getsockname(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
10133	STD		{ int netbsd32_access(const netbsd32_charp path, int flags); }
10234	STD		{ int netbsd32_chflags(const netbsd32_charp path, netbsd32_u_long flags); }
10335	STD		{ int netbsd32_fchflags(int fd, netbsd32_u_long flags); }
10436	NOARGS		{ void sys_sync(void); }
10537	STD		{ int netbsd32_kill(int pid, int signum); }
10638	COMPAT_43	{ int netbsd32_stat43(const netbsd32_charp path, netbsd32_stat43p_t ub); }
10739	NOARGS		{ pid_t sys_getppid(void); }
10840	COMPAT_43	{ int netbsd32_lstat43(const netbsd32_charp path, netbsd32_stat43p_t ub); }
10941	STD		{ int netbsd32_dup(int fd); }
11042	NOARGS		{ int sys_pipe(void); }
11143	NOARGS		{ gid_t sys_getegid(void); }
11244	STD		{ int netbsd32_profil(netbsd32_caddr_t samples, netbsd32_size_t size, netbsd32_u_long offset, u_int scale); }
113#if defined(KTRACE) || !defined(_KERNEL)
11445	STD		{ int netbsd32_ktrace(const netbsd32_charp fname, int ops, int facs, int pid); }
115#else
11645	EXCL		netbsd32_ktrace
117#endif
11846	STD		{ int netbsd32_sigaction(int signum, const netbsd32_sigactionp_t nsa, netbsd32_sigactionp_t osa); }
11947	NOARGS		{ gid_t sys_getgid(void); }
12048	COMPAT_13	{ int netbsd32_sigprocmask(int how, \
121			    int mask); } sigprocmask13
12249	STD		{ int netbsd32___getlogin(netbsd32_charp namebuf, u_int namelen); }
12350	STD		{ int netbsd32_setlogin(const netbsd32_charp namebuf); }
12451	STD		{ int netbsd32_acct(const netbsd32_charp path); }
12552	COMPAT_13	{ int sys_sigpending(void); } sigpending13
12653	COMPAT_13	{ int netbsd32_sigaltstack13(const netbsd32_sigaltstack13p_t nss, netbsd32_sigaltstack13p_t oss); }
12754	STD		{ int netbsd32_ioctl(int fd, netbsd32_u_long com, ... netbsd32_voidp data); }
12855	COMPAT_12	{ int netbsd32_reboot(int opt); }
12956	STD		{ int netbsd32_revoke(const netbsd32_charp path); }
13057	STD		{ int netbsd32_symlink(const netbsd32_charp path, const netbsd32_charp link); }
13158	STD		{ int netbsd32_readlink(const netbsd32_charp path, netbsd32_charp buf, netbsd32_size_t count); }
13259	STD		{ int netbsd32_execve(const netbsd32_charp path, netbsd32_charpp argp, netbsd32_charpp envp); }
13360	STD		{ mode_t netbsd32_umask(mode_t newmask); }
13461	STD		{ int netbsd32_chroot(const netbsd32_charp path); }
13562	COMPAT_43	{ int netbsd32_fstat43(int fd, netbsd32_stat43p_t sb); }
13663	COMPAT_43	{ int netbsd32_ogetkerninfo(int op, netbsd32_charp where, netbsd32_intp size, int arg); }
13764	COMPAT_43	{ int sys_getpagesize(void); } ogetpagesize
13865	COMPAT_12	{ int netbsd32_msync(netbsd32_caddr_t addr, netbsd32_size_t len); }
139; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)?
14066	NOARGS		{ int sys_vfork(void); }
14167	OBSOL		vread
14268	OBSOL		vwrite
14369	STD		{ int netbsd32_sbrk(netbsd32_intptr_t incr); }
14470	STD		{ int netbsd32_sstk(int incr); }
14571	COMPAT_43	{ int netbsd32_ommap(netbsd32_caddr_t addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pos); }
14672	STD		{ int netbsd32_ovadvise(int anom); } vadvise
14773	STD		{ int netbsd32_munmap(netbsd32_voidp addr, netbsd32_size_t len); }
14874	STD		{ int netbsd32_mprotect(netbsd32_voidp addr, netbsd32_size_t len, int prot); }
14975	STD		{ int netbsd32_madvise(netbsd32_voidp addr, netbsd32_size_t len, int behav); }
15076	OBSOL		vhangup
15177	OBSOL		vlimit
15278	STD		{ int netbsd32_mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); }
15379	STD		{ int netbsd32_getgroups(int gidsetsize, netbsd32_gid_tp gidset); }
15480	STD		{ int netbsd32_setgroups(int gidsetsize, const netbsd32_gid_tp gidset); }
15581	NOARGS		{ int sys_getpgrp(void); }
15682	STD		{ int netbsd32_setpgid(int pid, int pgid); }
15783	STD		{ int netbsd32_setitimer(int which, const netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); }
15884	COMPAT_43	{ int sys_wait(void); } owait
15985	COMPAT_12	{ int netbsd32_oswapon(const netbsd32_charp name); }
16086	STD		{ int netbsd32_getitimer(int which, netbsd32_itimervalp_t itv); }
16187	COMPAT_43	{ int netbsd32_ogethostname(netbsd32_charp hostname, u_int len); }
16288	COMPAT_43	{ int netbsd32_osethostname(netbsd32_charp hostname, u_int len); }
16389	COMPAT_43	{ int sys_getdtablesize(void); } ogetdtablesize
16490	STD		{ int netbsd32_dup2(int from, int to); }
16591	UNIMPL		getdopt
16692	STD		{ int netbsd32_fcntl(int fd, int cmd, ... netbsd32_voidp arg); }
16793	STD		{ int netbsd32_select(int nd, netbsd32_fd_setp_t in, netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, netbsd32_timevalp_t tv); }
16894	UNIMPL		setdopt
16995	STD		{ int netbsd32_fsync(int fd); }
17096	STD		{ int netbsd32_setpriority(int which, int who, int prio); }
17197	COMPAT_30	{ int netbsd32_socket(int domain, int type, int protocol); }
17298	STD		{ int netbsd32_connect(int s, const netbsd32_sockaddrp_t name, int namelen); }
17399	COMPAT_43	{ int netbsd32_oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); }
174100	STD		{ int netbsd32_getpriority(int which, int who); }
175101	COMPAT_43	{ int netbsd32_osend(int s, netbsd32_caddr_t buf, int len, int flags); }
176102	COMPAT_43	{ int netbsd32_orecv(int s, netbsd32_caddr_t buf, int len, int flags); }
177103	COMPAT_13	{ int netbsd32_sigreturn(netbsd32_sigcontextp_t sigcntxp); } sigreturn13
178104	STD		{ int netbsd32_bind(int s, const netbsd32_sockaddrp_t name, int namelen); }
179105	STD		{ int netbsd32_setsockopt(int s, int level, int name, const netbsd32_voidp val, int valsize); }
180106	STD		{ int netbsd32_listen(int s, int backlog); }
181107	OBSOL		vtimes
182108	COMPAT_43	{ int netbsd32_osigvec(int signum, netbsd32_sigvecp_t nsv, netbsd32_sigvecp_t osv); }
183109	COMPAT_43	{ int netbsd32_sigblock(int mask); }
184110	COMPAT_43	{ int netbsd32_sigsetmask(int mask); }
185111	COMPAT_13	{ int netbsd32_sigsuspend(int mask); } sigsuspend13
186112	COMPAT_43	{ int netbsd32_osigstack(netbsd32_sigstackp_t nss, netbsd32_sigstackp_t oss); }
187113	COMPAT_43	{ int netbsd32_orecvmsg(int s, netbsd32_omsghdrp_t msg, int flags); }
188114	COMPAT_43	{ int netbsd32_osendmsg(int s, netbsd32_caddr_t msg, int flags); }
189115	OBSOL		vtrace
190116	STD		{ int netbsd32_gettimeofday(netbsd32_timevalp_t tp, netbsd32_timezonep_t tzp); }
191117	STD		{ int netbsd32_getrusage(int who, netbsd32_rusagep_t rusage); }
192118	STD		{ int netbsd32_getsockopt(int s, int level, int name, netbsd32_voidp val, netbsd32_intp avalsize); }
193119	OBSOL		resuba
194120	STD		{ netbsd32_ssize_t netbsd32_readv(int fd, const netbsd32_iovecp_t iovp, int iovcnt); }
195121	STD		{ netbsd32_ssize_t netbsd32_writev(int fd, const netbsd32_iovecp_t iovp, int iovcnt); }
196122	STD		{ int netbsd32_settimeofday(const netbsd32_timevalp_t tv, const netbsd32_timezonep_t tzp); }
197123	STD		{ int netbsd32_fchown(int fd, uid_t uid, gid_t gid); }
198124	STD		{ int netbsd32_fchmod(int fd, mode_t mode); }
199125	COMPAT_43	{ int netbsd32_orecvfrom(int s, netbsd32_caddr_t buf, netbsd32_size_t len, int flags, netbsd32_caddr_t from, netbsd32_intp fromlenaddr); }
200126	STD		{ int netbsd32_setreuid(uid_t ruid, uid_t euid); }
201127	STD		{ int netbsd32_setregid(gid_t rgid, gid_t egid); }
202128	STD		{ int netbsd32_rename(const netbsd32_charp from, const netbsd32_charp to); }
203129	COMPAT_43	{ int netbsd32_otruncate(const netbsd32_charp path, netbsd32_long length); }
204130	COMPAT_43	{ int netbsd32_oftruncate(int fd, netbsd32_long length); }
205131	STD		{ int netbsd32_flock(int fd, int how); }
206132	STD		{ int netbsd32_mkfifo(const netbsd32_charp path, mode_t mode); }
207133	STD		{ netbsd32_ssize_t netbsd32_sendto(int s, const netbsd32_voidp buf, netbsd32_size_t len, int flags, const netbsd32_sockaddrp_t to, int tolen); }
208134	STD		{ int netbsd32_shutdown(int s, int how); }
209135	STD		{ int netbsd32_socketpair(int domain, int type, int protocol, netbsd32_intp rsv); }
210136	STD		{ int netbsd32_mkdir(const netbsd32_charp path, mode_t mode); }
211137	STD		{ int netbsd32_rmdir(const netbsd32_charp path); }
212138	STD		{ int netbsd32_utimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); }
213139	OBSOL		4.2 sigreturn
214140	STD		{ int netbsd32_adjtime(const netbsd32_timevalp_t delta, netbsd32_timevalp_t olddelta); }
215141	COMPAT_43	{ int netbsd32_ogetpeername(int fdes, netbsd32_caddr_t asa, netbsd32_intp alen); }
216142	COMPAT_43	{ int32_t sys_gethostid(void); } ogethostid
217143	COMPAT_43	{ int netbsd32_sethostid(int32_t hostid); }
218144	COMPAT_43	{ int netbsd32_ogetrlimit(int which, netbsd32_orlimitp_t rlp); }
219145	COMPAT_43	{ int netbsd32_osetrlimit(int which, const netbsd32_orlimitp_t rlp); }
220146	COMPAT_43	{ int netbsd32_killpg(int pgid, int signum); }
221147	NOARGS		{ int sys_setsid(void); }
222148	STD		{ int netbsd32_quotactl(const netbsd32_charp path, int cmd, int uid, netbsd32_caddr_t arg); }
223149	COMPAT_43	{ int sys_quota(void); } oquota
224150	COMPAT_43	{ int netbsd32_ogetsockname(int fdec, netbsd32_caddr_t asa, netbsd32_intp alen); }
225
226; Syscalls 151-180 inclusive are reserved for vendor-specific
227; system calls.  (This includes various calls added for compatibity
228; with other Unix variants.)
229; Some of these calls are now supported by BSD...
230151	UNIMPL
231152	UNIMPL
232153	UNIMPL
233154	UNIMPL
234#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
235155	STD		{ int netbsd32_nfssvc(int flag, netbsd32_voidp argp); }
236#else
237155	EXCL		netbsd32_nfssvc
238#endif
239156	COMPAT_43	{ int netbsd32_ogetdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
240157	COMPAT_20	{ int netbsd32_statfs(const netbsd32_charp path, netbsd32_statfsp_t buf); }
241158	COMPAT_20	{ int netbsd32_fstatfs(int fd, netbsd32_statfsp_t buf); }
242159	UNIMPL
243160	UNIMPL
244161	COMPAT_30		{ int netbsd32_getfh(const netbsd32_charp fname, netbsd32_compat_30_fhandlep_t fhp); }
245162	COMPAT_09	{ int netbsd32_ogetdomainname(netbsd32_charp domainname, int len); }
246163	COMPAT_09	{ int netbsd32_osetdomainname(netbsd32_charp domainname, int len); }
247164	COMPAT_09	{ int netbsd32_uname(netbsd32_outsnamep_t name); }
248165	STD		{ int netbsd32_sysarch(int op, netbsd32_voidp parms); }
249166	UNIMPL
250167	UNIMPL
251168	UNIMPL
252#if defined(SYSVSEM) || !defined(_KERNEL)
253169	COMPAT_10	{ int netbsd32_sys_semsys(int which, int a2, int a3, int a4, int a5); } osemsys
254#else
255169	EXCL		netbsd32_sys_semsys
256#endif
257#if defined(SYSVMSG) || !defined(_KERNEL)
258170	COMPAT_10	{ int netbsd32_sys_msgsys(int which, int a2, int a3, int a4, int a5, int a6); } omsgsys
259#else
260170	EXCL		netbsd32_sys_msgsys
261#endif
262#if defined(SYSVSHM) || !defined(_KERNEL)
263171	COMPAT_10	{ int netbsd32_sys_shmsys(int which, int a2, int a3, int a4); } oshmsys
264#else
265171	EXCL		netbsd32_sys_shmsys
266#endif
267172	UNIMPL
268173	STD		{ netbsd32_ssize_t netbsd32_pread(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
269174	STD		{ netbsd32_ssize_t netbsd32_pwrite(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
270175	COMPAT_30	{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
271176	STD		{ int netbsd32_ntp_adjtime(netbsd32_timexp_t tp); }
272177	UNIMPL
273178	UNIMPL
274179	UNIMPL
275180	UNIMPL
276
277; Syscalls 180-199 are used by/reserved for BSD
278181	STD		{ int netbsd32_setgid(gid_t gid); }
279182	STD		{ int netbsd32_setegid(gid_t egid); }
280183	STD		{ int netbsd32_seteuid(uid_t euid); }
281#if defined(LFS) || !defined(_KERNEL)
282184	STD		{ int netbsd32_sys_lfs_bmapv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
283185	STD		{ int netbsd32_sys_lfs_markv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
284186	STD		{ int netbsd32_sys_lfs_segclean(netbsd32_fsid_tp_t fsidp, netbsd32_u_long segment); }
285187	STD		{ int netbsd32_sys_lfs_segwait(netbsd32_fsid_tp_t fsidp, netbsd32_timevalp_t tv); }
286#else
287184	EXCL		netbsd32_sys_lfs_bmapv
288185	EXCL		netbsd32_sys_lfs_markv
289186	EXCL		netbsd32_sys_lfs_segclean
290187	EXCL		netbsd32_sys_lfs_segwait
291#endif
292188	COMPAT_12	{ int netbsd32_stat12(const netbsd32_charp path, netbsd32_stat12p_t ub); }
293189	COMPAT_12	{ int netbsd32_fstat12(int fd, netbsd32_stat12p_t sb); }
294190	COMPAT_12	{ int netbsd32_lstat12(const netbsd32_charp path, netbsd32_stat12p_t ub); }
295191	STD		{ netbsd32_long netbsd32_pathconf(const netbsd32_charp path, int name); }
296192	STD		{ netbsd32_long netbsd32_fpathconf(int fd, int name); }
297193	UNIMPL
298194	STD		{ int netbsd32_getrlimit(int which, netbsd32_rlimitp_t rlp); }
299195	STD		{ int netbsd32_setrlimit(int which, const netbsd32_rlimitp_t rlp); }
300196	COMPAT_12	{ int netbsd32_getdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
301197	STD		{ netbsd32_voidp netbsd32_mmap(netbsd32_voidp addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pad, off_t pos); }
302198	INDIR		{ quad_t sys___syscall(quad_t num, ...); }
303199	STD		{ off_t netbsd32_lseek(int fd, int pad, off_t offset, int whence); }
304200	STD		{ int netbsd32_truncate(const netbsd32_charp path, int pad, off_t length); }
305201	STD		{ int netbsd32_ftruncate(int fd, int pad, off_t length); }
306202	STD		{ int netbsd32___sysctl(netbsd32_intp name, u_int namelen, netbsd32_voidp old, netbsd32_size_tp oldlenp, netbsd32_voidp new, netbsd32_size_t newlen); }
307203	STD		{ int netbsd32_mlock(const netbsd32_voidp addr, netbsd32_size_t len); }
308204	STD		{ int netbsd32_munlock(const netbsd32_voidp addr, netbsd32_size_t len); }
309205	STD		{ int netbsd32_undelete(const netbsd32_charp path); }
310206	STD		{ int netbsd32_futimes(int fd, const netbsd32_timevalp_t tptr); }
311207	STD		{ int netbsd32_getpgid(pid_t pid); }
312208	STD		{ int netbsd32_reboot(int opt, netbsd32_charp bootstr); }
313209	STD		{ int netbsd32_poll(netbsd32_pollfdp_t fds, u_int nfds, int timeout); }
314;
315; Syscalls 210-219 are reserved for dynamically loaded syscalls
316;
317#if defined(LKM) || !defined(_KERNEL)
318210	NODEF		{ int sys_lkmnosys(void); }
319211	NODEF		{ int sys_lkmnosys(void); }
320212	NODEF		{ int sys_lkmnosys(void); }
321213	NODEF		{ int sys_lkmnosys(void); }
322214	NODEF		{ int sys_lkmnosys(void); }
323215	NODEF		{ int sys_lkmnosys(void); }
324216	NODEF		{ int sys_lkmnosys(void); }
325217	NODEF		{ int sys_lkmnosys(void); }
326218	NODEF		{ int sys_lkmnosys(void); }
327219	NODEF		{ int sys_lkmnosys(void); }
328#else	/* !LKM || !_KERNEL */
329210	EXCL		lkmnosys
330211	EXCL		lkmnosys
331212	EXCL		lkmnosys
332213	EXCL		lkmnosys
333214	EXCL		lkmnosys
334215	EXCL		lkmnosys
335216	EXCL		lkmnosys
336217	EXCL		lkmnosys
337218	EXCL		lkmnosys
338219	EXCL		lkmnosys
339#endif	/* !LKM || !_KERNEL */
340; System calls 220-300 are reserved for use by NetBSD
341#if defined(SYSVSEM) || !defined(_KERNEL)
342220	COMPAT_14	{ int netbsd32___semctl(int semid, int semnum, int cmd, netbsd32_semunu_t arg); }
343221	STD		{ int netbsd32_semget(netbsd32_key_t key, int nsems, int semflg); }
344222	STD		{ int netbsd32_semop(int semid, netbsd32_sembufp_t sops, netbsd32_size_t nsops); }
345223	STD		{ int netbsd32_semconfig(int flag); }
346#else
347220	EXCL		compat_14_netbsd32_semctl
348221	EXCL		netbsd32_semget
349222	EXCL		netbsd32_semop
350223	EXCL		netbsd32_semconfig
351#endif
352#if defined(SYSVMSG) || !defined(_KERNEL)
353224	COMPAT_14	{ int netbsd32_msgctl(int msqid, int cmd, netbsd32_msqid_dsp_t buf); }
354225	STD		{ int netbsd32_msgget(netbsd32_key_t key, int msgflg); }
355226	STD		{ int netbsd32_msgsnd(int msqid, const netbsd32_voidp msgp, netbsd32_size_t msgsz, int msgflg); }
356227	STD		{ netbsd32_ssize_t netbsd32_msgrcv(int msqid, netbsd32_voidp msgp, netbsd32_size_t msgsz, netbsd32_long msgtyp, int msgflg); }
357#else
358224	EXCL		compat_14_netbsd32_msgctl
359225	EXCL		netbsd32_msgget
360226	EXCL		netbsd32_msgsnd
361227	EXCL		netbsd32_msgrcv
362#endif
363#if defined(SYSVSHM) || !defined(_KERNEL)
364228	STD		{ netbsd32_voidp netbsd32_shmat(int shmid, const netbsd32_voidp shmaddr, int shmflg); }
365229	COMPAT_14		{ int netbsd32_shmctl(int shmid, int cmd, netbsd32_shmid_dsp_t buf); }
366230	STD		{ int netbsd32_shmdt(const netbsd32_voidp shmaddr); }
367231	STD		{ int netbsd32_shmget(netbsd32_key_t key, netbsd32_size_t size, int shmflg); }
368#else
369228	EXCL		netbsd32_shmat
370229	EXCL		compat_14_netbsd32_shmctl
371230	EXCL		netbsd32_shmdt
372231	EXCL		netbsd32_shmget
373#endif
374232	STD		{ int netbsd32_clock_gettime(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
375233	STD		{ int netbsd32_clock_settime(netbsd32_clockid_t clock_id, const netbsd32_timespecp_t tp); }
376234	STD		{ int netbsd32_clock_getres(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
377235	STD		{ int netbsd32_timer_create(netbsd32_clockid_t clock_id, netbsd32_sigeventp_t evp, \
378			    netbsd32_timerp_t timerid); }
379236	STD		{ int netbsd32_timer_delete(netbsd32_timer_t timerid); }
380237	STD		{ int netbsd32_timer_settime(netbsd32_timer_t timerid, int flags, \
381			    const netbsd32_itimerspecp_t value, \
382			    netbsd32_itimerspecp_t ovalue); }
383238	STD		{ int netbsd32_timer_gettime(netbsd32_timer_t timerid, netbsd32_itimerspecp_t value); }
384239	STD		{ int netbsd32_timer_getoverrun(netbsd32_timer_t timerid); }
385;
386; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
387;
388240	STD		{ int netbsd32_nanosleep(const netbsd32_timespecp_t rqtp, netbsd32_timespecp_t rmtp); }
389241	STD		{ int netbsd32_fdatasync(int fd); }
390242	STD		{ int netbsd32_mlockall(int flags); }
391243	NOARGS		{ int sys_munlockall(void); }
392244	STD		{ int netbsd32___sigtimedwait(const netbsd32_sigsetp_t set, \
393			    netbsd32_siginfop_t info, \
394			    netbsd32_timespecp_t timeout); }
395245	UNIMPL
396246	UNIMPL
397#if defined(P1003_1B_SEMAPHORE) || (!defined(_KERNEL) && defined(_LIBC))
398247	STD		{ int netbsd32__ksem_init(unsigned int value, netbsd32_semidp_t idp); }
399248	STD		{ int netbsd32__ksem_open(const netbsd32_charp name, int oflag, \
400			    mode_t mode, unsigned int value, netbsd32_semidp_t idp); }
401249	STD		{ int netbsd32__ksem_unlink(const netbsd32_charp name); }
402250	STD		{ int netbsd32__ksem_close(netbsd32_semid_t id); }
403251	STD		{ int netbsd32__ksem_post(netbsd32_semid_t id); }
404252	STD		{ int netbsd32__ksem_wait(netbsd32_semid_t id); }
405253	STD		{ int netbsd32__ksem_trywait(netbsd32_semid_t id); }
406254	STD		{ int netbsd32__ksem_getvalue(netbsd32_semid_t id, \
407			    netbsd32_intp value); }
408255	STD		{ int netbsd32__ksem_destroy(netbsd32_semid_t id); }
409256	UNIMPL		sys__ksem_timedwait
410#else
411247	EXCL		sys__ksem_init
412248	EXCL		sys__ksem_open
413249	EXCL 		sys__ksem_unlink
414250	EXCL		sys__ksem_close
415251	EXCL		sys__ksem_post
416252	EXCL		sys__ksem_wait
417253	EXCL		sys__ksem_trywait
418254	EXCL		sys__ksem_getvalue
419255	EXCL		sys__ksem_destroy
420256	UNIMPL		sys__ksem_timedwait
421#endif
422257	UNIMPL
423258	UNIMPL
424259	UNIMPL
425260	UNIMPL
426261	UNIMPL
427262	UNIMPL
428263	UNIMPL
429264	UNIMPL
430265	UNIMPL
431266	UNIMPL
432267	UNIMPL
433268	UNIMPL
434269	UNIMPL
435270	STD		{ int netbsd32___posix_rename(const netbsd32_charp from, const netbsd32_charp to); }
436271	STD		{ int netbsd32_swapctl(int cmd, netbsd32_voidp arg, int misc); }
437272	COMPAT_30	{ int netbsd32_getdents(int fd, netbsd32_charp buf, netbsd32_size_t count); }
438273	STD		{ int netbsd32_minherit(netbsd32_voidp addr, netbsd32_size_t len, int inherit); }
439274	STD		{ int netbsd32_lchmod(const netbsd32_charp path, mode_t mode); }
440275	STD		{ int netbsd32_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); }
441276	STD		{ int netbsd32_lutimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); }
442277	STD		{ int netbsd32___msync13(netbsd32_voidp addr, netbsd32_size_t len, int flags); }
443278	COMPAT_30	{ int netbsd32___stat13(const netbsd32_charp path, netbsd32_stat13p_t ub); }
444279	COMPAT_30	{ int netbsd32___fstat13(int fd, netbsd32_stat13p_t sb); }
445280	COMPAT_30	{ int netbsd32___lstat13(const netbsd32_charp path, netbsd32_stat13p_t ub); }
446281	STD		{ int netbsd32___sigaltstack14(const netbsd32_sigaltstackp_t nss, netbsd32_sigaltstackp_t oss); }
447282	NOARGS		{ int sys___vfork14(void); }
448283	STD		{ int netbsd32___posix_chown(const netbsd32_charp path, uid_t uid, gid_t gid); }
449284	STD		{ int netbsd32___posix_fchown(int fd, uid_t uid, gid_t gid); }
450285	STD		{ int netbsd32___posix_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); }
451286	STD		{ pid_t netbsd32_getsid(pid_t pid); }
452287	STD		{ int netbsd32___clone(int flags, netbsd32_voidp stack); }
453#if defined(KTRACE) || !defined(_KERNEL)
454288	STD		{ int netbsd32_fktrace(const int fd, int ops, int facs, int pid); }
455#else
456288	EXCL		netbsd32_fktrace
457#endif
458289	STD		{ netbsd32_ssize_t netbsd32_preadv(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
459290	STD		{ netbsd32_ssize_t netbsd32_pwritev(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
460291	STD		{ int netbsd32___sigaction14(int signum, \
461			    const netbsd32_sigactionp_t nsa, \
462			    netbsd32_sigactionp_t osa); }
463292	STD		{ int netbsd32___sigpending14(netbsd32_sigsetp_t set); }
464293	STD		{ int netbsd32___sigprocmask14(int how, \
465			    const netbsd32_sigsetp_t set, \
466			    netbsd32_sigsetp_t oset); }
467294	STD		{ int netbsd32___sigsuspend14(const netbsd32_sigsetp_t set); }
468295	COMPAT_16	{ int netbsd32___sigreturn14(netbsd32_sigcontextp_t sigcntxp); }
469296	STD		{ int netbsd32___getcwd(netbsd32_charp bufp, netbsd32_size_t length); }
470297	STD		{ int netbsd32_fchroot(int fd); }
471298	COMPAT_30	{ int netbsd32_fhopen(const netbsd32_fhandlep_t fhp, \
472			   int flags); }
473299	COMPAT_30	{ int netbsd32_fhstat(const netbsd32_fhandlep_t fhp, \
474			    netbsd32_stat13p_t sb); }
475300	COMPAT_20	{ int netbsd32_fhstatfs(netbsd32_fhandlep_t fhp, \
476			    netbsd32_statp_t buf); }
477#if defined(SYSVSEM) || !defined(_KERNEL)
478301	STD		{ int netbsd32___semctl14(int semid, int semnum, int cmd, \
479			    ... netbsd32_semunp_t arg); }
480#else
481301	EXCL		__semctl14
482#endif
483#if defined(SYSVMSG) || !defined(_KERNEL)
484302	STD		{ int netbsd32___msgctl13(int msqid, int cmd, \
485			    netbsd32_msqid_dsp_t buf); }
486#else
487302	EXCL		__msgctl13
488#endif
489#if defined(SYSVSHM) || !defined(_KERNEL)
490303	STD		{ int netbsd32___shmctl13(int shmid, int cmd, \
491			    netbsd32_shmid_dsp_t buf); }
492#else
493303	EXCL		__shmctl13
494#endif
495304	STD		{ int netbsd32_lchflags(const netbsd32_charp path, netbsd32_u_long flags); }
496305	STD		{ int sys_issetugid(void); }
497306	STD		{ int netbsd32_utrace(const netbsd32_charp label, netbsd32_voidp addr, \
498			    netbsd32_size_t len); }
499307	STD		{ int netbsd32_getcontext(netbsd32_ucontextp ucp); }
500308	STD		{ int netbsd32_setcontext(netbsd32_ucontextp ucp, \
501			    uint32_t flags, netbsd32_lwpidp new_lwp); }
502309	STD		{ int netbsd32__lwp_create(const netbsd32_ucontextp ucp, \
503			    netbsd32_u_long flags, netbsd32_lwpidp new_lwp); }
504310	NOARGS		{ int sys__lwp_exit(void); }
505311	NOARGS		{ lwpid_t sys__lwp_self(void); }
506312	STD		{ int netbsd32__lwp_wait(lwpid_t wait_for, \
507			    netbsd32_lwpidp departed); }
508313	STD		{ int netbsd32__lwp_suspend(lwpid_t target); }
509314	STD		{ int netbsd32__lwp_continue(lwpid_t target); }
510315	STD		{ int netbsd32__lwp_wakeup(lwpid_t target); }
511316	NOARGS		{ void *sys__lwp_getprivate(void); }
512317	STD		{ void netbsd32__lwp_setprivate(netbsd32_voidp ptr); }
513318	STD		{ int netbsd32__lwp_kill(lwpid_t target, int signo); }
514319	STD		{ int netbsd32__lwp_detach(lwpid_t target); }
515320	STD		{ int netbsd32__lwp_park(const netbsd32_timespecp_t ts, \
516				netbsd32_ucontextp ucp, const netbsd32_voidp hint); }
517321	STD		{ int netbsd32__lwp_unpark(lwpid_t target, const netbsd32_voidp hint); }
518322	STD		{ netbsd32_size_t netbsd32__lwp_unpark_all(const netbsd32_lwpidp targets, \
519				netbsd32_size_t ntargets, const netbsd32_voidp hint); }
520323	UNIMPL
521324	UNIMPL
522325	UNIMPL
523326	UNIMPL
524327	UNIMPL
525328	UNIMPL
526329	UNIMPL
527330	OBSOL		netbsd32_sa_register
528331	OBSOL		netbsd32_sa_stacks
529332	OBSOL		sys_sa_enable
530333	OBSOL		netbsd32_sa_setconcurrency
531334	OBSOL		sys_sa_yield
532335	OBSOL		netbsd32_sa_preempt
533336	OBSOL		sys_sa_unblockyield
534337	UNIMPL
535338	UNIMPL
536339	UNIMPL
537340	STD		{ int netbsd32___sigaction_sigtramp(int signum, \
538			    const netbsd32_sigactionp_t nsa, \
539			    netbsd32_sigactionp_t osa, \
540			    netbsd32_voidp tramp, int vers); }
541341	UNIMPL
542342	UNIMPL
543343	STD		{ int netbsd32_rasctl(netbsd32_caddr_t addr, netbsd32_size_t len, \
544			    int op); }
545344	NOARGS		{ int sys_kqueue(void); }
546345	STD		{ int netbsd32_kevent(int fd, \
547			    netbsd32_keventp_t changelist, netbsd32_size_t nchanges, \
548			    netbsd32_keventp_t eventlist, netbsd32_size_t nevents, \
549			    netbsd32_timespecp_t timeout); }
550346	UNIMPL
551347	UNIMPL
552348	UNIMPL
553349	UNIMPL
554350	NOARGS MPSAFE	{ int sys_sched_yield(void); }
555351	UNIMPL
556352	UNIMPL
557353	UNIMPL
558354	STD		{ int netbsd32_fsync_range(int fd, int flags, off_t start, \
559			    off_t length); }
560355	STD		{ int netbsd32_uuidgen(netbsd32_uuidp_t store, int count); }
561356	STD		{ int netbsd32_getvfsstat(netbsd32_statvfsp_t buf, \
562			    netbsd32_size_t bufsize, int flags); }
563357	STD		{ int netbsd32_statvfs1(const netbsd32_charp path, \
564			    netbsd32_statvfsp_t buf, int flags); }
565358	STD		{ int netbsd32_fstatvfs1(int fd, netbsd32_statvfsp_t buf, \
566			    int flags); }
567359	COMPAT_30	{ int netbsd32_fhstatvfs1(const netbsd32_fhandlep_t fhp, \
568			    netbsd32_statvfsp_t buf, int flags); }
569360	STD		{ int netbsd32_extattrctl(const netbsd32_charp path, \
570			    int cmd, const netbsd32_charp filename, int attrnamespace, \
571			    const netbsd32_charp attrname); }
572361	STD		{ int netbsd32_extattr_set_file(const netbsd32_charp path, \
573			    int attrnamespace, const netbsd32_charp attrname, \
574			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
575362	STD		{ int netbsd32_extattr_get_file(const netbsd32_charp path, \
576			    int attrnamespace, const netbsd32_charp attrname, \
577			    netbsd32_voidp data, netbsd32_size_t nbytes); }
578363	STD		{ int netbsd32_extattr_delete_file(const netbsd32_charp path, \
579			    int attrnamespace, const netbsd32_charp attrname); }
580364	STD		{ int netbsd32_extattr_set_fd(int fd, \
581			    int attrnamespace, const netbsd32_charp attrname, \
582			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
583365	STD		{ int netbsd32_extattr_get_fd(int fd, \
584			    int attrnamespace, const netbsd32_charp attrname, \
585			    netbsd32_voidp data, netbsd32_size_t nbytes); }
586366	STD		{ int netbsd32_extattr_delete_fd(int fd, \
587			    int attrnamespace, const netbsd32_charp attrname); }
588367	STD		{ int netbsd32_extattr_set_link(const netbsd32_charp path, \
589			    int attrnamespace, const netbsd32_charp attrname, \
590			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
591368	STD		{ int netbsd32_extattr_get_link(const netbsd32_charp path, \
592			    int attrnamespace, const netbsd32_charp attrname, \
593			    netbsd32_voidp data, netbsd32_size_t nbytes); }
594369	STD		{ int netbsd32_extattr_delete_link(const netbsd32_charp path, \
595			    int attrnamespace, const netbsd32_charp attrname); }
596370	STD		{ int netbsd32_extattr_list_fd(int fd, \
597			    int attrnamespace, netbsd32_voidp data, \
598			    netbsd32_size_t nbytes); }
599371	STD		{ int netbsd32_extattr_list_file(const netbsd32_charp path, \
600			    int attrnamespace, netbsd32_voidp data, \
601			    netbsd32_size_t nbytes); }
602372	STD		{ int netbsd32_extattr_list_link(const netbsd32_charp path, \
603			    int attrnamespace, netbsd32_voidp data, \
604			    netbsd32_size_t nbytes); }
605373	STD		{ int netbsd32_pselect(int nd, netbsd32_fd_setp_t in, \
606			    netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \
607			    const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); }
608374	STD		{ int netbsd32_pollts(netbsd32_pollfdp_t fds, u_int nfds, \
609			    const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); }
610375	STD		{ int netbsd32_setxattr(const netbsd32_charp path, \
611			    const netbsd32_charp name, netbsd32_voidp value, \
612			    netbsd32_size_t size, int flags); }
613376	STD		{ int netbsd32_lsetxattr(const netbsd32_charp path, \
614			    const netbsd32_charp name, netbsd32_voidp value, \
615			    netbsd32_size_t size, int flags); }
616377	STD		{ int netbsd32_fsetxattr(int fd, \
617			    const netbsd32_charp name, netbsd32_voidp value, \
618			    netbsd32_size_t size, int flags); }
619378	STD		{ int netbsd32_getxattr(const netbsd32_charp path, \
620			    const netbsd32_charp name, netbsd32_voidp value, \
621			    netbsd32_size_t size); }
622379	STD		{ int netbsd32_lgetxattr(const netbsd32_charp path, \
623			    const netbsd32_charp name, netbsd32_voidp value, \
624			    netbsd32_size_t size); }
625380	STD		{ int netbsd32_fgetxattr(int fd, \
626			    const netbsd32_charp name, netbsd32_voidp value, \
627			    netbsd32_size_t size); }
628381	STD		{ int netbsd32_listxattr(const netbsd32_charp path, \
629			    netbsd32_charp list, netbsd32_size_t size); }
630382	STD		{ int netbsd32_llistxattr(const netbsd32_charp path, \
631			    netbsd32_charp list, netbsd32_size_t size); }
632383	STD		{ int netbsd32_flistxattr(int fd, \
633			    netbsd32_charp list, netbsd32_size_t size); }
634384	STD		{ int netbsd32_removexattr(const netbsd32_charp path, \
635			    const netbsd32_charp name); }
636385	STD		{ int netbsd32_lremovexattr(const netbsd32_charp path, \
637			    const netbsd32_charp name); }
638386	STD		{ int netbsd32_fremovexattr(int fd, \
639			    const netbsd32_charp name); }
640387     STD             { int netbsd32_sys___stat30(const netbsd32_charp path, \
641			    netbsd32_statp_t ub); }
642388     STD             { int netbsd32_sys___fstat30(int fd, \
643			    netbsd32_statp_t sb); }
644389     STD             { int netbsd32_sys___lstat30( \
645			    const netbsd32_charp path, netbsd32_statp_t ub); }
646390     STD             { int netbsd32_sys___getdents30(int fd, \
647			    netbsd32_charp buf, netbsd32_size_t count); }
648391	NOARGS		{ int sys_posix_fadvise(int fd, off_t offset, \
649			    off_t len, int advice); }
650392	COMPAT_30	{ int netbsd32_sys___fhstat30( \
651			    const netbsd32_fhandlep_t fhp, \
652			    netbsd32_statp_t sb); }
653393	STD		{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
654394	STD		{ int netbsd32_sys___socket30(int domain, int type, int protocol); }
655395	STD		{ int netbsd32___getfh30(const netbsd32_charp fname, netbsd32_pointer_t fhp, netbsd32_size_tp fh_size); }
656396	STD		{ int netbsd32___fhopen40(const netbsd32_pointer_t fhp, \
657			    netbsd32_size_t fh_size, int flags); }
658397	STD		{ int netbsd32___fhstatvfs140(	\
659			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
660			    netbsd32_statvfsp_t buf, int flags); }
661398	STD		{ int netbsd32___fhstat40(	\
662			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
663			    netbsd32_statp_t sb); }
664