File:  [DragonFly] / src / sys / sys / sysproto.h
Revision 1.17: download - view: text, annotated - select for diffs
Sat Mar 6 22:14:16 2004 UTC (10 years, 9 months ago) by dillon
Branches: MAIN
CVS tags: HEAD, DragonFly_1_0_REL, DragonFly_1_0_RC1, DragonFly_1_0A_REL
Additional CAPS IPC work.  Add additional system calls to allow a CAPS
server to set a generation number and a CAPS client to query it, which can
be used for any purpose but which is intended to allow a server to tell its
clients to invalidate their caches.

Add missing fork-handling code.  CAPS links are only good on a thread-by-thread
basis.  When a process forks/rforks/clones any active CAPS links will be
created as dummy entries in the forked process, causing CAPS syscalls to
return ENOTCONN.   This allows code based on CAPS to detect when it has been
forked so it can re-connect to the service.

Make a slight change to the API.  caps_sys_put() now returns an immediate
ENOTCONN if it forked.  Note that userland CAPS code must still deal with
the case where a message has been sent and the connection is lost before the
reply is returned.  The kernel automatically replies unreplied messages
with 0-length data in these cases.

Add additional flags to the API, including one that allows a client to
block when connecting to a non-existant service.

/*
 * System call prototypes.
 *
 * DO NOT EDIT-- this file is automatically generated.
 * $DragonFly: src/sys/sys/sysproto.h,v 1.17 2004/03/06 22:14:16 dillon Exp $
 * created from DragonFly: src/sys/kern/syscalls.master,v 1.11 2004/01/20 18:41:51 dillon Exp 
 */

#ifndef _SYS_SYSPROTO_H_
#define	_SYS_SYSPROTO_H_

#include <sys/signal.h>

#include <sys/acl.h>

#include <sys/msgport.h>

#include <sys/sysmsg.h>

#define	PAD_(t)	(sizeof(register_t) <= sizeof(t) ? \
		0 : sizeof(register_t) - sizeof(t))

