xref: /netbsd-src/sys/compat/netbsd32/syscalls.master (revision ce2c90c7c172d95d2402a5b3d96d8f8e6d138a21)
1	$NetBSD: syscalls.master,v 1.53 2006/09/01 20:58:18 matt 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/sa.h>
56#include <sys/syscallargs.h>
57
58#include <compat/netbsd32/netbsd32.h>
59#include <compat/netbsd32/netbsd32_syscallargs.h>
60
61%%
62
63; Reserved/unimplemented system calls in the range 0-150 inclusive
64; are reserved for use in future Berkeley releases.
65; Additional system calls implemented in vendor and other
66; redistributions should be placed in the reserved range at the end
67; of the current calls.
68
690	INDIR		{ int sys_syscall(int number, ...); }
701	STD		{ void netbsd32_exit(int rval); }
712	NOARGS		{ int sys_fork(void); }
723	STD		{ netbsd32_ssize_t netbsd32_read(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte); }
734	STD		{ netbsd32_ssize_t netbsd32_write(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte); }
745	STD		{ int netbsd32_open(const netbsd32_charp path, int flags, ... mode_t mode); }
756	STD		{ int netbsd32_close(int fd); }
767	STD		{ int netbsd32_wait4(int pid, netbsd32_intp status, int options, netbsd32_rusagep_t rusage); }
778	COMPAT_43	{ int netbsd32_ocreat(const netbsd32_charp path, mode_t mode); }
789	STD		{ int netbsd32_link(const netbsd32_charp path, const netbsd32_charp link); }
7910	STD		{ int netbsd32_unlink(const netbsd32_charp path); }
8011	OBSOL		execv
8112	STD		{ int netbsd32_chdir(const netbsd32_charp path); }
8213	STD		{ int netbsd32_fchdir(int fd); }
8314	STD		{ int netbsd32_mknod(const netbsd32_charp path, mode_t mode, dev_t dev); }
8415	STD		{ int netbsd32_chmod(const netbsd32_charp path, mode_t mode); }
8516	STD		{ int netbsd32_chown(const netbsd32_charp path, uid_t uid, gid_t gid); }
8617	STD		{ int netbsd32_break(netbsd32_charp nsize); }
8718	COMPAT_20	{ int netbsd32_getfsstat(netbsd32_statfsp_t buf, netbsd32_long bufsize, int flags); }
8819	COMPAT_43	{ netbsd32_long netbsd32_olseek(int fd, netbsd32_long offset, int whence); }
8920	NOARGS MPSAFE	{ pid_t sys_getpid(void); }
9021	STD		{ int netbsd32_mount(const netbsd32_charp type, const netbsd32_charp path, int flags, netbsd32_voidp data); }
9122	STD		{ int netbsd32_unmount(const netbsd32_charp path, int flags); }
9223	STD		{ int netbsd32_setuid(uid_t uid); }
9324	NOARGS		{ uid_t sys_getuid(void); }
9425	NOARGS		{ uid_t sys_geteuid(void); }
9526	STD		{ int netbsd32_ptrace(int req, pid_t pid, netbsd32_caddr_t addr, int data); }
9627	STD		{ netbsd32_ssize_t netbsd32_recvmsg(int s, netbsd32_msghdrp_t msg, int flags); }
9728	STD		{ netbsd32_ssize_t netbsd32_sendmsg(int s, const netbsd32_msghdrp_t msg, int flags); }
9829	STD		{ netbsd32_ssize_t netbsd32_recvfrom(int s, netbsd32_voidp buf, netbsd32_size_t len, int flags, netbsd32_sockaddrp_t from, netbsd32_intp fromlenaddr); }
9930	STD		{ int netbsd32_accept(int s, netbsd32_sockaddrp_t name, netbsd32_intp anamelen); }
10031	STD		{ int netbsd32_getpeername(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
10132	STD		{ int netbsd32_getsockname(int fdes, netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
10233	STD		{ int netbsd32_access(const netbsd32_charp path, int flags); }
10334	STD		{ int netbsd32_chflags(const netbsd32_charp path, netbsd32_u_long flags); }
10435	STD		{ int netbsd32_fchflags(int fd, netbsd32_u_long flags); }
10536	NOARGS		{ void sys_sync(void); }
10637	STD		{ int netbsd32_kill(int pid, int signum); }
10738	COMPAT_43	{ int netbsd32_stat43(const netbsd32_charp path, netbsd32_stat43p_t ub); }
10839	NOARGS		{ pid_t sys_getppid(void); }
10940	COMPAT_43	{ int netbsd32_lstat43(const netbsd32_charp path, netbsd32_stat43p_t ub); }
11041	STD		{ int netbsd32_dup(int fd); }
11142	NOARGS		{ int sys_pipe(void); }
11243	NOARGS		{ gid_t sys_getegid(void); }
11344	STD		{ int netbsd32_profil(netbsd32_caddr_t samples, netbsd32_size_t size, netbsd32_u_long offset, u_int scale); }
114#if defined(KTRACE) || !defined(_KERNEL)
11545	STD		{ int netbsd32_ktrace(const netbsd32_charp fname, int ops, int facs, int pid); }
116#else
11745	EXCL		netbsd32_ktrace
118#endif
11946	STD		{ int netbsd32_sigaction(int signum, const netbsd32_sigactionp_t nsa, netbsd32_sigactionp_t osa); }
12047	NOARGS		{ gid_t sys_getgid(void); }
12148	COMPAT_13	{ int netbsd32_sigprocmask(int how, \
122			    int mask); } sigprocmask13
12349	STD		{ int netbsd32___getlogin(netbsd32_charp namebuf, u_int namelen); }
12450	STD		{ int netbsd32_setlogin(const netbsd32_charp namebuf); }
12551	STD		{ int netbsd32_acct(const netbsd32_charp path); }
12652	COMPAT_13	{ int sys_sigpending(void); } sigpending13
12753	COMPAT_13	{ int netbsd32_sigaltstack13(const netbsd32_sigaltstack13p_t nss, netbsd32_sigaltstack13p_t oss); }
12854	STD		{ int netbsd32_ioctl(int fd, netbsd32_u_long com, ... netbsd32_voidp data); }
12955	COMPAT_12	{ int netbsd32_reboot(int opt); }
13056	STD		{ int netbsd32_revoke(const netbsd32_charp path); }
13157	STD		{ int netbsd32_symlink(const netbsd32_charp path, const netbsd32_charp link); }
13258	STD		{ int netbsd32_readlink(const netbsd32_charp path, netbsd32_charp buf, netbsd32_size_t count); }
13359	STD		{ int netbsd32_execve(const netbsd32_charp path, netbsd32_charpp argp, netbsd32_charpp envp); }
13460	STD		{ mode_t netbsd32_umask(mode_t newmask); }
13561	STD		{ int netbsd32_chroot(const netbsd32_charp path); }
13662	COMPAT_43	{ int netbsd32_fstat43(int fd, netbsd32_stat43p_t sb); }
13763	COMPAT_43	{ int netbsd32_ogetkerninfo(int op, netbsd32_charp where, netbsd32_intp size, int arg); }
13864	COMPAT_43	{ int sys_getpagesize(void); } ogetpagesize
13965	COMPAT_12	{ int netbsd32_msync(netbsd32_caddr_t addr, netbsd32_size_t len); }
140; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)?
14166	NOARGS		{ int sys_vfork(void); }
14267	OBSOL		vread
14368	OBSOL		vwrite
14469	STD		{ int netbsd32_sbrk(netbsd32_intptr_t incr); }
14570	STD		{ int netbsd32_sstk(int incr); }
14671	COMPAT_43	{ int netbsd32_ommap(netbsd32_caddr_t addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pos); }
14772	STD		{ int netbsd32_ovadvise(int anom); } vadvise
14873	STD		{ int netbsd32_munmap(netbsd32_voidp addr, netbsd32_size_t len); }
14974	STD		{ int netbsd32_mprotect(netbsd32_voidp addr, netbsd32_size_t len, int prot); }
15075	STD		{ int netbsd32_madvise(netbsd32_voidp addr, netbsd32_size_t len, int behav); }
15176	OBSOL		vhangup
15277	OBSOL		vlimit
15378	STD		{ int netbsd32_mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); }
15479	STD		{ int netbsd32_getgroups(int gidsetsize, netbsd32_gid_tp gidset); }
15580	STD		{ int netbsd32_setgroups(int gidsetsize, const netbsd32_gid_tp gidset); }
15681	NOARGS		{ int sys_getpgrp(void); }
15782	STD		{ int netbsd32_setpgid(int pid, int pgid); }
15883	STD		{ int netbsd32_setitimer(int which, const netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); }
15984	COMPAT_43	{ int sys_wait(void); } owait
16085	COMPAT_12	{ int netbsd32_oswapon(const netbsd32_charp name); }
16186	STD		{ int netbsd32_getitimer(int which, netbsd32_itimervalp_t itv); }
16287	COMPAT_43	{ int netbsd32_ogethostname(netbsd32_charp hostname, u_int len); }
16388	COMPAT_43	{ int netbsd32_osethostname(netbsd32_charp hostname, u_int len); }
16489	COMPAT_43	{ int sys_getdtablesize(void); } ogetdtablesize
16590	STD		{ int netbsd32_dup2(int from, int to); }
16691	UNIMPL		getdopt
16792	STD		{ int netbsd32_fcntl(int fd, int cmd, ... netbsd32_voidp arg); }
16893	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); }
16994	UNIMPL		setdopt
17095	STD		{ int netbsd32_fsync(int fd); }
17196	STD		{ int netbsd32_setpriority(int which, int who, int prio); }
17297	COMPAT_30	{ int netbsd32_socket(int domain, int type, int protocol); }
17398	STD		{ int netbsd32_connect(int s, const netbsd32_sockaddrp_t name, int namelen); }
17499	COMPAT_43	{ int netbsd32_oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); }
175100	STD		{ int netbsd32_getpriority(int which, int who); }
176101	COMPAT_43	{ int netbsd32_osend(int s, netbsd32_caddr_t buf, int len, int flags); }
177102	COMPAT_43	{ int netbsd32_orecv(int s, netbsd32_caddr_t buf, int len, int flags); }
178103	COMPAT_13	{ int netbsd32_sigreturn(netbsd32_sigcontextp_t sigcntxp); } sigreturn13
179104	STD		{ int netbsd32_bind(int s, const netbsd32_sockaddrp_t name, int namelen); }
180105	STD		{ int netbsd32_setsockopt(int s, int level, int name, const netbsd32_voidp val, int valsize); }
181106	STD		{ int netbsd32_listen(int s, int backlog); }
182107	OBSOL		vtimes
183108	COMPAT_43	{ int netbsd32_osigvec(int signum, netbsd32_sigvecp_t nsv, netbsd32_sigvecp_t osv); }
184#if defined(COMPAT_43) || defined(COMPAT_SUNOS)
185109	COMPAT_43	{ int netbsd32_sigblock(int mask); }
186110	COMPAT_43	{ int netbsd32_sigsetmask(int mask); }
187#else
188109	OBSOL		sigblock
189110	OBSOL		sigsetmask
190#endif
191111	COMPAT_13	{ int netbsd32_sigsuspend(int mask); } sigsuspend13
192112	COMPAT_43	{ int netbsd32_osigstack(netbsd32_sigstackp_t nss, netbsd32_sigstackp_t oss); }
193113	COMPAT_43	{ int netbsd32_orecvmsg(int s, netbsd32_omsghdrp_t msg, int flags); }
194114	COMPAT_43	{ int netbsd32_osendmsg(int s, netbsd32_caddr_t msg, int flags); }
195115	OBSOL		vtrace
196116	STD		{ int netbsd32_gettimeofday(netbsd32_timevalp_t tp, netbsd32_timezonep_t tzp); }
197117	STD		{ int netbsd32_getrusage(int who, netbsd32_rusagep_t rusage); }
198118	STD		{ int netbsd32_getsockopt(int s, int level, int name, netbsd32_voidp val, netbsd32_intp avalsize); }
199119	OBSOL		resuba
200120	STD		{ netbsd32_ssize_t netbsd32_readv(int fd, const netbsd32_iovecp_t iovp, int iovcnt); }
201121	STD		{ netbsd32_ssize_t netbsd32_writev(int fd, const netbsd32_iovecp_t iovp, int iovcnt); }
202122	STD		{ int netbsd32_settimeofday(const netbsd32_timevalp_t tv, const netbsd32_timezonep_t tzp); }
203123	STD		{ int netbsd32_fchown(int fd, uid_t uid, gid_t gid); }
204124	STD		{ int netbsd32_fchmod(int fd, mode_t mode); }
205125	COMPAT_43	{ int netbsd32_orecvfrom(int s, netbsd32_caddr_t buf, netbsd32_size_t len, int flags, netbsd32_caddr_t from, netbsd32_intp fromlenaddr); }
206126	STD		{ int netbsd32_setreuid(uid_t ruid, uid_t euid); }
207127	STD		{ int netbsd32_setregid(gid_t rgid, gid_t egid); }
208128	STD		{ int netbsd32_rename(const netbsd32_charp from, const netbsd32_charp to); }
209129	COMPAT_43	{ int netbsd32_otruncate(const netbsd32_charp path, netbsd32_long length); }
210130	COMPAT_43	{ int netbsd32_oftruncate(int fd, netbsd32_long length); }
211131	STD		{ int netbsd32_flock(int fd, int how); }
212132	STD		{ int netbsd32_mkfifo(const netbsd32_charp path, mode_t mode); }
213133	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); }
214134	STD		{ int netbsd32_shutdown(int s, int how); }
215135	STD		{ int netbsd32_socketpair(int domain, int type, int protocol, netbsd32_intp rsv); }
216136	STD		{ int netbsd32_mkdir(const netbsd32_charp path, mode_t mode); }
217137	STD		{ int netbsd32_rmdir(const netbsd32_charp path); }
218138	STD		{ int netbsd32_utimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); }
219139	OBSOL		4.2 sigreturn
220140	STD		{ int netbsd32_adjtime(const netbsd32_timevalp_t delta, netbsd32_timevalp_t olddelta); }
221141	COMPAT_43	{ int netbsd32_ogetpeername(int fdes, netbsd32_caddr_t asa, netbsd32_intp alen); }
222142	COMPAT_43	{ int32_t sys_gethostid(void); } ogethostid
223#if defined(COMPAT_43) || defined(COMPAT_SUNOS)
224143	COMPAT_43	{ int netbsd32_sethostid(int32_t hostid); }
225#else
226143	OBSOL		sethostid
227#endif
228144	COMPAT_43	{ int netbsd32_ogetrlimit(int which, netbsd32_orlimitp_t rlp); }
229145	COMPAT_43	{ int netbsd32_osetrlimit(int which, const netbsd32_orlimitp_t rlp); }
230#if defined(COMPAT_43) || defined(COMPAT_SUNOS)
231146	COMPAT_43	{ int netbsd32_killpg(int pgid, int signum); }
232#else
233146	OBSOL		killpg
234#endif
235147	NOARGS		{ int sys_setsid(void); }
236148	STD		{ int netbsd32_quotactl(const netbsd32_charp path, int cmd, int uid, netbsd32_caddr_t arg); }
237149	COMPAT_43	{ int sys_quota(void); } oquota
238150	COMPAT_43	{ int netbsd32_ogetsockname(int fdec, netbsd32_caddr_t asa, netbsd32_intp alen); }
239
240; Syscalls 151-180 inclusive are reserved for vendor-specific
241; system calls.  (This includes various calls added for compatibity
242; with other Unix variants.)
243; Some of these calls are now supported by BSD...
244151	UNIMPL
245152	UNIMPL
246153	UNIMPL
247154	UNIMPL
248#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
249155	STD		{ int netbsd32_nfssvc(int flag, netbsd32_voidp argp); }
250#else
251155	EXCL		netbsd32_nfssvc
252#endif
253156	COMPAT_43	{ int netbsd32_ogetdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
254157	COMPAT_20	{ int netbsd32_statfs(const netbsd32_charp path, netbsd32_statfsp_t buf); }
255158	COMPAT_20	{ int netbsd32_fstatfs(int fd, netbsd32_statfsp_t buf); }
256159	UNIMPL
257160	UNIMPL
258161	COMPAT_30		{ int netbsd32_getfh(const netbsd32_charp fname, netbsd32_compat_30_fhandlep_t fhp); }
259162	COMPAT_09	{ int netbsd32_ogetdomainname(netbsd32_charp domainname, int len); }
260163	COMPAT_09	{ int netbsd32_osetdomainname(netbsd32_charp domainname, int len); }
261164	COMPAT_09	{ int netbsd32_uname(netbsd32_outsnamep_t name); }
262165	STD		{ int netbsd32_sysarch(int op, netbsd32_voidp parms); }
263166	UNIMPL
264167	UNIMPL
265168	UNIMPL
266#if defined(SYSVSEM) || !defined(_KERNEL)
267169	COMPAT_10	{ int netbsd32_sys_semsys(int which, int a2, int a3, int a4, int a5); } osemsys
268#else
269169	EXCL		netbsd32_sys_semsys
270#endif
271#if defined(SYSVMSG) || !defined(_KERNEL)
272170	COMPAT_10	{ int netbsd32_sys_msgsys(int which, int a2, int a3, int a4, int a5, int a6); } omsgsys
273#else
274170	EXCL		netbsd32_sys_msgsys
275#endif
276#if defined(SYSVSHM) || !defined(_KERNEL)
277171	COMPAT_10	{ int netbsd32_sys_shmsys(int which, int a2, int a3, int a4); } oshmsys
278#else
279171	EXCL		netbsd32_sys_shmsys
280#endif
281172	UNIMPL
282173	STD		{ netbsd32_ssize_t netbsd32_pread(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
283174	STD		{ netbsd32_ssize_t netbsd32_pwrite(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
284175	COMPAT_30	{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
285176	STD		{ int netbsd32_ntp_adjtime(netbsd32_timexp_t tp); }
286177	UNIMPL
287178	UNIMPL
288179	UNIMPL
289180	UNIMPL
290
291; Syscalls 180-199 are used by/reserved for BSD
292181	STD		{ int netbsd32_setgid(gid_t gid); }
293182	STD		{ int netbsd32_setegid(gid_t egid); }
294183	STD		{ int netbsd32_seteuid(uid_t euid); }
295#if defined(LFS) || !defined(_KERNEL)
296184	STD		{ int netbsd32_sys_lfs_bmapv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
297185	STD		{ int netbsd32_sys_lfs_markv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
298186	STD		{ int netbsd32_sys_lfs_segclean(netbsd32_fsid_tp_t fsidp, netbsd32_u_long segment); }
299187	STD		{ int netbsd32_sys_lfs_segwait(netbsd32_fsid_tp_t fsidp, netbsd32_timevalp_t tv); }
300#else
301184	EXCL		netbsd32_sys_lfs_bmapv
302185	EXCL		netbsd32_sys_lfs_markv
303186	EXCL		netbsd32_sys_lfs_segclean
304187	EXCL		netbsd32_sys_lfs_segwait
305#endif
306188	COMPAT_12	{ int netbsd32_stat12(const netbsd32_charp path, netbsd32_stat12p_t ub); }
307189	COMPAT_12	{ int netbsd32_fstat12(int fd, netbsd32_stat12p_t sb); }
308190	COMPAT_12	{ int netbsd32_lstat12(const netbsd32_charp path, netbsd32_stat12p_t ub); }
309191	STD		{ netbsd32_long netbsd32_pathconf(const netbsd32_charp path, int name); }
310192	STD		{ netbsd32_long netbsd32_fpathconf(int fd, int name); }
311193	UNIMPL
312194	STD		{ int netbsd32_getrlimit(int which, netbsd32_rlimitp_t rlp); }
313195	STD		{ int netbsd32_setrlimit(int which, const netbsd32_rlimitp_t rlp); }
314196	COMPAT_12	{ int netbsd32_getdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
315197	STD		{ netbsd32_voidp netbsd32_mmap(netbsd32_voidp addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pad, off_t pos); }
316198	INDIR		{ quad_t sys___syscall(quad_t num, ...); }
317199	STD		{ off_t netbsd32_lseek(int fd, int pad, off_t offset, int whence); }
318200	STD		{ int netbsd32_truncate(const netbsd32_charp path, int pad, off_t length); }
319201	STD		{ int netbsd32_ftruncate(int fd, int pad, off_t length); }
320202	STD		{ int netbsd32___sysctl(netbsd32_intp name, u_int namelen, netbsd32_voidp old, netbsd32_size_tp oldlenp, netbsd32_voidp new, netbsd32_size_t newlen); }
321203	STD		{ int netbsd32_mlock(const netbsd32_voidp addr, netbsd32_size_t len); }
322204	STD		{ int netbsd32_munlock(const netbsd32_voidp addr, netbsd32_size_t len); }
323205	STD		{ int netbsd32_undelete(const netbsd32_charp path); }
324206	STD		{ int netbsd32_futimes(int fd, const netbsd32_timevalp_t tptr); }
325207	STD		{ int netbsd32_getpgid(pid_t pid); }
326208	STD		{ int netbsd32_reboot(int opt, netbsd32_charp bootstr); }
327209	STD		{ int netbsd32_poll(netbsd32_pollfdp_t fds, u_int nfds, int timeout); }
328;
329; Syscalls 210-219 are reserved for dynamically loaded syscalls
330;
331#if defined(LKM) || !defined(_KERNEL)
332210	NODEF		{ int sys_lkmnosys(void); }
333211	NODEF		{ int sys_lkmnosys(void); }
334212	NODEF		{ int sys_lkmnosys(void); }
335213	NODEF		{ int sys_lkmnosys(void); }
336214	NODEF		{ int sys_lkmnosys(void); }
337215	NODEF		{ int sys_lkmnosys(void); }
338216	NODEF		{ int sys_lkmnosys(void); }
339217	NODEF		{ int sys_lkmnosys(void); }
340218	NODEF		{ int sys_lkmnosys(void); }
341219	NODEF		{ int sys_lkmnosys(void); }
342#else	/* !LKM || !_KERNEL */
343210	EXCL		lkmnosys
344211	EXCL		lkmnosys
345212	EXCL		lkmnosys
346213	EXCL		lkmnosys
347214	EXCL		lkmnosys
348215	EXCL		lkmnosys
349216	EXCL		lkmnosys
350217	EXCL		lkmnosys
351218	EXCL		lkmnosys
352219	EXCL		lkmnosys
353#endif	/* !LKM || !_KERNEL */
354; System calls 220-300 are reserved for use by NetBSD
355#if defined(SYSVSEM) || !defined(_KERNEL)
356220	COMPAT_14	{ int netbsd32___semctl(int semid, int semnum, int cmd, netbsd32_semunu_t arg); }
357221	STD		{ int netbsd32_semget(netbsd32_key_t key, int nsems, int semflg); }
358222	STD		{ int netbsd32_semop(int semid, netbsd32_sembufp_t sops, netbsd32_size_t nsops); }
359223	STD		{ int netbsd32_semconfig(int flag); }
360#else
361220	EXCL		compat_14_netbsd32_semctl
362221	EXCL		netbsd32_semget
363222	EXCL		netbsd32_semop
364223	EXCL		netbsd32_semconfig
365#endif
366#if defined(SYSVMSG) || !defined(_KERNEL)
367224	COMPAT_14	{ int netbsd32_msgctl(int msqid, int cmd, netbsd32_msqid_dsp_t buf); }
368225	STD		{ int netbsd32_msgget(netbsd32_key_t key, int msgflg); }
369226	STD		{ int netbsd32_msgsnd(int msqid, const netbsd32_voidp msgp, netbsd32_size_t msgsz, int msgflg); }
370227	STD		{ netbsd32_ssize_t netbsd32_msgrcv(int msqid, netbsd32_voidp msgp, netbsd32_size_t msgsz, netbsd32_long msgtyp, int msgflg); }
371#else
372224	EXCL		compat_14_netbsd32_msgctl
373225	EXCL		netbsd32_msgget
374226	EXCL		netbsd32_msgsnd
375227	EXCL		netbsd32_msgrcv
376#endif
377#if defined(SYSVSHM) || !defined(_KERNEL)
378228	STD		{ netbsd32_voidp netbsd32_shmat(int shmid, const netbsd32_voidp shmaddr, int shmflg); }
379229	COMPAT_14		{ int netbsd32_shmctl(int shmid, int cmd, netbsd32_shmid_dsp_t buf); }
380230	STD		{ int netbsd32_shmdt(const netbsd32_voidp shmaddr); }
381231	STD		{ int netbsd32_shmget(netbsd32_key_t key, netbsd32_size_t size, int shmflg); }
382#else
383228	EXCL		netbsd32_shmat
384229	EXCL		compat_14_netbsd32_shmctl
385230	EXCL		netbsd32_shmdt
386231	EXCL		netbsd32_shmget
387#endif
388232	STD		{ int netbsd32_clock_gettime(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
389233	STD		{ int netbsd32_clock_settime(netbsd32_clockid_t clock_id, const netbsd32_timespecp_t tp); }
390234	STD		{ int netbsd32_clock_getres(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
391235	STD		{ int netbsd32_timer_create(netbsd32_clockid_t clock_id, netbsd32_sigeventp_t evp, \
392			    netbsd32_timerp_t timerid); }
393236	STD		{ int netbsd32_timer_delete(netbsd32_timer_t timerid); }
394237	STD		{ int netbsd32_timer_settime(netbsd32_timer_t timerid, int flags, \
395			    const netbsd32_itimerspecp_t value, \
396			    netbsd32_itimerspecp_t ovalue); }
397238	STD		{ int netbsd32_timer_gettime(netbsd32_timer_t timerid, netbsd32_itimerspecp_t value); }
398239	STD		{ int netbsd32_timer_getoverrun(netbsd32_timer_t timerid); }
399;
400; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
401;
402240	STD		{ int netbsd32_nanosleep(const netbsd32_timespecp_t rqtp, netbsd32_timespecp_t rmtp); }
403241	STD		{ int netbsd32_fdatasync(int fd); }
404242	STD		{ int netbsd32_mlockall(int flags); }
405243	NOARGS		{ int sys_munlockall(void); }
406244	STD		{ int netbsd32___sigtimedwait(const netbsd32_sigsetp_t set, \
407			    netbsd32_siginfop_t info, \
408			    netbsd32_timespecp_t timeout); }
409245	UNIMPL
410246	UNIMPL
411#if defined(P1003_1B_SEMAPHORE) || (!defined(_KERNEL) && defined(_LIBC))
412247	STD		{ int netbsd32__ksem_init(unsigned int value, netbsd32_semidp_t idp); }
413248	STD		{ int netbsd32__ksem_open(const netbsd32_charp name, int oflag, \
414			    mode_t mode, unsigned int value, netbsd32_semidp_t idp); }
415249	STD		{ int netbsd32__ksem_unlink(const netbsd32_charp name); }
416250	STD		{ int netbsd32__ksem_close(netbsd32_semid_t id); }
417251	STD		{ int netbsd32__ksem_post(netbsd32_semid_t id); }
418252	STD		{ int netbsd32__ksem_wait(netbsd32_semid_t id); }
419253	STD		{ int netbsd32__ksem_trywait(netbsd32_semid_t id); }
420254	STD		{ int netbsd32__ksem_getvalue(netbsd32_semid_t id, \
421			    netbsd32_intp value); }
422255	STD		{ int netbsd32__ksem_destroy(netbsd32_semid_t id); }
423256	UNIMPL		sys__ksem_timedwait
424#else
425247	EXCL		sys__ksem_init
426248	EXCL		sys__ksem_open
427249	EXCL 		sys__ksem_unlink
428250	EXCL		sys__ksem_close
429251	EXCL		sys__ksem_post
430252	EXCL		sys__ksem_wait
431253	EXCL		sys__ksem_trywait
432254	EXCL		sys__ksem_getvalue
433255	EXCL		sys__ksem_destroy
434256	UNIMPL		sys__ksem_timedwait
435#endif
436257	UNIMPL
437258	UNIMPL
438259	UNIMPL
439260	UNIMPL
440261	UNIMPL
441262	UNIMPL
442263	UNIMPL
443264	UNIMPL
444265	UNIMPL
445266	UNIMPL
446267	UNIMPL
447268	UNIMPL
448269	UNIMPL
449270	STD		{ int netbsd32___posix_rename(const netbsd32_charp from, const netbsd32_charp to); }
450271	STD		{ int netbsd32_swapctl(int cmd, netbsd32_voidp arg, int misc); }
451272	STD		{ int netbsd32_getdents(int fd, netbsd32_charp buf, netbsd32_size_t count); }
452273	STD		{ int netbsd32_minherit(netbsd32_voidp addr, netbsd32_size_t len, int inherit); }
453274	STD		{ int netbsd32_lchmod(const netbsd32_charp path, mode_t mode); }
454275	STD		{ int netbsd32_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); }
455276	STD		{ int netbsd32_lutimes(const netbsd32_charp path, const netbsd32_timevalp_t tptr); }
456277	STD		{ int netbsd32___msync13(netbsd32_voidp addr, netbsd32_size_t len, int flags); }
457278	STD		{ int netbsd32___stat13(const netbsd32_charp path, netbsd32_stat13p_t ub); }
458279	STD		{ int netbsd32___fstat13(int fd, netbsd32_stat13p_t sb); }
459280	STD		{ int netbsd32___lstat13(const netbsd32_charp path, netbsd32_stat13p_t ub); }
460281	STD		{ int netbsd32___sigaltstack14(const netbsd32_sigaltstackp_t nss, netbsd32_sigaltstackp_t oss); }
461282	NOARGS		{ int sys___vfork14(void); }
462283	STD		{ int netbsd32___posix_chown(const netbsd32_charp path, uid_t uid, gid_t gid); }
463284	STD		{ int netbsd32___posix_fchown(int fd, uid_t uid, gid_t gid); }
464285	STD		{ int netbsd32___posix_lchown(const netbsd32_charp path, uid_t uid, gid_t gid); }
465286	STD		{ pid_t netbsd32_getsid(pid_t pid); }
466287	STD		{ int netbsd32___clone(int flags, netbsd32_voidp stack); }
467#if defined(KTRACE) || !defined(_KERNEL)
468288	STD		{ int netbsd32_fktrace(const int fd, int ops, int facs, int pid); }
469#else
470288	EXCL		netbsd32_fktrace
471#endif
472289	STD		{ netbsd32_ssize_t netbsd32_preadv(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
473290	STD		{ netbsd32_ssize_t netbsd32_pwritev(int fd, const netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
474291	STD		{ int netbsd32___sigaction14(int signum, \
475			    const netbsd32_sigactionp_t nsa, \
476			    netbsd32_sigactionp_t osa); }
477292	STD		{ int netbsd32___sigpending14(netbsd32_sigsetp_t set); }
478293	STD		{ int netbsd32___sigprocmask14(int how, \
479			    const netbsd32_sigsetp_t set, \
480			    netbsd32_sigsetp_t oset); }
481294	STD		{ int netbsd32___sigsuspend14(const netbsd32_sigsetp_t set); }
482295	COMPAT_16	{ int netbsd32___sigreturn14(netbsd32_sigcontextp_t sigcntxp); }
483296	STD		{ int netbsd32___getcwd(netbsd32_charp bufp, netbsd32_size_t length); }
484297	STD		{ int netbsd32_fchroot(int fd); }
485298	COMPAT_30	{ int netbsd32_fhopen(const netbsd32_fhandlep_t fhp, \
486			   int flags); }
487299	COMPAT_30	{ int netbsd32_fhstat(const netbsd32_fhandlep_t fhp, \
488			    netbsd32_stat13p_t sb); }
489300	COMPAT_20	{ int netbsd32_fhstatfs(netbsd32_fhandlep_t fhp, \
490			    netbsd32_statp_t buf); }
491#if defined(SYSVSEM) || !defined(_KERNEL)
492301	STD		{ int netbsd32___semctl14(int semid, int semnum, int cmd, \
493			    ... netbsd32_semunp_t arg); }
494#else
495301	EXCL		__semctl14
496#endif
497#if defined(SYSVMSG) || !defined(_KERNEL)
498302	STD		{ int netbsd32___msgctl13(int msqid, int cmd, \
499			    netbsd32_msqid_dsp_t buf); }
500#else
501302	EXCL		__msgctl13
502#endif
503#if defined(SYSVSHM) || !defined(_KERNEL)
504303	STD		{ int netbsd32___shmctl13(int shmid, int cmd, \
505			    netbsd32_shmid_dsp_t buf); }
506#else
507303	EXCL		__shmctl13
508#endif
509304	STD		{ int netbsd32_lchflags(const netbsd32_charp path, netbsd32_u_long flags); }
510305	STD		{ int sys_issetugid(void); }
511306	STD		{ int netbsd32_utrace(const netbsd32_charp label, netbsd32_voidp addr, \
512			    netbsd32_size_t len); }
513;
514; Syscalls 307 and 308 are reserved for getcontext and setcontext
515;
516307	STD		{ int netbsd32_getcontext(netbsd32_ucontextp ucp); }
517308	STD		{ int netbsd32_setcontext(netbsd32_ucontextp ucp, \
518			    uint32_t flags, netbsd32_lwpidp new_lwp); }
519;
520; Syscalls 309-339 are reserved for LWP and scheduler activation syscalls.
521;
522309	STD		{ int netbsd32__lwp_create(const netbsd32_ucontextp ucp, \
523			    netbsd32_u_long flags, netbsd32_lwpidp new_lwp); }
524310	NOARGS		{ int sys__lwp_exit(void); }
525311	NOARGS		{ lwpid_t sys__lwp_self(void); }
526312	STD		{ int netbsd32__lwp_wait(lwpid_t wait_for, \
527			    netbsd32_lwpidp departed); }
528313	STD		{ int netbsd32__lwp_suspend(lwpid_t target); }
529314	STD		{ int netbsd32__lwp_continue(lwpid_t target); }
530315	STD		{ int netbsd32__lwp_wakeup(lwpid_t target); }
531316	NOARGS		{ void *sys__lwp_getprivate(void); }
532317	STD		{ void netbsd32__lwp_setprivate(netbsd32_voidp ptr); }
533318	UNIMPL
534319	UNIMPL
535320	UNIMPL
536321	UNIMPL
537322	UNIMPL
538323	UNIMPL
539324	UNIMPL
540325	UNIMPL
541326	UNIMPL
542327	UNIMPL
543328	UNIMPL
544329	UNIMPL
545330	STD		{ int netbsd32_sa_register(netbsd32_sa_upcall_t new, \
546			    netbsd32_sa_upcallp_t old, int flags, \
547			    netbsd32_ssize_t stackinfo_offset); }
548331	STD		{ int netbsd32_sa_stacks(int num, netbsd32_stackp_t stacks); }
549332	NOARGS		{ int sys_sa_enable(void); }
550333	STD		{ int netbsd32_sa_setconcurrency(int concurrency); }
551334	NOARGS		{ int sys_sa_yield(void); }
552335	STD		{ int netbsd32_sa_preempt(int sa_id); }
553336	OBSOL		sys_sa_unblockyield
554337	UNIMPL
555338	UNIMPL
556339	UNIMPL
557340	STD		{ int netbsd32___sigaction_sigtramp(int signum, \
558			    const netbsd32_sigactionp_t nsa, \
559			    netbsd32_sigactionp_t osa, \
560			    netbsd32_voidp tramp, int vers); }
561341	UNIMPL
562342	UNIMPL
563343	STD		{ int netbsd32_rasctl(netbsd32_caddr_t addr, netbsd32_size_t len, \
564			    int op); }
565344	NOARGS		{ int sys_kqueue(void); }
566345	STD		{ int netbsd32_kevent(int fd, \
567			    netbsd32_keventp_t changelist, netbsd32_size_t nchanges, \
568			    netbsd32_keventp_t eventlist, netbsd32_size_t nevents, \
569			    netbsd32_timespecp_t timeout); }
570346	UNIMPL
571347	UNIMPL
572348	UNIMPL
573349	UNIMPL
574350	UNIMPL
575351	UNIMPL
576352	UNIMPL
577353	UNIMPL
578354	STD		{ int netbsd32_fsync_range(int fd, int flags, off_t start, \
579			    off_t length); }
580355	STD		{ int netbsd32_uuidgen(netbsd32_uuidp_t store, int count); }
581356	STD		{ int netbsd32_getvfsstat(netbsd32_statvfsp_t buf, \
582			    netbsd32_size_t bufsize, int flags); }
583357	STD		{ int netbsd32_statvfs1(const netbsd32_charp path, \
584			    netbsd32_statvfsp_t buf, int flags); }
585358	STD		{ int netbsd32_fstatvfs1(int fd, netbsd32_statvfsp_t buf, \
586			    int flags); }
587359	COMPAT_30	{ int netbsd32_fhstatvfs1(const netbsd32_fhandlep_t fhp, \
588			    netbsd32_statvfsp_t buf, int flags); }
589360	STD		{ int netbsd32_extattrctl(const netbsd32_charp path, \
590			    int cmd, const netbsd32_charp filename, int attrnamespace, \
591			    const netbsd32_charp attrname); }
592361	STD		{ int netbsd32_extattr_set_file(const netbsd32_charp path, \
593			    int attrnamespace, const netbsd32_charp attrname, \
594			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
595362	STD		{ int netbsd32_extattr_get_file(const netbsd32_charp path, \
596			    int attrnamespace, const netbsd32_charp attrname, \
597			    netbsd32_voidp data, netbsd32_size_t nbytes); }
598363	STD		{ int netbsd32_extattr_delete_file(const netbsd32_charp path, \
599			    int attrnamespace, const netbsd32_charp attrname); }
600364	STD		{ int netbsd32_extattr_set_fd(int fd, \
601			    int attrnamespace, const netbsd32_charp attrname, \
602			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
603365	STD		{ int netbsd32_extattr_get_fd(int fd, \
604			    int attrnamespace, const netbsd32_charp attrname, \
605			    netbsd32_voidp data, netbsd32_size_t nbytes); }
606366	STD		{ int netbsd32_extattr_delete_fd(int fd, \
607			    int attrnamespace, const netbsd32_charp attrname); }
608367	STD		{ int netbsd32_extattr_set_link(const netbsd32_charp path, \
609			    int attrnamespace, const netbsd32_charp attrname, \
610			    const netbsd32_voidp data, netbsd32_size_t nbytes); }
611368	STD		{ int netbsd32_extattr_get_link(const netbsd32_charp path, \
612			    int attrnamespace, const netbsd32_charp attrname, \
613			    netbsd32_voidp data, netbsd32_size_t nbytes); }
614369	STD		{ int netbsd32_extattr_delete_link(const netbsd32_charp path, \
615			    int attrnamespace, const netbsd32_charp attrname); }
616370	STD		{ int netbsd32_extattr_list_fd(int fd, \
617			    int attrnamespace, netbsd32_voidp data, \
618			    netbsd32_size_t nbytes); }
619371	STD		{ int netbsd32_extattr_list_file(const netbsd32_charp path, \
620			    int attrnamespace, netbsd32_voidp data, \
621			    netbsd32_size_t nbytes); }
622372	STD		{ int netbsd32_extattr_list_link(const netbsd32_charp path, \
623			    int attrnamespace, netbsd32_voidp data, \
624			    netbsd32_size_t nbytes); }
625373	STD		{ int netbsd32_pselect(int nd, netbsd32_fd_setp_t in, \
626			    netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \
627			    const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); }
628374	STD		{ int netbsd32_pollts(netbsd32_pollfdp_t fds, u_int nfds, \
629			    const netbsd32_timespecp_t ts, const netbsd32_sigsetp_t mask); }
630375	STD		{ int netbsd32_setxattr(const netbsd32_charp path, \
631			    const netbsd32_charp name, netbsd32_voidp value, \
632			    netbsd32_size_t size, int flags); }
633376	STD		{ int netbsd32_lsetxattr(const netbsd32_charp path, \
634			    const netbsd32_charp name, netbsd32_voidp value, \
635			    netbsd32_size_t size, int flags); }
636377	STD		{ int netbsd32_fsetxattr(int fd, \
637			    const netbsd32_charp name, netbsd32_voidp value, \
638			    netbsd32_size_t size, int flags); }
639378	STD		{ int netbsd32_getxattr(const netbsd32_charp path, \
640			    const netbsd32_charp name, netbsd32_voidp value, \
641			    netbsd32_size_t size); }
642379	STD		{ int netbsd32_lgetxattr(const netbsd32_charp path, \
643			    const netbsd32_charp name, netbsd32_voidp value, \
644			    netbsd32_size_t size); }
645380	STD		{ int netbsd32_fgetxattr(int fd, \
646			    const netbsd32_charp name, netbsd32_voidp value, \
647			    netbsd32_size_t size); }
648381	STD		{ int netbsd32_listxattr(const netbsd32_charp path, \
649			    netbsd32_charp list, netbsd32_size_t size); }
650382	STD		{ int netbsd32_llistxattr(const netbsd32_charp path, \
651			    netbsd32_charp list, netbsd32_size_t size); }
652383	STD		{ int netbsd32_flistxattr(int fd, \
653			    netbsd32_charp list, netbsd32_size_t size); }
654384	STD		{ int netbsd32_removexattr(const netbsd32_charp path, \
655			    const netbsd32_charp name); }
656385	STD		{ int netbsd32_lremovexattr(const netbsd32_charp path, \
657			    const netbsd32_charp name); }
658386	STD		{ int netbsd32_fremovexattr(int fd, \
659			    const netbsd32_charp name); }
660387     STD             { int netbsd32_sys___stat30(const netbsd32_charp path, \
661			    netbsd32_statp_t ub); }
662388     STD             { int netbsd32_sys___fstat30(int fd, \
663			    netbsd32_statp_t sb); }
664389     STD             { int netbsd32_sys___lstat30( \
665			    const netbsd32_charp path, netbsd32_statp_t ub); }
666390     STD             { int netbsd32_sys___getdents30(int fd, \
667			    netbsd32_charp buf, netbsd32_size_t count); }
668391	NOARGS		{ int sys_posix_fadvise(int fd, off_t offset, \
669			    off_t len, int advice); }
670392	COMPAT_30	{ int netbsd32_sys___fhstat30( \
671			    const netbsd32_fhandlep_t fhp, \
672			    netbsd32_statp_t sb); }
673393	STD		{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
674394	STD		{ int netbsd32_sys___socket30(int domain, int type, int protocol); }
675395	STD		{ int netbsd32___getfh30(const netbsd32_charp fname, netbsd32_pointer_t fhp, netbsd32_size_tp fh_size); }
676396	STD		{ int netbsd32___fhopen40(const netbsd32_pointer_t fhp, \
677			    netbsd32_size_t fh_size, int flags); }
678397	STD		{ int netbsd32___fhstatvfs140(	\
679			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
680			    netbsd32_statvfsp_t buf, int flags); }
681398	STD		{ int netbsd32___fhstat40(	\
682			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
683			    netbsd32_statp_t sb); }
684