syscalls.master revision 1.71
1	$NetBSD: syscalls.master,v 1.71 2008/11/12 12:36:10 ad 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_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 netbsd32_sys_syscall(int code, \
69			    ... register32_t args[NETBSD32_SYS_MAXSYSARGS]); }
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, netbsd32_voidp buf, netbsd32_size_t nbyte); }
745	STD		{ int netbsd32_open(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(netbsd32_charp path, mode_t mode); }
789	STD		{ int netbsd32_link(netbsd32_charp path, netbsd32_charp link); }
7910	STD		{ int netbsd32_unlink(netbsd32_charp path); }
8011	OBSOL		execv
8112	STD		{ int netbsd32_chdir(netbsd32_charp path); }
8213	STD		{ int netbsd32_fchdir(int fd); }
8314	STD		{ int netbsd32_mknod(netbsd32_charp path, mode_t mode, dev_t dev); }
8415	STD		{ int netbsd32_chmod(netbsd32_charp path, mode_t mode); }
8516	STD		{ int netbsd32_chown(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 		{ pid_t sys_getpid(void); }
9021	STD		{ int netbsd32_mount(netbsd32_charp type, netbsd32_charp path, int flags, netbsd32_voidp data); }
9122	STD		{ int netbsd32_unmount(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, 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(netbsd32_charp path, int flags); }
10334	STD		{ int netbsd32_chflags(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(netbsd32_charp path, netbsd32_stat43p_t ub); }
10839	NOARGS 		{ pid_t sys_getppid(void); }
10940	COMPAT_43	{ int netbsd32_lstat43(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); }
11445	STD		{ int netbsd32_ktrace(netbsd32_charp fname, int ops, int facs, int pid); }
11546	STD		{ int netbsd32_sigaction(int signum, netbsd32_sigactionp_t nsa, netbsd32_sigactionp_t osa); }
11647	NOARGS 		{ gid_t sys_getgid(void); }
11748	COMPAT_13	{ int netbsd32_sigprocmask(int how, \
118			    int mask); } sigprocmask13
11949	STD		{ int netbsd32___getlogin(netbsd32_charp namebuf, u_int namelen); }
12050	STD		{ int netbsd32_setlogin(netbsd32_charp namebuf); }
12151	STD		{ int netbsd32_acct(netbsd32_charp path); }
12252	COMPAT_13 	{ int sys_sigpending(void); } sigpending13
12353	COMPAT_13	{ int netbsd32_sigaltstack13(netbsd32_sigaltstack13p_t nss, netbsd32_sigaltstack13p_t oss); }
12454	STD		{ int netbsd32_ioctl(int fd, netbsd32_u_long com, ... netbsd32_voidp data); }
12555	COMPAT_12	{ int netbsd32_reboot(int opt); }
12656	STD		{ int netbsd32_revoke(netbsd32_charp path); }
12757	STD		{ int netbsd32_symlink(netbsd32_charp path, netbsd32_charp link); }
12858	STD		{ int netbsd32_readlink(netbsd32_charp path, netbsd32_charp buf, netbsd32_size_t count); }
12959	STD		{ int netbsd32_execve(netbsd32_charp path, netbsd32_charpp argp, netbsd32_charpp envp); }
13060	STD		{ mode_t netbsd32_umask(mode_t newmask); }
13161	STD		{ int netbsd32_chroot(netbsd32_charp path); }
13262	COMPAT_43	{ int netbsd32_fstat43(int fd, netbsd32_stat43p_t sb); }
13363	COMPAT_43	{ int netbsd32_ogetkerninfo(int op, netbsd32_charp where, netbsd32_intp size, int arg); }
13464	COMPAT_43	{ int sys_getpagesize(void); } ogetpagesize
13565	COMPAT_12	{ int netbsd32_msync(netbsd32_caddr_t addr, netbsd32_size_t len); }
136; XXX COMPAT_??? for 4.4BSD-compatible vfork(2)?
13766	NOARGS		{ int sys_vfork(void); }
13867	OBSOL		vread
13968	OBSOL		vwrite
14069	STD		{ int netbsd32_sbrk(netbsd32_intptr_t incr); }
14170	STD		{ int netbsd32_sstk(int incr); }
14271	COMPAT_43	{ int netbsd32_ommap(netbsd32_caddr_t addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pos); }
14372	STD		{ int netbsd32_ovadvise(int anom); } vadvise
14473	STD		{ int netbsd32_munmap(netbsd32_voidp addr, netbsd32_size_t len); }
14574	STD		{ int netbsd32_mprotect(netbsd32_voidp addr, netbsd32_size_t len, int prot); }
14675	STD		{ int netbsd32_madvise(netbsd32_voidp addr, netbsd32_size_t len, int behav); }
14776	OBSOL		vhangup
14877	OBSOL		vlimit
14978	STD		{ int netbsd32_mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); }
15079	STD		{ int netbsd32_getgroups(int gidsetsize, netbsd32_gid_tp gidset); }
15180	STD		{ int netbsd32_setgroups(int gidsetsize, netbsd32_gid_tp gidset); }
15281	NOARGS 		{ int sys_getpgrp(void); }
15382	STD		{ int netbsd32_setpgid(int pid, int pgid); }
15483	STD		{ int netbsd32_setitimer(int which, netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); }
15584	COMPAT_43	{ int sys_wait(void); } owait
15685	COMPAT_12	{ int netbsd32_oswapon(netbsd32_charp name); }
15786	STD		{ int netbsd32_getitimer(int which, netbsd32_itimervalp_t itv); }
15887	COMPAT_43	{ int netbsd32_ogethostname(netbsd32_charp hostname, u_int len); }
15988	COMPAT_43	{ int netbsd32_osethostname(netbsd32_charp hostname, u_int len); }
16089	COMPAT_43	{ int sys_getdtablesize(void); } ogetdtablesize
16190	STD		{ int netbsd32_dup2(int from, int to); }
16291	UNIMPL		getdopt
16392	STD		{ int netbsd32_fcntl(int fd, int cmd, ... netbsd32_voidp arg); }
16493	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); }
16594	UNIMPL		setdopt
16695	STD		{ int netbsd32_fsync(int fd); }
16796	STD		{ int netbsd32_setpriority(int which, int who, int prio); }
16897	COMPAT_30	{ int netbsd32_socket(int domain, int type, int protocol); }
16998	STD		{ int netbsd32_connect(int s, netbsd32_sockaddrp_t name, int namelen); }
17099	COMPAT_43	{ int netbsd32_oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); }
171100	STD		{ int netbsd32_getpriority(int which, int who); }
172101	COMPAT_43	{ int netbsd32_osend(int s, netbsd32_caddr_t buf, int len, int flags); }
173102	COMPAT_43	{ int netbsd32_orecv(int s, netbsd32_caddr_t buf, int len, int flags); }
174103	COMPAT_13	{ int netbsd32_sigreturn(netbsd32_sigcontextp_t sigcntxp); } sigreturn13
175104	STD		{ int netbsd32_bind(int s, netbsd32_sockaddrp_t name, int namelen); }
176105	STD		{ int netbsd32_setsockopt(int s, int level, int name, netbsd32_voidp val, int valsize); }
177106	STD		{ int netbsd32_listen(int s, int backlog); }
178107	OBSOL		vtimes
179108	COMPAT_43	{ int netbsd32_osigvec(int signum, netbsd32_sigvecp_t nsv, netbsd32_sigvecp_t osv); }
180109	COMPAT_43	{ int netbsd32_sigblock(int mask); }
181110	COMPAT_43	{ int netbsd32_sigsetmask(int mask); }
182111	COMPAT_13	{ int netbsd32_sigsuspend(int mask); } sigsuspend13
183112	COMPAT_43	{ int netbsd32_osigstack(netbsd32_sigstackp_t nss, netbsd32_sigstackp_t oss); }
184113	COMPAT_43	{ int netbsd32_orecvmsg(int s, netbsd32_omsghdrp_t msg, int flags); }
185114	COMPAT_43	{ int netbsd32_osendmsg(int s, netbsd32_caddr_t msg, int flags); }
186115	OBSOL		vtrace
187116	STD		{ int netbsd32_gettimeofday(netbsd32_timevalp_t tp, netbsd32_timezonep_t tzp); }
188117	STD		{ int netbsd32_getrusage(int who, netbsd32_rusagep_t rusage); }
189118	STD		{ int netbsd32_getsockopt(int s, int level, int name, netbsd32_voidp val, netbsd32_intp avalsize); }
190119	OBSOL		resuba
191120	STD		{ netbsd32_ssize_t netbsd32_readv(int fd, netbsd32_iovecp_t iovp, int iovcnt); }
192121	STD		{ netbsd32_ssize_t netbsd32_writev(int fd, netbsd32_iovecp_t iovp, int iovcnt); }
193122	STD		{ int netbsd32_settimeofday(netbsd32_timevalp_t tv, netbsd32_timezonep_t tzp); }
194123	STD		{ int netbsd32_fchown(int fd, uid_t uid, gid_t gid); }
195124	STD		{ int netbsd32_fchmod(int fd, mode_t mode); }
196125	COMPAT_43	{ int netbsd32_orecvfrom(int s, netbsd32_caddr_t buf, netbsd32_size_t len, int flags, netbsd32_caddr_t from, netbsd32_intp fromlenaddr); }
197126	STD		{ int netbsd32_setreuid(uid_t ruid, uid_t euid); }
198127	STD		{ int netbsd32_setregid(gid_t rgid, gid_t egid); }
199128	STD		{ int netbsd32_rename(netbsd32_charp from, netbsd32_charp to); }
200129	COMPAT_43	{ int netbsd32_otruncate(netbsd32_charp path, netbsd32_long length); }
201130	COMPAT_43	{ int netbsd32_oftruncate(int fd, netbsd32_long length); }
202131	STD		{ int netbsd32_flock(int fd, int how); }
203132	STD		{ int netbsd32_mkfifo(netbsd32_charp path, mode_t mode); }
204133	STD		{ netbsd32_ssize_t netbsd32_sendto(int s, netbsd32_voidp buf, netbsd32_size_t len, int flags, netbsd32_sockaddrp_t to, int tolen); }
205134	STD		{ int netbsd32_shutdown(int s, int how); }
206135	STD		{ int netbsd32_socketpair(int domain, int type, int protocol, netbsd32_intp rsv); }
207136	STD		{ int netbsd32_mkdir(netbsd32_charp path, mode_t mode); }
208137	STD		{ int netbsd32_rmdir(netbsd32_charp path); }
209138	STD		{ int netbsd32_utimes(netbsd32_charp path, netbsd32_timevalp_t tptr); }
210139	OBSOL		4.2 sigreturn
211140	STD		{ int netbsd32_adjtime(netbsd32_timevalp_t delta, netbsd32_timevalp_t olddelta); }
212141	COMPAT_43	{ int netbsd32_ogetpeername(int fdes, netbsd32_caddr_t asa, netbsd32_intp alen); }
213142	COMPAT_43	{ int32_t sys_gethostid(void); } ogethostid
214143	COMPAT_43	{ int netbsd32_sethostid(int32_t hostid); }
215144	COMPAT_43	{ int netbsd32_ogetrlimit(int which, netbsd32_orlimitp_t rlp); }
216145	COMPAT_43	{ int netbsd32_osetrlimit(int which, netbsd32_orlimitp_t rlp); }
217146	COMPAT_43	{ int netbsd32_killpg(int pgid, int signum); }
218147	NOARGS		{ int sys_setsid(void); }
219148	STD		{ int netbsd32_quotactl(netbsd32_charp path, int cmd, int uid, netbsd32_caddr_t arg); }
220149	COMPAT_43	{ int sys_quota(void); } oquota
221150	COMPAT_43	{ int netbsd32_ogetsockname(int fdec, netbsd32_caddr_t asa, netbsd32_intp alen); }
222
223; Syscalls 151-180 inclusive are reserved for vendor-specific
224; system calls.  (This includes various calls added for compatibity
225; with other Unix variants.)
226; Some of these calls are now supported by BSD...
227151	UNIMPL
228152	UNIMPL
229153	UNIMPL
230154	UNIMPL
231#if defined(NFS) || defined(NFSSERVER) || !defined(_KERNEL)
232155	STD		{ int netbsd32_nfssvc(int flag, netbsd32_voidp argp); }
233#else
234155	EXCL		netbsd32_nfssvc
235#endif
236156	COMPAT_43	{ int netbsd32_ogetdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
237157	COMPAT_20	{ int netbsd32_statfs(netbsd32_charp path, netbsd32_statfsp_t buf); }
238158	COMPAT_20	{ int netbsd32_fstatfs(int fd, netbsd32_statfsp_t buf); }
239159	UNIMPL
240160	UNIMPL
241161	COMPAT_30		{ int netbsd32_getfh(netbsd32_charp fname, netbsd32_compat_30_fhandlep_t fhp); }
242162	COMPAT_09	{ int netbsd32_ogetdomainname(netbsd32_charp domainname, int len); }
243163	COMPAT_09	{ int netbsd32_osetdomainname(netbsd32_charp domainname, int len); }
244164	COMPAT_09	{ int netbsd32_uname(netbsd32_outsnamep_t name); }
245165	STD		{ int netbsd32_sysarch(int op, netbsd32_voidp parms); }
246166	UNIMPL
247167	UNIMPL
248168	UNIMPL
249#if defined(SYSVSEM) || !defined(_KERNEL)
250169	COMPAT_10	{ int netbsd32_sys_semsys(int which, int a2, int a3, int a4, int a5); } osemsys
251#else
252169	EXCL		netbsd32_sys_semsys
253#endif
254#if defined(SYSVMSG) || !defined(_KERNEL)
255170	COMPAT_10	{ int netbsd32_sys_msgsys(int which, int a2, int a3, int a4, int a5, int a6); } omsgsys
256#else
257170	EXCL		netbsd32_sys_msgsys
258#endif
259#if defined(SYSVSHM) || !defined(_KERNEL)
260171	COMPAT_10	{ int netbsd32_sys_shmsys(int which, int a2, int a3, int a4); } oshmsys
261#else
262171	EXCL		netbsd32_sys_shmsys
263#endif
264172	UNIMPL
265173	STD		{ netbsd32_ssize_t netbsd32_pread(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
266174	STD		{ netbsd32_ssize_t netbsd32_pwrite(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte, int pad, off_t offset); }
267175	COMPAT_30	{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
268176	STD		{ int netbsd32_ntp_adjtime(netbsd32_timexp_t tp); }
269177	UNIMPL
270178	UNIMPL
271179	UNIMPL
272180	UNIMPL
273
274; Syscalls 180-199 are used by/reserved for BSD
275181	STD		{ int netbsd32_setgid(gid_t gid); }
276182	STD		{ int netbsd32_setegid(gid_t egid); }
277183	STD		{ int netbsd32_seteuid(uid_t euid); }
278#if defined(LFS) || !defined(_KERNEL)
279184	STD		{ int netbsd32_sys_lfs_bmapv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
280185	STD		{ int netbsd32_sys_lfs_markv(netbsd32_fsid_tp_t fsidp, netbsd32_block_infop_t blkiov, int blkcnt); }
281186	STD		{ int netbsd32_sys_lfs_segclean(netbsd32_fsid_tp_t fsidp, netbsd32_u_long segment); }
282187	STD		{ int netbsd32_sys_lfs_segwait(netbsd32_fsid_tp_t fsidp, netbsd32_timevalp_t tv); }
283#else
284184	EXCL		netbsd32_sys_lfs_bmapv
285185	EXCL		netbsd32_sys_lfs_markv
286186	EXCL		netbsd32_sys_lfs_segclean
287187	EXCL		netbsd32_sys_lfs_segwait
288#endif
289188	COMPAT_12	{ int netbsd32_stat12(netbsd32_charp path, netbsd32_stat12p_t ub); }
290189	COMPAT_12	{ int netbsd32_fstat12(int fd, netbsd32_stat12p_t sb); }
291190	COMPAT_12	{ int netbsd32_lstat12(netbsd32_charp path, netbsd32_stat12p_t ub); }
292191	STD		{ netbsd32_long netbsd32_pathconf(netbsd32_charp path, int name); }
293192	STD		{ netbsd32_long netbsd32_fpathconf(int fd, int name); }
294193	UNIMPL
295194	STD		{ int netbsd32_getrlimit(int which, netbsd32_rlimitp_t rlp); }
296195	STD		{ int netbsd32_setrlimit(int which, netbsd32_rlimitp_t rlp); }
297196	COMPAT_12	{ int netbsd32_getdirentries(int fd, netbsd32_charp buf, u_int count, netbsd32_longp basep); }
298197	STD		{ netbsd32_voidp netbsd32_mmap(netbsd32_voidp addr, netbsd32_size_t len, int prot, int flags, int fd, netbsd32_long pad, off_t pos); }
299198	INDIR		{ quad_t netbsd32_sys___syscall(quad_t code, \
300			    ... register32_t args[NETBSD32_SYS_MAXSYSARGS]); }
301199	STD		{ off_t netbsd32_lseek(int fd, int pad, off_t offset, int whence); }
302200	STD		{ int netbsd32_truncate(netbsd32_charp path, int pad, off_t length); }
303201	STD		{ int netbsd32_ftruncate(int fd, int pad, off_t length); }
304202	STD		{ int netbsd32___sysctl(netbsd32_intp name, u_int namelen, netbsd32_voidp old, netbsd32_size_tp oldlenp, netbsd32_voidp new, netbsd32_size_t newlen); }
305203	STD		{ int netbsd32_mlock(netbsd32_voidp addr, netbsd32_size_t len); }
306204	STD		{ int netbsd32_munlock(netbsd32_voidp addr, netbsd32_size_t len); }
307205	STD		{ int netbsd32_undelete(netbsd32_charp path); }
308206	STD		{ int netbsd32_futimes(int fd, netbsd32_timevalp_t tptr); }
309207	STD		{ int netbsd32_getpgid(pid_t pid); }
310208	STD		{ int netbsd32_reboot(int opt, netbsd32_charp bootstr); }
311209	STD		{ int netbsd32_poll(netbsd32_pollfdp_t fds, u_int nfds, int timeout); }
312210	UNIMPL
313211	UNIMPL
314212	UNIMPL
315213	UNIMPL
316214	UNIMPL
317215	UNIMPL
318216	UNIMPL
319217	UNIMPL
320218	UNIMPL
321219	UNIMPL
322; System calls 220-300 are reserved for use by NetBSD
323#if defined(SYSVSEM) || !defined(_KERNEL)
324220	COMPAT_14	{ int netbsd32___semctl(int semid, int semnum, int cmd, netbsd32_semunu_t arg); }
325221	STD		{ int netbsd32_semget(netbsd32_key_t key, int nsems, int semflg); }
326222	STD		{ int netbsd32_semop(int semid, netbsd32_sembufp_t sops, netbsd32_size_t nsops); }
327223	STD		{ int netbsd32_semconfig(int flag); }
328#else
329220	EXCL		compat_14_netbsd32_semctl
330221	EXCL		netbsd32_semget
331222	EXCL		netbsd32_semop
332223	EXCL		netbsd32_semconfig
333#endif
334#if defined(SYSVMSG) || !defined(_KERNEL)
335224	COMPAT_14	{ int netbsd32_msgctl(int msqid, int cmd, netbsd32_msqid_dsp_t buf); }
336225	STD		{ int netbsd32_msgget(netbsd32_key_t key, int msgflg); }
337226	STD		{ int netbsd32_msgsnd(int msqid, netbsd32_voidp msgp, netbsd32_size_t msgsz, int msgflg); }
338227	STD		{ netbsd32_ssize_t netbsd32_msgrcv(int msqid, netbsd32_voidp msgp, netbsd32_size_t msgsz, netbsd32_long msgtyp, int msgflg); }
339#else
340224	EXCL		compat_14_netbsd32_msgctl
341225	EXCL		netbsd32_msgget
342226	EXCL		netbsd32_msgsnd
343227	EXCL		netbsd32_msgrcv
344#endif
345#if defined(SYSVSHM) || !defined(_KERNEL)
346228	STD		{ netbsd32_voidp netbsd32_shmat(int shmid, netbsd32_voidp shmaddr, int shmflg); }
347229	COMPAT_14		{ int netbsd32_shmctl(int shmid, int cmd, netbsd32_shmid_dsp_t buf); }
348230	STD		{ int netbsd32_shmdt(netbsd32_voidp shmaddr); }
349231	STD		{ int netbsd32_shmget(netbsd32_key_t key, netbsd32_size_t size, int shmflg); }
350#else
351228	EXCL		netbsd32_shmat
352229	EXCL		compat_14_netbsd32_shmctl
353230	EXCL		netbsd32_shmdt
354231	EXCL		netbsd32_shmget
355#endif
356232	STD		{ int netbsd32_clock_gettime(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
357233	STD		{ int netbsd32_clock_settime(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
358234	STD		{ int netbsd32_clock_getres(netbsd32_clockid_t clock_id, netbsd32_timespecp_t tp); }
359235	STD		{ int netbsd32_timer_create(netbsd32_clockid_t clock_id, netbsd32_sigeventp_t evp, \
360			    netbsd32_timerp_t timerid); }
361236	STD		{ int netbsd32_timer_delete(netbsd32_timer_t timerid); }
362237	STD		{ int netbsd32_timer_settime(netbsd32_timer_t timerid, int flags, \
363			    netbsd32_itimerspecp_t value, \
364			    netbsd32_itimerspecp_t ovalue); }
365238	STD		{ int netbsd32_timer_gettime(netbsd32_timer_t timerid, netbsd32_itimerspecp_t value); }
366239	STD		{ int netbsd32_timer_getoverrun(netbsd32_timer_t timerid); }
367;
368; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
369;
370240	STD		{ int netbsd32_nanosleep(netbsd32_timespecp_t rqtp, netbsd32_timespecp_t rmtp); }
371241	STD		{ int netbsd32_fdatasync(int fd); }
372242	STD		{ int netbsd32_mlockall(int flags); }
373243	NOARGS		{ int sys_munlockall(void); }
374244	STD		{ int netbsd32___sigtimedwait(netbsd32_sigsetp_t set, \
375			    netbsd32_siginfop_t info, \
376			    netbsd32_timespecp_t timeout); }
377245	UNIMPL
378246	UNIMPL
379#if defined(P1003_1B_SEMAPHORE) || (!defined(_KERNEL) && defined(_LIBC))
380247	STD		{ int netbsd32__ksem_init(unsigned int value, netbsd32_semidp_t idp); }
381248	STD		{ int netbsd32__ksem_open(netbsd32_charp name, int oflag, \
382			    mode_t mode, unsigned int value, netbsd32_semidp_t idp); }
383249	STD		{ int netbsd32__ksem_unlink(netbsd32_charp name); }
384250	STD		{ int netbsd32__ksem_close(netbsd32_semid_t id); }
385251	STD		{ int netbsd32__ksem_post(netbsd32_semid_t id); }
386252	STD		{ int netbsd32__ksem_wait(netbsd32_semid_t id); }
387253	STD		{ int netbsd32__ksem_trywait(netbsd32_semid_t id); }
388254	STD		{ int netbsd32__ksem_getvalue(netbsd32_semid_t id, \
389			    netbsd32_intp value); }
390255	STD		{ int netbsd32__ksem_destroy(netbsd32_semid_t id); }
391256	UNIMPL		sys__ksem_timedwait
392#else
393247	EXCL		sys__ksem_init
394248	EXCL		sys__ksem_open
395249	EXCL 		sys__ksem_unlink
396250	EXCL		sys__ksem_close
397251	EXCL		sys__ksem_post
398252	EXCL		sys__ksem_wait
399253	EXCL		sys__ksem_trywait
400254	EXCL		sys__ksem_getvalue
401255	EXCL		sys__ksem_destroy
402256	UNIMPL		sys__ksem_timedwait
403#endif
404257	UNIMPL
405258	UNIMPL
406259	UNIMPL
407260	UNIMPL
408261	UNIMPL
409262	UNIMPL
410263	UNIMPL
411264	UNIMPL
412265	UNIMPL
413266	UNIMPL
414267	UNIMPL
415268	UNIMPL
416269	UNIMPL
417270	STD		{ int netbsd32___posix_rename(netbsd32_charp from, netbsd32_charp to); }
418271	STD		{ int netbsd32_swapctl(int cmd, netbsd32_voidp arg, int misc); }
419272	COMPAT_30	{ int netbsd32_getdents(int fd, netbsd32_charp buf, netbsd32_size_t count); }
420273	STD		{ int netbsd32_minherit(netbsd32_voidp addr, netbsd32_size_t len, int inherit); }
421274	STD		{ int netbsd32_lchmod(netbsd32_charp path, mode_t mode); }
422275	STD		{ int netbsd32_lchown(netbsd32_charp path, uid_t uid, gid_t gid); }
423276	STD		{ int netbsd32_lutimes(netbsd32_charp path, netbsd32_timevalp_t tptr); }
424277	STD		{ int netbsd32___msync13(netbsd32_voidp addr, netbsd32_size_t len, int flags); }
425278	COMPAT_30	{ int netbsd32___stat13(netbsd32_charp path, netbsd32_stat13p_t ub); }
426279	COMPAT_30	{ int netbsd32___fstat13(int fd, netbsd32_stat13p_t sb); }
427280	COMPAT_30	{ int netbsd32___lstat13(netbsd32_charp path, netbsd32_stat13p_t ub); }
428281	STD		{ int netbsd32___sigaltstack14(netbsd32_sigaltstackp_t nss, netbsd32_sigaltstackp_t oss); }
429282	NOARGS		{ int sys___vfork14(void); }
430283	STD		{ int netbsd32___posix_chown(netbsd32_charp path, uid_t uid, gid_t gid); }
431284	STD		{ int netbsd32___posix_fchown(int fd, uid_t uid, gid_t gid); }
432285	STD		{ int netbsd32___posix_lchown(netbsd32_charp path, uid_t uid, gid_t gid); }
433286	STD		{ pid_t netbsd32_getsid(pid_t pid); }
434287	STD		{ int netbsd32___clone(int flags, netbsd32_voidp stack); }
435288	STD		{ int netbsd32_fktrace(int fd, int ops, int facs, int pid); }
436289	STD		{ netbsd32_ssize_t netbsd32_preadv(int fd, netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
437290	STD		{ netbsd32_ssize_t netbsd32_pwritev(int fd, netbsd32_iovecp_t iovp, int iovcnt, int pad, off_t offset); }
438291	STD		{ int netbsd32___sigaction14(int signum, \
439			    netbsd32_sigactionp_t nsa, \
440			    netbsd32_sigactionp_t osa); }
441292	STD		{ int netbsd32___sigpending14(netbsd32_sigsetp_t set); }
442293	STD		{ int netbsd32___sigprocmask14(int how, \
443			    netbsd32_sigsetp_t set, \
444			    netbsd32_sigsetp_t oset); }
445294	STD		{ int netbsd32___sigsuspend14(netbsd32_sigsetp_t set); }
446295	COMPAT_16	{ int netbsd32___sigreturn14(netbsd32_sigcontextp_t sigcntxp); }
447296	STD		{ int netbsd32___getcwd(netbsd32_charp bufp, netbsd32_size_t length); }
448297	STD		{ int netbsd32_fchroot(int fd); }
449298	COMPAT_30	{ int netbsd32_fhopen(netbsd32_fhandlep_t fhp, \
450			   int flags); }
451299	COMPAT_30	{ int netbsd32_fhstat(netbsd32_fhandlep_t fhp, \
452			    netbsd32_stat13p_t sb); }
453300	COMPAT_20	{ int netbsd32_fhstatfs(netbsd32_fhandlep_t fhp, \
454			    netbsd32_statp_t buf); }
455#if defined(SYSVSEM) || !defined(_KERNEL)
456301	STD		{ int netbsd32___semctl14(int semid, int semnum, int cmd, \
457			    ... netbsd32_semunp_t arg); }
458#else
459301	EXCL		__semctl14
460#endif
461#if defined(SYSVMSG) || !defined(_KERNEL)
462302	STD		{ int netbsd32___msgctl13(int msqid, int cmd, \
463			    netbsd32_msqid_dsp_t buf); }
464#else
465302	EXCL		__msgctl13
466#endif
467#if defined(SYSVSHM) || !defined(_KERNEL)
468303	STD		{ int netbsd32___shmctl13(int shmid, int cmd, \
469			    netbsd32_shmid_dsp_t buf); }
470#else
471303	EXCL		__shmctl13
472#endif
473304	STD		{ int netbsd32_lchflags(netbsd32_charp path, netbsd32_u_long flags); }
474305	NOARGS 		{ int sys_issetugid(void); }
475306	STD		{ int netbsd32_utrace(netbsd32_charp label, netbsd32_voidp addr, \
476			    netbsd32_size_t len); }
477307	STD		{ int netbsd32_getcontext(netbsd32_ucontextp ucp); }
478308	STD		{ int netbsd32_setcontext(netbsd32_ucontextp ucp, \
479			    uint32_t flags, netbsd32_lwpidp new_lwp); }
480309	STD		{ int netbsd32__lwp_create(netbsd32_ucontextp ucp, \
481			    netbsd32_u_long flags, netbsd32_lwpidp new_lwp); }
482310	NOARGS		{ int sys__lwp_exit(void); }
483311	NOARGS 		{ lwpid_t sys__lwp_self(void); }
484312	STD 		{ int netbsd32__lwp_wait(lwpid_t wait_for, \
485			    netbsd32_lwpidp departed); }
486313	STD 		{ int netbsd32__lwp_suspend(lwpid_t target); }
487314	STD 		{ int netbsd32__lwp_continue(lwpid_t target); }
488315	STD 		{ int netbsd32__lwp_wakeup(lwpid_t target); }
489316	NOARGS 		{ void *sys__lwp_getprivate(void); }
490317	STD 		{ void netbsd32__lwp_setprivate(netbsd32_voidp ptr); }
491318	STD		{ int netbsd32__lwp_kill(lwpid_t target, int signo); }
492319	STD 		{ int netbsd32__lwp_detach(lwpid_t target); }
493320	STD 		{ int netbsd32__lwp_park(netbsd32_timespecp_t ts, \
494				lwpid_t unpark, netbsd32_voidp hint, \
495				netbsd32_voidp unparkhint); }
496321	STD 		{ int netbsd32__lwp_unpark(lwpid_t target, netbsd32_voidp hint); }
497322	STD 		{ netbsd32_size_t netbsd32__lwp_unpark_all(netbsd32_lwpidp targets, \
498				netbsd32_size_t ntargets, netbsd32_voidp hint); }
499323	STD		{ int netbsd32__lwp_setname(lwpid_t target, \
500				netbsd32_charp name); }
501324	STD		{ int netbsd32__lwp_getname(lwpid_t target, \
502				netbsd32_charp name, netbsd32_size_t len); }
503325	STD 		{ int netbsd32__lwp_ctl(int features, \
504				netbsd32_pointer_t address); }
505326	UNIMPL
506327	UNIMPL
507328	UNIMPL
508329	UNIMPL
509330	STD		{ int netbsd32_sa_register(netbsd32_sa_upcall_t new, \
510			    netbsd32_sa_upcallp_t old, int flags, \
511			    netbsd32_ssize_t stackinfo_offset); }
512331	STD		{ int netbsd32_sa_stacks(int num, netbsd32_stackp_t stacks); }
513332	NOARGS		{ int sys_sa_enable(void); }
514333	STD		{ int netbsd32_sa_setconcurrency(int concurrency); }
515334	NOARGS		{ int sys_sa_yield(void); }
516335	STD		{ int netbsd32_sa_preempt(int sa_id); }
517336	OBSOL		sys_sa_unblockyield
518337	UNIMPL
519338	UNIMPL
520339	UNIMPL
521340	STD		{ int netbsd32___sigaction_sigtramp(int signum, \
522			    netbsd32_sigactionp_t nsa, \
523			    netbsd32_sigactionp_t osa, \
524			    netbsd32_voidp tramp, int vers); }
525341	UNIMPL
526342	UNIMPL
527343	STD		{ int netbsd32_rasctl(netbsd32_caddr_t addr, netbsd32_size_t len, \
528			    int op); }
529344	NOARGS		{ int sys_kqueue(void); }
530345	STD		{ int netbsd32_kevent(int fd, \
531			    netbsd32_keventp_t changelist, netbsd32_size_t nchanges, \
532			    netbsd32_keventp_t eventlist, netbsd32_size_t nevents, \
533			    netbsd32_timespecp_t timeout); }
534346	UNIMPL
535347	UNIMPL
536348	UNIMPL
537349	UNIMPL
538350	NOARGS 		{ int sys_sched_yield(void); }
539351	UNIMPL
540352	UNIMPL
541353	UNIMPL
542354	STD		{ int netbsd32_fsync_range(int fd, int flags, off_t start, \
543			    off_t length); }
544355	STD		{ int netbsd32_uuidgen(netbsd32_uuidp_t store, int count); }
545356	STD		{ int netbsd32_getvfsstat(netbsd32_statvfsp_t buf, \
546			    netbsd32_size_t bufsize, int flags); }
547357	STD		{ int netbsd32_statvfs1(netbsd32_charp path, \
548			    netbsd32_statvfsp_t buf, int flags); }
549358	STD		{ int netbsd32_fstatvfs1(int fd, netbsd32_statvfsp_t buf, \
550			    int flags); }
551359	COMPAT_30	{ int netbsd32_fhstatvfs1(netbsd32_fhandlep_t fhp, \
552			    netbsd32_statvfsp_t buf, int flags); }
553360	STD		{ int netbsd32_extattrctl(netbsd32_charp path, \
554			    int cmd, netbsd32_charp filename, int attrnamespace, \
555			    netbsd32_charp attrname); }
556361	STD		{ int netbsd32_extattr_set_file(netbsd32_charp path, \
557			    int attrnamespace, netbsd32_charp attrname, \
558			    netbsd32_voidp data, netbsd32_size_t nbytes); }
559362	STD		{ int netbsd32_extattr_get_file(netbsd32_charp path, \
560			    int attrnamespace, netbsd32_charp attrname, \
561			    netbsd32_voidp data, netbsd32_size_t nbytes); }
562363	STD		{ int netbsd32_extattr_delete_file(netbsd32_charp path, \
563			    int attrnamespace, netbsd32_charp attrname); }
564364	STD		{ int netbsd32_extattr_set_fd(int fd, \
565			    int attrnamespace, netbsd32_charp attrname, \
566			    netbsd32_voidp data, netbsd32_size_t nbytes); }
567365	STD		{ int netbsd32_extattr_get_fd(int fd, \
568			    int attrnamespace, netbsd32_charp attrname, \
569			    netbsd32_voidp data, netbsd32_size_t nbytes); }
570366	STD		{ int netbsd32_extattr_delete_fd(int fd, \
571			    int attrnamespace, netbsd32_charp attrname); }
572367	STD		{ int netbsd32_extattr_set_link(netbsd32_charp path, \
573			    int attrnamespace, netbsd32_charp attrname, \
574			    netbsd32_voidp data, netbsd32_size_t nbytes); }
575368	STD		{ int netbsd32_extattr_get_link(netbsd32_charp path, \
576			    int attrnamespace, netbsd32_charp attrname, \
577			    netbsd32_voidp data, netbsd32_size_t nbytes); }
578369	STD		{ int netbsd32_extattr_delete_link(netbsd32_charp path, \
579			    int attrnamespace, netbsd32_charp attrname); }
580370	STD		{ int netbsd32_extattr_list_fd(int fd, \
581			    int attrnamespace, netbsd32_voidp data, \
582			    netbsd32_size_t nbytes); }
583371	STD		{ int netbsd32_extattr_list_file(netbsd32_charp path, \
584			    int attrnamespace, netbsd32_voidp data, \
585			    netbsd32_size_t nbytes); }
586372	STD		{ int netbsd32_extattr_list_link(netbsd32_charp path, \
587			    int attrnamespace, netbsd32_voidp data, \
588			    netbsd32_size_t nbytes); }
589373	STD		{ int netbsd32_pselect(int nd, netbsd32_fd_setp_t in, \
590			    netbsd32_fd_setp_t ou, netbsd32_fd_setp_t ex, \
591			    netbsd32_timespecp_t ts, netbsd32_sigsetp_t mask); }
592374	STD		{ int netbsd32_pollts(netbsd32_pollfdp_t fds, u_int nfds, \
593			    netbsd32_timespecp_t ts, netbsd32_sigsetp_t mask); }
594375	STD		{ int netbsd32_setxattr(netbsd32_charp path, \
595			    netbsd32_charp name, netbsd32_voidp value, \
596			    netbsd32_size_t size, int flags); }
597376	STD		{ int netbsd32_lsetxattr(netbsd32_charp path, \
598			    netbsd32_charp name, netbsd32_voidp value, \
599			    netbsd32_size_t size, int flags); }
600377	STD		{ int netbsd32_fsetxattr(int fd, \
601			    netbsd32_charp name, netbsd32_voidp value, \
602			    netbsd32_size_t size, int flags); }
603378	STD		{ int netbsd32_getxattr(netbsd32_charp path, \
604			    netbsd32_charp name, netbsd32_voidp value, \
605			    netbsd32_size_t size); }
606379	STD		{ int netbsd32_lgetxattr(netbsd32_charp path, \
607			    netbsd32_charp name, netbsd32_voidp value, \
608			    netbsd32_size_t size); }
609380	STD		{ int netbsd32_fgetxattr(int fd, \
610			    netbsd32_charp name, netbsd32_voidp value, \
611			    netbsd32_size_t size); }
612381	STD		{ int netbsd32_listxattr(netbsd32_charp path, \
613			    netbsd32_charp list, netbsd32_size_t size); }
614382	STD		{ int netbsd32_llistxattr(netbsd32_charp path, \
615			    netbsd32_charp list, netbsd32_size_t size); }
616383	STD		{ int netbsd32_flistxattr(int fd, \
617			    netbsd32_charp list, netbsd32_size_t size); }
618384	STD		{ int netbsd32_removexattr(netbsd32_charp path, \
619			    netbsd32_charp name); }
620385	STD		{ int netbsd32_lremovexattr(netbsd32_charp path, \
621			    netbsd32_charp name); }
622386	STD		{ int netbsd32_fremovexattr(int fd, \
623			    netbsd32_charp name); }
624387     STD             { int netbsd32_sys___stat30(netbsd32_charp path, \
625			    netbsd32_statp_t ub); }
626388     STD             { int netbsd32_sys___fstat30(int fd, \
627			    netbsd32_statp_t sb); }
628389     STD             { int netbsd32_sys___lstat30( \
629			    netbsd32_charp path, netbsd32_statp_t ub); }
630390     STD             { int netbsd32_sys___getdents30(int fd, \
631			    netbsd32_charp buf, netbsd32_size_t count); }
632391	IGNORED		old posix fadvise
633392	COMPAT_30	{ int netbsd32_sys___fhstat30( \
634			    netbsd32_fhandlep_t fhp, \
635			    netbsd32_statp_t sb); }
636393	STD		{ int netbsd32_ntp_gettime(netbsd32_ntptimevalp_t ntvp); }
637394	STD		{ int netbsd32_sys___socket30(int domain, int type, int protocol); }
638395	STD		{ int netbsd32___getfh30(netbsd32_charp fname, netbsd32_pointer_t fhp, netbsd32_size_tp fh_size); }
639396	STD		{ int netbsd32___fhopen40(netbsd32_pointer_t fhp, \
640			    netbsd32_size_t fh_size, int flags); }
641397	STD		{ int netbsd32___fhstatvfs140(	\
642			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
643			    netbsd32_statvfsp_t buf, int flags); }
644398	STD		{ int netbsd32___fhstat40(	\
645			    netbsd32_pointer_t fhp, netbsd32_size_t fh_size,\
646			    netbsd32_statp_t sb); }
647
648; Asynchronous I/O system calls
649399	UNIMPL	{ int sys_aio_cancel(int fildes, struct aiocb *aiocbp); }
650400	UNIMPL	{ int sys_aio_error(const struct aiocb *aiocbp); }
651401	UNIMPL	{ int sys_aio_fsync(int op, struct aiocb *aiocbp); }
652402	UNIMPL	{ int sys_aio_read(struct aiocb *aiocbp); }
653403	UNIMPL	{ int sys_aio_return(struct aiocb *aiocbp); }
654404	UNIMPL	{ int sys_aio_suspend(const struct aiocb *const *list, \
655			    int nent, const struct timespec *timeout); }
656405	UNIMPL	{ int sys_aio_write(struct aiocb *aiocbp); }
657406	UNIMPL	{ int sys_lio_listio(int mode, struct aiocb *const *list, \
658			    int nent, struct sigevent *sig); }
659
660407	UNIMPL
661408	UNIMPL
662409	UNIMPL
663
664410	UNIMPL		{ int sys___mount50(const char *type, \
665			    const char *path, int flags, void *data, \
666			    size_t data_len); }
667411	STD 		{ netbsd32_voidp netbsd32_mremap( \
668			    netbsd32_voidp old_address, \
669			    netbsd32_size_t old_size, \
670			    netbsd32_voidp new_address, \
671			    netbsd32_size_t new_size, int flags); }
672
673412	UNIMPL
674413	UNIMPL
675414	UNIMPL
676415	UNIMPL
677
678416	STD 		{ int netbsd32___posix_fadvise50(int fd, int pad, \
679			    off_t offset, off_t len, int advice); }
680