struct	nosys_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	sys_exit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	rval;	char rval_[PAD_(int)];
};
struct	fork_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	read_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	void *	buf;	char buf_[PAD_(void *)];
	size_t	nbyte;	char nbyte_[PAD_(size_t)];
};
struct	write_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	const void *	buf;	char buf_[PAD_(const void *)];
	size_t	nbyte;	char nbyte_[PAD_(size_t)];
};
struct	open_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	flags;	char flags_[PAD_(int)];
	int	mode;	char mode_[PAD_(int)];
};
struct	close_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
};
struct	wait_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	pid;	char pid_[PAD_(int)];
	int *	status;	char status_[PAD_(int *)];
	int	options;	char options_[PAD_(int)];
	struct rusage *	rusage;	char rusage_[PAD_(struct rusage *)];
};
struct	link_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	char *	link;	char link_[PAD_(char *)];
};
struct	unlink_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	chdir_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	fchdir_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
};
struct	mknod_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	mode;	char mode_[PAD_(int)];
	int	dev;	char dev_[PAD_(int)];
};
struct	chmod_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	mode;	char mode_[PAD_(int)];
};
struct	chown_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	uid;	char uid_[PAD_(int)];
	int	gid;	char gid_[PAD_(int)];
};
struct	obreak_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	nsize;	char nsize_[PAD_(char *)];
};
struct	getfsstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct statfs *	buf;	char buf_[PAD_(struct statfs *)];
	long	bufsize;	char bufsize_[PAD_(long)];
	int	flags;	char flags_[PAD_(int)];
};
struct	getpid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	mount_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	type;	char type_[PAD_(char *)];
	char *	path;	char path_[PAD_(char *)];
	int	flags;	char flags_[PAD_(int)];
	caddr_t	data;	char data_[PAD_(caddr_t)];
};
struct	unmount_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	setuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	uid_t	uid;	char uid_[PAD_(uid_t)];
};
struct	getuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	geteuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	ptrace_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	req;	char req_[PAD_(int)];
	pid_t	pid;	char pid_[PAD_(pid_t)];
	caddr_t	addr;	char addr_[PAD_(caddr_t)];
	int	data;	char data_[PAD_(int)];
};
struct	recvmsg_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	struct msghdr *	msg;	char msg_[PAD_(struct msghdr *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	sendmsg_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	msg;	char msg_[PAD_(caddr_t)];
	int	flags;	char flags_[PAD_(int)];
};
struct	recvfrom_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	buf;	char buf_[PAD_(caddr_t)];
	size_t	len;	char len_[PAD_(size_t)];
	int	flags;	char flags_[PAD_(int)];
	caddr_t	from;	char from_[PAD_(caddr_t)];
	int *	fromlenaddr;	char fromlenaddr_[PAD_(int *)];
};
struct	accept_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	name;	char name_[PAD_(caddr_t)];
	int *	anamelen;	char anamelen_[PAD_(int *)];
};
struct	getpeername_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fdes;	char fdes_[PAD_(int)];
	caddr_t	asa;	char asa_[PAD_(caddr_t)];
	int *	alen;	char alen_[PAD_(int *)];
};
struct	getsockname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fdes;	char fdes_[PAD_(int)];
	caddr_t	asa;	char asa_[PAD_(caddr_t)];
	int *	alen;	char alen_[PAD_(int *)];
};
struct	access_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	chflags_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	fchflags_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
};
struct	sync_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	kill_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	pid;	char pid_[PAD_(int)];
	int	signum;	char signum_[PAD_(int)];
};
struct	getppid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	dup_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	fd;	char fd_[PAD_(u_int)];
};
struct	pipe_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	getegid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	profil_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	caddr_t	samples;	char samples_[PAD_(caddr_t)];
	size_t	size;	char size_[PAD_(size_t)];
	size_t	offset;	char offset_[PAD_(size_t)];
	u_int	scale;	char scale_[PAD_(u_int)];
};
struct	ktrace_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	fname;	char fname_[PAD_(const char *)];
	int	ops;	char ops_[PAD_(int)];
	int	facs;	char facs_[PAD_(int)];
	int	pid;	char pid_[PAD_(int)];
};
struct	getgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	getlogin_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	namebuf;	char namebuf_[PAD_(char *)];
	u_int	namelen;	char namelen_[PAD_(u_int)];
};
struct	setlogin_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	namebuf;	char namebuf_[PAD_(char *)];
};
struct	acct_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	sigaltstack_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	stack_t *	ss;	char ss_[PAD_(stack_t *)];
	stack_t *	oss;	char oss_[PAD_(stack_t *)];
};
struct	ioctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	u_long	com;	char com_[PAD_(u_long)];
	caddr_t	data;	char data_[PAD_(caddr_t)];
};
struct	reboot_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	opt;	char opt_[PAD_(int)];
};
struct	revoke_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	symlink_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	char *	link;	char link_[PAD_(char *)];
};
struct	readlink_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	char *	buf;	char buf_[PAD_(char *)];
	int	count;	char count_[PAD_(int)];
};
struct	execve_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	fname;	char fname_[PAD_(char *)];
	char **	argv;	char argv_[PAD_(char **)];
	char **	envv;	char envv_[PAD_(char **)];
};
struct	umask_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	newmask;	char newmask_[PAD_(int)];
};
struct	chroot_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	getpagesize_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	msync_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	addr;	char addr_[PAD_(void *)];
	size_t	len;	char len_[PAD_(size_t)];
	int	flags;	char flags_[PAD_(int)];
};
struct	vfork_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	sbrk_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	incr;	char incr_[PAD_(int)];
};
struct	sstk_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	incr;	char incr_[PAD_(int)];
};
struct	ovadvise_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	anom;	char anom_[PAD_(int)];
};
struct	munmap_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	addr;	char addr_[PAD_(void *)];
	size_t	len;	char len_[PAD_(size_t)];
};
struct	mprotect_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const void *	addr;	char addr_[PAD_(const void *)];
	size_t	len;	char len_[PAD_(size_t)];
	int	prot;	char prot_[PAD_(int)];
};
struct	madvise_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	addr;	char addr_[PAD_(void *)];
	size_t	len;	char len_[PAD_(size_t)];
	int	behav;	char behav_[PAD_(int)];
};
struct	mincore_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const void *	addr;	char addr_[PAD_(const void *)];
	size_t	len;	char len_[PAD_(size_t)];
	char *	vec;	char vec_[PAD_(char *)];
};
struct	getgroups_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	gidsetsize;	char gidsetsize_[PAD_(u_int)];
	gid_t *	gidset;	char gidset_[PAD_(gid_t *)];
};
struct	setgroups_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	gidsetsize;	char gidsetsize_[PAD_(u_int)];
	gid_t *	gidset;	char gidset_[PAD_(gid_t *)];
};
struct	getpgrp_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	setpgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	pid;	char pid_[PAD_(int)];
	int	pgid;	char pgid_[PAD_(int)];
};
struct	setitimer_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct itimerval *	itv;	char itv_[PAD_(struct itimerval *)];
	struct itimerval *	oitv;	char oitv_[PAD_(struct itimerval *)];
};
struct	owait_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	swapon_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	name;	char name_[PAD_(char *)];
};
struct	getitimer_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct itimerval *	itv;	char itv_[PAD_(struct itimerval *)];
};
struct	getdtablesize_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	dup2_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	from;	char from_[PAD_(u_int)];
	u_int	to;	char to_[PAD_(u_int)];
};
struct	fcntl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	cmd;	char cmd_[PAD_(int)];
	long	arg;	char arg_[PAD_(long)];
};
struct	select_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	nd;	char nd_[PAD_(int)];
	fd_set *	in;	char in_[PAD_(fd_set *)];
	fd_set *	ou;	char ou_[PAD_(fd_set *)];
	fd_set *	ex;	char ex_[PAD_(fd_set *)];
	struct timeval *	tv;	char tv_[PAD_(struct timeval *)];
};
struct	fsync_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
};
struct	setpriority_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	which;	char which_[PAD_(int)];
	int	who;	char who_[PAD_(int)];
	int	prio;	char prio_[PAD_(int)];
};
struct	socket_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	domain;	char domain_[PAD_(int)];
	int	type;	char type_[PAD_(int)];
	int	protocol;	char protocol_[PAD_(int)];
};
struct	connect_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	name;	char name_[PAD_(caddr_t)];
	int	namelen;	char namelen_[PAD_(int)];
};
struct	getpriority_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	which;	char which_[PAD_(int)];
	int	who;	char who_[PAD_(int)];
};
struct	bind_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	name;	char name_[PAD_(caddr_t)];
	int	namelen;	char namelen_[PAD_(int)];
};
struct	setsockopt_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	int	level;	char level_[PAD_(int)];
	int	name;	char name_[PAD_(int)];
	caddr_t	val;	char val_[PAD_(caddr_t)];
	int	valsize;	char valsize_[PAD_(int)];
};
struct	listen_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	int	backlog;	char backlog_[PAD_(int)];
};
struct	gettimeofday_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct timeval *	tp;	char tp_[PAD_(struct timeval *)];
	struct timezone *	tzp;	char tzp_[PAD_(struct timezone *)];
};
struct	getrusage_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	who;	char who_[PAD_(int)];
	struct rusage *	rusage;	char rusage_[PAD_(struct rusage *)];
};
struct	getsockopt_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	int	level;	char level_[PAD_(int)];
	int	name;	char name_[PAD_(int)];
	caddr_t	val;	char val_[PAD_(caddr_t)];
	int *	avalsize;	char avalsize_[PAD_(int *)];
};
struct	readv_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct iovec *	iovp;	char iovp_[PAD_(struct iovec *)];
	u_int	iovcnt;	char iovcnt_[PAD_(u_int)];
};
struct	writev_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct iovec *	iovp;	char iovp_[PAD_(struct iovec *)];
	u_int	iovcnt;	char iovcnt_[PAD_(u_int)];
};
struct	settimeofday_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct timeval *	tv;	char tv_[PAD_(struct timeval *)];
	struct timezone *	tzp;	char tzp_[PAD_(struct timezone *)];
};
struct	fchown_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	uid;	char uid_[PAD_(int)];
	int	gid;	char gid_[PAD_(int)];
};
struct	fchmod_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	mode;	char mode_[PAD_(int)];
};
struct	setreuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	ruid;	char ruid_[PAD_(int)];
	int	euid;	char euid_[PAD_(int)];
};
struct	setregid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	rgid;	char rgid_[PAD_(int)];
	int	egid;	char egid_[PAD_(int)];
};
struct	rename_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	from;	char from_[PAD_(char *)];
	char *	to;	char to_[PAD_(char *)];
};
struct	flock_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	how;	char how_[PAD_(int)];
};
struct	mkfifo_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	mode;	char mode_[PAD_(int)];
};
struct	sendto_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	buf;	char buf_[PAD_(caddr_t)];
	size_t	len;	char len_[PAD_(size_t)];
	int	flags;	char flags_[PAD_(int)];
	caddr_t	to;	char to_[PAD_(caddr_t)];
	int	tolen;	char tolen_[PAD_(int)];
};
struct	shutdown_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	int	how;	char how_[PAD_(int)];
};
struct	socketpair_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	domain;	char domain_[PAD_(int)];
	int	type;	char type_[PAD_(int)];
	int	protocol;	char protocol_[PAD_(int)];
	int *	rsv;	char rsv_[PAD_(int *)];
};
struct	mkdir_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	mode;	char mode_[PAD_(int)];
};
struct	rmdir_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	utimes_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct timeval *	tptr;	char tptr_[PAD_(struct timeval *)];
};
struct	adjtime_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct timeval *	delta;	char delta_[PAD_(struct timeval *)];
	struct timeval *	olddelta;	char olddelta_[PAD_(struct timeval *)];
};
struct	ogethostid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	setsid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	quotactl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	cmd;	char cmd_[PAD_(int)];
	int	uid;	char uid_[PAD_(int)];
	caddr_t	arg;	char arg_[PAD_(caddr_t)];
};
struct	oquota_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	nfssvc_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	flag;	char flag_[PAD_(int)];
	caddr_t	argp;	char argp_[PAD_(caddr_t)];
};
struct	statfs_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct statfs *	buf;	char buf_[PAD_(struct statfs *)];
};
struct	fstatfs_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct statfs *	buf;	char buf_[PAD_(struct statfs *)];
};
struct	getfh_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	fname;	char fname_[PAD_(char *)];
	struct fhandle *	fhp;	char fhp_[PAD_(struct fhandle *)];
};
struct	getdomainname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	domainname;	char domainname_[PAD_(char *)];
	int	len;	char len_[PAD_(int)];
};
struct	setdomainname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	domainname;	char domainname_[PAD_(char *)];
	int	len;	char len_[PAD_(int)];
};
struct	uname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct utsname *	name;	char name_[PAD_(struct utsname *)];
};
struct	sysarch_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	op;	char op_[PAD_(int)];
	char *	parms;	char parms_[PAD_(char *)];
};
struct	rtprio_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	function;	char function_[PAD_(int)];
	pid_t	pid;	char pid_[PAD_(pid_t)];
	struct rtprio *	rtp;	char rtp_[PAD_(struct rtprio *)];
};
struct	semsys_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	which;	char which_[PAD_(int)];
	int	a2;	char a2_[PAD_(int)];
	int	a3;	char a3_[PAD_(int)];
	int	a4;	char a4_[PAD_(int)];
	int	a5;	char a5_[PAD_(int)];
};
struct	msgsys_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	which;	char which_[PAD_(int)];
	int	a2;	char a2_[PAD_(int)];
	int	a3;	char a3_[PAD_(int)];
	int	a4;	char a4_[PAD_(int)];
	int	a5;	char a5_[PAD_(int)];
	int	a6;	char a6_[PAD_(int)];
};
struct	shmsys_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	which;	char which_[PAD_(int)];
	int	a2;	char a2_[PAD_(int)];
	int	a3;	char a3_[PAD_(int)];
	int	a4;	char a4_[PAD_(int)];
};
struct	pread_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	void *	buf;	char buf_[PAD_(void *)];
	size_t	nbyte;	char nbyte_[PAD_(size_t)];
	int	pad;	char pad_[PAD_(int)];
	off_t	offset;	char offset_[PAD_(off_t)];
};
struct	pwrite_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	const void *	buf;	char buf_[PAD_(const void *)];
	size_t	nbyte;	char nbyte_[PAD_(size_t)];
	int	pad;	char pad_[PAD_(int)];
	off_t	offset;	char offset_[PAD_(off_t)];
};
struct	ntp_adjtime_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct timex *	tp;	char tp_[PAD_(struct timex *)];
};
struct	setgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	gid_t	gid;	char gid_[PAD_(gid_t)];
};
struct	setegid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	gid_t	egid;	char egid_[PAD_(gid_t)];
};
struct	seteuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	uid_t	euid;	char euid_[PAD_(uid_t)];
};
struct	stat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct stat *	ub;	char ub_[PAD_(struct stat *)];
};
struct	fstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct stat *	sb;	char sb_[PAD_(struct stat *)];
};
struct	lstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct stat *	ub;	char ub_[PAD_(struct stat *)];
};
struct	pathconf_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	name;	char name_[PAD_(int)];
};
struct	fpathconf_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	name;	char name_[PAD_(int)];
};
struct	__getrlimit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct rlimit *	rlp;	char rlp_[PAD_(struct rlimit *)];
};
struct	__setrlimit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct rlimit *	rlp;	char rlp_[PAD_(struct rlimit *)];
};
struct	getdirentries_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	char *	buf;	char buf_[PAD_(char *)];
	u_int	count;	char count_[PAD_(u_int)];
	long *	basep;	char basep_[PAD_(long *)];
};
struct	mmap_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	caddr_t	addr;	char addr_[PAD_(caddr_t)];
	size_t	len;	char len_[PAD_(size_t)];
	int	prot;	char prot_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
	int	fd;	char fd_[PAD_(int)];
	int	pad;	char pad_[PAD_(int)];
	off_t	pos;	char pos_[PAD_(off_t)];
};
struct	lseek_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	pad;	char pad_[PAD_(int)];
	off_t	offset;	char offset_[PAD_(off_t)];
	int	whence;	char whence_[PAD_(int)];
};
struct	truncate_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	pad;	char pad_[PAD_(int)];
	off_t	length;	char length_[PAD_(off_t)];
};
struct	ftruncate_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	pad;	char pad_[PAD_(int)];
	off_t	length;	char length_[PAD_(off_t)];
};
struct	sysctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int *	name;	char name_[PAD_(int *)];
	u_int	namelen;	char namelen_[PAD_(u_int)];
	void *	old;	char old_[PAD_(void *)];
	size_t *	oldlenp;	char oldlenp_[PAD_(size_t *)];
	void *	new;	char new_[PAD_(void *)];
	size_t	newlen;	char newlen_[PAD_(size_t)];
};
struct	mlock_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const void *	addr;	char addr_[PAD_(const void *)];
	size_t	len;	char len_[PAD_(size_t)];
};
struct	munlock_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const void *	addr;	char addr_[PAD_(const void *)];
	size_t	len;	char len_[PAD_(size_t)];
};
struct	undelete_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
};
struct	futimes_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct timeval *	tptr;	char tptr_[PAD_(struct timeval *)];
};
struct	getpgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
};
struct	poll_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct pollfd *	fds;	char fds_[PAD_(struct pollfd *)];
	u_int	nfds;	char nfds_[PAD_(u_int)];
	int	timeout;	char timeout_[PAD_(int)];
};
struct	__semctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	semid;	char semid_[PAD_(int)];
	int	semnum;	char semnum_[PAD_(int)];
	int	cmd;	char cmd_[PAD_(int)];
	union semun *	arg;	char arg_[PAD_(union semun *)];
};
struct	semget_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	key_t	key;	char key_[PAD_(key_t)];
	int	nsems;	char nsems_[PAD_(int)];
	int	semflg;	char semflg_[PAD_(int)];
};
struct	semop_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	semid;	char semid_[PAD_(int)];
	struct sembuf *	sops;	char sops_[PAD_(struct sembuf *)];
	u_int	nsops;	char nsops_[PAD_(u_int)];
};
struct	msgctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	msqid;	char msqid_[PAD_(int)];
	int	cmd;	char cmd_[PAD_(int)];
	struct msqid_ds *	buf;	char buf_[PAD_(struct msqid_ds *)];
};
struct	msgget_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	key_t	key;	char key_[PAD_(key_t)];
	int	msgflg;	char msgflg_[PAD_(int)];
};
struct	msgsnd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	msqid;	char msqid_[PAD_(int)];
	void *	msgp;	char msgp_[PAD_(void *)];
	size_t	msgsz;	char msgsz_[PAD_(size_t)];
	int	msgflg;	char msgflg_[PAD_(int)];
};
struct	msgrcv_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	msqid;	char msqid_[PAD_(int)];
	void *	msgp;	char msgp_[PAD_(void *)];
	size_t	msgsz;	char msgsz_[PAD_(size_t)];
	long	msgtyp;	char msgtyp_[PAD_(long)];
	int	msgflg;	char msgflg_[PAD_(int)];
};
struct	shmat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	shmid;	char shmid_[PAD_(int)];
	void *	shmaddr;	char shmaddr_[PAD_(void *)];
	int	shmflg;	char shmflg_[PAD_(int)];
};
struct	shmctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	shmid;	char shmid_[PAD_(int)];
	int	cmd;	char cmd_[PAD_(int)];
	struct shmid_ds *	buf;	char buf_[PAD_(struct shmid_ds *)];
};
struct	shmdt_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	shmaddr;	char shmaddr_[PAD_(void *)];
};
struct	shmget_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	key_t	key;	char key_[PAD_(key_t)];
	int	size;	char size_[PAD_(int)];
	int	shmflg;	char shmflg_[PAD_(int)];
};
struct	clock_gettime_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	clockid_t	clock_id;	char clock_id_[PAD_(clockid_t)];
	struct timespec *	tp;	char tp_[PAD_(struct timespec *)];
};
struct	clock_settime_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	clockid_t	clock_id;	char clock_id_[PAD_(clockid_t)];
	const struct timespec *	tp;	char tp_[PAD_(const struct timespec *)];
};
struct	clock_getres_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	clockid_t	clock_id;	char clock_id_[PAD_(clockid_t)];
	struct timespec *	tp;	char tp_[PAD_(struct timespec *)];
};
struct	nanosleep_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const struct timespec *	rqtp;	char rqtp_[PAD_(const struct timespec *)];
	struct timespec *	rmtp;	char rmtp_[PAD_(struct timespec *)];
};
struct	minherit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	addr;	char addr_[PAD_(void *)];
	size_t	len;	char len_[PAD_(size_t)];
	int	inherit;	char inherit_[PAD_(int)];
};
struct	rfork_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	flags;	char flags_[PAD_(int)];
};
struct	openbsd_poll_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct pollfd *	fds;	char fds_[PAD_(struct pollfd *)];
	u_int	nfds;	char nfds_[PAD_(u_int)];
	int	timeout;	char timeout_[PAD_(int)];
};
struct	issetugid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	lchown_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	uid;	char uid_[PAD_(int)];
	int	gid;	char gid_[PAD_(int)];
};
struct	getdents_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	char *	buf;	char buf_[PAD_(char *)];
	size_t	count;	char count_[PAD_(size_t)];
};
struct	lchmod_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	mode_t	mode;	char mode_[PAD_(mode_t)];
};
struct	lutimes_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct timeval *	tptr;	char tptr_[PAD_(struct timeval *)];
};
struct	nstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct nstat *	ub;	char ub_[PAD_(struct nstat *)];
};
struct	nfstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct nstat *	sb;	char sb_[PAD_(struct nstat *)];
};
struct	nlstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct nstat *	ub;	char ub_[PAD_(struct nstat *)];
};
struct	fhstatfs_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const struct fhandle *	u_fhp;	char u_fhp_[PAD_(const struct fhandle *)];
	struct statfs *	buf;	char buf_[PAD_(struct statfs *)];
};
struct	fhopen_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const struct fhandle *	u_fhp;	char u_fhp_[PAD_(const struct fhandle *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	fhstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const struct fhandle *	u_fhp;	char u_fhp_[PAD_(const struct fhandle *)];
	struct stat *	sb;	char sb_[PAD_(struct stat *)];
};
struct	modnext_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	modid;	char modid_[PAD_(int)];
};
struct	modstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	modid;	char modid_[PAD_(int)];
	struct module_stat *	stat;	char stat_[PAD_(struct module_stat *)];
};
struct	modfnext_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	modid;	char modid_[PAD_(int)];
};
struct	modfind_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	name;	char name_[PAD_(const char *)];
};
struct	kldload_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	file;	char file_[PAD_(const char *)];
};
struct	kldunload_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fileid;	char fileid_[PAD_(int)];
};
struct	kldfind_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	file;	char file_[PAD_(const char *)];
};
struct	kldnext_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fileid;	char fileid_[PAD_(int)];
};
struct	kldstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fileid;	char fileid_[PAD_(int)];
	struct kld_file_stat *	stat;	char stat_[PAD_(struct kld_file_stat *)];
};
struct	kldfirstmod_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fileid;	char fileid_[PAD_(int)];
};
struct	getsid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
};
struct	setresuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	uid_t	ruid;	char ruid_[PAD_(uid_t)];
	uid_t	euid;	char euid_[PAD_(uid_t)];
	uid_t	suid;	char suid_[PAD_(uid_t)];
};
struct	setresgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	gid_t	rgid;	char rgid_[PAD_(gid_t)];
	gid_t	egid;	char egid_[PAD_(gid_t)];
	gid_t	sgid;	char sgid_[PAD_(gid_t)];
};
struct	aio_return_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb *	aiocbp;	char aiocbp_[PAD_(struct aiocb *)];
};
struct	aio_suspend_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb *const *	aiocbp;	char aiocbp_[PAD_(struct aiocb *const *)];
	int	nent;	char nent_[PAD_(int)];
	const struct timespec *	timeout;	char timeout_[PAD_(const struct timespec *)];
};
struct	aio_cancel_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct aiocb *	aiocbp;	char aiocbp_[PAD_(struct aiocb *)];
};
struct	aio_error_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb *	aiocbp;	char aiocbp_[PAD_(struct aiocb *)];
};
struct	aio_read_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb *	aiocbp;	char aiocbp_[PAD_(struct aiocb *)];
};
struct	aio_write_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb *	aiocbp;	char aiocbp_[PAD_(struct aiocb *)];
};
struct	lio_listio_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	mode;	char mode_[PAD_(int)];
	struct aiocb *const *	acb_list;	char acb_list_[PAD_(struct aiocb *const *)];
	int	nent;	char nent_[PAD_(int)];
	struct sigevent *	sig;	char sig_[PAD_(struct sigevent *)];
};
struct	yield_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	thr_sleep_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const struct timespec *	timeout;	char timeout_[PAD_(const struct timespec *)];
};
struct	thr_wakeup_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
};
struct	mlockall_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	how;	char how_[PAD_(int)];
};
struct	munlockall_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	__getcwd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_char *	buf;	char buf_[PAD_(u_char *)];
	u_int	buflen;	char buflen_[PAD_(u_int)];
};
struct	sched_setparam_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
	const struct sched_param *	param;	char param_[PAD_(const struct sched_param *)];
};
struct	sched_getparam_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
	struct sched_param *	param;	char param_[PAD_(struct sched_param *)];
};
struct	sched_setscheduler_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
	int	policy;	char policy_[PAD_(int)];
	const struct sched_param *	param;	char param_[PAD_(const struct sched_param *)];
};
struct	sched_getscheduler_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
};
struct	sched_yield_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	sched_get_priority_max_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	policy;	char policy_[PAD_(int)];
};
struct	sched_get_priority_min_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	policy;	char policy_[PAD_(int)];
};
struct	sched_rr_get_interval_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	pid_t	pid;	char pid_[PAD_(pid_t)];
	struct timespec *	interval;	char interval_[PAD_(struct timespec *)];
};
struct	utrace_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const void *	addr;	char addr_[PAD_(const void *)];
	size_t	len;	char len_[PAD_(size_t)];
};
struct	kldsym_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fileid;	char fileid_[PAD_(int)];
	int	cmd;	char cmd_[PAD_(int)];
	void *	data;	char data_[PAD_(void *)];
};
struct	jail_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct jail *	jail;	char jail_[PAD_(struct jail *)];
};
struct	sigprocmask_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	how;	char how_[PAD_(int)];
	const sigset_t *	set;	char set_[PAD_(const sigset_t *)];
	sigset_t *	oset;	char oset_[PAD_(sigset_t *)];
};
struct	sigsuspend_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const sigset_t *	sigmask;	char sigmask_[PAD_(const sigset_t *)];
};
struct	sigaction_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	sig;	char sig_[PAD_(int)];
	const struct sigaction *	act;	char act_[PAD_(const struct sigaction *)];
	struct sigaction *	oact;	char oact_[PAD_(struct sigaction *)];
};
struct	sigpending_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	sigset_t *	set;	char set_[PAD_(sigset_t *)];
};
struct	sigreturn_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	ucontext_t *	sigcntxp;	char sigcntxp_[PAD_(ucontext_t *)];
};
struct	__acl_get_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	__acl_set_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	__acl_get_fd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	filedes;	char filedes_[PAD_(int)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	__acl_set_fd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	filedes;	char filedes_[PAD_(int)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	__acl_delete_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
};
struct	__acl_delete_fd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	filedes;	char filedes_[PAD_(int)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
};
struct	__acl_aclcheck_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	__acl_aclcheck_fd_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	filedes;	char filedes_[PAD_(int)];
	acl_type_t	type;	char type_[PAD_(acl_type_t)];
	struct acl *	aclp;	char aclp_[PAD_(struct acl *)];
};
struct	extattrctl_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	int	cmd;	char cmd_[PAD_(int)];
	const char *	attrname;	char attrname_[PAD_(const char *)];
	char *	arg;	char arg_[PAD_(char *)];
};
struct	extattr_set_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	const char *	attrname;	char attrname_[PAD_(const char *)];
	struct iovec *	iovp;	char iovp_[PAD_(struct iovec *)];
	unsigned	iovcnt;	char iovcnt_[PAD_(unsigned)];
};
struct	extattr_get_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	const char *	attrname;	char attrname_[PAD_(const char *)];
	struct iovec *	iovp;	char iovp_[PAD_(struct iovec *)];
	unsigned	iovcnt;	char iovcnt_[PAD_(unsigned)];
};
struct	extattr_delete_file_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	path;	char path_[PAD_(const char *)];
	const char *	attrname;	char attrname_[PAD_(const char *)];
};
struct	aio_waitcomplete_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct aiocb **	aiocbp;	char aiocbp_[PAD_(struct aiocb **)];
	struct timespec *	timeout;	char timeout_[PAD_(struct timespec *)];
};
struct	getresuid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	uid_t *	ruid;	char ruid_[PAD_(uid_t *)];
	uid_t *	euid;	char euid_[PAD_(uid_t *)];
	uid_t *	suid;	char suid_[PAD_(uid_t *)];
};
struct	getresgid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	gid_t *	rgid;	char rgid_[PAD_(gid_t *)];
	gid_t *	egid;	char egid_[PAD_(gid_t *)];
	gid_t *	sgid;	char sgid_[PAD_(gid_t *)];
};
struct	kqueue_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	register_t dummy;
};
struct	kevent_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	const struct kevent *	changelist;	char changelist_[PAD_(const struct kevent *)];
	int	nchanges;	char nchanges_[PAD_(int)];
	struct kevent *	eventlist;	char eventlist_[PAD_(struct kevent *)];
	int	nevents;	char nevents_[PAD_(int)];
	const struct timespec *	timeout;	char timeout_[PAD_(const struct timespec *)];
};
struct	sendfile_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	int	s;	char s_[PAD_(int)];
	off_t	offset;	char offset_[PAD_(off_t)];
	size_t	nbytes;	char nbytes_[PAD_(size_t)];
	struct sf_hdtr *	hdtr;	char hdtr_[PAD_(struct sf_hdtr *)];
	off_t *	sbytes;	char sbytes_[PAD_(off_t *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	varsym_set_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	level;	char level_[PAD_(int)];
	const char *	name;	char name_[PAD_(const char *)];
	const char *	data;	char data_[PAD_(const char *)];
};
struct	varsym_get_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	mask;	char mask_[PAD_(int)];
	const char *	wild;	char wild_[PAD_(const char *)];
	char *	buf;	char buf_[PAD_(char *)];
	int	bufsize;	char bufsize_[PAD_(int)];
};
struct	varsym_list_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	level;	char level_[PAD_(int)];
	char *	buf;	char buf_[PAD_(char *)];
	int	maxsize;	char maxsize_[PAD_(int)];
	int *	marker;	char marker_[PAD_(int *)];
};
struct	upc_register_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct upcall *	upc;	char upc_[PAD_(struct upcall *)];
	void *	ctxfunc;	char ctxfunc_[PAD_(void *)];
	void *	func;	char func_[PAD_(void *)];
	void *	data;	char data_[PAD_(void *)];
};
struct	upc_control_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	cmd;	char cmd_[PAD_(int)];
	int	upcid;	char upcid_[PAD_(int)];
	void *	data;	char data_[PAD_(void *)];
};
struct	caps_sys_service_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	name;	char name_[PAD_(const char *)];
	uid_t	uid;	char uid_[PAD_(uid_t)];
	gid_t	gid;	char gid_[PAD_(gid_t)];
	int	upcid;	char upcid_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
};
struct	caps_sys_client_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	const char *	name;	char name_[PAD_(const char *)];
	uid_t	uid;	char uid_[PAD_(uid_t)];
	gid_t	gid;	char gid_[PAD_(gid_t)];
	int	upcid;	char upcid_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
};
struct	caps_sys_close_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
};
struct	caps_sys_put_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	void *	msg;	char msg_[PAD_(void *)];
	int	msgsize;	char msgsize_[PAD_(int)];
};
struct	caps_sys_reply_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	void *	msg;	char msg_[PAD_(void *)];
	int	msgsize;	char msgsize_[PAD_(int)];
	off_t	msgcid;	char msgcid_[PAD_(off_t)];
};
struct	caps_sys_get_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	void *	msg;	char msg_[PAD_(void *)];
	int	maxsize;	char maxsize_[PAD_(int)];
	struct caps_msgid *	msgid;	char msgid_[PAD_(struct caps_msgid *)];
	struct caps_cred *	ccr;	char ccr_[PAD_(struct caps_cred *)];
};
struct	caps_sys_wait_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	void *	msg;	char msg_[PAD_(void *)];
	int	maxsize;	char maxsize_[PAD_(int)];
	struct caps_msgid *	msgid;	char msgid_[PAD_(struct caps_msgid *)];
	struct caps_cred *	ccr;	char ccr_[PAD_(struct caps_cred *)];
};
struct	caps_sys_abort_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	off_t	msgcid;	char msgcid_[PAD_(off_t)];
	int	flags;	char flags_[PAD_(int)];
};
struct	caps_sys_getgen_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
};
struct	caps_sys_setgen_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	portid;	char portid_[PAD_(int)];
	off_t	gen;	char gen_[PAD_(off_t)];
};
struct	exec_sys_register_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	entry;	char entry_[PAD_(void *)];
};
struct	exec_sys_unregister_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	id;	char id_[PAD_(int)];
};

