diff --git a/sys/amd64/ia32/Makefile b/sys/amd64/ia32/Makefile new file mode 100644 index 000000000000..1184ef4a2ab0 --- /dev/null +++ b/sys/amd64/ia32/Makefile @@ -0,0 +1,15 @@ +# Makefile for syscall tables +# +# $FreeBSD$ + +all: + @echo "make sysent only" + +sysent: ia32_sysent.c ia32_syscall.h ia32_proto.h + +ia32_sysent.c ia32_syscall.h ia32_proto.h: ../../kern/makesyscalls.sh \ + syscalls.master syscalls.conf + -mv -f ia32_sysent.c ia32_sysent.c.bak + -mv -f ia32_syscall.h ia32_syscall.h.bak + -mv -f ia32_proto.h ia32_proto.h.bak + sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf diff --git a/sys/amd64/ia32/ia32_proto.h b/sys/amd64/ia32/ia32_proto.h new file mode 100644 index 000000000000..5bb7abf36b30 --- /dev/null +++ b/sys/amd64/ia32/ia32_proto.h @@ -0,0 +1,1529 @@ +/* + * System call prototypes. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#ifndef _IA32_SYSPROTO_H_ +#define _IA32_SYSPROTO_H_ + +#include + +#include + +struct proc; + +struct thread; + +#define PAD_(t) (sizeof(register_t) <= sizeof(t) ? \ + 0 : sizeof(register_t) - sizeof(t)) + +#if BYTE_ORDER == LITTLE_ENDIAN +#define PADL_(t) 0 +#define PADR_(t) PAD_(t) +#else +#define PADL_(t) PAD_(t) +#define PADR_(t) 0 +#endif + +struct nosys_args { + register_t dummy; +}; +struct sys_exit_args { + char rval_l_[PADL_(int)]; int rval; char rval_r_[PADR_(int)]; +}; +struct fork_args { + register_t dummy; +}; +struct read_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct write_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct open_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct close_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct wait_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)]; + char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct link_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct unlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct chdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct fchdir_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct mknod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char dev_l_[PADL_(int)]; int dev; char dev_r_[PADR_(int)]; +}; +struct chmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct chown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct obreak_args { + char nsize_l_[PADL_(char *)]; char * nsize; char nsize_r_[PADR_(char *)]; +}; +struct getfsstat_args { + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; + char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct getpid_args { + register_t dummy; +}; +struct mount_args { + char type_l_[PADL_(char *)]; char * type; char type_r_[PADR_(char *)]; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct unmount_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct setuid_args { + char uid_l_[PADL_(uid_t)]; uid_t uid; char uid_r_[PADR_(uid_t)]; +}; +struct getuid_args { + register_t dummy; +}; +struct geteuid_args { + register_t dummy; +}; +struct ptrace_args { + char req_l_[PADL_(int)]; int req; char req_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char data_l_[PADL_(int)]; int data; char data_r_[PADR_(int)]; +}; +struct recvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct msghdr *)]; struct msghdr * msg; char msg_r_[PADR_(struct msghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct recvfrom_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char from_l_[PADL_(caddr_t)]; caddr_t from; char from_r_[PADR_(caddr_t)]; + char fromlenaddr_l_[PADL_(int *)]; int * fromlenaddr; char fromlenaddr_r_[PADR_(int *)]; +}; +struct accept_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char anamelen_l_[PADL_(int *)]; int * anamelen; char anamelen_r_[PADR_(int *)]; +}; +struct getpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct getsockname_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct access_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct chflags_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fchflags_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sync_args { + register_t dummy; +}; +struct kill_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct getppid_args { + register_t dummy; +}; +struct dup_args { + char fd_l_[PADL_(u_int)]; u_int fd; char fd_r_[PADR_(u_int)]; +}; +struct pipe_args { + register_t dummy; +}; +struct getegid_args { + register_t dummy; +}; +struct profil_args { + char samples_l_[PADL_(caddr_t)]; caddr_t samples; char samples_r_[PADR_(caddr_t)]; + char size_l_[PADL_(size_t)]; size_t size; char size_r_[PADR_(size_t)]; + char offset_l_[PADL_(size_t)]; size_t offset; char offset_r_[PADR_(size_t)]; + char scale_l_[PADL_(u_int)]; u_int scale; char scale_r_[PADR_(u_int)]; +}; +struct ktrace_args { + char fname_l_[PADL_(const char *)]; const char * fname; char fname_r_[PADR_(const char *)]; + char ops_l_[PADL_(int)]; int ops; char ops_r_[PADR_(int)]; + char facs_l_[PADL_(int)]; int facs; char facs_r_[PADR_(int)]; + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; +}; +struct getgid_args { + register_t dummy; +}; +struct getlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; +}; +struct setlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; +}; +struct acct_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct osigpending_args { + register_t dummy; +}; +struct sigaltstack_args { + char ss_l_[PADL_(stack_t *)]; stack_t * ss; char ss_r_[PADR_(stack_t *)]; + char oss_l_[PADL_(stack_t *)]; stack_t * oss; char oss_r_[PADR_(stack_t *)]; +}; +struct ioctl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char com_l_[PADL_(u_long)]; u_long com; char com_r_[PADR_(u_long)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct reboot_args { + char opt_l_[PADL_(int)]; int opt; char opt_r_[PADR_(int)]; +}; +struct revoke_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct symlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct readlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(int)]; int count; char count_r_[PADR_(int)]; +}; +struct execve_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char argv_l_[PADL_(char **)]; char ** argv; char argv_r_[PADR_(char **)]; + char envv_l_[PADL_(char **)]; char ** envv; char envv_r_[PADR_(char **)]; +}; +struct umask_args { + char newmask_l_[PADL_(int)]; int newmask; char newmask_r_[PADR_(int)]; +}; +struct chroot_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct getpagesize_args { + register_t dummy; +}; +struct msync_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct vfork_args { + register_t dummy; +}; +struct sbrk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct sstk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct ovadvise_args { + char anom_l_[PADL_(int)]; int anom; char anom_r_[PADR_(int)]; +}; +struct munmap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct mprotect_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; +}; +struct madvise_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char behav_l_[PADL_(int)]; int behav; char behav_r_[PADR_(int)]; +}; +struct mincore_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char vec_l_[PADL_(char *)]; char * vec; char vec_r_[PADR_(char *)]; +}; +struct getgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct setgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct getpgrp_args { + register_t dummy; +}; +struct setpgid_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; +}; +struct setitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; + char oitv_l_[PADL_(struct itimerval *)]; struct itimerval * oitv; char oitv_r_[PADR_(struct itimerval *)]; +}; +struct owait_args { + register_t dummy; +}; +struct swapon_args { + char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; +}; +struct getitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; +}; +struct getdtablesize_args { + register_t dummy; +}; +struct dup2_args { + char from_l_[PADL_(u_int)]; u_int from; char from_r_[PADR_(u_int)]; + char to_l_[PADL_(u_int)]; u_int to; char to_r_[PADR_(u_int)]; +}; +struct fcntl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(long)]; long arg; char arg_r_[PADR_(long)]; +}; +struct select_args { + char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)]; + char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)]; + char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)]; + char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)]; + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; +}; +struct fsync_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct setpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char prio_l_[PADL_(int)]; int prio; char prio_r_[PADR_(int)]; +}; +struct socket_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; +}; +struct connect_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct getpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; +}; +struct osigreturn_args { + char sigcntxp_l_[PADL_(struct osigcontext *)]; struct osigcontext * sigcntxp; char sigcntxp_r_[PADR_(struct osigcontext *)]; +}; +struct bind_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct setsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char valsize_l_[PADL_(int)]; int valsize; char valsize_r_[PADR_(int)]; +}; +struct listen_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char backlog_l_[PADL_(int)]; int backlog; char backlog_r_[PADR_(int)]; +}; +struct gettimeofday_args { + char tp_l_[PADL_(struct timeval *)]; struct timeval * tp; char tp_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct getrusage_args { + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct getsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char avalsize_l_[PADL_(int *)]; int * avalsize; char avalsize_r_[PADR_(int *)]; +}; +struct readv_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct writev_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct settimeofday_args { + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct fchown_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct fchmod_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct setreuid_args { + char ruid_l_[PADL_(int)]; int ruid; char ruid_r_[PADR_(int)]; + char euid_l_[PADL_(int)]; int euid; char euid_r_[PADR_(int)]; +}; +struct setregid_args { + char rgid_l_[PADL_(int)]; int rgid; char rgid_r_[PADR_(int)]; + char egid_l_[PADL_(int)]; int egid; char egid_r_[PADR_(int)]; +}; +struct rename_args { + char from_l_[PADL_(char *)]; char * from; char from_r_[PADR_(char *)]; + char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)]; +}; +struct flock_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct mkfifo_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct sendto_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char to_l_[PADL_(caddr_t)]; caddr_t to; char to_r_[PADR_(caddr_t)]; + char tolen_l_[PADL_(int)]; int tolen; char tolen_r_[PADR_(int)]; +}; +struct shutdown_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct socketpair_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; + char rsv_l_[PADL_(int *)]; int * rsv; char rsv_r_[PADR_(int *)]; +}; +struct mkdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct rmdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct utimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct adjtime_args { + char delta_l_[PADL_(struct timeval *)]; struct timeval * delta; char delta_r_[PADR_(struct timeval *)]; + char olddelta_l_[PADL_(struct timeval *)]; struct timeval * olddelta; char olddelta_r_[PADR_(struct timeval *)]; +}; +struct ogethostid_args { + register_t dummy; +}; +struct setsid_args { + register_t dummy; +}; +struct quotactl_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char arg_l_[PADL_(caddr_t)]; caddr_t arg; char arg_r_[PADR_(caddr_t)]; +}; +struct oquota_args { + register_t dummy; +}; +struct nfssvc_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct statfs_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fstatfs_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct getfh_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char fhp_l_[PADL_(struct fhandle *)]; struct fhandle * fhp; char fhp_r_[PADR_(struct fhandle *)]; +}; +struct getdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct setdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct uname_args { + char name_l_[PADL_(struct utsname *)]; struct utsname * name; char name_r_[PADR_(struct utsname *)]; +}; +struct sysarch_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char parms_l_[PADL_(char *)]; char * parms; char parms_r_[PADR_(char *)]; +}; +struct rtprio_args { + char function_l_[PADL_(int)]; int function; char function_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char rtp_l_[PADL_(struct rtprio *)]; struct rtprio * rtp; char rtp_r_[PADR_(struct rtprio *)]; +}; +struct semsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; +}; +struct msgsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; + char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)]; +}; +struct shmsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; +}; +struct pread_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct pwrite_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct ntp_adjtime_args { + char tp_l_[PADL_(struct timex *)]; struct timex * tp; char tp_r_[PADR_(struct timex *)]; +}; +struct setgid_args { + char gid_l_[PADL_(gid_t)]; gid_t gid; char gid_r_[PADR_(gid_t)]; +}; +struct setegid_args { + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; +}; +struct seteuid_args { + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; +}; +struct stat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct fstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct lstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct pathconf_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct fpathconf_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct __getrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct __setrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct getdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +struct mmap_args { + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char pos_l_[PADL_(off_t)]; off_t pos; char pos_r_[PADR_(off_t)]; +}; +struct lseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct truncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct ftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct sysctl_args { + char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; + char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)]; + char oldlenp_l_[PADL_(size_t *)]; size_t * oldlenp; char oldlenp_r_[PADR_(size_t *)]; + char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)]; + char newlen_l_[PADL_(size_t)]; size_t newlen; char newlen_r_[PADR_(size_t)]; +}; +struct mlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct munlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct undelete_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct futimes_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct getpgid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct __semctl_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(union semun *)]; union semun * arg; char arg_r_[PADR_(union semun *)]; +}; +struct semget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char nsems_l_[PADL_(int)]; int nsems; char nsems_r_[PADR_(int)]; + char semflg_l_[PADL_(int)]; int semflg; char semflg_r_[PADR_(int)]; +}; +struct semop_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char sops_l_[PADL_(struct sembuf *)]; struct sembuf * sops; char sops_r_[PADR_(struct sembuf *)]; + char nsops_l_[PADL_(u_int)]; u_int nsops; char nsops_r_[PADR_(u_int)]; +}; +struct msgctl_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct msqid_ds *)]; struct msqid_ds * buf; char buf_r_[PADR_(struct msqid_ds *)]; +}; +struct msgget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgsnd_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgrcv_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct shmat_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct shmctl_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct shmid_ds *)]; struct shmid_ds * buf; char buf_r_[PADR_(struct shmid_ds *)]; +}; +struct shmdt_args { + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; +}; +struct shmget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char size_l_[PADL_(int)]; int size; char size_r_[PADR_(int)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct clock_gettime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct clock_settime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(const struct timespec *)]; const struct timespec * tp; char tp_r_[PADR_(const struct timespec *)]; +}; +struct clock_getres_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct nanosleep_args { + char rqtp_l_[PADL_(const struct timespec *)]; const struct timespec * rqtp; char rqtp_r_[PADR_(const struct timespec *)]; + char rmtp_l_[PADL_(struct timespec *)]; struct timespec * rmtp; char rmtp_r_[PADR_(struct timespec *)]; +}; +struct minherit_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char inherit_l_[PADL_(int)]; int inherit; char inherit_r_[PADR_(int)]; +}; +struct rfork_args { + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct openbsd_poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct issetugid_args { + register_t dummy; +}; +struct lchown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct getdents_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(size_t)]; size_t count; char count_r_[PADR_(size_t)]; +}; +struct lchmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(mode_t)]; mode_t mode; char mode_r_[PADR_(mode_t)]; +}; +struct lutimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct nstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct nfstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct nstat *)]; struct nstat * sb; char sb_r_[PADR_(struct nstat *)]; +}; +struct nlstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct fhstatfs_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fhopen_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fhstat_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct modnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modstat_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; + char stat_l_[PADL_(struct module_stat *)]; struct module_stat * stat; char stat_r_[PADR_(struct module_stat *)]; +}; +struct modfnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modfind_args { + char name_l_[PADL_(const char *)]; const char * name; char name_r_[PADR_(const char *)]; +}; +struct kldload_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldunload_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldfind_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldnext_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldstat_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char stat_l_[PADL_(struct kld_file_stat *)]; struct kld_file_stat * stat; char stat_r_[PADR_(struct kld_file_stat *)]; +}; +struct kldfirstmod_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct getsid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct setresuid_args { + char ruid_l_[PADL_(uid_t)]; uid_t ruid; char ruid_r_[PADR_(uid_t)]; + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; + char suid_l_[PADL_(uid_t)]; uid_t suid; char suid_r_[PADR_(uid_t)]; +}; +struct setresgid_args { + char rgid_l_[PADL_(gid_t)]; gid_t rgid; char rgid_r_[PADR_(gid_t)]; + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; + char sgid_l_[PADL_(gid_t)]; gid_t sgid; char sgid_r_[PADR_(gid_t)]; +}; +struct aio_return_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_suspend_args { + char aiocbp_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * aiocbp; char aiocbp_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct aio_cancel_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_error_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_read_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_write_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct lio_listio_args { + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char acb_list_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * acb_list; char acb_list_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char sig_l_[PADL_(struct sigevent *)]; struct sigevent * sig; char sig_r_[PADR_(struct sigevent *)]; +}; +struct yield_args { + register_t dummy; +}; +struct mlockall_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct munlockall_args { + register_t dummy; +}; +struct __getcwd_args { + char buf_l_[PADL_(u_char *)]; u_char * buf; char buf_r_[PADR_(u_char *)]; + char buflen_l_[PADL_(u_int)]; u_int buflen; char buflen_r_[PADR_(u_int)]; +}; +struct sched_setparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(struct sched_param *)]; struct sched_param * param; char param_r_[PADR_(struct sched_param *)]; +}; +struct sched_setscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct sched_yield_args { + register_t dummy; +}; +struct sched_get_priority_max_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_get_priority_min_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_rr_get_interval_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char interval_l_[PADL_(struct timespec *)]; struct timespec * interval; char interval_r_[PADR_(struct timespec *)]; +}; +struct utrace_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct sendfile_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; + char hdtr_l_[PADL_(struct sf_hdtr *)]; struct sf_hdtr * hdtr; char hdtr_r_[PADR_(struct sf_hdtr *)]; + char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kldsym_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; +}; +struct jail_args { + char jail_l_[PADL_(struct jail *)]; struct jail * jail; char jail_r_[PADR_(struct jail *)]; +}; +struct sigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)]; + char oset_l_[PADL_(sigset_t *)]; sigset_t * oset; char oset_r_[PADR_(sigset_t *)]; +}; +struct sigsuspend_args { + char sigmask_l_[PADL_(const sigset_t *)]; const sigset_t * sigmask; char sigmask_r_[PADR_(const sigset_t *)]; +}; +struct sigaction_args { + char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)]; + char act_l_[PADL_(const struct sigaction *)]; const struct sigaction * act; char act_r_[PADR_(const struct sigaction *)]; + char oact_l_[PADL_(struct sigaction *)]; struct sigaction * oact; char oact_r_[PADR_(struct sigaction *)]; +}; +struct sigpending_args { + char set_l_[PADL_(sigset_t *)]; sigset_t * set; char set_r_[PADR_(sigset_t *)]; +}; +struct sigreturn_args { + char sigcntxp_l_[PADL_(const struct __ucontext *)]; const struct __ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct __ucontext *)]; +}; +struct __acl_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_get_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_delete_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_aclcheck_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_aclcheck_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct extattrctl_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct extattr_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct aio_waitcomplete_args { + char aiocbp_l_[PADL_(struct aiocb **)]; struct aiocb ** aiocbp; char aiocbp_r_[PADR_(struct aiocb **)]; + char timeout_l_[PADL_(struct timespec *)]; struct timespec * timeout; char timeout_r_[PADR_(struct timespec *)]; +}; +struct getresuid_args { + char ruid_l_[PADL_(uid_t *)]; uid_t * ruid; char ruid_r_[PADR_(uid_t *)]; + char euid_l_[PADL_(uid_t *)]; uid_t * euid; char euid_r_[PADR_(uid_t *)]; + char suid_l_[PADL_(uid_t *)]; uid_t * suid; char suid_r_[PADR_(uid_t *)]; +}; +struct getresgid_args { + char rgid_l_[PADL_(gid_t *)]; gid_t * rgid; char rgid_r_[PADR_(gid_t *)]; + char egid_l_[PADL_(gid_t *)]; gid_t * egid; char egid_r_[PADR_(gid_t *)]; + char sgid_l_[PADL_(gid_t *)]; gid_t * sgid; char sgid_r_[PADR_(gid_t *)]; +}; +struct kqueue_args { + register_t dummy; +}; +struct kevent_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char changelist_l_[PADL_(const struct kevent *)]; const struct kevent * changelist; char changelist_r_[PADR_(const struct kevent *)]; + char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)]; + char eventlist_l_[PADL_(struct kevent *)]; struct kevent * eventlist; char eventlist_r_[PADR_(struct kevent *)]; + char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct __cap_get_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct extattr_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct __setugid_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; +}; +struct nfsclnt_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct eaccess_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct nmount_args { + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kse_exit_args { + register_t dummy; +}; +struct kse_wakeup_args { + register_t dummy; +}; +struct kse_new_args { + char mbx_l_[PADL_(struct kse_mailbox *)]; struct kse_mailbox * mbx; char mbx_r_[PADR_(struct kse_mailbox *)]; + char new_grp_flag_l_[PADL_(int)]; int new_grp_flag; char new_grp_flag_r_[PADR_(int)]; +}; +struct thread_wakeup_args { + char tmbx_l_[PADL_(struct thread_mailbox *)]; struct thread_mailbox * tmbx; char tmbx_r_[PADR_(struct thread_mailbox *)]; +}; +struct kse_yield_args { + register_t dummy; +}; +int nosys(struct thread *, struct nosys_args *); +void sys_exit(struct thread *, struct sys_exit_args *); +int fork(struct thread *, struct fork_args *); +int read(struct thread *, struct read_args *); +int write(struct thread *, struct write_args *); +int open(struct thread *, struct open_args *); +int close(struct thread *, struct close_args *); +int wait4(struct thread *, struct wait_args *); +int link(struct thread *, struct link_args *); +int unlink(struct thread *, struct unlink_args *); +int chdir(struct thread *, struct chdir_args *); +int fchdir(struct thread *, struct fchdir_args *); +int mknod(struct thread *, struct mknod_args *); +int chmod(struct thread *, struct chmod_args *); +int chown(struct thread *, struct chown_args *); +int obreak(struct thread *, struct obreak_args *); +int getfsstat(struct thread *, struct getfsstat_args *); +int getpid(struct thread *, struct getpid_args *); +int mount(struct thread *, struct mount_args *); +int unmount(struct thread *, struct unmount_args *); +int setuid(struct thread *, struct setuid_args *); +int getuid(struct thread *, struct getuid_args *); +int geteuid(struct thread *, struct geteuid_args *); +int ptrace(struct thread *, struct ptrace_args *); +int recvmsg(struct thread *, struct recvmsg_args *); +int sendmsg(struct thread *, struct sendmsg_args *); +int recvfrom(struct thread *, struct recvfrom_args *); +int accept(struct thread *, struct accept_args *); +int getpeername(struct thread *, struct getpeername_args *); +int getsockname(struct thread *, struct getsockname_args *); +int access(struct thread *, struct access_args *); +int chflags(struct thread *, struct chflags_args *); +int fchflags(struct thread *, struct fchflags_args *); +int sync(struct thread *, struct sync_args *); +int kill(struct thread *, struct kill_args *); +int getppid(struct thread *, struct getppid_args *); +int dup(struct thread *, struct dup_args *); +int pipe(struct thread *, struct pipe_args *); +int getegid(struct thread *, struct getegid_args *); +int profil(struct thread *, struct profil_args *); +int ktrace(struct thread *, struct ktrace_args *); +int getgid(struct thread *, struct getgid_args *); +int getlogin(struct thread *, struct getlogin_args *); +int setlogin(struct thread *, struct setlogin_args *); +int acct(struct thread *, struct acct_args *); +int sigaltstack(struct thread *, struct sigaltstack_args *); +int ioctl(struct thread *, struct ioctl_args *); +int reboot(struct thread *, struct reboot_args *); +int revoke(struct thread *, struct revoke_args *); +int symlink(struct thread *, struct symlink_args *); +int readlink(struct thread *, struct readlink_args *); +int execve(struct thread *, struct execve_args *); +int umask(struct thread *, struct umask_args *); +int chroot(struct thread *, struct chroot_args *); +int msync(struct thread *, struct msync_args *); +int vfork(struct thread *, struct vfork_args *); +int sbrk(struct thread *, struct sbrk_args *); +int sstk(struct thread *, struct sstk_args *); +int ovadvise(struct thread *, struct ovadvise_args *); +int munmap(struct thread *, struct munmap_args *); +int mprotect(struct thread *, struct mprotect_args *); +int madvise(struct thread *, struct madvise_args *); +int mincore(struct thread *, struct mincore_args *); +int getgroups(struct thread *, struct getgroups_args *); +int setgroups(struct thread *, struct setgroups_args *); +int getpgrp(struct thread *, struct getpgrp_args *); +int setpgid(struct thread *, struct setpgid_args *); +int setitimer(struct thread *, struct setitimer_args *); +int swapon(struct thread *, struct swapon_args *); +int getitimer(struct thread *, struct getitimer_args *); +int getdtablesize(struct thread *, struct getdtablesize_args *); +int dup2(struct thread *, struct dup2_args *); +int fcntl(struct thread *, struct fcntl_args *); +int select(struct thread *, struct select_args *); +int fsync(struct thread *, struct fsync_args *); +int setpriority(struct thread *, struct setpriority_args *); +int socket(struct thread *, struct socket_args *); +int connect(struct thread *, struct connect_args *); +int getpriority(struct thread *, struct getpriority_args *); +int osigreturn(struct thread *, struct osigreturn_args *); +int bind(struct thread *, struct bind_args *); +int setsockopt(struct thread *, struct setsockopt_args *); +int listen(struct thread *, struct listen_args *); +int gettimeofday(struct thread *, struct gettimeofday_args *); +int getrusage(struct thread *, struct getrusage_args *); +int getsockopt(struct thread *, struct getsockopt_args *); +int readv(struct thread *, struct readv_args *); +int writev(struct thread *, struct writev_args *); +int settimeofday(struct thread *, struct settimeofday_args *); +int fchown(struct thread *, struct fchown_args *); +int fchmod(struct thread *, struct fchmod_args *); +int setreuid(struct thread *, struct setreuid_args *); +int setregid(struct thread *, struct setregid_args *); +int rename(struct thread *, struct rename_args *); +int flock(struct thread *, struct flock_args *); +int mkfifo(struct thread *, struct mkfifo_args *); +int sendto(struct thread *, struct sendto_args *); +int shutdown(struct thread *, struct shutdown_args *); +int socketpair(struct thread *, struct socketpair_args *); +int mkdir(struct thread *, struct mkdir_args *); +int rmdir(struct thread *, struct rmdir_args *); +int utimes(struct thread *, struct utimes_args *); +int adjtime(struct thread *, struct adjtime_args *); +int setsid(struct thread *, struct setsid_args *); +int quotactl(struct thread *, struct quotactl_args *); +int nfssvc(struct thread *, struct nfssvc_args *); +int statfs(struct thread *, struct statfs_args *); +int fstatfs(struct thread *, struct fstatfs_args *); +int getfh(struct thread *, struct getfh_args *); +int getdomainname(struct thread *, struct getdomainname_args *); +int setdomainname(struct thread *, struct setdomainname_args *); +int uname(struct thread *, struct uname_args *); +int sysarch(struct thread *, struct sysarch_args *); +int rtprio(struct thread *, struct rtprio_args *); +int semsys(struct thread *, struct semsys_args *); +int msgsys(struct thread *, struct msgsys_args *); +int shmsys(struct thread *, struct shmsys_args *); +int pread(struct thread *, struct pread_args *); +int pwrite(struct thread *, struct pwrite_args *); +int ntp_adjtime(struct thread *, struct ntp_adjtime_args *); +int setgid(struct thread *, struct setgid_args *); +int setegid(struct thread *, struct setegid_args *); +int seteuid(struct thread *, struct seteuid_args *); +int stat(struct thread *, struct stat_args *); +int fstat(struct thread *, struct fstat_args *); +int lstat(struct thread *, struct lstat_args *); +int pathconf(struct thread *, struct pathconf_args *); +int fpathconf(struct thread *, struct fpathconf_args *); +int getrlimit(struct thread *, struct __getrlimit_args *); +int setrlimit(struct thread *, struct __setrlimit_args *); +int getdirentries(struct thread *, struct getdirentries_args *); +int mmap(struct thread *, struct mmap_args *); +int lseek(struct thread *, struct lseek_args *); +int truncate(struct thread *, struct truncate_args *); +int ftruncate(struct thread *, struct ftruncate_args *); +int __sysctl(struct thread *, struct sysctl_args *); +int mlock(struct thread *, struct mlock_args *); +int munlock(struct thread *, struct munlock_args *); +int undelete(struct thread *, struct undelete_args *); +int futimes(struct thread *, struct futimes_args *); +int getpgid(struct thread *, struct getpgid_args *); +int poll(struct thread *, struct poll_args *); +int lkmnosys(struct thread *, struct nosys_args *); +int __semctl(struct thread *, struct __semctl_args *); +int semget(struct thread *, struct semget_args *); +int semop(struct thread *, struct semop_args *); +int msgctl(struct thread *, struct msgctl_args *); +int msgget(struct thread *, struct msgget_args *); +int msgsnd(struct thread *, struct msgsnd_args *); +int msgrcv(struct thread *, struct msgrcv_args *); +int shmat(struct thread *, struct shmat_args *); +int shmctl(struct thread *, struct shmctl_args *); +int shmdt(struct thread *, struct shmdt_args *); +int shmget(struct thread *, struct shmget_args *); +int clock_gettime(struct thread *, struct clock_gettime_args *); +int clock_settime(struct thread *, struct clock_settime_args *); +int clock_getres(struct thread *, struct clock_getres_args *); +int nanosleep(struct thread *, struct nanosleep_args *); +int minherit(struct thread *, struct minherit_args *); +int rfork(struct thread *, struct rfork_args *); +int openbsd_poll(struct thread *, struct openbsd_poll_args *); +int issetugid(struct thread *, struct issetugid_args *); +int lchown(struct thread *, struct lchown_args *); +int getdents(struct thread *, struct getdents_args *); +int lchmod(struct thread *, struct lchmod_args *); +int lutimes(struct thread *, struct lutimes_args *); +int nstat(struct thread *, struct nstat_args *); +int nfstat(struct thread *, struct nfstat_args *); +int nlstat(struct thread *, struct nlstat_args *); +int fhstatfs(struct thread *, struct fhstatfs_args *); +int fhopen(struct thread *, struct fhopen_args *); +int fhstat(struct thread *, struct fhstat_args *); +int modnext(struct thread *, struct modnext_args *); +int modstat(struct thread *, struct modstat_args *); +int modfnext(struct thread *, struct modfnext_args *); +int modfind(struct thread *, struct modfind_args *); +int kldload(struct thread *, struct kldload_args *); +int kldunload(struct thread *, struct kldunload_args *); +int kldfind(struct thread *, struct kldfind_args *); +int kldnext(struct thread *, struct kldnext_args *); +int kldstat(struct thread *, struct kldstat_args *); +int kldfirstmod(struct thread *, struct kldfirstmod_args *); +int getsid(struct thread *, struct getsid_args *); +int setresuid(struct thread *, struct setresuid_args *); +int setresgid(struct thread *, struct setresgid_args *); +int aio_return(struct thread *, struct aio_return_args *); +int aio_suspend(struct thread *, struct aio_suspend_args *); +int aio_cancel(struct thread *, struct aio_cancel_args *); +int aio_error(struct thread *, struct aio_error_args *); +int aio_read(struct thread *, struct aio_read_args *); +int aio_write(struct thread *, struct aio_write_args *); +int lio_listio(struct thread *, struct lio_listio_args *); +int yield(struct thread *, struct yield_args *); +int mlockall(struct thread *, struct mlockall_args *); +int munlockall(struct thread *, struct munlockall_args *); +int __getcwd(struct thread *, struct __getcwd_args *); +int sched_setparam(struct thread *, struct sched_setparam_args *); +int sched_getparam(struct thread *, struct sched_getparam_args *); +int sched_setscheduler(struct thread *, struct sched_setscheduler_args *); +int sched_getscheduler(struct thread *, struct sched_getscheduler_args *); +int sched_yield(struct thread *, struct sched_yield_args *); +int sched_get_priority_max(struct thread *, struct sched_get_priority_max_args *); +int sched_get_priority_min(struct thread *, struct sched_get_priority_min_args *); +int sched_rr_get_interval(struct thread *, struct sched_rr_get_interval_args *); +int utrace(struct thread *, struct utrace_args *); +int sendfile(struct thread *, struct sendfile_args *); +int kldsym(struct thread *, struct kldsym_args *); +int jail(struct thread *, struct jail_args *); +int sigprocmask(struct thread *, struct sigprocmask_args *); +int sigsuspend(struct thread *, struct sigsuspend_args *); +int sigaction(struct thread *, struct sigaction_args *); +int sigpending(struct thread *, struct sigpending_args *); +int sigreturn(struct thread *, struct sigreturn_args *); +int __acl_get_file(struct thread *, struct __acl_get_file_args *); +int __acl_set_file(struct thread *, struct __acl_set_file_args *); +int __acl_get_fd(struct thread *, struct __acl_get_fd_args *); +int __acl_set_fd(struct thread *, struct __acl_set_fd_args *); +int __acl_delete_file(struct thread *, struct __acl_delete_file_args *); +int __acl_delete_fd(struct thread *, struct __acl_delete_fd_args *); +int __acl_aclcheck_file(struct thread *, struct __acl_aclcheck_file_args *); +int __acl_aclcheck_fd(struct thread *, struct __acl_aclcheck_fd_args *); +int extattrctl(struct thread *, struct extattrctl_args *); +int extattr_set_file(struct thread *, struct extattr_set_file_args *); +int extattr_get_file(struct thread *, struct extattr_get_file_args *); +int extattr_delete_file(struct thread *, struct extattr_delete_file_args *); +int aio_waitcomplete(struct thread *, struct aio_waitcomplete_args *); +int getresuid(struct thread *, struct getresuid_args *); +int getresgid(struct thread *, struct getresgid_args *); +int kqueue(struct thread *, struct kqueue_args *); +int kevent(struct thread *, struct kevent_args *); +int __cap_get_proc(struct thread *, struct __cap_get_proc_args *); +int __cap_set_proc(struct thread *, struct __cap_set_proc_args *); +int __cap_get_fd(struct thread *, struct __cap_get_fd_args *); +int __cap_get_file(struct thread *, struct __cap_get_file_args *); +int __cap_set_fd(struct thread *, struct __cap_set_fd_args *); +int __cap_set_file(struct thread *, struct __cap_set_file_args *); +int lkmressys(struct thread *, struct nosys_args *); +int extattr_set_fd(struct thread *, struct extattr_set_fd_args *); +int extattr_get_fd(struct thread *, struct extattr_get_fd_args *); +int extattr_delete_fd(struct thread *, struct extattr_delete_fd_args *); +int __setugid(struct thread *, struct __setugid_args *); +int nfsclnt(struct thread *, struct nfsclnt_args *); +int eaccess(struct thread *, struct eaccess_args *); +int nmount(struct thread *, struct nmount_args *); +int kse_exit(struct thread *, struct kse_exit_args *); +int kse_wakeup(struct thread *, struct kse_wakeup_args *); +int kse_new(struct thread *, struct kse_new_args *); +int thread_wakeup(struct thread *, struct thread_wakeup_args *); +int kse_yield(struct thread *, struct kse_yield_args *); + +#ifdef COMPAT_43 + +struct ocreat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct olseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char offset_l_[PADL_(long)]; long offset; char offset_r_[PADR_(long)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct ostat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct olstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct osigaction_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsa_l_[PADL_(struct osigaction *)]; struct osigaction * nsa; char nsa_r_[PADR_(struct osigaction *)]; + char osa_l_[PADL_(struct osigaction *)]; struct osigaction * osa; char osa_r_[PADR_(struct osigaction *)]; +}; +struct osigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct ofstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct ostat *)]; struct ostat * sb; char sb_r_[PADR_(struct ostat *)]; +}; +struct getkerninfo_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char where_l_[PADL_(char *)]; char * where; char where_r_[PADR_(char *)]; + char size_l_[PADL_(size_t *)]; size_t * size; char size_r_[PADR_(size_t *)]; + char arg_l_[PADL_(int)]; int arg; char arg_r_[PADR_(int)]; +}; +struct ommap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pos_l_[PADL_(long)]; long pos; char pos_r_[PADR_(long)]; +}; +struct gethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct sethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct osend_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct orecv_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osigvec_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsv_l_[PADL_(struct sigvec *)]; struct sigvec * nsv; char nsv_r_[PADR_(struct sigvec *)]; + char osv_l_[PADL_(struct sigvec *)]; struct sigvec * osv; char osv_r_[PADR_(struct sigvec *)]; +}; +struct osigblock_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsetmask_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsuspend_args { + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct osigstack_args { + char nss_l_[PADL_(struct sigstack *)]; struct sigstack * nss; char nss_r_[PADR_(struct sigstack *)]; + char oss_l_[PADL_(struct sigstack *)]; struct sigstack * oss; char oss_r_[PADR_(struct sigstack *)]; +}; +struct orecvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct omsghdr *)]; struct omsghdr * msg; char msg_r_[PADR_(struct omsghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct otruncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct oftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct ogetpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct osethostid_args { + char hostid_l_[PADL_(long)]; long hostid; char hostid_r_[PADR_(long)]; +}; +struct ogetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct osetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct okillpg_args { + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct ogetdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +int ocreat(struct thread *, struct ocreat_args *); +int olseek(struct thread *, struct olseek_args *); +int ostat(struct thread *, struct ostat_args *); +int olstat(struct thread *, struct olstat_args *); +int osigaction(struct thread *, struct osigaction_args *); +int osigprocmask(struct thread *, struct osigprocmask_args *); +int osigpending(struct thread *, struct osigpending_args *); +int ofstat(struct thread *, struct ofstat_args *); +int ogetkerninfo(struct thread *, struct getkerninfo_args *); +int ogetpagesize(struct thread *, struct getpagesize_args *); +int ommap(struct thread *, struct ommap_args *); +int owait(struct thread *, struct owait_args *); +int ogethostname(struct thread *, struct gethostname_args *); +int osethostname(struct thread *, struct sethostname_args *); +int oaccept(struct thread *, struct accept_args *); +int osend(struct thread *, struct osend_args *); +int orecv(struct thread *, struct orecv_args *); +int osigvec(struct thread *, struct osigvec_args *); +int osigblock(struct thread *, struct osigblock_args *); +int osigsetmask(struct thread *, struct osigsetmask_args *); +int osigsuspend(struct thread *, struct osigsuspend_args *); +int osigstack(struct thread *, struct osigstack_args *); +int orecvmsg(struct thread *, struct orecvmsg_args *); +int osendmsg(struct thread *, struct osendmsg_args *); +int orecvfrom(struct thread *, struct recvfrom_args *); +int otruncate(struct thread *, struct otruncate_args *); +int oftruncate(struct thread *, struct oftruncate_args *); +int ogetpeername(struct thread *, struct ogetpeername_args *); +int ogethostid(struct thread *, struct ogethostid_args *); +int osethostid(struct thread *, struct osethostid_args *); +int ogetrlimit(struct thread *, struct ogetrlimit_args *); +int osetrlimit(struct thread *, struct osetrlimit_args *); +int okillpg(struct thread *, struct okillpg_args *); +int oquota(struct thread *, struct oquota_args *); +int ogetsockname(struct thread *, struct getsockname_args *); +int ogetdirentries(struct thread *, struct ogetdirentries_args *); + +#endif /* COMPAT_43 */ + +#undef PAD_ +#undef PADL_ +#undef PADR_ + +#endif /* !_IA32_SYSPROTO_H_ */ diff --git a/sys/amd64/ia32/ia32_syscall.h b/sys/amd64/ia32/ia32_syscall.h new file mode 100644 index 000000000000..c9e74cf2a0e1 --- /dev/null +++ b/sys/amd64/ia32/ia32_syscall.h @@ -0,0 +1,306 @@ +/* + * System call numbers. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#define IA32_SYS_syscall 0 +#define IA32_SYS_exit 1 +#define IA32_SYS_fork 2 +#define IA32_SYS_read 3 +#define IA32_SYS_write 4 +#define IA32_SYS_open 5 +#define IA32_SYS_close 6 +#define IA32_SYS_wait4 7 + /* 8 is old creat */ +#define IA32_SYS_link 9 +#define IA32_SYS_unlink 10 + /* 11 is obsolete execv */ +#define IA32_SYS_chdir 12 +#define IA32_SYS_fchdir 13 +#define IA32_SYS_mknod 14 +#define IA32_SYS_chmod 15 +#define IA32_SYS_chown 16 +#define IA32_SYS_break 17 +#define IA32_SYS_getfsstat 18 + /* 19 is old lseek */ +#define IA32_SYS_getpid 20 +#define IA32_SYS_mount 21 +#define IA32_SYS_unmount 22 +#define IA32_SYS_setuid 23 +#define IA32_SYS_getuid 24 +#define IA32_SYS_geteuid 25 +#define IA32_SYS_ptrace 26 +#define IA32_SYS_recvmsg 27 +#define IA32_SYS_sendmsg 28 +#define IA32_SYS_recvfrom 29 +#define IA32_SYS_accept 30 +#define IA32_SYS_getpeername 31 +#define IA32_SYS_getsockname 32 +#define IA32_SYS_access 33 +#define IA32_SYS_chflags 34 +#define IA32_SYS_fchflags 35 +#define IA32_SYS_sync 36 +#define IA32_SYS_kill 37 + /* 38 is old stat */ +#define IA32_SYS_getppid 39 + /* 40 is old lstat */ +#define IA32_SYS_dup 41 +#define IA32_SYS_pipe 42 +#define IA32_SYS_getegid 43 +#define IA32_SYS_profil 44 +#define IA32_SYS_ktrace 45 + /* 46 is old sigaction */ +#define IA32_SYS_getgid 47 + /* 48 is old sigprocmask */ +#define IA32_SYS_getlogin 49 +#define IA32_SYS_setlogin 50 +#define IA32_SYS_acct 51 + /* 52 is old sigpending */ +#define IA32_SYS_sigaltstack 53 +#define IA32_SYS_ioctl 54 +#define IA32_SYS_reboot 55 +#define IA32_SYS_revoke 56 +#define IA32_SYS_symlink 57 +#define IA32_SYS_readlink 58 +#define IA32_SYS_execve 59 +#define IA32_SYS_umask 60 +#define IA32_SYS_chroot 61 + /* 62 is old fstat */ + /* 63 is old getkerninfo */ + /* 64 is old getpagesize */ +#define IA32_SYS_msync 65 +#define IA32_SYS_vfork 66 + /* 67 is obsolete vread */ + /* 68 is obsolete vwrite */ +#define IA32_SYS_sbrk 69 +#define IA32_SYS_sstk 70 + /* 71 is old mmap */ +#define IA32_SYS_vadvise 72 +#define IA32_SYS_munmap 73 +#define IA32_SYS_mprotect 74 +#define IA32_SYS_madvise 75 + /* 76 is obsolete vhangup */ + /* 77 is obsolete vlimit */ +#define IA32_SYS_mincore 78 +#define IA32_SYS_getgroups 79 +#define IA32_SYS_setgroups 80 +#define IA32_SYS_getpgrp 81 +#define IA32_SYS_setpgid 82 +#define IA32_SYS_setitimer 83 + /* 84 is old wait */ +#define IA32_SYS_swapon 85 +#define IA32_SYS_getitimer 86 + /* 87 is old gethostname */ + /* 88 is old sethostname */ +#define IA32_SYS_getdtablesize 89 +#define IA32_SYS_dup2 90 +#define IA32_SYS_fcntl 92 +#define IA32_SYS_select 93 +#define IA32_SYS_fsync 95 +#define IA32_SYS_setpriority 96 +#define IA32_SYS_socket 97 +#define IA32_SYS_connect 98 + /* 99 is old accept */ +#define IA32_SYS_getpriority 100 + /* 101 is old send */ + /* 102 is old recv */ +#define IA32_SYS_osigreturn 103 +#define IA32_SYS_bind 104 +#define IA32_SYS_setsockopt 105 +#define IA32_SYS_listen 106 + /* 107 is obsolete vtimes */ + /* 108 is old sigvec */ + /* 109 is old sigblock */ + /* 110 is old sigsetmask */ + /* 111 is old sigsuspend */ + /* 112 is old sigstack */ + /* 113 is old recvmsg */ + /* 114 is old sendmsg */ + /* 115 is obsolete vtrace */ +#define IA32_SYS_gettimeofday 116 +#define IA32_SYS_getrusage 117 +#define IA32_SYS_getsockopt 118 +#define IA32_SYS_readv 120 +#define IA32_SYS_writev 121 +#define IA32_SYS_settimeofday 122 +#define IA32_SYS_fchown 123 +#define IA32_SYS_fchmod 124 + /* 125 is old recvfrom */ +#define IA32_SYS_setreuid 126 +#define IA32_SYS_setregid 127 +#define IA32_SYS_rename 128 + /* 129 is old truncate */ + /* 130 is old ftruncate */ +#define IA32_SYS_flock 131 +#define IA32_SYS_mkfifo 132 +#define IA32_SYS_sendto 133 +#define IA32_SYS_shutdown 134 +#define IA32_SYS_socketpair 135 +#define IA32_SYS_mkdir 136 +#define IA32_SYS_rmdir 137 +#define IA32_SYS_utimes 138 + /* 139 is obsolete 4.2 sigreturn */ +#define IA32_SYS_adjtime 140 + /* 141 is old getpeername */ + /* 142 is old gethostid */ + /* 143 is old sethostid */ + /* 144 is old getrlimit */ + /* 145 is old setrlimit */ + /* 146 is old killpg */ +#define IA32_SYS_setsid 147 +#define IA32_SYS_quotactl 148 + /* 149 is old quota */ + /* 150 is old getsockname */ +#define IA32_SYS_nfssvc 155 + /* 156 is old getdirentries */ +#define IA32_SYS_statfs 157 +#define IA32_SYS_fstatfs 158 +#define IA32_SYS_getfh 161 +#define IA32_SYS_getdomainname 162 +#define IA32_SYS_setdomainname 163 +#define IA32_SYS_uname 164 +#define IA32_SYS_sysarch 165 +#define IA32_SYS_rtprio 166 +#define IA32_SYS_semsys 169 +#define IA32_SYS_msgsys 170 +#define IA32_SYS_shmsys 171 +#define IA32_SYS_pread 173 +#define IA32_SYS_pwrite 174 +#define IA32_SYS_ntp_adjtime 176 +#define IA32_SYS_setgid 181 +#define IA32_SYS_setegid 182 +#define IA32_SYS_seteuid 183 +#define IA32_SYS_stat 188 +#define IA32_SYS_fstat 189 +#define IA32_SYS_lstat 190 +#define IA32_SYS_pathconf 191 +#define IA32_SYS_fpathconf 192 +#define IA32_SYS_getrlimit 194 +#define IA32_SYS_setrlimit 195 +#define IA32_SYS_getdirentries 196 +#define IA32_SYS_mmap 197 +#define IA32_SYS___syscall 198 +#define IA32_SYS_lseek 199 +#define IA32_SYS_truncate 200 +#define IA32_SYS_ftruncate 201 +#define IA32_SYS___sysctl 202 +#define IA32_SYS_mlock 203 +#define IA32_SYS_munlock 204 +#define IA32_SYS_undelete 205 +#define IA32_SYS_futimes 206 +#define IA32_SYS_getpgid 207 +#define IA32_SYS_poll 209 +#define IA32_SYS___semctl 220 +#define IA32_SYS_semget 221 +#define IA32_SYS_semop 222 +#define IA32_SYS_msgctl 224 +#define IA32_SYS_msgget 225 +#define IA32_SYS_msgsnd 226 +#define IA32_SYS_msgrcv 227 +#define IA32_SYS_shmat 228 +#define IA32_SYS_shmctl 229 +#define IA32_SYS_shmdt 230 +#define IA32_SYS_shmget 231 +#define IA32_SYS_clock_gettime 232 +#define IA32_SYS_clock_settime 233 +#define IA32_SYS_clock_getres 234 +#define IA32_SYS_nanosleep 240 +#define IA32_SYS_minherit 250 +#define IA32_SYS_rfork 251 +#define IA32_SYS_openbsd_poll 252 +#define IA32_SYS_issetugid 253 +#define IA32_SYS_lchown 254 +#define IA32_SYS_getdents 272 +#define IA32_SYS_lchmod 274 +#define IA32_SYS_netbsd_lchown 275 +#define IA32_SYS_lutimes 276 +#define IA32_SYS_netbsd_msync 277 +#define IA32_SYS_nstat 278 +#define IA32_SYS_nfstat 279 +#define IA32_SYS_nlstat 280 +#define IA32_SYS_fhstatfs 297 +#define IA32_SYS_fhopen 298 +#define IA32_SYS_fhstat 299 +#define IA32_SYS_modnext 300 +#define IA32_SYS_modstat 301 +#define IA32_SYS_modfnext 302 +#define IA32_SYS_modfind 303 +#define IA32_SYS_kldload 304 +#define IA32_SYS_kldunload 305 +#define IA32_SYS_kldfind 306 +#define IA32_SYS_kldnext 307 +#define IA32_SYS_kldstat 308 +#define IA32_SYS_kldfirstmod 309 +#define IA32_SYS_getsid 310 +#define IA32_SYS_setresuid 311 +#define IA32_SYS_setresgid 312 + /* 313 is obsolete signanosleep */ +#define IA32_SYS_aio_return 314 +#define IA32_SYS_aio_suspend 315 +#define IA32_SYS_aio_cancel 316 +#define IA32_SYS_aio_error 317 +#define IA32_SYS_aio_read 318 +#define IA32_SYS_aio_write 319 +#define IA32_SYS_lio_listio 320 +#define IA32_SYS_yield 321 + /* 322 is obsolete thr_sleep */ + /* 323 is obsolete thr_wakeup */ +#define IA32_SYS_mlockall 324 +#define IA32_SYS_munlockall 325 +#define IA32_SYS___getcwd 326 +#define IA32_SYS_sched_setparam 327 +#define IA32_SYS_sched_getparam 328 +#define IA32_SYS_sched_setscheduler 329 +#define IA32_SYS_sched_getscheduler 330 +#define IA32_SYS_sched_yield 331 +#define IA32_SYS_sched_get_priority_max 332 +#define IA32_SYS_sched_get_priority_min 333 +#define IA32_SYS_sched_rr_get_interval 334 +#define IA32_SYS_utrace 335 +#define IA32_SYS_sendfile 336 +#define IA32_SYS_kldsym 337 +#define IA32_SYS_jail 338 +#define IA32_SYS_sigprocmask 340 +#define IA32_SYS_sigsuspend 341 +#define IA32_SYS_sigaction 342 +#define IA32_SYS_sigpending 343 +#define IA32_SYS_sigreturn 344 +#define IA32_SYS___acl_get_file 347 +#define IA32_SYS___acl_set_file 348 +#define IA32_SYS___acl_get_fd 349 +#define IA32_SYS___acl_set_fd 350 +#define IA32_SYS___acl_delete_file 351 +#define IA32_SYS___acl_delete_fd 352 +#define IA32_SYS___acl_aclcheck_file 353 +#define IA32_SYS___acl_aclcheck_fd 354 +#define IA32_SYS_extattrctl 355 +#define IA32_SYS_extattr_set_file 356 +#define IA32_SYS_extattr_get_file 357 +#define IA32_SYS_extattr_delete_file 358 +#define IA32_SYS_aio_waitcomplete 359 +#define IA32_SYS_getresuid 360 +#define IA32_SYS_getresgid 361 +#define IA32_SYS_kqueue 362 +#define IA32_SYS_kevent 363 +#define IA32_SYS___cap_get_proc 364 +#define IA32_SYS___cap_set_proc 365 +#define IA32_SYS___cap_get_fd 366 +#define IA32_SYS___cap_get_file 367 +#define IA32_SYS___cap_set_fd 368 +#define IA32_SYS___cap_set_file 369 +#define IA32_SYS_extattr_set_fd 371 +#define IA32_SYS_extattr_get_fd 372 +#define IA32_SYS_extattr_delete_fd 373 +#define IA32_SYS___setugid 374 +#define IA32_SYS_nfsclnt 375 +#define IA32_SYS_eaccess 376 +#define IA32_SYS_nmount 378 +#define IA32_SYS_kse_exit 379 +#define IA32_SYS_kse_wakeup 380 +#define IA32_SYS_kse_new 381 +#define IA32_SYS_thread_wakeup 382 +#define IA32_SYS_kse_yield 383 +#define IA32_SYS_MAXSYSCALL 390 diff --git a/sys/amd64/ia32/ia32_sysent.c b/sys/amd64/ia32/ia32_sysent.c new file mode 100644 index 000000000000..fa7913508c90 --- /dev/null +++ b/sys/amd64/ia32/ia32_sysent.c @@ -0,0 +1,415 @@ +/* + * System call switch table. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#include "opt_compat.h" + +#include +#include +#include + +#define AS(name) (sizeof(struct name) / sizeof(register_t)) + +#ifdef COMPAT_43 +#define compat(n, name) n, (sy_call_t *)__CONCAT(o,name) +#else +#define compat(n, name) 0, (sy_call_t *)nosys +#endif + +/* The casts are bogus but will do for now. */ +struct sysent ia32_sysent[] = { + { 0, (sy_call_t *)nosys }, /* 0 = syscall */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { AS(open_args), (sy_call_t *)open }, /* 5 = open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(wait_args), (sy_call_t *)wait4 }, /* 7 = wait4 */ + { compat(AS(ocreat_args),creat) }, /* 8 = old creat */ + { AS(link_args), (sy_call_t *)link }, /* 9 = link */ + { AS(unlink_args), (sy_call_t *)unlink }, /* 10 = unlink */ + { 0, (sy_call_t *)nosys }, /* 11 = obsolete execv */ + { AS(chdir_args), (sy_call_t *)chdir }, /* 12 = chdir */ + { AS(fchdir_args), (sy_call_t *)fchdir }, /* 13 = fchdir */ + { AS(mknod_args), (sy_call_t *)mknod }, /* 14 = mknod */ + { AS(chmod_args), (sy_call_t *)chmod }, /* 15 = chmod */ + { AS(chown_args), (sy_call_t *)chown }, /* 16 = chown */ + { SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak }, /* 17 = break */ + { AS(getfsstat_args), (sy_call_t *)getfsstat }, /* 18 = getfsstat */ + { compat(AS(olseek_args),lseek) }, /* 19 = old lseek */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ + { AS(mount_args), (sy_call_t *)mount }, /* 21 = mount */ + { AS(unmount_args), (sy_call_t *)unmount }, /* 22 = unmount */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | 0, (sy_call_t *)geteuid }, /* 25 = geteuid */ + { AS(ptrace_args), (sy_call_t *)ptrace }, /* 26 = ptrace */ + { SYF_MPSAFE | AS(recvmsg_args), (sy_call_t *)recvmsg }, /* 27 = recvmsg */ + { SYF_MPSAFE | AS(sendmsg_args), (sy_call_t *)sendmsg }, /* 28 = sendmsg */ + { SYF_MPSAFE | AS(recvfrom_args), (sy_call_t *)recvfrom }, /* 29 = recvfrom */ + { SYF_MPSAFE | AS(accept_args), (sy_call_t *)accept }, /* 30 = accept */ + { SYF_MPSAFE | AS(getpeername_args), (sy_call_t *)getpeername }, /* 31 = getpeername */ + { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)getsockname }, /* 32 = getsockname */ + { AS(access_args), (sy_call_t *)access }, /* 33 = access */ + { AS(chflags_args), (sy_call_t *)chflags }, /* 34 = chflags */ + { AS(fchflags_args), (sy_call_t *)fchflags }, /* 35 = fchflags */ + { 0, (sy_call_t *)sync }, /* 36 = sync */ + { SYF_MPSAFE | AS(kill_args), (sy_call_t *)kill }, /* 37 = kill */ + { compat(AS(ostat_args),stat) }, /* 38 = old stat */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid }, /* 39 = getppid */ + { compat(AS(olstat_args),lstat) }, /* 40 = old lstat */ + { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)getegid }, /* 43 = getegid */ + { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil }, /* 44 = profil */ + { AS(ktrace_args), (sy_call_t *)ktrace }, /* 45 = ktrace */ + { compat(SYF_MPSAFE | AS(osigaction_args),sigaction) }, /* 46 = old sigaction */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { compat(SYF_MPSAFE | AS(osigprocmask_args),sigprocmask) }, /* 48 = old sigprocmask */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ + { compat(SYF_MPSAFE | 0,sigpending) }, /* 52 = old sigpending */ + { SYF_MPSAFE | AS(sigaltstack_args), (sy_call_t *)sigaltstack }, /* 53 = sigaltstack */ + { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl }, /* 54 = ioctl */ + { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot }, /* 55 = reboot */ + { AS(revoke_args), (sy_call_t *)revoke }, /* 56 = revoke */ + { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ + { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ + { SYF_MPSAFE | AS(execve_args), (sy_call_t *)execve }, /* 59 = execve */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ + { compat(SYF_MPSAFE | AS(ofstat_args),fstat) }, /* 62 = old fstat */ + { compat(SYF_MPSAFE | AS(getkerninfo_args),getkerninfo) }, /* 63 = old getkerninfo */ + { compat(SYF_MPSAFE | 0,getpagesize) }, /* 64 = old getpagesize */ + { AS(msync_args), (sy_call_t *)msync }, /* 65 = msync */ + { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ + { 0, (sy_call_t *)nosys }, /* 67 = obsolete vread */ + { 0, (sy_call_t *)nosys }, /* 68 = obsolete vwrite */ + { SYF_MPSAFE | AS(sbrk_args), (sy_call_t *)sbrk }, /* 69 = sbrk */ + { SYF_MPSAFE | AS(sstk_args), (sy_call_t *)sstk }, /* 70 = sstk */ + { compat(SYF_MPSAFE | AS(ommap_args),mmap) }, /* 71 = old mmap */ + { SYF_MPSAFE | AS(ovadvise_args), (sy_call_t *)ovadvise }, /* 72 = vadvise */ + { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap }, /* 73 = munmap */ + { SYF_MPSAFE | AS(mprotect_args), (sy_call_t *)mprotect }, /* 74 = mprotect */ + { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise }, /* 75 = madvise */ + { 0, (sy_call_t *)nosys }, /* 76 = obsolete vhangup */ + { 0, (sy_call_t *)nosys }, /* 77 = obsolete vlimit */ + { SYF_MPSAFE | AS(mincore_args), (sy_call_t *)mincore }, /* 78 = mincore */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 81 = getpgrp */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setitimer_args), (sy_call_t *)setitimer }, /* 83 = setitimer */ + { compat(SYF_MPSAFE | 0,wait) }, /* 84 = old wait */ + { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon }, /* 85 = swapon */ + { SYF_MPSAFE | AS(getitimer_args), (sy_call_t *)getitimer }, /* 86 = getitimer */ + { compat(SYF_MPSAFE | AS(gethostname_args),gethostname) }, /* 87 = old gethostname */ + { compat(SYF_MPSAFE | AS(sethostname_args),sethostname) }, /* 88 = old sethostname */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { 0, (sy_call_t *)nosys }, /* 91 = getdopt */ + { SYF_MPSAFE | AS(fcntl_args), (sy_call_t *)fcntl }, /* 92 = fcntl */ + { SYF_MPSAFE | AS(select_args), (sy_call_t *)select }, /* 93 = select */ + { 0, (sy_call_t *)nosys }, /* 94 = setdopt */ + { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(socket_args), (sy_call_t *)socket }, /* 97 = socket */ + { SYF_MPSAFE | AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ + { compat(SYF_MPSAFE | AS(accept_args),accept) }, /* 99 = old accept */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { compat(SYF_MPSAFE | AS(osend_args),send) }, /* 101 = old send */ + { compat(SYF_MPSAFE | AS(orecv_args),recv) }, /* 102 = old recv */ + { AS(osigreturn_args), (sy_call_t *)osigreturn }, /* 103 = osigreturn */ + { SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ + { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ + { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ + { 0, (sy_call_t *)nosys }, /* 107 = obsolete vtimes */ + { compat(SYF_MPSAFE | AS(osigvec_args),sigvec) }, /* 108 = old sigvec */ + { compat(SYF_MPSAFE | AS(osigblock_args),sigblock) }, /* 109 = old sigblock */ + { compat(SYF_MPSAFE | AS(osigsetmask_args),sigsetmask) }, /* 110 = old sigsetmask */ + { compat(SYF_MPSAFE | AS(osigsuspend_args),sigsuspend) }, /* 111 = old sigsuspend */ + { compat(SYF_MPSAFE | AS(osigstack_args),sigstack) }, /* 112 = old sigstack */ + { compat(SYF_MPSAFE | AS(orecvmsg_args),recvmsg) }, /* 113 = old recvmsg */ + { compat(SYF_MPSAFE | AS(osendmsg_args),sendmsg) }, /* 114 = old sendmsg */ + { 0, (sy_call_t *)nosys }, /* 115 = obsolete vtrace */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 116 = gettimeofday */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 117 = getrusage */ + { SYF_MPSAFE | AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ + { 0, (sy_call_t *)nosys }, /* 119 = resuba */ + { SYF_MPSAFE | AS(readv_args), (sy_call_t *)readv }, /* 120 = readv */ + { SYF_MPSAFE | AS(writev_args), (sy_call_t *)writev }, /* 121 = writev */ + { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 122 = settimeofday */ + { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ + { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ + { compat(SYF_MPSAFE | AS(recvfrom_args),recvfrom) }, /* 125 = old recvfrom */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ + { compat(AS(otruncate_args),truncate) }, /* 129 = old truncate */ + { compat(AS(oftruncate_args),ftruncate) }, /* 130 = old ftruncate */ + { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ + { AS(mkfifo_args), (sy_call_t *)mkfifo }, /* 132 = mkfifo */ + { SYF_MPSAFE | AS(sendto_args), (sy_call_t *)sendto }, /* 133 = sendto */ + { SYF_MPSAFE | AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ + { SYF_MPSAFE | AS(socketpair_args), (sy_call_t *)socketpair }, /* 135 = socketpair */ + { AS(mkdir_args), (sy_call_t *)mkdir }, /* 136 = mkdir */ + { AS(rmdir_args), (sy_call_t *)rmdir }, /* 137 = rmdir */ + { AS(utimes_args), (sy_call_t *)utimes }, /* 138 = utimes */ + { 0, (sy_call_t *)nosys }, /* 139 = obsolete 4.2 sigreturn */ + { SYF_MPSAFE | AS(adjtime_args), (sy_call_t *)adjtime }, /* 140 = adjtime */ + { compat(SYF_MPSAFE | AS(ogetpeername_args),getpeername) }, /* 141 = old getpeername */ + { compat(SYF_MPSAFE | 0,gethostid) }, /* 142 = old gethostid */ + { compat(SYF_MPSAFE | AS(osethostid_args),sethostid) }, /* 143 = old sethostid */ + { compat(SYF_MPSAFE | AS(ogetrlimit_args),getrlimit) }, /* 144 = old getrlimit */ + { compat(SYF_MPSAFE | AS(osetrlimit_args),setrlimit) }, /* 145 = old setrlimit */ + { compat(SYF_MPSAFE | AS(okillpg_args),killpg) }, /* 146 = old killpg */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { AS(quotactl_args), (sy_call_t *)quotactl }, /* 148 = quotactl */ + { compat(SYF_MPSAFE | 0,quota) }, /* 149 = old quota */ + { compat(SYF_MPSAFE | AS(getsockname_args),getsockname) }, /* 150 = old getsockname */ + { 0, (sy_call_t *)nosys }, /* 151 = sem_lock */ + { 0, (sy_call_t *)nosys }, /* 152 = sem_wakeup */ + { 0, (sy_call_t *)nosys }, /* 153 = asyncdaemon */ + { 0, (sy_call_t *)nosys }, /* 154 = nosys */ + { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys }, /* 155 = nfssvc */ + { compat(AS(ogetdirentries_args),getdirentries) }, /* 156 = old getdirentries */ + { AS(statfs_args), (sy_call_t *)statfs }, /* 157 = statfs */ + { AS(fstatfs_args), (sy_call_t *)fstatfs }, /* 158 = fstatfs */ + { 0, (sy_call_t *)nosys }, /* 159 = nosys */ + { 0, (sy_call_t *)nosys }, /* 160 = nosys */ + { AS(getfh_args), (sy_call_t *)getfh }, /* 161 = getfh */ + { SYF_MPSAFE | AS(getdomainname_args), (sy_call_t *)getdomainname }, /* 162 = getdomainname */ + { SYF_MPSAFE | AS(setdomainname_args), (sy_call_t *)setdomainname }, /* 163 = setdomainname */ + { SYF_MPSAFE | AS(uname_args), (sy_call_t *)uname }, /* 164 = uname */ + { AS(sysarch_args), (sy_call_t *)sysarch }, /* 165 = sysarch */ + { SYF_MPSAFE | AS(rtprio_args), (sy_call_t *)rtprio }, /* 166 = rtprio */ + { 0, (sy_call_t *)nosys }, /* 167 = nosys */ + { 0, (sy_call_t *)nosys }, /* 168 = nosys */ + { SYF_MPSAFE | AS(semsys_args), (sy_call_t *)lkmressys }, /* 169 = semsys */ + { SYF_MPSAFE | AS(msgsys_args), (sy_call_t *)lkmressys }, /* 170 = msgsys */ + { SYF_MPSAFE | AS(shmsys_args), (sy_call_t *)lkmressys }, /* 171 = shmsys */ + { 0, (sy_call_t *)nosys }, /* 172 = nosys */ + { SYF_MPSAFE | AS(pread_args), (sy_call_t *)pread }, /* 173 = pread */ + { SYF_MPSAFE | AS(pwrite_args), (sy_call_t *)pwrite }, /* 174 = pwrite */ + { 0, (sy_call_t *)nosys }, /* 175 = nosys */ + { SYF_MPSAFE | AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime }, /* 176 = ntp_adjtime */ + { 0, (sy_call_t *)nosys }, /* 177 = sfork */ + { 0, (sy_call_t *)nosys }, /* 178 = getdescriptor */ + { 0, (sy_call_t *)nosys }, /* 179 = setdescriptor */ + { 0, (sy_call_t *)nosys }, /* 180 = nosys */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 181 = setgid */ + { SYF_MPSAFE | AS(setegid_args), (sy_call_t *)setegid }, /* 182 = setegid */ + { SYF_MPSAFE | AS(seteuid_args), (sy_call_t *)seteuid }, /* 183 = seteuid */ + { 0, (sy_call_t *)nosys }, /* 184 = lfs_bmapv */ + { 0, (sy_call_t *)nosys }, /* 185 = lfs_markv */ + { 0, (sy_call_t *)nosys }, /* 186 = lfs_segclean */ + { 0, (sy_call_t *)nosys }, /* 187 = lfs_segwait */ + { AS(stat_args), (sy_call_t *)stat }, /* 188 = stat */ + { SYF_MPSAFE | AS(fstat_args), (sy_call_t *)fstat }, /* 189 = fstat */ + { AS(lstat_args), (sy_call_t *)lstat }, /* 190 = lstat */ + { AS(pathconf_args), (sy_call_t *)pathconf }, /* 191 = pathconf */ + { SYF_MPSAFE | AS(fpathconf_args), (sy_call_t *)fpathconf }, /* 192 = fpathconf */ + { 0, (sy_call_t *)nosys }, /* 193 = nosys */ + { SYF_MPSAFE | AS(__getrlimit_args), (sy_call_t *)getrlimit }, /* 194 = getrlimit */ + { SYF_MPSAFE | AS(__setrlimit_args), (sy_call_t *)setrlimit }, /* 195 = setrlimit */ + { AS(getdirentries_args), (sy_call_t *)getdirentries }, /* 196 = getdirentries */ + { SYF_MPSAFE | AS(mmap_args), (sy_call_t *)mmap }, /* 197 = mmap */ + { 0, (sy_call_t *)nosys }, /* 198 = __syscall */ + { AS(lseek_args), (sy_call_t *)lseek }, /* 199 = lseek */ + { AS(truncate_args), (sy_call_t *)truncate }, /* 200 = truncate */ + { AS(ftruncate_args), (sy_call_t *)ftruncate }, /* 201 = ftruncate */ + { SYF_MPSAFE | AS(sysctl_args), (sy_call_t *)__sysctl }, /* 202 = __sysctl */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 203 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 204 = munlock */ + { AS(undelete_args), (sy_call_t *)undelete }, /* 205 = undelete */ + { AS(futimes_args), (sy_call_t *)futimes }, /* 206 = futimes */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 207 = getpgid */ + { 0, (sy_call_t *)nosys }, /* 208 = newreboot */ + { SYF_MPSAFE | AS(poll_args), (sy_call_t *)poll }, /* 209 = poll */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 210 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 211 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 212 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 213 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 214 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 215 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 216 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 217 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 218 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 219 = lkmnosys */ + { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)lkmressys }, /* 220 = __semctl */ + { SYF_MPSAFE | AS(semget_args), (sy_call_t *)lkmressys }, /* 221 = semget */ + { SYF_MPSAFE | AS(semop_args), (sy_call_t *)lkmressys }, /* 222 = semop */ + { 0, (sy_call_t *)nosys }, /* 223 = semconfig */ + { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)lkmressys }, /* 224 = msgctl */ + { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)lkmressys }, /* 225 = msgget */ + { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)lkmressys }, /* 226 = msgsnd */ + { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)lkmressys }, /* 227 = msgrcv */ + { SYF_MPSAFE | AS(shmat_args), (sy_call_t *)lkmressys }, /* 228 = shmat */ + { SYF_MPSAFE | AS(shmctl_args), (sy_call_t *)lkmressys }, /* 229 = shmctl */ + { SYF_MPSAFE | AS(shmdt_args), (sy_call_t *)lkmressys }, /* 230 = shmdt */ + { SYF_MPSAFE | AS(shmget_args), (sy_call_t *)lkmressys }, /* 231 = shmget */ + { SYF_MPSAFE | AS(clock_gettime_args), (sy_call_t *)clock_gettime }, /* 232 = clock_gettime */ + { SYF_MPSAFE | AS(clock_settime_args), (sy_call_t *)clock_settime }, /* 233 = clock_settime */ + { SYF_MPSAFE | AS(clock_getres_args), (sy_call_t *)clock_getres }, /* 234 = clock_getres */ + { 0, (sy_call_t *)nosys }, /* 235 = timer_create */ + { 0, (sy_call_t *)nosys }, /* 236 = timer_delete */ + { 0, (sy_call_t *)nosys }, /* 237 = timer_settime */ + { 0, (sy_call_t *)nosys }, /* 238 = timer_gettime */ + { 0, (sy_call_t *)nosys }, /* 239 = timer_getoverrun */ + { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 240 = nanosleep */ + { 0, (sy_call_t *)nosys }, /* 241 = nosys */ + { 0, (sy_call_t *)nosys }, /* 242 = nosys */ + { 0, (sy_call_t *)nosys }, /* 243 = nosys */ + { 0, (sy_call_t *)nosys }, /* 244 = nosys */ + { 0, (sy_call_t *)nosys }, /* 245 = nosys */ + { 0, (sy_call_t *)nosys }, /* 246 = nosys */ + { 0, (sy_call_t *)nosys }, /* 247 = nosys */ + { 0, (sy_call_t *)nosys }, /* 248 = nosys */ + { 0, (sy_call_t *)nosys }, /* 249 = nosys */ + { SYF_MPSAFE | AS(minherit_args), (sy_call_t *)minherit }, /* 250 = minherit */ + { SYF_MPSAFE | AS(rfork_args), (sy_call_t *)rfork }, /* 251 = rfork */ + { SYF_MPSAFE | AS(openbsd_poll_args), (sy_call_t *)openbsd_poll }, /* 252 = openbsd_poll */ + { 0, (sy_call_t *)issetugid }, /* 253 = issetugid */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 254 = lchown */ + { 0, (sy_call_t *)nosys }, /* 255 = nosys */ + { 0, (sy_call_t *)nosys }, /* 256 = nosys */ + { 0, (sy_call_t *)nosys }, /* 257 = nosys */ + { 0, (sy_call_t *)nosys }, /* 258 = nosys */ + { 0, (sy_call_t *)nosys }, /* 259 = nosys */ + { 0, (sy_call_t *)nosys }, /* 260 = nosys */ + { 0, (sy_call_t *)nosys }, /* 261 = nosys */ + { 0, (sy_call_t *)nosys }, /* 262 = nosys */ + { 0, (sy_call_t *)nosys }, /* 263 = nosys */ + { 0, (sy_call_t *)nosys }, /* 264 = nosys */ + { 0, (sy_call_t *)nosys }, /* 265 = nosys */ + { 0, (sy_call_t *)nosys }, /* 266 = nosys */ + { 0, (sy_call_t *)nosys }, /* 267 = nosys */ + { 0, (sy_call_t *)nosys }, /* 268 = nosys */ + { 0, (sy_call_t *)nosys }, /* 269 = nosys */ + { 0, (sy_call_t *)nosys }, /* 270 = nosys */ + { 0, (sy_call_t *)nosys }, /* 271 = nosys */ + { AS(getdents_args), (sy_call_t *)getdents }, /* 272 = getdents */ + { 0, (sy_call_t *)nosys }, /* 273 = nosys */ + { AS(lchmod_args), (sy_call_t *)lchmod }, /* 274 = lchmod */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 275 = netbsd_lchown */ + { AS(lutimes_args), (sy_call_t *)lutimes }, /* 276 = lutimes */ + { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync }, /* 277 = netbsd_msync */ + { AS(nstat_args), (sy_call_t *)nstat }, /* 278 = nstat */ + { SYF_MPSAFE | AS(nfstat_args), (sy_call_t *)nfstat }, /* 279 = nfstat */ + { AS(nlstat_args), (sy_call_t *)nlstat }, /* 280 = nlstat */ + { 0, (sy_call_t *)nosys }, /* 281 = nosys */ + { 0, (sy_call_t *)nosys }, /* 282 = nosys */ + { 0, (sy_call_t *)nosys }, /* 283 = nosys */ + { 0, (sy_call_t *)nosys }, /* 284 = nosys */ + { 0, (sy_call_t *)nosys }, /* 285 = nosys */ + { 0, (sy_call_t *)nosys }, /* 286 = nosys */ + { 0, (sy_call_t *)nosys }, /* 287 = nosys */ + { 0, (sy_call_t *)nosys }, /* 288 = nosys */ + { 0, (sy_call_t *)nosys }, /* 289 = nosys */ + { 0, (sy_call_t *)nosys }, /* 290 = nosys */ + { 0, (sy_call_t *)nosys }, /* 291 = nosys */ + { 0, (sy_call_t *)nosys }, /* 292 = nosys */ + { 0, (sy_call_t *)nosys }, /* 293 = nosys */ + { 0, (sy_call_t *)nosys }, /* 294 = nosys */ + { 0, (sy_call_t *)nosys }, /* 295 = nosys */ + { 0, (sy_call_t *)nosys }, /* 296 = nosys */ + { AS(fhstatfs_args), (sy_call_t *)fhstatfs }, /* 297 = fhstatfs */ + { AS(fhopen_args), (sy_call_t *)fhopen }, /* 298 = fhopen */ + { AS(fhstat_args), (sy_call_t *)fhstat }, /* 299 = fhstat */ + { SYF_MPSAFE | AS(modnext_args), (sy_call_t *)modnext }, /* 300 = modnext */ + { SYF_MPSAFE | AS(modstat_args), (sy_call_t *)modstat }, /* 301 = modstat */ + { SYF_MPSAFE | AS(modfnext_args), (sy_call_t *)modfnext }, /* 302 = modfnext */ + { SYF_MPSAFE | AS(modfind_args), (sy_call_t *)modfind }, /* 303 = modfind */ + { SYF_MPSAFE | AS(kldload_args), (sy_call_t *)kldload }, /* 304 = kldload */ + { SYF_MPSAFE | AS(kldunload_args), (sy_call_t *)kldunload }, /* 305 = kldunload */ + { SYF_MPSAFE | AS(kldfind_args), (sy_call_t *)kldfind }, /* 306 = kldfind */ + { SYF_MPSAFE | AS(kldnext_args), (sy_call_t *)kldnext }, /* 307 = kldnext */ + { SYF_MPSAFE | AS(kldstat_args), (sy_call_t *)kldstat }, /* 308 = kldstat */ + { SYF_MPSAFE | AS(kldfirstmod_args), (sy_call_t *)kldfirstmod }, /* 309 = kldfirstmod */ + { SYF_MPSAFE | AS(getsid_args), (sy_call_t *)getsid }, /* 310 = getsid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 311 = setresuid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 312 = setresgid */ + { 0, (sy_call_t *)nosys }, /* 313 = obsolete signanosleep */ + { AS(aio_return_args), (sy_call_t *)lkmressys }, /* 314 = aio_return */ + { AS(aio_suspend_args), (sy_call_t *)lkmressys }, /* 315 = aio_suspend */ + { AS(aio_cancel_args), (sy_call_t *)lkmressys }, /* 316 = aio_cancel */ + { AS(aio_error_args), (sy_call_t *)lkmressys }, /* 317 = aio_error */ + { AS(aio_read_args), (sy_call_t *)lkmressys }, /* 318 = aio_read */ + { AS(aio_write_args), (sy_call_t *)lkmressys }, /* 319 = aio_write */ + { AS(lio_listio_args), (sy_call_t *)lkmressys }, /* 320 = lio_listio */ + { SYF_MPSAFE | 0, (sy_call_t *)yield }, /* 321 = yield */ + { 0, (sy_call_t *)nosys }, /* 322 = obsolete thr_sleep */ + { 0, (sy_call_t *)nosys }, /* 323 = obsolete thr_wakeup */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 324 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 325 = munlockall */ + { AS(__getcwd_args), (sy_call_t *)__getcwd }, /* 326 = __getcwd */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 327 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 328 = sched_getparam */ + { SYF_MPSAFE | AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler }, /* 329 = sched_setscheduler */ + { SYF_MPSAFE | AS(sched_getscheduler_args), (sy_call_t *)sched_getscheduler }, /* 330 = sched_getscheduler */ + { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 331 = sched_yield */ + { SYF_MPSAFE | AS(sched_get_priority_max_args), (sy_call_t *)sched_get_priority_max }, /* 332 = sched_get_priority_max */ + { SYF_MPSAFE | AS(sched_get_priority_min_args), (sy_call_t *)sched_get_priority_min }, /* 333 = sched_get_priority_min */ + { SYF_MPSAFE | AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 334 = sched_rr_get_interval */ + { AS(utrace_args), (sy_call_t *)utrace }, /* 335 = utrace */ + { SYF_MPSAFE | AS(sendfile_args), (sy_call_t *)sendfile }, /* 336 = sendfile */ + { AS(kldsym_args), (sy_call_t *)kldsym }, /* 337 = kldsym */ + { SYF_MPSAFE | AS(jail_args), (sy_call_t *)jail }, /* 338 = jail */ + { 0, (sy_call_t *)nosys }, /* 339 = pioctl */ + { SYF_MPSAFE | AS(sigprocmask_args), (sy_call_t *)sigprocmask }, /* 340 = sigprocmask */ + { SYF_MPSAFE | AS(sigsuspend_args), (sy_call_t *)sigsuspend }, /* 341 = sigsuspend */ + { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction }, /* 342 = sigaction */ + { SYF_MPSAFE | AS(sigpending_args), (sy_call_t *)sigpending }, /* 343 = sigpending */ + { AS(sigreturn_args), (sy_call_t *)sigreturn }, /* 344 = sigreturn */ + { 0, (sy_call_t *)nosys }, /* 345 = sigtimedwait */ + { 0, (sy_call_t *)nosys }, /* 346 = sigwaitinfo */ + { SYF_MPSAFE | AS(__acl_get_file_args), (sy_call_t *)__acl_get_file }, /* 347 = __acl_get_file */ + { SYF_MPSAFE | AS(__acl_set_file_args), (sy_call_t *)__acl_set_file }, /* 348 = __acl_set_file */ + { SYF_MPSAFE | AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd }, /* 349 = __acl_get_fd */ + { SYF_MPSAFE | AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd }, /* 350 = __acl_set_fd */ + { SYF_MPSAFE | AS(__acl_delete_file_args), (sy_call_t *)__acl_delete_file }, /* 351 = __acl_delete_file */ + { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd }, /* 352 = __acl_delete_fd */ + { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file }, /* 353 = __acl_aclcheck_file */ + { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd }, /* 354 = __acl_aclcheck_fd */ + { AS(extattrctl_args), (sy_call_t *)extattrctl }, /* 355 = extattrctl */ + { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file }, /* 356 = extattr_set_file */ + { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file }, /* 357 = extattr_get_file */ + { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file }, /* 358 = extattr_delete_file */ + { AS(aio_waitcomplete_args), (sy_call_t *)lkmressys }, /* 359 = aio_waitcomplete */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 360 = getresuid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 361 = getresgid */ + { SYF_MPSAFE | 0, (sy_call_t *)kqueue }, /* 362 = kqueue */ + { SYF_MPSAFE | AS(kevent_args), (sy_call_t *)kevent }, /* 363 = kevent */ + { AS(__cap_get_proc_args), (sy_call_t *)__cap_get_proc }, /* 364 = __cap_get_proc */ + { AS(__cap_set_proc_args), (sy_call_t *)__cap_set_proc }, /* 365 = __cap_set_proc */ + { AS(__cap_get_fd_args), (sy_call_t *)__cap_get_fd }, /* 366 = __cap_get_fd */ + { AS(__cap_get_file_args), (sy_call_t *)__cap_get_file }, /* 367 = __cap_get_file */ + { AS(__cap_set_fd_args), (sy_call_t *)__cap_set_fd }, /* 368 = __cap_set_fd */ + { AS(__cap_set_file_args), (sy_call_t *)__cap_set_file }, /* 369 = __cap_set_file */ + { AS(nosys_args), (sy_call_t *)lkmressys }, /* 370 = lkmressys */ + { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd }, /* 371 = extattr_set_fd */ + { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd }, /* 372 = extattr_get_fd */ + { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid }, /* 374 = __setugid */ + { AS(nfsclnt_args), (sy_call_t *)nosys }, /* 375 = nfsclnt */ + { AS(eaccess_args), (sy_call_t *)eaccess }, /* 376 = eaccess */ + { 0, (sy_call_t *)nosys }, /* 377 = afs_syscall */ + { AS(nmount_args), (sy_call_t *)nmount }, /* 378 = nmount */ + { 0, (sy_call_t *)kse_exit }, /* 379 = kse_exit */ + { 0, (sy_call_t *)kse_wakeup }, /* 380 = kse_wakeup */ + { AS(kse_new_args), (sy_call_t *)kse_new }, /* 381 = kse_new */ + { AS(thread_wakeup_args), (sy_call_t *)thread_wakeup }, /* 382 = thread_wakeup */ + { 0, (sy_call_t *)kse_yield }, /* 383 = kse_yield */ + { 0, (sy_call_t *)nosys }, /* 384 = __mac_get_proc */ + { 0, (sy_call_t *)nosys }, /* 385 = __mac_set_proc */ + { 0, (sy_call_t *)nosys }, /* 386 = __mac_get_fd */ + { 0, (sy_call_t *)nosys }, /* 387 = __mac_get_file */ + { 0, (sy_call_t *)nosys }, /* 388 = __mac_set_fd */ + { 0, (sy_call_t *)nosys }, /* 389 = __mac_set_file */ +}; diff --git a/sys/amd64/ia32/syscalls.conf b/sys/amd64/ia32/syscalls.conf new file mode 100644 index 000000000000..16d94eacaec6 --- /dev/null +++ b/sys/amd64/ia32/syscalls.conf @@ -0,0 +1,12 @@ +# $FreeBSD$ +sysnames="/dev/null" +sysproto="ia32_proto.h" +sysproto_h=_IA32_SYSPROTO_H_ +syshdr="ia32_syscall.h" +syssw="ia32_sysent.c" +sysmk="/dev/null" +syshide="/dev/null" +syscallprefix="IA32_SYS_" +switchname="ia32_sysent" +namesname="ia32_syscallnames" +sysvec="\n" diff --git a/sys/amd64/ia32/syscalls.master b/sys/amd64/ia32/syscalls.master new file mode 100644 index 000000000000..347196a3da99 --- /dev/null +++ b/sys/amd64/ia32/syscalls.master @@ -0,0 +1,562 @@ + $FreeBSD$ +; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 +; from: src/sys/kern/syscalls.master 1.107 +; +; System call name/number master file. +; Processed to created init_sysent.c, syscalls.c and syscall.h. + +; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments +; number system call number, must be in order +; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, +; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, +; [M]NOSTD +; namespc one of POSIX, BSD, NOHIDE +; name psuedo-prototype of syscall routine +; If one of the following alts is different, then all appear: +; altname name of system call if different +; alttag name of args struct tag if different from [o]`name'"_args" +; altrtyp return type if not int (bogus - syscalls always return int) +; for UNIMPL/OBSOL, name continues with comments + +; types: +; [M] e.g. like MSTD -- means the system call is MP-safe. If no +; M prefix is used, the syscall wrapper will obtain the Giant +; lock for the syscall. +; STD always included +; COMPAT included on COMPAT #ifdef +; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h +; OBSOL obsolete, not included in system, only specifies name +; UNIMPL not implemented, placeholder only +; NOSTD implemented but as a lkm that can be statically +; compiled in sysent entry will be filled with lkmsys +; so the SYSCALL_MODULE macro works + +; #ifdef's, etc. may be included, and are copied to the output files. + +#include +#include +#include + +; Reserved/unimplemented system calls in the range 0-150 inclusive +; are reserved for use in future Berkeley releases. +; Additional system calls implemented in vendor and other +; redistributions should be placed in the reserved range at the end +; of the current calls. + +0 STD NOHIDE { int nosys(void); } syscall nosys_args int +1 MSTD NOHIDE { void sys_exit(int rval); } exit sys_exit_args void +2 MSTD POSIX { int fork(void); } +3 MSTD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } +4 MSTD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } +5 STD POSIX { int open(char *path, int flags, int mode); } +; XXX should be { int open(const char *path, int flags, ...); } +; but we're not ready for `const' or varargs. +; XXX man page says `mode_t mode'. +6 MSTD POSIX { int close(int fd); } +7 MSTD BSD { int wait4(int pid, int *status, int options, \ + struct rusage *rusage); } wait4 wait_args int +8 COMPAT BSD { int creat(char *path, int mode); } +9 STD POSIX { int link(char *path, char *link); } +10 STD POSIX { int unlink(char *path); } +11 OBSOL NOHIDE execv +12 STD POSIX { int chdir(char *path); } +13 STD BSD { int fchdir(int fd); } +14 STD POSIX { int mknod(char *path, int mode, int dev); } +15 STD POSIX { int chmod(char *path, int mode); } +16 STD POSIX { int chown(char *path, int uid, int gid); } +17 MSTD BSD { int obreak(char *nsize); } break obreak_args int +18 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \ + int flags); } +19 COMPAT POSIX { long lseek(int fd, long offset, int whence); } +20 MSTD POSIX { pid_t getpid(void); } +21 STD BSD { int mount(char *type, char *path, int flags, \ + caddr_t data); } +; XXX `path' should have type `const char *' but we're not ready for that. +22 STD BSD { int unmount(char *path, int flags); } +23 MSTD POSIX { int setuid(uid_t uid); } +24 MSTD POSIX { uid_t getuid(void); } +25 MSTD POSIX { uid_t geteuid(void); } +26 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ + int data); } +27 MSTD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } +28 MSTD BSD { int sendmsg(int s, caddr_t msg, int flags); } +29 MSTD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } +30 MSTD BSD { int accept(int s, caddr_t name, int *anamelen); } +31 MSTD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +32 MSTD BSD { int getsockname(int fdes, caddr_t asa, int *alen); } +33 STD POSIX { int access(char *path, int flags); } +34 STD BSD { int chflags(char *path, int flags); } +35 STD BSD { int fchflags(int fd, int flags); } +36 STD BSD { int sync(void); } +37 MSTD POSIX { int kill(int pid, int signum); } +38 COMPAT POSIX { int stat(char *path, struct ostat *ub); } +39 MSTD POSIX { pid_t getppid(void); } +40 COMPAT POSIX { int lstat(char *path, struct ostat *ub); } +41 STD POSIX { int dup(u_int fd); } +42 STD POSIX { int pipe(void); } +43 MSTD POSIX { gid_t getegid(void); } +44 MSTD BSD { int profil(caddr_t samples, size_t size, \ + size_t offset, u_int scale); } +45 STD BSD { int ktrace(const char *fname, int ops, int facs, \ + int pid); } +46 MCOMPAT POSIX { int sigaction(int signum, struct osigaction *nsa, \ + struct osigaction *osa); } +47 MSTD POSIX { gid_t getgid(void); } +48 MCOMPAT POSIX { int sigprocmask(int how, osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it, and we return the old mask as the +; (int) return value. +49 MSTD BSD { int getlogin(char *namebuf, u_int namelen); } +50 MSTD BSD { int setlogin(char *namebuf); } +51 MSTD BSD { int acct(char *path); } +52 MCOMPAT POSIX { int sigpending(void); } +53 MSTD BSD { int sigaltstack(stack_t *ss, stack_t *oss); } +54 MSTD POSIX { int ioctl(int fd, u_long com, caddr_t data); } +55 MSTD BSD { int reboot(int opt); } +56 STD POSIX { int revoke(char *path); } +57 STD POSIX { int symlink(char *path, char *link); } +58 STD POSIX { int readlink(char *path, char *buf, int count); } +59 MSTD POSIX { int execve(char *fname, char **argv, char **envv); } +60 MSTD POSIX { int umask(int newmask); } umask umask_args int +61 STD BSD { int chroot(char *path); } +62 MCOMPAT POSIX { int fstat(int fd, struct ostat *sb); } +63 MCOMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ + int arg); } getkerninfo getkerninfo_args int +64 MCOMPAT BSD { int getpagesize(void); } \ + getpagesize getpagesize_args int +65 STD BSD { int msync(void *addr, size_t len, int flags); } +66 MSTD BSD { int vfork(void); } +67 OBSOL NOHIDE vread +68 OBSOL NOHIDE vwrite +69 MSTD BSD { int sbrk(int incr); } +70 MSTD BSD { int sstk(int incr); } +71 MCOMPAT BSD { int mmap(void *addr, int len, int prot, \ + int flags, int fd, long pos); } +72 MSTD BSD { int ovadvise(int anom); } vadvise ovadvise_args int +73 MSTD BSD { int munmap(void *addr, size_t len); } +74 MSTD BSD { int mprotect(const void *addr, size_t len, int prot); } +75 MSTD BSD { int madvise(void *addr, size_t len, int behav); } +76 OBSOL NOHIDE vhangup +77 OBSOL NOHIDE vlimit +78 MSTD BSD { int mincore(const void *addr, size_t len, \ + char *vec); } +79 MSTD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } +80 MSTD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } +81 MSTD POSIX { int getpgrp(void); } +82 MSTD POSIX { int setpgid(int pid, int pgid); } +83 MSTD BSD { int setitimer(u_int which, struct itimerval *itv, \ + struct itimerval *oitv); } +84 MCOMPAT BSD { int wait(void); } +85 MSTD BSD { int swapon(char *name); } +86 MSTD BSD { int getitimer(u_int which, struct itimerval *itv); } +87 MCOMPAT BSD { int gethostname(char *hostname, u_int len); } \ + gethostname gethostname_args int +88 MCOMPAT BSD { int sethostname(char *hostname, u_int len); } \ + sethostname sethostname_args int +89 MSTD BSD { int getdtablesize(void); } +90 MSTD POSIX { int dup2(u_int from, u_int to); } +91 UNIMPL BSD getdopt +92 MSTD POSIX { int fcntl(int fd, int cmd, long arg); } +; XXX should be { int fcntl(int fd, int cmd, ...); } +; but we're not ready for varargs. +; XXX man page says `int arg' too. +93 MSTD BSD { int select(int nd, fd_set *in, fd_set *ou, \ + fd_set *ex, struct timeval *tv); } +94 UNIMPL BSD setdopt +95 STD POSIX { int fsync(int fd); } +96 MSTD BSD { int setpriority(int which, int who, int prio); } +97 MSTD BSD { int socket(int domain, int type, int protocol); } +98 MSTD BSD { int connect(int s, caddr_t name, int namelen); } +99 MCPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ + accept accept_args int +100 MSTD BSD { int getpriority(int which, int who); } +101 MCOMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } +102 MCOMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } +103 STD BSD { int osigreturn(struct osigcontext *sigcntxp); } +104 MSTD BSD { int bind(int s, caddr_t name, int namelen); } +105 MSTD BSD { int setsockopt(int s, int level, int name, \ + caddr_t val, int valsize); } +106 MSTD BSD { int listen(int s, int backlog); } +107 OBSOL NOHIDE vtimes +108 MCOMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ + struct sigvec *osv); } +109 MCOMPAT BSD { int sigblock(int mask); } +110 MCOMPAT BSD { int sigsetmask(int mask); } +111 MCOMPAT POSIX { int sigsuspend(osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it. +112 MCOMPAT BSD { int sigstack(struct sigstack *nss, \ + struct sigstack *oss); } +113 MCOMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } +114 MCOMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } +115 OBSOL NOHIDE vtrace +116 MSTD BSD { int gettimeofday(struct timeval *tp, \ + struct timezone *tzp); } +117 MSTD BSD { int getrusage(int who, struct rusage *rusage); } +118 MSTD BSD { int getsockopt(int s, int level, int name, \ + caddr_t val, int *avalsize); } +119 UNIMPL NOHIDE resuba (BSD/OS 2.x) +120 MSTD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } +121 MSTD BSD { int writev(int fd, struct iovec *iovp, \ + u_int iovcnt); } +122 MSTD BSD { int settimeofday(struct timeval *tv, \ + struct timezone *tzp); } +123 STD BSD { int fchown(int fd, int uid, int gid); } +124 STD BSD { int fchmod(int fd, int mode); } +125 MCPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } \ + recvfrom recvfrom_args int +126 MSTD BSD { int setreuid(int ruid, int euid); } +127 MSTD BSD { int setregid(int rgid, int egid); } +128 STD POSIX { int rename(char *from, char *to); } +129 COMPAT BSD { int truncate(char *path, long length); } +130 COMPAT BSD { int ftruncate(int fd, long length); } +131 MSTD BSD { int flock(int fd, int how); } +132 STD POSIX { int mkfifo(char *path, int mode); } +133 MSTD BSD { int sendto(int s, caddr_t buf, size_t len, \ + int flags, caddr_t to, int tolen); } +134 MSTD BSD { int shutdown(int s, int how); } +135 MSTD BSD { int socketpair(int domain, int type, int protocol, \ + int *rsv); } +136 STD POSIX { int mkdir(char *path, int mode); } +137 STD POSIX { int rmdir(char *path); } +138 STD BSD { int utimes(char *path, struct timeval *tptr); } +139 OBSOL NOHIDE 4.2 sigreturn +140 MSTD BSD { int adjtime(struct timeval *delta, \ + struct timeval *olddelta); } +141 MCOMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +142 MCOMPAT BSD { long gethostid(void); } +143 MCOMPAT BSD { int sethostid(long hostid); } +144 MCOMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } +145 MCOMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } +146 MCOMPAT BSD { int killpg(int pgid, int signum); } +147 MSTD POSIX { int setsid(void); } +148 STD BSD { int quotactl(char *path, int cmd, int uid, \ + caddr_t arg); } +149 MCOMPAT BSD { int quota(void); } +150 MCPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\ + getsockname getsockname_args int + +; Syscalls 151-180 inclusive are reserved for vendor-specific +; system calls. (This includes various calls added for compatibity +; with other Unix variants.) +; Some of these calls are now supported by BSD... +151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x) +152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) +153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) +154 UNIMPL NOHIDE nosys +; 155 is initialized by the NFS code, if present. +155 MNOIMPL BSD { int nfssvc(int flag, caddr_t argp); } +156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +157 STD BSD { int statfs(char *path, struct statfs *buf); } +158 STD BSD { int fstatfs(int fd, struct statfs *buf); } +159 UNIMPL NOHIDE nosys +160 UNIMPL NOHIDE nosys +161 STD BSD { int getfh(char *fname, struct fhandle *fhp); } +162 MSTD BSD { int getdomainname(char *domainname, int len); } +163 MSTD BSD { int setdomainname(char *domainname, int len); } +164 MSTD BSD { int uname(struct utsname *name); } +165 STD BSD { int sysarch(int op, char *parms); } +166 MSTD BSD { int rtprio(int function, pid_t pid, \ + struct rtprio *rtp); } +167 UNIMPL NOHIDE nosys +168 UNIMPL NOHIDE nosys +; 169 is initialized by the SYSVSEM code if present or loaded +169 MNOSTD BSD { int semsys(int which, int a2, int a3, int a4, \ + int a5); } +; 169 is initialized by the SYSVMSG code if present or loaded +; XXX should be { int semsys(int which, ...); } +170 MNOSTD BSD { int msgsys(int which, int a2, int a3, int a4, \ + int a5, int a6); } +; 169 is initialized by the SYSVSHM code if present or loaded +; XXX should be { int msgsys(int which, ...); } +171 MNOSTD BSD { int shmsys(int which, int a2, int a3, int a4); } +; XXX should be { int shmsys(int which, ...); } +172 UNIMPL NOHIDE nosys +173 MSTD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ + int pad, off_t offset); } +174 MSTD POSIX { ssize_t pwrite(int fd, const void *buf, \ + size_t nbyte, int pad, off_t offset); } +175 UNIMPL NOHIDE nosys +176 MSTD BSD { int ntp_adjtime(struct timex *tp); } +177 UNIMPL NOHIDE sfork (BSD/OS 2.x) +178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) +179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) +180 UNIMPL NOHIDE nosys + +; Syscalls 181-199 are used by/reserved for BSD +181 MSTD POSIX { int setgid(gid_t gid); } +182 MSTD BSD { int setegid(gid_t egid); } +183 MSTD BSD { int seteuid(uid_t euid); } +184 UNIMPL BSD lfs_bmapv +185 UNIMPL BSD lfs_markv +186 UNIMPL BSD lfs_segclean +187 UNIMPL BSD lfs_segwait +188 STD POSIX { int stat(char *path, struct stat *ub); } +189 MSTD POSIX { int fstat(int fd, struct stat *sb); } +190 STD POSIX { int lstat(char *path, struct stat *ub); } +191 STD POSIX { int pathconf(char *path, int name); } +192 MSTD POSIX { int fpathconf(int fd, int name); } +193 UNIMPL NOHIDE nosys +194 MSTD BSD { int getrlimit(u_int which, \ + struct rlimit *rlp); } \ + getrlimit __getrlimit_args int +195 MSTD BSD { int setrlimit(u_int which, \ + struct rlimit *rlp); } \ + setrlimit __setrlimit_args int +196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +197 MSTD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ + int flags, int fd, int pad, off_t pos); } +198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int +199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ + int whence); } +200 STD BSD { int truncate(char *path, int pad, off_t length); } +201 STD BSD { int ftruncate(int fd, int pad, off_t length); } +202 MSTD BSD { int __sysctl(int *name, u_int namelen, void *old, \ + size_t *oldlenp, void *new, size_t newlen); } \ + __sysctl sysctl_args int +; properly, __sysctl should be a NOHIDE, but making an exception +; here allows to avoid one in libc/sys/Makefile.inc. +203 MSTD BSD { int mlock(const void *addr, size_t len); } +204 MSTD BSD { int munlock(const void *addr, size_t len); } +205 STD BSD { int undelete(char *path); } +206 STD BSD { int futimes(int fd, struct timeval *tptr); } +207 MSTD BSD { int getpgid(pid_t pid); } +208 UNIMPL NOHIDE newreboot (NetBSD) +209 MSTD BSD { int poll(struct pollfd *fds, u_int nfds, \ + int timeout); } + +; +; The following are reserved for loadable syscalls +; +210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int + +; +; The following were introduced with NetBSD/4.4Lite-2 +; They are initialized by thier respective modules/sysinits +220 MNOSTD BSD { int __semctl(int semid, int semnum, int cmd, \ + union semun *arg); } +221 MNOSTD BSD { int semget(key_t key, int nsems, int semflg); } +222 MNOSTD BSD { int semop(int semid, struct sembuf *sops, \ + u_int nsops); } +223 UNIMPL NOHIDE semconfig +224 MNOSTD BSD { int msgctl(int msqid, int cmd, \ + struct msqid_ds *buf); } +225 MNOSTD BSD { int msgget(key_t key, int msgflg); } +226 MNOSTD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ + int msgflg); } +227 MNOSTD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ + long msgtyp, int msgflg); } +228 MNOSTD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } +229 MNOSTD BSD { int shmctl(int shmid, int cmd, \ + struct shmid_ds *buf); } +230 MNOSTD BSD { int shmdt(void *shmaddr); } +231 MNOSTD BSD { int shmget(key_t key, int size, int shmflg); } +; +232 MSTD POSIX { int clock_gettime(clockid_t clock_id, \ + struct timespec *tp); } +233 MSTD POSIX { int clock_settime(clockid_t clock_id, \ + const struct timespec *tp); } +234 MSTD POSIX { int clock_getres(clockid_t clock_id, \ + struct timespec *tp); } +235 UNIMPL NOHIDE timer_create +236 UNIMPL NOHIDE timer_delete +237 UNIMPL NOHIDE timer_settime +238 UNIMPL NOHIDE timer_gettime +239 UNIMPL NOHIDE timer_getoverrun +240 MSTD POSIX { int nanosleep(const struct timespec *rqtp, \ + struct timespec *rmtp); } +241 UNIMPL NOHIDE nosys +242 UNIMPL NOHIDE nosys +243 UNIMPL NOHIDE nosys +244 UNIMPL NOHIDE nosys +245 UNIMPL NOHIDE nosys +246 UNIMPL NOHIDE nosys +247 UNIMPL NOHIDE nosys +248 UNIMPL NOHIDE nosys +249 UNIMPL NOHIDE nosys +; syscall numbers initially used in OpenBSD +250 MSTD BSD { int minherit(void *addr, size_t len, int inherit); } +251 MSTD BSD { int rfork(int flags); } +252 MSTD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ + int timeout); } +253 STD BSD { int issetugid(void); } +254 STD BSD { int lchown(char *path, int uid, int gid); } +255 UNIMPL NOHIDE nosys +256 UNIMPL NOHIDE nosys +257 UNIMPL NOHIDE nosys +258 UNIMPL NOHIDE nosys +259 UNIMPL NOHIDE nosys +260 UNIMPL NOHIDE nosys +261 UNIMPL NOHIDE nosys +262 UNIMPL NOHIDE nosys +263 UNIMPL NOHIDE nosys +264 UNIMPL NOHIDE nosys +265 UNIMPL NOHIDE nosys +266 UNIMPL NOHIDE nosys +267 UNIMPL NOHIDE nosys +268 UNIMPL NOHIDE nosys +269 UNIMPL NOHIDE nosys +270 UNIMPL NOHIDE nosys +271 UNIMPL NOHIDE nosys +272 STD BSD { int getdents(int fd, char *buf, size_t count); } +273 UNIMPL NOHIDE nosys +274 STD BSD { int lchmod(char *path, mode_t mode); } +275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int +276 STD BSD { int lutimes(char *path, struct timeval *tptr); } +277 MNOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int +278 STD BSD { int nstat(char *path, struct nstat *ub); } +279 MSTD BSD { int nfstat(int fd, struct nstat *sb); } +280 STD BSD { int nlstat(char *path, struct nstat *ub); } +281 UNIMPL NOHIDE nosys +282 UNIMPL NOHIDE nosys +283 UNIMPL NOHIDE nosys +284 UNIMPL NOHIDE nosys +285 UNIMPL NOHIDE nosys +286 UNIMPL NOHIDE nosys +287 UNIMPL NOHIDE nosys +288 UNIMPL NOHIDE nosys +289 UNIMPL NOHIDE nosys +290 UNIMPL NOHIDE nosys +291 UNIMPL NOHIDE nosys +292 UNIMPL NOHIDE nosys +293 UNIMPL NOHIDE nosys +294 UNIMPL NOHIDE nosys +295 UNIMPL NOHIDE nosys +296 UNIMPL NOHIDE nosys +; XXX 297 is 300 in NetBSD +297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } +298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); } +299 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } +; syscall numbers for FreeBSD +300 MSTD BSD { int modnext(int modid); } +301 MSTD BSD { int modstat(int modid, struct module_stat* stat); } +302 MSTD BSD { int modfnext(int modid); } +303 MSTD BSD { int modfind(const char *name); } +304 MSTD BSD { int kldload(const char *file); } +305 MSTD BSD { int kldunload(int fileid); } +306 MSTD BSD { int kldfind(const char *file); } +307 MSTD BSD { int kldnext(int fileid); } +308 MSTD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } +309 MSTD BSD { int kldfirstmod(int fileid); } +310 MSTD BSD { int getsid(pid_t pid); } +311 MSTD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +312 MSTD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +313 OBSOL NOHIDE signanosleep +314 NOSTD BSD { int aio_return(struct aiocb *aiocbp); } +315 NOSTD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } +316 NOSTD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } +317 NOSTD BSD { int aio_error(struct aiocb *aiocbp); } +318 NOSTD BSD { int aio_read(struct aiocb *aiocbp); } +319 NOSTD BSD { int aio_write(struct aiocb *aiocbp); } +320 NOSTD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } +321 MSTD BSD { int yield(void); } +322 OBSOL NOHIDE thr_sleep +323 OBSOL NOHIDE thr_wakeup +324 MSTD BSD { int mlockall(int how); } +325 MSTD BSD { int munlockall(void); } +326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } + +327 MSTD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } +328 MSTD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } + +329 MSTD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } +330 MSTD POSIX { int sched_getscheduler (pid_t pid); } + +331 MSTD POSIX { int sched_yield (void); } +332 MSTD POSIX { int sched_get_priority_max (int policy); } +333 MSTD POSIX { int sched_get_priority_min (int policy); } +334 MSTD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } +335 STD BSD { int utrace(const void *addr, size_t len); } +336 MSTD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ + struct sf_hdtr *hdtr, off_t *sbytes, int flags); } +337 STD BSD { int kldsym(int fileid, int cmd, void *data); } +338 MSTD BSD { int jail(struct jail *jail); } +339 UNIMPL BSD pioctl +340 MSTD POSIX { int sigprocmask(int how, const sigset_t *set, \ + sigset_t *oset); } +341 MSTD POSIX { int sigsuspend(const sigset_t *sigmask); } +342 MSTD POSIX { int sigaction(int sig, const struct sigaction *act, \ + struct sigaction *oact); } +343 MSTD POSIX { int sigpending(sigset_t *set); } +344 STD BSD { int sigreturn(const struct __ucontext *sigcntxp); } +345 UNIMPL NOHIDE sigtimedwait +346 UNIMPL NOHIDE sigwaitinfo +347 MSTD BSD { int __acl_get_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +348 MSTD BSD { int __acl_set_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +349 MSTD BSD { int __acl_get_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +350 MSTD BSD { int __acl_set_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +351 MSTD BSD { int __acl_delete_file(const char *path, \ + acl_type_t type); } +352 MSTD BSD { int __acl_delete_fd(int filedes, acl_type_t type); } +353 MSTD BSD { int __acl_aclcheck_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +354 MSTD BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +355 STD BSD { int extattrctl(const char *path, int cmd, \ + const char *filename, int attrnamespace, \ + const char *attrname); } +356 STD BSD { int extattr_set_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +357 STD BSD { ssize_t extattr_get_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +358 STD BSD { int extattr_delete_file(const char *path, \ + int attrnamespace, const char *attrname); } +359 NOSTD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } +360 MSTD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } +361 MSTD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } +362 MSTD BSD { int kqueue(void); } +363 MSTD BSD { int kevent(int fd, \ + const struct kevent *changelist, int nchanges, \ + struct kevent *eventlist, int nevents, \ + const struct timespec *timeout); } +364 STD BSD { int __cap_get_proc(struct cap *cap_p); } +365 STD BSD { int __cap_set_proc(struct cap *cap_p); } +366 STD BSD { int __cap_get_fd(int fd, struct cap *cap_p); } +367 STD BSD { int __cap_get_file(const char *path_p, struct cap *cap_p); } +368 STD BSD { int __cap_set_fd(int fd, struct cap *cap_p); } +369 STD BSD { int __cap_set_file(const char *path_p, struct cap *cap_p); } +370 NODEF NOHIDE lkmressys lkmressys nosys_args int +371 STD BSD { int extattr_set_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +372 STD BSD { ssize_t extattr_get_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, size_t nbytes); } +373 STD BSD { int extattr_delete_fd(int fd, int attrnamespace, \ + const char *attrname); } +374 MSTD BSD { int __setugid(int flag); } +375 NOIMPL BSD { int nfsclnt(int flag, caddr_t argp); } +376 STD BSD { int eaccess(char *path, int flags); } +377 UNIMPL BSD afs_syscall +378 STD BSD { int nmount(struct iovec *iovp, unsigned int iovcnt, \ + int flags); } +379 STD BSD { int kse_exit(void); } +380 STD BSD { int kse_wakeup(void); } +381 STD BSD { int kse_new(struct kse_mailbox * mbx, \ + int new_grp_flag); } +382 STD BSD { int thread_wakeup(struct thread_mailbox *tmbx); } +383 STD BSD { int kse_yield(void); } +384 UNIMPL BSD __mac_get_proc +385 UNIMPL BSD __mac_set_proc +386 UNIMPL BSD __mac_get_fd +387 UNIMPL BSD __mac_get_file +388 UNIMPL BSD __mac_set_fd +389 UNIMPL BSD __mac_set_file diff --git a/sys/compat/freebsd32/Makefile b/sys/compat/freebsd32/Makefile new file mode 100644 index 000000000000..1184ef4a2ab0 --- /dev/null +++ b/sys/compat/freebsd32/Makefile @@ -0,0 +1,15 @@ +# Makefile for syscall tables +# +# $FreeBSD$ + +all: + @echo "make sysent only" + +sysent: ia32_sysent.c ia32_syscall.h ia32_proto.h + +ia32_sysent.c ia32_syscall.h ia32_proto.h: ../../kern/makesyscalls.sh \ + syscalls.master syscalls.conf + -mv -f ia32_sysent.c ia32_sysent.c.bak + -mv -f ia32_syscall.h ia32_syscall.h.bak + -mv -f ia32_proto.h ia32_proto.h.bak + sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf diff --git a/sys/compat/freebsd32/freebsd32_proto.h b/sys/compat/freebsd32/freebsd32_proto.h new file mode 100644 index 000000000000..5bb7abf36b30 --- /dev/null +++ b/sys/compat/freebsd32/freebsd32_proto.h @@ -0,0 +1,1529 @@ +/* + * System call prototypes. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#ifndef _IA32_SYSPROTO_H_ +#define _IA32_SYSPROTO_H_ + +#include + +#include + +struct proc; + +struct thread; + +#define PAD_(t) (sizeof(register_t) <= sizeof(t) ? \ + 0 : sizeof(register_t) - sizeof(t)) + +#if BYTE_ORDER == LITTLE_ENDIAN +#define PADL_(t) 0 +#define PADR_(t) PAD_(t) +#else +#define PADL_(t) PAD_(t) +#define PADR_(t) 0 +#endif + +struct nosys_args { + register_t dummy; +}; +struct sys_exit_args { + char rval_l_[PADL_(int)]; int rval; char rval_r_[PADR_(int)]; +}; +struct fork_args { + register_t dummy; +}; +struct read_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct write_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct open_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct close_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct wait_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)]; + char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct link_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct unlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct chdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct fchdir_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct mknod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char dev_l_[PADL_(int)]; int dev; char dev_r_[PADR_(int)]; +}; +struct chmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct chown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct obreak_args { + char nsize_l_[PADL_(char *)]; char * nsize; char nsize_r_[PADR_(char *)]; +}; +struct getfsstat_args { + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; + char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct getpid_args { + register_t dummy; +}; +struct mount_args { + char type_l_[PADL_(char *)]; char * type; char type_r_[PADR_(char *)]; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct unmount_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct setuid_args { + char uid_l_[PADL_(uid_t)]; uid_t uid; char uid_r_[PADR_(uid_t)]; +}; +struct getuid_args { + register_t dummy; +}; +struct geteuid_args { + register_t dummy; +}; +struct ptrace_args { + char req_l_[PADL_(int)]; int req; char req_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char data_l_[PADL_(int)]; int data; char data_r_[PADR_(int)]; +}; +struct recvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct msghdr *)]; struct msghdr * msg; char msg_r_[PADR_(struct msghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct recvfrom_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char from_l_[PADL_(caddr_t)]; caddr_t from; char from_r_[PADR_(caddr_t)]; + char fromlenaddr_l_[PADL_(int *)]; int * fromlenaddr; char fromlenaddr_r_[PADR_(int *)]; +}; +struct accept_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char anamelen_l_[PADL_(int *)]; int * anamelen; char anamelen_r_[PADR_(int *)]; +}; +struct getpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct getsockname_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct access_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct chflags_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fchflags_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sync_args { + register_t dummy; +}; +struct kill_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct getppid_args { + register_t dummy; +}; +struct dup_args { + char fd_l_[PADL_(u_int)]; u_int fd; char fd_r_[PADR_(u_int)]; +}; +struct pipe_args { + register_t dummy; +}; +struct getegid_args { + register_t dummy; +}; +struct profil_args { + char samples_l_[PADL_(caddr_t)]; caddr_t samples; char samples_r_[PADR_(caddr_t)]; + char size_l_[PADL_(size_t)]; size_t size; char size_r_[PADR_(size_t)]; + char offset_l_[PADL_(size_t)]; size_t offset; char offset_r_[PADR_(size_t)]; + char scale_l_[PADL_(u_int)]; u_int scale; char scale_r_[PADR_(u_int)]; +}; +struct ktrace_args { + char fname_l_[PADL_(const char *)]; const char * fname; char fname_r_[PADR_(const char *)]; + char ops_l_[PADL_(int)]; int ops; char ops_r_[PADR_(int)]; + char facs_l_[PADL_(int)]; int facs; char facs_r_[PADR_(int)]; + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; +}; +struct getgid_args { + register_t dummy; +}; +struct getlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; +}; +struct setlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; +}; +struct acct_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct osigpending_args { + register_t dummy; +}; +struct sigaltstack_args { + char ss_l_[PADL_(stack_t *)]; stack_t * ss; char ss_r_[PADR_(stack_t *)]; + char oss_l_[PADL_(stack_t *)]; stack_t * oss; char oss_r_[PADR_(stack_t *)]; +}; +struct ioctl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char com_l_[PADL_(u_long)]; u_long com; char com_r_[PADR_(u_long)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct reboot_args { + char opt_l_[PADL_(int)]; int opt; char opt_r_[PADR_(int)]; +}; +struct revoke_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct symlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct readlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(int)]; int count; char count_r_[PADR_(int)]; +}; +struct execve_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char argv_l_[PADL_(char **)]; char ** argv; char argv_r_[PADR_(char **)]; + char envv_l_[PADL_(char **)]; char ** envv; char envv_r_[PADR_(char **)]; +}; +struct umask_args { + char newmask_l_[PADL_(int)]; int newmask; char newmask_r_[PADR_(int)]; +}; +struct chroot_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct getpagesize_args { + register_t dummy; +}; +struct msync_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct vfork_args { + register_t dummy; +}; +struct sbrk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct sstk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct ovadvise_args { + char anom_l_[PADL_(int)]; int anom; char anom_r_[PADR_(int)]; +}; +struct munmap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct mprotect_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; +}; +struct madvise_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char behav_l_[PADL_(int)]; int behav; char behav_r_[PADR_(int)]; +}; +struct mincore_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char vec_l_[PADL_(char *)]; char * vec; char vec_r_[PADR_(char *)]; +}; +struct getgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct setgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct getpgrp_args { + register_t dummy; +}; +struct setpgid_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; +}; +struct setitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; + char oitv_l_[PADL_(struct itimerval *)]; struct itimerval * oitv; char oitv_r_[PADR_(struct itimerval *)]; +}; +struct owait_args { + register_t dummy; +}; +struct swapon_args { + char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; +}; +struct getitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; +}; +struct getdtablesize_args { + register_t dummy; +}; +struct dup2_args { + char from_l_[PADL_(u_int)]; u_int from; char from_r_[PADR_(u_int)]; + char to_l_[PADL_(u_int)]; u_int to; char to_r_[PADR_(u_int)]; +}; +struct fcntl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(long)]; long arg; char arg_r_[PADR_(long)]; +}; +struct select_args { + char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)]; + char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)]; + char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)]; + char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)]; + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; +}; +struct fsync_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct setpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char prio_l_[PADL_(int)]; int prio; char prio_r_[PADR_(int)]; +}; +struct socket_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; +}; +struct connect_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct getpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; +}; +struct osigreturn_args { + char sigcntxp_l_[PADL_(struct osigcontext *)]; struct osigcontext * sigcntxp; char sigcntxp_r_[PADR_(struct osigcontext *)]; +}; +struct bind_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct setsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char valsize_l_[PADL_(int)]; int valsize; char valsize_r_[PADR_(int)]; +}; +struct listen_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char backlog_l_[PADL_(int)]; int backlog; char backlog_r_[PADR_(int)]; +}; +struct gettimeofday_args { + char tp_l_[PADL_(struct timeval *)]; struct timeval * tp; char tp_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct getrusage_args { + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct getsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char avalsize_l_[PADL_(int *)]; int * avalsize; char avalsize_r_[PADR_(int *)]; +}; +struct readv_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct writev_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct settimeofday_args { + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct fchown_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct fchmod_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct setreuid_args { + char ruid_l_[PADL_(int)]; int ruid; char ruid_r_[PADR_(int)]; + char euid_l_[PADL_(int)]; int euid; char euid_r_[PADR_(int)]; +}; +struct setregid_args { + char rgid_l_[PADL_(int)]; int rgid; char rgid_r_[PADR_(int)]; + char egid_l_[PADL_(int)]; int egid; char egid_r_[PADR_(int)]; +}; +struct rename_args { + char from_l_[PADL_(char *)]; char * from; char from_r_[PADR_(char *)]; + char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)]; +}; +struct flock_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct mkfifo_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct sendto_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char to_l_[PADL_(caddr_t)]; caddr_t to; char to_r_[PADR_(caddr_t)]; + char tolen_l_[PADL_(int)]; int tolen; char tolen_r_[PADR_(int)]; +}; +struct shutdown_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct socketpair_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; + char rsv_l_[PADL_(int *)]; int * rsv; char rsv_r_[PADR_(int *)]; +}; +struct mkdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct rmdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct utimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct adjtime_args { + char delta_l_[PADL_(struct timeval *)]; struct timeval * delta; char delta_r_[PADR_(struct timeval *)]; + char olddelta_l_[PADL_(struct timeval *)]; struct timeval * olddelta; char olddelta_r_[PADR_(struct timeval *)]; +}; +struct ogethostid_args { + register_t dummy; +}; +struct setsid_args { + register_t dummy; +}; +struct quotactl_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char arg_l_[PADL_(caddr_t)]; caddr_t arg; char arg_r_[PADR_(caddr_t)]; +}; +struct oquota_args { + register_t dummy; +}; +struct nfssvc_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct statfs_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fstatfs_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct getfh_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char fhp_l_[PADL_(struct fhandle *)]; struct fhandle * fhp; char fhp_r_[PADR_(struct fhandle *)]; +}; +struct getdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct setdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct uname_args { + char name_l_[PADL_(struct utsname *)]; struct utsname * name; char name_r_[PADR_(struct utsname *)]; +}; +struct sysarch_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char parms_l_[PADL_(char *)]; char * parms; char parms_r_[PADR_(char *)]; +}; +struct rtprio_args { + char function_l_[PADL_(int)]; int function; char function_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char rtp_l_[PADL_(struct rtprio *)]; struct rtprio * rtp; char rtp_r_[PADR_(struct rtprio *)]; +}; +struct semsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; +}; +struct msgsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; + char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)]; +}; +struct shmsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; +}; +struct pread_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct pwrite_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct ntp_adjtime_args { + char tp_l_[PADL_(struct timex *)]; struct timex * tp; char tp_r_[PADR_(struct timex *)]; +}; +struct setgid_args { + char gid_l_[PADL_(gid_t)]; gid_t gid; char gid_r_[PADR_(gid_t)]; +}; +struct setegid_args { + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; +}; +struct seteuid_args { + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; +}; +struct stat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct fstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct lstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct pathconf_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct fpathconf_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct __getrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct __setrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct getdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +struct mmap_args { + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char pos_l_[PADL_(off_t)]; off_t pos; char pos_r_[PADR_(off_t)]; +}; +struct lseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct truncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct ftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct sysctl_args { + char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; + char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)]; + char oldlenp_l_[PADL_(size_t *)]; size_t * oldlenp; char oldlenp_r_[PADR_(size_t *)]; + char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)]; + char newlen_l_[PADL_(size_t)]; size_t newlen; char newlen_r_[PADR_(size_t)]; +}; +struct mlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct munlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct undelete_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct futimes_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct getpgid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct __semctl_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(union semun *)]; union semun * arg; char arg_r_[PADR_(union semun *)]; +}; +struct semget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char nsems_l_[PADL_(int)]; int nsems; char nsems_r_[PADR_(int)]; + char semflg_l_[PADL_(int)]; int semflg; char semflg_r_[PADR_(int)]; +}; +struct semop_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char sops_l_[PADL_(struct sembuf *)]; struct sembuf * sops; char sops_r_[PADR_(struct sembuf *)]; + char nsops_l_[PADL_(u_int)]; u_int nsops; char nsops_r_[PADR_(u_int)]; +}; +struct msgctl_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct msqid_ds *)]; struct msqid_ds * buf; char buf_r_[PADR_(struct msqid_ds *)]; +}; +struct msgget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgsnd_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgrcv_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct shmat_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct shmctl_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct shmid_ds *)]; struct shmid_ds * buf; char buf_r_[PADR_(struct shmid_ds *)]; +}; +struct shmdt_args { + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; +}; +struct shmget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char size_l_[PADL_(int)]; int size; char size_r_[PADR_(int)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct clock_gettime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct clock_settime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(const struct timespec *)]; const struct timespec * tp; char tp_r_[PADR_(const struct timespec *)]; +}; +struct clock_getres_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct nanosleep_args { + char rqtp_l_[PADL_(const struct timespec *)]; const struct timespec * rqtp; char rqtp_r_[PADR_(const struct timespec *)]; + char rmtp_l_[PADL_(struct timespec *)]; struct timespec * rmtp; char rmtp_r_[PADR_(struct timespec *)]; +}; +struct minherit_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char inherit_l_[PADL_(int)]; int inherit; char inherit_r_[PADR_(int)]; +}; +struct rfork_args { + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct openbsd_poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct issetugid_args { + register_t dummy; +}; +struct lchown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct getdents_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(size_t)]; size_t count; char count_r_[PADR_(size_t)]; +}; +struct lchmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(mode_t)]; mode_t mode; char mode_r_[PADR_(mode_t)]; +}; +struct lutimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct nstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct nfstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct nstat *)]; struct nstat * sb; char sb_r_[PADR_(struct nstat *)]; +}; +struct nlstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct fhstatfs_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fhopen_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fhstat_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct modnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modstat_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; + char stat_l_[PADL_(struct module_stat *)]; struct module_stat * stat; char stat_r_[PADR_(struct module_stat *)]; +}; +struct modfnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modfind_args { + char name_l_[PADL_(const char *)]; const char * name; char name_r_[PADR_(const char *)]; +}; +struct kldload_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldunload_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldfind_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldnext_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldstat_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char stat_l_[PADL_(struct kld_file_stat *)]; struct kld_file_stat * stat; char stat_r_[PADR_(struct kld_file_stat *)]; +}; +struct kldfirstmod_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct getsid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct setresuid_args { + char ruid_l_[PADL_(uid_t)]; uid_t ruid; char ruid_r_[PADR_(uid_t)]; + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; + char suid_l_[PADL_(uid_t)]; uid_t suid; char suid_r_[PADR_(uid_t)]; +}; +struct setresgid_args { + char rgid_l_[PADL_(gid_t)]; gid_t rgid; char rgid_r_[PADR_(gid_t)]; + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; + char sgid_l_[PADL_(gid_t)]; gid_t sgid; char sgid_r_[PADR_(gid_t)]; +}; +struct aio_return_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_suspend_args { + char aiocbp_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * aiocbp; char aiocbp_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct aio_cancel_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_error_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_read_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_write_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct lio_listio_args { + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char acb_list_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * acb_list; char acb_list_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char sig_l_[PADL_(struct sigevent *)]; struct sigevent * sig; char sig_r_[PADR_(struct sigevent *)]; +}; +struct yield_args { + register_t dummy; +}; +struct mlockall_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct munlockall_args { + register_t dummy; +}; +struct __getcwd_args { + char buf_l_[PADL_(u_char *)]; u_char * buf; char buf_r_[PADR_(u_char *)]; + char buflen_l_[PADL_(u_int)]; u_int buflen; char buflen_r_[PADR_(u_int)]; +}; +struct sched_setparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(struct sched_param *)]; struct sched_param * param; char param_r_[PADR_(struct sched_param *)]; +}; +struct sched_setscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct sched_yield_args { + register_t dummy; +}; +struct sched_get_priority_max_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_get_priority_min_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_rr_get_interval_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char interval_l_[PADL_(struct timespec *)]; struct timespec * interval; char interval_r_[PADR_(struct timespec *)]; +}; +struct utrace_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct sendfile_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; + char hdtr_l_[PADL_(struct sf_hdtr *)]; struct sf_hdtr * hdtr; char hdtr_r_[PADR_(struct sf_hdtr *)]; + char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kldsym_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; +}; +struct jail_args { + char jail_l_[PADL_(struct jail *)]; struct jail * jail; char jail_r_[PADR_(struct jail *)]; +}; +struct sigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)]; + char oset_l_[PADL_(sigset_t *)]; sigset_t * oset; char oset_r_[PADR_(sigset_t *)]; +}; +struct sigsuspend_args { + char sigmask_l_[PADL_(const sigset_t *)]; const sigset_t * sigmask; char sigmask_r_[PADR_(const sigset_t *)]; +}; +struct sigaction_args { + char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)]; + char act_l_[PADL_(const struct sigaction *)]; const struct sigaction * act; char act_r_[PADR_(const struct sigaction *)]; + char oact_l_[PADL_(struct sigaction *)]; struct sigaction * oact; char oact_r_[PADR_(struct sigaction *)]; +}; +struct sigpending_args { + char set_l_[PADL_(sigset_t *)]; sigset_t * set; char set_r_[PADR_(sigset_t *)]; +}; +struct sigreturn_args { + char sigcntxp_l_[PADL_(const struct __ucontext *)]; const struct __ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct __ucontext *)]; +}; +struct __acl_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_get_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_delete_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_aclcheck_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_aclcheck_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct extattrctl_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct extattr_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct aio_waitcomplete_args { + char aiocbp_l_[PADL_(struct aiocb **)]; struct aiocb ** aiocbp; char aiocbp_r_[PADR_(struct aiocb **)]; + char timeout_l_[PADL_(struct timespec *)]; struct timespec * timeout; char timeout_r_[PADR_(struct timespec *)]; +}; +struct getresuid_args { + char ruid_l_[PADL_(uid_t *)]; uid_t * ruid; char ruid_r_[PADR_(uid_t *)]; + char euid_l_[PADL_(uid_t *)]; uid_t * euid; char euid_r_[PADR_(uid_t *)]; + char suid_l_[PADL_(uid_t *)]; uid_t * suid; char suid_r_[PADR_(uid_t *)]; +}; +struct getresgid_args { + char rgid_l_[PADL_(gid_t *)]; gid_t * rgid; char rgid_r_[PADR_(gid_t *)]; + char egid_l_[PADL_(gid_t *)]; gid_t * egid; char egid_r_[PADR_(gid_t *)]; + char sgid_l_[PADL_(gid_t *)]; gid_t * sgid; char sgid_r_[PADR_(gid_t *)]; +}; +struct kqueue_args { + register_t dummy; +}; +struct kevent_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char changelist_l_[PADL_(const struct kevent *)]; const struct kevent * changelist; char changelist_r_[PADR_(const struct kevent *)]; + char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)]; + char eventlist_l_[PADL_(struct kevent *)]; struct kevent * eventlist; char eventlist_r_[PADR_(struct kevent *)]; + char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct __cap_get_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct extattr_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct __setugid_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; +}; +struct nfsclnt_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct eaccess_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct nmount_args { + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kse_exit_args { + register_t dummy; +}; +struct kse_wakeup_args { + register_t dummy; +}; +struct kse_new_args { + char mbx_l_[PADL_(struct kse_mailbox *)]; struct kse_mailbox * mbx; char mbx_r_[PADR_(struct kse_mailbox *)]; + char new_grp_flag_l_[PADL_(int)]; int new_grp_flag; char new_grp_flag_r_[PADR_(int)]; +}; +struct thread_wakeup_args { + char tmbx_l_[PADL_(struct thread_mailbox *)]; struct thread_mailbox * tmbx; char tmbx_r_[PADR_(struct thread_mailbox *)]; +}; +struct kse_yield_args { + register_t dummy; +}; +int nosys(struct thread *, struct nosys_args *); +void sys_exit(struct thread *, struct sys_exit_args *); +int fork(struct thread *, struct fork_args *); +int read(struct thread *, struct read_args *); +int write(struct thread *, struct write_args *); +int open(struct thread *, struct open_args *); +int close(struct thread *, struct close_args *); +int wait4(struct thread *, struct wait_args *); +int link(struct thread *, struct link_args *); +int unlink(struct thread *, struct unlink_args *); +int chdir(struct thread *, struct chdir_args *); +int fchdir(struct thread *, struct fchdir_args *); +int mknod(struct thread *, struct mknod_args *); +int chmod(struct thread *, struct chmod_args *); +int chown(struct thread *, struct chown_args *); +int obreak(struct thread *, struct obreak_args *); +int getfsstat(struct thread *, struct getfsstat_args *); +int getpid(struct thread *, struct getpid_args *); +int mount(struct thread *, struct mount_args *); +int unmount(struct thread *, struct unmount_args *); +int setuid(struct thread *, struct setuid_args *); +int getuid(struct thread *, struct getuid_args *); +int geteuid(struct thread *, struct geteuid_args *); +int ptrace(struct thread *, struct ptrace_args *); +int recvmsg(struct thread *, struct recvmsg_args *); +int sendmsg(struct thread *, struct sendmsg_args *); +int recvfrom(struct thread *, struct recvfrom_args *); +int accept(struct thread *, struct accept_args *); +int getpeername(struct thread *, struct getpeername_args *); +int getsockname(struct thread *, struct getsockname_args *); +int access(struct thread *, struct access_args *); +int chflags(struct thread *, struct chflags_args *); +int fchflags(struct thread *, struct fchflags_args *); +int sync(struct thread *, struct sync_args *); +int kill(struct thread *, struct kill_args *); +int getppid(struct thread *, struct getppid_args *); +int dup(struct thread *, struct dup_args *); +int pipe(struct thread *, struct pipe_args *); +int getegid(struct thread *, struct getegid_args *); +int profil(struct thread *, struct profil_args *); +int ktrace(struct thread *, struct ktrace_args *); +int getgid(struct thread *, struct getgid_args *); +int getlogin(struct thread *, struct getlogin_args *); +int setlogin(struct thread *, struct setlogin_args *); +int acct(struct thread *, struct acct_args *); +int sigaltstack(struct thread *, struct sigaltstack_args *); +int ioctl(struct thread *, struct ioctl_args *); +int reboot(struct thread *, struct reboot_args *); +int revoke(struct thread *, struct revoke_args *); +int symlink(struct thread *, struct symlink_args *); +int readlink(struct thread *, struct readlink_args *); +int execve(struct thread *, struct execve_args *); +int umask(struct thread *, struct umask_args *); +int chroot(struct thread *, struct chroot_args *); +int msync(struct thread *, struct msync_args *); +int vfork(struct thread *, struct vfork_args *); +int sbrk(struct thread *, struct sbrk_args *); +int sstk(struct thread *, struct sstk_args *); +int ovadvise(struct thread *, struct ovadvise_args *); +int munmap(struct thread *, struct munmap_args *); +int mprotect(struct thread *, struct mprotect_args *); +int madvise(struct thread *, struct madvise_args *); +int mincore(struct thread *, struct mincore_args *); +int getgroups(struct thread *, struct getgroups_args *); +int setgroups(struct thread *, struct setgroups_args *); +int getpgrp(struct thread *, struct getpgrp_args *); +int setpgid(struct thread *, struct setpgid_args *); +int setitimer(struct thread *, struct setitimer_args *); +int swapon(struct thread *, struct swapon_args *); +int getitimer(struct thread *, struct getitimer_args *); +int getdtablesize(struct thread *, struct getdtablesize_args *); +int dup2(struct thread *, struct dup2_args *); +int fcntl(struct thread *, struct fcntl_args *); +int select(struct thread *, struct select_args *); +int fsync(struct thread *, struct fsync_args *); +int setpriority(struct thread *, struct setpriority_args *); +int socket(struct thread *, struct socket_args *); +int connect(struct thread *, struct connect_args *); +int getpriority(struct thread *, struct getpriority_args *); +int osigreturn(struct thread *, struct osigreturn_args *); +int bind(struct thread *, struct bind_args *); +int setsockopt(struct thread *, struct setsockopt_args *); +int listen(struct thread *, struct listen_args *); +int gettimeofday(struct thread *, struct gettimeofday_args *); +int getrusage(struct thread *, struct getrusage_args *); +int getsockopt(struct thread *, struct getsockopt_args *); +int readv(struct thread *, struct readv_args *); +int writev(struct thread *, struct writev_args *); +int settimeofday(struct thread *, struct settimeofday_args *); +int fchown(struct thread *, struct fchown_args *); +int fchmod(struct thread *, struct fchmod_args *); +int setreuid(struct thread *, struct setreuid_args *); +int setregid(struct thread *, struct setregid_args *); +int rename(struct thread *, struct rename_args *); +int flock(struct thread *, struct flock_args *); +int mkfifo(struct thread *, struct mkfifo_args *); +int sendto(struct thread *, struct sendto_args *); +int shutdown(struct thread *, struct shutdown_args *); +int socketpair(struct thread *, struct socketpair_args *); +int mkdir(struct thread *, struct mkdir_args *); +int rmdir(struct thread *, struct rmdir_args *); +int utimes(struct thread *, struct utimes_args *); +int adjtime(struct thread *, struct adjtime_args *); +int setsid(struct thread *, struct setsid_args *); +int quotactl(struct thread *, struct quotactl_args *); +int nfssvc(struct thread *, struct nfssvc_args *); +int statfs(struct thread *, struct statfs_args *); +int fstatfs(struct thread *, struct fstatfs_args *); +int getfh(struct thread *, struct getfh_args *); +int getdomainname(struct thread *, struct getdomainname_args *); +int setdomainname(struct thread *, struct setdomainname_args *); +int uname(struct thread *, struct uname_args *); +int sysarch(struct thread *, struct sysarch_args *); +int rtprio(struct thread *, struct rtprio_args *); +int semsys(struct thread *, struct semsys_args *); +int msgsys(struct thread *, struct msgsys_args *); +int shmsys(struct thread *, struct shmsys_args *); +int pread(struct thread *, struct pread_args *); +int pwrite(struct thread *, struct pwrite_args *); +int ntp_adjtime(struct thread *, struct ntp_adjtime_args *); +int setgid(struct thread *, struct setgid_args *); +int setegid(struct thread *, struct setegid_args *); +int seteuid(struct thread *, struct seteuid_args *); +int stat(struct thread *, struct stat_args *); +int fstat(struct thread *, struct fstat_args *); +int lstat(struct thread *, struct lstat_args *); +int pathconf(struct thread *, struct pathconf_args *); +int fpathconf(struct thread *, struct fpathconf_args *); +int getrlimit(struct thread *, struct __getrlimit_args *); +int setrlimit(struct thread *, struct __setrlimit_args *); +int getdirentries(struct thread *, struct getdirentries_args *); +int mmap(struct thread *, struct mmap_args *); +int lseek(struct thread *, struct lseek_args *); +int truncate(struct thread *, struct truncate_args *); +int ftruncate(struct thread *, struct ftruncate_args *); +int __sysctl(struct thread *, struct sysctl_args *); +int mlock(struct thread *, struct mlock_args *); +int munlock(struct thread *, struct munlock_args *); +int undelete(struct thread *, struct undelete_args *); +int futimes(struct thread *, struct futimes_args *); +int getpgid(struct thread *, struct getpgid_args *); +int poll(struct thread *, struct poll_args *); +int lkmnosys(struct thread *, struct nosys_args *); +int __semctl(struct thread *, struct __semctl_args *); +int semget(struct thread *, struct semget_args *); +int semop(struct thread *, struct semop_args *); +int msgctl(struct thread *, struct msgctl_args *); +int msgget(struct thread *, struct msgget_args *); +int msgsnd(struct thread *, struct msgsnd_args *); +int msgrcv(struct thread *, struct msgrcv_args *); +int shmat(struct thread *, struct shmat_args *); +int shmctl(struct thread *, struct shmctl_args *); +int shmdt(struct thread *, struct shmdt_args *); +int shmget(struct thread *, struct shmget_args *); +int clock_gettime(struct thread *, struct clock_gettime_args *); +int clock_settime(struct thread *, struct clock_settime_args *); +int clock_getres(struct thread *, struct clock_getres_args *); +int nanosleep(struct thread *, struct nanosleep_args *); +int minherit(struct thread *, struct minherit_args *); +int rfork(struct thread *, struct rfork_args *); +int openbsd_poll(struct thread *, struct openbsd_poll_args *); +int issetugid(struct thread *, struct issetugid_args *); +int lchown(struct thread *, struct lchown_args *); +int getdents(struct thread *, struct getdents_args *); +int lchmod(struct thread *, struct lchmod_args *); +int lutimes(struct thread *, struct lutimes_args *); +int nstat(struct thread *, struct nstat_args *); +int nfstat(struct thread *, struct nfstat_args *); +int nlstat(struct thread *, struct nlstat_args *); +int fhstatfs(struct thread *, struct fhstatfs_args *); +int fhopen(struct thread *, struct fhopen_args *); +int fhstat(struct thread *, struct fhstat_args *); +int modnext(struct thread *, struct modnext_args *); +int modstat(struct thread *, struct modstat_args *); +int modfnext(struct thread *, struct modfnext_args *); +int modfind(struct thread *, struct modfind_args *); +int kldload(struct thread *, struct kldload_args *); +int kldunload(struct thread *, struct kldunload_args *); +int kldfind(struct thread *, struct kldfind_args *); +int kldnext(struct thread *, struct kldnext_args *); +int kldstat(struct thread *, struct kldstat_args *); +int kldfirstmod(struct thread *, struct kldfirstmod_args *); +int getsid(struct thread *, struct getsid_args *); +int setresuid(struct thread *, struct setresuid_args *); +int setresgid(struct thread *, struct setresgid_args *); +int aio_return(struct thread *, struct aio_return_args *); +int aio_suspend(struct thread *, struct aio_suspend_args *); +int aio_cancel(struct thread *, struct aio_cancel_args *); +int aio_error(struct thread *, struct aio_error_args *); +int aio_read(struct thread *, struct aio_read_args *); +int aio_write(struct thread *, struct aio_write_args *); +int lio_listio(struct thread *, struct lio_listio_args *); +int yield(struct thread *, struct yield_args *); +int mlockall(struct thread *, struct mlockall_args *); +int munlockall(struct thread *, struct munlockall_args *); +int __getcwd(struct thread *, struct __getcwd_args *); +int sched_setparam(struct thread *, struct sched_setparam_args *); +int sched_getparam(struct thread *, struct sched_getparam_args *); +int sched_setscheduler(struct thread *, struct sched_setscheduler_args *); +int sched_getscheduler(struct thread *, struct sched_getscheduler_args *); +int sched_yield(struct thread *, struct sched_yield_args *); +int sched_get_priority_max(struct thread *, struct sched_get_priority_max_args *); +int sched_get_priority_min(struct thread *, struct sched_get_priority_min_args *); +int sched_rr_get_interval(struct thread *, struct sched_rr_get_interval_args *); +int utrace(struct thread *, struct utrace_args *); +int sendfile(struct thread *, struct sendfile_args *); +int kldsym(struct thread *, struct kldsym_args *); +int jail(struct thread *, struct jail_args *); +int sigprocmask(struct thread *, struct sigprocmask_args *); +int sigsuspend(struct thread *, struct sigsuspend_args *); +int sigaction(struct thread *, struct sigaction_args *); +int sigpending(struct thread *, struct sigpending_args *); +int sigreturn(struct thread *, struct sigreturn_args *); +int __acl_get_file(struct thread *, struct __acl_get_file_args *); +int __acl_set_file(struct thread *, struct __acl_set_file_args *); +int __acl_get_fd(struct thread *, struct __acl_get_fd_args *); +int __acl_set_fd(struct thread *, struct __acl_set_fd_args *); +int __acl_delete_file(struct thread *, struct __acl_delete_file_args *); +int __acl_delete_fd(struct thread *, struct __acl_delete_fd_args *); +int __acl_aclcheck_file(struct thread *, struct __acl_aclcheck_file_args *); +int __acl_aclcheck_fd(struct thread *, struct __acl_aclcheck_fd_args *); +int extattrctl(struct thread *, struct extattrctl_args *); +int extattr_set_file(struct thread *, struct extattr_set_file_args *); +int extattr_get_file(struct thread *, struct extattr_get_file_args *); +int extattr_delete_file(struct thread *, struct extattr_delete_file_args *); +int aio_waitcomplete(struct thread *, struct aio_waitcomplete_args *); +int getresuid(struct thread *, struct getresuid_args *); +int getresgid(struct thread *, struct getresgid_args *); +int kqueue(struct thread *, struct kqueue_args *); +int kevent(struct thread *, struct kevent_args *); +int __cap_get_proc(struct thread *, struct __cap_get_proc_args *); +int __cap_set_proc(struct thread *, struct __cap_set_proc_args *); +int __cap_get_fd(struct thread *, struct __cap_get_fd_args *); +int __cap_get_file(struct thread *, struct __cap_get_file_args *); +int __cap_set_fd(struct thread *, struct __cap_set_fd_args *); +int __cap_set_file(struct thread *, struct __cap_set_file_args *); +int lkmressys(struct thread *, struct nosys_args *); +int extattr_set_fd(struct thread *, struct extattr_set_fd_args *); +int extattr_get_fd(struct thread *, struct extattr_get_fd_args *); +int extattr_delete_fd(struct thread *, struct extattr_delete_fd_args *); +int __setugid(struct thread *, struct __setugid_args *); +int nfsclnt(struct thread *, struct nfsclnt_args *); +int eaccess(struct thread *, struct eaccess_args *); +int nmount(struct thread *, struct nmount_args *); +int kse_exit(struct thread *, struct kse_exit_args *); +int kse_wakeup(struct thread *, struct kse_wakeup_args *); +int kse_new(struct thread *, struct kse_new_args *); +int thread_wakeup(struct thread *, struct thread_wakeup_args *); +int kse_yield(struct thread *, struct kse_yield_args *); + +#ifdef COMPAT_43 + +struct ocreat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct olseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char offset_l_[PADL_(long)]; long offset; char offset_r_[PADR_(long)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct ostat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct olstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct osigaction_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsa_l_[PADL_(struct osigaction *)]; struct osigaction * nsa; char nsa_r_[PADR_(struct osigaction *)]; + char osa_l_[PADL_(struct osigaction *)]; struct osigaction * osa; char osa_r_[PADR_(struct osigaction *)]; +}; +struct osigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct ofstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct ostat *)]; struct ostat * sb; char sb_r_[PADR_(struct ostat *)]; +}; +struct getkerninfo_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char where_l_[PADL_(char *)]; char * where; char where_r_[PADR_(char *)]; + char size_l_[PADL_(size_t *)]; size_t * size; char size_r_[PADR_(size_t *)]; + char arg_l_[PADL_(int)]; int arg; char arg_r_[PADR_(int)]; +}; +struct ommap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pos_l_[PADL_(long)]; long pos; char pos_r_[PADR_(long)]; +}; +struct gethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct sethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct osend_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct orecv_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osigvec_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsv_l_[PADL_(struct sigvec *)]; struct sigvec * nsv; char nsv_r_[PADR_(struct sigvec *)]; + char osv_l_[PADL_(struct sigvec *)]; struct sigvec * osv; char osv_r_[PADR_(struct sigvec *)]; +}; +struct osigblock_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsetmask_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsuspend_args { + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct osigstack_args { + char nss_l_[PADL_(struct sigstack *)]; struct sigstack * nss; char nss_r_[PADR_(struct sigstack *)]; + char oss_l_[PADL_(struct sigstack *)]; struct sigstack * oss; char oss_r_[PADR_(struct sigstack *)]; +}; +struct orecvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct omsghdr *)]; struct omsghdr * msg; char msg_r_[PADR_(struct omsghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct otruncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct oftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct ogetpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct osethostid_args { + char hostid_l_[PADL_(long)]; long hostid; char hostid_r_[PADR_(long)]; +}; +struct ogetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct osetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct okillpg_args { + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct ogetdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +int ocreat(struct thread *, struct ocreat_args *); +int olseek(struct thread *, struct olseek_args *); +int ostat(struct thread *, struct ostat_args *); +int olstat(struct thread *, struct olstat_args *); +int osigaction(struct thread *, struct osigaction_args *); +int osigprocmask(struct thread *, struct osigprocmask_args *); +int osigpending(struct thread *, struct osigpending_args *); +int ofstat(struct thread *, struct ofstat_args *); +int ogetkerninfo(struct thread *, struct getkerninfo_args *); +int ogetpagesize(struct thread *, struct getpagesize_args *); +int ommap(struct thread *, struct ommap_args *); +int owait(struct thread *, struct owait_args *); +int ogethostname(struct thread *, struct gethostname_args *); +int osethostname(struct thread *, struct sethostname_args *); +int oaccept(struct thread *, struct accept_args *); +int osend(struct thread *, struct osend_args *); +int orecv(struct thread *, struct orecv_args *); +int osigvec(struct thread *, struct osigvec_args *); +int osigblock(struct thread *, struct osigblock_args *); +int osigsetmask(struct thread *, struct osigsetmask_args *); +int osigsuspend(struct thread *, struct osigsuspend_args *); +int osigstack(struct thread *, struct osigstack_args *); +int orecvmsg(struct thread *, struct orecvmsg_args *); +int osendmsg(struct thread *, struct osendmsg_args *); +int orecvfrom(struct thread *, struct recvfrom_args *); +int otruncate(struct thread *, struct otruncate_args *); +int oftruncate(struct thread *, struct oftruncate_args *); +int ogetpeername(struct thread *, struct ogetpeername_args *); +int ogethostid(struct thread *, struct ogethostid_args *); +int osethostid(struct thread *, struct osethostid_args *); +int ogetrlimit(struct thread *, struct ogetrlimit_args *); +int osetrlimit(struct thread *, struct osetrlimit_args *); +int okillpg(struct thread *, struct okillpg_args *); +int oquota(struct thread *, struct oquota_args *); +int ogetsockname(struct thread *, struct getsockname_args *); +int ogetdirentries(struct thread *, struct ogetdirentries_args *); + +#endif /* COMPAT_43 */ + +#undef PAD_ +#undef PADL_ +#undef PADR_ + +#endif /* !_IA32_SYSPROTO_H_ */ diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h new file mode 100644 index 000000000000..c9e74cf2a0e1 --- /dev/null +++ b/sys/compat/freebsd32/freebsd32_syscall.h @@ -0,0 +1,306 @@ +/* + * System call numbers. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#define IA32_SYS_syscall 0 +#define IA32_SYS_exit 1 +#define IA32_SYS_fork 2 +#define IA32_SYS_read 3 +#define IA32_SYS_write 4 +#define IA32_SYS_open 5 +#define IA32_SYS_close 6 +#define IA32_SYS_wait4 7 + /* 8 is old creat */ +#define IA32_SYS_link 9 +#define IA32_SYS_unlink 10 + /* 11 is obsolete execv */ +#define IA32_SYS_chdir 12 +#define IA32_SYS_fchdir 13 +#define IA32_SYS_mknod 14 +#define IA32_SYS_chmod 15 +#define IA32_SYS_chown 16 +#define IA32_SYS_break 17 +#define IA32_SYS_getfsstat 18 + /* 19 is old lseek */ +#define IA32_SYS_getpid 20 +#define IA32_SYS_mount 21 +#define IA32_SYS_unmount 22 +#define IA32_SYS_setuid 23 +#define IA32_SYS_getuid 24 +#define IA32_SYS_geteuid 25 +#define IA32_SYS_ptrace 26 +#define IA32_SYS_recvmsg 27 +#define IA32_SYS_sendmsg 28 +#define IA32_SYS_recvfrom 29 +#define IA32_SYS_accept 30 +#define IA32_SYS_getpeername 31 +#define IA32_SYS_getsockname 32 +#define IA32_SYS_access 33 +#define IA32_SYS_chflags 34 +#define IA32_SYS_fchflags 35 +#define IA32_SYS_sync 36 +#define IA32_SYS_kill 37 + /* 38 is old stat */ +#define IA32_SYS_getppid 39 + /* 40 is old lstat */ +#define IA32_SYS_dup 41 +#define IA32_SYS_pipe 42 +#define IA32_SYS_getegid 43 +#define IA32_SYS_profil 44 +#define IA32_SYS_ktrace 45 + /* 46 is old sigaction */ +#define IA32_SYS_getgid 47 + /* 48 is old sigprocmask */ +#define IA32_SYS_getlogin 49 +#define IA32_SYS_setlogin 50 +#define IA32_SYS_acct 51 + /* 52 is old sigpending */ +#define IA32_SYS_sigaltstack 53 +#define IA32_SYS_ioctl 54 +#define IA32_SYS_reboot 55 +#define IA32_SYS_revoke 56 +#define IA32_SYS_symlink 57 +#define IA32_SYS_readlink 58 +#define IA32_SYS_execve 59 +#define IA32_SYS_umask 60 +#define IA32_SYS_chroot 61 + /* 62 is old fstat */ + /* 63 is old getkerninfo */ + /* 64 is old getpagesize */ +#define IA32_SYS_msync 65 +#define IA32_SYS_vfork 66 + /* 67 is obsolete vread */ + /* 68 is obsolete vwrite */ +#define IA32_SYS_sbrk 69 +#define IA32_SYS_sstk 70 + /* 71 is old mmap */ +#define IA32_SYS_vadvise 72 +#define IA32_SYS_munmap 73 +#define IA32_SYS_mprotect 74 +#define IA32_SYS_madvise 75 + /* 76 is obsolete vhangup */ + /* 77 is obsolete vlimit */ +#define IA32_SYS_mincore 78 +#define IA32_SYS_getgroups 79 +#define IA32_SYS_setgroups 80 +#define IA32_SYS_getpgrp 81 +#define IA32_SYS_setpgid 82 +#define IA32_SYS_setitimer 83 + /* 84 is old wait */ +#define IA32_SYS_swapon 85 +#define IA32_SYS_getitimer 86 + /* 87 is old gethostname */ + /* 88 is old sethostname */ +#define IA32_SYS_getdtablesize 89 +#define IA32_SYS_dup2 90 +#define IA32_SYS_fcntl 92 +#define IA32_SYS_select 93 +#define IA32_SYS_fsync 95 +#define IA32_SYS_setpriority 96 +#define IA32_SYS_socket 97 +#define IA32_SYS_connect 98 + /* 99 is old accept */ +#define IA32_SYS_getpriority 100 + /* 101 is old send */ + /* 102 is old recv */ +#define IA32_SYS_osigreturn 103 +#define IA32_SYS_bind 104 +#define IA32_SYS_setsockopt 105 +#define IA32_SYS_listen 106 + /* 107 is obsolete vtimes */ + /* 108 is old sigvec */ + /* 109 is old sigblock */ + /* 110 is old sigsetmask */ + /* 111 is old sigsuspend */ + /* 112 is old sigstack */ + /* 113 is old recvmsg */ + /* 114 is old sendmsg */ + /* 115 is obsolete vtrace */ +#define IA32_SYS_gettimeofday 116 +#define IA32_SYS_getrusage 117 +#define IA32_SYS_getsockopt 118 +#define IA32_SYS_readv 120 +#define IA32_SYS_writev 121 +#define IA32_SYS_settimeofday 122 +#define IA32_SYS_fchown 123 +#define IA32_SYS_fchmod 124 + /* 125 is old recvfrom */ +#define IA32_SYS_setreuid 126 +#define IA32_SYS_setregid 127 +#define IA32_SYS_rename 128 + /* 129 is old truncate */ + /* 130 is old ftruncate */ +#define IA32_SYS_flock 131 +#define IA32_SYS_mkfifo 132 +#define IA32_SYS_sendto 133 +#define IA32_SYS_shutdown 134 +#define IA32_SYS_socketpair 135 +#define IA32_SYS_mkdir 136 +#define IA32_SYS_rmdir 137 +#define IA32_SYS_utimes 138 + /* 139 is obsolete 4.2 sigreturn */ +#define IA32_SYS_adjtime 140 + /* 141 is old getpeername */ + /* 142 is old gethostid */ + /* 143 is old sethostid */ + /* 144 is old getrlimit */ + /* 145 is old setrlimit */ + /* 146 is old killpg */ +#define IA32_SYS_setsid 147 +#define IA32_SYS_quotactl 148 + /* 149 is old quota */ + /* 150 is old getsockname */ +#define IA32_SYS_nfssvc 155 + /* 156 is old getdirentries */ +#define IA32_SYS_statfs 157 +#define IA32_SYS_fstatfs 158 +#define IA32_SYS_getfh 161 +#define IA32_SYS_getdomainname 162 +#define IA32_SYS_setdomainname 163 +#define IA32_SYS_uname 164 +#define IA32_SYS_sysarch 165 +#define IA32_SYS_rtprio 166 +#define IA32_SYS_semsys 169 +#define IA32_SYS_msgsys 170 +#define IA32_SYS_shmsys 171 +#define IA32_SYS_pread 173 +#define IA32_SYS_pwrite 174 +#define IA32_SYS_ntp_adjtime 176 +#define IA32_SYS_setgid 181 +#define IA32_SYS_setegid 182 +#define IA32_SYS_seteuid 183 +#define IA32_SYS_stat 188 +#define IA32_SYS_fstat 189 +#define IA32_SYS_lstat 190 +#define IA32_SYS_pathconf 191 +#define IA32_SYS_fpathconf 192 +#define IA32_SYS_getrlimit 194 +#define IA32_SYS_setrlimit 195 +#define IA32_SYS_getdirentries 196 +#define IA32_SYS_mmap 197 +#define IA32_SYS___syscall 198 +#define IA32_SYS_lseek 199 +#define IA32_SYS_truncate 200 +#define IA32_SYS_ftruncate 201 +#define IA32_SYS___sysctl 202 +#define IA32_SYS_mlock 203 +#define IA32_SYS_munlock 204 +#define IA32_SYS_undelete 205 +#define IA32_SYS_futimes 206 +#define IA32_SYS_getpgid 207 +#define IA32_SYS_poll 209 +#define IA32_SYS___semctl 220 +#define IA32_SYS_semget 221 +#define IA32_SYS_semop 222 +#define IA32_SYS_msgctl 224 +#define IA32_SYS_msgget 225 +#define IA32_SYS_msgsnd 226 +#define IA32_SYS_msgrcv 227 +#define IA32_SYS_shmat 228 +#define IA32_SYS_shmctl 229 +#define IA32_SYS_shmdt 230 +#define IA32_SYS_shmget 231 +#define IA32_SYS_clock_gettime 232 +#define IA32_SYS_clock_settime 233 +#define IA32_SYS_clock_getres 234 +#define IA32_SYS_nanosleep 240 +#define IA32_SYS_minherit 250 +#define IA32_SYS_rfork 251 +#define IA32_SYS_openbsd_poll 252 +#define IA32_SYS_issetugid 253 +#define IA32_SYS_lchown 254 +#define IA32_SYS_getdents 272 +#define IA32_SYS_lchmod 274 +#define IA32_SYS_netbsd_lchown 275 +#define IA32_SYS_lutimes 276 +#define IA32_SYS_netbsd_msync 277 +#define IA32_SYS_nstat 278 +#define IA32_SYS_nfstat 279 +#define IA32_SYS_nlstat 280 +#define IA32_SYS_fhstatfs 297 +#define IA32_SYS_fhopen 298 +#define IA32_SYS_fhstat 299 +#define IA32_SYS_modnext 300 +#define IA32_SYS_modstat 301 +#define IA32_SYS_modfnext 302 +#define IA32_SYS_modfind 303 +#define IA32_SYS_kldload 304 +#define IA32_SYS_kldunload 305 +#define IA32_SYS_kldfind 306 +#define IA32_SYS_kldnext 307 +#define IA32_SYS_kldstat 308 +#define IA32_SYS_kldfirstmod 309 +#define IA32_SYS_getsid 310 +#define IA32_SYS_setresuid 311 +#define IA32_SYS_setresgid 312 + /* 313 is obsolete signanosleep */ +#define IA32_SYS_aio_return 314 +#define IA32_SYS_aio_suspend 315 +#define IA32_SYS_aio_cancel 316 +#define IA32_SYS_aio_error 317 +#define IA32_SYS_aio_read 318 +#define IA32_SYS_aio_write 319 +#define IA32_SYS_lio_listio 320 +#define IA32_SYS_yield 321 + /* 322 is obsolete thr_sleep */ + /* 323 is obsolete thr_wakeup */ +#define IA32_SYS_mlockall 324 +#define IA32_SYS_munlockall 325 +#define IA32_SYS___getcwd 326 +#define IA32_SYS_sched_setparam 327 +#define IA32_SYS_sched_getparam 328 +#define IA32_SYS_sched_setscheduler 329 +#define IA32_SYS_sched_getscheduler 330 +#define IA32_SYS_sched_yield 331 +#define IA32_SYS_sched_get_priority_max 332 +#define IA32_SYS_sched_get_priority_min 333 +#define IA32_SYS_sched_rr_get_interval 334 +#define IA32_SYS_utrace 335 +#define IA32_SYS_sendfile 336 +#define IA32_SYS_kldsym 337 +#define IA32_SYS_jail 338 +#define IA32_SYS_sigprocmask 340 +#define IA32_SYS_sigsuspend 341 +#define IA32_SYS_sigaction 342 +#define IA32_SYS_sigpending 343 +#define IA32_SYS_sigreturn 344 +#define IA32_SYS___acl_get_file 347 +#define IA32_SYS___acl_set_file 348 +#define IA32_SYS___acl_get_fd 349 +#define IA32_SYS___acl_set_fd 350 +#define IA32_SYS___acl_delete_file 351 +#define IA32_SYS___acl_delete_fd 352 +#define IA32_SYS___acl_aclcheck_file 353 +#define IA32_SYS___acl_aclcheck_fd 354 +#define IA32_SYS_extattrctl 355 +#define IA32_SYS_extattr_set_file 356 +#define IA32_SYS_extattr_get_file 357 +#define IA32_SYS_extattr_delete_file 358 +#define IA32_SYS_aio_waitcomplete 359 +#define IA32_SYS_getresuid 360 +#define IA32_SYS_getresgid 361 +#define IA32_SYS_kqueue 362 +#define IA32_SYS_kevent 363 +#define IA32_SYS___cap_get_proc 364 +#define IA32_SYS___cap_set_proc 365 +#define IA32_SYS___cap_get_fd 366 +#define IA32_SYS___cap_get_file 367 +#define IA32_SYS___cap_set_fd 368 +#define IA32_SYS___cap_set_file 369 +#define IA32_SYS_extattr_set_fd 371 +#define IA32_SYS_extattr_get_fd 372 +#define IA32_SYS_extattr_delete_fd 373 +#define IA32_SYS___setugid 374 +#define IA32_SYS_nfsclnt 375 +#define IA32_SYS_eaccess 376 +#define IA32_SYS_nmount 378 +#define IA32_SYS_kse_exit 379 +#define IA32_SYS_kse_wakeup 380 +#define IA32_SYS_kse_new 381 +#define IA32_SYS_thread_wakeup 382 +#define IA32_SYS_kse_yield 383 +#define IA32_SYS_MAXSYSCALL 390 diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c new file mode 100644 index 000000000000..fa7913508c90 --- /dev/null +++ b/sys/compat/freebsd32/freebsd32_sysent.c @@ -0,0 +1,415 @@ +/* + * System call switch table. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#include "opt_compat.h" + +#include +#include +#include + +#define AS(name) (sizeof(struct name) / sizeof(register_t)) + +#ifdef COMPAT_43 +#define compat(n, name) n, (sy_call_t *)__CONCAT(o,name) +#else +#define compat(n, name) 0, (sy_call_t *)nosys +#endif + +/* The casts are bogus but will do for now. */ +struct sysent ia32_sysent[] = { + { 0, (sy_call_t *)nosys }, /* 0 = syscall */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { AS(open_args), (sy_call_t *)open }, /* 5 = open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(wait_args), (sy_call_t *)wait4 }, /* 7 = wait4 */ + { compat(AS(ocreat_args),creat) }, /* 8 = old creat */ + { AS(link_args), (sy_call_t *)link }, /* 9 = link */ + { AS(unlink_args), (sy_call_t *)unlink }, /* 10 = unlink */ + { 0, (sy_call_t *)nosys }, /* 11 = obsolete execv */ + { AS(chdir_args), (sy_call_t *)chdir }, /* 12 = chdir */ + { AS(fchdir_args), (sy_call_t *)fchdir }, /* 13 = fchdir */ + { AS(mknod_args), (sy_call_t *)mknod }, /* 14 = mknod */ + { AS(chmod_args), (sy_call_t *)chmod }, /* 15 = chmod */ + { AS(chown_args), (sy_call_t *)chown }, /* 16 = chown */ + { SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak }, /* 17 = break */ + { AS(getfsstat_args), (sy_call_t *)getfsstat }, /* 18 = getfsstat */ + { compat(AS(olseek_args),lseek) }, /* 19 = old lseek */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ + { AS(mount_args), (sy_call_t *)mount }, /* 21 = mount */ + { AS(unmount_args), (sy_call_t *)unmount }, /* 22 = unmount */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | 0, (sy_call_t *)geteuid }, /* 25 = geteuid */ + { AS(ptrace_args), (sy_call_t *)ptrace }, /* 26 = ptrace */ + { SYF_MPSAFE | AS(recvmsg_args), (sy_call_t *)recvmsg }, /* 27 = recvmsg */ + { SYF_MPSAFE | AS(sendmsg_args), (sy_call_t *)sendmsg }, /* 28 = sendmsg */ + { SYF_MPSAFE | AS(recvfrom_args), (sy_call_t *)recvfrom }, /* 29 = recvfrom */ + { SYF_MPSAFE | AS(accept_args), (sy_call_t *)accept }, /* 30 = accept */ + { SYF_MPSAFE | AS(getpeername_args), (sy_call_t *)getpeername }, /* 31 = getpeername */ + { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)getsockname }, /* 32 = getsockname */ + { AS(access_args), (sy_call_t *)access }, /* 33 = access */ + { AS(chflags_args), (sy_call_t *)chflags }, /* 34 = chflags */ + { AS(fchflags_args), (sy_call_t *)fchflags }, /* 35 = fchflags */ + { 0, (sy_call_t *)sync }, /* 36 = sync */ + { SYF_MPSAFE | AS(kill_args), (sy_call_t *)kill }, /* 37 = kill */ + { compat(AS(ostat_args),stat) }, /* 38 = old stat */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid }, /* 39 = getppid */ + { compat(AS(olstat_args),lstat) }, /* 40 = old lstat */ + { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)getegid }, /* 43 = getegid */ + { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil }, /* 44 = profil */ + { AS(ktrace_args), (sy_call_t *)ktrace }, /* 45 = ktrace */ + { compat(SYF_MPSAFE | AS(osigaction_args),sigaction) }, /* 46 = old sigaction */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { compat(SYF_MPSAFE | AS(osigprocmask_args),sigprocmask) }, /* 48 = old sigprocmask */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ + { compat(SYF_MPSAFE | 0,sigpending) }, /* 52 = old sigpending */ + { SYF_MPSAFE | AS(sigaltstack_args), (sy_call_t *)sigaltstack }, /* 53 = sigaltstack */ + { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl }, /* 54 = ioctl */ + { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot }, /* 55 = reboot */ + { AS(revoke_args), (sy_call_t *)revoke }, /* 56 = revoke */ + { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ + { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ + { SYF_MPSAFE | AS(execve_args), (sy_call_t *)execve }, /* 59 = execve */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ + { compat(SYF_MPSAFE | AS(ofstat_args),fstat) }, /* 62 = old fstat */ + { compat(SYF_MPSAFE | AS(getkerninfo_args),getkerninfo) }, /* 63 = old getkerninfo */ + { compat(SYF_MPSAFE | 0,getpagesize) }, /* 64 = old getpagesize */ + { AS(msync_args), (sy_call_t *)msync }, /* 65 = msync */ + { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ + { 0, (sy_call_t *)nosys }, /* 67 = obsolete vread */ + { 0, (sy_call_t *)nosys }, /* 68 = obsolete vwrite */ + { SYF_MPSAFE | AS(sbrk_args), (sy_call_t *)sbrk }, /* 69 = sbrk */ + { SYF_MPSAFE | AS(sstk_args), (sy_call_t *)sstk }, /* 70 = sstk */ + { compat(SYF_MPSAFE | AS(ommap_args),mmap) }, /* 71 = old mmap */ + { SYF_MPSAFE | AS(ovadvise_args), (sy_call_t *)ovadvise }, /* 72 = vadvise */ + { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap }, /* 73 = munmap */ + { SYF_MPSAFE | AS(mprotect_args), (sy_call_t *)mprotect }, /* 74 = mprotect */ + { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise }, /* 75 = madvise */ + { 0, (sy_call_t *)nosys }, /* 76 = obsolete vhangup */ + { 0, (sy_call_t *)nosys }, /* 77 = obsolete vlimit */ + { SYF_MPSAFE | AS(mincore_args), (sy_call_t *)mincore }, /* 78 = mincore */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 81 = getpgrp */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setitimer_args), (sy_call_t *)setitimer }, /* 83 = setitimer */ + { compat(SYF_MPSAFE | 0,wait) }, /* 84 = old wait */ + { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon }, /* 85 = swapon */ + { SYF_MPSAFE | AS(getitimer_args), (sy_call_t *)getitimer }, /* 86 = getitimer */ + { compat(SYF_MPSAFE | AS(gethostname_args),gethostname) }, /* 87 = old gethostname */ + { compat(SYF_MPSAFE | AS(sethostname_args),sethostname) }, /* 88 = old sethostname */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { 0, (sy_call_t *)nosys }, /* 91 = getdopt */ + { SYF_MPSAFE | AS(fcntl_args), (sy_call_t *)fcntl }, /* 92 = fcntl */ + { SYF_MPSAFE | AS(select_args), (sy_call_t *)select }, /* 93 = select */ + { 0, (sy_call_t *)nosys }, /* 94 = setdopt */ + { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(socket_args), (sy_call_t *)socket }, /* 97 = socket */ + { SYF_MPSAFE | AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ + { compat(SYF_MPSAFE | AS(accept_args),accept) }, /* 99 = old accept */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { compat(SYF_MPSAFE | AS(osend_args),send) }, /* 101 = old send */ + { compat(SYF_MPSAFE | AS(orecv_args),recv) }, /* 102 = old recv */ + { AS(osigreturn_args), (sy_call_t *)osigreturn }, /* 103 = osigreturn */ + { SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ + { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ + { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ + { 0, (sy_call_t *)nosys }, /* 107 = obsolete vtimes */ + { compat(SYF_MPSAFE | AS(osigvec_args),sigvec) }, /* 108 = old sigvec */ + { compat(SYF_MPSAFE | AS(osigblock_args),sigblock) }, /* 109 = old sigblock */ + { compat(SYF_MPSAFE | AS(osigsetmask_args),sigsetmask) }, /* 110 = old sigsetmask */ + { compat(SYF_MPSAFE | AS(osigsuspend_args),sigsuspend) }, /* 111 = old sigsuspend */ + { compat(SYF_MPSAFE | AS(osigstack_args),sigstack) }, /* 112 = old sigstack */ + { compat(SYF_MPSAFE | AS(orecvmsg_args),recvmsg) }, /* 113 = old recvmsg */ + { compat(SYF_MPSAFE | AS(osendmsg_args),sendmsg) }, /* 114 = old sendmsg */ + { 0, (sy_call_t *)nosys }, /* 115 = obsolete vtrace */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 116 = gettimeofday */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 117 = getrusage */ + { SYF_MPSAFE | AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ + { 0, (sy_call_t *)nosys }, /* 119 = resuba */ + { SYF_MPSAFE | AS(readv_args), (sy_call_t *)readv }, /* 120 = readv */ + { SYF_MPSAFE | AS(writev_args), (sy_call_t *)writev }, /* 121 = writev */ + { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 122 = settimeofday */ + { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ + { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ + { compat(SYF_MPSAFE | AS(recvfrom_args),recvfrom) }, /* 125 = old recvfrom */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ + { compat(AS(otruncate_args),truncate) }, /* 129 = old truncate */ + { compat(AS(oftruncate_args),ftruncate) }, /* 130 = old ftruncate */ + { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ + { AS(mkfifo_args), (sy_call_t *)mkfifo }, /* 132 = mkfifo */ + { SYF_MPSAFE | AS(sendto_args), (sy_call_t *)sendto }, /* 133 = sendto */ + { SYF_MPSAFE | AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ + { SYF_MPSAFE | AS(socketpair_args), (sy_call_t *)socketpair }, /* 135 = socketpair */ + { AS(mkdir_args), (sy_call_t *)mkdir }, /* 136 = mkdir */ + { AS(rmdir_args), (sy_call_t *)rmdir }, /* 137 = rmdir */ + { AS(utimes_args), (sy_call_t *)utimes }, /* 138 = utimes */ + { 0, (sy_call_t *)nosys }, /* 139 = obsolete 4.2 sigreturn */ + { SYF_MPSAFE | AS(adjtime_args), (sy_call_t *)adjtime }, /* 140 = adjtime */ + { compat(SYF_MPSAFE | AS(ogetpeername_args),getpeername) }, /* 141 = old getpeername */ + { compat(SYF_MPSAFE | 0,gethostid) }, /* 142 = old gethostid */ + { compat(SYF_MPSAFE | AS(osethostid_args),sethostid) }, /* 143 = old sethostid */ + { compat(SYF_MPSAFE | AS(ogetrlimit_args),getrlimit) }, /* 144 = old getrlimit */ + { compat(SYF_MPSAFE | AS(osetrlimit_args),setrlimit) }, /* 145 = old setrlimit */ + { compat(SYF_MPSAFE | AS(okillpg_args),killpg) }, /* 146 = old killpg */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { AS(quotactl_args), (sy_call_t *)quotactl }, /* 148 = quotactl */ + { compat(SYF_MPSAFE | 0,quota) }, /* 149 = old quota */ + { compat(SYF_MPSAFE | AS(getsockname_args),getsockname) }, /* 150 = old getsockname */ + { 0, (sy_call_t *)nosys }, /* 151 = sem_lock */ + { 0, (sy_call_t *)nosys }, /* 152 = sem_wakeup */ + { 0, (sy_call_t *)nosys }, /* 153 = asyncdaemon */ + { 0, (sy_call_t *)nosys }, /* 154 = nosys */ + { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys }, /* 155 = nfssvc */ + { compat(AS(ogetdirentries_args),getdirentries) }, /* 156 = old getdirentries */ + { AS(statfs_args), (sy_call_t *)statfs }, /* 157 = statfs */ + { AS(fstatfs_args), (sy_call_t *)fstatfs }, /* 158 = fstatfs */ + { 0, (sy_call_t *)nosys }, /* 159 = nosys */ + { 0, (sy_call_t *)nosys }, /* 160 = nosys */ + { AS(getfh_args), (sy_call_t *)getfh }, /* 161 = getfh */ + { SYF_MPSAFE | AS(getdomainname_args), (sy_call_t *)getdomainname }, /* 162 = getdomainname */ + { SYF_MPSAFE | AS(setdomainname_args), (sy_call_t *)setdomainname }, /* 163 = setdomainname */ + { SYF_MPSAFE | AS(uname_args), (sy_call_t *)uname }, /* 164 = uname */ + { AS(sysarch_args), (sy_call_t *)sysarch }, /* 165 = sysarch */ + { SYF_MPSAFE | AS(rtprio_args), (sy_call_t *)rtprio }, /* 166 = rtprio */ + { 0, (sy_call_t *)nosys }, /* 167 = nosys */ + { 0, (sy_call_t *)nosys }, /* 168 = nosys */ + { SYF_MPSAFE | AS(semsys_args), (sy_call_t *)lkmressys }, /* 169 = semsys */ + { SYF_MPSAFE | AS(msgsys_args), (sy_call_t *)lkmressys }, /* 170 = msgsys */ + { SYF_MPSAFE | AS(shmsys_args), (sy_call_t *)lkmressys }, /* 171 = shmsys */ + { 0, (sy_call_t *)nosys }, /* 172 = nosys */ + { SYF_MPSAFE | AS(pread_args), (sy_call_t *)pread }, /* 173 = pread */ + { SYF_MPSAFE | AS(pwrite_args), (sy_call_t *)pwrite }, /* 174 = pwrite */ + { 0, (sy_call_t *)nosys }, /* 175 = nosys */ + { SYF_MPSAFE | AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime }, /* 176 = ntp_adjtime */ + { 0, (sy_call_t *)nosys }, /* 177 = sfork */ + { 0, (sy_call_t *)nosys }, /* 178 = getdescriptor */ + { 0, (sy_call_t *)nosys }, /* 179 = setdescriptor */ + { 0, (sy_call_t *)nosys }, /* 180 = nosys */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 181 = setgid */ + { SYF_MPSAFE | AS(setegid_args), (sy_call_t *)setegid }, /* 182 = setegid */ + { SYF_MPSAFE | AS(seteuid_args), (sy_call_t *)seteuid }, /* 183 = seteuid */ + { 0, (sy_call_t *)nosys }, /* 184 = lfs_bmapv */ + { 0, (sy_call_t *)nosys }, /* 185 = lfs_markv */ + { 0, (sy_call_t *)nosys }, /* 186 = lfs_segclean */ + { 0, (sy_call_t *)nosys }, /* 187 = lfs_segwait */ + { AS(stat_args), (sy_call_t *)stat }, /* 188 = stat */ + { SYF_MPSAFE | AS(fstat_args), (sy_call_t *)fstat }, /* 189 = fstat */ + { AS(lstat_args), (sy_call_t *)lstat }, /* 190 = lstat */ + { AS(pathconf_args), (sy_call_t *)pathconf }, /* 191 = pathconf */ + { SYF_MPSAFE | AS(fpathconf_args), (sy_call_t *)fpathconf }, /* 192 = fpathconf */ + { 0, (sy_call_t *)nosys }, /* 193 = nosys */ + { SYF_MPSAFE | AS(__getrlimit_args), (sy_call_t *)getrlimit }, /* 194 = getrlimit */ + { SYF_MPSAFE | AS(__setrlimit_args), (sy_call_t *)setrlimit }, /* 195 = setrlimit */ + { AS(getdirentries_args), (sy_call_t *)getdirentries }, /* 196 = getdirentries */ + { SYF_MPSAFE | AS(mmap_args), (sy_call_t *)mmap }, /* 197 = mmap */ + { 0, (sy_call_t *)nosys }, /* 198 = __syscall */ + { AS(lseek_args), (sy_call_t *)lseek }, /* 199 = lseek */ + { AS(truncate_args), (sy_call_t *)truncate }, /* 200 = truncate */ + { AS(ftruncate_args), (sy_call_t *)ftruncate }, /* 201 = ftruncate */ + { SYF_MPSAFE | AS(sysctl_args), (sy_call_t *)__sysctl }, /* 202 = __sysctl */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 203 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 204 = munlock */ + { AS(undelete_args), (sy_call_t *)undelete }, /* 205 = undelete */ + { AS(futimes_args), (sy_call_t *)futimes }, /* 206 = futimes */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 207 = getpgid */ + { 0, (sy_call_t *)nosys }, /* 208 = newreboot */ + { SYF_MPSAFE | AS(poll_args), (sy_call_t *)poll }, /* 209 = poll */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 210 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 211 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 212 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 213 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 214 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 215 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 216 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 217 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 218 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 219 = lkmnosys */ + { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)lkmressys }, /* 220 = __semctl */ + { SYF_MPSAFE | AS(semget_args), (sy_call_t *)lkmressys }, /* 221 = semget */ + { SYF_MPSAFE | AS(semop_args), (sy_call_t *)lkmressys }, /* 222 = semop */ + { 0, (sy_call_t *)nosys }, /* 223 = semconfig */ + { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)lkmressys }, /* 224 = msgctl */ + { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)lkmressys }, /* 225 = msgget */ + { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)lkmressys }, /* 226 = msgsnd */ + { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)lkmressys }, /* 227 = msgrcv */ + { SYF_MPSAFE | AS(shmat_args), (sy_call_t *)lkmressys }, /* 228 = shmat */ + { SYF_MPSAFE | AS(shmctl_args), (sy_call_t *)lkmressys }, /* 229 = shmctl */ + { SYF_MPSAFE | AS(shmdt_args), (sy_call_t *)lkmressys }, /* 230 = shmdt */ + { SYF_MPSAFE | AS(shmget_args), (sy_call_t *)lkmressys }, /* 231 = shmget */ + { SYF_MPSAFE | AS(clock_gettime_args), (sy_call_t *)clock_gettime }, /* 232 = clock_gettime */ + { SYF_MPSAFE | AS(clock_settime_args), (sy_call_t *)clock_settime }, /* 233 = clock_settime */ + { SYF_MPSAFE | AS(clock_getres_args), (sy_call_t *)clock_getres }, /* 234 = clock_getres */ + { 0, (sy_call_t *)nosys }, /* 235 = timer_create */ + { 0, (sy_call_t *)nosys }, /* 236 = timer_delete */ + { 0, (sy_call_t *)nosys }, /* 237 = timer_settime */ + { 0, (sy_call_t *)nosys }, /* 238 = timer_gettime */ + { 0, (sy_call_t *)nosys }, /* 239 = timer_getoverrun */ + { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 240 = nanosleep */ + { 0, (sy_call_t *)nosys }, /* 241 = nosys */ + { 0, (sy_call_t *)nosys }, /* 242 = nosys */ + { 0, (sy_call_t *)nosys }, /* 243 = nosys */ + { 0, (sy_call_t *)nosys }, /* 244 = nosys */ + { 0, (sy_call_t *)nosys }, /* 245 = nosys */ + { 0, (sy_call_t *)nosys }, /* 246 = nosys */ + { 0, (sy_call_t *)nosys }, /* 247 = nosys */ + { 0, (sy_call_t *)nosys }, /* 248 = nosys */ + { 0, (sy_call_t *)nosys }, /* 249 = nosys */ + { SYF_MPSAFE | AS(minherit_args), (sy_call_t *)minherit }, /* 250 = minherit */ + { SYF_MPSAFE | AS(rfork_args), (sy_call_t *)rfork }, /* 251 = rfork */ + { SYF_MPSAFE | AS(openbsd_poll_args), (sy_call_t *)openbsd_poll }, /* 252 = openbsd_poll */ + { 0, (sy_call_t *)issetugid }, /* 253 = issetugid */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 254 = lchown */ + { 0, (sy_call_t *)nosys }, /* 255 = nosys */ + { 0, (sy_call_t *)nosys }, /* 256 = nosys */ + { 0, (sy_call_t *)nosys }, /* 257 = nosys */ + { 0, (sy_call_t *)nosys }, /* 258 = nosys */ + { 0, (sy_call_t *)nosys }, /* 259 = nosys */ + { 0, (sy_call_t *)nosys }, /* 260 = nosys */ + { 0, (sy_call_t *)nosys }, /* 261 = nosys */ + { 0, (sy_call_t *)nosys }, /* 262 = nosys */ + { 0, (sy_call_t *)nosys }, /* 263 = nosys */ + { 0, (sy_call_t *)nosys }, /* 264 = nosys */ + { 0, (sy_call_t *)nosys }, /* 265 = nosys */ + { 0, (sy_call_t *)nosys }, /* 266 = nosys */ + { 0, (sy_call_t *)nosys }, /* 267 = nosys */ + { 0, (sy_call_t *)nosys }, /* 268 = nosys */ + { 0, (sy_call_t *)nosys }, /* 269 = nosys */ + { 0, (sy_call_t *)nosys }, /* 270 = nosys */ + { 0, (sy_call_t *)nosys }, /* 271 = nosys */ + { AS(getdents_args), (sy_call_t *)getdents }, /* 272 = getdents */ + { 0, (sy_call_t *)nosys }, /* 273 = nosys */ + { AS(lchmod_args), (sy_call_t *)lchmod }, /* 274 = lchmod */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 275 = netbsd_lchown */ + { AS(lutimes_args), (sy_call_t *)lutimes }, /* 276 = lutimes */ + { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync }, /* 277 = netbsd_msync */ + { AS(nstat_args), (sy_call_t *)nstat }, /* 278 = nstat */ + { SYF_MPSAFE | AS(nfstat_args), (sy_call_t *)nfstat }, /* 279 = nfstat */ + { AS(nlstat_args), (sy_call_t *)nlstat }, /* 280 = nlstat */ + { 0, (sy_call_t *)nosys }, /* 281 = nosys */ + { 0, (sy_call_t *)nosys }, /* 282 = nosys */ + { 0, (sy_call_t *)nosys }, /* 283 = nosys */ + { 0, (sy_call_t *)nosys }, /* 284 = nosys */ + { 0, (sy_call_t *)nosys }, /* 285 = nosys */ + { 0, (sy_call_t *)nosys }, /* 286 = nosys */ + { 0, (sy_call_t *)nosys }, /* 287 = nosys */ + { 0, (sy_call_t *)nosys }, /* 288 = nosys */ + { 0, (sy_call_t *)nosys }, /* 289 = nosys */ + { 0, (sy_call_t *)nosys }, /* 290 = nosys */ + { 0, (sy_call_t *)nosys }, /* 291 = nosys */ + { 0, (sy_call_t *)nosys }, /* 292 = nosys */ + { 0, (sy_call_t *)nosys }, /* 293 = nosys */ + { 0, (sy_call_t *)nosys }, /* 294 = nosys */ + { 0, (sy_call_t *)nosys }, /* 295 = nosys */ + { 0, (sy_call_t *)nosys }, /* 296 = nosys */ + { AS(fhstatfs_args), (sy_call_t *)fhstatfs }, /* 297 = fhstatfs */ + { AS(fhopen_args), (sy_call_t *)fhopen }, /* 298 = fhopen */ + { AS(fhstat_args), (sy_call_t *)fhstat }, /* 299 = fhstat */ + { SYF_MPSAFE | AS(modnext_args), (sy_call_t *)modnext }, /* 300 = modnext */ + { SYF_MPSAFE | AS(modstat_args), (sy_call_t *)modstat }, /* 301 = modstat */ + { SYF_MPSAFE | AS(modfnext_args), (sy_call_t *)modfnext }, /* 302 = modfnext */ + { SYF_MPSAFE | AS(modfind_args), (sy_call_t *)modfind }, /* 303 = modfind */ + { SYF_MPSAFE | AS(kldload_args), (sy_call_t *)kldload }, /* 304 = kldload */ + { SYF_MPSAFE | AS(kldunload_args), (sy_call_t *)kldunload }, /* 305 = kldunload */ + { SYF_MPSAFE | AS(kldfind_args), (sy_call_t *)kldfind }, /* 306 = kldfind */ + { SYF_MPSAFE | AS(kldnext_args), (sy_call_t *)kldnext }, /* 307 = kldnext */ + { SYF_MPSAFE | AS(kldstat_args), (sy_call_t *)kldstat }, /* 308 = kldstat */ + { SYF_MPSAFE | AS(kldfirstmod_args), (sy_call_t *)kldfirstmod }, /* 309 = kldfirstmod */ + { SYF_MPSAFE | AS(getsid_args), (sy_call_t *)getsid }, /* 310 = getsid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 311 = setresuid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 312 = setresgid */ + { 0, (sy_call_t *)nosys }, /* 313 = obsolete signanosleep */ + { AS(aio_return_args), (sy_call_t *)lkmressys }, /* 314 = aio_return */ + { AS(aio_suspend_args), (sy_call_t *)lkmressys }, /* 315 = aio_suspend */ + { AS(aio_cancel_args), (sy_call_t *)lkmressys }, /* 316 = aio_cancel */ + { AS(aio_error_args), (sy_call_t *)lkmressys }, /* 317 = aio_error */ + { AS(aio_read_args), (sy_call_t *)lkmressys }, /* 318 = aio_read */ + { AS(aio_write_args), (sy_call_t *)lkmressys }, /* 319 = aio_write */ + { AS(lio_listio_args), (sy_call_t *)lkmressys }, /* 320 = lio_listio */ + { SYF_MPSAFE | 0, (sy_call_t *)yield }, /* 321 = yield */ + { 0, (sy_call_t *)nosys }, /* 322 = obsolete thr_sleep */ + { 0, (sy_call_t *)nosys }, /* 323 = obsolete thr_wakeup */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 324 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 325 = munlockall */ + { AS(__getcwd_args), (sy_call_t *)__getcwd }, /* 326 = __getcwd */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 327 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 328 = sched_getparam */ + { SYF_MPSAFE | AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler }, /* 329 = sched_setscheduler */ + { SYF_MPSAFE | AS(sched_getscheduler_args), (sy_call_t *)sched_getscheduler }, /* 330 = sched_getscheduler */ + { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 331 = sched_yield */ + { SYF_MPSAFE | AS(sched_get_priority_max_args), (sy_call_t *)sched_get_priority_max }, /* 332 = sched_get_priority_max */ + { SYF_MPSAFE | AS(sched_get_priority_min_args), (sy_call_t *)sched_get_priority_min }, /* 333 = sched_get_priority_min */ + { SYF_MPSAFE | AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 334 = sched_rr_get_interval */ + { AS(utrace_args), (sy_call_t *)utrace }, /* 335 = utrace */ + { SYF_MPSAFE | AS(sendfile_args), (sy_call_t *)sendfile }, /* 336 = sendfile */ + { AS(kldsym_args), (sy_call_t *)kldsym }, /* 337 = kldsym */ + { SYF_MPSAFE | AS(jail_args), (sy_call_t *)jail }, /* 338 = jail */ + { 0, (sy_call_t *)nosys }, /* 339 = pioctl */ + { SYF_MPSAFE | AS(sigprocmask_args), (sy_call_t *)sigprocmask }, /* 340 = sigprocmask */ + { SYF_MPSAFE | AS(sigsuspend_args), (sy_call_t *)sigsuspend }, /* 341 = sigsuspend */ + { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction }, /* 342 = sigaction */ + { SYF_MPSAFE | AS(sigpending_args), (sy_call_t *)sigpending }, /* 343 = sigpending */ + { AS(sigreturn_args), (sy_call_t *)sigreturn }, /* 344 = sigreturn */ + { 0, (sy_call_t *)nosys }, /* 345 = sigtimedwait */ + { 0, (sy_call_t *)nosys }, /* 346 = sigwaitinfo */ + { SYF_MPSAFE | AS(__acl_get_file_args), (sy_call_t *)__acl_get_file }, /* 347 = __acl_get_file */ + { SYF_MPSAFE | AS(__acl_set_file_args), (sy_call_t *)__acl_set_file }, /* 348 = __acl_set_file */ + { SYF_MPSAFE | AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd }, /* 349 = __acl_get_fd */ + { SYF_MPSAFE | AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd }, /* 350 = __acl_set_fd */ + { SYF_MPSAFE | AS(__acl_delete_file_args), (sy_call_t *)__acl_delete_file }, /* 351 = __acl_delete_file */ + { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd }, /* 352 = __acl_delete_fd */ + { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file }, /* 353 = __acl_aclcheck_file */ + { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd }, /* 354 = __acl_aclcheck_fd */ + { AS(extattrctl_args), (sy_call_t *)extattrctl }, /* 355 = extattrctl */ + { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file }, /* 356 = extattr_set_file */ + { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file }, /* 357 = extattr_get_file */ + { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file }, /* 358 = extattr_delete_file */ + { AS(aio_waitcomplete_args), (sy_call_t *)lkmressys }, /* 359 = aio_waitcomplete */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 360 = getresuid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 361 = getresgid */ + { SYF_MPSAFE | 0, (sy_call_t *)kqueue }, /* 362 = kqueue */ + { SYF_MPSAFE | AS(kevent_args), (sy_call_t *)kevent }, /* 363 = kevent */ + { AS(__cap_get_proc_args), (sy_call_t *)__cap_get_proc }, /* 364 = __cap_get_proc */ + { AS(__cap_set_proc_args), (sy_call_t *)__cap_set_proc }, /* 365 = __cap_set_proc */ + { AS(__cap_get_fd_args), (sy_call_t *)__cap_get_fd }, /* 366 = __cap_get_fd */ + { AS(__cap_get_file_args), (sy_call_t *)__cap_get_file }, /* 367 = __cap_get_file */ + { AS(__cap_set_fd_args), (sy_call_t *)__cap_set_fd }, /* 368 = __cap_set_fd */ + { AS(__cap_set_file_args), (sy_call_t *)__cap_set_file }, /* 369 = __cap_set_file */ + { AS(nosys_args), (sy_call_t *)lkmressys }, /* 370 = lkmressys */ + { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd }, /* 371 = extattr_set_fd */ + { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd }, /* 372 = extattr_get_fd */ + { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid }, /* 374 = __setugid */ + { AS(nfsclnt_args), (sy_call_t *)nosys }, /* 375 = nfsclnt */ + { AS(eaccess_args), (sy_call_t *)eaccess }, /* 376 = eaccess */ + { 0, (sy_call_t *)nosys }, /* 377 = afs_syscall */ + { AS(nmount_args), (sy_call_t *)nmount }, /* 378 = nmount */ + { 0, (sy_call_t *)kse_exit }, /* 379 = kse_exit */ + { 0, (sy_call_t *)kse_wakeup }, /* 380 = kse_wakeup */ + { AS(kse_new_args), (sy_call_t *)kse_new }, /* 381 = kse_new */ + { AS(thread_wakeup_args), (sy_call_t *)thread_wakeup }, /* 382 = thread_wakeup */ + { 0, (sy_call_t *)kse_yield }, /* 383 = kse_yield */ + { 0, (sy_call_t *)nosys }, /* 384 = __mac_get_proc */ + { 0, (sy_call_t *)nosys }, /* 385 = __mac_set_proc */ + { 0, (sy_call_t *)nosys }, /* 386 = __mac_get_fd */ + { 0, (sy_call_t *)nosys }, /* 387 = __mac_get_file */ + { 0, (sy_call_t *)nosys }, /* 388 = __mac_set_fd */ + { 0, (sy_call_t *)nosys }, /* 389 = __mac_set_file */ +}; diff --git a/sys/compat/freebsd32/syscalls.conf b/sys/compat/freebsd32/syscalls.conf new file mode 100644 index 000000000000..16d94eacaec6 --- /dev/null +++ b/sys/compat/freebsd32/syscalls.conf @@ -0,0 +1,12 @@ +# $FreeBSD$ +sysnames="/dev/null" +sysproto="ia32_proto.h" +sysproto_h=_IA32_SYSPROTO_H_ +syshdr="ia32_syscall.h" +syssw="ia32_sysent.c" +sysmk="/dev/null" +syshide="/dev/null" +syscallprefix="IA32_SYS_" +switchname="ia32_sysent" +namesname="ia32_syscallnames" +sysvec="\n" diff --git a/sys/compat/freebsd32/syscalls.master b/sys/compat/freebsd32/syscalls.master new file mode 100644 index 000000000000..347196a3da99 --- /dev/null +++ b/sys/compat/freebsd32/syscalls.master @@ -0,0 +1,562 @@ + $FreeBSD$ +; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 +; from: src/sys/kern/syscalls.master 1.107 +; +; System call name/number master file. +; Processed to created init_sysent.c, syscalls.c and syscall.h. + +; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments +; number system call number, must be in order +; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, +; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, +; [M]NOSTD +; namespc one of POSIX, BSD, NOHIDE +; name psuedo-prototype of syscall routine +; If one of the following alts is different, then all appear: +; altname name of system call if different +; alttag name of args struct tag if different from [o]`name'"_args" +; altrtyp return type if not int (bogus - syscalls always return int) +; for UNIMPL/OBSOL, name continues with comments + +; types: +; [M] e.g. like MSTD -- means the system call is MP-safe. If no +; M prefix is used, the syscall wrapper will obtain the Giant +; lock for the syscall. +; STD always included +; COMPAT included on COMPAT #ifdef +; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h +; OBSOL obsolete, not included in system, only specifies name +; UNIMPL not implemented, placeholder only +; NOSTD implemented but as a lkm that can be statically +; compiled in sysent entry will be filled with lkmsys +; so the SYSCALL_MODULE macro works + +; #ifdef's, etc. may be included, and are copied to the output files. + +#include +#include +#include + +; Reserved/unimplemented system calls in the range 0-150 inclusive +; are reserved for use in future Berkeley releases. +; Additional system calls implemented in vendor and other +; redistributions should be placed in the reserved range at the end +; of the current calls. + +0 STD NOHIDE { int nosys(void); } syscall nosys_args int +1 MSTD NOHIDE { void sys_exit(int rval); } exit sys_exit_args void +2 MSTD POSIX { int fork(void); } +3 MSTD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } +4 MSTD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } +5 STD POSIX { int open(char *path, int flags, int mode); } +; XXX should be { int open(const char *path, int flags, ...); } +; but we're not ready for `const' or varargs. +; XXX man page says `mode_t mode'. +6 MSTD POSIX { int close(int fd); } +7 MSTD BSD { int wait4(int pid, int *status, int options, \ + struct rusage *rusage); } wait4 wait_args int +8 COMPAT BSD { int creat(char *path, int mode); } +9 STD POSIX { int link(char *path, char *link); } +10 STD POSIX { int unlink(char *path); } +11 OBSOL NOHIDE execv +12 STD POSIX { int chdir(char *path); } +13 STD BSD { int fchdir(int fd); } +14 STD POSIX { int mknod(char *path, int mode, int dev); } +15 STD POSIX { int chmod(char *path, int mode); } +16 STD POSIX { int chown(char *path, int uid, int gid); } +17 MSTD BSD { int obreak(char *nsize); } break obreak_args int +18 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \ + int flags); } +19 COMPAT POSIX { long lseek(int fd, long offset, int whence); } +20 MSTD POSIX { pid_t getpid(void); } +21 STD BSD { int mount(char *type, char *path, int flags, \ + caddr_t data); } +; XXX `path' should have type `const char *' but we're not ready for that. +22 STD BSD { int unmount(char *path, int flags); } +23 MSTD POSIX { int setuid(uid_t uid); } +24 MSTD POSIX { uid_t getuid(void); } +25 MSTD POSIX { uid_t geteuid(void); } +26 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ + int data); } +27 MSTD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } +28 MSTD BSD { int sendmsg(int s, caddr_t msg, int flags); } +29 MSTD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } +30 MSTD BSD { int accept(int s, caddr_t name, int *anamelen); } +31 MSTD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +32 MSTD BSD { int getsockname(int fdes, caddr_t asa, int *alen); } +33 STD POSIX { int access(char *path, int flags); } +34 STD BSD { int chflags(char *path, int flags); } +35 STD BSD { int fchflags(int fd, int flags); } +36 STD BSD { int sync(void); } +37 MSTD POSIX { int kill(int pid, int signum); } +38 COMPAT POSIX { int stat(char *path, struct ostat *ub); } +39 MSTD POSIX { pid_t getppid(void); } +40 COMPAT POSIX { int lstat(char *path, struct ostat *ub); } +41 STD POSIX { int dup(u_int fd); } +42 STD POSIX { int pipe(void); } +43 MSTD POSIX { gid_t getegid(void); } +44 MSTD BSD { int profil(caddr_t samples, size_t size, \ + size_t offset, u_int scale); } +45 STD BSD { int ktrace(const char *fname, int ops, int facs, \ + int pid); } +46 MCOMPAT POSIX { int sigaction(int signum, struct osigaction *nsa, \ + struct osigaction *osa); } +47 MSTD POSIX { gid_t getgid(void); } +48 MCOMPAT POSIX { int sigprocmask(int how, osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it, and we return the old mask as the +; (int) return value. +49 MSTD BSD { int getlogin(char *namebuf, u_int namelen); } +50 MSTD BSD { int setlogin(char *namebuf); } +51 MSTD BSD { int acct(char *path); } +52 MCOMPAT POSIX { int sigpending(void); } +53 MSTD BSD { int sigaltstack(stack_t *ss, stack_t *oss); } +54 MSTD POSIX { int ioctl(int fd, u_long com, caddr_t data); } +55 MSTD BSD { int reboot(int opt); } +56 STD POSIX { int revoke(char *path); } +57 STD POSIX { int symlink(char *path, char *link); } +58 STD POSIX { int readlink(char *path, char *buf, int count); } +59 MSTD POSIX { int execve(char *fname, char **argv, char **envv); } +60 MSTD POSIX { int umask(int newmask); } umask umask_args int +61 STD BSD { int chroot(char *path); } +62 MCOMPAT POSIX { int fstat(int fd, struct ostat *sb); } +63 MCOMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ + int arg); } getkerninfo getkerninfo_args int +64 MCOMPAT BSD { int getpagesize(void); } \ + getpagesize getpagesize_args int +65 STD BSD { int msync(void *addr, size_t len, int flags); } +66 MSTD BSD { int vfork(void); } +67 OBSOL NOHIDE vread +68 OBSOL NOHIDE vwrite +69 MSTD BSD { int sbrk(int incr); } +70 MSTD BSD { int sstk(int incr); } +71 MCOMPAT BSD { int mmap(void *addr, int len, int prot, \ + int flags, int fd, long pos); } +72 MSTD BSD { int ovadvise(int anom); } vadvise ovadvise_args int +73 MSTD BSD { int munmap(void *addr, size_t len); } +74 MSTD BSD { int mprotect(const void *addr, size_t len, int prot); } +75 MSTD BSD { int madvise(void *addr, size_t len, int behav); } +76 OBSOL NOHIDE vhangup +77 OBSOL NOHIDE vlimit +78 MSTD BSD { int mincore(const void *addr, size_t len, \ + char *vec); } +79 MSTD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } +80 MSTD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } +81 MSTD POSIX { int getpgrp(void); } +82 MSTD POSIX { int setpgid(int pid, int pgid); } +83 MSTD BSD { int setitimer(u_int which, struct itimerval *itv, \ + struct itimerval *oitv); } +84 MCOMPAT BSD { int wait(void); } +85 MSTD BSD { int swapon(char *name); } +86 MSTD BSD { int getitimer(u_int which, struct itimerval *itv); } +87 MCOMPAT BSD { int gethostname(char *hostname, u_int len); } \ + gethostname gethostname_args int +88 MCOMPAT BSD { int sethostname(char *hostname, u_int len); } \ + sethostname sethostname_args int +89 MSTD BSD { int getdtablesize(void); } +90 MSTD POSIX { int dup2(u_int from, u_int to); } +91 UNIMPL BSD getdopt +92 MSTD POSIX { int fcntl(int fd, int cmd, long arg); } +; XXX should be { int fcntl(int fd, int cmd, ...); } +; but we're not ready for varargs. +; XXX man page says `int arg' too. +93 MSTD BSD { int select(int nd, fd_set *in, fd_set *ou, \ + fd_set *ex, struct timeval *tv); } +94 UNIMPL BSD setdopt +95 STD POSIX { int fsync(int fd); } +96 MSTD BSD { int setpriority(int which, int who, int prio); } +97 MSTD BSD { int socket(int domain, int type, int protocol); } +98 MSTD BSD { int connect(int s, caddr_t name, int namelen); } +99 MCPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ + accept accept_args int +100 MSTD BSD { int getpriority(int which, int who); } +101 MCOMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } +102 MCOMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } +103 STD BSD { int osigreturn(struct osigcontext *sigcntxp); } +104 MSTD BSD { int bind(int s, caddr_t name, int namelen); } +105 MSTD BSD { int setsockopt(int s, int level, int name, \ + caddr_t val, int valsize); } +106 MSTD BSD { int listen(int s, int backlog); } +107 OBSOL NOHIDE vtimes +108 MCOMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ + struct sigvec *osv); } +109 MCOMPAT BSD { int sigblock(int mask); } +110 MCOMPAT BSD { int sigsetmask(int mask); } +111 MCOMPAT POSIX { int sigsuspend(osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it. +112 MCOMPAT BSD { int sigstack(struct sigstack *nss, \ + struct sigstack *oss); } +113 MCOMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } +114 MCOMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } +115 OBSOL NOHIDE vtrace +116 MSTD BSD { int gettimeofday(struct timeval *tp, \ + struct timezone *tzp); } +117 MSTD BSD { int getrusage(int who, struct rusage *rusage); } +118 MSTD BSD { int getsockopt(int s, int level, int name, \ + caddr_t val, int *avalsize); } +119 UNIMPL NOHIDE resuba (BSD/OS 2.x) +120 MSTD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } +121 MSTD BSD { int writev(int fd, struct iovec *iovp, \ + u_int iovcnt); } +122 MSTD BSD { int settimeofday(struct timeval *tv, \ + struct timezone *tzp); } +123 STD BSD { int fchown(int fd, int uid, int gid); } +124 STD BSD { int fchmod(int fd, int mode); } +125 MCPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } \ + recvfrom recvfrom_args int +126 MSTD BSD { int setreuid(int ruid, int euid); } +127 MSTD BSD { int setregid(int rgid, int egid); } +128 STD POSIX { int rename(char *from, char *to); } +129 COMPAT BSD { int truncate(char *path, long length); } +130 COMPAT BSD { int ftruncate(int fd, long length); } +131 MSTD BSD { int flock(int fd, int how); } +132 STD POSIX { int mkfifo(char *path, int mode); } +133 MSTD BSD { int sendto(int s, caddr_t buf, size_t len, \ + int flags, caddr_t to, int tolen); } +134 MSTD BSD { int shutdown(int s, int how); } +135 MSTD BSD { int socketpair(int domain, int type, int protocol, \ + int *rsv); } +136 STD POSIX { int mkdir(char *path, int mode); } +137 STD POSIX { int rmdir(char *path); } +138 STD BSD { int utimes(char *path, struct timeval *tptr); } +139 OBSOL NOHIDE 4.2 sigreturn +140 MSTD BSD { int adjtime(struct timeval *delta, \ + struct timeval *olddelta); } +141 MCOMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +142 MCOMPAT BSD { long gethostid(void); } +143 MCOMPAT BSD { int sethostid(long hostid); } +144 MCOMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } +145 MCOMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } +146 MCOMPAT BSD { int killpg(int pgid, int signum); } +147 MSTD POSIX { int setsid(void); } +148 STD BSD { int quotactl(char *path, int cmd, int uid, \ + caddr_t arg); } +149 MCOMPAT BSD { int quota(void); } +150 MCPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\ + getsockname getsockname_args int + +; Syscalls 151-180 inclusive are reserved for vendor-specific +; system calls. (This includes various calls added for compatibity +; with other Unix variants.) +; Some of these calls are now supported by BSD... +151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x) +152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) +153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) +154 UNIMPL NOHIDE nosys +; 155 is initialized by the NFS code, if present. +155 MNOIMPL BSD { int nfssvc(int flag, caddr_t argp); } +156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +157 STD BSD { int statfs(char *path, struct statfs *buf); } +158 STD BSD { int fstatfs(int fd, struct statfs *buf); } +159 UNIMPL NOHIDE nosys +160 UNIMPL NOHIDE nosys +161 STD BSD { int getfh(char *fname, struct fhandle *fhp); } +162 MSTD BSD { int getdomainname(char *domainname, int len); } +163 MSTD BSD { int setdomainname(char *domainname, int len); } +164 MSTD BSD { int uname(struct utsname *name); } +165 STD BSD { int sysarch(int op, char *parms); } +166 MSTD BSD { int rtprio(int function, pid_t pid, \ + struct rtprio *rtp); } +167 UNIMPL NOHIDE nosys +168 UNIMPL NOHIDE nosys +; 169 is initialized by the SYSVSEM code if present or loaded +169 MNOSTD BSD { int semsys(int which, int a2, int a3, int a4, \ + int a5); } +; 169 is initialized by the SYSVMSG code if present or loaded +; XXX should be { int semsys(int which, ...); } +170 MNOSTD BSD { int msgsys(int which, int a2, int a3, int a4, \ + int a5, int a6); } +; 169 is initialized by the SYSVSHM code if present or loaded +; XXX should be { int msgsys(int which, ...); } +171 MNOSTD BSD { int shmsys(int which, int a2, int a3, int a4); } +; XXX should be { int shmsys(int which, ...); } +172 UNIMPL NOHIDE nosys +173 MSTD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ + int pad, off_t offset); } +174 MSTD POSIX { ssize_t pwrite(int fd, const void *buf, \ + size_t nbyte, int pad, off_t offset); } +175 UNIMPL NOHIDE nosys +176 MSTD BSD { int ntp_adjtime(struct timex *tp); } +177 UNIMPL NOHIDE sfork (BSD/OS 2.x) +178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) +179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) +180 UNIMPL NOHIDE nosys + +; Syscalls 181-199 are used by/reserved for BSD +181 MSTD POSIX { int setgid(gid_t gid); } +182 MSTD BSD { int setegid(gid_t egid); } +183 MSTD BSD { int seteuid(uid_t euid); } +184 UNIMPL BSD lfs_bmapv +185 UNIMPL BSD lfs_markv +186 UNIMPL BSD lfs_segclean +187 UNIMPL BSD lfs_segwait +188 STD POSIX { int stat(char *path, struct stat *ub); } +189 MSTD POSIX { int fstat(int fd, struct stat *sb); } +190 STD POSIX { int lstat(char *path, struct stat *ub); } +191 STD POSIX { int pathconf(char *path, int name); } +192 MSTD POSIX { int fpathconf(int fd, int name); } +193 UNIMPL NOHIDE nosys +194 MSTD BSD { int getrlimit(u_int which, \ + struct rlimit *rlp); } \ + getrlimit __getrlimit_args int +195 MSTD BSD { int setrlimit(u_int which, \ + struct rlimit *rlp); } \ + setrlimit __setrlimit_args int +196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +197 MSTD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ + int flags, int fd, int pad, off_t pos); } +198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int +199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ + int whence); } +200 STD BSD { int truncate(char *path, int pad, off_t length); } +201 STD BSD { int ftruncate(int fd, int pad, off_t length); } +202 MSTD BSD { int __sysctl(int *name, u_int namelen, void *old, \ + size_t *oldlenp, void *new, size_t newlen); } \ + __sysctl sysctl_args int +; properly, __sysctl should be a NOHIDE, but making an exception +; here allows to avoid one in libc/sys/Makefile.inc. +203 MSTD BSD { int mlock(const void *addr, size_t len); } +204 MSTD BSD { int munlock(const void *addr, size_t len); } +205 STD BSD { int undelete(char *path); } +206 STD BSD { int futimes(int fd, struct timeval *tptr); } +207 MSTD BSD { int getpgid(pid_t pid); } +208 UNIMPL NOHIDE newreboot (NetBSD) +209 MSTD BSD { int poll(struct pollfd *fds, u_int nfds, \ + int timeout); } + +; +; The following are reserved for loadable syscalls +; +210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int + +; +; The following were introduced with NetBSD/4.4Lite-2 +; They are initialized by thier respective modules/sysinits +220 MNOSTD BSD { int __semctl(int semid, int semnum, int cmd, \ + union semun *arg); } +221 MNOSTD BSD { int semget(key_t key, int nsems, int semflg); } +222 MNOSTD BSD { int semop(int semid, struct sembuf *sops, \ + u_int nsops); } +223 UNIMPL NOHIDE semconfig +224 MNOSTD BSD { int msgctl(int msqid, int cmd, \ + struct msqid_ds *buf); } +225 MNOSTD BSD { int msgget(key_t key, int msgflg); } +226 MNOSTD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ + int msgflg); } +227 MNOSTD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ + long msgtyp, int msgflg); } +228 MNOSTD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } +229 MNOSTD BSD { int shmctl(int shmid, int cmd, \ + struct shmid_ds *buf); } +230 MNOSTD BSD { int shmdt(void *shmaddr); } +231 MNOSTD BSD { int shmget(key_t key, int size, int shmflg); } +; +232 MSTD POSIX { int clock_gettime(clockid_t clock_id, \ + struct timespec *tp); } +233 MSTD POSIX { int clock_settime(clockid_t clock_id, \ + const struct timespec *tp); } +234 MSTD POSIX { int clock_getres(clockid_t clock_id, \ + struct timespec *tp); } +235 UNIMPL NOHIDE timer_create +236 UNIMPL NOHIDE timer_delete +237 UNIMPL NOHIDE timer_settime +238 UNIMPL NOHIDE timer_gettime +239 UNIMPL NOHIDE timer_getoverrun +240 MSTD POSIX { int nanosleep(const struct timespec *rqtp, \ + struct timespec *rmtp); } +241 UNIMPL NOHIDE nosys +242 UNIMPL NOHIDE nosys +243 UNIMPL NOHIDE nosys +244 UNIMPL NOHIDE nosys +245 UNIMPL NOHIDE nosys +246 UNIMPL NOHIDE nosys +247 UNIMPL NOHIDE nosys +248 UNIMPL NOHIDE nosys +249 UNIMPL NOHIDE nosys +; syscall numbers initially used in OpenBSD +250 MSTD BSD { int minherit(void *addr, size_t len, int inherit); } +251 MSTD BSD { int rfork(int flags); } +252 MSTD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ + int timeout); } +253 STD BSD { int issetugid(void); } +254 STD BSD { int lchown(char *path, int uid, int gid); } +255 UNIMPL NOHIDE nosys +256 UNIMPL NOHIDE nosys +257 UNIMPL NOHIDE nosys +258 UNIMPL NOHIDE nosys +259 UNIMPL NOHIDE nosys +260 UNIMPL NOHIDE nosys +261 UNIMPL NOHIDE nosys +262 UNIMPL NOHIDE nosys +263 UNIMPL NOHIDE nosys +264 UNIMPL NOHIDE nosys +265 UNIMPL NOHIDE nosys +266 UNIMPL NOHIDE nosys +267 UNIMPL NOHIDE nosys +268 UNIMPL NOHIDE nosys +269 UNIMPL NOHIDE nosys +270 UNIMPL NOHIDE nosys +271 UNIMPL NOHIDE nosys +272 STD BSD { int getdents(int fd, char *buf, size_t count); } +273 UNIMPL NOHIDE nosys +274 STD BSD { int lchmod(char *path, mode_t mode); } +275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int +276 STD BSD { int lutimes(char *path, struct timeval *tptr); } +277 MNOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int +278 STD BSD { int nstat(char *path, struct nstat *ub); } +279 MSTD BSD { int nfstat(int fd, struct nstat *sb); } +280 STD BSD { int nlstat(char *path, struct nstat *ub); } +281 UNIMPL NOHIDE nosys +282 UNIMPL NOHIDE nosys +283 UNIMPL NOHIDE nosys +284 UNIMPL NOHIDE nosys +285 UNIMPL NOHIDE nosys +286 UNIMPL NOHIDE nosys +287 UNIMPL NOHIDE nosys +288 UNIMPL NOHIDE nosys +289 UNIMPL NOHIDE nosys +290 UNIMPL NOHIDE nosys +291 UNIMPL NOHIDE nosys +292 UNIMPL NOHIDE nosys +293 UNIMPL NOHIDE nosys +294 UNIMPL NOHIDE nosys +295 UNIMPL NOHIDE nosys +296 UNIMPL NOHIDE nosys +; XXX 297 is 300 in NetBSD +297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } +298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); } +299 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } +; syscall numbers for FreeBSD +300 MSTD BSD { int modnext(int modid); } +301 MSTD BSD { int modstat(int modid, struct module_stat* stat); } +302 MSTD BSD { int modfnext(int modid); } +303 MSTD BSD { int modfind(const char *name); } +304 MSTD BSD { int kldload(const char *file); } +305 MSTD BSD { int kldunload(int fileid); } +306 MSTD BSD { int kldfind(const char *file); } +307 MSTD BSD { int kldnext(int fileid); } +308 MSTD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } +309 MSTD BSD { int kldfirstmod(int fileid); } +310 MSTD BSD { int getsid(pid_t pid); } +311 MSTD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +312 MSTD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +313 OBSOL NOHIDE signanosleep +314 NOSTD BSD { int aio_return(struct aiocb *aiocbp); } +315 NOSTD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } +316 NOSTD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } +317 NOSTD BSD { int aio_error(struct aiocb *aiocbp); } +318 NOSTD BSD { int aio_read(struct aiocb *aiocbp); } +319 NOSTD BSD { int aio_write(struct aiocb *aiocbp); } +320 NOSTD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } +321 MSTD BSD { int yield(void); } +322 OBSOL NOHIDE thr_sleep +323 OBSOL NOHIDE thr_wakeup +324 MSTD BSD { int mlockall(int how); } +325 MSTD BSD { int munlockall(void); } +326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } + +327 MSTD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } +328 MSTD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } + +329 MSTD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } +330 MSTD POSIX { int sched_getscheduler (pid_t pid); } + +331 MSTD POSIX { int sched_yield (void); } +332 MSTD POSIX { int sched_get_priority_max (int policy); } +333 MSTD POSIX { int sched_get_priority_min (int policy); } +334 MSTD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } +335 STD BSD { int utrace(const void *addr, size_t len); } +336 MSTD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ + struct sf_hdtr *hdtr, off_t *sbytes, int flags); } +337 STD BSD { int kldsym(int fileid, int cmd, void *data); } +338 MSTD BSD { int jail(struct jail *jail); } +339 UNIMPL BSD pioctl +340 MSTD POSIX { int sigprocmask(int how, const sigset_t *set, \ + sigset_t *oset); } +341 MSTD POSIX { int sigsuspend(const sigset_t *sigmask); } +342 MSTD POSIX { int sigaction(int sig, const struct sigaction *act, \ + struct sigaction *oact); } +343 MSTD POSIX { int sigpending(sigset_t *set); } +344 STD BSD { int sigreturn(const struct __ucontext *sigcntxp); } +345 UNIMPL NOHIDE sigtimedwait +346 UNIMPL NOHIDE sigwaitinfo +347 MSTD BSD { int __acl_get_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +348 MSTD BSD { int __acl_set_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +349 MSTD BSD { int __acl_get_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +350 MSTD BSD { int __acl_set_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +351 MSTD BSD { int __acl_delete_file(const char *path, \ + acl_type_t type); } +352 MSTD BSD { int __acl_delete_fd(int filedes, acl_type_t type); } +353 MSTD BSD { int __acl_aclcheck_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +354 MSTD BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +355 STD BSD { int extattrctl(const char *path, int cmd, \ + const char *filename, int attrnamespace, \ + const char *attrname); } +356 STD BSD { int extattr_set_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +357 STD BSD { ssize_t extattr_get_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +358 STD BSD { int extattr_delete_file(const char *path, \ + int attrnamespace, const char *attrname); } +359 NOSTD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } +360 MSTD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } +361 MSTD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } +362 MSTD BSD { int kqueue(void); } +363 MSTD BSD { int kevent(int fd, \ + const struct kevent *changelist, int nchanges, \ + struct kevent *eventlist, int nevents, \ + const struct timespec *timeout); } +364 STD BSD { int __cap_get_proc(struct cap *cap_p); } +365 STD BSD { int __cap_set_proc(struct cap *cap_p); } +366 STD BSD { int __cap_get_fd(int fd, struct cap *cap_p); } +367 STD BSD { int __cap_get_file(const char *path_p, struct cap *cap_p); } +368 STD BSD { int __cap_set_fd(int fd, struct cap *cap_p); } +369 STD BSD { int __cap_set_file(const char *path_p, struct cap *cap_p); } +370 NODEF NOHIDE lkmressys lkmressys nosys_args int +371 STD BSD { int extattr_set_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +372 STD BSD { ssize_t extattr_get_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, size_t nbytes); } +373 STD BSD { int extattr_delete_fd(int fd, int attrnamespace, \ + const char *attrname); } +374 MSTD BSD { int __setugid(int flag); } +375 NOIMPL BSD { int nfsclnt(int flag, caddr_t argp); } +376 STD BSD { int eaccess(char *path, int flags); } +377 UNIMPL BSD afs_syscall +378 STD BSD { int nmount(struct iovec *iovp, unsigned int iovcnt, \ + int flags); } +379 STD BSD { int kse_exit(void); } +380 STD BSD { int kse_wakeup(void); } +381 STD BSD { int kse_new(struct kse_mailbox * mbx, \ + int new_grp_flag); } +382 STD BSD { int thread_wakeup(struct thread_mailbox *tmbx); } +383 STD BSD { int kse_yield(void); } +384 UNIMPL BSD __mac_get_proc +385 UNIMPL BSD __mac_set_proc +386 UNIMPL BSD __mac_get_fd +387 UNIMPL BSD __mac_get_file +388 UNIMPL BSD __mac_set_fd +389 UNIMPL BSD __mac_set_file diff --git a/sys/ia64/ia32/Makefile b/sys/ia64/ia32/Makefile new file mode 100644 index 000000000000..1184ef4a2ab0 --- /dev/null +++ b/sys/ia64/ia32/Makefile @@ -0,0 +1,15 @@ +# Makefile for syscall tables +# +# $FreeBSD$ + +all: + @echo "make sysent only" + +sysent: ia32_sysent.c ia32_syscall.h ia32_proto.h + +ia32_sysent.c ia32_syscall.h ia32_proto.h: ../../kern/makesyscalls.sh \ + syscalls.master syscalls.conf + -mv -f ia32_sysent.c ia32_sysent.c.bak + -mv -f ia32_syscall.h ia32_syscall.h.bak + -mv -f ia32_proto.h ia32_proto.h.bak + sh ../../kern/makesyscalls.sh syscalls.master syscalls.conf diff --git a/sys/ia64/ia32/ia32_proto.h b/sys/ia64/ia32/ia32_proto.h new file mode 100644 index 000000000000..5bb7abf36b30 --- /dev/null +++ b/sys/ia64/ia32/ia32_proto.h @@ -0,0 +1,1529 @@ +/* + * System call prototypes. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#ifndef _IA32_SYSPROTO_H_ +#define _IA32_SYSPROTO_H_ + +#include + +#include + +struct proc; + +struct thread; + +#define PAD_(t) (sizeof(register_t) <= sizeof(t) ? \ + 0 : sizeof(register_t) - sizeof(t)) + +#if BYTE_ORDER == LITTLE_ENDIAN +#define PADL_(t) 0 +#define PADR_(t) PAD_(t) +#else +#define PADL_(t) PAD_(t) +#define PADR_(t) 0 +#endif + +struct nosys_args { + register_t dummy; +}; +struct sys_exit_args { + char rval_l_[PADL_(int)]; int rval; char rval_r_[PADR_(int)]; +}; +struct fork_args { + register_t dummy; +}; +struct read_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct write_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; +}; +struct open_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct close_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct wait_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)]; + char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct link_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct unlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct chdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct fchdir_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct mknod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char dev_l_[PADL_(int)]; int dev; char dev_r_[PADR_(int)]; +}; +struct chmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct chown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct obreak_args { + char nsize_l_[PADL_(char *)]; char * nsize; char nsize_r_[PADR_(char *)]; +}; +struct getfsstat_args { + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; + char bufsize_l_[PADL_(long)]; long bufsize; char bufsize_r_[PADR_(long)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct getpid_args { + register_t dummy; +}; +struct mount_args { + char type_l_[PADL_(char *)]; char * type; char type_r_[PADR_(char *)]; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct unmount_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct setuid_args { + char uid_l_[PADL_(uid_t)]; uid_t uid; char uid_r_[PADR_(uid_t)]; +}; +struct getuid_args { + register_t dummy; +}; +struct geteuid_args { + register_t dummy; +}; +struct ptrace_args { + char req_l_[PADL_(int)]; int req; char req_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char data_l_[PADL_(int)]; int data; char data_r_[PADR_(int)]; +}; +struct recvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct msghdr *)]; struct msghdr * msg; char msg_r_[PADR_(struct msghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct recvfrom_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char from_l_[PADL_(caddr_t)]; caddr_t from; char from_r_[PADR_(caddr_t)]; + char fromlenaddr_l_[PADL_(int *)]; int * fromlenaddr; char fromlenaddr_r_[PADR_(int *)]; +}; +struct accept_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char anamelen_l_[PADL_(int *)]; int * anamelen; char anamelen_r_[PADR_(int *)]; +}; +struct getpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct getsockname_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct access_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct chflags_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fchflags_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct sync_args { + register_t dummy; +}; +struct kill_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct getppid_args { + register_t dummy; +}; +struct dup_args { + char fd_l_[PADL_(u_int)]; u_int fd; char fd_r_[PADR_(u_int)]; +}; +struct pipe_args { + register_t dummy; +}; +struct getegid_args { + register_t dummy; +}; +struct profil_args { + char samples_l_[PADL_(caddr_t)]; caddr_t samples; char samples_r_[PADR_(caddr_t)]; + char size_l_[PADL_(size_t)]; size_t size; char size_r_[PADR_(size_t)]; + char offset_l_[PADL_(size_t)]; size_t offset; char offset_r_[PADR_(size_t)]; + char scale_l_[PADL_(u_int)]; u_int scale; char scale_r_[PADR_(u_int)]; +}; +struct ktrace_args { + char fname_l_[PADL_(const char *)]; const char * fname; char fname_r_[PADR_(const char *)]; + char ops_l_[PADL_(int)]; int ops; char ops_r_[PADR_(int)]; + char facs_l_[PADL_(int)]; int facs; char facs_r_[PADR_(int)]; + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; +}; +struct getgid_args { + register_t dummy; +}; +struct getlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; +}; +struct setlogin_args { + char namebuf_l_[PADL_(char *)]; char * namebuf; char namebuf_r_[PADR_(char *)]; +}; +struct acct_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct osigpending_args { + register_t dummy; +}; +struct sigaltstack_args { + char ss_l_[PADL_(stack_t *)]; stack_t * ss; char ss_r_[PADR_(stack_t *)]; + char oss_l_[PADL_(stack_t *)]; stack_t * oss; char oss_r_[PADR_(stack_t *)]; +}; +struct ioctl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char com_l_[PADL_(u_long)]; u_long com; char com_r_[PADR_(u_long)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; +}; +struct reboot_args { + char opt_l_[PADL_(int)]; int opt; char opt_r_[PADR_(int)]; +}; +struct revoke_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct symlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char link_l_[PADL_(char *)]; char * link; char link_r_[PADR_(char *)]; +}; +struct readlink_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(int)]; int count; char count_r_[PADR_(int)]; +}; +struct execve_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char argv_l_[PADL_(char **)]; char ** argv; char argv_r_[PADR_(char **)]; + char envv_l_[PADL_(char **)]; char ** envv; char envv_r_[PADR_(char **)]; +}; +struct umask_args { + char newmask_l_[PADL_(int)]; int newmask; char newmask_r_[PADR_(int)]; +}; +struct chroot_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct getpagesize_args { + register_t dummy; +}; +struct msync_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct vfork_args { + register_t dummy; +}; +struct sbrk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct sstk_args { + char incr_l_[PADL_(int)]; int incr; char incr_r_[PADR_(int)]; +}; +struct ovadvise_args { + char anom_l_[PADL_(int)]; int anom; char anom_r_[PADR_(int)]; +}; +struct munmap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct mprotect_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; +}; +struct madvise_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char behav_l_[PADL_(int)]; int behav; char behav_r_[PADR_(int)]; +}; +struct mincore_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char vec_l_[PADL_(char *)]; char * vec; char vec_r_[PADR_(char *)]; +}; +struct getgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct setgroups_args { + char gidsetsize_l_[PADL_(u_int)]; u_int gidsetsize; char gidsetsize_r_[PADR_(u_int)]; + char gidset_l_[PADL_(gid_t *)]; gid_t * gidset; char gidset_r_[PADR_(gid_t *)]; +}; +struct getpgrp_args { + register_t dummy; +}; +struct setpgid_args { + char pid_l_[PADL_(int)]; int pid; char pid_r_[PADR_(int)]; + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; +}; +struct setitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; + char oitv_l_[PADL_(struct itimerval *)]; struct itimerval * oitv; char oitv_r_[PADR_(struct itimerval *)]; +}; +struct owait_args { + register_t dummy; +}; +struct swapon_args { + char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; +}; +struct getitimer_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char itv_l_[PADL_(struct itimerval *)]; struct itimerval * itv; char itv_r_[PADR_(struct itimerval *)]; +}; +struct getdtablesize_args { + register_t dummy; +}; +struct dup2_args { + char from_l_[PADL_(u_int)]; u_int from; char from_r_[PADR_(u_int)]; + char to_l_[PADL_(u_int)]; u_int to; char to_r_[PADR_(u_int)]; +}; +struct fcntl_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(long)]; long arg; char arg_r_[PADR_(long)]; +}; +struct select_args { + char nd_l_[PADL_(int)]; int nd; char nd_r_[PADR_(int)]; + char in_l_[PADL_(fd_set *)]; fd_set * in; char in_r_[PADR_(fd_set *)]; + char ou_l_[PADL_(fd_set *)]; fd_set * ou; char ou_r_[PADR_(fd_set *)]; + char ex_l_[PADL_(fd_set *)]; fd_set * ex; char ex_r_[PADR_(fd_set *)]; + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; +}; +struct fsync_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; +}; +struct setpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char prio_l_[PADL_(int)]; int prio; char prio_r_[PADR_(int)]; +}; +struct socket_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; +}; +struct connect_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct getpriority_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; +}; +struct osigreturn_args { + char sigcntxp_l_[PADL_(struct osigcontext *)]; struct osigcontext * sigcntxp; char sigcntxp_r_[PADR_(struct osigcontext *)]; +}; +struct bind_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char name_l_[PADL_(caddr_t)]; caddr_t name; char name_r_[PADR_(caddr_t)]; + char namelen_l_[PADL_(int)]; int namelen; char namelen_r_[PADR_(int)]; +}; +struct setsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char valsize_l_[PADL_(int)]; int valsize; char valsize_r_[PADR_(int)]; +}; +struct listen_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char backlog_l_[PADL_(int)]; int backlog; char backlog_r_[PADR_(int)]; +}; +struct gettimeofday_args { + char tp_l_[PADL_(struct timeval *)]; struct timeval * tp; char tp_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct getrusage_args { + char who_l_[PADL_(int)]; int who; char who_r_[PADR_(int)]; + char rusage_l_[PADL_(struct rusage *)]; struct rusage * rusage; char rusage_r_[PADR_(struct rusage *)]; +}; +struct getsockopt_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char level_l_[PADL_(int)]; int level; char level_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; + char val_l_[PADL_(caddr_t)]; caddr_t val; char val_r_[PADR_(caddr_t)]; + char avalsize_l_[PADL_(int *)]; int * avalsize; char avalsize_r_[PADR_(int *)]; +}; +struct readv_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct writev_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(u_int)]; u_int iovcnt; char iovcnt_r_[PADR_(u_int)]; +}; +struct settimeofday_args { + char tv_l_[PADL_(struct timeval *)]; struct timeval * tv; char tv_r_[PADR_(struct timeval *)]; + char tzp_l_[PADL_(struct timezone *)]; struct timezone * tzp; char tzp_r_[PADR_(struct timezone *)]; +}; +struct fchown_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct fchmod_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct setreuid_args { + char ruid_l_[PADL_(int)]; int ruid; char ruid_r_[PADR_(int)]; + char euid_l_[PADL_(int)]; int euid; char euid_r_[PADR_(int)]; +}; +struct setregid_args { + char rgid_l_[PADL_(int)]; int rgid; char rgid_r_[PADR_(int)]; + char egid_l_[PADL_(int)]; int egid; char egid_r_[PADR_(int)]; +}; +struct rename_args { + char from_l_[PADL_(char *)]; char * from; char from_r_[PADR_(char *)]; + char to_l_[PADL_(char *)]; char * to; char to_r_[PADR_(char *)]; +}; +struct flock_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct mkfifo_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct sendto_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char to_l_[PADL_(caddr_t)]; caddr_t to; char to_r_[PADR_(caddr_t)]; + char tolen_l_[PADL_(int)]; int tolen; char tolen_r_[PADR_(int)]; +}; +struct shutdown_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct socketpair_args { + char domain_l_[PADL_(int)]; int domain; char domain_r_[PADR_(int)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char protocol_l_[PADL_(int)]; int protocol; char protocol_r_[PADR_(int)]; + char rsv_l_[PADL_(int *)]; int * rsv; char rsv_r_[PADR_(int *)]; +}; +struct mkdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct rmdir_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct utimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct adjtime_args { + char delta_l_[PADL_(struct timeval *)]; struct timeval * delta; char delta_r_[PADR_(struct timeval *)]; + char olddelta_l_[PADL_(struct timeval *)]; struct timeval * olddelta; char olddelta_r_[PADR_(struct timeval *)]; +}; +struct ogethostid_args { + register_t dummy; +}; +struct setsid_args { + register_t dummy; +}; +struct quotactl_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char arg_l_[PADL_(caddr_t)]; caddr_t arg; char arg_r_[PADR_(caddr_t)]; +}; +struct oquota_args { + register_t dummy; +}; +struct nfssvc_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct statfs_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fstatfs_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct getfh_args { + char fname_l_[PADL_(char *)]; char * fname; char fname_r_[PADR_(char *)]; + char fhp_l_[PADL_(struct fhandle *)]; struct fhandle * fhp; char fhp_r_[PADR_(struct fhandle *)]; +}; +struct getdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct setdomainname_args { + char domainname_l_[PADL_(char *)]; char * domainname; char domainname_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; +struct uname_args { + char name_l_[PADL_(struct utsname *)]; struct utsname * name; char name_r_[PADR_(struct utsname *)]; +}; +struct sysarch_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char parms_l_[PADL_(char *)]; char * parms; char parms_r_[PADR_(char *)]; +}; +struct rtprio_args { + char function_l_[PADL_(int)]; int function; char function_r_[PADR_(int)]; + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char rtp_l_[PADL_(struct rtprio *)]; struct rtprio * rtp; char rtp_r_[PADR_(struct rtprio *)]; +}; +struct semsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; +}; +struct msgsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; + char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)]; + char a6_l_[PADL_(int)]; int a6; char a6_r_[PADR_(int)]; +}; +struct shmsys_args { + char which_l_[PADL_(int)]; int which; char which_r_[PADR_(int)]; + char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)]; + char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)]; + char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)]; +}; +struct pread_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(void *)]; void * buf; char buf_r_[PADR_(void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct pwrite_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(const void *)]; const void * buf; char buf_r_[PADR_(const void *)]; + char nbyte_l_[PADL_(size_t)]; size_t nbyte; char nbyte_r_[PADR_(size_t)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; +}; +struct ntp_adjtime_args { + char tp_l_[PADL_(struct timex *)]; struct timex * tp; char tp_r_[PADR_(struct timex *)]; +}; +struct setgid_args { + char gid_l_[PADL_(gid_t)]; gid_t gid; char gid_r_[PADR_(gid_t)]; +}; +struct setegid_args { + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; +}; +struct seteuid_args { + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; +}; +struct stat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct fstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct lstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct stat *)]; struct stat * ub; char ub_r_[PADR_(struct stat *)]; +}; +struct pathconf_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct fpathconf_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char name_l_[PADL_(int)]; int name; char name_r_[PADR_(int)]; +}; +struct __getrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct __setrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct rlimit *)]; struct rlimit * rlp; char rlp_r_[PADR_(struct rlimit *)]; +}; +struct getdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +struct mmap_args { + char addr_l_[PADL_(caddr_t)]; caddr_t addr; char addr_r_[PADR_(caddr_t)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char pos_l_[PADL_(off_t)]; off_t pos; char pos_r_[PADR_(off_t)]; +}; +struct lseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct truncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct ftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)]; + char length_l_[PADL_(off_t)]; off_t length; char length_r_[PADR_(off_t)]; +}; +struct sysctl_args { + char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)]; + char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)]; + char old_l_[PADL_(void *)]; void * old; char old_r_[PADR_(void *)]; + char oldlenp_l_[PADL_(size_t *)]; size_t * oldlenp; char oldlenp_r_[PADR_(size_t *)]; + char new_l_[PADL_(void *)]; void * new; char new_r_[PADR_(void *)]; + char newlen_l_[PADL_(size_t)]; size_t newlen; char newlen_r_[PADR_(size_t)]; +}; +struct mlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct munlock_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct undelete_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; +}; +struct futimes_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct getpgid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct __semctl_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char semnum_l_[PADL_(int)]; int semnum; char semnum_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char arg_l_[PADL_(union semun *)]; union semun * arg; char arg_r_[PADR_(union semun *)]; +}; +struct semget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char nsems_l_[PADL_(int)]; int nsems; char nsems_r_[PADR_(int)]; + char semflg_l_[PADL_(int)]; int semflg; char semflg_r_[PADR_(int)]; +}; +struct semop_args { + char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)]; + char sops_l_[PADL_(struct sembuf *)]; struct sembuf * sops; char sops_r_[PADR_(struct sembuf *)]; + char nsops_l_[PADL_(u_int)]; u_int nsops; char nsops_r_[PADR_(u_int)]; +}; +struct msgctl_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct msqid_ds *)]; struct msqid_ds * buf; char buf_r_[PADR_(struct msqid_ds *)]; +}; +struct msgget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgsnd_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct msgrcv_args { + char msqid_l_[PADL_(int)]; int msqid; char msqid_r_[PADR_(int)]; + char msgp_l_[PADL_(void *)]; void * msgp; char msgp_r_[PADR_(void *)]; + char msgsz_l_[PADL_(size_t)]; size_t msgsz; char msgsz_r_[PADR_(size_t)]; + char msgtyp_l_[PADL_(long)]; long msgtyp; char msgtyp_r_[PADR_(long)]; + char msgflg_l_[PADL_(int)]; int msgflg; char msgflg_r_[PADR_(int)]; +}; +struct shmat_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct shmctl_args { + char shmid_l_[PADL_(int)]; int shmid; char shmid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char buf_l_[PADL_(struct shmid_ds *)]; struct shmid_ds * buf; char buf_r_[PADR_(struct shmid_ds *)]; +}; +struct shmdt_args { + char shmaddr_l_[PADL_(void *)]; void * shmaddr; char shmaddr_r_[PADR_(void *)]; +}; +struct shmget_args { + char key_l_[PADL_(key_t)]; key_t key; char key_r_[PADR_(key_t)]; + char size_l_[PADL_(int)]; int size; char size_r_[PADR_(int)]; + char shmflg_l_[PADL_(int)]; int shmflg; char shmflg_r_[PADR_(int)]; +}; +struct clock_gettime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct clock_settime_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(const struct timespec *)]; const struct timespec * tp; char tp_r_[PADR_(const struct timespec *)]; +}; +struct clock_getres_args { + char clock_id_l_[PADL_(clockid_t)]; clockid_t clock_id; char clock_id_r_[PADR_(clockid_t)]; + char tp_l_[PADL_(struct timespec *)]; struct timespec * tp; char tp_r_[PADR_(struct timespec *)]; +}; +struct nanosleep_args { + char rqtp_l_[PADL_(const struct timespec *)]; const struct timespec * rqtp; char rqtp_r_[PADR_(const struct timespec *)]; + char rmtp_l_[PADL_(struct timespec *)]; struct timespec * rmtp; char rmtp_r_[PADR_(struct timespec *)]; +}; +struct minherit_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; + char inherit_l_[PADL_(int)]; int inherit; char inherit_r_[PADR_(int)]; +}; +struct rfork_args { + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct openbsd_poll_args { + char fds_l_[PADL_(struct pollfd *)]; struct pollfd * fds; char fds_r_[PADR_(struct pollfd *)]; + char nfds_l_[PADL_(u_int)]; u_int nfds; char nfds_r_[PADR_(u_int)]; + char timeout_l_[PADL_(int)]; int timeout; char timeout_r_[PADR_(int)]; +}; +struct issetugid_args { + register_t dummy; +}; +struct lchown_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char uid_l_[PADL_(int)]; int uid; char uid_r_[PADR_(int)]; + char gid_l_[PADL_(int)]; int gid; char gid_r_[PADR_(int)]; +}; +struct getdents_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(size_t)]; size_t count; char count_r_[PADR_(size_t)]; +}; +struct lchmod_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(mode_t)]; mode_t mode; char mode_r_[PADR_(mode_t)]; +}; +struct lutimes_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char tptr_l_[PADL_(struct timeval *)]; struct timeval * tptr; char tptr_r_[PADR_(struct timeval *)]; +}; +struct nstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct nfstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct nstat *)]; struct nstat * sb; char sb_r_[PADR_(struct nstat *)]; +}; +struct nlstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct nstat *)]; struct nstat * ub; char ub_r_[PADR_(struct nstat *)]; +}; +struct fhstatfs_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char buf_l_[PADL_(struct statfs *)]; struct statfs * buf; char buf_r_[PADR_(struct statfs *)]; +}; +struct fhopen_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct fhstat_args { + char u_fhp_l_[PADL_(const struct fhandle *)]; const struct fhandle * u_fhp; char u_fhp_r_[PADR_(const struct fhandle *)]; + char sb_l_[PADL_(struct stat *)]; struct stat * sb; char sb_r_[PADR_(struct stat *)]; +}; +struct modnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modstat_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; + char stat_l_[PADL_(struct module_stat *)]; struct module_stat * stat; char stat_r_[PADR_(struct module_stat *)]; +}; +struct modfnext_args { + char modid_l_[PADL_(int)]; int modid; char modid_r_[PADR_(int)]; +}; +struct modfind_args { + char name_l_[PADL_(const char *)]; const char * name; char name_r_[PADR_(const char *)]; +}; +struct kldload_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldunload_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldfind_args { + char file_l_[PADL_(const char *)]; const char * file; char file_r_[PADR_(const char *)]; +}; +struct kldnext_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct kldstat_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char stat_l_[PADL_(struct kld_file_stat *)]; struct kld_file_stat * stat; char stat_r_[PADR_(struct kld_file_stat *)]; +}; +struct kldfirstmod_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; +}; +struct getsid_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct setresuid_args { + char ruid_l_[PADL_(uid_t)]; uid_t ruid; char ruid_r_[PADR_(uid_t)]; + char euid_l_[PADL_(uid_t)]; uid_t euid; char euid_r_[PADR_(uid_t)]; + char suid_l_[PADL_(uid_t)]; uid_t suid; char suid_r_[PADR_(uid_t)]; +}; +struct setresgid_args { + char rgid_l_[PADL_(gid_t)]; gid_t rgid; char rgid_r_[PADR_(gid_t)]; + char egid_l_[PADL_(gid_t)]; gid_t egid; char egid_r_[PADR_(gid_t)]; + char sgid_l_[PADL_(gid_t)]; gid_t sgid; char sgid_r_[PADR_(gid_t)]; +}; +struct aio_return_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_suspend_args { + char aiocbp_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * aiocbp; char aiocbp_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct aio_cancel_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_error_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_read_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct aio_write_args { + char aiocbp_l_[PADL_(struct aiocb *)]; struct aiocb * aiocbp; char aiocbp_r_[PADR_(struct aiocb *)]; +}; +struct lio_listio_args { + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; + char acb_list_l_[PADL_(struct aiocb *const *)]; struct aiocb *const * acb_list; char acb_list_r_[PADR_(struct aiocb *const *)]; + char nent_l_[PADL_(int)]; int nent; char nent_r_[PADR_(int)]; + char sig_l_[PADL_(struct sigevent *)]; struct sigevent * sig; char sig_r_[PADR_(struct sigevent *)]; +}; +struct yield_args { + register_t dummy; +}; +struct mlockall_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; +}; +struct munlockall_args { + register_t dummy; +}; +struct __getcwd_args { + char buf_l_[PADL_(u_char *)]; u_char * buf; char buf_r_[PADR_(u_char *)]; + char buflen_l_[PADL_(u_int)]; u_int buflen; char buflen_r_[PADR_(u_int)]; +}; +struct sched_setparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getparam_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char param_l_[PADL_(struct sched_param *)]; struct sched_param * param; char param_r_[PADR_(struct sched_param *)]; +}; +struct sched_setscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; + char param_l_[PADL_(const struct sched_param *)]; const struct sched_param * param; char param_r_[PADR_(const struct sched_param *)]; +}; +struct sched_getscheduler_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; +}; +struct sched_yield_args { + register_t dummy; +}; +struct sched_get_priority_max_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_get_priority_min_args { + char policy_l_[PADL_(int)]; int policy; char policy_r_[PADR_(int)]; +}; +struct sched_rr_get_interval_args { + char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; + char interval_l_[PADL_(struct timespec *)]; struct timespec * interval; char interval_r_[PADR_(struct timespec *)]; +}; +struct utrace_args { + char addr_l_[PADL_(const void *)]; const void * addr; char addr_r_[PADR_(const void *)]; + char len_l_[PADL_(size_t)]; size_t len; char len_r_[PADR_(size_t)]; +}; +struct sendfile_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char offset_l_[PADL_(off_t)]; off_t offset; char offset_r_[PADR_(off_t)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; + char hdtr_l_[PADL_(struct sf_hdtr *)]; struct sf_hdtr * hdtr; char hdtr_r_[PADR_(struct sf_hdtr *)]; + char sbytes_l_[PADL_(off_t *)]; off_t * sbytes; char sbytes_r_[PADR_(off_t *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kldsym_args { + char fileid_l_[PADL_(int)]; int fileid; char fileid_r_[PADR_(int)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; +}; +struct jail_args { + char jail_l_[PADL_(struct jail *)]; struct jail * jail; char jail_r_[PADR_(struct jail *)]; +}; +struct sigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)]; + char oset_l_[PADL_(sigset_t *)]; sigset_t * oset; char oset_r_[PADR_(sigset_t *)]; +}; +struct sigsuspend_args { + char sigmask_l_[PADL_(const sigset_t *)]; const sigset_t * sigmask; char sigmask_r_[PADR_(const sigset_t *)]; +}; +struct sigaction_args { + char sig_l_[PADL_(int)]; int sig; char sig_r_[PADR_(int)]; + char act_l_[PADL_(const struct sigaction *)]; const struct sigaction * act; char act_r_[PADR_(const struct sigaction *)]; + char oact_l_[PADL_(struct sigaction *)]; struct sigaction * oact; char oact_r_[PADR_(struct sigaction *)]; +}; +struct sigpending_args { + char set_l_[PADL_(sigset_t *)]; sigset_t * set; char set_r_[PADR_(sigset_t *)]; +}; +struct sigreturn_args { + char sigcntxp_l_[PADL_(const struct __ucontext *)]; const struct __ucontext * sigcntxp; char sigcntxp_r_[PADR_(const struct __ucontext *)]; +}; +struct __acl_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_get_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_set_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_delete_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; +}; +struct __acl_aclcheck_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct __acl_aclcheck_fd_args { + char filedes_l_[PADL_(int)]; int filedes; char filedes_r_[PADR_(int)]; + char type_l_[PADL_(acl_type_t)]; acl_type_t type; char type_r_[PADR_(acl_type_t)]; + char aclp_l_[PADL_(struct acl *)]; struct acl * aclp; char aclp_r_[PADR_(struct acl *)]; +}; +struct extattrctl_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char cmd_l_[PADL_(int)]; int cmd; char cmd_r_[PADR_(int)]; + char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct extattr_set_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_file_args { + char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct aio_waitcomplete_args { + char aiocbp_l_[PADL_(struct aiocb **)]; struct aiocb ** aiocbp; char aiocbp_r_[PADR_(struct aiocb **)]; + char timeout_l_[PADL_(struct timespec *)]; struct timespec * timeout; char timeout_r_[PADR_(struct timespec *)]; +}; +struct getresuid_args { + char ruid_l_[PADL_(uid_t *)]; uid_t * ruid; char ruid_r_[PADR_(uid_t *)]; + char euid_l_[PADL_(uid_t *)]; uid_t * euid; char euid_r_[PADR_(uid_t *)]; + char suid_l_[PADL_(uid_t *)]; uid_t * suid; char suid_r_[PADR_(uid_t *)]; +}; +struct getresgid_args { + char rgid_l_[PADL_(gid_t *)]; gid_t * rgid; char rgid_r_[PADR_(gid_t *)]; + char egid_l_[PADL_(gid_t *)]; gid_t * egid; char egid_r_[PADR_(gid_t *)]; + char sgid_l_[PADL_(gid_t *)]; gid_t * sgid; char sgid_r_[PADR_(gid_t *)]; +}; +struct kqueue_args { + register_t dummy; +}; +struct kevent_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char changelist_l_[PADL_(const struct kevent *)]; const struct kevent * changelist; char changelist_r_[PADR_(const struct kevent *)]; + char nchanges_l_[PADL_(int)]; int nchanges; char nchanges_r_[PADR_(int)]; + char eventlist_l_[PADL_(struct kevent *)]; struct kevent * eventlist; char eventlist_r_[PADR_(struct kevent *)]; + char nevents_l_[PADL_(int)]; int nevents; char nevents_r_[PADR_(int)]; + char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)]; +}; +struct __cap_get_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_proc_args { + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_get_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct __cap_set_file_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char cap_p_l_[PADL_(struct cap *)]; struct cap * cap_p; char cap_p_r_[PADR_(struct cap *)]; +}; +struct extattr_set_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_get_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; + char data_l_[PADL_(void *)]; void * data; char data_r_[PADR_(void *)]; + char nbytes_l_[PADL_(size_t)]; size_t nbytes; char nbytes_r_[PADR_(size_t)]; +}; +struct extattr_delete_fd_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; + char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; +}; +struct __setugid_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; +}; +struct nfsclnt_args { + char flag_l_[PADL_(int)]; int flag; char flag_r_[PADR_(int)]; + char argp_l_[PADL_(caddr_t)]; caddr_t argp; char argp_r_[PADR_(caddr_t)]; +}; +struct eaccess_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct nmount_args { + char iovp_l_[PADL_(struct iovec *)]; struct iovec * iovp; char iovp_r_[PADR_(struct iovec *)]; + char iovcnt_l_[PADL_(unsigned int)]; unsigned int iovcnt; char iovcnt_r_[PADR_(unsigned int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct kse_exit_args { + register_t dummy; +}; +struct kse_wakeup_args { + register_t dummy; +}; +struct kse_new_args { + char mbx_l_[PADL_(struct kse_mailbox *)]; struct kse_mailbox * mbx; char mbx_r_[PADR_(struct kse_mailbox *)]; + char new_grp_flag_l_[PADL_(int)]; int new_grp_flag; char new_grp_flag_r_[PADR_(int)]; +}; +struct thread_wakeup_args { + char tmbx_l_[PADL_(struct thread_mailbox *)]; struct thread_mailbox * tmbx; char tmbx_r_[PADR_(struct thread_mailbox *)]; +}; +struct kse_yield_args { + register_t dummy; +}; +int nosys(struct thread *, struct nosys_args *); +void sys_exit(struct thread *, struct sys_exit_args *); +int fork(struct thread *, struct fork_args *); +int read(struct thread *, struct read_args *); +int write(struct thread *, struct write_args *); +int open(struct thread *, struct open_args *); +int close(struct thread *, struct close_args *); +int wait4(struct thread *, struct wait_args *); +int link(struct thread *, struct link_args *); +int unlink(struct thread *, struct unlink_args *); +int chdir(struct thread *, struct chdir_args *); +int fchdir(struct thread *, struct fchdir_args *); +int mknod(struct thread *, struct mknod_args *); +int chmod(struct thread *, struct chmod_args *); +int chown(struct thread *, struct chown_args *); +int obreak(struct thread *, struct obreak_args *); +int getfsstat(struct thread *, struct getfsstat_args *); +int getpid(struct thread *, struct getpid_args *); +int mount(struct thread *, struct mount_args *); +int unmount(struct thread *, struct unmount_args *); +int setuid(struct thread *, struct setuid_args *); +int getuid(struct thread *, struct getuid_args *); +int geteuid(struct thread *, struct geteuid_args *); +int ptrace(struct thread *, struct ptrace_args *); +int recvmsg(struct thread *, struct recvmsg_args *); +int sendmsg(struct thread *, struct sendmsg_args *); +int recvfrom(struct thread *, struct recvfrom_args *); +int accept(struct thread *, struct accept_args *); +int getpeername(struct thread *, struct getpeername_args *); +int getsockname(struct thread *, struct getsockname_args *); +int access(struct thread *, struct access_args *); +int chflags(struct thread *, struct chflags_args *); +int fchflags(struct thread *, struct fchflags_args *); +int sync(struct thread *, struct sync_args *); +int kill(struct thread *, struct kill_args *); +int getppid(struct thread *, struct getppid_args *); +int dup(struct thread *, struct dup_args *); +int pipe(struct thread *, struct pipe_args *); +int getegid(struct thread *, struct getegid_args *); +int profil(struct thread *, struct profil_args *); +int ktrace(struct thread *, struct ktrace_args *); +int getgid(struct thread *, struct getgid_args *); +int getlogin(struct thread *, struct getlogin_args *); +int setlogin(struct thread *, struct setlogin_args *); +int acct(struct thread *, struct acct_args *); +int sigaltstack(struct thread *, struct sigaltstack_args *); +int ioctl(struct thread *, struct ioctl_args *); +int reboot(struct thread *, struct reboot_args *); +int revoke(struct thread *, struct revoke_args *); +int symlink(struct thread *, struct symlink_args *); +int readlink(struct thread *, struct readlink_args *); +int execve(struct thread *, struct execve_args *); +int umask(struct thread *, struct umask_args *); +int chroot(struct thread *, struct chroot_args *); +int msync(struct thread *, struct msync_args *); +int vfork(struct thread *, struct vfork_args *); +int sbrk(struct thread *, struct sbrk_args *); +int sstk(struct thread *, struct sstk_args *); +int ovadvise(struct thread *, struct ovadvise_args *); +int munmap(struct thread *, struct munmap_args *); +int mprotect(struct thread *, struct mprotect_args *); +int madvise(struct thread *, struct madvise_args *); +int mincore(struct thread *, struct mincore_args *); +int getgroups(struct thread *, struct getgroups_args *); +int setgroups(struct thread *, struct setgroups_args *); +int getpgrp(struct thread *, struct getpgrp_args *); +int setpgid(struct thread *, struct setpgid_args *); +int setitimer(struct thread *, struct setitimer_args *); +int swapon(struct thread *, struct swapon_args *); +int getitimer(struct thread *, struct getitimer_args *); +int getdtablesize(struct thread *, struct getdtablesize_args *); +int dup2(struct thread *, struct dup2_args *); +int fcntl(struct thread *, struct fcntl_args *); +int select(struct thread *, struct select_args *); +int fsync(struct thread *, struct fsync_args *); +int setpriority(struct thread *, struct setpriority_args *); +int socket(struct thread *, struct socket_args *); +int connect(struct thread *, struct connect_args *); +int getpriority(struct thread *, struct getpriority_args *); +int osigreturn(struct thread *, struct osigreturn_args *); +int bind(struct thread *, struct bind_args *); +int setsockopt(struct thread *, struct setsockopt_args *); +int listen(struct thread *, struct listen_args *); +int gettimeofday(struct thread *, struct gettimeofday_args *); +int getrusage(struct thread *, struct getrusage_args *); +int getsockopt(struct thread *, struct getsockopt_args *); +int readv(struct thread *, struct readv_args *); +int writev(struct thread *, struct writev_args *); +int settimeofday(struct thread *, struct settimeofday_args *); +int fchown(struct thread *, struct fchown_args *); +int fchmod(struct thread *, struct fchmod_args *); +int setreuid(struct thread *, struct setreuid_args *); +int setregid(struct thread *, struct setregid_args *); +int rename(struct thread *, struct rename_args *); +int flock(struct thread *, struct flock_args *); +int mkfifo(struct thread *, struct mkfifo_args *); +int sendto(struct thread *, struct sendto_args *); +int shutdown(struct thread *, struct shutdown_args *); +int socketpair(struct thread *, struct socketpair_args *); +int mkdir(struct thread *, struct mkdir_args *); +int rmdir(struct thread *, struct rmdir_args *); +int utimes(struct thread *, struct utimes_args *); +int adjtime(struct thread *, struct adjtime_args *); +int setsid(struct thread *, struct setsid_args *); +int quotactl(struct thread *, struct quotactl_args *); +int nfssvc(struct thread *, struct nfssvc_args *); +int statfs(struct thread *, struct statfs_args *); +int fstatfs(struct thread *, struct fstatfs_args *); +int getfh(struct thread *, struct getfh_args *); +int getdomainname(struct thread *, struct getdomainname_args *); +int setdomainname(struct thread *, struct setdomainname_args *); +int uname(struct thread *, struct uname_args *); +int sysarch(struct thread *, struct sysarch_args *); +int rtprio(struct thread *, struct rtprio_args *); +int semsys(struct thread *, struct semsys_args *); +int msgsys(struct thread *, struct msgsys_args *); +int shmsys(struct thread *, struct shmsys_args *); +int pread(struct thread *, struct pread_args *); +int pwrite(struct thread *, struct pwrite_args *); +int ntp_adjtime(struct thread *, struct ntp_adjtime_args *); +int setgid(struct thread *, struct setgid_args *); +int setegid(struct thread *, struct setegid_args *); +int seteuid(struct thread *, struct seteuid_args *); +int stat(struct thread *, struct stat_args *); +int fstat(struct thread *, struct fstat_args *); +int lstat(struct thread *, struct lstat_args *); +int pathconf(struct thread *, struct pathconf_args *); +int fpathconf(struct thread *, struct fpathconf_args *); +int getrlimit(struct thread *, struct __getrlimit_args *); +int setrlimit(struct thread *, struct __setrlimit_args *); +int getdirentries(struct thread *, struct getdirentries_args *); +int mmap(struct thread *, struct mmap_args *); +int lseek(struct thread *, struct lseek_args *); +int truncate(struct thread *, struct truncate_args *); +int ftruncate(struct thread *, struct ftruncate_args *); +int __sysctl(struct thread *, struct sysctl_args *); +int mlock(struct thread *, struct mlock_args *); +int munlock(struct thread *, struct munlock_args *); +int undelete(struct thread *, struct undelete_args *); +int futimes(struct thread *, struct futimes_args *); +int getpgid(struct thread *, struct getpgid_args *); +int poll(struct thread *, struct poll_args *); +int lkmnosys(struct thread *, struct nosys_args *); +int __semctl(struct thread *, struct __semctl_args *); +int semget(struct thread *, struct semget_args *); +int semop(struct thread *, struct semop_args *); +int msgctl(struct thread *, struct msgctl_args *); +int msgget(struct thread *, struct msgget_args *); +int msgsnd(struct thread *, struct msgsnd_args *); +int msgrcv(struct thread *, struct msgrcv_args *); +int shmat(struct thread *, struct shmat_args *); +int shmctl(struct thread *, struct shmctl_args *); +int shmdt(struct thread *, struct shmdt_args *); +int shmget(struct thread *, struct shmget_args *); +int clock_gettime(struct thread *, struct clock_gettime_args *); +int clock_settime(struct thread *, struct clock_settime_args *); +int clock_getres(struct thread *, struct clock_getres_args *); +int nanosleep(struct thread *, struct nanosleep_args *); +int minherit(struct thread *, struct minherit_args *); +int rfork(struct thread *, struct rfork_args *); +int openbsd_poll(struct thread *, struct openbsd_poll_args *); +int issetugid(struct thread *, struct issetugid_args *); +int lchown(struct thread *, struct lchown_args *); +int getdents(struct thread *, struct getdents_args *); +int lchmod(struct thread *, struct lchmod_args *); +int lutimes(struct thread *, struct lutimes_args *); +int nstat(struct thread *, struct nstat_args *); +int nfstat(struct thread *, struct nfstat_args *); +int nlstat(struct thread *, struct nlstat_args *); +int fhstatfs(struct thread *, struct fhstatfs_args *); +int fhopen(struct thread *, struct fhopen_args *); +int fhstat(struct thread *, struct fhstat_args *); +int modnext(struct thread *, struct modnext_args *); +int modstat(struct thread *, struct modstat_args *); +int modfnext(struct thread *, struct modfnext_args *); +int modfind(struct thread *, struct modfind_args *); +int kldload(struct thread *, struct kldload_args *); +int kldunload(struct thread *, struct kldunload_args *); +int kldfind(struct thread *, struct kldfind_args *); +int kldnext(struct thread *, struct kldnext_args *); +int kldstat(struct thread *, struct kldstat_args *); +int kldfirstmod(struct thread *, struct kldfirstmod_args *); +int getsid(struct thread *, struct getsid_args *); +int setresuid(struct thread *, struct setresuid_args *); +int setresgid(struct thread *, struct setresgid_args *); +int aio_return(struct thread *, struct aio_return_args *); +int aio_suspend(struct thread *, struct aio_suspend_args *); +int aio_cancel(struct thread *, struct aio_cancel_args *); +int aio_error(struct thread *, struct aio_error_args *); +int aio_read(struct thread *, struct aio_read_args *); +int aio_write(struct thread *, struct aio_write_args *); +int lio_listio(struct thread *, struct lio_listio_args *); +int yield(struct thread *, struct yield_args *); +int mlockall(struct thread *, struct mlockall_args *); +int munlockall(struct thread *, struct munlockall_args *); +int __getcwd(struct thread *, struct __getcwd_args *); +int sched_setparam(struct thread *, struct sched_setparam_args *); +int sched_getparam(struct thread *, struct sched_getparam_args *); +int sched_setscheduler(struct thread *, struct sched_setscheduler_args *); +int sched_getscheduler(struct thread *, struct sched_getscheduler_args *); +int sched_yield(struct thread *, struct sched_yield_args *); +int sched_get_priority_max(struct thread *, struct sched_get_priority_max_args *); +int sched_get_priority_min(struct thread *, struct sched_get_priority_min_args *); +int sched_rr_get_interval(struct thread *, struct sched_rr_get_interval_args *); +int utrace(struct thread *, struct utrace_args *); +int sendfile(struct thread *, struct sendfile_args *); +int kldsym(struct thread *, struct kldsym_args *); +int jail(struct thread *, struct jail_args *); +int sigprocmask(struct thread *, struct sigprocmask_args *); +int sigsuspend(struct thread *, struct sigsuspend_args *); +int sigaction(struct thread *, struct sigaction_args *); +int sigpending(struct thread *, struct sigpending_args *); +int sigreturn(struct thread *, struct sigreturn_args *); +int __acl_get_file(struct thread *, struct __acl_get_file_args *); +int __acl_set_file(struct thread *, struct __acl_set_file_args *); +int __acl_get_fd(struct thread *, struct __acl_get_fd_args *); +int __acl_set_fd(struct thread *, struct __acl_set_fd_args *); +int __acl_delete_file(struct thread *, struct __acl_delete_file_args *); +int __acl_delete_fd(struct thread *, struct __acl_delete_fd_args *); +int __acl_aclcheck_file(struct thread *, struct __acl_aclcheck_file_args *); +int __acl_aclcheck_fd(struct thread *, struct __acl_aclcheck_fd_args *); +int extattrctl(struct thread *, struct extattrctl_args *); +int extattr_set_file(struct thread *, struct extattr_set_file_args *); +int extattr_get_file(struct thread *, struct extattr_get_file_args *); +int extattr_delete_file(struct thread *, struct extattr_delete_file_args *); +int aio_waitcomplete(struct thread *, struct aio_waitcomplete_args *); +int getresuid(struct thread *, struct getresuid_args *); +int getresgid(struct thread *, struct getresgid_args *); +int kqueue(struct thread *, struct kqueue_args *); +int kevent(struct thread *, struct kevent_args *); +int __cap_get_proc(struct thread *, struct __cap_get_proc_args *); +int __cap_set_proc(struct thread *, struct __cap_set_proc_args *); +int __cap_get_fd(struct thread *, struct __cap_get_fd_args *); +int __cap_get_file(struct thread *, struct __cap_get_file_args *); +int __cap_set_fd(struct thread *, struct __cap_set_fd_args *); +int __cap_set_file(struct thread *, struct __cap_set_file_args *); +int lkmressys(struct thread *, struct nosys_args *); +int extattr_set_fd(struct thread *, struct extattr_set_fd_args *); +int extattr_get_fd(struct thread *, struct extattr_get_fd_args *); +int extattr_delete_fd(struct thread *, struct extattr_delete_fd_args *); +int __setugid(struct thread *, struct __setugid_args *); +int nfsclnt(struct thread *, struct nfsclnt_args *); +int eaccess(struct thread *, struct eaccess_args *); +int nmount(struct thread *, struct nmount_args *); +int kse_exit(struct thread *, struct kse_exit_args *); +int kse_wakeup(struct thread *, struct kse_wakeup_args *); +int kse_new(struct thread *, struct kse_new_args *); +int thread_wakeup(struct thread *, struct thread_wakeup_args *); +int kse_yield(struct thread *, struct kse_yield_args *); + +#ifdef COMPAT_43 + +struct ocreat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char mode_l_[PADL_(int)]; int mode; char mode_r_[PADR_(int)]; +}; +struct olseek_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char offset_l_[PADL_(long)]; long offset; char offset_r_[PADR_(long)]; + char whence_l_[PADL_(int)]; int whence; char whence_r_[PADR_(int)]; +}; +struct ostat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct olstat_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char ub_l_[PADL_(struct ostat *)]; struct ostat * ub; char ub_r_[PADR_(struct ostat *)]; +}; +struct osigaction_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsa_l_[PADL_(struct osigaction *)]; struct osigaction * nsa; char nsa_r_[PADR_(struct osigaction *)]; + char osa_l_[PADL_(struct osigaction *)]; struct osigaction * osa; char osa_r_[PADR_(struct osigaction *)]; +}; +struct osigprocmask_args { + char how_l_[PADL_(int)]; int how; char how_r_[PADR_(int)]; + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct ofstat_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char sb_l_[PADL_(struct ostat *)]; struct ostat * sb; char sb_r_[PADR_(struct ostat *)]; +}; +struct getkerninfo_args { + char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)]; + char where_l_[PADL_(char *)]; char * where; char where_r_[PADR_(char *)]; + char size_l_[PADL_(size_t *)]; size_t * size; char size_r_[PADR_(size_t *)]; + char arg_l_[PADL_(int)]; int arg; char arg_r_[PADR_(int)]; +}; +struct ommap_args { + char addr_l_[PADL_(void *)]; void * addr; char addr_r_[PADR_(void *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char prot_l_[PADL_(int)]; int prot; char prot_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char pos_l_[PADL_(long)]; long pos; char pos_r_[PADR_(long)]; +}; +struct gethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct sethostname_args { + char hostname_l_[PADL_(char *)]; char * hostname; char hostname_r_[PADR_(char *)]; + char len_l_[PADL_(u_int)]; u_int len; char len_r_[PADR_(u_int)]; +}; +struct osend_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct orecv_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char buf_l_[PADL_(caddr_t)]; caddr_t buf; char buf_r_[PADR_(caddr_t)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osigvec_args { + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; + char nsv_l_[PADL_(struct sigvec *)]; struct sigvec * nsv; char nsv_r_[PADR_(struct sigvec *)]; + char osv_l_[PADL_(struct sigvec *)]; struct sigvec * osv; char osv_r_[PADR_(struct sigvec *)]; +}; +struct osigblock_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsetmask_args { + char mask_l_[PADL_(int)]; int mask; char mask_r_[PADR_(int)]; +}; +struct osigsuspend_args { + char mask_l_[PADL_(osigset_t)]; osigset_t mask; char mask_r_[PADR_(osigset_t)]; +}; +struct osigstack_args { + char nss_l_[PADL_(struct sigstack *)]; struct sigstack * nss; char nss_r_[PADR_(struct sigstack *)]; + char oss_l_[PADL_(struct sigstack *)]; struct sigstack * oss; char oss_r_[PADR_(struct sigstack *)]; +}; +struct orecvmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(struct omsghdr *)]; struct omsghdr * msg; char msg_r_[PADR_(struct omsghdr *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct osendmsg_args { + char s_l_[PADL_(int)]; int s; char s_r_[PADR_(int)]; + char msg_l_[PADL_(caddr_t)]; caddr_t msg; char msg_r_[PADR_(caddr_t)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; +struct otruncate_args { + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct oftruncate_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char length_l_[PADL_(long)]; long length; char length_r_[PADR_(long)]; +}; +struct ogetpeername_args { + char fdes_l_[PADL_(int)]; int fdes; char fdes_r_[PADR_(int)]; + char asa_l_[PADL_(caddr_t)]; caddr_t asa; char asa_r_[PADR_(caddr_t)]; + char alen_l_[PADL_(int *)]; int * alen; char alen_r_[PADR_(int *)]; +}; +struct osethostid_args { + char hostid_l_[PADL_(long)]; long hostid; char hostid_r_[PADR_(long)]; +}; +struct ogetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct osetrlimit_args { + char which_l_[PADL_(u_int)]; u_int which; char which_r_[PADR_(u_int)]; + char rlp_l_[PADL_(struct orlimit *)]; struct orlimit * rlp; char rlp_r_[PADR_(struct orlimit *)]; +}; +struct okillpg_args { + char pgid_l_[PADL_(int)]; int pgid; char pgid_r_[PADR_(int)]; + char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)]; +}; +struct ogetdirentries_args { + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; + char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)]; + char basep_l_[PADL_(long *)]; long * basep; char basep_r_[PADR_(long *)]; +}; +int ocreat(struct thread *, struct ocreat_args *); +int olseek(struct thread *, struct olseek_args *); +int ostat(struct thread *, struct ostat_args *); +int olstat(struct thread *, struct olstat_args *); +int osigaction(struct thread *, struct osigaction_args *); +int osigprocmask(struct thread *, struct osigprocmask_args *); +int osigpending(struct thread *, struct osigpending_args *); +int ofstat(struct thread *, struct ofstat_args *); +int ogetkerninfo(struct thread *, struct getkerninfo_args *); +int ogetpagesize(struct thread *, struct getpagesize_args *); +int ommap(struct thread *, struct ommap_args *); +int owait(struct thread *, struct owait_args *); +int ogethostname(struct thread *, struct gethostname_args *); +int osethostname(struct thread *, struct sethostname_args *); +int oaccept(struct thread *, struct accept_args *); +int osend(struct thread *, struct osend_args *); +int orecv(struct thread *, struct orecv_args *); +int osigvec(struct thread *, struct osigvec_args *); +int osigblock(struct thread *, struct osigblock_args *); +int osigsetmask(struct thread *, struct osigsetmask_args *); +int osigsuspend(struct thread *, struct osigsuspend_args *); +int osigstack(struct thread *, struct osigstack_args *); +int orecvmsg(struct thread *, struct orecvmsg_args *); +int osendmsg(struct thread *, struct osendmsg_args *); +int orecvfrom(struct thread *, struct recvfrom_args *); +int otruncate(struct thread *, struct otruncate_args *); +int oftruncate(struct thread *, struct oftruncate_args *); +int ogetpeername(struct thread *, struct ogetpeername_args *); +int ogethostid(struct thread *, struct ogethostid_args *); +int osethostid(struct thread *, struct osethostid_args *); +int ogetrlimit(struct thread *, struct ogetrlimit_args *); +int osetrlimit(struct thread *, struct osetrlimit_args *); +int okillpg(struct thread *, struct okillpg_args *); +int oquota(struct thread *, struct oquota_args *); +int ogetsockname(struct thread *, struct getsockname_args *); +int ogetdirentries(struct thread *, struct ogetdirentries_args *); + +#endif /* COMPAT_43 */ + +#undef PAD_ +#undef PADL_ +#undef PADR_ + +#endif /* !_IA32_SYSPROTO_H_ */ diff --git a/sys/ia64/ia32/ia32_syscall.h b/sys/ia64/ia32/ia32_syscall.h new file mode 100644 index 000000000000..c9e74cf2a0e1 --- /dev/null +++ b/sys/ia64/ia32/ia32_syscall.h @@ -0,0 +1,306 @@ +/* + * System call numbers. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#define IA32_SYS_syscall 0 +#define IA32_SYS_exit 1 +#define IA32_SYS_fork 2 +#define IA32_SYS_read 3 +#define IA32_SYS_write 4 +#define IA32_SYS_open 5 +#define IA32_SYS_close 6 +#define IA32_SYS_wait4 7 + /* 8 is old creat */ +#define IA32_SYS_link 9 +#define IA32_SYS_unlink 10 + /* 11 is obsolete execv */ +#define IA32_SYS_chdir 12 +#define IA32_SYS_fchdir 13 +#define IA32_SYS_mknod 14 +#define IA32_SYS_chmod 15 +#define IA32_SYS_chown 16 +#define IA32_SYS_break 17 +#define IA32_SYS_getfsstat 18 + /* 19 is old lseek */ +#define IA32_SYS_getpid 20 +#define IA32_SYS_mount 21 +#define IA32_SYS_unmount 22 +#define IA32_SYS_setuid 23 +#define IA32_SYS_getuid 24 +#define IA32_SYS_geteuid 25 +#define IA32_SYS_ptrace 26 +#define IA32_SYS_recvmsg 27 +#define IA32_SYS_sendmsg 28 +#define IA32_SYS_recvfrom 29 +#define IA32_SYS_accept 30 +#define IA32_SYS_getpeername 31 +#define IA32_SYS_getsockname 32 +#define IA32_SYS_access 33 +#define IA32_SYS_chflags 34 +#define IA32_SYS_fchflags 35 +#define IA32_SYS_sync 36 +#define IA32_SYS_kill 37 + /* 38 is old stat */ +#define IA32_SYS_getppid 39 + /* 40 is old lstat */ +#define IA32_SYS_dup 41 +#define IA32_SYS_pipe 42 +#define IA32_SYS_getegid 43 +#define IA32_SYS_profil 44 +#define IA32_SYS_ktrace 45 + /* 46 is old sigaction */ +#define IA32_SYS_getgid 47 + /* 48 is old sigprocmask */ +#define IA32_SYS_getlogin 49 +#define IA32_SYS_setlogin 50 +#define IA32_SYS_acct 51 + /* 52 is old sigpending */ +#define IA32_SYS_sigaltstack 53 +#define IA32_SYS_ioctl 54 +#define IA32_SYS_reboot 55 +#define IA32_SYS_revoke 56 +#define IA32_SYS_symlink 57 +#define IA32_SYS_readlink 58 +#define IA32_SYS_execve 59 +#define IA32_SYS_umask 60 +#define IA32_SYS_chroot 61 + /* 62 is old fstat */ + /* 63 is old getkerninfo */ + /* 64 is old getpagesize */ +#define IA32_SYS_msync 65 +#define IA32_SYS_vfork 66 + /* 67 is obsolete vread */ + /* 68 is obsolete vwrite */ +#define IA32_SYS_sbrk 69 +#define IA32_SYS_sstk 70 + /* 71 is old mmap */ +#define IA32_SYS_vadvise 72 +#define IA32_SYS_munmap 73 +#define IA32_SYS_mprotect 74 +#define IA32_SYS_madvise 75 + /* 76 is obsolete vhangup */ + /* 77 is obsolete vlimit */ +#define IA32_SYS_mincore 78 +#define IA32_SYS_getgroups 79 +#define IA32_SYS_setgroups 80 +#define IA32_SYS_getpgrp 81 +#define IA32_SYS_setpgid 82 +#define IA32_SYS_setitimer 83 + /* 84 is old wait */ +#define IA32_SYS_swapon 85 +#define IA32_SYS_getitimer 86 + /* 87 is old gethostname */ + /* 88 is old sethostname */ +#define IA32_SYS_getdtablesize 89 +#define IA32_SYS_dup2 90 +#define IA32_SYS_fcntl 92 +#define IA32_SYS_select 93 +#define IA32_SYS_fsync 95 +#define IA32_SYS_setpriority 96 +#define IA32_SYS_socket 97 +#define IA32_SYS_connect 98 + /* 99 is old accept */ +#define IA32_SYS_getpriority 100 + /* 101 is old send */ + /* 102 is old recv */ +#define IA32_SYS_osigreturn 103 +#define IA32_SYS_bind 104 +#define IA32_SYS_setsockopt 105 +#define IA32_SYS_listen 106 + /* 107 is obsolete vtimes */ + /* 108 is old sigvec */ + /* 109 is old sigblock */ + /* 110 is old sigsetmask */ + /* 111 is old sigsuspend */ + /* 112 is old sigstack */ + /* 113 is old recvmsg */ + /* 114 is old sendmsg */ + /* 115 is obsolete vtrace */ +#define IA32_SYS_gettimeofday 116 +#define IA32_SYS_getrusage 117 +#define IA32_SYS_getsockopt 118 +#define IA32_SYS_readv 120 +#define IA32_SYS_writev 121 +#define IA32_SYS_settimeofday 122 +#define IA32_SYS_fchown 123 +#define IA32_SYS_fchmod 124 + /* 125 is old recvfrom */ +#define IA32_SYS_setreuid 126 +#define IA32_SYS_setregid 127 +#define IA32_SYS_rename 128 + /* 129 is old truncate */ + /* 130 is old ftruncate */ +#define IA32_SYS_flock 131 +#define IA32_SYS_mkfifo 132 +#define IA32_SYS_sendto 133 +#define IA32_SYS_shutdown 134 +#define IA32_SYS_socketpair 135 +#define IA32_SYS_mkdir 136 +#define IA32_SYS_rmdir 137 +#define IA32_SYS_utimes 138 + /* 139 is obsolete 4.2 sigreturn */ +#define IA32_SYS_adjtime 140 + /* 141 is old getpeername */ + /* 142 is old gethostid */ + /* 143 is old sethostid */ + /* 144 is old getrlimit */ + /* 145 is old setrlimit */ + /* 146 is old killpg */ +#define IA32_SYS_setsid 147 +#define IA32_SYS_quotactl 148 + /* 149 is old quota */ + /* 150 is old getsockname */ +#define IA32_SYS_nfssvc 155 + /* 156 is old getdirentries */ +#define IA32_SYS_statfs 157 +#define IA32_SYS_fstatfs 158 +#define IA32_SYS_getfh 161 +#define IA32_SYS_getdomainname 162 +#define IA32_SYS_setdomainname 163 +#define IA32_SYS_uname 164 +#define IA32_SYS_sysarch 165 +#define IA32_SYS_rtprio 166 +#define IA32_SYS_semsys 169 +#define IA32_SYS_msgsys 170 +#define IA32_SYS_shmsys 171 +#define IA32_SYS_pread 173 +#define IA32_SYS_pwrite 174 +#define IA32_SYS_ntp_adjtime 176 +#define IA32_SYS_setgid 181 +#define IA32_SYS_setegid 182 +#define IA32_SYS_seteuid 183 +#define IA32_SYS_stat 188 +#define IA32_SYS_fstat 189 +#define IA32_SYS_lstat 190 +#define IA32_SYS_pathconf 191 +#define IA32_SYS_fpathconf 192 +#define IA32_SYS_getrlimit 194 +#define IA32_SYS_setrlimit 195 +#define IA32_SYS_getdirentries 196 +#define IA32_SYS_mmap 197 +#define IA32_SYS___syscall 198 +#define IA32_SYS_lseek 199 +#define IA32_SYS_truncate 200 +#define IA32_SYS_ftruncate 201 +#define IA32_SYS___sysctl 202 +#define IA32_SYS_mlock 203 +#define IA32_SYS_munlock 204 +#define IA32_SYS_undelete 205 +#define IA32_SYS_futimes 206 +#define IA32_SYS_getpgid 207 +#define IA32_SYS_poll 209 +#define IA32_SYS___semctl 220 +#define IA32_SYS_semget 221 +#define IA32_SYS_semop 222 +#define IA32_SYS_msgctl 224 +#define IA32_SYS_msgget 225 +#define IA32_SYS_msgsnd 226 +#define IA32_SYS_msgrcv 227 +#define IA32_SYS_shmat 228 +#define IA32_SYS_shmctl 229 +#define IA32_SYS_shmdt 230 +#define IA32_SYS_shmget 231 +#define IA32_SYS_clock_gettime 232 +#define IA32_SYS_clock_settime 233 +#define IA32_SYS_clock_getres 234 +#define IA32_SYS_nanosleep 240 +#define IA32_SYS_minherit 250 +#define IA32_SYS_rfork 251 +#define IA32_SYS_openbsd_poll 252 +#define IA32_SYS_issetugid 253 +#define IA32_SYS_lchown 254 +#define IA32_SYS_getdents 272 +#define IA32_SYS_lchmod 274 +#define IA32_SYS_netbsd_lchown 275 +#define IA32_SYS_lutimes 276 +#define IA32_SYS_netbsd_msync 277 +#define IA32_SYS_nstat 278 +#define IA32_SYS_nfstat 279 +#define IA32_SYS_nlstat 280 +#define IA32_SYS_fhstatfs 297 +#define IA32_SYS_fhopen 298 +#define IA32_SYS_fhstat 299 +#define IA32_SYS_modnext 300 +#define IA32_SYS_modstat 301 +#define IA32_SYS_modfnext 302 +#define IA32_SYS_modfind 303 +#define IA32_SYS_kldload 304 +#define IA32_SYS_kldunload 305 +#define IA32_SYS_kldfind 306 +#define IA32_SYS_kldnext 307 +#define IA32_SYS_kldstat 308 +#define IA32_SYS_kldfirstmod 309 +#define IA32_SYS_getsid 310 +#define IA32_SYS_setresuid 311 +#define IA32_SYS_setresgid 312 + /* 313 is obsolete signanosleep */ +#define IA32_SYS_aio_return 314 +#define IA32_SYS_aio_suspend 315 +#define IA32_SYS_aio_cancel 316 +#define IA32_SYS_aio_error 317 +#define IA32_SYS_aio_read 318 +#define IA32_SYS_aio_write 319 +#define IA32_SYS_lio_listio 320 +#define IA32_SYS_yield 321 + /* 322 is obsolete thr_sleep */ + /* 323 is obsolete thr_wakeup */ +#define IA32_SYS_mlockall 324 +#define IA32_SYS_munlockall 325 +#define IA32_SYS___getcwd 326 +#define IA32_SYS_sched_setparam 327 +#define IA32_SYS_sched_getparam 328 +#define IA32_SYS_sched_setscheduler 329 +#define IA32_SYS_sched_getscheduler 330 +#define IA32_SYS_sched_yield 331 +#define IA32_SYS_sched_get_priority_max 332 +#define IA32_SYS_sched_get_priority_min 333 +#define IA32_SYS_sched_rr_get_interval 334 +#define IA32_SYS_utrace 335 +#define IA32_SYS_sendfile 336 +#define IA32_SYS_kldsym 337 +#define IA32_SYS_jail 338 +#define IA32_SYS_sigprocmask 340 +#define IA32_SYS_sigsuspend 341 +#define IA32_SYS_sigaction 342 +#define IA32_SYS_sigpending 343 +#define IA32_SYS_sigreturn 344 +#define IA32_SYS___acl_get_file 347 +#define IA32_SYS___acl_set_file 348 +#define IA32_SYS___acl_get_fd 349 +#define IA32_SYS___acl_set_fd 350 +#define IA32_SYS___acl_delete_file 351 +#define IA32_SYS___acl_delete_fd 352 +#define IA32_SYS___acl_aclcheck_file 353 +#define IA32_SYS___acl_aclcheck_fd 354 +#define IA32_SYS_extattrctl 355 +#define IA32_SYS_extattr_set_file 356 +#define IA32_SYS_extattr_get_file 357 +#define IA32_SYS_extattr_delete_file 358 +#define IA32_SYS_aio_waitcomplete 359 +#define IA32_SYS_getresuid 360 +#define IA32_SYS_getresgid 361 +#define IA32_SYS_kqueue 362 +#define IA32_SYS_kevent 363 +#define IA32_SYS___cap_get_proc 364 +#define IA32_SYS___cap_set_proc 365 +#define IA32_SYS___cap_get_fd 366 +#define IA32_SYS___cap_get_file 367 +#define IA32_SYS___cap_set_fd 368 +#define IA32_SYS___cap_set_file 369 +#define IA32_SYS_extattr_set_fd 371 +#define IA32_SYS_extattr_get_fd 372 +#define IA32_SYS_extattr_delete_fd 373 +#define IA32_SYS___setugid 374 +#define IA32_SYS_nfsclnt 375 +#define IA32_SYS_eaccess 376 +#define IA32_SYS_nmount 378 +#define IA32_SYS_kse_exit 379 +#define IA32_SYS_kse_wakeup 380 +#define IA32_SYS_kse_new 381 +#define IA32_SYS_thread_wakeup 382 +#define IA32_SYS_kse_yield 383 +#define IA32_SYS_MAXSYSCALL 390 diff --git a/sys/ia64/ia32/ia32_sysent.c b/sys/ia64/ia32/ia32_sysent.c new file mode 100644 index 000000000000..fa7913508c90 --- /dev/null +++ b/sys/ia64/ia32/ia32_sysent.c @@ -0,0 +1,415 @@ +/* + * System call switch table. + * + * DO NOT EDIT-- this file is automatically generated. + * $FreeBSD$ + * created from FreeBSD + */ + +#include "opt_compat.h" + +#include +#include +#include + +#define AS(name) (sizeof(struct name) / sizeof(register_t)) + +#ifdef COMPAT_43 +#define compat(n, name) n, (sy_call_t *)__CONCAT(o,name) +#else +#define compat(n, name) 0, (sy_call_t *)nosys +#endif + +/* The casts are bogus but will do for now. */ +struct sysent ia32_sysent[] = { + { 0, (sy_call_t *)nosys }, /* 0 = syscall */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { AS(open_args), (sy_call_t *)open }, /* 5 = open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(wait_args), (sy_call_t *)wait4 }, /* 7 = wait4 */ + { compat(AS(ocreat_args),creat) }, /* 8 = old creat */ + { AS(link_args), (sy_call_t *)link }, /* 9 = link */ + { AS(unlink_args), (sy_call_t *)unlink }, /* 10 = unlink */ + { 0, (sy_call_t *)nosys }, /* 11 = obsolete execv */ + { AS(chdir_args), (sy_call_t *)chdir }, /* 12 = chdir */ + { AS(fchdir_args), (sy_call_t *)fchdir }, /* 13 = fchdir */ + { AS(mknod_args), (sy_call_t *)mknod }, /* 14 = mknod */ + { AS(chmod_args), (sy_call_t *)chmod }, /* 15 = chmod */ + { AS(chown_args), (sy_call_t *)chown }, /* 16 = chown */ + { SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak }, /* 17 = break */ + { AS(getfsstat_args), (sy_call_t *)getfsstat }, /* 18 = getfsstat */ + { compat(AS(olseek_args),lseek) }, /* 19 = old lseek */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ + { AS(mount_args), (sy_call_t *)mount }, /* 21 = mount */ + { AS(unmount_args), (sy_call_t *)unmount }, /* 22 = unmount */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | 0, (sy_call_t *)geteuid }, /* 25 = geteuid */ + { AS(ptrace_args), (sy_call_t *)ptrace }, /* 26 = ptrace */ + { SYF_MPSAFE | AS(recvmsg_args), (sy_call_t *)recvmsg }, /* 27 = recvmsg */ + { SYF_MPSAFE | AS(sendmsg_args), (sy_call_t *)sendmsg }, /* 28 = sendmsg */ + { SYF_MPSAFE | AS(recvfrom_args), (sy_call_t *)recvfrom }, /* 29 = recvfrom */ + { SYF_MPSAFE | AS(accept_args), (sy_call_t *)accept }, /* 30 = accept */ + { SYF_MPSAFE | AS(getpeername_args), (sy_call_t *)getpeername }, /* 31 = getpeername */ + { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)getsockname }, /* 32 = getsockname */ + { AS(access_args), (sy_call_t *)access }, /* 33 = access */ + { AS(chflags_args), (sy_call_t *)chflags }, /* 34 = chflags */ + { AS(fchflags_args), (sy_call_t *)fchflags }, /* 35 = fchflags */ + { 0, (sy_call_t *)sync }, /* 36 = sync */ + { SYF_MPSAFE | AS(kill_args), (sy_call_t *)kill }, /* 37 = kill */ + { compat(AS(ostat_args),stat) }, /* 38 = old stat */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid }, /* 39 = getppid */ + { compat(AS(olstat_args),lstat) }, /* 40 = old lstat */ + { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)getegid }, /* 43 = getegid */ + { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil }, /* 44 = profil */ + { AS(ktrace_args), (sy_call_t *)ktrace }, /* 45 = ktrace */ + { compat(SYF_MPSAFE | AS(osigaction_args),sigaction) }, /* 46 = old sigaction */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { compat(SYF_MPSAFE | AS(osigprocmask_args),sigprocmask) }, /* 48 = old sigprocmask */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ + { compat(SYF_MPSAFE | 0,sigpending) }, /* 52 = old sigpending */ + { SYF_MPSAFE | AS(sigaltstack_args), (sy_call_t *)sigaltstack }, /* 53 = sigaltstack */ + { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl }, /* 54 = ioctl */ + { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot }, /* 55 = reboot */ + { AS(revoke_args), (sy_call_t *)revoke }, /* 56 = revoke */ + { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ + { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ + { SYF_MPSAFE | AS(execve_args), (sy_call_t *)execve }, /* 59 = execve */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ + { compat(SYF_MPSAFE | AS(ofstat_args),fstat) }, /* 62 = old fstat */ + { compat(SYF_MPSAFE | AS(getkerninfo_args),getkerninfo) }, /* 63 = old getkerninfo */ + { compat(SYF_MPSAFE | 0,getpagesize) }, /* 64 = old getpagesize */ + { AS(msync_args), (sy_call_t *)msync }, /* 65 = msync */ + { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ + { 0, (sy_call_t *)nosys }, /* 67 = obsolete vread */ + { 0, (sy_call_t *)nosys }, /* 68 = obsolete vwrite */ + { SYF_MPSAFE | AS(sbrk_args), (sy_call_t *)sbrk }, /* 69 = sbrk */ + { SYF_MPSAFE | AS(sstk_args), (sy_call_t *)sstk }, /* 70 = sstk */ + { compat(SYF_MPSAFE | AS(ommap_args),mmap) }, /* 71 = old mmap */ + { SYF_MPSAFE | AS(ovadvise_args), (sy_call_t *)ovadvise }, /* 72 = vadvise */ + { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap }, /* 73 = munmap */ + { SYF_MPSAFE | AS(mprotect_args), (sy_call_t *)mprotect }, /* 74 = mprotect */ + { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise }, /* 75 = madvise */ + { 0, (sy_call_t *)nosys }, /* 76 = obsolete vhangup */ + { 0, (sy_call_t *)nosys }, /* 77 = obsolete vlimit */ + { SYF_MPSAFE | AS(mincore_args), (sy_call_t *)mincore }, /* 78 = mincore */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 81 = getpgrp */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setitimer_args), (sy_call_t *)setitimer }, /* 83 = setitimer */ + { compat(SYF_MPSAFE | 0,wait) }, /* 84 = old wait */ + { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon }, /* 85 = swapon */ + { SYF_MPSAFE | AS(getitimer_args), (sy_call_t *)getitimer }, /* 86 = getitimer */ + { compat(SYF_MPSAFE | AS(gethostname_args),gethostname) }, /* 87 = old gethostname */ + { compat(SYF_MPSAFE | AS(sethostname_args),sethostname) }, /* 88 = old sethostname */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { 0, (sy_call_t *)nosys }, /* 91 = getdopt */ + { SYF_MPSAFE | AS(fcntl_args), (sy_call_t *)fcntl }, /* 92 = fcntl */ + { SYF_MPSAFE | AS(select_args), (sy_call_t *)select }, /* 93 = select */ + { 0, (sy_call_t *)nosys }, /* 94 = setdopt */ + { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(socket_args), (sy_call_t *)socket }, /* 97 = socket */ + { SYF_MPSAFE | AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ + { compat(SYF_MPSAFE | AS(accept_args),accept) }, /* 99 = old accept */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { compat(SYF_MPSAFE | AS(osend_args),send) }, /* 101 = old send */ + { compat(SYF_MPSAFE | AS(orecv_args),recv) }, /* 102 = old recv */ + { AS(osigreturn_args), (sy_call_t *)osigreturn }, /* 103 = osigreturn */ + { SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ + { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ + { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ + { 0, (sy_call_t *)nosys }, /* 107 = obsolete vtimes */ + { compat(SYF_MPSAFE | AS(osigvec_args),sigvec) }, /* 108 = old sigvec */ + { compat(SYF_MPSAFE | AS(osigblock_args),sigblock) }, /* 109 = old sigblock */ + { compat(SYF_MPSAFE | AS(osigsetmask_args),sigsetmask) }, /* 110 = old sigsetmask */ + { compat(SYF_MPSAFE | AS(osigsuspend_args),sigsuspend) }, /* 111 = old sigsuspend */ + { compat(SYF_MPSAFE | AS(osigstack_args),sigstack) }, /* 112 = old sigstack */ + { compat(SYF_MPSAFE | AS(orecvmsg_args),recvmsg) }, /* 113 = old recvmsg */ + { compat(SYF_MPSAFE | AS(osendmsg_args),sendmsg) }, /* 114 = old sendmsg */ + { 0, (sy_call_t *)nosys }, /* 115 = obsolete vtrace */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 116 = gettimeofday */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 117 = getrusage */ + { SYF_MPSAFE | AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ + { 0, (sy_call_t *)nosys }, /* 119 = resuba */ + { SYF_MPSAFE | AS(readv_args), (sy_call_t *)readv }, /* 120 = readv */ + { SYF_MPSAFE | AS(writev_args), (sy_call_t *)writev }, /* 121 = writev */ + { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 122 = settimeofday */ + { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ + { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ + { compat(SYF_MPSAFE | AS(recvfrom_args),recvfrom) }, /* 125 = old recvfrom */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ + { compat(AS(otruncate_args),truncate) }, /* 129 = old truncate */ + { compat(AS(oftruncate_args),ftruncate) }, /* 130 = old ftruncate */ + { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ + { AS(mkfifo_args), (sy_call_t *)mkfifo }, /* 132 = mkfifo */ + { SYF_MPSAFE | AS(sendto_args), (sy_call_t *)sendto }, /* 133 = sendto */ + { SYF_MPSAFE | AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ + { SYF_MPSAFE | AS(socketpair_args), (sy_call_t *)socketpair }, /* 135 = socketpair */ + { AS(mkdir_args), (sy_call_t *)mkdir }, /* 136 = mkdir */ + { AS(rmdir_args), (sy_call_t *)rmdir }, /* 137 = rmdir */ + { AS(utimes_args), (sy_call_t *)utimes }, /* 138 = utimes */ + { 0, (sy_call_t *)nosys }, /* 139 = obsolete 4.2 sigreturn */ + { SYF_MPSAFE | AS(adjtime_args), (sy_call_t *)adjtime }, /* 140 = adjtime */ + { compat(SYF_MPSAFE | AS(ogetpeername_args),getpeername) }, /* 141 = old getpeername */ + { compat(SYF_MPSAFE | 0,gethostid) }, /* 142 = old gethostid */ + { compat(SYF_MPSAFE | AS(osethostid_args),sethostid) }, /* 143 = old sethostid */ + { compat(SYF_MPSAFE | AS(ogetrlimit_args),getrlimit) }, /* 144 = old getrlimit */ + { compat(SYF_MPSAFE | AS(osetrlimit_args),setrlimit) }, /* 145 = old setrlimit */ + { compat(SYF_MPSAFE | AS(okillpg_args),killpg) }, /* 146 = old killpg */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { AS(quotactl_args), (sy_call_t *)quotactl }, /* 148 = quotactl */ + { compat(SYF_MPSAFE | 0,quota) }, /* 149 = old quota */ + { compat(SYF_MPSAFE | AS(getsockname_args),getsockname) }, /* 150 = old getsockname */ + { 0, (sy_call_t *)nosys }, /* 151 = sem_lock */ + { 0, (sy_call_t *)nosys }, /* 152 = sem_wakeup */ + { 0, (sy_call_t *)nosys }, /* 153 = asyncdaemon */ + { 0, (sy_call_t *)nosys }, /* 154 = nosys */ + { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys }, /* 155 = nfssvc */ + { compat(AS(ogetdirentries_args),getdirentries) }, /* 156 = old getdirentries */ + { AS(statfs_args), (sy_call_t *)statfs }, /* 157 = statfs */ + { AS(fstatfs_args), (sy_call_t *)fstatfs }, /* 158 = fstatfs */ + { 0, (sy_call_t *)nosys }, /* 159 = nosys */ + { 0, (sy_call_t *)nosys }, /* 160 = nosys */ + { AS(getfh_args), (sy_call_t *)getfh }, /* 161 = getfh */ + { SYF_MPSAFE | AS(getdomainname_args), (sy_call_t *)getdomainname }, /* 162 = getdomainname */ + { SYF_MPSAFE | AS(setdomainname_args), (sy_call_t *)setdomainname }, /* 163 = setdomainname */ + { SYF_MPSAFE | AS(uname_args), (sy_call_t *)uname }, /* 164 = uname */ + { AS(sysarch_args), (sy_call_t *)sysarch }, /* 165 = sysarch */ + { SYF_MPSAFE | AS(rtprio_args), (sy_call_t *)rtprio }, /* 166 = rtprio */ + { 0, (sy_call_t *)nosys }, /* 167 = nosys */ + { 0, (sy_call_t *)nosys }, /* 168 = nosys */ + { SYF_MPSAFE | AS(semsys_args), (sy_call_t *)lkmressys }, /* 169 = semsys */ + { SYF_MPSAFE | AS(msgsys_args), (sy_call_t *)lkmressys }, /* 170 = msgsys */ + { SYF_MPSAFE | AS(shmsys_args), (sy_call_t *)lkmressys }, /* 171 = shmsys */ + { 0, (sy_call_t *)nosys }, /* 172 = nosys */ + { SYF_MPSAFE | AS(pread_args), (sy_call_t *)pread }, /* 173 = pread */ + { SYF_MPSAFE | AS(pwrite_args), (sy_call_t *)pwrite }, /* 174 = pwrite */ + { 0, (sy_call_t *)nosys }, /* 175 = nosys */ + { SYF_MPSAFE | AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime }, /* 176 = ntp_adjtime */ + { 0, (sy_call_t *)nosys }, /* 177 = sfork */ + { 0, (sy_call_t *)nosys }, /* 178 = getdescriptor */ + { 0, (sy_call_t *)nosys }, /* 179 = setdescriptor */ + { 0, (sy_call_t *)nosys }, /* 180 = nosys */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 181 = setgid */ + { SYF_MPSAFE | AS(setegid_args), (sy_call_t *)setegid }, /* 182 = setegid */ + { SYF_MPSAFE | AS(seteuid_args), (sy_call_t *)seteuid }, /* 183 = seteuid */ + { 0, (sy_call_t *)nosys }, /* 184 = lfs_bmapv */ + { 0, (sy_call_t *)nosys }, /* 185 = lfs_markv */ + { 0, (sy_call_t *)nosys }, /* 186 = lfs_segclean */ + { 0, (sy_call_t *)nosys }, /* 187 = lfs_segwait */ + { AS(stat_args), (sy_call_t *)stat }, /* 188 = stat */ + { SYF_MPSAFE | AS(fstat_args), (sy_call_t *)fstat }, /* 189 = fstat */ + { AS(lstat_args), (sy_call_t *)lstat }, /* 190 = lstat */ + { AS(pathconf_args), (sy_call_t *)pathconf }, /* 191 = pathconf */ + { SYF_MPSAFE | AS(fpathconf_args), (sy_call_t *)fpathconf }, /* 192 = fpathconf */ + { 0, (sy_call_t *)nosys }, /* 193 = nosys */ + { SYF_MPSAFE | AS(__getrlimit_args), (sy_call_t *)getrlimit }, /* 194 = getrlimit */ + { SYF_MPSAFE | AS(__setrlimit_args), (sy_call_t *)setrlimit }, /* 195 = setrlimit */ + { AS(getdirentries_args), (sy_call_t *)getdirentries }, /* 196 = getdirentries */ + { SYF_MPSAFE | AS(mmap_args), (sy_call_t *)mmap }, /* 197 = mmap */ + { 0, (sy_call_t *)nosys }, /* 198 = __syscall */ + { AS(lseek_args), (sy_call_t *)lseek }, /* 199 = lseek */ + { AS(truncate_args), (sy_call_t *)truncate }, /* 200 = truncate */ + { AS(ftruncate_args), (sy_call_t *)ftruncate }, /* 201 = ftruncate */ + { SYF_MPSAFE | AS(sysctl_args), (sy_call_t *)__sysctl }, /* 202 = __sysctl */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 203 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 204 = munlock */ + { AS(undelete_args), (sy_call_t *)undelete }, /* 205 = undelete */ + { AS(futimes_args), (sy_call_t *)futimes }, /* 206 = futimes */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 207 = getpgid */ + { 0, (sy_call_t *)nosys }, /* 208 = newreboot */ + { SYF_MPSAFE | AS(poll_args), (sy_call_t *)poll }, /* 209 = poll */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 210 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 211 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 212 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 213 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 214 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 215 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 216 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 217 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 218 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 219 = lkmnosys */ + { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)lkmressys }, /* 220 = __semctl */ + { SYF_MPSAFE | AS(semget_args), (sy_call_t *)lkmressys }, /* 221 = semget */ + { SYF_MPSAFE | AS(semop_args), (sy_call_t *)lkmressys }, /* 222 = semop */ + { 0, (sy_call_t *)nosys }, /* 223 = semconfig */ + { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)lkmressys }, /* 224 = msgctl */ + { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)lkmressys }, /* 225 = msgget */ + { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)lkmressys }, /* 226 = msgsnd */ + { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)lkmressys }, /* 227 = msgrcv */ + { SYF_MPSAFE | AS(shmat_args), (sy_call_t *)lkmressys }, /* 228 = shmat */ + { SYF_MPSAFE | AS(shmctl_args), (sy_call_t *)lkmressys }, /* 229 = shmctl */ + { SYF_MPSAFE | AS(shmdt_args), (sy_call_t *)lkmressys }, /* 230 = shmdt */ + { SYF_MPSAFE | AS(shmget_args), (sy_call_t *)lkmressys }, /* 231 = shmget */ + { SYF_MPSAFE | AS(clock_gettime_args), (sy_call_t *)clock_gettime }, /* 232 = clock_gettime */ + { SYF_MPSAFE | AS(clock_settime_args), (sy_call_t *)clock_settime }, /* 233 = clock_settime */ + { SYF_MPSAFE | AS(clock_getres_args), (sy_call_t *)clock_getres }, /* 234 = clock_getres */ + { 0, (sy_call_t *)nosys }, /* 235 = timer_create */ + { 0, (sy_call_t *)nosys }, /* 236 = timer_delete */ + { 0, (sy_call_t *)nosys }, /* 237 = timer_settime */ + { 0, (sy_call_t *)nosys }, /* 238 = timer_gettime */ + { 0, (sy_call_t *)nosys }, /* 239 = timer_getoverrun */ + { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 240 = nanosleep */ + { 0, (sy_call_t *)nosys }, /* 241 = nosys */ + { 0, (sy_call_t *)nosys }, /* 242 = nosys */ + { 0, (sy_call_t *)nosys }, /* 243 = nosys */ + { 0, (sy_call_t *)nosys }, /* 244 = nosys */ + { 0, (sy_call_t *)nosys }, /* 245 = nosys */ + { 0, (sy_call_t *)nosys }, /* 246 = nosys */ + { 0, (sy_call_t *)nosys }, /* 247 = nosys */ + { 0, (sy_call_t *)nosys }, /* 248 = nosys */ + { 0, (sy_call_t *)nosys }, /* 249 = nosys */ + { SYF_MPSAFE | AS(minherit_args), (sy_call_t *)minherit }, /* 250 = minherit */ + { SYF_MPSAFE | AS(rfork_args), (sy_call_t *)rfork }, /* 251 = rfork */ + { SYF_MPSAFE | AS(openbsd_poll_args), (sy_call_t *)openbsd_poll }, /* 252 = openbsd_poll */ + { 0, (sy_call_t *)issetugid }, /* 253 = issetugid */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 254 = lchown */ + { 0, (sy_call_t *)nosys }, /* 255 = nosys */ + { 0, (sy_call_t *)nosys }, /* 256 = nosys */ + { 0, (sy_call_t *)nosys }, /* 257 = nosys */ + { 0, (sy_call_t *)nosys }, /* 258 = nosys */ + { 0, (sy_call_t *)nosys }, /* 259 = nosys */ + { 0, (sy_call_t *)nosys }, /* 260 = nosys */ + { 0, (sy_call_t *)nosys }, /* 261 = nosys */ + { 0, (sy_call_t *)nosys }, /* 262 = nosys */ + { 0, (sy_call_t *)nosys }, /* 263 = nosys */ + { 0, (sy_call_t *)nosys }, /* 264 = nosys */ + { 0, (sy_call_t *)nosys }, /* 265 = nosys */ + { 0, (sy_call_t *)nosys }, /* 266 = nosys */ + { 0, (sy_call_t *)nosys }, /* 267 = nosys */ + { 0, (sy_call_t *)nosys }, /* 268 = nosys */ + { 0, (sy_call_t *)nosys }, /* 269 = nosys */ + { 0, (sy_call_t *)nosys }, /* 270 = nosys */ + { 0, (sy_call_t *)nosys }, /* 271 = nosys */ + { AS(getdents_args), (sy_call_t *)getdents }, /* 272 = getdents */ + { 0, (sy_call_t *)nosys }, /* 273 = nosys */ + { AS(lchmod_args), (sy_call_t *)lchmod }, /* 274 = lchmod */ + { AS(lchown_args), (sy_call_t *)lchown }, /* 275 = netbsd_lchown */ + { AS(lutimes_args), (sy_call_t *)lutimes }, /* 276 = lutimes */ + { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync }, /* 277 = netbsd_msync */ + { AS(nstat_args), (sy_call_t *)nstat }, /* 278 = nstat */ + { SYF_MPSAFE | AS(nfstat_args), (sy_call_t *)nfstat }, /* 279 = nfstat */ + { AS(nlstat_args), (sy_call_t *)nlstat }, /* 280 = nlstat */ + { 0, (sy_call_t *)nosys }, /* 281 = nosys */ + { 0, (sy_call_t *)nosys }, /* 282 = nosys */ + { 0, (sy_call_t *)nosys }, /* 283 = nosys */ + { 0, (sy_call_t *)nosys }, /* 284 = nosys */ + { 0, (sy_call_t *)nosys }, /* 285 = nosys */ + { 0, (sy_call_t *)nosys }, /* 286 = nosys */ + { 0, (sy_call_t *)nosys }, /* 287 = nosys */ + { 0, (sy_call_t *)nosys }, /* 288 = nosys */ + { 0, (sy_call_t *)nosys }, /* 289 = nosys */ + { 0, (sy_call_t *)nosys }, /* 290 = nosys */ + { 0, (sy_call_t *)nosys }, /* 291 = nosys */ + { 0, (sy_call_t *)nosys }, /* 292 = nosys */ + { 0, (sy_call_t *)nosys }, /* 293 = nosys */ + { 0, (sy_call_t *)nosys }, /* 294 = nosys */ + { 0, (sy_call_t *)nosys }, /* 295 = nosys */ + { 0, (sy_call_t *)nosys }, /* 296 = nosys */ + { AS(fhstatfs_args), (sy_call_t *)fhstatfs }, /* 297 = fhstatfs */ + { AS(fhopen_args), (sy_call_t *)fhopen }, /* 298 = fhopen */ + { AS(fhstat_args), (sy_call_t *)fhstat }, /* 299 = fhstat */ + { SYF_MPSAFE | AS(modnext_args), (sy_call_t *)modnext }, /* 300 = modnext */ + { SYF_MPSAFE | AS(modstat_args), (sy_call_t *)modstat }, /* 301 = modstat */ + { SYF_MPSAFE | AS(modfnext_args), (sy_call_t *)modfnext }, /* 302 = modfnext */ + { SYF_MPSAFE | AS(modfind_args), (sy_call_t *)modfind }, /* 303 = modfind */ + { SYF_MPSAFE | AS(kldload_args), (sy_call_t *)kldload }, /* 304 = kldload */ + { SYF_MPSAFE | AS(kldunload_args), (sy_call_t *)kldunload }, /* 305 = kldunload */ + { SYF_MPSAFE | AS(kldfind_args), (sy_call_t *)kldfind }, /* 306 = kldfind */ + { SYF_MPSAFE | AS(kldnext_args), (sy_call_t *)kldnext }, /* 307 = kldnext */ + { SYF_MPSAFE | AS(kldstat_args), (sy_call_t *)kldstat }, /* 308 = kldstat */ + { SYF_MPSAFE | AS(kldfirstmod_args), (sy_call_t *)kldfirstmod }, /* 309 = kldfirstmod */ + { SYF_MPSAFE | AS(getsid_args), (sy_call_t *)getsid }, /* 310 = getsid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 311 = setresuid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 312 = setresgid */ + { 0, (sy_call_t *)nosys }, /* 313 = obsolete signanosleep */ + { AS(aio_return_args), (sy_call_t *)lkmressys }, /* 314 = aio_return */ + { AS(aio_suspend_args), (sy_call_t *)lkmressys }, /* 315 = aio_suspend */ + { AS(aio_cancel_args), (sy_call_t *)lkmressys }, /* 316 = aio_cancel */ + { AS(aio_error_args), (sy_call_t *)lkmressys }, /* 317 = aio_error */ + { AS(aio_read_args), (sy_call_t *)lkmressys }, /* 318 = aio_read */ + { AS(aio_write_args), (sy_call_t *)lkmressys }, /* 319 = aio_write */ + { AS(lio_listio_args), (sy_call_t *)lkmressys }, /* 320 = lio_listio */ + { SYF_MPSAFE | 0, (sy_call_t *)yield }, /* 321 = yield */ + { 0, (sy_call_t *)nosys }, /* 322 = obsolete thr_sleep */ + { 0, (sy_call_t *)nosys }, /* 323 = obsolete thr_wakeup */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 324 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 325 = munlockall */ + { AS(__getcwd_args), (sy_call_t *)__getcwd }, /* 326 = __getcwd */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 327 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 328 = sched_getparam */ + { SYF_MPSAFE | AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler }, /* 329 = sched_setscheduler */ + { SYF_MPSAFE | AS(sched_getscheduler_args), (sy_call_t *)sched_getscheduler }, /* 330 = sched_getscheduler */ + { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 331 = sched_yield */ + { SYF_MPSAFE | AS(sched_get_priority_max_args), (sy_call_t *)sched_get_priority_max }, /* 332 = sched_get_priority_max */ + { SYF_MPSAFE | AS(sched_get_priority_min_args), (sy_call_t *)sched_get_priority_min }, /* 333 = sched_get_priority_min */ + { SYF_MPSAFE | AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 334 = sched_rr_get_interval */ + { AS(utrace_args), (sy_call_t *)utrace }, /* 335 = utrace */ + { SYF_MPSAFE | AS(sendfile_args), (sy_call_t *)sendfile }, /* 336 = sendfile */ + { AS(kldsym_args), (sy_call_t *)kldsym }, /* 337 = kldsym */ + { SYF_MPSAFE | AS(jail_args), (sy_call_t *)jail }, /* 338 = jail */ + { 0, (sy_call_t *)nosys }, /* 339 = pioctl */ + { SYF_MPSAFE | AS(sigprocmask_args), (sy_call_t *)sigprocmask }, /* 340 = sigprocmask */ + { SYF_MPSAFE | AS(sigsuspend_args), (sy_call_t *)sigsuspend }, /* 341 = sigsuspend */ + { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction }, /* 342 = sigaction */ + { SYF_MPSAFE | AS(sigpending_args), (sy_call_t *)sigpending }, /* 343 = sigpending */ + { AS(sigreturn_args), (sy_call_t *)sigreturn }, /* 344 = sigreturn */ + { 0, (sy_call_t *)nosys }, /* 345 = sigtimedwait */ + { 0, (sy_call_t *)nosys }, /* 346 = sigwaitinfo */ + { SYF_MPSAFE | AS(__acl_get_file_args), (sy_call_t *)__acl_get_file }, /* 347 = __acl_get_file */ + { SYF_MPSAFE | AS(__acl_set_file_args), (sy_call_t *)__acl_set_file }, /* 348 = __acl_set_file */ + { SYF_MPSAFE | AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd }, /* 349 = __acl_get_fd */ + { SYF_MPSAFE | AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd }, /* 350 = __acl_set_fd */ + { SYF_MPSAFE | AS(__acl_delete_file_args), (sy_call_t *)__acl_delete_file }, /* 351 = __acl_delete_file */ + { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd }, /* 352 = __acl_delete_fd */ + { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file }, /* 353 = __acl_aclcheck_file */ + { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd }, /* 354 = __acl_aclcheck_fd */ + { AS(extattrctl_args), (sy_call_t *)extattrctl }, /* 355 = extattrctl */ + { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file }, /* 356 = extattr_set_file */ + { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file }, /* 357 = extattr_get_file */ + { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file }, /* 358 = extattr_delete_file */ + { AS(aio_waitcomplete_args), (sy_call_t *)lkmressys }, /* 359 = aio_waitcomplete */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 360 = getresuid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 361 = getresgid */ + { SYF_MPSAFE | 0, (sy_call_t *)kqueue }, /* 362 = kqueue */ + { SYF_MPSAFE | AS(kevent_args), (sy_call_t *)kevent }, /* 363 = kevent */ + { AS(__cap_get_proc_args), (sy_call_t *)__cap_get_proc }, /* 364 = __cap_get_proc */ + { AS(__cap_set_proc_args), (sy_call_t *)__cap_set_proc }, /* 365 = __cap_set_proc */ + { AS(__cap_get_fd_args), (sy_call_t *)__cap_get_fd }, /* 366 = __cap_get_fd */ + { AS(__cap_get_file_args), (sy_call_t *)__cap_get_file }, /* 367 = __cap_get_file */ + { AS(__cap_set_fd_args), (sy_call_t *)__cap_set_fd }, /* 368 = __cap_set_fd */ + { AS(__cap_set_file_args), (sy_call_t *)__cap_set_file }, /* 369 = __cap_set_file */ + { AS(nosys_args), (sy_call_t *)lkmressys }, /* 370 = lkmressys */ + { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd }, /* 371 = extattr_set_fd */ + { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd }, /* 372 = extattr_get_fd */ + { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid }, /* 374 = __setugid */ + { AS(nfsclnt_args), (sy_call_t *)nosys }, /* 375 = nfsclnt */ + { AS(eaccess_args), (sy_call_t *)eaccess }, /* 376 = eaccess */ + { 0, (sy_call_t *)nosys }, /* 377 = afs_syscall */ + { AS(nmount_args), (sy_call_t *)nmount }, /* 378 = nmount */ + { 0, (sy_call_t *)kse_exit }, /* 379 = kse_exit */ + { 0, (sy_call_t *)kse_wakeup }, /* 380 = kse_wakeup */ + { AS(kse_new_args), (sy_call_t *)kse_new }, /* 381 = kse_new */ + { AS(thread_wakeup_args), (sy_call_t *)thread_wakeup }, /* 382 = thread_wakeup */ + { 0, (sy_call_t *)kse_yield }, /* 383 = kse_yield */ + { 0, (sy_call_t *)nosys }, /* 384 = __mac_get_proc */ + { 0, (sy_call_t *)nosys }, /* 385 = __mac_set_proc */ + { 0, (sy_call_t *)nosys }, /* 386 = __mac_get_fd */ + { 0, (sy_call_t *)nosys }, /* 387 = __mac_get_file */ + { 0, (sy_call_t *)nosys }, /* 388 = __mac_set_fd */ + { 0, (sy_call_t *)nosys }, /* 389 = __mac_set_file */ +}; diff --git a/sys/ia64/ia32/imgact_ia32.c b/sys/ia64/ia32/imgact_ia32.c new file mode 100644 index 000000000000..24ab656b6e6d --- /dev/null +++ b/sys/ia64/ia32/imgact_ia32.c @@ -0,0 +1,1445 @@ +/*- + * Copyright (c) 2000 David O'Brien + * Copyright (c) 1995-1996 Søren Schmidt + * Copyright (c) 1996 Peter Wemm + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer + * in this position and unchanged. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software withough specific prior written permission + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#define OLD_EI_BRAND 8 + +__ElfType(Brandinfo); +__ElfType(Auxargs); + +#define IA32_USRSTACK (3L*1024*1024*1024) +#define IA32_PS_STRINGS (IA32_USRSTACK - sizeof(struct ia32_ps_strings)) + +extern int suhword(void *p, u_int32_t v); + +static int elf32_check_header(const Elf32_Ehdr *hdr); +static int elf32_freebsd_fixup(register_t **stack_base, + struct image_params *imgp); +static int elf32_load_file(struct proc *p, const char *file, u_long *addr, + u_long *entry); +static int elf32_load_section(struct proc *p, + struct vmspace *vmspace, struct vnode *vp, + vm_offset_t offset, caddr_t vmaddr, size_t memsz, size_t filsz, + vm_prot_t prot); +static int exec_elf32_imgact(struct image_params *imgp); +static int elf32_coredump(struct thread *td, struct vnode *vp, off_t limit); +static register_t *elf32_copyout_strings(struct image_params *imgp); +static void elf32_setregs(struct thread *td, u_long entry, u_long stack, + u_long ps_strings); + +static int elf32_trace = 0; +SYSCTL_INT(_debug, OID_AUTO, elf32_trace, CTLFLAG_RW, &elf32_trace, 0, ""); + +extern struct sysent ia32_sysent[]; + +static char ia32_sigcode[] = { + 0xff, 0x54, 0x24, 0x10, /* call *SIGF_HANDLER(%esp) */ + 0x8d, 0x44, 0x24, 0x14, /* lea SIGF_UC(%esp),%eax */ + 0x50, /* pushl %eax */ + 0xf7, 0x40, 0x54, 0x00, 0x00, 0x02, 0x02, /* testl $PSL_VM,UC_EFLAGS(%eax) */ + 0x75, 0x03, /* jne 9f */ + 0x8e, 0x68, 0x14, /* movl UC_GS(%eax),%gs */ + 0xb8, 0x57, 0x01, 0x00, 0x00, /* 9: movl $SYS_sigreturn,%eax */ + 0x50, /* pushl %eax */ + 0xcd, 0x80, /* int $0x80 */ + 0xeb, 0xfe, /* 0: jmp 0b */ + 0, 0, 0, 0 +}; +static int ia32_szsigcode = sizeof(ia32_sigcode) & ~3; + +struct sysentvec elf32_freebsd_sysvec = { + SYS_MAXSYSCALL, + ia32_sysent, + 0, + 0, + 0, + 0, + 0, + 0, + elf32_freebsd_fixup, + sendsig, + ia32_sigcode, + &ia32_szsigcode, + 0, + "FreeBSD ELF", + elf32_coredump, + NULL, + MINSIGSTKSZ, + elf32_copyout_strings, + elf32_setregs +}; + +static Elf32_Brandinfo freebsd_brand_info = { + ELFOSABI_FREEBSD, + "FreeBSD", + "", + "/usr/libexec/ld-elf.so.1", + &elf32_freebsd_sysvec + }; +static Elf32_Brandinfo *elf32_brand_list[MAX_BRANDS] = { + &freebsd_brand_info, + NULL, NULL, NULL, + NULL, NULL, NULL, NULL + }; + +#if 0 + +int +elf32_insert_brand_entry(Elf32_Brandinfo *entry) +{ + int i; + + for (i=1; ip_sysent == entry->sysvec) { + rval = TRUE; + break; + } + } + sx_sunlock(&allproc_lock); + + return (rval); +} + +#endif + +static int +elf32_check_header(const Elf32_Ehdr *hdr) +{ + if (!IS_ELF(*hdr) || + hdr->e_ident[EI_CLASS] != ELF_TARG_CLASS || + hdr->e_ident[EI_DATA] != ELF_TARG_DATA || + hdr->e_ident[EI_VERSION] != EV_CURRENT) + return ENOEXEC; + + if (!ELF_MACHINE_OK(hdr->e_machine)) + return ENOEXEC; + + if (hdr->e_version != ELF_TARG_VER) + return ENOEXEC; + + return 0; +} + +#define PAGE4K_SHIFT 12 +#define PAGE4K_MASK ((1 << PAGE4K_SHIFT)-1) +#define round_page4k(x) (((x) + PAGE4K_MASK) & ~(PAGE4K_MASK)) +#define trunc_page4k(x) ((x) & ~(PAGE4K_MASK)) + +static int +elf32_map_partial(vm_map_t map, vm_object_t object, vm_ooffset_t offset, + vm_offset_t start, vm_offset_t end, vm_prot_t prot, + vm_prot_t max) +{ + int error, rv; + vm_offset_t off; + vm_offset_t data_buf = 0; + + /* + * Create the page if it doesn't exist yet. Ignore errors. + */ + vm_map_lock(map); + vm_map_insert(map, NULL, 0, trunc_page(start), round_page(end), + max, max, 0); + vm_map_unlock(map); + + /* + * Find the page from the underlying object. + */ + if (object) { + vm_object_reference(object); + rv = vm_map_find(exec_map, + object, + trunc_page(offset), + &data_buf, + PAGE_SIZE, + TRUE, + VM_PROT_READ, + VM_PROT_ALL, + MAP_COPY_ON_WRITE | MAP_PREFAULT_PARTIAL); + if (rv != KERN_SUCCESS) { + vm_object_deallocate(object); + return rv; + } + + off = offset - trunc_page(offset); + error = copyout((caddr_t)data_buf+off, (caddr_t)start, end - start); + vm_map_remove(exec_map, data_buf, data_buf + PAGE_SIZE); + if (error) { + return KERN_FAILURE; + } + } + + return KERN_SUCCESS; +} + +static int +elf32_map_insert(vm_map_t map, vm_object_t object, vm_ooffset_t offset, + vm_offset_t start, vm_offset_t end, vm_prot_t prot, + vm_prot_t max, int cow) +{ + int rv; + + if (start != trunc_page(start)) { + rv = elf32_map_partial(map, object, offset, + start, round_page(start), prot, max); + if (rv) + return rv; + start = round_page(start); + offset = round_page(offset); + } + if (end != round_page(end)) { + rv = elf32_map_partial(map, object, offset, + trunc_page(end), end, prot, max); + if (rv) + return rv; + end = trunc_page(end); + } + if (end > start) { + vm_map_lock(map); + rv = vm_map_insert(map, object, offset, start, end, + prot, max, cow); + vm_map_unlock(map); + return rv; + } else { + return KERN_SUCCESS; + } +} + +static int +elf32_load_section(struct proc *p, struct vmspace *vmspace, struct vnode *vp, vm_offset_t offset, caddr_t vmaddr, size_t memsz, size_t filsz, vm_prot_t prot) +{ + size_t map_len; + vm_offset_t map_addr; + int error, rv; + size_t copy_len; + vm_object_t object; + vm_offset_t file_addr; + vm_offset_t data_buf = 0; + + GIANT_REQUIRED; + + VOP_GETVOBJECT(vp, &object); + error = 0; + + /* + * It's necessary to fail if the filsz + offset taken from the + * header is greater than the actual file pager object's size. + * If we were to allow this, then the vm_map_find() below would + * walk right off the end of the file object and into the ether. + * + * While I'm here, might as well check for something else that + * is invalid: filsz cannot be greater than memsz. + */ + if ((off_t)filsz + offset > object->un_pager.vnp.vnp_size || + filsz > memsz) { + uprintf("elf32_load_section: truncated ELF file\n"); + return (ENOEXEC); + } + + map_addr = trunc_page4k((vm_offset_t)vmaddr); + file_addr = trunc_page4k(offset); + + /* + * We have two choices. We can either clear the data in the last page + * of an oversized mapping, or we can start the anon mapping a page + * early and copy the initialized data into that first page. We + * choose the second.. + */ + if (memsz > filsz) + map_len = trunc_page4k(offset+filsz) - file_addr; + else + map_len = round_page4k(offset+filsz) - file_addr; + + if (map_len != 0) { + vm_object_reference(object); + rv = elf32_map_insert(&vmspace->vm_map, + object, + file_addr, /* file offset */ + map_addr, /* virtual start */ + map_addr + map_len,/* virtual end */ + prot, + VM_PROT_ALL, + MAP_COPY_ON_WRITE | MAP_PREFAULT); + if (rv != KERN_SUCCESS) { + vm_object_deallocate(object); + return EINVAL; + } + + /* we can stop now if we've covered it all */ + if (memsz == filsz) { + return 0; + } + } + + + /* + * We have to get the remaining bit of the file into the first part + * of the oversized map segment. This is normally because the .data + * segment in the file is extended to provide bss. It's a neat idea + * to try and save a page, but it's a pain in the behind to implement. + */ + copy_len = (offset + filsz) - trunc_page4k(offset + filsz); + map_addr = trunc_page4k((vm_offset_t)vmaddr + filsz); + map_len = round_page4k((vm_offset_t)vmaddr + memsz) - map_addr; + + /* This had damn well better be true! */ + if (map_len != 0) { + rv = elf32_map_insert(&vmspace->vm_map, NULL, 0, + map_addr, map_addr + map_len, + VM_PROT_ALL, VM_PROT_ALL, 0); + if (rv != KERN_SUCCESS) { + return EINVAL; + } + } + + if (copy_len != 0) { + vm_offset_t off; + vm_object_reference(object); + rv = vm_map_find(exec_map, + object, + trunc_page(offset + filsz), + &data_buf, + PAGE_SIZE, + TRUE, + VM_PROT_READ, + VM_PROT_ALL, + MAP_COPY_ON_WRITE | MAP_PREFAULT_PARTIAL); + if (rv != KERN_SUCCESS) { + vm_object_deallocate(object); + return EINVAL; + } + + /* send the page fragment to user space */ + off = trunc_page4k(offset + filsz) - trunc_page(offset + filsz); + error = copyout((caddr_t)data_buf+off, (caddr_t)map_addr, copy_len); + vm_map_remove(exec_map, data_buf, data_buf + PAGE_SIZE); + if (error) { + return (error); + } + } + + /* + * set it to the specified protection + */ + vm_map_protect(&vmspace->vm_map, map_addr, map_addr + map_len, prot, + FALSE); + + return error; +} + +/* + * Load the file "file" into memory. It may be either a shared object + * or an executable. + * + * The "addr" reference parameter is in/out. On entry, it specifies + * the address where a shared object should be loaded. If the file is + * an executable, this value is ignored. On exit, "addr" specifies + * where the file was actually loaded. + * + * The "entry" reference parameter is out only. On exit, it specifies + * the entry point for the loaded file. + */ +static int +elf32_load_file(struct proc *p, const char *file, u_long *addr, u_long *entry) +{ + struct { + struct nameidata nd; + struct vattr attr; + struct image_params image_params; + } *tempdata; + const Elf32_Ehdr *hdr = NULL; + const Elf32_Phdr *phdr = NULL; + struct nameidata *nd; + struct vmspace *vmspace = p->p_vmspace; + struct vattr *attr; + struct image_params *imgp; + vm_prot_t prot; + u_long rbase; + u_long base_addr = 0; + int error, i, numsegs; + + if (curthread->td_proc != p) + panic("elf32_load_file - thread"); /* XXXKSE DIAGNOSTIC */ + + tempdata = malloc(sizeof(*tempdata), M_TEMP, M_WAITOK); + nd = &tempdata->nd; + attr = &tempdata->attr; + imgp = &tempdata->image_params; + + /* + * Initialize part of the common data + */ + imgp->proc = p; + imgp->uap = NULL; + imgp->attr = attr; + imgp->firstpage = NULL; + imgp->image_header = (char *)kmem_alloc_wait(exec_map, PAGE_SIZE); + + if (imgp->image_header == NULL) { + nd->ni_vp = NULL; + error = ENOMEM; + goto fail; + } + + /* XXXKSE */ + NDINIT(nd, LOOKUP, LOCKLEAF|FOLLOW, UIO_SYSSPACE, file, curthread); + + if ((error = namei(nd)) != 0) { + nd->ni_vp = NULL; + goto fail; + } + NDFREE(nd, NDF_ONLY_PNBUF); + imgp->vp = nd->ni_vp; + + /* + * Check permissions, modes, uid, etc on the file, and "open" it. + */ + error = exec_check_permissions(imgp); + if (error) { + VOP_UNLOCK(nd->ni_vp, 0, curthread); /* XXXKSE */ + goto fail; + } + + error = exec_map_first_page(imgp); + /* + * Also make certain that the interpreter stays the same, so set + * its VTEXT flag, too. + */ + if (error == 0) + nd->ni_vp->v_flag |= VTEXT; + VOP_UNLOCK(nd->ni_vp, 0, curthread); /* XXXKSE */ + if (error) + goto fail; + + hdr = (const Elf32_Ehdr *)imgp->image_header; + if ((error = elf32_check_header(hdr)) != 0) + goto fail; + if (hdr->e_type == ET_DYN) + rbase = *addr; + else if (hdr->e_type == ET_EXEC) + rbase = 0; + else { + error = ENOEXEC; + goto fail; + } + + /* Only support headers that fit within first page for now */ + if ((hdr->e_phoff > PAGE_SIZE) || + (hdr->e_phoff + hdr->e_phentsize * hdr->e_phnum) > PAGE_SIZE) { + error = ENOEXEC; + goto fail; + } + + phdr = (const Elf32_Phdr *)(imgp->image_header + hdr->e_phoff); + + for (i = 0, numsegs = 0; i < hdr->e_phnum; i++) { + if (phdr[i].p_type == PT_LOAD) { /* Loadable segment */ + prot = 0; + if (phdr[i].p_flags & PF_X) + prot |= VM_PROT_EXECUTE; + if (phdr[i].p_flags & PF_W) + prot |= VM_PROT_WRITE; + if (phdr[i].p_flags & PF_R) + prot |= VM_PROT_READ; + + if ((error = elf32_load_section(p, vmspace, nd->ni_vp, + phdr[i].p_offset, + (caddr_t)(uintptr_t)phdr[i].p_vaddr + + rbase, + phdr[i].p_memsz, + phdr[i].p_filesz, prot)) != 0) + goto fail; + /* + * Establish the base address if this is the + * first segment. + */ + if (numsegs == 0) + base_addr = trunc_page(phdr[i].p_vaddr + rbase); + numsegs++; + } + } + *addr = base_addr; + *entry=(unsigned long)hdr->e_entry + rbase; + +fail: + if (imgp->firstpage) + exec_unmap_first_page(imgp); + if (imgp->image_header) + kmem_free_wakeup(exec_map, (vm_offset_t)imgp->image_header, + PAGE_SIZE); + if (nd->ni_vp) + vrele(nd->ni_vp); + + free(tempdata, M_TEMP); + + return error; +} + +/* + * non static, as it can be overridden by start_init() + */ +#ifdef __ia64__ +int fallback_elf32_brand = ELFOSABI_FREEBSD; +#else +int fallback_elf32_brand = -1; +#endif +SYSCTL_INT(_kern, OID_AUTO, fallback_elf32_brand, CTLFLAG_RW, + &fallback_elf32_brand, -1, + "ELF brand of last resort"); + +static int +exec_elf32_imgact(struct image_params *imgp) +{ + const Elf32_Ehdr *hdr = (const Elf32_Ehdr *) imgp->image_header; + const Elf32_Phdr *phdr; + Elf32_Auxargs *elf32_auxargs = NULL; + struct vmspace *vmspace; + vm_prot_t prot; + u_long text_size = 0, data_size = 0; + u_long text_addr = 0, data_addr = 0; + u_long addr, entry = 0, proghdr = 0; + int error, i; + const char *interp = NULL; + Elf32_Brandinfo *brand_info; + char *path; + + GIANT_REQUIRED; + + /* + * Do we have a valid ELF header ? + */ + if (elf32_check_header(hdr) != 0 || hdr->e_type != ET_EXEC) + return -1; + + /* + * From here on down, we return an errno, not -1, as we've + * detected an ELF file. + */ + + if ((hdr->e_phoff > PAGE_SIZE) || + (hdr->e_phoff + hdr->e_phentsize * hdr->e_phnum) > PAGE_SIZE) { + /* Only support headers in first page for now */ + return ENOEXEC; + } + phdr = (const Elf32_Phdr*)(imgp->image_header + hdr->e_phoff); + + /* + * From this point on, we may have resources that need to be freed. + */ + + /* + * Yeah, I'm paranoid. There is every reason in the world to get + * VTEXT now since from here on out, there are places we can have + * a context switch. Better safe than sorry; I really don't want + * the file to change while it's being loaded. + */ + mtx_lock(&imgp->vp->v_interlock); + imgp->vp->v_flag |= VTEXT; + mtx_unlock(&imgp->vp->v_interlock); + + if ((error = exec_extract_strings(imgp)) != 0) + goto fail; + + exec_new_vmspace(imgp, IA32_USRSTACK); + + vmspace = imgp->proc->p_vmspace; + + for (i = 0; i < hdr->e_phnum; i++) { + switch(phdr[i].p_type) { + + case PT_LOAD: /* Loadable segment */ + prot = 0; + if (phdr[i].p_flags & PF_X) + prot |= VM_PROT_EXECUTE; + if (phdr[i].p_flags & PF_W) + prot |= VM_PROT_WRITE; + if (phdr[i].p_flags & PF_R) + prot |= VM_PROT_READ; + + if ((error = elf32_load_section(imgp->proc, + vmspace, imgp->vp, + phdr[i].p_offset, + (caddr_t)(uintptr_t)phdr[i].p_vaddr, + phdr[i].p_memsz, + phdr[i].p_filesz, prot)) != 0) + goto fail; + + /* + * Is this .text or .data ?? + * + * We only handle one each of those yet XXX + */ + if (hdr->e_entry >= phdr[i].p_vaddr && + hdr->e_entry <(phdr[i].p_vaddr+phdr[i].p_memsz)) { + text_addr = trunc_page(phdr[i].p_vaddr); + text_size = round_page(phdr[i].p_memsz + + phdr[i].p_vaddr - + text_addr); + entry = (u_long)hdr->e_entry; + } else { + data_addr = trunc_page(phdr[i].p_vaddr); + data_size = round_page(phdr[i].p_memsz + + phdr[i].p_vaddr - + data_addr); + } + break; + case PT_INTERP: /* Path to interpreter */ + if (phdr[i].p_filesz > MAXPATHLEN || + phdr[i].p_offset + phdr[i].p_filesz > PAGE_SIZE) { + error = ENOEXEC; + goto fail; + } + interp = imgp->image_header + phdr[i].p_offset; + break; + case PT_PHDR: /* Program header table info */ + proghdr = phdr[i].p_vaddr; + break; + default: + break; + } + } + + vmspace->vm_tsize = text_size >> PAGE_SHIFT; + vmspace->vm_taddr = (caddr_t)(uintptr_t)text_addr; + vmspace->vm_dsize = data_size >> PAGE_SHIFT; + vmspace->vm_daddr = (caddr_t)(uintptr_t)data_addr; + + addr = ELF_RTLD_ADDR(vmspace); + + imgp->entry_addr = entry; + + brand_info = NULL; + + /* We support three types of branding -- (1) the ELF EI_OSABI field + * that SCO added to the ELF spec, (2) FreeBSD 3.x's traditional string + * branding w/in the ELF header, and (3) path of the `interp_path' + * field. We should also look for an ".note.ABI-tag" ELF section now + * in all Linux ELF binaries, FreeBSD 4.1+, and some NetBSD ones. + */ + + /* If the executable has a brand, search for it in the brand list. */ + if (brand_info == NULL) { + for (i = 0; i < MAX_BRANDS; i++) { + Elf32_Brandinfo *bi = elf32_brand_list[i]; + + if (bi != NULL && + (hdr->e_ident[EI_OSABI] == bi->brand + || 0 == + strncmp((const char *)&hdr->e_ident[OLD_EI_BRAND], + bi->compat_3_brand, strlen(bi->compat_3_brand)))) { + brand_info = bi; + break; + } + } + } + + /* Lacking a known brand, search for a recognized interpreter. */ + if (brand_info == NULL && interp != NULL) { + for (i = 0; i < MAX_BRANDS; i++) { + Elf32_Brandinfo *bi = elf32_brand_list[i]; + + if (bi != NULL && + strcmp(interp, bi->interp_path) == 0) { + brand_info = bi; + break; + } + } + } + + /* Lacking a recognized interpreter, try the default brand */ + if (brand_info == NULL) { + for (i = 0; i < MAX_BRANDS; i++) { + Elf32_Brandinfo *bi = elf32_brand_list[i]; + + if (bi != NULL && fallback_elf32_brand == bi->brand) { + brand_info = bi; + break; + } + } + } + + if (brand_info == NULL) { + uprintf("ELF binary type \"%u\" not known.\n", + hdr->e_ident[EI_OSABI]); + error = ENOEXEC; + goto fail; + } + + imgp->proc->p_sysent = brand_info->sysvec; + if (interp != NULL) { + path = malloc(MAXPATHLEN, M_TEMP, M_WAITOK); + snprintf(path, MAXPATHLEN, "%s%s", + brand_info->emul_path, interp); + if ((error = elf32_load_file(imgp->proc, path, &addr, + &imgp->entry_addr)) != 0) { + if ((error = elf32_load_file(imgp->proc, interp, &addr, + &imgp->entry_addr)) != 0) { + uprintf("ELF interpreter %s not found\n", path); + free(path, M_TEMP); + goto fail; + } + } + free(path, M_TEMP); + } + + /* + * Construct auxargs table (used by the fixup routine) + */ + elf32_auxargs = malloc(sizeof(Elf32_Auxargs), M_TEMP, M_WAITOK); + elf32_auxargs->execfd = -1; + elf32_auxargs->phdr = proghdr; + elf32_auxargs->phent = hdr->e_phentsize; + elf32_auxargs->phnum = hdr->e_phnum; + elf32_auxargs->pagesz = PAGE_SIZE; + elf32_auxargs->base = addr; + elf32_auxargs->flags = 0; + elf32_auxargs->entry = entry; + elf32_auxargs->trace = elf32_trace; + + imgp->auxargs = elf32_auxargs; + imgp->interpreted = 0; + +fail: + return error; +} + +#define AUXARGS32_ENTRY(pos, id, val) {suhword(pos++, id); suhword(pos++, val);} + +static int +elf32_freebsd_fixup(register_t **stack_base, struct image_params *imgp) +{ + Elf32_Auxargs *args = (Elf32_Auxargs *)imgp->auxargs; + u_int32_t *pos; + + pos = *(u_int32_t **)stack_base + (imgp->argc + imgp->envc + 2); + + if (args->trace) { + AUXARGS32_ENTRY(pos, AT_DEBUG, 1); + } + if (args->execfd != -1) { + AUXARGS32_ENTRY(pos, AT_EXECFD, args->execfd); + } + AUXARGS32_ENTRY(pos, AT_PHDR, args->phdr); + AUXARGS32_ENTRY(pos, AT_PHENT, args->phent); + AUXARGS32_ENTRY(pos, AT_PHNUM, args->phnum); + AUXARGS32_ENTRY(pos, AT_PAGESZ, args->pagesz); + AUXARGS32_ENTRY(pos, AT_FLAGS, args->flags); + AUXARGS32_ENTRY(pos, AT_ENTRY, args->entry); + AUXARGS32_ENTRY(pos, AT_BASE, args->base); + AUXARGS32_ENTRY(pos, AT_NULL, 0); + + free(imgp->auxargs, M_TEMP); + imgp->auxargs = NULL; + + (*(u_int32_t **)stack_base)--; + suhword(*stack_base, (long) imgp->argc); + return 0; +} + +/* + * Code for generating ELF core dumps. + */ + +typedef void (*segment_callback)(vm_map_entry_t, void *); + +/* Closure for cb_put_phdr(). */ +struct phdr_closure { + Elf32_Phdr *phdr; /* Program header to fill in */ + Elf32_Off offset; /* Offset of segment in core file */ +}; + +/* Closure for cb_size_segment(). */ +struct sseg_closure { + int count; /* Count of writable segments. */ + size_t size; /* Total size of all writable segments. */ +}; + +static void cb_put_phdr(vm_map_entry_t, void *); +static void cb_size_segment(vm_map_entry_t, void *); +static void each_writable_segment(struct proc *, segment_callback, void *); +static int elf32_corehdr(struct thread *, struct vnode *, struct ucred *, + int, void *, size_t); +static void elf32_puthdr(struct proc *, void *, size_t *, + const prstatus_t *, const prfpregset_t *, const prpsinfo_t *, int); +static void elf32_putnote(void *, size_t *, const char *, int, + const void *, size_t); + +extern int osreldate; + +static int +elf32_coredump(td, vp, limit) + struct thread *td; + register struct vnode *vp; + off_t limit; +{ + register struct proc *p = td->td_proc; + register struct ucred *cred = td->td_ucred; + int error = 0; + struct sseg_closure seginfo; + void *hdr; + size_t hdrsize; + + /* Size the program segments. */ + seginfo.count = 0; + seginfo.size = 0; + each_writable_segment(p, cb_size_segment, &seginfo); + + /* + * Calculate the size of the core file header area by making + * a dry run of generating it. Nothing is written, but the + * size is calculated. + */ + hdrsize = 0; + elf32_puthdr((struct proc *)NULL, (void *)NULL, &hdrsize, + (const prstatus_t *)NULL, (const prfpregset_t *)NULL, + (const prpsinfo_t *)NULL, seginfo.count); + + if (hdrsize + seginfo.size >= limit) + return (EFAULT); + + /* + * Allocate memory for building the header, fill it up, + * and write it out. + */ + hdr = malloc(hdrsize, M_TEMP, M_WAITOK); + if (hdr == NULL) { + return EINVAL; + } + error = elf32_corehdr(td, vp, cred, seginfo.count, hdr, hdrsize); + + /* Write the contents of all of the writable segments. */ + if (error == 0) { + Elf32_Phdr *php; + off_t offset; + int i; + + php = (Elf32_Phdr *)((char *)hdr + sizeof(Elf32_Ehdr)) + 1; + offset = hdrsize; + for (i = 0; i < seginfo.count; i++) { + error = vn_rdwr_inchunks(UIO_WRITE, vp, + (caddr_t)(uintptr_t)php->p_vaddr, + php->p_filesz, offset, UIO_USERSPACE, + IO_UNIT | IO_DIRECT, cred, (int *)NULL, curthread); /* XXXKSE */ + if (error != 0) + break; + offset += php->p_filesz; + php++; + } + } + free(hdr, M_TEMP); + + return error; +} + +/* + * A callback for each_writable_segment() to write out the segment's + * program header entry. + */ +static void +cb_put_phdr(entry, closure) + vm_map_entry_t entry; + void *closure; +{ + struct phdr_closure *phc = (struct phdr_closure *)closure; + Elf32_Phdr *phdr = phc->phdr; + + phc->offset = round_page(phc->offset); + + phdr->p_type = PT_LOAD; + phdr->p_offset = phc->offset; + phdr->p_vaddr = entry->start; + phdr->p_paddr = 0; + phdr->p_filesz = phdr->p_memsz = entry->end - entry->start; + phdr->p_align = PAGE_SIZE; + phdr->p_flags = 0; + if (entry->protection & VM_PROT_READ) + phdr->p_flags |= PF_R; + if (entry->protection & VM_PROT_WRITE) + phdr->p_flags |= PF_W; + if (entry->protection & VM_PROT_EXECUTE) + phdr->p_flags |= PF_X; + + phc->offset += phdr->p_filesz; + phc->phdr++; +} + +/* + * A callback for each_writable_segment() to gather information about + * the number of segments and their total size. + */ +static void +cb_size_segment(entry, closure) + vm_map_entry_t entry; + void *closure; +{ + struct sseg_closure *ssc = (struct sseg_closure *)closure; + + ssc->count++; + ssc->size += entry->end - entry->start; +} + +/* + * For each writable segment in the process's memory map, call the given + * function with a pointer to the map entry and some arbitrary + * caller-supplied data. + */ +static void +each_writable_segment(p, func, closure) + struct proc *p; + segment_callback func; + void *closure; +{ + vm_map_t map = &p->p_vmspace->vm_map; + vm_map_entry_t entry; + + for (entry = map->header.next; entry != &map->header; + entry = entry->next) { + vm_object_t obj; + + if ((entry->eflags & MAP_ENTRY_IS_SUB_MAP) || + (entry->protection & (VM_PROT_READ|VM_PROT_WRITE)) != + (VM_PROT_READ|VM_PROT_WRITE)) + continue; + + /* + ** Dont include memory segment in the coredump if + ** MAP_NOCORE is set in mmap(2) or MADV_NOCORE in + ** madvise(2). + */ + if (entry->eflags & MAP_ENTRY_NOCOREDUMP) + continue; + + if ((obj = entry->object.vm_object) == NULL) + continue; + + /* Find the deepest backing object. */ + while (obj->backing_object != NULL) + obj = obj->backing_object; + + /* Ignore memory-mapped devices and such things. */ + if (obj->type != OBJT_DEFAULT && + obj->type != OBJT_SWAP && + obj->type != OBJT_VNODE) + continue; + + (*func)(entry, closure); + } +} + +/* + * Write the core file header to the file, including padding up to + * the page boundary. + */ +static int +elf32_corehdr(td, vp, cred, numsegs, hdr, hdrsize) + struct thread *td; + struct vnode *vp; + struct ucred *cred; + int numsegs; + size_t hdrsize; + void *hdr; +{ + struct { + prstatus_t status; + prfpregset_t fpregset; + prpsinfo_t psinfo; + } *tempdata; + struct proc *p = td->td_proc; + size_t off; + prstatus_t *status; + prfpregset_t *fpregset; + prpsinfo_t *psinfo; + + tempdata = malloc(sizeof(*tempdata), M_TEMP, M_ZERO | M_WAITOK); + status = &tempdata->status; + fpregset = &tempdata->fpregset; + psinfo = &tempdata->psinfo; + + /* Gather the information for the header. */ + status->pr_version = PRSTATUS_VERSION; + status->pr_statussz = sizeof(prstatus_t); + status->pr_gregsetsz = sizeof(gregset_t); + status->pr_fpregsetsz = sizeof(fpregset_t); + status->pr_osreldate = osreldate; + status->pr_cursig = p->p_sig; + status->pr_pid = p->p_pid; + fill_regs(td, &status->pr_reg); + + fill_fpregs(td, fpregset); + + psinfo->pr_version = PRPSINFO_VERSION; + psinfo->pr_psinfosz = sizeof(prpsinfo_t); + strncpy(psinfo->pr_fname, p->p_comm, sizeof(psinfo->pr_fname) - 1); + + /* XXX - We don't fill in the command line arguments properly yet. */ + strncpy(psinfo->pr_psargs, p->p_comm, PRARGSZ); + + /* Fill in the header. */ + bzero(hdr, hdrsize); + off = 0; + elf32_puthdr(p, hdr, &off, status, fpregset, psinfo, numsegs); + + free(tempdata, M_TEMP); + + /* Write it to the core file. */ + return vn_rdwr_inchunks(UIO_WRITE, vp, hdr, hdrsize, (off_t)0, + UIO_SYSSPACE, IO_UNIT | IO_DIRECT, cred, NULL, td); /* XXXKSE */ +} + +static void +elf32_puthdr(struct proc *p, void *dst, size_t *off, const prstatus_t *status, + const prfpregset_t *fpregset, const prpsinfo_t *psinfo, int numsegs) +{ + size_t ehoff; + size_t phoff; + size_t noteoff; + size_t notesz; + + ehoff = *off; + *off += sizeof(Elf32_Ehdr); + + phoff = *off; + *off += (numsegs + 1) * sizeof(Elf32_Phdr); + + noteoff = *off; + elf32_putnote(dst, off, "FreeBSD", NT_PRSTATUS, status, + sizeof *status); + elf32_putnote(dst, off, "FreeBSD", NT_FPREGSET, fpregset, + sizeof *fpregset); + elf32_putnote(dst, off, "FreeBSD", NT_PRPSINFO, psinfo, + sizeof *psinfo); + notesz = *off - noteoff; + + /* Align up to a page boundary for the program segments. */ + *off = round_page(*off); + + if (dst != NULL) { + Elf32_Ehdr *ehdr; + Elf32_Phdr *phdr; + struct phdr_closure phc; + + /* + * Fill in the ELF header. + */ + ehdr = (Elf32_Ehdr *)((char *)dst + ehoff); + ehdr->e_ident[EI_MAG0] = ELFMAG0; + ehdr->e_ident[EI_MAG1] = ELFMAG1; + ehdr->e_ident[EI_MAG2] = ELFMAG2; + ehdr->e_ident[EI_MAG3] = ELFMAG3; + ehdr->e_ident[EI_CLASS] = ELF_CLASS; + ehdr->e_ident[EI_DATA] = ELF_DATA; + ehdr->e_ident[EI_VERSION] = EV_CURRENT; + ehdr->e_ident[EI_OSABI] = ELFOSABI_FREEBSD; + ehdr->e_ident[EI_ABIVERSION] = 0; + ehdr->e_ident[EI_PAD] = 0; + ehdr->e_type = ET_CORE; + ehdr->e_machine = ELF_ARCH; + ehdr->e_version = EV_CURRENT; + ehdr->e_entry = 0; + ehdr->e_phoff = phoff; + ehdr->e_flags = 0; + ehdr->e_ehsize = sizeof(Elf32_Ehdr); + ehdr->e_phentsize = sizeof(Elf32_Phdr); + ehdr->e_phnum = numsegs + 1; + ehdr->e_shentsize = sizeof(Elf32_Shdr); + ehdr->e_shnum = 0; + ehdr->e_shstrndx = SHN_UNDEF; + + /* + * Fill in the program header entries. + */ + phdr = (Elf32_Phdr *)((char *)dst + phoff); + + /* The note segement. */ + phdr->p_type = PT_NOTE; + phdr->p_offset = noteoff; + phdr->p_vaddr = 0; + phdr->p_paddr = 0; + phdr->p_filesz = notesz; + phdr->p_memsz = 0; + phdr->p_flags = 0; + phdr->p_align = 0; + phdr++; + + /* All the writable segments from the program. */ + phc.phdr = phdr; + phc.offset = *off; + each_writable_segment(p, cb_put_phdr, &phc); + } +} + +static void +elf32_putnote(void *dst, size_t *off, const char *name, int type, + const void *desc, size_t descsz) +{ + Elf_Note note; + + note.n_namesz = strlen(name) + 1; + note.n_descsz = descsz; + note.n_type = type; + if (dst != NULL) + bcopy(¬e, (char *)dst + *off, sizeof note); + *off += sizeof note; + if (dst != NULL) + bcopy(name, (char *)dst + *off, note.n_namesz); + *off += roundup2(note.n_namesz, sizeof(Elf32_Size)); + if (dst != NULL) + bcopy(desc, (char *)dst + *off, note.n_descsz); + *off += roundup2(note.n_descsz, sizeof(Elf32_Size)); +} + +struct ia32_ps_strings { + u_int32_t ps_argvstr; /* first of 0 or more argument strings */ + int ps_nargvstr; /* the number of argument strings */ + u_int32_t ps_envstr; /* first of 0 or more environment strings */ + int ps_nenvstr; /* the number of environment strings */ +}; + +static register_t * +elf32_copyout_strings(struct image_params *imgp) +{ + int argc, envc; + u_int32_t *vectp; + char *stringp, *destp; + u_int32_t *stack_base; + struct ia32_ps_strings *arginfo; + int szsigcode; + + /* + * Calculate string base and vector table pointers. + * Also deal with signal trampoline code for this exec type. + */ + arginfo = (struct ia32_ps_strings *)IA32_PS_STRINGS; + szsigcode = *(imgp->proc->p_sysent->sv_szsigcode); + destp = (caddr_t)arginfo - szsigcode - SPARE_USRSPACE - + roundup((ARG_MAX - imgp->stringspace), sizeof(char *)); + + /* + * install sigcode + */ + if (szsigcode) + copyout(imgp->proc->p_sysent->sv_sigcode, + ((caddr_t)arginfo - szsigcode), szsigcode); + + /* + * If we have a valid auxargs ptr, prepare some room + * on the stack. + */ + if (imgp->auxargs) { + /* + * 'AT_COUNT*2' is size for the ELF Auxargs data. This is for + * lower compatibility. + */ + imgp->auxarg_size = (imgp->auxarg_size) ? imgp->auxarg_size + : (AT_COUNT * 2); + /* + * The '+ 2' is for the null pointers at the end of each of + * the arg and env vector sets,and imgp->auxarg_size is room + * for argument of Runtime loader. + */ + vectp = (u_int32_t *) (destp - (imgp->argc + imgp->envc + 2 + + imgp->auxarg_size) * sizeof(u_int32_t)); + + } else + /* + * The '+ 2' is for the null pointers at the end of each of + * the arg and env vector sets + */ + vectp = (u_int32_t *) + (destp - (imgp->argc + imgp->envc + 2) * sizeof(u_int32_t)); + + /* + * vectp also becomes our initial stack base + */ + stack_base = vectp; + + stringp = imgp->stringbase; + argc = imgp->argc; + envc = imgp->envc; + + /* + * Copy out strings - arguments and environment. + */ + copyout(stringp, destp, ARG_MAX - imgp->stringspace); + + /* + * Fill in "ps_strings" struct for ps, w, etc. + */ + suhword(&arginfo->ps_argvstr, (u_int32_t)(intptr_t)vectp); + suhword(&arginfo->ps_nargvstr, argc); + + /* + * Fill in argument portion of vector table. + */ + for (; argc > 0; --argc) { + suhword(vectp++, (u_int32_t)(intptr_t)destp); + while (*stringp++ != 0) + destp++; + destp++; + } + + /* a null vector table pointer separates the argp's from the envp's */ + suhword(vectp++, 0); + + suhword(&arginfo->ps_envstr, (u_int32_t)(intptr_t)vectp); + suhword(&arginfo->ps_nenvstr, envc); + + /* + * Fill in environment portion of vector table. + */ + for (; envc > 0; --envc) { + suhword(vectp++, (u_int32_t)(intptr_t)destp); + while (*stringp++ != 0) + destp++; + destp++; + } + + /* end of vector table is a null pointer */ + suhword(vectp, 0); + + return ((register_t *)stack_base); +} + +static void +elf32_setregs(struct thread *td, u_long entry, u_long stack, + u_long ps_strings) +{ + struct trapframe *frame = td->td_frame; + vm_offset_t gdt, ldt; + u_int64_t codesel, datasel, ldtsel; + u_int64_t codeseg, dataseg, gdtseg, ldtseg; + struct segment_descriptor desc; + struct vmspace *vmspace = td->td_proc->p_vmspace; + + /* + * Make sure that we restore the entire trapframe after an + * execve. + */ + frame->tf_flags &= ~FRAME_SYSCALL; + + bzero(frame->tf_r, sizeof(frame->tf_r)); + bzero(frame->tf_f, sizeof(frame->tf_f)); + + frame->tf_cr_iip = entry; + frame->tf_cr_ipsr = (IA64_PSR_IC + | IA64_PSR_I + | IA64_PSR_IT + | IA64_PSR_DT + | IA64_PSR_RT + | IA64_PSR_IS + | IA64_PSR_BN + | IA64_PSR_CPL_USER); + frame->tf_r[FRAME_R12] = stack; + + codesel = LSEL(LUCODE_SEL, SEL_UPL); + datasel = LSEL(LUDATA_SEL, SEL_UPL); + ldtsel = GSEL(GLDT_SEL, SEL_UPL); + +#if 1 + frame->tf_r[FRAME_R16] = (datasel << 48) | (datasel << 32) + | (datasel << 16) | datasel; + frame->tf_r[FRAME_R17] = (ldtsel << 32) | (datasel << 16) | codesel; +#else + frame->tf_r[FRAME_R16] = datasel; + frame->tf_r[FRAME_R17] = codesel; + frame->tf_r[FRAME_R18] = datasel; + frame->tf_r[FRAME_R19] = datasel; + frame->tf_r[FRAME_R20] = datasel; + frame->tf_r[FRAME_R21] = datasel; + frame->tf_r[FRAME_R22] = ldtsel; +#endif + + /* + * Build the GDT and LDT. + */ + gdt = IA32_USRSTACK; + vm_map_find(&vmspace->vm_map, 0, 0, + &gdt, PAGE_SIZE, 0, + VM_PROT_ALL, VM_PROT_ALL, 0); + ldt = gdt + 4096; + + desc.sd_lolimit = 8*NLDT-1; + desc.sd_lobase = ldt & 0xffffff; + desc.sd_type = SDT_SYSLDT; + desc.sd_dpl = SEL_UPL; + desc.sd_p = 1; + desc.sd_hilimit = 0; + desc.sd_def32 = 0; + desc.sd_gran = 0; + desc.sd_hibase = ldt >> 24; + copyout(&desc, (caddr_t) gdt + 8*GLDT_SEL, sizeof(desc)); + + desc.sd_lolimit = ((IA32_USRSTACK >> 12) - 1) & 0xffff; + desc.sd_lobase = 0; + desc.sd_type = SDT_MEMERA; + desc.sd_dpl = SEL_UPL; + desc.sd_p = 1; + desc.sd_hilimit = ((IA32_USRSTACK >> 12) - 1) >> 16; + desc.sd_def32 = 1; + desc.sd_gran = 1; + desc.sd_hibase = 0; + copyout(&desc, (caddr_t) ldt + 8*LUCODE_SEL, sizeof(desc)); + desc.sd_type = SDT_MEMRWA; + copyout(&desc, (caddr_t) ldt + 8*LUDATA_SEL, sizeof(desc)); + + codeseg = 0 /* base */ + + (((IA32_USRSTACK >> 12) - 1) << 32) /* limit */ + + ((long)SDT_MEMERA << 52) + + ((long)SEL_UPL << 57) + + (1L << 59) /* present */ + + (1L << 62) /* 32 bits */ + + (1L << 63); /* page granularity */ + dataseg = 0 /* base */ + + (((IA32_USRSTACK >> 12) - 1) << 32) /* limit */ + + ((long)SDT_MEMRWA << 52) + + ((long)SEL_UPL << 57) + + (1L << 59) /* present */ + + (1L << 62) /* 32 bits */ + + (1L << 63); /* page granularity */ + ia64_set_csd(codeseg); + ia64_set_ssd(dataseg); + frame->tf_r[FRAME_R24] = dataseg; /* ESD */ + frame->tf_r[FRAME_R27] = dataseg; /* DSD */ + frame->tf_r[FRAME_R28] = dataseg; /* FSD */ + frame->tf_r[FRAME_R29] = dataseg; /* GSD */ + + gdtseg = gdt /* base */ + + ((8L*NGDT - 1) << 32) /* limit */ + + ((long)SDT_SYSNULL << 52) + + ((long)SEL_UPL << 57) + + (1L << 59) /* present */ + + (0L << 62) /* 16 bits */ + + (0L << 63); /* byte granularity */ + ldtseg = ldt /* base */ + + ((8L*NLDT - 1) << 32) /* limit */ + + ((long)SDT_SYSLDT << 52) + + ((long)SEL_UPL << 57) + + (1L << 59) /* present */ + + (0L << 62) /* 16 bits */ + + (0L << 63); /* byte granularity */ + frame->tf_r[FRAME_R30] = ldtseg; /* LDTD */ + frame->tf_r[FRAME_R31] = gdtseg; /* GDTD */ + + ia64_set_eflag(PSL_USER); + + /* PS_STRINGS value for BSD/OS binaries. It is 0 for non-BSD/OS. */ + frame->tf_r[FRAME_R11] = ps_strings; + + /* + * Set ia32 control registers. + */ + ia64_set_cflg((CR0_PE | CR0_PG) + | ((long)(CR4_XMM | CR4_FXSR) << 32)); + + /* + * XXX - Linux emulator + * Make sure sure edx is 0x0 on entry. Linux binaries depend + * on it. + */ + td->td_retval[1] = 0; +} + +/* + * Tell kern_execve.c about it, with a little help from the linker. + */ +static struct execsw elf32_execsw = {exec_elf32_imgact, "ELF32"}; +EXEC_SET(elf32, elf32_execsw); diff --git a/sys/ia64/ia32/imgact_ia32.h b/sys/ia64/ia32/imgact_ia32.h new file mode 100644 index 000000000000..8d141820c623 --- /dev/null +++ b/sys/ia64/ia32/imgact_ia32.h @@ -0,0 +1,112 @@ +/*- + * Copyright (c) 1995-1996 Søren Schmidt + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer + * in this position and unchanged. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software withough specific prior written permission + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _IA64_IA32_IMGACT_ELF_H_ +#define _IA64_IA32_IMGACT_ELF_H_ + +#include + +#ifdef _KERNEL + +#define AUXARGS_ENTRY(pos, id, val) {suword(pos++, id); suword(pos++, val);} + +#if ELF_TARG_CLASS == ELFCLASS32 + +/* + * Structure used to pass infomation from the loader to the + * stack fixup routine. + */ +typedef struct { + Elf32_Sword execfd; + Elf32_Word phdr; + Elf32_Word phent; + Elf32_Word phnum; + Elf32_Word pagesz; + Elf32_Word base; + Elf32_Word flags; + Elf32_Word entry; + Elf32_Word trace; +} Elf32_Auxargs; + +typedef struct { + int brand; + const char *compat_3_brand; /* pre Binutils 2.10 method (FBSD 3) */ + const char *emul_path; + const char *interp_path; + struct sysentvec *sysvec; +} Elf32_Brandinfo; + +#define MAX_BRANDS 8 + +int elf_brand_inuse(Elf32_Brandinfo *entry); +int elf_insert_brand_entry(Elf32_Brandinfo *entry); +int elf_remove_brand_entry(Elf32_Brandinfo *entry); + +#else /* !(ELF_TARG_CLASS == ELFCLASS32) */ + +/* + * Structure used to pass infomation from the loader to the + * stack fixup routine. + */ +typedef struct { + Elf64_Sword execfd; + Elf64_Addr phdr; + Elf64_Word phent; + Elf64_Word phnum; + Elf64_Word pagesz; + Elf64_Addr base; + Elf64_Word flags; + Elf64_Addr entry; + Elf64_Word trace; +} Elf64_Auxargs; + +typedef struct { + int brand; + const char *compat_3_brand; /* pre Binutils 2.10 method (FBSD 3) */ + const char *emul_path; + const char *interp_path; + struct sysentvec *sysvec; +} Elf64_Brandinfo; + +#define MAX_BRANDS 8 + +int elf_brand_inuse(Elf64_Brandinfo *entry); +int elf_insert_brand_entry(Elf64_Brandinfo *entry); +int elf_remove_brand_entry(Elf64_Brandinfo *entry); + +#endif /* ELF_TARG_CLASS == ELFCLASS32 */ + +struct thread; + +int elf_coredump(struct thread *, struct vnode *, off_t); + +#endif /* _KERNEL */ + +#endif /* !_IA64_IA32_IMGACT_ELF_H_ */ diff --git a/sys/ia64/ia32/syscalls.conf b/sys/ia64/ia32/syscalls.conf new file mode 100644 index 000000000000..16d94eacaec6 --- /dev/null +++ b/sys/ia64/ia32/syscalls.conf @@ -0,0 +1,12 @@ +# $FreeBSD$ +sysnames="/dev/null" +sysproto="ia32_proto.h" +sysproto_h=_IA32_SYSPROTO_H_ +syshdr="ia32_syscall.h" +syssw="ia32_sysent.c" +sysmk="/dev/null" +syshide="/dev/null" +syscallprefix="IA32_SYS_" +switchname="ia32_sysent" +namesname="ia32_syscallnames" +sysvec="\n" diff --git a/sys/ia64/ia32/syscalls.master b/sys/ia64/ia32/syscalls.master new file mode 100644 index 000000000000..347196a3da99 --- /dev/null +++ b/sys/ia64/ia32/syscalls.master @@ -0,0 +1,562 @@ + $FreeBSD$ +; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 +; from: src/sys/kern/syscalls.master 1.107 +; +; System call name/number master file. +; Processed to created init_sysent.c, syscalls.c and syscall.h. + +; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments +; number system call number, must be in order +; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, +; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, +; [M]NOSTD +; namespc one of POSIX, BSD, NOHIDE +; name psuedo-prototype of syscall routine +; If one of the following alts is different, then all appear: +; altname name of system call if different +; alttag name of args struct tag if different from [o]`name'"_args" +; altrtyp return type if not int (bogus - syscalls always return int) +; for UNIMPL/OBSOL, name continues with comments + +; types: +; [M] e.g. like MSTD -- means the system call is MP-safe. If no +; M prefix is used, the syscall wrapper will obtain the Giant +; lock for the syscall. +; STD always included +; COMPAT included on COMPAT #ifdef +; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h +; OBSOL obsolete, not included in system, only specifies name +; UNIMPL not implemented, placeholder only +; NOSTD implemented but as a lkm that can be statically +; compiled in sysent entry will be filled with lkmsys +; so the SYSCALL_MODULE macro works + +; #ifdef's, etc. may be included, and are copied to the output files. + +#include +#include +#include + +; Reserved/unimplemented system calls in the range 0-150 inclusive +; are reserved for use in future Berkeley releases. +; Additional system calls implemented in vendor and other +; redistributions should be placed in the reserved range at the end +; of the current calls. + +0 STD NOHIDE { int nosys(void); } syscall nosys_args int +1 MSTD NOHIDE { void sys_exit(int rval); } exit sys_exit_args void +2 MSTD POSIX { int fork(void); } +3 MSTD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } +4 MSTD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } +5 STD POSIX { int open(char *path, int flags, int mode); } +; XXX should be { int open(const char *path, int flags, ...); } +; but we're not ready for `const' or varargs. +; XXX man page says `mode_t mode'. +6 MSTD POSIX { int close(int fd); } +7 MSTD BSD { int wait4(int pid, int *status, int options, \ + struct rusage *rusage); } wait4 wait_args int +8 COMPAT BSD { int creat(char *path, int mode); } +9 STD POSIX { int link(char *path, char *link); } +10 STD POSIX { int unlink(char *path); } +11 OBSOL NOHIDE execv +12 STD POSIX { int chdir(char *path); } +13 STD BSD { int fchdir(int fd); } +14 STD POSIX { int mknod(char *path, int mode, int dev); } +15 STD POSIX { int chmod(char *path, int mode); } +16 STD POSIX { int chown(char *path, int uid, int gid); } +17 MSTD BSD { int obreak(char *nsize); } break obreak_args int +18 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \ + int flags); } +19 COMPAT POSIX { long lseek(int fd, long offset, int whence); } +20 MSTD POSIX { pid_t getpid(void); } +21 STD BSD { int mount(char *type, char *path, int flags, \ + caddr_t data); } +; XXX `path' should have type `const char *' but we're not ready for that. +22 STD BSD { int unmount(char *path, int flags); } +23 MSTD POSIX { int setuid(uid_t uid); } +24 MSTD POSIX { uid_t getuid(void); } +25 MSTD POSIX { uid_t geteuid(void); } +26 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ + int data); } +27 MSTD BSD { int recvmsg(int s, struct msghdr *msg, int flags); } +28 MSTD BSD { int sendmsg(int s, caddr_t msg, int flags); } +29 MSTD BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } +30 MSTD BSD { int accept(int s, caddr_t name, int *anamelen); } +31 MSTD BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +32 MSTD BSD { int getsockname(int fdes, caddr_t asa, int *alen); } +33 STD POSIX { int access(char *path, int flags); } +34 STD BSD { int chflags(char *path, int flags); } +35 STD BSD { int fchflags(int fd, int flags); } +36 STD BSD { int sync(void); } +37 MSTD POSIX { int kill(int pid, int signum); } +38 COMPAT POSIX { int stat(char *path, struct ostat *ub); } +39 MSTD POSIX { pid_t getppid(void); } +40 COMPAT POSIX { int lstat(char *path, struct ostat *ub); } +41 STD POSIX { int dup(u_int fd); } +42 STD POSIX { int pipe(void); } +43 MSTD POSIX { gid_t getegid(void); } +44 MSTD BSD { int profil(caddr_t samples, size_t size, \ + size_t offset, u_int scale); } +45 STD BSD { int ktrace(const char *fname, int ops, int facs, \ + int pid); } +46 MCOMPAT POSIX { int sigaction(int signum, struct osigaction *nsa, \ + struct osigaction *osa); } +47 MSTD POSIX { gid_t getgid(void); } +48 MCOMPAT POSIX { int sigprocmask(int how, osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it, and we return the old mask as the +; (int) return value. +49 MSTD BSD { int getlogin(char *namebuf, u_int namelen); } +50 MSTD BSD { int setlogin(char *namebuf); } +51 MSTD BSD { int acct(char *path); } +52 MCOMPAT POSIX { int sigpending(void); } +53 MSTD BSD { int sigaltstack(stack_t *ss, stack_t *oss); } +54 MSTD POSIX { int ioctl(int fd, u_long com, caddr_t data); } +55 MSTD BSD { int reboot(int opt); } +56 STD POSIX { int revoke(char *path); } +57 STD POSIX { int symlink(char *path, char *link); } +58 STD POSIX { int readlink(char *path, char *buf, int count); } +59 MSTD POSIX { int execve(char *fname, char **argv, char **envv); } +60 MSTD POSIX { int umask(int newmask); } umask umask_args int +61 STD BSD { int chroot(char *path); } +62 MCOMPAT POSIX { int fstat(int fd, struct ostat *sb); } +63 MCOMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \ + int arg); } getkerninfo getkerninfo_args int +64 MCOMPAT BSD { int getpagesize(void); } \ + getpagesize getpagesize_args int +65 STD BSD { int msync(void *addr, size_t len, int flags); } +66 MSTD BSD { int vfork(void); } +67 OBSOL NOHIDE vread +68 OBSOL NOHIDE vwrite +69 MSTD BSD { int sbrk(int incr); } +70 MSTD BSD { int sstk(int incr); } +71 MCOMPAT BSD { int mmap(void *addr, int len, int prot, \ + int flags, int fd, long pos); } +72 MSTD BSD { int ovadvise(int anom); } vadvise ovadvise_args int +73 MSTD BSD { int munmap(void *addr, size_t len); } +74 MSTD BSD { int mprotect(const void *addr, size_t len, int prot); } +75 MSTD BSD { int madvise(void *addr, size_t len, int behav); } +76 OBSOL NOHIDE vhangup +77 OBSOL NOHIDE vlimit +78 MSTD BSD { int mincore(const void *addr, size_t len, \ + char *vec); } +79 MSTD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } +80 MSTD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } +81 MSTD POSIX { int getpgrp(void); } +82 MSTD POSIX { int setpgid(int pid, int pgid); } +83 MSTD BSD { int setitimer(u_int which, struct itimerval *itv, \ + struct itimerval *oitv); } +84 MCOMPAT BSD { int wait(void); } +85 MSTD BSD { int swapon(char *name); } +86 MSTD BSD { int getitimer(u_int which, struct itimerval *itv); } +87 MCOMPAT BSD { int gethostname(char *hostname, u_int len); } \ + gethostname gethostname_args int +88 MCOMPAT BSD { int sethostname(char *hostname, u_int len); } \ + sethostname sethostname_args int +89 MSTD BSD { int getdtablesize(void); } +90 MSTD POSIX { int dup2(u_int from, u_int to); } +91 UNIMPL BSD getdopt +92 MSTD POSIX { int fcntl(int fd, int cmd, long arg); } +; XXX should be { int fcntl(int fd, int cmd, ...); } +; but we're not ready for varargs. +; XXX man page says `int arg' too. +93 MSTD BSD { int select(int nd, fd_set *in, fd_set *ou, \ + fd_set *ex, struct timeval *tv); } +94 UNIMPL BSD setdopt +95 STD POSIX { int fsync(int fd); } +96 MSTD BSD { int setpriority(int which, int who, int prio); } +97 MSTD BSD { int socket(int domain, int type, int protocol); } +98 MSTD BSD { int connect(int s, caddr_t name, int namelen); } +99 MCPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \ + accept accept_args int +100 MSTD BSD { int getpriority(int which, int who); } +101 MCOMPAT BSD { int send(int s, caddr_t buf, int len, int flags); } +102 MCOMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); } +103 STD BSD { int osigreturn(struct osigcontext *sigcntxp); } +104 MSTD BSD { int bind(int s, caddr_t name, int namelen); } +105 MSTD BSD { int setsockopt(int s, int level, int name, \ + caddr_t val, int valsize); } +106 MSTD BSD { int listen(int s, int backlog); } +107 OBSOL NOHIDE vtimes +108 MCOMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \ + struct sigvec *osv); } +109 MCOMPAT BSD { int sigblock(int mask); } +110 MCOMPAT BSD { int sigsetmask(int mask); } +111 MCOMPAT POSIX { int sigsuspend(osigset_t mask); } +; XXX note nonstandard (bogus) calling convention - the libc stub passes +; us the mask, not a pointer to it. +112 MCOMPAT BSD { int sigstack(struct sigstack *nss, \ + struct sigstack *oss); } +113 MCOMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); } +114 MCOMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); } +115 OBSOL NOHIDE vtrace +116 MSTD BSD { int gettimeofday(struct timeval *tp, \ + struct timezone *tzp); } +117 MSTD BSD { int getrusage(int who, struct rusage *rusage); } +118 MSTD BSD { int getsockopt(int s, int level, int name, \ + caddr_t val, int *avalsize); } +119 UNIMPL NOHIDE resuba (BSD/OS 2.x) +120 MSTD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); } +121 MSTD BSD { int writev(int fd, struct iovec *iovp, \ + u_int iovcnt); } +122 MSTD BSD { int settimeofday(struct timeval *tv, \ + struct timezone *tzp); } +123 STD BSD { int fchown(int fd, int uid, int gid); } +124 STD BSD { int fchmod(int fd, int mode); } +125 MCPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \ + int flags, caddr_t from, int *fromlenaddr); } \ + recvfrom recvfrom_args int +126 MSTD BSD { int setreuid(int ruid, int euid); } +127 MSTD BSD { int setregid(int rgid, int egid); } +128 STD POSIX { int rename(char *from, char *to); } +129 COMPAT BSD { int truncate(char *path, long length); } +130 COMPAT BSD { int ftruncate(int fd, long length); } +131 MSTD BSD { int flock(int fd, int how); } +132 STD POSIX { int mkfifo(char *path, int mode); } +133 MSTD BSD { int sendto(int s, caddr_t buf, size_t len, \ + int flags, caddr_t to, int tolen); } +134 MSTD BSD { int shutdown(int s, int how); } +135 MSTD BSD { int socketpair(int domain, int type, int protocol, \ + int *rsv); } +136 STD POSIX { int mkdir(char *path, int mode); } +137 STD POSIX { int rmdir(char *path); } +138 STD BSD { int utimes(char *path, struct timeval *tptr); } +139 OBSOL NOHIDE 4.2 sigreturn +140 MSTD BSD { int adjtime(struct timeval *delta, \ + struct timeval *olddelta); } +141 MCOMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } +142 MCOMPAT BSD { long gethostid(void); } +143 MCOMPAT BSD { int sethostid(long hostid); } +144 MCOMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } +145 MCOMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } +146 MCOMPAT BSD { int killpg(int pgid, int signum); } +147 MSTD POSIX { int setsid(void); } +148 STD BSD { int quotactl(char *path, int cmd, int uid, \ + caddr_t arg); } +149 MCOMPAT BSD { int quota(void); } +150 MCPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\ + getsockname getsockname_args int + +; Syscalls 151-180 inclusive are reserved for vendor-specific +; system calls. (This includes various calls added for compatibity +; with other Unix variants.) +; Some of these calls are now supported by BSD... +151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x) +152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) +153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) +154 UNIMPL NOHIDE nosys +; 155 is initialized by the NFS code, if present. +155 MNOIMPL BSD { int nfssvc(int flag, caddr_t argp); } +156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +157 STD BSD { int statfs(char *path, struct statfs *buf); } +158 STD BSD { int fstatfs(int fd, struct statfs *buf); } +159 UNIMPL NOHIDE nosys +160 UNIMPL NOHIDE nosys +161 STD BSD { int getfh(char *fname, struct fhandle *fhp); } +162 MSTD BSD { int getdomainname(char *domainname, int len); } +163 MSTD BSD { int setdomainname(char *domainname, int len); } +164 MSTD BSD { int uname(struct utsname *name); } +165 STD BSD { int sysarch(int op, char *parms); } +166 MSTD BSD { int rtprio(int function, pid_t pid, \ + struct rtprio *rtp); } +167 UNIMPL NOHIDE nosys +168 UNIMPL NOHIDE nosys +; 169 is initialized by the SYSVSEM code if present or loaded +169 MNOSTD BSD { int semsys(int which, int a2, int a3, int a4, \ + int a5); } +; 169 is initialized by the SYSVMSG code if present or loaded +; XXX should be { int semsys(int which, ...); } +170 MNOSTD BSD { int msgsys(int which, int a2, int a3, int a4, \ + int a5, int a6); } +; 169 is initialized by the SYSVSHM code if present or loaded +; XXX should be { int msgsys(int which, ...); } +171 MNOSTD BSD { int shmsys(int which, int a2, int a3, int a4); } +; XXX should be { int shmsys(int which, ...); } +172 UNIMPL NOHIDE nosys +173 MSTD POSIX { ssize_t pread(int fd, void *buf, size_t nbyte, \ + int pad, off_t offset); } +174 MSTD POSIX { ssize_t pwrite(int fd, const void *buf, \ + size_t nbyte, int pad, off_t offset); } +175 UNIMPL NOHIDE nosys +176 MSTD BSD { int ntp_adjtime(struct timex *tp); } +177 UNIMPL NOHIDE sfork (BSD/OS 2.x) +178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) +179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) +180 UNIMPL NOHIDE nosys + +; Syscalls 181-199 are used by/reserved for BSD +181 MSTD POSIX { int setgid(gid_t gid); } +182 MSTD BSD { int setegid(gid_t egid); } +183 MSTD BSD { int seteuid(uid_t euid); } +184 UNIMPL BSD lfs_bmapv +185 UNIMPL BSD lfs_markv +186 UNIMPL BSD lfs_segclean +187 UNIMPL BSD lfs_segwait +188 STD POSIX { int stat(char *path, struct stat *ub); } +189 MSTD POSIX { int fstat(int fd, struct stat *sb); } +190 STD POSIX { int lstat(char *path, struct stat *ub); } +191 STD POSIX { int pathconf(char *path, int name); } +192 MSTD POSIX { int fpathconf(int fd, int name); } +193 UNIMPL NOHIDE nosys +194 MSTD BSD { int getrlimit(u_int which, \ + struct rlimit *rlp); } \ + getrlimit __getrlimit_args int +195 MSTD BSD { int setrlimit(u_int which, \ + struct rlimit *rlp); } \ + setrlimit __setrlimit_args int +196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ + long *basep); } +197 MSTD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \ + int flags, int fd, int pad, off_t pos); } +198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int +199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \ + int whence); } +200 STD BSD { int truncate(char *path, int pad, off_t length); } +201 STD BSD { int ftruncate(int fd, int pad, off_t length); } +202 MSTD BSD { int __sysctl(int *name, u_int namelen, void *old, \ + size_t *oldlenp, void *new, size_t newlen); } \ + __sysctl sysctl_args int +; properly, __sysctl should be a NOHIDE, but making an exception +; here allows to avoid one in libc/sys/Makefile.inc. +203 MSTD BSD { int mlock(const void *addr, size_t len); } +204 MSTD BSD { int munlock(const void *addr, size_t len); } +205 STD BSD { int undelete(char *path); } +206 STD BSD { int futimes(int fd, struct timeval *tptr); } +207 MSTD BSD { int getpgid(pid_t pid); } +208 UNIMPL NOHIDE newreboot (NetBSD) +209 MSTD BSD { int poll(struct pollfd *fds, u_int nfds, \ + int timeout); } + +; +; The following are reserved for loadable syscalls +; +210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int +219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int + +; +; The following were introduced with NetBSD/4.4Lite-2 +; They are initialized by thier respective modules/sysinits +220 MNOSTD BSD { int __semctl(int semid, int semnum, int cmd, \ + union semun *arg); } +221 MNOSTD BSD { int semget(key_t key, int nsems, int semflg); } +222 MNOSTD BSD { int semop(int semid, struct sembuf *sops, \ + u_int nsops); } +223 UNIMPL NOHIDE semconfig +224 MNOSTD BSD { int msgctl(int msqid, int cmd, \ + struct msqid_ds *buf); } +225 MNOSTD BSD { int msgget(key_t key, int msgflg); } +226 MNOSTD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ + int msgflg); } +227 MNOSTD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ + long msgtyp, int msgflg); } +228 MNOSTD BSD { int shmat(int shmid, void *shmaddr, int shmflg); } +229 MNOSTD BSD { int shmctl(int shmid, int cmd, \ + struct shmid_ds *buf); } +230 MNOSTD BSD { int shmdt(void *shmaddr); } +231 MNOSTD BSD { int shmget(key_t key, int size, int shmflg); } +; +232 MSTD POSIX { int clock_gettime(clockid_t clock_id, \ + struct timespec *tp); } +233 MSTD POSIX { int clock_settime(clockid_t clock_id, \ + const struct timespec *tp); } +234 MSTD POSIX { int clock_getres(clockid_t clock_id, \ + struct timespec *tp); } +235 UNIMPL NOHIDE timer_create +236 UNIMPL NOHIDE timer_delete +237 UNIMPL NOHIDE timer_settime +238 UNIMPL NOHIDE timer_gettime +239 UNIMPL NOHIDE timer_getoverrun +240 MSTD POSIX { int nanosleep(const struct timespec *rqtp, \ + struct timespec *rmtp); } +241 UNIMPL NOHIDE nosys +242 UNIMPL NOHIDE nosys +243 UNIMPL NOHIDE nosys +244 UNIMPL NOHIDE nosys +245 UNIMPL NOHIDE nosys +246 UNIMPL NOHIDE nosys +247 UNIMPL NOHIDE nosys +248 UNIMPL NOHIDE nosys +249 UNIMPL NOHIDE nosys +; syscall numbers initially used in OpenBSD +250 MSTD BSD { int minherit(void *addr, size_t len, int inherit); } +251 MSTD BSD { int rfork(int flags); } +252 MSTD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ + int timeout); } +253 STD BSD { int issetugid(void); } +254 STD BSD { int lchown(char *path, int uid, int gid); } +255 UNIMPL NOHIDE nosys +256 UNIMPL NOHIDE nosys +257 UNIMPL NOHIDE nosys +258 UNIMPL NOHIDE nosys +259 UNIMPL NOHIDE nosys +260 UNIMPL NOHIDE nosys +261 UNIMPL NOHIDE nosys +262 UNIMPL NOHIDE nosys +263 UNIMPL NOHIDE nosys +264 UNIMPL NOHIDE nosys +265 UNIMPL NOHIDE nosys +266 UNIMPL NOHIDE nosys +267 UNIMPL NOHIDE nosys +268 UNIMPL NOHIDE nosys +269 UNIMPL NOHIDE nosys +270 UNIMPL NOHIDE nosys +271 UNIMPL NOHIDE nosys +272 STD BSD { int getdents(int fd, char *buf, size_t count); } +273 UNIMPL NOHIDE nosys +274 STD BSD { int lchmod(char *path, mode_t mode); } +275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int +276 STD BSD { int lutimes(char *path, struct timeval *tptr); } +277 MNOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int +278 STD BSD { int nstat(char *path, struct nstat *ub); } +279 MSTD BSD { int nfstat(int fd, struct nstat *sb); } +280 STD BSD { int nlstat(char *path, struct nstat *ub); } +281 UNIMPL NOHIDE nosys +282 UNIMPL NOHIDE nosys +283 UNIMPL NOHIDE nosys +284 UNIMPL NOHIDE nosys +285 UNIMPL NOHIDE nosys +286 UNIMPL NOHIDE nosys +287 UNIMPL NOHIDE nosys +288 UNIMPL NOHIDE nosys +289 UNIMPL NOHIDE nosys +290 UNIMPL NOHIDE nosys +291 UNIMPL NOHIDE nosys +292 UNIMPL NOHIDE nosys +293 UNIMPL NOHIDE nosys +294 UNIMPL NOHIDE nosys +295 UNIMPL NOHIDE nosys +296 UNIMPL NOHIDE nosys +; XXX 297 is 300 in NetBSD +297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } +298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); } +299 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } +; syscall numbers for FreeBSD +300 MSTD BSD { int modnext(int modid); } +301 MSTD BSD { int modstat(int modid, struct module_stat* stat); } +302 MSTD BSD { int modfnext(int modid); } +303 MSTD BSD { int modfind(const char *name); } +304 MSTD BSD { int kldload(const char *file); } +305 MSTD BSD { int kldunload(int fileid); } +306 MSTD BSD { int kldfind(const char *file); } +307 MSTD BSD { int kldnext(int fileid); } +308 MSTD BSD { int kldstat(int fileid, struct kld_file_stat* stat); } +309 MSTD BSD { int kldfirstmod(int fileid); } +310 MSTD BSD { int getsid(pid_t pid); } +311 MSTD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +312 MSTD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +313 OBSOL NOHIDE signanosleep +314 NOSTD BSD { int aio_return(struct aiocb *aiocbp); } +315 NOSTD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } +316 NOSTD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); } +317 NOSTD BSD { int aio_error(struct aiocb *aiocbp); } +318 NOSTD BSD { int aio_read(struct aiocb *aiocbp); } +319 NOSTD BSD { int aio_write(struct aiocb *aiocbp); } +320 NOSTD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } +321 MSTD BSD { int yield(void); } +322 OBSOL NOHIDE thr_sleep +323 OBSOL NOHIDE thr_wakeup +324 MSTD BSD { int mlockall(int how); } +325 MSTD BSD { int munlockall(void); } +326 STD BSD { int __getcwd(u_char *buf, u_int buflen); } + +327 MSTD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } +328 MSTD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } + +329 MSTD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } +330 MSTD POSIX { int sched_getscheduler (pid_t pid); } + +331 MSTD POSIX { int sched_yield (void); } +332 MSTD POSIX { int sched_get_priority_max (int policy); } +333 MSTD POSIX { int sched_get_priority_min (int policy); } +334 MSTD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } +335 STD BSD { int utrace(const void *addr, size_t len); } +336 MSTD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \ + struct sf_hdtr *hdtr, off_t *sbytes, int flags); } +337 STD BSD { int kldsym(int fileid, int cmd, void *data); } +338 MSTD BSD { int jail(struct jail *jail); } +339 UNIMPL BSD pioctl +340 MSTD POSIX { int sigprocmask(int how, const sigset_t *set, \ + sigset_t *oset); } +341 MSTD POSIX { int sigsuspend(const sigset_t *sigmask); } +342 MSTD POSIX { int sigaction(int sig, const struct sigaction *act, \ + struct sigaction *oact); } +343 MSTD POSIX { int sigpending(sigset_t *set); } +344 STD BSD { int sigreturn(const struct __ucontext *sigcntxp); } +345 UNIMPL NOHIDE sigtimedwait +346 UNIMPL NOHIDE sigwaitinfo +347 MSTD BSD { int __acl_get_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +348 MSTD BSD { int __acl_set_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +349 MSTD BSD { int __acl_get_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +350 MSTD BSD { int __acl_set_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +351 MSTD BSD { int __acl_delete_file(const char *path, \ + acl_type_t type); } +352 MSTD BSD { int __acl_delete_fd(int filedes, acl_type_t type); } +353 MSTD BSD { int __acl_aclcheck_file(const char *path, \ + acl_type_t type, struct acl *aclp); } +354 MSTD BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ + struct acl *aclp); } +355 STD BSD { int extattrctl(const char *path, int cmd, \ + const char *filename, int attrnamespace, \ + const char *attrname); } +356 STD BSD { int extattr_set_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +357 STD BSD { ssize_t extattr_get_file(const char *path, \ + int attrnamespace, const char *attrname, \ + void *data, size_t nbytes); } +358 STD BSD { int extattr_delete_file(const char *path, \ + int attrnamespace, const char *attrname); } +359 NOSTD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } +360 MSTD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } +361 MSTD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } +362 MSTD BSD { int kqueue(void); } +363 MSTD BSD { int kevent(int fd, \ + const struct kevent *changelist, int nchanges, \ + struct kevent *eventlist, int nevents, \ + const struct timespec *timeout); } +364 STD BSD { int __cap_get_proc(struct cap *cap_p); } +365 STD BSD { int __cap_set_proc(struct cap *cap_p); } +366 STD BSD { int __cap_get_fd(int fd, struct cap *cap_p); } +367 STD BSD { int __cap_get_file(const char *path_p, struct cap *cap_p); } +368 STD BSD { int __cap_set_fd(int fd, struct cap *cap_p); } +369 STD BSD { int __cap_set_file(const char *path_p, struct cap *cap_p); } +370 NODEF NOHIDE lkmressys lkmressys nosys_args int +371 STD BSD { int extattr_set_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, \ + size_t nbytes); } +372 STD BSD { ssize_t extattr_get_fd(int fd, int attrnamespace, \ + const char *attrname, void *data, size_t nbytes); } +373 STD BSD { int extattr_delete_fd(int fd, int attrnamespace, \ + const char *attrname); } +374 MSTD BSD { int __setugid(int flag); } +375 NOIMPL BSD { int nfsclnt(int flag, caddr_t argp); } +376 STD BSD { int eaccess(char *path, int flags); } +377 UNIMPL BSD afs_syscall +378 STD BSD { int nmount(struct iovec *iovp, unsigned int iovcnt, \ + int flags); } +379 STD BSD { int kse_exit(void); } +380 STD BSD { int kse_wakeup(void); } +381 STD BSD { int kse_new(struct kse_mailbox * mbx, \ + int new_grp_flag); } +382 STD BSD { int thread_wakeup(struct thread_mailbox *tmbx); } +383 STD BSD { int kse_yield(void); } +384 UNIMPL BSD __mac_get_proc +385 UNIMPL BSD __mac_set_proc +386 UNIMPL BSD __mac_get_fd +387 UNIMPL BSD __mac_get_file +388 UNIMPL BSD __mac_set_fd +389 UNIMPL BSD __mac_set_file