xref: /netbsd-src/sys/compat/netbsd32/syscalls.master (revision 82d56013d7b633d116a93943de88e08335357a7c)
1	$NetBSD: syscalls.master,v 1.139 2020/10/10 00:00:54 rin 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, IGNORED, 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;	IGNORED	syscall is a null op, but always succeeds
18;	UNIMPL	unimplemented, not included in system
19;	EXCL	implemented, but not included in system
20;	NODEF	included, but don't define the syscall number
21;	NOARGS	included, but don't define the syscall args structure
22;	INDIR	included, but don't define the syscall args structure,
23;		and allow it to be "really" varargs.
24;
25; The compat options are defined in the syscalls.conf file, and the
26; compat option name is prefixed to the syscall name.  Other than
27; that, they're like NODEF (for 'compat' options), or STD (for
28; 'libcompat' options).
29;
30; The type-dependent arguments are as follows:
31; For STD, NODEF, NOARGS, and compat syscalls:
32;	{ pseudo-proto } [alias]
33; For other syscalls:
34;	[comment]
35;
36; #ifdef's, etc. may be included, and are copied to the output files.
37; #include's are copied to the syscall names and switch definition files only.
38
39#if defined(_KERNEL_OPT)
40#include "opt_compat_netbsd.h"
41#include "opt_ntp.h"
42#include "opt_compat_43.h"
43#include "opt_quota.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/syscallargs.h>
51
52#include <compat/netbsd32/netbsd32.h>
53#include <compat/netbsd32/netbsd32_syscall.h>
54#include <compat/netbsd32/netbsd32_syscallargs.h>
55
56%%
57
58; Reserved/unimplemented system calls in the range 0-150 inclusive
59; are reserved for use in future Berkeley releases.
60; Additional system calls implemented in vendor and other
61; redistributions should be placed in the reserved range at the end
62; of the current calls.
63
640	INDIR		{ int|netbsd32||syscall(int code, \
65			    ... register32_t args[NETBSD32_SYS_MAXSYSARGS]); }
661	STD		{ void|netbsd32||exit(int rval); }
672	NOARGS		{ int|sys||fork(void); }
683	STD		{ netbsd32_ssize_t|netbsd32||read(int fd, \
69			    netbsd32_voidp buf, netbsd32_size_t nbyte); }
704	STD		{ netbsd32_ssize_t|netbsd32||write(int fd, \
71			    netbsd32_voidp buf, netbsd32_size_t nbyte); }
725	STD		{ int|netbsd32||open(netbsd32_charp path, int flags, \
73			    ... mode_t mode); }
746	STD		{ int|netbsd32||close(int fd); }
757	COMPAT_50 MODULAR compat_netbsd32_50	\
76			{ int|netbsd32||wait4(int pid, netbsd32_intp status, \
77			    int options, netbsd32_rusage50p_t rusage); }
788	COMPAT_43 MODULAR compat_netbsd32_43	\
79			{ int|netbsd32||ocreat(netbsd32_charp path, \
80			    mode_t mode); }
819	STD		{ int|netbsd32||link(netbsd32_charp path, \
82			    netbsd32_charp link); }
8310	STD		{ int|netbsd32||unlink(netbsd32_charp path); }
8411	OBSOL		execv
8512	STD		{ int|netbsd32||chdir(netbsd32_charp path); }
8613	STD		{ int|netbsd32||fchdir(int fd); }
8714	COMPAT_50 MODULAR compat_netbsd32_50	\
88			{ int|netbsd32||mknod(netbsd32_charp path, mode_t mode, \
89			    uint32_t dev); }
9015	STD		{ int|netbsd32||chmod(netbsd32_charp path, mode_t mode); }
9116	STD		{ int|netbsd32||chown(netbsd32_charp path, uid_t uid, \
92			    gid_t gid); }
9317	STD		{ int|netbsd32||break(netbsd32_charp nsize); }
9418	COMPAT_20 MODULAR compat_netbsd32_20	\
95			{ int|netbsd32||getfsstat(netbsd32_statfsp_t buf, \
96			    netbsd32_long bufsize, int flags); }
9719	COMPAT_43 MODULAR compat_netbsd32_43	\
98			{ netbsd32_long|netbsd32||olseek(int fd, \
99			    netbsd32_long offset, int whence); }
10020	NOARGS 		{ pid_t|sys||getpid_with_ppid(void); } getpid
10121	COMPAT_40 MODULAR compat_netbsd32_40	\
102			{ int|netbsd32||mount(netbsd32_charp type, \
103			    netbsd32_charp path, int flags, \
104			    netbsd32_voidp data); }
10522	STD		{ int|netbsd32||unmount(netbsd32_charp path, \
106			    int flags); }
10723	STD		{ int|netbsd32||setuid(uid_t uid); }
10824	NOARGS 		{ uid_t|sys||getuid_with_euid(void); } getuid
10925	NOARGS		{ uid_t|sys||geteuid(void); }
11026	STD MODULAR compat_netbsd32_ptrace \
111			{ int|netbsd32||ptrace(int req, pid_t pid, \
112			    netbsd32_voidp addr, int data); }
11327	STD		{ netbsd32_ssize_t|netbsd32||recvmsg(int s, \
114			    netbsd32_msghdrp_t msg, int flags); }
11528	STD		{ netbsd32_ssize_t|netbsd32||sendmsg(int s, \
116			    netbsd32_msghdrp_t msg, int flags); }
11729	STD		{ netbsd32_ssize_t|netbsd32||recvfrom(int s, \
118			    netbsd32_voidp buf, netbsd32_size_t len, \
119			    int flags, netbsd32_sockaddrp_t from, \
120			    netbsd32_intp fromlenaddr); }
12130	STD		{ int|netbsd32||accept(int s, \
122			    netbsd32_sockaddrp_t name, \
123			    netbsd32_intp anamelen); }
12431	STD		{ int|netbsd32||getpeername(int fdes, \
125			    netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
12632	STD		{ int|netbsd32||getsockname(int fdes, \
127			    netbsd32_sockaddrp_t asa, netbsd32_intp alen); }
12833	STD		{ int|netbsd32||access(netbsd32_charp path, int flags); }
12934	STD		{ int|netbsd32||chflags(netbsd32_charp path, \
130			    netbsd32_u_long flags); }
13135	STD		{ int|netbsd32||fchflags(int fd, \
132			    netbsd32_u_long flags); }
13336	NOARGS		{ void|sys||sync(void); }
13437	STD		{ int|netbsd32||kill(int pid, int signum); }
13538	COMPAT_43 MODULAR compat_netbsd32_43	\
136			{ int|netbsd32||stat43(netbsd32_charp path, \
137			    netbsd32_stat43p_t ub); }
13839	NOARGS 		{ pid_t|sys||getppid(void); }
13940	COMPAT_43 MODULAR compat_netbsd32_43	\
140			{ int|netbsd32||lstat43(netbsd32_charp path, \
141			    netbsd32_stat43p_t ub); }
14241	STD		{ int|netbsd32||dup(int fd); }
14342	NOARGS		{ int|sys||pipe(void); }
14443	NOARGS 		{ gid_t|sys||getegid(void); }
14544	STD		{ int|netbsd32||profil(netbsd32_voidp samples, \
146			    netbsd32_size_t size, netbsd32_u_long offset, \
147			    u_int scale); }
14845	STD		{ int|netbsd32||ktrace(netbsd32_charp fname, int ops, \
149			    int facs, int pid); }
15046	STD		{ int|netbsd32||sigaction(int signum, \
151			    netbsd32_sigactionp_t nsa, \
152			    netbsd32_sigactionp_t osa); }
15347	NOARGS 		{ gid_t|sys||getgid_with_egid(void); } getgid
15448	COMPAT_13 MODULAR compat_netbsd32_13	\
155			{ int|netbsd32||sigprocmask(int how, \
156			    int mask); } sigprocmask13
15749	STD		{ int|netbsd32||__getlogin(netbsd32_charp namebuf, \
158			    u_int namelen); }
15950	STD		{ int|netbsd32||setlogin(netbsd32_charp namebuf); }
16051	STD		{ int|netbsd32||acct(netbsd32_charp path); }
16152	COMPAT_13 MODULAR compat_netbsd32_13	\
162		 	{ int|sys||sigpending(void); } sigpending13
16353	COMPAT_13 MODULAR compat_netbsd32_13	\
164			{ int|netbsd32||sigaltstack13( \
165			    netbsd32_sigaltstack13p_t nss, \
166			    netbsd32_sigaltstack13p_t oss); }
16754	STD		{ int|netbsd32||ioctl(int fd, netbsd32_u_long com, \
168			    ... netbsd32_voidp data); }
16955	COMPAT_12 MODULAR compat_netbsd32_12	\
170			{ int|netbsd32||reboot(int opt); }
17156	STD		{ int|netbsd32||revoke(netbsd32_charp path); }
17257	STD		{ int|netbsd32||symlink(netbsd32_charp path, \
173			    netbsd32_charp link); }
17458	STD		{ int|netbsd32||readlink(netbsd32_charp path, \
175			    netbsd32_charp buf, netbsd32_size_t count); }
17659	STD		{ int|netbsd32||execve(netbsd32_charp path, \
177			    netbsd32_charpp argp, netbsd32_charpp envp); }
17860	STD		{ mode_t|netbsd32||umask(mode_t newmask); }
17961	STD		{ int|netbsd32||chroot(netbsd32_charp path); }
18062	COMPAT_43 MODULAR compat_netbsd32_43	\
181			{ int|netbsd32||fstat43(int fd, netbsd32_stat43p_t sb); }
18263	COMPAT_43 MODULAR compat_netbsd32_43	\
183			{ int|netbsd32||ogetkerninfo(int op, \
184			    netbsd32_charp where, netbsd32_intp size, \
185			    int arg); }
18664	COMPAT_43 MODULAR compat_43	\
187			{ int|sys||getpagesize(void); } ogetpagesize
18865	COMPAT_12 MODULAR compat_netbsd32_12	\
189			{ int|netbsd32||msync(netbsd32_voidp addr, \
190			    netbsd32_size_t len); }
191; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)?
19266	NOARGS		{ int|sys||vfork(void); }
19367	OBSOL		vread
19468	OBSOL		vwrite
19569	OBSOL		sbrk
19670	OBSOL		sstk
19771	COMPAT_43 MODULAR compat_netbsd32_43	\
198			{ int|netbsd32||ommap(netbsd32_voidp addr, \
199			    netbsd32_size_t len, int prot, int flags, int fd, \
200			    netbsd32_long pos); }
20172	STD		{ int|netbsd32||ovadvise(int anom); } vadvise
20273	STD		{ int|netbsd32||munmap(netbsd32_voidp addr, \
203			    netbsd32_size_t len); }
20474	STD		{ int|netbsd32||mprotect(netbsd32_voidp addr, \
205			    netbsd32_size_t len, int prot); }
20675	STD		{ int|netbsd32||madvise(netbsd32_voidp addr, \
207			    netbsd32_size_t len, int behav); }
20876	OBSOL		vhangup
20977	OBSOL		vlimit
21078	STD		{ int|netbsd32||mincore(netbsd32_voidp addr, \
211			    netbsd32_size_t len, netbsd32_charp vec); }
21279	STD		{ int|netbsd32||getgroups(int gidsetsize, \
213			    netbsd32_gid_tp gidset); }
21480	STD		{ int|netbsd32||setgroups(int gidsetsize, \
215			    netbsd32_gid_tp gidset); }
21681	NOARGS 		{ int|sys||getpgrp(void); }
21782	STD		{ int|netbsd32||setpgid(int pid, int pgid); }
21883	COMPAT_50 MODULAR compat_netbsd32_50	\
219			{ int|netbsd32||setitimer(int which, \
220			    netbsd32_itimerval50p_t itv, \
221			    netbsd32_itimerval50p_t oitv); }
22284	COMPAT_43 MODULAR compat_43	\
223			{ int|sys||wait(void); } owait
22485	COMPAT_12 MODULAR compat_netbsd32_12	\
225			{ int|netbsd32||oswapon(netbsd32_charp name); }
22686	COMPAT_50 MODULAR compat_netbsd32_50	\
227			{ int|netbsd32||getitimer(int which, \
228			    netbsd32_itimerval50p_t itv); }
22987	COMPAT_43 MODULAR compat_netbsd32_43	\
230			{ int|netbsd32||ogethostname(netbsd32_charp hostname, \
231			    u_int len); }
23288	COMPAT_43 MODULAR compat_netbsd32_43	\
233			{ int|netbsd32||osethostname(netbsd32_charp hostname, \
234			    u_int len); }
23589	COMPAT_43 MODULAR compat_43	\
236			{ int|sys||getdtablesize(void); } ogetdtablesize
23790	STD		{ int|netbsd32||dup2(int from, int to); }
23891	STD		{ netbsd32_ssize_t|netbsd32||getrandom( \
239			    netbsd32_voidp buf, netbsd32_size_t buflen, \
240			    unsigned int flags); }
24192	STD		{ int|netbsd32||fcntl(int fd, int cmd, \
242			    ... netbsd32_voidp arg); }
24393	COMPAT_50 MODULAR compat_netbsd32_50	\
244			{ int|netbsd32||select(int nd, netbsd32_fd_setp_t in, \
245			    netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \
246			    netbsd32_timeval50p_t tv); }
24794	UNIMPL		setdopt
24895	STD		{ int|netbsd32||fsync(int fd); }
24996	STD		{ int|netbsd32||setpriority(int which, int who, \
250			    int prio); }
25197	COMPAT_30 MODULAR compat_netbsd32_30	\
252			{ int|netbsd32||socket(int domain, int type, \
253			    int protocol); }
25498	STD		{ int|netbsd32||connect(int s, \
255			    netbsd32_sockaddrp_t name, int namelen); }
25699	COMPAT_43 MODULAR compat_netbsd32_43	\
257			{ int|netbsd32||oaccept(int s, netbsd32_voidp name, \
258			    netbsd32_intp anamelen); }
259100	STD		{ int|netbsd32||getpriority(int which, int who); }
260101	COMPAT_43 MODULAR compat_netbsd32_43	\
261			{ int|netbsd32||osend(int s, netbsd32_voidp buf, \
262			    int len, int flags); }
263102	COMPAT_43 MODULAR compat_netbsd32_43	\
264			{ int|netbsd32||orecv(int s, netbsd32_voidp buf, \
265			    int len, int flags); }
266103	COMPAT_13 MODULAR compat_netbsd32_13	\
267			{ int|netbsd32||sigreturn( \
268			    netbsd32_sigcontextp_t sigcntxp); } sigreturn13
269104	STD		{ int|netbsd32||bind(int s, netbsd32_sockaddrp_t name, \
270			    int namelen); }
271105	STD		{ int|netbsd32||setsockopt(int s, int level, int name, \
272			    netbsd32_voidp val, int valsize); }
273106	STD		{ int|netbsd32||listen(int s, int backlog); }
274107	OBSOL		vtimes
275108	COMPAT_43 MODULAR compat_netbsd32_43	\
276			{ int|netbsd32||osigvec(int signum, \
277			    netbsd32_sigvecp_t nsv, netbsd32_sigvecp_t osv); }
278109	COMPAT_43 MODULAR compat_netbsd32_43	\
279			{ int|netbsd32||sigblock(int mask); }
280110	COMPAT_43 MODULAR compat_netbsd32_43	\
281			{ int|netbsd32||sigsetmask(int mask); }
282111	COMPAT_13 MODULAR compat_netbsd32_13	\
283			{ int|netbsd32||sigsuspend(int mask); } sigsuspend13
284112	COMPAT_43 MODULAR compat_netbsd32_43	\
285			{ int|netbsd32||osigstack(netbsd32_sigstackp_t nss, \
286			    netbsd32_sigstackp_t oss); }
287113	COMPAT_43 MODULAR compat_netbsd32_43	\
288			{ int|netbsd32||orecvmsg(int s, \
289			    netbsd32_omsghdrp_t msg, int flags); }
290114	COMPAT_43 MODULAR compat_netbsd32_43	\
291			{ int|netbsd32||osendmsg(int s, netbsd32_voidp msg, \
292			    int flags); }
293115	OBSOL		vtrace
294116	COMPAT_50 MODULAR compat_netbsd32_50	\
295			{ int|netbsd32||gettimeofday(netbsd32_timeval50p_t tp, \
296			    netbsd32_timezonep_t tzp); }
297117	COMPAT_50 MODULAR compat_netbsd32_50	\
298			{ int|netbsd32||getrusage(int who, \
299			    netbsd32_rusage50p_t rusage); }
300118	STD		{ int|netbsd32||getsockopt(int s, int level, int name, \
301			    netbsd32_voidp val, netbsd32_intp avalsize); }
302119	OBSOL		resuba
303120	STD		{ netbsd32_ssize_t|netbsd32||readv(int fd, \
304			    netbsd32_iovecp_t iovp, int iovcnt); }
305121	STD		{ netbsd32_ssize_t|netbsd32||writev(int fd, \
306			    netbsd32_iovecp_t iovp, int iovcnt); }
307122	COMPAT_50 MODULAR compat_netbsd32_50	\
308			{ int|netbsd32||settimeofday(netbsd32_timeval50p_t tv, \
309			    netbsd32_timezonep_t tzp); }
310123	STD		{ int|netbsd32||fchown(int fd, uid_t uid, gid_t gid); }
311124	STD		{ int|netbsd32||fchmod(int fd, mode_t mode); }
312125	COMPAT_43 MODULAR compat_netbsd32_43	\
313			{ int|netbsd32||orecvfrom(int s, netbsd32_voidp buf, \
314			    netbsd32_size_t len, int flags, \
315			    netbsd32_voidp from, netbsd32_intp fromlenaddr); }
316126	STD		{ int|netbsd32||setreuid(uid_t ruid, uid_t euid); }
317127	STD		{ int|netbsd32||setregid(gid_t rgid, gid_t egid); }
318128	STD		{ int|netbsd32||rename(netbsd32_charp from, \
319			    netbsd32_charp to); }
320129	COMPAT_43 MODULAR compat_netbsd32_43	\
321			{ int|netbsd32||otruncate(netbsd32_charp path, \
322			    netbsd32_long length); }
323130	COMPAT_43 MODULAR compat_netbsd32_43	\
324			{ int|netbsd32||oftruncate(int fd, \
325			    netbsd32_long length); }
326131	STD		{ int|netbsd32||flock(int fd, int how); }
327132	STD		{ int|netbsd32||mkfifo(netbsd32_charp path, \
328			    mode_t mode); }
329133	STD		{ netbsd32_ssize_t|netbsd32||sendto(int s, \
330			    netbsd32_voidp buf, netbsd32_size_t len, \
331			    int flags, netbsd32_sockaddrp_t to, int tolen); }
332134	STD		{ int|netbsd32||shutdown(int s, int how); }
333135	STD		{ int|netbsd32||socketpair(int domain, int type, \
334			    int protocol, netbsd32_intp rsv); }
335136	STD		{ int|netbsd32||mkdir(netbsd32_charp path, \
336			    mode_t mode); }
337137	STD		{ int|netbsd32||rmdir(netbsd32_charp path); }
338138	COMPAT_50 MODULAR compat_netbsd32_50	\
339			{ int|netbsd32||utimes(netbsd32_charp path, \
340			    netbsd32_timeval50p_t tptr); }
341139	OBSOL		4.2 sigreturn
342140	COMPAT_50 MODULAR compat_netbsd32_50	\
343			{ int|netbsd32||adjtime(netbsd32_timeval50p_t delta, \
344			    netbsd32_timeval50p_t olddelta); }
345141	COMPAT_43 MODULAR compat_netbsd32_43	\
346			{ int|netbsd32||ogetpeername(int fdes, \
347			    netbsd32_voidp asa, netbsd32_intp alen); }
348142	COMPAT_43 MODULAR compat_43	\
349			{ int32_t|sys||gethostid(void); } ogethostid
350143	COMPAT_43 MODULAR compat_netbsd32_43	\
351			{ int|netbsd32||sethostid(int32_t hostid); }
352144	COMPAT_43 MODULAR compat_netbsd32_43	\
353			{ int|netbsd32||ogetrlimit(int which, \
354			    netbsd32_orlimitp_t rlp); }
355145	COMPAT_43 MODULAR compat_netbsd32_43	\
356			{ int|netbsd32||osetrlimit(int which, \
357			    netbsd32_orlimitp_t rlp); }
358146	COMPAT_43 MODULAR compat_netbsd32_43	\
359			{ int|netbsd32||killpg(int pgid, int signum); }
360147	NOARGS		{ int|sys||setsid(void); }
361148	COMPAT_50 MODULAR compat_netbsd32_quota_50	\
362			{ int|netbsd32||quotactl(netbsd32_charp path, int cmd, \
363			    int uid, netbsd32_voidp arg); }
364149	EXCL 		compat_netbsd32_quota
365150	COMPAT_43 MODULAR compat_netbsd32_43	\
366			{ int|netbsd32||ogetsockname(int fdec, \
367			    netbsd32_voidp asa, netbsd32_intp alen); }
368
369; Syscalls 151-180 inclusive are reserved for vendor-specific
370; system calls.  (This includes various calls added for compatibity
371; with other Unix variants.)
372; Some of these calls are now supported by BSD...
373151	UNIMPL
374152	UNIMPL
375153	UNIMPL
376154	UNIMPL
377155	STD MODULAR compat_netbsd32_nfssrv	\
378			{ int|netbsd32||nfssvc(int flag, netbsd32_voidp argp); }
379156	COMPAT_43 MODULAR compat_netbsd32_43	\
380			{ int|netbsd32||ogetdirentries(int fd, \
381			    netbsd32_charp buf, u_int count, \
382			    netbsd32_longp basep); }
383157	COMPAT_20 MODULAR compat_netbsd32_20	\
384			{ int|netbsd32||statfs(netbsd32_charp path, \
385			    netbsd32_statfsp_t buf); }
386158	COMPAT_20 MODULAR compat_netbsd32_20	\
387			{ int|netbsd32||fstatfs(int fd, \
388			    netbsd32_statfsp_t buf); }
389159	UNIMPL
390160	UNIMPL
391161	COMPAT_30 MODULAR compat_netbsd32_30	\
392			{ int|netbsd32||getfh(netbsd32_charp fname, \
393			    netbsd32_compat_30_fhandlep_t fhp); }
394162	COMPAT_09 MODULAR compat_netbsd32_09	\
395			{ int|netbsd32||ogetdomainname( \
396			    netbsd32_charp domainname, int len); }
397163	COMPAT_09 MODULAR compat_netbsd32_09	\
398			{ int|netbsd32||osetdomainname( \
399			    netbsd32_charp domainname, int len); }
400164	COMPAT_09 MODULAR compat_netbsd32_09	\
401			{ int|netbsd32||uname(netbsd32_outsnamep_t name); }
402165	STD		{ int|netbsd32||sysarch(int op, netbsd32_voidp parms); }
403166	STD		{ int|netbsd32||__futex(netbsd32_intp uaddr, int op, \
404			    int val, const netbsd32_timespecp_t timeout, \
405			    netbsd32_intp uaddr2, int val2, int val3); }
406167	STD		{ int|netbsd32||__futex_set_robust_list( \
407			    netbsd32_voidp head, netbsd32_size_t len); }
408168	STD		{ int|netbsd32||__futex_get_robust_list(lwpid_t lwpid, \
409			    netbsd32_voidp headp, netbsd32_size_tp lenp); }
410169	COMPAT_10 MODULAR compat_netbsd32_sysvipc_10	\
411			{ int|netbsd32||semsys(int which, int a2, int a3, \
412			    int a4, int a5); } osemsys
413170	COMPAT_10 MODULAR compat_netbsd32_sysvipc_10	\
414			{ int|netbsd32||msgsys(int which, int a2, int a3, \
415			    int a4, int a5, int a6); } omsgsys
416171	COMPAT_10 MODULAR compat_netbsd32_sysvipc_10	\
417			{ int|netbsd32||shmsys(int which, int a2, int a3, \
418			    int a4); } oshmsys
419172	UNIMPL
420173	STD		{ netbsd32_ssize_t|netbsd32||pread(int fd, \
421			    netbsd32_voidp buf, netbsd32_size_t nbyte, \
422			    int PAD, netbsd32_off_t offset); }
423174	STD		{ netbsd32_ssize_t|netbsd32||pwrite(int fd, \
424			    netbsd32_voidp buf, netbsd32_size_t nbyte, \
425			    int PAD, netbsd32_off_t offset); }
426175	COMPAT_30 MODULAR compat_netbsd32_30	\
427			{ int|netbsd32||ntp_gettime( \
428			    netbsd32_ntptimeval50p_t ntvp); }
429#if defined(NTP) || !defined(_KERNEL_OPT)
430176	STD		{ int|netbsd32||ntp_adjtime(netbsd32_timexp_t tp); }
431#else
432176	EXCL		ntp_adjtime
433#endif
434177	UNIMPL
435178	UNIMPL
436179	UNIMPL
437180	UNIMPL
438
439; Syscalls 180-199 are used by/reserved for BSD
440181	STD		{ int|netbsd32||setgid(gid_t gid); }
441182	STD		{ int|netbsd32||setegid(gid_t egid); }
442183	STD		{ int|netbsd32||seteuid(uid_t euid); }
443184	EXCL		netbsd32_lfs_bmapv
444185	EXCL		netbsd32_lfs_markv
445186	EXCL		netbsd32_lfs_segclean
446187	EXCL		netbsd32_lfs_segwait
447188	COMPAT_12 MODULAR compat_netbsd32_12	\
448			{ int|netbsd32||stat12(netbsd32_charp path, \
449			    netbsd32_stat12p_t ub); }
450189	COMPAT_12 MODULAR compat_netbsd32_12	\
451			{ int|netbsd32||fstat12(int fd, netbsd32_stat12p_t sb); }
452190	COMPAT_12 MODULAR compat_netbsd32_12	\
453			{ int|netbsd32||lstat12(netbsd32_charp path, \
454			    netbsd32_stat12p_t ub); }
455191	STD		{ netbsd32_long|netbsd32||pathconf(netbsd32_charp path, \
456			    int name); }
457192	STD		{ netbsd32_long|netbsd32||fpathconf(int fd, int name); }
458193	STD		{ int|netbsd32||getsockopt2(int s, int level, int name, \
459			    netbsd32_voidp val, netbsd32_intp avalsize); }
460194	STD		{ int|netbsd32||getrlimit(int which, \
461			    netbsd32_rlimitp_t rlp); }
462195	STD		{ int|netbsd32||setrlimit(int which, \
463			    netbsd32_rlimitp_t rlp); }
464196	COMPAT_12 MODULAR compat_netbsd32_12	\
465			{ int|netbsd32||getdirentries(int fd, \
466			    netbsd32_charp buf, u_int count, \
467			    netbsd32_longp basep); }
468197	STD		{ netbsd32_voidp|netbsd32||mmap(netbsd32_voidp addr, \
469			    netbsd32_size_t len, int prot, int flags, int fd, \
470			    netbsd32_long PAD, netbsd32_off_t pos); }
471198	INDIR		{ quad_t|netbsd32||___syscall(quad_t code, \
472			    ... register32_t args[NETBSD32_SYS_MAXSYSARGS]); }
473199	STD		{ netbsd32_off_t|netbsd32||lseek(int fd, int PAD, \
474			    netbsd32_off_t offset, int whence); }
475200	STD		{ int|netbsd32||truncate(netbsd32_charp path, int PAD, \
476			    netbsd32_off_t length); }
477201	STD		{ int|netbsd32||ftruncate(int fd, int PAD, \
478			    netbsd32_off_t length); }
479202	STD		{ int|netbsd32||__sysctl(netbsd32_intp name, \
480			    u_int namelen, netbsd32_voidp oldv, \
481			    netbsd32_size_tp oldlenp, netbsd32_voidp newv, \
482			    netbsd32_size_t newlen); }
483203	STD		{ int|netbsd32||mlock(netbsd32_voidp addr, \
484			    netbsd32_size_t len); }
485204	STD		{ int|netbsd32||munlock(netbsd32_voidp addr, \
486			    netbsd32_size_t len); }
487205	STD		{ int|netbsd32||undelete(netbsd32_charp path); }
488206	COMPAT_50 MODULAR compat_netbsd32_50	\
489			{ int|netbsd32||futimes(int fd, \
490			    netbsd32_timeval50p_t tptr); }
491207	STD		{ int|netbsd32||getpgid(pid_t pid); }
492208	STD		{ int|netbsd32||reboot(int opt, \
493			    netbsd32_charp bootstr); }
494209	STD		{ int|netbsd32||poll(netbsd32_pollfdp_t fds, \
495			    u_int nfds, int timeout); }
496210	UNIMPL		{ int|netbsd32||afssys(long id, long a1, long a2, \
497			    long a3, long a4, long a5, long a6); }
498211	UNIMPL
499212	UNIMPL
500213	UNIMPL
501214	UNIMPL
502215	UNIMPL
503216	UNIMPL
504217	UNIMPL
505218	UNIMPL
506219	UNIMPL
507; System calls 220-300 are reserved for use by NetBSD
508220	COMPAT_14 MODULAR compat_netbsd32_sysvipc_14	\
509			{ int|netbsd32||__semctl(int semid, int semnum, \
510			    int cmd, netbsd32_semunu_t arg); }
511221	STD MODULAR compat_netbsd32_sysvipc	\
512			{ int|netbsd32||semget(netbsd32_key_t key, int nsems, \
513			    int semflg); }
514222	STD MODULAR compat_netbsd32_sysvipc	\
515			{ int|netbsd32||semop(int semid, \
516			    netbsd32_sembufp_t sops, netbsd32_size_t nsops); }
517223	STD MODULAR compat_netbsd32_sysvipc	\
518			{ int|netbsd32||semconfig(int flag); }
519224	COMPAT_14 MODULAR compat_netbsd32_sysvipc_14	\
520			{ int|netbsd32||msgctl(int msqid, int cmd, \
521			    netbsd32_msqid_ds14p_t buf); }
522225	STD MODULAR compat_netbsd32_sysvipc	\
523			{ int|netbsd32||msgget(netbsd32_key_t key, int msgflg); }
524226	STD MODULAR compat_netbsd32_sysvipc	\
525			{ int|netbsd32||msgsnd(int msqid, netbsd32_voidp msgp, \
526			    netbsd32_size_t msgsz, int msgflg); }
527227	STD MODULAR compat_netbsd32_sysvipc	\
528			{ netbsd32_ssize_t|netbsd32||msgrcv(int msqid, \
529			    netbsd32_voidp msgp, netbsd32_size_t msgsz, \
530			    netbsd32_long msgtyp, int msgflg); }
531228	STD MODULAR compat_netbsd32_sysvipc	\
532			{ netbsd32_voidp|netbsd32||shmat(int shmid, \
533			    netbsd32_voidp shmaddr, int shmflg); }
534229	COMPAT_14 MODULAR compat_netbsd32_sysvipc_14	\
535			{ int|netbsd32||shmctl(int shmid, int cmd, \
536			    netbsd32_shmid_dsp_t buf); }
537230	STD MODULAR compat_netbsd32_sysvipc	\
538			{ int|netbsd32||shmdt(netbsd32_voidp shmaddr); }
539231	STD MODULAR compat_netbsd32_sysvipc	\
540			{ int|netbsd32||shmget(netbsd32_key_t key, \
541			    netbsd32_size_t size, int shmflg); }
542232	COMPAT_50 MODULAR compat_netbsd32_50	\
543			{ int|netbsd32||clock_gettime( \
544			    netbsd32_clockid_t clock_id, \
545			    netbsd32_timespec50p_t tp); }
546233	COMPAT_50 MODULAR compat_netbsd32_50	\
547			{ int|netbsd32||clock_settime( \
548			    netbsd32_clockid_t clock_id, \
549			    netbsd32_timespec50p_t tp); }
550234	COMPAT_50 MODULAR compat_netbsd32_50	\
551			{ int|netbsd32||clock_getres( \
552			    netbsd32_clockid_t clock_id, \
553			    netbsd32_timespec50p_t tp); }
554235	STD		{ int|netbsd32||timer_create( \
555			    netbsd32_clockid_t clock_id, \
556			    netbsd32_sigeventp_t evp, \
557			    netbsd32_timerp_t timerid); }
558236	STD		{ int|netbsd32||timer_delete(netbsd32_timer_t timerid); }
559237	COMPAT_50 MODULAR compat_netbsd32_50	\
560			{ int|netbsd32||timer_settime(netbsd32_timer_t timerid, \
561			    int flags, \
562			    netbsd32_itimerspec50p_t value, \
563			    netbsd32_itimerspec50p_t ovalue); }
564238	COMPAT_50 MODULAR compat_netbsd32_50	\
565			{ int|netbsd32||timer_gettime(netbsd32_timer_t timerid, \
566			    netbsd32_itimerspec50p_t value); }
567239	STD		{ int|netbsd32||timer_getoverrun( \
568			    netbsd32_timer_t timerid); }
569;
570; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
571;
572240	COMPAT_50 MODULAR compat_netbsd32_50	\
573			{ int|netbsd32||nanosleep(netbsd32_timespec50p_t rqtp, \
574			    netbsd32_timespec50p_t rmtp); }
575241	STD		{ int|netbsd32||fdatasync(int fd); }
576242	STD		{ int|netbsd32||mlockall(int flags); }
577243	NOARGS		{ int|sys||munlockall(void); }
578244	COMPAT_50 MODULAR compat_netbsd32_50	\
579			{ int|netbsd32||__sigtimedwait(netbsd32_sigsetp_t set, \
580			    netbsd32_siginfop_t info, \
581			    netbsd32_timespec50p_t timeout); }
582245	STD		{ int|netbsd32||sigqueueinfo(pid_t pid, \
583			    const netbsd32_siginfop_t info); }
584246	STD		{ int|netbsd32||modctl(int cmd, netbsd32_voidp arg); }
585247	STD		{ int|netbsd32||_ksem_init(unsigned int value, \
586			    netbsd32_semidp_t idp); }
587248	STD		{ int|netbsd32||_ksem_open(netbsd32_charp name, \
588			    int oflag, mode_t mode, unsigned int value, \
589			    netbsd32_semidp_t idp); }
590249	STD		{ int|netbsd32||_ksem_unlink(netbsd32_charp name); }
591250	STD		{ int|netbsd32||_ksem_close(netbsd32_intptr_t id); }
592251	STD		{ int|netbsd32||_ksem_post(netbsd32_intptr_t id); }
593252	STD		{ int|netbsd32||_ksem_wait(netbsd32_intptr_t id); }
594253	STD		{ int|netbsd32||_ksem_trywait(netbsd32_intptr_t id); }
595254	STD		{ int|netbsd32||_ksem_getvalue(netbsd32_intptr_t id, \
596			    netbsd32_intp value); }
597255	STD		{ int|netbsd32||_ksem_destroy(netbsd32_intptr_t id); }
598256	STD		{ int|netbsd32||_ksem_timedwait(intptr_t id, \
599				const netbsd32_timespecp_t abstime); }
600257	STD MODULAR compat_netbsd32_mqueue	\
601			{ mqd_t|netbsd32||mq_open(const netbsd32_charp name, \
602			    int oflag, mode_t mode, \
603			    netbsd32_mq_attrp_t attr); }
604258	STD MODULAR compat_netbsd32_mqueue	\
605	 		{ int|netbsd32||mq_close(mqd_t mqdes); }
606259	STD MODULAR compat_netbsd32_mqueue	\
607	 		{ int|netbsd32||mq_unlink(const netbsd32_charp name); }
608260	STD MODULAR compat_netbsd32_mqueue	\
609			{ int|netbsd32||mq_getattr(mqd_t mqdes, \
610			    netbsd32_mq_attrp_t mqstat); }
611261	STD MODULAR compat_netbsd32_mqueue	\
612	 		{ int|netbsd32||mq_setattr(mqd_t mqdes, \
613			    const netbsd32_mq_attrp_t mqstat, \
614			    netbsd32_mq_attrp_t omqstat); }
615262	STD MODULAR compat_netbsd32_mqueue	\
616			{ int|netbsd32||mq_notify(mqd_t mqdes, \
617			    const netbsd32_sigeventp_t notification); }
618263	STD MODULAR compat_netbsd32_mqueue	\
619			{ int|netbsd32||mq_send(mqd_t mqdes, \
620			    const netbsd32_charp msg_ptr, \
621			    netbsd32_size_t msg_len, unsigned msg_prio); }
622264	STD MODULAR compat_netbsd32_mqueue	\
623			{ netbsd32_ssize_t|netbsd32||mq_receive(mqd_t mqdes, \
624			    netbsd32_charp msg_ptr, \
625			    netbsd32_size_t msg_len, netbsd32_uintp msg_prio); }
626265	COMPAT_50 MODULAR compat_netbsd32_mqueue	\
627			{ int|netbsd32||mq_timedsend(mqd_t mqdes, \
628			    const netbsd32_charp msg_ptr, \
629			    netbsd32_size_t msg_len, \
630			    unsigned msg_prio, \
631			    const netbsd32_timespec50p_t abs_timeout); }
632266	COMPAT_50 MODULAR compat_netbsd32_mqueue	\
633			{ netbsd32_ssize_t|netbsd32||mq_timedreceive( \
634			    mqd_t mqdes, \
635			    netbsd32_charp msg_ptr, netbsd32_size_t msg_len, \
636			    netbsd32_uintp msg_prio, \
637			    const netbsd32_timespec50p_t abs_timeout); }
638267	UNIMPL
639268	UNIMPL
640269	UNIMPL
641270	STD		{ int|netbsd32||__posix_rename(netbsd32_charp from, \
642			    netbsd32_charp to); }
643271	STD		{ int|netbsd32||swapctl(int cmd, netbsd32_voidp arg, \
644			    int misc); }
645272	COMPAT_30 MODULAR compat_netbsd32_30	\
646			{ int|netbsd32||getdents(int fd, netbsd32_charp buf, \
647			    netbsd32_size_t count); }
648273	STD		{ int|netbsd32||minherit(netbsd32_voidp addr, \
649			    netbsd32_size_t len, int inherit); }
650274	STD		{ int|netbsd32||lchmod(netbsd32_charp path, \
651			    mode_t mode); }
652275	STD		{ int|netbsd32||lchown(netbsd32_charp path, uid_t uid, \
653			    gid_t gid); }
654276	COMPAT_50 MODULAR compat_netbsd32_50	\
655			{ int|netbsd32||lutimes(netbsd32_charp path, \
656			    netbsd32_timeval50p_t tptr); }
657277	STD		{ int|netbsd32|13|msync(netbsd32_voidp addr, \
658			    netbsd32_size_t len, int flags); }
659278	COMPAT_30 MODULAR compat_netbsd32_30	\
660			{ int|netbsd32|13|stat(netbsd32_charp path, \
661			    netbsd32_stat13p_t ub); }
662279	COMPAT_30 MODULAR compat_netbsd32_30	\
663			{ int|netbsd32|13|fstat(int fd, \
664			    netbsd32_stat13p_t sb); }
665280	COMPAT_30 MODULAR compat_netbsd32_30	\
666			{ int|netbsd32|13|lstat(netbsd32_charp path, \
667			    netbsd32_stat13p_t ub); }
668281	STD		{ int|netbsd32|14|sigaltstack(\
669			    netbsd32_sigaltstackp_t nss, \
670			    netbsd32_sigaltstackp_t oss); }
671282	NOARGS		{ int|sys|14|vfork(void); }
672283	STD		{ int|netbsd32||__posix_chown(netbsd32_charp path, \
673			    uid_t uid, gid_t gid); }
674284	STD		{ int|netbsd32||__posix_fchown(int fd, uid_t uid, \
675			    gid_t gid); }
676285	STD		{ int|netbsd32||__posix_lchown(netbsd32_charp path, \
677			    uid_t uid, gid_t gid); }
678286	STD		{ pid_t|netbsd32||getsid(pid_t pid); }
679287	STD		{ int|netbsd32||__clone(int flags, \
680			    netbsd32_voidp stack); }
681288	STD		{ int|netbsd32||fktrace(int fd, int ops, int facs, \
682			    int pid); }
683289	STD		{ netbsd32_ssize_t|netbsd32||preadv(int fd, \
684			    netbsd32_iovecp_t iovp, int iovcnt, int PAD, \
685			    netbsd32_off_t offset); }
686290	STD		{ netbsd32_ssize_t|netbsd32||pwritev(int fd, \
687			    netbsd32_iovecp_t iovp, int iovcnt, int PAD, \
688			    netbsd32_off_t offset); }
689291	STD		{ int|netbsd32|14|sigaction(int signum, \
690			    netbsd32_sigactionp_t nsa, \
691			    netbsd32_sigactionp_t osa); }
692292	STD		{ int|netbsd32|14|sigpending(netbsd32_sigsetp_t set); }
693293	STD		{ int|netbsd32|14|sigprocmask(int how, \
694			    netbsd32_sigsetp_t set, \
695			    netbsd32_sigsetp_t oset); }
696294	STD		{ int|netbsd32|14|sigsuspend(netbsd32_sigsetp_t set); }
697295	COMPAT_16 MODULAR compat_netbsd32_16	\
698			{ int|netbsd32|14|sigreturn( \
699			    netbsd32_sigcontextp_t sigcntxp); }
700296	STD		{ int|netbsd32||__getcwd(netbsd32_charp bufp, \
701			    netbsd32_size_t length); }
702297	STD		{ int|netbsd32||fchroot(int fd); }
703298	COMPAT_30 MODULAR compat_netbsd32_30	\
704			{ int|netbsd32||fhopen(netbsd32_fhandlep_t fhp, \
705			   int flags); }
706299	COMPAT_30 MODULAR compat_netbsd32_30	\
707			{ int|netbsd32||fhstat(netbsd32_fhandlep_t fhp, \
708			    netbsd32_stat13p_t sb); }
709300	COMPAT_20 MODULAR compat_netbsd32_20	\
710			{ int|netbsd32||fhstatfs(netbsd32_fhandlep_t fhp, \
711			    netbsd32_stat50p_t buf); }
712301	COMPAT_50 MODULAR compat_netbsd32_sysvipc_50	\
713			{ int|netbsd32|14|semctl(int semid, int semnum, \
714			    int cmd, ... netbsd32_semun50p_t arg); }
715302	COMPAT_50 MODULAR compat_netbsd32_sysvipc_50	\
716			{ int|netbsd32|13|msgctl(int msqid, int cmd, \
717			    netbsd32_msqid_ds50p_t buf); }
718303	COMPAT_50 MODULAR compat_netbsd32_sysvipc_50	\
719			{ int|netbsd32|13|shmctl(int shmid, int cmd, \
720			    netbsd32_shmid_ds50p_t buf); }
721304	STD		{ int|netbsd32||lchflags(netbsd32_charp path, \
722			    netbsd32_u_long flags); }
723305	NOARGS 		{ int|sys||issetugid(void); }
724306	STD		{ int|netbsd32||utrace(netbsd32_charp label, \
725			    netbsd32_voidp addr, netbsd32_size_t len); }
726307	STD		{ int|netbsd32||getcontext(netbsd32_ucontextp ucp); }
727308	STD		{ int|netbsd32||setcontext(netbsd32_ucontextp ucp); }
728309	STD		{ int|netbsd32||_lwp_create(netbsd32_ucontextp ucp, \
729			    netbsd32_u_long flags, netbsd32_lwpidp new_lwp); }
730310	NOARGS		{ int|sys||_lwp_exit(void); }
731311	NOARGS 		{ lwpid_t|sys||_lwp_self(void); }
732312	STD 		{ int|netbsd32||_lwp_wait(lwpid_t wait_for, \
733			    netbsd32_lwpidp departed); }
734313	STD 		{ int|netbsd32||_lwp_suspend(lwpid_t target); }
735314	STD 		{ int|netbsd32||_lwp_continue(lwpid_t target); }
736315	STD 		{ int|netbsd32||_lwp_wakeup(lwpid_t target); }
737316	NOARGS 		{ netbsd32_voidp|sys||_lwp_getprivate(void); }
738317	STD 		{ void|netbsd32||_lwp_setprivate(netbsd32_voidp ptr); }
739318	STD		{ int|netbsd32||_lwp_kill(lwpid_t target, int signo); }
740319	STD 		{ int|netbsd32||_lwp_detach(lwpid_t target); }
741320	COMPAT_50 MODULAR compat_netbsd32_50	\
742			{ int|netbsd32||_lwp_park(netbsd32_timespec50p_t ts, \
743			    lwpid_t unpark, netbsd32_voidp hint, \
744			    netbsd32_voidp unparkhint); }
745321	STD 		{ int|netbsd32||_lwp_unpark(lwpid_t target, \
746			    netbsd32_voidp hint); }
747322	STD 		{ netbsd32_size_t|netbsd32||_lwp_unpark_all( \
748			    netbsd32_lwpidp targets, netbsd32_size_t ntargets, \
749			    netbsd32_voidp hint); }
750323	STD		{ int|netbsd32||_lwp_setname(lwpid_t target, \
751				netbsd32_charp name); }
752324	STD		{ int|netbsd32||_lwp_getname(lwpid_t target, \
753				netbsd32_charp name, netbsd32_size_t len); }
754325	STD 		{ int|netbsd32||_lwp_ctl(int features, \
755				netbsd32_pointer_t address); }
756326	UNIMPL
757327	UNIMPL
758328	UNIMPL
759329	UNIMPL
760330	OBSOL		netbsd32_sa_register
761331	OBSOL		netbsd32_sa_stacks
762332	OBSOL		sa_enable
763333	OBSOL		netbsd32_sa_setconcurrency
764334	OBSOL		sa_yield
765335	OBSOL		netbsd32_sa_preempt
766336	OBSOL		sys_sa_unblockyield
767337	UNIMPL
768338	UNIMPL
769339	UNIMPL
770340	STD		{ int|netbsd32||__sigaction_sigtramp(int signum, \
771			    netbsd32_sigactionp_t nsa, \
772			    netbsd32_sigactionp_t osa, \
773			    netbsd32_voidp tramp, int vers); }
774341	OBSOL		netbsd32_pmc_get_info
775342	OBSOL		netbsd32_pmc_control
776343	STD		{ int|netbsd32||rasctl(netbsd32_voidp addr, \
777			    netbsd32_size_t len, int op); }
778344	NOARGS		{ int|sys||kqueue(void); }
779345	COMPAT_50 MODULAR compat_netbsd32_50	\
780			{ int|netbsd32||kevent(int fd, \
781			    netbsd32_keventp_t changelist, \
782			    netbsd32_size_t nchanges, \
783			    netbsd32_keventp_t eventlist, \
784			    netbsd32_size_t nevents, \
785			    netbsd32_timespec50p_t timeout); }
786; Scheduling system calls.
787346	STD 		{ int|netbsd32||_sched_setparam(pid_t pid, lwpid_t lid, \
788			    int policy, const netbsd32_sched_paramp_t params); }
789347	STD 		{ int|netbsd32||_sched_getparam(pid_t pid, lwpid_t lid, \
790			    netbsd32_intp policy, \
791			    netbsd32_sched_paramp_t params); }
792348	STD 		{ int|netbsd32||_sched_setaffinity(pid_t pid, \
793			    lwpid_t lid, netbsd32_size_t size, \
794			    const netbsd32_cpusetp_t cpuset); }
795349	STD 		{ int|netbsd32||_sched_getaffinity(pid_t pid, \
796			    lwpid_t lid, netbsd32_size_t size, \
797			    netbsd32_cpusetp_t cpuset); }
798350	NOARGS 		{ int|sys||sched_yield(void); }
799351	STD		{ int|netbsd32||_sched_protect(int priority); }
800352	UNIMPL
801353	UNIMPL
802354	STD		{ int|netbsd32||fsync_range(int fd, int flags, \
803			    netbsd32_off_t start, netbsd32_off_t length); }
804355	STD		{ int|netbsd32||uuidgen(netbsd32_uuidp_t store, \
805			    int count); }
806356	COMPAT_90 MODULAR compat_netbsd32_90 \
807			{ int|netbsd32||getvfsstat(netbsd32_statvfs90p_t buf, \
808			    netbsd32_size_t bufsize, int flags); }
809357	COMPAT_90 MODULAR compat_netbsd32_90 \
810			{ int|netbsd32||statvfs1(netbsd32_charp path, \
811			    netbsd32_statvfs90p_t buf, int flags); }
812358	COMPAT_90 MODULAR compat_netbsd32_90 \
813			{ int|netbsd32||fstatvfs1(int fd, \
814			    netbsd32_statvfs90p_t buf, int flags); }
815359	COMPAT_30 MODULAR compat_netbsd32_30	\
816			{ int|netbsd32||fhstatvfs1(netbsd32_fhandlep_t fhp, \
817			    netbsd32_statvfs90p_t buf, int flags); }
818360	STD		{ int|netbsd32||extattrctl(netbsd32_charp path, \
819			    int cmd, netbsd32_charp filename, \
820			    int attrnamespace, netbsd32_charp attrname); }
821361	STD		{ int|netbsd32||extattr_set_file(netbsd32_charp path, \
822			    int attrnamespace, netbsd32_charp attrname, \
823			    netbsd32_voidp data, netbsd32_size_t nbytes); }
824362	STD		{ int|netbsd32||extattr_get_file(netbsd32_charp path, \
825			    int attrnamespace, netbsd32_charp attrname, \
826			    netbsd32_voidp data, netbsd32_size_t nbytes); }
827363	STD		{ int|netbsd32||extattr_delete_file( \
828			    netbsd32_charp path, int attrnamespace, \
829			    netbsd32_charp attrname); }
830364	STD		{ int|netbsd32||extattr_set_fd(int fd, \
831			    int attrnamespace, netbsd32_charp attrname, \
832			    netbsd32_voidp data, netbsd32_size_t nbytes); }
833365	STD		{ int|netbsd32||extattr_get_fd(int fd, \
834			    int attrnamespace, netbsd32_charp attrname, \
835			    netbsd32_voidp data, netbsd32_size_t nbytes); }
836366	STD		{ int|netbsd32||extattr_delete_fd(int fd, \
837			    int attrnamespace, netbsd32_charp attrname); }
838367	STD		{ int|netbsd32||extattr_set_link(netbsd32_charp path, \
839			    int attrnamespace, netbsd32_charp attrname, \
840			    netbsd32_voidp data, netbsd32_size_t nbytes); }
841368	STD		{ int|netbsd32||extattr_get_link(netbsd32_charp path, \
842			    int attrnamespace, netbsd32_charp attrname, \
843			    netbsd32_voidp data, netbsd32_size_t nbytes); }
844369	STD		{ int|netbsd32||extattr_delete_link( \
845			    netbsd32_charp path, int attrnamespace, \
846			    netbsd32_charp attrname); }
847370	STD		{ int|netbsd32||extattr_list_fd(int fd, \
848			    int attrnamespace, netbsd32_voidp data, \
849			    netbsd32_size_t nbytes); }
850371	STD		{ int|netbsd32||extattr_list_file(netbsd32_charp path, \
851			    int attrnamespace, netbsd32_voidp data, \
852			    netbsd32_size_t nbytes); }
853372	STD		{ int|netbsd32||extattr_list_link(netbsd32_charp path, \
854			    int attrnamespace, netbsd32_voidp data, \
855			    netbsd32_size_t nbytes); }
856373	COMPAT_50 MODULAR compat_netbsd32_50	\
857			{ int|netbsd32||pselect(int nd, netbsd32_fd_setp_t in, \
858			    netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \
859			    netbsd32_timespec50p_t ts, \
860			    netbsd32_sigsetp_t mask); }
861374	COMPAT_50 MODULAR compat_netbsd32_50	\
862			{ int|netbsd32||pollts(netbsd32_pollfdp_t fds, \
863			    u_int nfds, netbsd32_timespec50p_t ts, \
864			    netbsd32_sigsetp_t mask); }
865375	STD		{ int|netbsd32||setxattr(netbsd32_charp path, \
866			    netbsd32_charp name, netbsd32_voidp value, \
867			    netbsd32_size_t size, int flags); }
868376	STD		{ int|netbsd32||lsetxattr(netbsd32_charp path, \
869			    netbsd32_charp name, netbsd32_voidp value, \
870			    netbsd32_size_t size, int flags); }
871377	STD		{ int|netbsd32||fsetxattr(int fd, \
872			    netbsd32_charp name, netbsd32_voidp value, \
873			    netbsd32_size_t size, int flags); }
874378	STD		{ int|netbsd32||getxattr(netbsd32_charp path, \
875			    netbsd32_charp name, netbsd32_voidp value, \
876			    netbsd32_size_t size); }
877379	STD		{ int|netbsd32||lgetxattr(netbsd32_charp path, \
878			    netbsd32_charp name, netbsd32_voidp value, \
879			    netbsd32_size_t size); }
880380	STD		{ int|netbsd32||fgetxattr(int fd, \
881			    netbsd32_charp name, netbsd32_voidp value, \
882			    netbsd32_size_t size); }
883381	STD		{ int|netbsd32||listxattr(netbsd32_charp path, \
884			    netbsd32_charp list, netbsd32_size_t size); }
885382	STD		{ int|netbsd32||llistxattr(netbsd32_charp path, \
886			    netbsd32_charp list, netbsd32_size_t size); }
887383	STD		{ int|netbsd32||flistxattr(int fd, \
888			    netbsd32_charp list, netbsd32_size_t size); }
889384	STD		{ int|netbsd32||removexattr(netbsd32_charp path, \
890			    netbsd32_charp name); }
891385	STD		{ int|netbsd32||lremovexattr(netbsd32_charp path, \
892			    netbsd32_charp name); }
893386	STD		{ int|netbsd32||fremovexattr(int fd, \
894			    netbsd32_charp name); }
895387     COMPAT_50 MODULAR compat_netbsd32_50	\
896			{ int|netbsd32|30|stat(netbsd32_charp path, \
897			    netbsd32_stat50p_t ub); }
898388     COMPAT_50 MODULAR compat_netbsd32_50	\
899			{ int|netbsd32|30|fstat(int fd, \
900			    netbsd32_stat50p_t sb); }
901389     COMPAT_50 MODULAR compat_netbsd32_50	\
902			{ int|netbsd32|30|lstat( \
903			    netbsd32_charp path, netbsd32_stat50p_t ub); }
904390     STD             { int|netbsd32|30|getdents(int fd, \
905			    netbsd32_charp buf, netbsd32_size_t count); }
906391	IGNORED		old posix fadvise
907392	COMPAT_30 MODULAR compat_netbsd32_30	\
908			{ int|netbsd32|30|fhstat( \
909			    netbsd32_fhandlep_t fhp, \
910			    netbsd32_stat50p_t sb); }
911393	COMPAT_50 MODULAR compat_netbsd32_50	\
912			{ int|netbsd32||ntp_gettime( \
913			    netbsd32_ntptimeval50p_t ntvp); }
914394	STD		{ int|netbsd32|30|socket(int domain, int type, \
915			    int protocol); }
916395	STD		{ int|netbsd32|30|getfh(netbsd32_charp fname, \
917			    netbsd32_pointer_t fhp, netbsd32_size_tp fh_size); }
918396	STD		{ int|netbsd32|40|fhopen(netbsd32_pointer_t fhp, \
919			    netbsd32_size_t fh_size, int flags); }
920397	COMPAT_90 MODULAR compat_netbsd90 \
921			{ int|netbsd32||fhstatvfs1(	\
922			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
923			    netbsd32_statvfs90p_t buf, int flags); }
924398	COMPAT_50 MODULAR compat_netbsd32_50	\
925			{ int|netbsd32|40|fhstat(	\
926			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
927			    netbsd32_stat50p_t sb); }
928
929; Asynchronous I/O system calls
930399	UNIMPL		sys_aio_cancel
931400	UNIMPL		sys_aio_error
932401	UNIMPL		sys_aio_fsync
933402	UNIMPL		sys_aio_read
934403	UNIMPL		sys_aio_return
935404	UNIMPL		sys_aio_suspend
936405     UNIMPL		sys_aio_write
937406	UNIMPL		sys_lio_listio
938
939407	UNIMPL
940408	UNIMPL
941409	UNIMPL
942
943410	STD		{ int|netbsd32||__mount50(netbsd32_charp type, \
944			    netbsd32_charp path, int flags, \
945			    netbsd32_voidp data, netbsd32_size_t data_len); }
946411	STD 		{ netbsd32_voidp|netbsd32||mremap( \
947			    netbsd32_voidp old_address, \
948			    netbsd32_size_t old_size, \
949			    netbsd32_voidp new_address, \
950			    netbsd32_size_t new_size, int flags); }
951
952412	STD		{ int|netbsd32||pset_create(netbsd32_psetidp_t psid); }
953413	STD		{ int|netbsd32||pset_destroy(psetid_t psid); }
954414	STD		{ int|netbsd32||pset_assign(psetid_t psid, \
955			  cpuid_t cpuid, netbsd32_psetidp_t opsid); }
956415	STD		{ int|netbsd32||_pset_bind(idtype_t idtype, \
957			  id_t first_id, id_t second_id, psetid_t psid, \
958			  netbsd32_psetidp_t opsid); }
959
960416	STD 		{ int|netbsd32|50|posix_fadvise(int fd, int PAD, \
961			    netbsd32_off_t offset, netbsd32_off_t len, int advice); }
962417	STD 		{ int|netbsd32|50|select(int nd, \
963			    netbsd32_fd_setp_t in,  netbsd32_fd_setp_t ou, \
964			    netbsd32_fd_setp_t ex, netbsd32_timevalp_t tv); }
965418	STD 		{ int|netbsd32|50|gettimeofday( \
966			    netbsd32_timevalp_t tp, netbsd32_voidp tzp); }
967419	STD 		{ int|netbsd32|50|settimeofday( \
968			    const netbsd32_timevalp_t tv, \
969			    const netbsd32_voidp tzp); }
970420	STD  		{ int|netbsd32|50|utimes(const netbsd32_charp path, \
971			    const netbsd32_timevalp_t tptr); }
972421	STD		{ int|netbsd32|50|adjtime( \
973			    const netbsd32_timevalp_t delta, \
974			    netbsd32_timevalp_t olddelta); }
975422	EXCL		__lfs_segwait50
976423	STD 		{ int|netbsd32|50|futimes(int fd, \
977			    const netbsd32_timevalp_t tptr); }
978424	STD  		{ int|netbsd32|50|lutimes(const netbsd32_charp path, \
979			    const netbsd32_timevalp_t tptr); }
980425	STD		{ int|netbsd32|50|setitimer(int which, \
981			    const netbsd32_itimervalp_t itv, \
982			    netbsd32_itimervalp_t oitv); }
983426	STD		{ int|netbsd32|50|getitimer(int which, \
984			    netbsd32_itimervalp_t itv); }
985427	STD 		{ int|netbsd32|50|clock_gettime(clockid_t clock_id, \
986			    netbsd32_timespecp_t tp); }
987428	STD 		{ int|netbsd32|50|clock_settime(clockid_t clock_id, \
988			    const netbsd32_timespecp_t tp); }
989429	STD 		{ int|netbsd32|50|clock_getres(clockid_t clock_id, \
990			    netbsd32_timespecp_t tp); }
991430	STD 		{ int|netbsd32|50|nanosleep( \
992			    const netbsd32_timespecp_t rqtp, \
993			    netbsd32_timespecp_t rmtp); }
994431	STD 		{ int|netbsd32|50|__sigtimedwait( \
995			    const netbsd32_sigsetp_t set, \
996			    netbsd32_siginfop_t info, \
997			    netbsd32_timespecp_t timeout); }
998432	STD MODULAR compat_netbsd32_mqueue	\
999			{ int|netbsd32|50|mq_timedsend(mqd_t mqdes, \
1000			    const netbsd32_charp msg_ptr, \
1001			    netbsd32_size_t msg_len, \
1002			    unsigned msg_prio, \
1003			    const netbsd32_timespecp_t abs_timeout); }
1004433	STD MODULAR compat_netbsd32_mqueue	\
1005			{ netbsd32_ssize_t|netbsd32|50|mq_timedreceive( \
1006			    mqd_t mqdes, netbsd32_charp msg_ptr, \
1007			    netbsd32_size_t msg_len, netbsd32_uintp msg_prio, \
1008			    const netbsd32_timespecp_t abs_timeout); }
1009434	COMPAT_60 MODULAR compat_netbsd32_60	\
1010		 	{ int|netbsd32||_lwp_park( \
1011			    const netbsd32_timespecp_t ts, \
1012			    lwpid_t unpark, const netbsd32_voidp hint, \
1013			    const netbsd32_voidp unparkhint); }
1014435	STD 		{ int|netbsd32|50|kevent(int fd, \
1015			    const netbsd32_keventp_t changelist, \
1016			    netbsd32_size_t nchanges, \
1017			    netbsd32_keventp_t eventlist, \
1018			    netbsd32_size_t nevents, \
1019			    const netbsd32_timespecp_t timeout); }
1020436	STD 		{ int|netbsd32|50|pselect(int nd, \
1021			    netbsd32_fd_setp_t in, \
1022			    netbsd32_fd_setp_t ou, \
1023			    netbsd32_fd_setp_t ex, \
1024			    const netbsd32_timespecp_t ts, \
1025			    const netbsd32_sigsetp_t mask); }
1026437	STD 		{ int|netbsd32|50|pollts(netbsd32_pollfdp_t fds, \
1027			    u_int nfds, const netbsd32_timespecp_t ts, \
1028			    const netbsd32_sigsetp_t mask); }
1029438	UNIMPL 		netbsd32___aio_suspend50
1030439	STD 		{ int|netbsd32|50|stat(const netbsd32_charp path, \
1031			    netbsd32_statp_t ub); }
1032440	STD 		{ int|netbsd32|50|fstat(int fd, netbsd32_statp_t sb); }
1033441	STD 		{ int|netbsd32|50|lstat(const netbsd32_charp path, \
1034			    netbsd32_statp_t ub); }
1035442	STD MODULAR compat_netbsd32_sysvipc	\
1036	 		{ int|netbsd32|50|__semctl(int semid, int semnum, \
1037			    int cmd, ... netbsd32_semunp_t arg); }
1038443	STD MODULAR compat_netbsd32_sysvipc	\
1039	 		{ int|netbsd32|50|shmctl(int shmid, int cmd, \
1040			    netbsd32_shmid_dsp_t buf); }
1041444	STD MODULAR compat_netbsd32_sysvipc	\
1042	 		{ int|netbsd32|50|msgctl(int msqid, int cmd, \
1043			    netbsd32_msqid_dsp_t buf); }
1044445	STD 		{ int|netbsd32|50|getrusage(int who, \
1045			    netbsd32_rusagep_t rusage); }
1046446	STD		{ int|netbsd32|50|timer_settime(timer_t timerid, \
1047			    int flags, const netbsd32_itimerspecp_t value, \
1048			    netbsd32_itimerspecp_t ovalue); }
1049447	STD		{ int|netbsd32|50|timer_gettime(timer_t timerid, \
1050			    netbsd32_itimerspecp_t value); }
1051#if defined(NTP) || !defined(_KERNEL_OPT)
1052448	STD		{ int|netbsd32|50|ntp_gettime( \
1053			    netbsd32_ntptimevalp_t ntvp); }
1054#else
1055448	EXCL		___ntp_gettime50
1056#endif
1057449	STD 		{ int|netbsd32|50|wait4(int pid, \
1058			    netbsd32_intp status, \
1059			    int options, netbsd32_rusagep_t rusage); }
1060450	STD 		{ int|netbsd32|50|mknod(const netbsd32_charp path, \
1061			    mode_t mode, netbsd32_dev_t dev); }
1062451	STD	 	{ int|netbsd32|50|fhstat(const netbsd32_voidp fhp, \
1063			    netbsd32_size_t fh_size, netbsd32_statp_t sb); }
1064452	OBSOL		5.99 quotactl
1065453	STD		{ int|netbsd32||pipe2(netbsd32_intp fildes, int flags); }
1066454	STD		{ int|netbsd32||dup3(int from, int to, int flags); }
1067455	STD		{ int|netbsd32||kqueue1(int flags); }
1068456	STD  		{ int|netbsd32||paccept(int s, \
1069			    netbsd32_sockaddrp_t name, \
1070			    netbsd32_socklenp_t anamelen, \
1071			    const netbsd32_sigsetp_t mask, \
1072			    int flags); }
1073457	STD  		{ int|netbsd32||linkat(int fd1, \
1074			    const netbsd32_charp name1, \
1075			    int fd2, \
1076			    const netbsd32_charp name2, \
1077			    int flags); }
1078458	STD  		{ int|netbsd32||renameat(int fromfd, \
1079			    const netbsd32_charp from, \
1080			    int tofd, \
1081			    const netbsd32_charp to); }
1082459	STD  		{ int|netbsd32||mkfifoat(int fd, \
1083			    const netbsd32_charp path, \
1084			    mode_t mode); }
1085460	STD  		{ int|netbsd32||mknodat(int fd, \
1086			    const netbsd32_charp path, \
1087			    mode_t mode, int PAD, \
1088			    netbsd32_dev_t dev); }
1089461	STD  		{ int|netbsd32||mkdirat(int fd, \
1090			    const netbsd32_charp path, \
1091			    mode_t mode); }
1092462	STD  		{ int|netbsd32||faccessat(int fd, \
1093			    const netbsd32_charp path, \
1094			    int amode, \
1095			    int flag); }
1096463	STD  		{ int|netbsd32||fchmodat(int fd, \
1097			    const netbsd32_charp path, \
1098			    mode_t mode, \
1099			    int flag); }
1100464	STD  		{ int|netbsd32||fchownat(int fd, \
1101			    const netbsd32_charp path, \
1102			    uid_t owner, \
1103			    gid_t group, \
1104			    int flag); }
1105465	STD  		{ int|netbsd32||fexecve(int fd, \
1106			    netbsd32_charpp argp, \
1107			    netbsd32_charpp envp); }
1108466	STD  		{ int|netbsd32||fstatat(int fd, \
1109			    const netbsd32_charp path, \
1110			    netbsd32_statp_t buf, \
1111			    int flag); }
1112467	STD  		{ int|netbsd32||utimensat(int fd, \
1113			    const netbsd32_charp path, \
1114			    const netbsd32_timespecp_t tptr, \
1115			    int flag); }
1116468	STD  		{ int|netbsd32||openat(int fd, \
1117			    const netbsd32_charp path, \
1118			    int oflags, ... \
1119			    mode_t mode); }
1120469	STD  		{ netbsd32_ssize_t|netbsd32||readlinkat(int fd, \
1121			    const netbsd32_charp path, \
1122			    netbsd32_charp buf, \
1123			    netbsd32_size_t bufsize); }
1124470	STD  		{ int|netbsd32||symlinkat(const netbsd32_charp path1, \
1125			    int fd, \
1126			    const netbsd32_charp path2); }
1127471	STD  		{ int|netbsd32||unlinkat(int fd, \
1128			    const netbsd32_charp path, \
1129			    int flag); }
1130472	STD  		{ int|netbsd32||futimens(int fd, \
1131			    const netbsd32_timespecp_t tptr); }
1132473	STD MODULAR compat_netbsd32_quota	\
1133			{ int|netbsd32||__quotactl(const netbsd32_charp path, \
1134			    netbsd32_voidp args); }
1135474	NOERR		{ int|netbsd32||posix_spawn(netbsd32_pid_tp pid, \
1136			    const netbsd32_charp path, \
1137			    const netbsd32_posix_spawn_file_actionsp \
1138				file_actions, \
1139			    const netbsd32_posix_spawnattrp attrp, \
1140			    netbsd32_charpp argv, netbsd32_charpp envp); }
1141
1142475	STD		{ int|netbsd32||recvmmsg(int s, \
1143			    netbsd32_mmsghdrp_t mmsg, \
1144			    unsigned int vlen, unsigned int flags, \
1145			    netbsd32_timespecp_t timeout); }
1146476	STD		{ int|netbsd32||sendmmsg(int s, \
1147			    netbsd32_mmsghdrp_t mmsg, \
1148			    unsigned int vlen, unsigned int flags); }
1149477	STD 		{ int|netbsd32||clock_nanosleep(\
1150			    netbsd32_clockid_t clock_id, \
1151			    int flags, const netbsd32_timespecp_t rqtp, \
1152			    netbsd32_timespecp_t rmtp); }
1153478	STD 		{ int|netbsd32|60|_lwp_park(\
1154			    netbsd32_clockid_t clock_id, \
1155			    int flags, netbsd32_timespecp_t ts, \
1156			    lwpid_t unpark, netbsd32_voidp hint, \
1157			    netbsd32_voidp unparkhint); }
1158479	NOERR		{ int|netbsd32||posix_fallocate(int fd, int PAD, \
1159			    netbsd32_off_t pos, netbsd32_off_t len); }
1160480	STD		{ int|netbsd32||fdiscard(int fd, int PAD, \
1161			    netbsd32_off_t pos, netbsd32_off_t len); }
1162481	STD 		{ int|netbsd32||wait6(idtype_t idtype, id_t id, \
1163			    netbsd32_intp status, int options, \
1164			    netbsd32_wrusagep_t wru, netbsd32_siginfop_t info); }
1165482	STD		{ int|netbsd32||clock_getcpuclockid2(idtype_t idtype, \
1166			    id_t id, netbsd32_clockidp_t clock_id); }
1167483	STD 		{ int|netbsd32|90|getvfsstat( \
1168			    netbsd32_statvfsp_t buf, \
1169			    netbsd32_size_t bufsize, int flags); }
1170484	STD 		{ int|netbsd32|90|statvfs1(netbsd32_charp path, \
1171			    netbsd32_statvfsp_t buf, int flags); }
1172485	STD 		{ int|netbsd32|90|fstatvfs1(int fd, \
1173			    netbsd32_statvfsp_t buf, int flags); }
1174486	STD 		{ int|netbsd32|90|fhstatvfs1(netbsd32_voidp fhp, \
1175			    netbsd32_size_t fh_size, netbsd32_statvfsp_t buf, \
1176			    int flags); }
1177487	STD		{ int|netbsd32||__acl_get_link( \
1178			    const netbsd32_charp path, \
1179			    acl_type_t type, netbsd32_aclp_t aclp); }
1180488	STD		{ int|netbsd32||__acl_set_link( \
1181			    const netbsd32_charp path, \
1182			    acl_type_t type, netbsd32_aclp_t aclp); }
1183489	STD		{ int|netbsd32||__acl_delete_link( \
1184			    const netbsd32_charp path, \
1185			    acl_type_t type); }
1186490	STD		{ int|netbsd32||__acl_aclcheck_link( \
1187			    const netbsd32_charp path, \
1188			    acl_type_t type, netbsd32_aclp_t aclp); }
1189491	STD		{ int|netbsd32||__acl_get_file( \
1190			    const netbsd32_charp path, \
1191			    acl_type_t type, netbsd32_aclp_t aclp); }
1192492	STD		{ int|netbsd32||__acl_set_file( \
1193			    const netbsd32_charp path, \
1194			    acl_type_t type, netbsd32_aclp_t aclp); }
1195493	STD		{ int|netbsd32||__acl_get_fd(int filedes, \
1196			    acl_type_t type, netbsd32_aclp_t aclp); }
1197494	STD		{ int|netbsd32||__acl_set_fd(int filedes, \
1198			    acl_type_t type, netbsd32_aclp_t aclp); }
1199495	STD		{ int|netbsd32||__acl_delete_file( \
1200			    const netbsd32_charp path, \
1201			    acl_type_t type); }
1202496	STD		{ int|netbsd32||__acl_delete_fd(int filedes, \
1203			    acl_type_t type); }
1204497	STD		{ int|netbsd32||__acl_aclcheck_file( \
1205			    const netbsd32_charp path, \
1206			    acl_type_t type, netbsd32_aclp_t aclp); }
1207498	STD		{ int|netbsd32||__acl_aclcheck_fd(int filedes, \
1208			    acl_type_t type, netbsd32_aclp_t aclp); }
1209499	STD		{ long|netbsd32||lpathconf(const netbsd32_charp path, \
1210			    int name); }
1211