#ifdef _KERNEL

int	nosys (struct nosys_args *);
void	sys_exit (struct sys_exit_args *);
int	fork (struct fork_args *);
int	read (struct read_args *);
int	write (struct write_args *);
int	open (struct open_args *);
int	close (struct close_args *);
int	wait4 (struct wait_args *);
int	link (struct link_args *);
int	unlink (struct unlink_args *);
int	chdir (struct chdir_args *);
int	fchdir (struct fchdir_args *);
int	mknod (struct mknod_args *);
int	chmod (struct chmod_args *);
int	chown (struct chown_args *);
int	obreak (struct obreak_args *);
int	getfsstat (struct getfsstat_args *);
int	getpid (struct getpid_args *);
int	mount (struct mount_args *);
int	unmount (struct unmount_args *);
int	setuid (struct setuid_args *);
int	getuid (struct getuid_args *);
int	geteuid (struct geteuid_args *);
int	ptrace (struct ptrace_args *);
int	recvmsg (struct recvmsg_args *);
int	sendmsg (struct sendmsg_args *);
int	recvfrom (struct recvfrom_args *);
int	accept (struct accept_args *);
int	getpeername (struct getpeername_args *);
int	getsockname (struct getsockname_args *);
int	access (struct access_args *);
int	chflags (struct chflags_args *);
int	fchflags (struct fchflags_args *);
int	sync (struct sync_args *);
int	kill (struct kill_args *);
int	getppid (struct getppid_args *);
int	dup (struct dup_args *);
int	pipe (struct pipe_args *);
int	getegid (struct getegid_args *);
int	profil (struct profil_args *);
int	ktrace (struct ktrace_args *);
int	getgid (struct getgid_args *);
int	getlogin (struct getlogin_args *);
int	setlogin (struct setlogin_args *);
int	acct (struct acct_args *);
int	sigaltstack (struct sigaltstack_args *);
int	ioctl (struct ioctl_args *);
int	reboot (struct reboot_args *);
int	revoke (struct revoke_args *);
int	symlink (struct symlink_args *);
int	readlink (struct readlink_args *);
int	execve (struct execve_args *);
int	umask (struct umask_args *);
int	chroot (struct chroot_args *);
int	msync (struct msync_args *);
int	vfork (struct vfork_args *);
int	sbrk (struct sbrk_args *);
int	sstk (struct sstk_args *);
int	ovadvise (struct ovadvise_args *);
int	munmap (struct munmap_args *);
int	mprotect (struct mprotect_args *);
int	madvise (struct madvise_args *);
int	mincore (struct mincore_args *);
int	getgroups (struct getgroups_args *);
int	setgroups (struct setgroups_args *);
int	getpgrp (struct getpgrp_args *);
int	setpgid (struct setpgid_args *);
int	setitimer (struct setitimer_args *);
int	swapon (struct swapon_args *);
int	getitimer (struct getitimer_args *);
int	getdtablesize (struct getdtablesize_args *);
int	dup2 (struct dup2_args *);
int	fcntl (struct fcntl_args *);
int	select (struct select_args *);
int	fsync (struct fsync_args *);
int	setpriority (struct setpriority_args *);
int	socket (struct socket_args *);
int	connect (struct connect_args *);
int	getpriority (struct getpriority_args *);
int	bind (struct bind_args *);
int	setsockopt (struct setsockopt_args *);
int	listen (struct listen_args *);
int	gettimeofday (struct gettimeofday_args *);
int	getrusage (struct getrusage_args *);
int	getsockopt (struct getsockopt_args *);
int	readv (struct readv_args *);
int	writev (struct writev_args *);
int	settimeofday (struct settimeofday_args *);
int	fchown (struct fchown_args *);
int	fchmod (struct fchmod_args *);
int	setreuid (struct setreuid_args *);
int	setregid (struct setregid_args *);
int	rename (struct rename_args *);
int	flock (struct flock_args *);
int	mkfifo (struct mkfifo_args *);
int	sendto (struct sendto_args *);
int	shutdown (struct shutdown_args *);
int	socketpair (struct socketpair_args *);
int	mkdir (struct mkdir_args *);
int	rmdir (struct rmdir_args *);
int	utimes (struct utimes_args *);
int	adjtime (struct adjtime_args *);
int	setsid (struct setsid_args *);
int	quotactl (struct quotactl_args *);
int	nfssvc (struct nfssvc_args *);
int	statfs (struct statfs_args *);
int	fstatfs (struct fstatfs_args *);
int	getfh (struct getfh_args *);
int	getdomainname (struct getdomainname_args *);
int	setdomainname (struct setdomainname_args *);
int	uname (struct uname_args *);
int	sysarch (struct sysarch_args *);
int	rtprio (struct rtprio_args *);
int	semsys (struct semsys_args *);
int	msgsys (struct msgsys_args *);
int	shmsys (struct shmsys_args *);
int	pread (struct pread_args *);
int	pwrite (struct pwrite_args *);
int	ntp_adjtime (struct ntp_adjtime_args *);
int	setgid (struct setgid_args *);
int	setegid (struct setegid_args *);
int	seteuid (struct seteuid_args *);
int	stat (struct stat_args *);
int	fstat (struct fstat_args *);
int	lstat (struct lstat_args *);
int	pathconf (struct pathconf_args *);
int	fpathconf (struct fpathconf_args *);
int	getrlimit (struct __getrlimit_args *);
int	setrlimit (struct __setrlimit_args *);
int	getdirentries (struct getdirentries_args *);
int	mmap (struct mmap_args *);
int	lseek (struct lseek_args *);
int	truncate (struct truncate_args *);
int	ftruncate (struct ftruncate_args *);
int	__sysctl (struct sysctl_args *);
int	mlock (struct mlock_args *);
int	munlock (struct munlock_args *);
int	undelete (struct undelete_args *);
int	futimes (struct futimes_args *);
int	getpgid (struct getpgid_args *);
int	poll (struct poll_args *);
int	lkmnosys (struct nosys_args *);
int	__semctl (struct __semctl_args *);
int	semget (struct semget_args *);
int	semop (struct semop_args *);
int	msgctl (struct msgctl_args *);
int	msgget (struct msgget_args *);
int	msgsnd (struct msgsnd_args *);
int	msgrcv (struct msgrcv_args *);
int	shmat (struct shmat_args *);
int	shmctl (struct shmctl_args *);
int	shmdt (struct shmdt_args *);
int	shmget (struct shmget_args *);
int	clock_gettime (struct clock_gettime_args *);
int	clock_settime (struct clock_settime_args *);
int	clock_getres (struct clock_getres_args *);
int	nanosleep (struct nanosleep_args *);
int	minherit (struct minherit_args *);
int	rfork (struct rfork_args *);
int	openbsd_poll (struct openbsd_poll_args *);
int	issetugid (struct issetugid_args *);
int	lchown (struct lchown_args *);
int	getdents (struct getdents_args *);
int	lchmod (struct lchmod_args *);
int	lutimes (struct lutimes_args *);
int	nstat (struct nstat_args *);
int	nfstat (struct nfstat_args *);
int	nlstat (struct nlstat_args *);
int	fhstatfs (struct fhstatfs_args *);
int	fhopen (struct fhopen_args *);
int	fhstat (struct fhstat_args *);
int	modnext (struct modnext_args *);
int	modstat (struct modstat_args *);
int	modfnext (struct modfnext_args *);
int	modfind (struct modfind_args *);
int	kldload (struct kldload_args *);
int	kldunload (struct kldunload_args *);
int	kldfind (struct kldfind_args *);
int	kldnext (struct kldnext_args *);
int	kldstat (struct kldstat_args *);
int	kldfirstmod (struct kldfirstmod_args *);
int	getsid (struct getsid_args *);
int	setresuid (struct setresuid_args *);
int	setresgid (struct setresgid_args *);
int	aio_return (struct aio_return_args *);
int	aio_suspend (struct aio_suspend_args *);
int	aio_cancel (struct aio_cancel_args *);
int	aio_error (struct aio_error_args *);
int	aio_read (struct aio_read_args *);
int	aio_write (struct aio_write_args *);
int	lio_listio (struct lio_listio_args *);
int	yield (struct yield_args *);
int	thr_sleep (struct thr_sleep_args *);
int	thr_wakeup (struct thr_wakeup_args *);
int	mlockall (struct mlockall_args *);
int	munlockall (struct munlockall_args *);
int	__getcwd (struct __getcwd_args *);
int	sched_setparam (struct sched_setparam_args *);
int	sched_getparam (struct sched_getparam_args *);
int	sched_setscheduler (struct sched_setscheduler_args *);
int	sched_getscheduler (struct sched_getscheduler_args *);
int	sched_yield (struct sched_yield_args *);
int	sched_get_priority_max (struct sched_get_priority_max_args *);
int	sched_get_priority_min (struct sched_get_priority_min_args *);
int	sched_rr_get_interval (struct sched_rr_get_interval_args *);
int	utrace (struct utrace_args *);
int	kldsym (struct kldsym_args *);
int	jail (struct jail_args *);
int	sigprocmask (struct sigprocmask_args *);
int	sigsuspend (struct sigsuspend_args *);
int	sigaction (struct sigaction_args *);
int	sigpending (struct sigpending_args *);
int	sigreturn (struct sigreturn_args *);
int	__acl_get_file (struct __acl_get_file_args *);
int	__acl_set_file (struct __acl_set_file_args *);
int	__acl_get_fd (struct __acl_get_fd_args *);
int	__acl_set_fd (struct __acl_set_fd_args *);
int	__acl_delete_file (struct __acl_delete_file_args *);
int	__acl_delete_fd (struct __acl_delete_fd_args *);
int	__acl_aclcheck_file (struct __acl_aclcheck_file_args *);
int	__acl_aclcheck_fd (struct __acl_aclcheck_fd_args *);
int	extattrctl (struct extattrctl_args *);
int	extattr_set_file (struct extattr_set_file_args *);
int	extattr_get_file (struct extattr_get_file_args *);
int	extattr_delete_file (struct extattr_delete_file_args *);
int	aio_waitcomplete (struct aio_waitcomplete_args *);
int	getresuid (struct getresuid_args *);
int	getresgid (struct getresgid_args *);
int	kqueue (struct kqueue_args *);
int	kevent (struct kevent_args *);
int	sendfile (struct sendfile_args *);
int	varsym_set (struct varsym_set_args *);
int	varsym_get (struct varsym_get_args *);
int	varsym_list (struct varsym_list_args *);
int	upc_register (struct upc_register_args *);
int	upc_control (struct upc_control_args *);
int	caps_sys_service (struct caps_sys_service_args *);
int	caps_sys_client (struct caps_sys_client_args *);
int	caps_sys_close (struct caps_sys_close_args *);
int	caps_sys_put (struct caps_sys_put_args *);
int	caps_sys_reply (struct caps_sys_reply_args *);
int	caps_sys_get (struct caps_sys_get_args *);
int	caps_sys_wait (struct caps_sys_wait_args *);
int	caps_sys_abort (struct caps_sys_abort_args *);
int	caps_sys_getgen (struct caps_sys_getgen_args *);
int	caps_sys_setgen (struct caps_sys_setgen_args *);
int	exec_sys_register (struct exec_sys_register_args *);
int	exec_sys_unregister (struct exec_sys_unregister_args *);

#endif /* _KERNEL */

#ifdef COMPAT_43

struct	ocreat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	int	mode;	char mode_[PAD_(int)];
};
struct	olseek_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	long	offset;	char offset_[PAD_(long)];
	int	whence;	char whence_[PAD_(int)];
};
struct	ostat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct ostat *	ub;	char ub_[PAD_(struct ostat *)];
};
struct	olstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	struct ostat *	ub;	char ub_[PAD_(struct ostat *)];
};
struct	ofstat_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	struct ostat *	sb;	char sb_[PAD_(struct ostat *)];
};
struct	getkerninfo_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	op;	char op_[PAD_(int)];
	char *	where;	char where_[PAD_(char *)];
	size_t *	size;	char size_[PAD_(size_t *)];
	int	arg;	char arg_[PAD_(int)];
};
struct	ommap_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	void *	addr;	char addr_[PAD_(void *)];
	int	len;	char len_[PAD_(int)];
	int	prot;	char prot_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
	int	fd;	char fd_[PAD_(int)];
	long	pos;	char pos_[PAD_(long)];
};
struct	gethostname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	hostname;	char hostname_[PAD_(char *)];
	u_int	len;	char len_[PAD_(u_int)];
};
struct	sethostname_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	hostname;	char hostname_[PAD_(char *)];
	u_int	len;	char len_[PAD_(u_int)];
};
struct	osend_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	buf;	char buf_[PAD_(caddr_t)];
	int	len;	char len_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
};
struct	orecv_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	buf;	char buf_[PAD_(caddr_t)];
	int	len;	char len_[PAD_(int)];
	int	flags;	char flags_[PAD_(int)];
};
struct	osigvec_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	signum;	char signum_[PAD_(int)];
	struct sigvec *	nsv;	char nsv_[PAD_(struct sigvec *)];
	struct sigvec *	osv;	char osv_[PAD_(struct sigvec *)];
};
struct	osigblock_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	mask;	char mask_[PAD_(int)];
};
struct	osigsetmask_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	mask;	char mask_[PAD_(int)];
};
struct	osigstack_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	struct sigstack *	nss;	char nss_[PAD_(struct sigstack *)];
	struct sigstack *	oss;	char oss_[PAD_(struct sigstack *)];
};
struct	orecvmsg_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	struct omsghdr *	msg;	char msg_[PAD_(struct omsghdr *)];
	int	flags;	char flags_[PAD_(int)];
};
struct	osendmsg_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	s;	char s_[PAD_(int)];
	caddr_t	msg;	char msg_[PAD_(caddr_t)];
	int	flags;	char flags_[PAD_(int)];
};
struct	otruncate_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	char *	path;	char path_[PAD_(char *)];
	long	length;	char length_[PAD_(long)];
};
struct	oftruncate_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	long	length;	char length_[PAD_(long)];
};
struct	ogetpeername_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fdes;	char fdes_[PAD_(int)];
	caddr_t	asa;	char asa_[PAD_(caddr_t)];
	int *	alen;	char alen_[PAD_(int *)];
};
struct	osethostid_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	long	hostid;	char hostid_[PAD_(long)];
};
struct	ogetrlimit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct orlimit *	rlp;	char rlp_[PAD_(struct orlimit *)];
};
struct	osetrlimit_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	u_int	which;	char which_[PAD_(u_int)];
	struct orlimit *	rlp;	char rlp_[PAD_(struct orlimit *)];
};
struct	okillpg_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	pgid;	char pgid_[PAD_(int)];
	int	signum;	char signum_[PAD_(int)];
};
struct	ogetdirentries_args {
#ifdef _KERNEL
	struct sysmsg sysmsg;
#endif
	union usrmsg usrmsg;
	int	fd;	char fd_[PAD_(int)];
	char *	buf;	char buf_[PAD_(char *)];
	u_int	count;	char count_[PAD_(u_int)];
	long *	basep;	char basep_[PAD_(long *)];
};

#ifdef _KERNEL

int	ocreat (struct ocreat_args *);
int	olseek (struct olseek_args *);
int	ostat (struct ostat_args *);
int	olstat (struct olstat_args *);
int	ofstat (struct ofstat_args *);
int	ogetkerninfo (struct getkerninfo_args *);
int	ogetpagesize (struct getpagesize_args *);
int	ommap (struct ommap_args *);
int	owait (struct owait_args *);
int	ogethostname (struct gethostname_args *);
int	osethostname (struct sethostname_args *);
int	oaccept (struct accept_args *);
int	osend (struct osend_args *);
int	orecv (struct orecv_args *);
int	osigvec (struct osigvec_args *);
int	osigblock (struct osigblock_args *);
int	osigsetmask (struct osigsetmask_args *);
int	osigstack (struct osigstack_args *);
int	orecvmsg (struct orecvmsg_args *);
int	osendmsg (struct osendmsg_args *);
int	orecvfrom (struct recvfrom_args *);
int	otruncate (struct otruncate_args *);
int	oftruncate (struct oftruncate_args *);
int	ogetpeername (struct ogetpeername_args *);
int	ogethostid (struct ogethostid_args *);
int	osethostid (struct osethostid_args *);
int	ogetrlimit (struct ogetrlimit_args *);
int	osetrlimit (struct osetrlimit_args *);
int	okillpg (struct okillpg_args *);
int	oquota (struct oquota_args *);
int	ogetsockname (struct getsockname_args *);
int	ogetdirentries (struct ogetdirentries_args *);

#endif /* _KERNEL */

#endif /* COMPAT_43 */

#undef PAD_

#endif /* !_SYS_SYSPROTO_H_ */