syscalls.master revision 277610
1186691Sobrien $FreeBSD: head/sys/compat/freebsd32/syscalls.master 277610 2015-01-23 21:07:08Z jilles $ 268349Sobrien; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 3268515Sdelphij; from: src/sys/kern/syscalls.master 1.107 4268515Sdelphij; 5268515Sdelphij; System call name/number master file. 6186691Sobrien; Processed to created init_sysent.c, syscalls.c and syscall.h. 768349Sobrien 868349Sobrien; Columns: number audit type name alt{name,tag,rtyp}/comments 9186691Sobrien; number system call number, must be in order 1068349Sobrien; audit the audit event associated with the system call 1168349Sobrien; A value of AUE_NULL means no auditing, but it also means that 12268515Sdelphij; there is no audit event for the call at this time. For the 13268515Sdelphij; case where the event exists, but we don't want auditing, the 14268515Sdelphij; event should be #defined to AUE_NULL in audit_kevents.h. 15186691Sobrien; type one of STD, OBSOL, UNIMPL, COMPAT, COMPAT4, COMPAT6, 16186691Sobrien; COMPAT7, NODEF, NOARGS, NOPROTO, NOSTD 17186691Sobrien; The COMPAT* options may be combined with one or more NO* 18268515Sdelphij; options separated by '|' with no spaces (e.g. COMPAT|NOARGS) 19268515Sdelphij; name psuedo-prototype of syscall routine 20268515Sdelphij; If one of the following alts is different, then all appear: 21186691Sobrien; altname name of system call if different 2284685Sobrien; alttag name of args struct tag if different from [o]`name'"_args" 2384685Sobrien; altrtyp return type if not int (bogus - syscalls always return int) 24234449Sobrien; for UNIMPL/OBSOL, name continues with comments 25234449Sobrien 26234449Sobrien; types: 27234449Sobrien; STD always included 28234449Sobrien; COMPAT included on COMPAT #ifdef 29234449Sobrien; COMPAT4 included on COMPAT4 #ifdef (FreeBSD 4 compat) 30234449Sobrien; COMPAT6 included on COMPAT6 #ifdef (FreeBSD 6 compat) 31234449Sobrien; COMPAT7 included on COMPAT7 #ifdef (FreeBSD 7 compat) 32139368Sobrien; OBSOL obsolete, not included in system, only specifies name 33139368Sobrien; UNIMPL not implemented, placeholder only 34133359Sobrien; NOSTD implemented but as a lkm that can be statically 35330569Sgordon; compiled in; sysent entry will be filled with lkmressys 36330569Sgordon; so the SYSCALL_MODULE macro works 37330569Sgordon; NOARGS same as STD except do not create structure in sys/sysproto.h 38186691Sobrien; NODEF same as STD except only have the entry in the syscall table 39186691Sobrien; added. Meaning - do not create structure or function 40186691Sobrien; prototype in sys/sysproto.h 41133359Sobrien; NOPROTO same as STD except do not create structure or 42133359Sobrien; function prototype in sys/sysproto.h. Does add a 43133359Sobrien; definition to syscall.h besides adding a sysent. 44268515Sdelphij 45268515Sdelphij; #ifdef's, etc. may be included, and are copied to the output files. 46268515Sdelphij 47234449Sobrien#include <sys/param.h> 48234449Sobrien#include <sys/sysent.h> 49234449Sobrien#include <sys/sysproto.h> 50276415Sdelphij#include <sys/mount.h> 51276415Sdelphij#include <sys/socket.h> 52276415Sdelphij#include <compat/freebsd32/freebsd32.h> 53186691Sobrien#include <compat/freebsd32/freebsd32_proto.h> 54186691Sobrien 55186691Sobrien#if !defined(PAD64_REQUIRED) && (defined(__powerpc__) || defined(__mips__)) 56234449Sobrien#define PAD64_REQUIRED 57234449Sobrien#endif 58234449Sobrien 59133359Sobrien; Reserved/unimplemented system calls in the range 0-150 inclusive 60133359Sobrien; are reserved for use in future Berkeley releases. 61133359Sobrien; Additional system calls implemented in vendor and other 62133359Sobrien; redistributions should be placed in the reserved range at the end 63110949Sobrien; of the current calls. 64110949Sobrien 65268515Sdelphij0 AUE_NULL NOPROTO { int nosys(void); } syscall nosys_args int 66268515Sdelphij1 AUE_EXIT NOPROTO { void sys_exit(int rval); } exit \ 67186691Sobrien sys_exit_args void 68284778Sdelphij2 AUE_FORK NOPROTO { int fork(void); } 69284778Sdelphij3 AUE_READ NOPROTO { ssize_t read(int fd, void *buf, \ 70284778Sdelphij size_t nbyte); } 71268515Sdelphij4 AUE_WRITE NOPROTO { ssize_t write(int fd, const void *buf, \ 72268515Sdelphij size_t nbyte); } 73186691Sobrien5 AUE_OPEN_RWTC NOPROTO { int open(char *path, int flags, \ 74133359Sobrien int mode); } 75133359Sobrien6 AUE_CLOSE NOPROTO { int close(int fd); } 76133359Sobrien7 AUE_WAIT4 STD { int freebsd32_wait4(int pid, int *status, \ 77234449Sobrien int options, struct rusage32 *rusage); } 78234449Sobrien8 AUE_CREAT OBSOL old creat 79234449Sobrien9 AUE_LINK NOPROTO { int link(char *path, char *link); } 80133359Sobrien10 AUE_UNLINK NOPROTO { int unlink(char *path); } 81133359Sobrien11 AUE_NULL OBSOL execv 82133359Sobrien12 AUE_CHDIR NOPROTO { int chdir(char *path); } 83169962Sobrien13 AUE_FCHDIR NOPROTO { int fchdir(int fd); } 84169962Sobrien14 AUE_MKNOD NOPROTO { int mknod(char *path, int mode, int dev); } 85169962Sobrien15 AUE_CHMOD NOPROTO { int chmod(char *path, int mode); } 86133359Sobrien16 AUE_CHOWN NOPROTO { int chown(char *path, int uid, int gid); } 87133359Sobrien17 AUE_NULL NOPROTO { int obreak(char *nsize); } break \ 88133359Sobrien obreak_args int 89284778Sdelphij18 AUE_GETFSSTAT COMPAT4 { int freebsd32_getfsstat( \ 90284778Sdelphij struct statfs32 *buf, long bufsize, \ 91284778Sdelphij int flags); } 92268515Sdelphij19 AUE_LSEEK COMPAT { int freebsd32_lseek(int fd, int offset, \ 93133359Sobrien int whence); } 94133359Sobrien20 AUE_GETPID NOPROTO { pid_t getpid(void); } 95159764Sobrien21 AUE_MOUNT NOPROTO { int mount(char *type, char *path, \ 96159764Sobrien int flags, caddr_t data); } 97159764Sobrien22 AUE_UMOUNT NOPROTO { int unmount(char *path, int flags); } 98133359Sobrien23 AUE_SETUID NOPROTO { int setuid(uid_t uid); } 99133359Sobrien24 AUE_GETUID NOPROTO { uid_t getuid(void); } 100133359Sobrien25 AUE_GETEUID NOPROTO { uid_t geteuid(void); } 101268515Sdelphij26 AUE_PTRACE NOPROTO { int ptrace(int req, pid_t pid, \ 102268515Sdelphij caddr_t addr, int data); } 103268515Sdelphij27 AUE_RECVMSG STD { int freebsd32_recvmsg(int s, struct msghdr32 *msg, \ 104133359Sobrien int flags); } 105103373Sobrien28 AUE_SENDMSG STD { int freebsd32_sendmsg(int s, struct msghdr32 *msg, \ 106103373Sobrien int flags); } 107268515Sdelphij29 AUE_RECVFROM STD { int freebsd32_recvfrom(int s, uint32_t buf, \ 10880588Sobrien uint32_t len, int flags, uint32_t from, \ 10980588Sobrien uint32_t fromlenaddr); } 110276415Sdelphij30 AUE_ACCEPT NOPROTO { int accept(int s, caddr_t name, \ 111276415Sdelphij int *anamelen); } 112276415Sdelphij31 AUE_GETPEERNAME NOPROTO { int getpeername(int fdes, caddr_t asa, \ 113268515Sdelphij int *alen); } 114268515Sdelphij32 AUE_GETSOCKNAME NOPROTO { int getsockname(int fdes, caddr_t asa, \ 115234449Sobrien int *alen); } 116276415Sdelphij33 AUE_ACCESS NOPROTO { int access(char *path, int amode); } 117276415Sdelphij34 AUE_CHFLAGS NOPROTO { int chflags(const char *path, u_long flags); } 118276415Sdelphij35 AUE_FCHFLAGS NOPROTO { int fchflags(int fd, u_long flags); } 119284778Sdelphij36 AUE_SYNC NOPROTO { int sync(void); } 120284778Sdelphij37 AUE_KILL NOPROTO { int kill(int pid, int signum); } 121284778Sdelphij38 AUE_STAT COMPAT { int freebsd32_stat(char *path, \ 122284778Sdelphij struct ostat32 *ub); } 123284778Sdelphij39 AUE_GETPPID NOPROTO { pid_t getppid(void); } 124284778Sdelphij40 AUE_LSTAT COMPAT { int freebsd32_lstat(char *path, \ 125268515Sdelphij struct ostat *ub); } 126268515Sdelphij41 AUE_DUP NOPROTO { int dup(u_int fd); } 127268515Sdelphij42 AUE_PIPE NOPROTO { int pipe(void); } 128133359Sobrien43 AUE_GETEGID NOPROTO { gid_t getegid(void); } 129133359Sobrien44 AUE_PROFILE NOPROTO { int profil(caddr_t samples, size_t size, \ 130133359Sobrien size_t offset, u_int scale); } 131133359Sobrien45 AUE_KTRACE NOPROTO { int ktrace(const char *fname, int ops, \ 132133359Sobrien int facs, int pid); } 133133359Sobrien46 AUE_SIGACTION COMPAT { int freebsd32_sigaction( int signum, \ 134268515Sdelphij struct osigaction32 *nsa, \ 135268515Sdelphij struct osigaction32 *osa); } 136268515Sdelphij47 AUE_GETGID NOPROTO { gid_t getgid(void); } 137133359Sobrien48 AUE_SIGPROCMASK COMPAT { int freebsd32_sigprocmask(int how, \ 13868349Sobrien osigset_t mask); } 13968349Sobrien49 AUE_GETLOGIN NOPROTO { int getlogin(char *namebuf, \ 140133359Sobrien u_int namelen); } 141133359Sobrien50 AUE_SETLOGIN NOPROTO { int setlogin(char *namebuf); } 14268349Sobrien51 AUE_ACCT NOPROTO { int acct(char *path); } 143133359Sobrien52 AUE_SIGPENDING COMPAT { int freebsd32_sigpending(void); } 144133359Sobrien53 AUE_SIGALTSTACK STD { int freebsd32_sigaltstack( \ 145103373Sobrien struct sigaltstack32 *ss, \ 146191771Sobrien struct sigaltstack32 *oss); } 147191771Sobrien54 AUE_NULL STD { int freebsd32_ioctl(int fd, uint32_t com, \ 148191771Sobrien struct md_ioctl32 *data); } 149191771Sobrien55 AUE_REBOOT NOPROTO { int reboot(int opt); } 150191771Sobrien56 AUE_REVOKE NOPROTO { int revoke(char *path); } 151191771Sobrien57 AUE_SYMLINK NOPROTO { int symlink(char *path, char *link); } 152169962Sobrien58 AUE_READLINK NOPROTO { ssize_t readlink(char *path, char *buf, \ 153169962Sobrien size_t count); } 154169962Sobrien59 AUE_EXECVE STD { int freebsd32_execve(char *fname, \ 155175296Sobrien uint32_t *argv, uint32_t *envv); } 156175296Sobrien60 AUE_UMASK NOPROTO { int umask(int newmask); } umask \ 157175296Sobrien umask_args int 158133359Sobrien61 AUE_CHROOT NOPROTO { int chroot(char *path); } 159133359Sobrien62 AUE_FSTAT COMPAT { int freebsd32_fstat(int fd, \ 160103373Sobrien struct ostat32 *ub); } 161192350Sdelphij63 AUE_NULL OBSOL ogetkerninfo 162192350Sdelphij64 AUE_NULL COMPAT { int freebsd32_getpagesize( \ 163192350Sdelphij int32_t dummy); } 164234449Sobrien65 AUE_MSYNC NOPROTO { int msync(void *addr, size_t len, \ 165133359Sobrien int flags); } 166110949Sobrien66 AUE_VFORK NOPROTO { int vfork(void); } 167234449Sobrien67 AUE_NULL OBSOL vread 168191771Sobrien68 AUE_NULL OBSOL vwrite 169191771Sobrien69 AUE_SBRK NOPROTO { int sbrk(int incr); } 170234449Sobrien70 AUE_SSTK NOPROTO { int sstk(int incr); } 171191771Sobrien71 AUE_MMAP COMPAT|NOPROTO { int mmap(void *addr, int len, \ 172191771Sobrien int prot, int flags, int fd, int pos); } 173133359Sobrien72 AUE_O_VADVISE NOPROTO { int ovadvise(int anom); } vadvise \ 17480588Sobrien ovadvise_args int 17580588Sobrien73 AUE_MUNMAP NOPROTO { int munmap(void *addr, size_t len); } 176268515Sdelphij74 AUE_MPROTECT STD { int freebsd32_mprotect(const void *addr, \ 177268515Sdelphij size_t len, int prot); } 178268515Sdelphij75 AUE_MADVISE NOPROTO { int madvise(void *addr, size_t len, \ 179133359Sobrien int behav); } 180103373Sobrien76 AUE_NULL OBSOL vhangup 181103373Sobrien77 AUE_NULL OBSOL vlimit 182169962Sobrien78 AUE_MINCORE NOPROTO { int mincore(const void *addr, size_t len, \ 183169962Sobrien char *vec); } 184169962Sobrien79 AUE_GETGROUPS NOPROTO { int getgroups(u_int gidsetsize, \ 185133359Sobrien gid_t *gidset); } 186103373Sobrien80 AUE_SETGROUPS NOPROTO { int setgroups(u_int gidsetsize, \ 187103373Sobrien gid_t *gidset); } 188133359Sobrien81 AUE_GETPGRP NOPROTO { int getpgrp(void); } 189133359Sobrien82 AUE_SETPGRP NOPROTO { int setpgid(int pid, int pgid); } 190133359Sobrien83 AUE_SETITIMER STD { int freebsd32_setitimer(u_int which, \ 191133359Sobrien struct itimerval32 *itv, \ 192133359Sobrien struct itimerval32 *oitv); } 193133359Sobrien84 AUE_NULL OBSOL owait 194186691Sobrien; XXX implement 195139368Sobrien85 AUE_SWAPON NOPROTO { int swapon(char *name); } 196139368Sobrien86 AUE_GETITIMER STD { int freebsd32_getitimer(u_int which, \ 197133359Sobrien struct itimerval32 *itv); } 198133359Sobrien87 AUE_O_GETHOSTNAME OBSOL ogethostname 199133359Sobrien88 AUE_O_SETHOSTNAME OBSOL osethostname 200133359Sobrien89 AUE_GETDTABLESIZE NOPROTO { int getdtablesize(void); } 201133359Sobrien90 AUE_DUP2 NOPROTO { int dup2(u_int from, u_int to); } 202133359Sobrien91 AUE_NULL UNIMPL getdopt 203268515Sdelphij92 AUE_FCNTL STD { int freebsd32_fcntl(int fd, int cmd, \ 204268515Sdelphij int arg); } 205186691Sobrien93 AUE_SELECT STD { int freebsd32_select(int nd, fd_set *in, \ 206133359Sobrien fd_set *ou, fd_set *ex, \ 20768349Sobrien struct timeval32 *tv); } 20868349Sobrien94 AUE_NULL UNIMPL setdopt 209276415Sdelphij95 AUE_FSYNC NOPROTO { int fsync(int fd); } 210276415Sdelphij96 AUE_SETPRIORITY NOPROTO { int setpriority(int which, int who, \ 211276415Sdelphij int prio); } 212133359Sobrien97 AUE_SOCKET NOPROTO { int socket(int domain, int type, \ 213133359Sobrien int protocol); } 214103373Sobrien98 AUE_CONNECT NOPROTO { int connect(int s, caddr_t name, \ 215133359Sobrien int namelen); } 216133359Sobrien99 AUE_NULL OBSOL oaccept 217133359Sobrien100 AUE_GETPRIORITY NOPROTO { int getpriority(int which, int who); } 218133359Sobrien101 AUE_NULL OBSOL osend 219133359Sobrien102 AUE_NULL OBSOL orecv 220133359Sobrien103 AUE_NULL COMPAT { int freebsd32_sigreturn( \ 221186691Sobrien struct ia32_sigcontext3 *sigcntxp); } 222186691Sobrien104 AUE_BIND NOPROTO { int bind(int s, caddr_t name, \ 223159764Sobrien int namelen); } 224268515Sdelphij105 AUE_SETSOCKOPT NOPROTO { int setsockopt(int s, int level, \ 225268515Sdelphij int name, caddr_t val, int valsize); } 226268515Sdelphij106 AUE_LISTEN NOPROTO { int listen(int s, int backlog); } 227268515Sdelphij107 AUE_NULL OBSOL vtimes 228268515Sdelphij108 AUE_O_SIGVEC COMPAT { int freebsd32_sigvec(int signum, \ 229268515Sdelphij struct sigvec32 *nsv, \ 230268515Sdelphij struct sigvec32 *osv); } 231268515Sdelphij109 AUE_O_SIGBLOCK COMPAT { int freebsd32_sigblock(int mask); } 232268515Sdelphij110 AUE_O_SIGSETMASK COMPAT { int freebsd32_sigsetmask( int mask); } 233268515Sdelphij111 AUE_SIGSUSPEND COMPAT { int freebsd32_sigsuspend( int mask); } 234133359Sobrien112 AUE_O_SIGSTACK COMPAT { int freebsd32_sigstack( \ 235133359Sobrien struct sigstack32 *nss, \ 236133359Sobrien struct sigstack32 *oss); } 237169942Sobrien113 AUE_NULL OBSOL orecvmsg 238169942Sobrien114 AUE_NULL OBSOL osendmsg 239169942Sobrien115 AUE_NULL OBSOL vtrace 240133359Sobrien116 AUE_GETTIMEOFDAY STD { int freebsd32_gettimeofday( \ 241133359Sobrien struct timeval32 *tp, \ 242133359Sobrien struct timezone *tzp); } 243268515Sdelphij117 AUE_GETRUSAGE STD { int freebsd32_getrusage(int who, \ 244268515Sdelphij struct rusage32 *rusage); } 245268515Sdelphij118 AUE_GETSOCKOPT NOPROTO { int getsockopt(int s, int level, \ 246268515Sdelphij int name, caddr_t val, int *avalsize); } 247268515Sdelphij119 AUE_NULL UNIMPL resuba (BSD/OS 2.x) 248268515Sdelphij120 AUE_READV STD { int freebsd32_readv(int fd, \ 249276415Sdelphij struct iovec32 *iovp, u_int iovcnt); } 250276415Sdelphij121 AUE_WRITEV STD { int freebsd32_writev(int fd, \ 251276415Sdelphij struct iovec32 *iovp, u_int iovcnt); } 252175296Sobrien122 AUE_SETTIMEOFDAY STD { int freebsd32_settimeofday( \ 253175296Sobrien struct timeval32 *tv, \ 254175296Sobrien struct timezone *tzp); } 255234449Sobrien123 AUE_FCHOWN NOPROTO { int fchown(int fd, int uid, int gid); } 256234449Sobrien124 AUE_FCHMOD NOPROTO { int fchmod(int fd, int mode); } 257234449Sobrien125 AUE_RECVFROM OBSOL orecvfrom 258234449Sobrien126 AUE_SETREUID NOPROTO { int setreuid(int ruid, int euid); } 259133359Sobrien127 AUE_SETREGID NOPROTO { int setregid(int rgid, int egid); } 260133359Sobrien128 AUE_RENAME NOPROTO { int rename(char *from, char *to); } 261133359Sobrien129 AUE_TRUNCATE COMPAT|NOPROTO { int truncate(char *path, \ 262133359Sobrien int length); } 263133359Sobrien130 AUE_FTRUNCATE COMPAT|NOPROTO { int ftruncate(int fd, int length); } 264133359Sobrien131 AUE_FLOCK NOPROTO { int flock(int fd, int how); } 265133359Sobrien132 AUE_MKFIFO NOPROTO { int mkfifo(char *path, int mode); } 266133359Sobrien133 AUE_SENDTO NOPROTO { int sendto(int s, caddr_t buf, \ 26768349Sobrien size_t len, int flags, caddr_t to, \ 26868349Sobrien int tolen); } 26968349Sobrien134 AUE_SHUTDOWN NOPROTO { int shutdown(int s, int how); } 270133359Sobrien135 AUE_SOCKETPAIR NOPROTO { int socketpair(int domain, int type, \ 271133359Sobrien int protocol, int *rsv); } 272133359Sobrien136 AUE_MKDIR NOPROTO { int mkdir(char *path, int mode); } 273133359Sobrien137 AUE_RMDIR NOPROTO { int rmdir(char *path); } 274133359Sobrien138 AUE_UTIMES STD { int freebsd32_utimes(char *path, \ 275133359Sobrien struct timeval32 *tptr); } 276133359Sobrien139 AUE_NULL OBSOL 4.2 sigreturn 277133359Sobrien140 AUE_ADJTIME STD { int freebsd32_adjtime( \ 278133359Sobrien struct timeval32 *delta, \ 279133359Sobrien struct timeval32 *olddelta); } 280133359Sobrien141 AUE_GETPEERNAME OBSOL ogetpeername 281133359Sobrien142 AUE_SYSCTL OBSOL ogethostid 282234449Sobrien143 AUE_SYSCTL OBSOL sethostid 283234449Sobrien144 AUE_GETRLIMIT OBSOL getrlimit 284234449Sobrien145 AUE_SETRLIMIT OBSOL setrlimit 285133359Sobrien146 AUE_KILLPG OBSOL killpg 286133359Sobrien147 AUE_SETSID NOPROTO { int setsid(void); } 287133359Sobrien148 AUE_QUOTACTL NOPROTO { int quotactl(char *path, int cmd, int uid, \ 288133359Sobrien caddr_t arg); } 289133359Sobrien149 AUE_O_QUOTA OBSOL oquota 290133359Sobrien150 AUE_GETSOCKNAME OBSOL ogetsockname 291133359Sobrien 292133359Sobrien; Syscalls 151-180 inclusive are reserved for vendor-specific 293133359Sobrien; system calls. (This includes various calls added for compatibity 294234449Sobrien; with other Unix variants.) 295234449Sobrien; Some of these calls are now supported by BSD... 296234449Sobrien151 AUE_NULL UNIMPL sem_lock (BSD/OS 2.x) 297234449Sobrien152 AUE_NULL UNIMPL sem_wakeup (BSD/OS 2.x) 298234449Sobrien153 AUE_NULL UNIMPL asyncdaemon (BSD/OS 2.x) 299234449Sobrien; 154 is initialised by the NLM code, if present. 300234449Sobrien154 AUE_NULL UNIMPL nlm_syscall 301234449Sobrien; 155 is initialized by the NFS code, if present. 302234449Sobrien; XXX this is a problem!!! 303234449Sobrien155 AUE_NFS_SVC UNIMPL nfssvc 304234449Sobrien156 AUE_GETDIRENTRIES COMPAT { int freebsd32_getdirentries(int fd, \ 305234449Sobrien char *buf, u_int count, uint32_t *basep); } 306234449Sobrien157 AUE_STATFS COMPAT4 { int freebsd32_statfs(char *path, \ 307234449Sobrien struct statfs32 *buf); } 308234449Sobrien158 AUE_FSTATFS COMPAT4 { int freebsd32_fstatfs(int fd, \ 309234449Sobrien struct statfs32 *buf); } 310234449Sobrien159 AUE_NULL UNIMPL nosys 311234449Sobrien160 AUE_LGETFH UNIMPL lgetfh 312234449Sobrien161 AUE_NFS_GETFH NOPROTO { int getfh(char *fname, \ 313234449Sobrien struct fhandle *fhp); } 314234449Sobrien162 AUE_NULL OBSOL getdomainname 315234449Sobrien163 AUE_NULL OBSOL setdomainname 31668349Sobrien164 AUE_NULL OBSOL uname 31768349Sobrien165 AUE_SYSARCH STD { int freebsd32_sysarch(int op, char *parms); } 31868349Sobrien166 AUE_RTPRIO NOPROTO { int rtprio(int function, pid_t pid, \ 319268515Sdelphij struct rtprio *rtp); } 320268515Sdelphij167 AUE_NULL UNIMPL nosys 321268515Sdelphij168 AUE_NULL UNIMPL nosys 322268515Sdelphij169 AUE_SEMSYS NOSTD { int freebsd32_semsys(int which, int a2, \ 323268515Sdelphij int a3, int a4, int a5); } 324268515Sdelphij170 AUE_MSGSYS NOSTD { int freebsd32_msgsys(int which, int a2, \ 325268515Sdelphij int a3, int a4, int a5, int a6); } 326268515Sdelphij171 AUE_SHMSYS NOSTD { int freebsd32_shmsys(uint32_t which, uint32_t a2, \ 327268515Sdelphij uint32_t a3, uint32_t a4); } 328268515Sdelphij172 AUE_NULL UNIMPL nosys 329268515Sdelphij173 AUE_PREAD COMPAT6 { ssize_t freebsd32_pread(int fd, void *buf, \ 330268515Sdelphij size_t nbyte, int pad, \ 331330569Sgordon uint32_t offset1, uint32_t offset2); } 332330569Sgordon174 AUE_PWRITE COMPAT6 { ssize_t freebsd32_pwrite(int fd, \ 333330569Sgordon const void *buf, size_t nbyte, int pad, \ 334268515Sdelphij uint32_t offset1, uint32_t offset2); } 335268515Sdelphij175 AUE_NULL UNIMPL nosys 336268515Sdelphij176 AUE_NTP_ADJTIME NOPROTO { int ntp_adjtime(struct timex *tp); } 337268515Sdelphij177 AUE_NULL UNIMPL sfork (BSD/OS 2.x) 338268515Sdelphij178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x) 339103373Sobrien179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x) 340103373Sobrien180 AUE_NULL UNIMPL nosys 341103373Sobrien 342186691Sobrien; Syscalls 181-199 are used by/reserved for BSD 343186691Sobrien181 AUE_SETGID NOPROTO { int setgid(gid_t gid); } 344186691Sobrien182 AUE_SETEGID NOPROTO { int setegid(gid_t egid); } 345103373Sobrien183 AUE_SETEUID NOPROTO { int seteuid(uid_t euid); } 346103373Sobrien184 AUE_NULL UNIMPL lfs_bmapv 347103373Sobrien185 AUE_NULL UNIMPL lfs_markv 348234449Sobrien186 AUE_NULL UNIMPL lfs_segclean 349234449Sobrien187 AUE_NULL UNIMPL lfs_segwait 350234449Sobrien188 AUE_STAT STD { int freebsd32_stat(char *path, \ 351234449Sobrien struct stat32 *ub); } 352234449Sobrien189 AUE_FSTAT STD { int freebsd32_fstat(int fd, \ 353234449Sobrien struct stat32 *ub); } 354234449Sobrien190 AUE_LSTAT STD { int freebsd32_lstat(char *path, \ 355234449Sobrien struct stat32 *ub); } 356234449Sobrien191 AUE_PATHCONF NOPROTO { int pathconf(char *path, int name); } 357234449Sobrien192 AUE_FPATHCONF NOPROTO { int fpathconf(int fd, int name); } 358268515Sdelphij193 AUE_NULL UNIMPL nosys 359268515Sdelphij194 AUE_GETRLIMIT NOPROTO { int getrlimit(u_int which, \ 360268515Sdelphij struct rlimit *rlp); } getrlimit \ 361268515Sdelphij __getrlimit_args int 362268515Sdelphij195 AUE_SETRLIMIT NOPROTO { int setrlimit(u_int which, \ 363268515Sdelphij struct rlimit *rlp); } setrlimit \ 364268515Sdelphij __setrlimit_args int 365268515Sdelphij196 AUE_GETDIRENTRIES STD { int freebsd32_getdirentries(int fd, \ 366268515Sdelphij char *buf, u_int count, int32_t *basep); } 367268515Sdelphij197 AUE_MMAP COMPAT6 { caddr_t freebsd32_mmap(caddr_t addr, \ 368268515Sdelphij size_t len, int prot, int flags, int fd, \ 369268515Sdelphij int pad, uint32_t pos1, uint32_t pos2); } 370268515Sdelphij198 AUE_NULL NOPROTO { int nosys(void); } __syscall \ 371268515Sdelphij __syscall_args int 372268515Sdelphij199 AUE_LSEEK COMPAT6 { off_t freebsd32_lseek(int fd, int pad, \ 373133359Sobrien uint32_t offset1, uint32_t offset2, \ 374133359Sobrien int whence); } 375133359Sobrien200 AUE_TRUNCATE COMPAT6 { int freebsd32_truncate(char *path, \ 376268515Sdelphij int pad, uint32_t length1, \ 377268515Sdelphij uint32_t length2); } 378268515Sdelphij201 AUE_FTRUNCATE COMPAT6 { int freebsd32_ftruncate(int fd, int pad, \ 379268515Sdelphij uint32_t length1, uint32_t length2); } 380268515Sdelphij202 AUE_SYSCTL STD { int freebsd32_sysctl(int *name, \ 381268515Sdelphij u_int namelen, void *old, \ 382268515Sdelphij uint32_t *oldlenp, void *new, \ 383268515Sdelphij uint32_t newlen); } 384268515Sdelphij203 AUE_MLOCK NOPROTO { int mlock(const void *addr, \ 385268515Sdelphij size_t len); } 386268515Sdelphij204 AUE_MUNLOCK NOPROTO { int munlock(const void *addr, \ 387268515Sdelphij size_t len); } 388133359Sobrien205 AUE_UNDELETE NOPROTO { int undelete(char *path); } 389133359Sobrien206 AUE_FUTIMES STD { int freebsd32_futimes(int fd, \ 390133359Sobrien struct timeval32 *tptr); } 391175296Sobrien207 AUE_GETPGID NOPROTO { int getpgid(pid_t pid); } 392133359Sobrien208 AUE_NULL UNIMPL newreboot (NetBSD) 393133359Sobrien209 AUE_POLL NOPROTO { int poll(struct pollfd *fds, u_int nfds, \ 394268515Sdelphij int timeout); } 395268515Sdelphij 396268515Sdelphij; 397175296Sobrien; The following are reserved for loadable syscalls 398133359Sobrien; 399139368Sobrien210 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 400268515Sdelphij211 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 401268515Sdelphij212 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 402268515Sdelphij213 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 403139368Sobrien214 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 404268515Sdelphij215 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 405268515Sdelphij216 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 406268515Sdelphij217 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 407139368Sobrien218 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 408268515Sdelphij219 AUE_NULL NODEF|NOTSTATIC lkmnosys lkmnosys nosys_args int 409268515Sdelphij 410268515Sdelphij; 411268515Sdelphij; The following were introduced with NetBSD/4.4Lite-2 412268515Sdelphij; They are initialized by their respective modules/sysinits 413268515Sdelphij; XXX PROBLEM!! 414268515Sdelphij220 AUE_SEMCTL COMPAT7|NOSTD { int freebsd32_semctl( \ 415268515Sdelphij int semid, int semnum, \ 416268515Sdelphij int cmd, union semun32 *arg); } 417268515Sdelphij221 AUE_SEMGET NOSTD|NOPROTO { int semget(key_t key, int nsems, \ 418268515Sdelphij int semflg); } 419268515Sdelphij222 AUE_SEMOP NOSTD|NOPROTO { int semop(int semid, \ 420268515Sdelphij struct sembuf *sops, u_int nsops); } 421268515Sdelphij223 AUE_NULL UNIMPL semconfig 422224 AUE_MSGCTL COMPAT7|NOSTD { int freebsd32_msgctl( \ 423 int msqid, int cmd, \ 424 struct msqid_ds32_old *buf); } 425225 AUE_MSGGET NOSTD|NOPROTO { int msgget(key_t key, int msgflg); } 426226 AUE_MSGSND NOSTD { int freebsd32_msgsnd(int msqid, void *msgp, \ 427 size_t msgsz, int msgflg); } 428227 AUE_MSGRCV NOSTD { int freebsd32_msgrcv(int msqid, void *msgp, \ 429 size_t msgsz, long msgtyp, int msgflg); } 430228 AUE_SHMAT NOSTD|NOPROTO { int shmat(int shmid, void *shmaddr, \ 431 int shmflg); } 432229 AUE_SHMCTL COMPAT7|NOSTD { int freebsd32_shmctl( \ 433 int shmid, int cmd, \ 434 struct shmid_ds32_old *buf); } 435230 AUE_SHMDT NOSTD|NOPROTO { int shmdt(void *shmaddr); } 436231 AUE_SHMGET NOSTD|NOPROTO { int shmget(key_t key, int size, \ 437 int shmflg); } 438; 439232 AUE_NULL STD { int freebsd32_clock_gettime(clockid_t clock_id, \ 440 struct timespec32 *tp); } 441233 AUE_CLOCK_SETTIME STD { int freebsd32_clock_settime(clockid_t clock_id, \ 442 const struct timespec32 *tp); } 443234 AUE_NULL STD { int freebsd32_clock_getres(clockid_t clock_id, \ 444 struct timespec32 *tp); } 445235 AUE_NULL STD { int freebsd32_ktimer_create(\ 446 clockid_t clock_id, \ 447 struct sigevent32 *evp, int *timerid); } 448236 AUE_NULL NOPROTO { int ktimer_delete(int timerid); } 449237 AUE_NULL STD { int freebsd32_ktimer_settime(int timerid,\ 450 int flags, \ 451 const struct itimerspec32 *value, \ 452 struct itimerspec32 *ovalue); } 453238 AUE_NULL STD { int freebsd32_ktimer_gettime(int timerid,\ 454 struct itimerspec32 *value); } 455239 AUE_NULL NOPROTO { int ktimer_getoverrun(int timerid); } 456240 AUE_NULL STD { int freebsd32_nanosleep( \ 457 const struct timespec32 *rqtp, \ 458 struct timespec32 *rmtp); } 459241 AUE_NULL NOPROTO { int ffclock_getcounter(ffcounter *ffcount); } 460242 AUE_NULL NOPROTO { int ffclock_setestimate( \ 461 struct ffclock_estimate *cest); } 462243 AUE_NULL NOPROTO { int ffclock_getestimate( \ 463 struct ffclock_estimate *cest); } 464244 AUE_NULL UNIMPL nosys 465245 AUE_NULL UNIMPL nosys 466246 AUE_NULL UNIMPL nosys 467247 AUE_NULL STD { int freebsd32_clock_getcpuclockid2(\ 468 uint32_t id1, uint32_t id2,\ 469 int which, clockid_t *clock_id); } 470248 AUE_NULL UNIMPL ntp_gettime 471249 AUE_NULL UNIMPL nosys 472; syscall numbers initially used in OpenBSD 473250 AUE_MINHERIT NOPROTO { int minherit(void *addr, size_t len, \ 474 int inherit); } 475251 AUE_RFORK NOPROTO { int rfork(int flags); } 476252 AUE_POLL NOPROTO { int openbsd_poll(struct pollfd *fds, \ 477 u_int nfds, int timeout); } 478253 AUE_ISSETUGID NOPROTO { int issetugid(void); } 479254 AUE_LCHOWN NOPROTO { int lchown(char *path, int uid, int gid); } 480255 AUE_NULL NOSTD { int freebsd32_aio_read( \ 481 struct aiocb32 *aiocbp); } 482256 AUE_NULL NOSTD { int freebsd32_aio_write( \ 483 struct aiocb32 *aiocbp); } 484257 AUE_NULL NOSTD { int freebsd32_lio_listio(int mode, \ 485 struct aiocb32 * const *acb_list, \ 486 int nent, struct sigevent32 *sig); } 487258 AUE_NULL UNIMPL nosys 488259 AUE_NULL UNIMPL nosys 489260 AUE_NULL UNIMPL nosys 490261 AUE_NULL UNIMPL nosys 491262 AUE_NULL UNIMPL nosys 492263 AUE_NULL UNIMPL nosys 493264 AUE_NULL UNIMPL nosys 494265 AUE_NULL UNIMPL nosys 495266 AUE_NULL UNIMPL nosys 496267 AUE_NULL UNIMPL nosys 497268 AUE_NULL UNIMPL nosys 498269 AUE_NULL UNIMPL nosys 499270 AUE_NULL UNIMPL nosys 500271 AUE_NULL UNIMPL nosys 501272 AUE_O_GETDENTS NOPROTO { int getdents(int fd, char *buf, \ 502 size_t count); } 503273 AUE_NULL UNIMPL nosys 504274 AUE_LCHMOD NOPROTO { int lchmod(char *path, mode_t mode); } 505275 AUE_LCHOWN NOPROTO { int lchown(char *path, uid_t uid, \ 506 gid_t gid); } netbsd_lchown \ 507 lchown_args int 508276 AUE_LUTIMES STD { int freebsd32_lutimes(char *path, \ 509 struct timeval32 *tptr); } 510277 AUE_MSYNC NOPROTO { int msync(void *addr, size_t len, \ 511 int flags); } netbsd_msync msync_args int 512278 AUE_STAT NOPROTO { int nstat(char *path, struct nstat *ub); } 513279 AUE_FSTAT NOPROTO { int nfstat(int fd, struct nstat *sb); } 514280 AUE_LSTAT NOPROTO { int nlstat(char *path, struct nstat *ub); } 515281 AUE_NULL UNIMPL nosys 516282 AUE_NULL UNIMPL nosys 517283 AUE_NULL UNIMPL nosys 518284 AUE_NULL UNIMPL nosys 519285 AUE_NULL UNIMPL nosys 520286 AUE_NULL UNIMPL nosys 521287 AUE_NULL UNIMPL nosys 522288 AUE_NULL UNIMPL nosys 523; 289 and 290 from NetBSD (OpenBSD: 267 and 268) 524289 AUE_PREADV STD { ssize_t freebsd32_preadv(int fd, \ 525 struct iovec32 *iovp, \ 526 u_int iovcnt, \ 527 uint32_t offset1, uint32_t offset2); } 528290 AUE_PWRITEV STD { ssize_t freebsd32_pwritev(int fd, \ 529 struct iovec32 *iovp, \ 530 u_int iovcnt, \ 531 uint32_t offset1, uint32_t offset2); } 532291 AUE_NULL UNIMPL nosys 533292 AUE_NULL UNIMPL nosys 534293 AUE_NULL UNIMPL nosys 535294 AUE_NULL UNIMPL nosys 536295 AUE_NULL UNIMPL nosys 537296 AUE_NULL UNIMPL nosys 538; XXX 297 is 300 in NetBSD 539297 AUE_FHSTATFS COMPAT4 { int freebsd32_fhstatfs( \ 540 const struct fhandle *u_fhp, \ 541 struct statfs32 *buf); } 542298 AUE_FHOPEN NOPROTO { int fhopen(const struct fhandle *u_fhp, \ 543 int flags); } 544299 AUE_FHSTAT NOPROTO { int fhstat(const struct fhandle *u_fhp, \ 545 struct stat *sb); } 546; syscall numbers for FreeBSD 547300 AUE_NULL NOPROTO { int modnext(int modid); } 548301 AUE_NULL STD { int freebsd32_modstat(int modid, \ 549 struct module_stat32* stat); } 550302 AUE_NULL NOPROTO { int modfnext(int modid); } 551303 AUE_NULL NOPROTO { int modfind(const char *name); } 552304 AUE_MODLOAD NOPROTO { int kldload(const char *file); } 553305 AUE_MODUNLOAD NOPROTO { int kldunload(int fileid); } 554306 AUE_NULL NOPROTO { int kldfind(const char *file); } 555307 AUE_NULL NOPROTO { int kldnext(int fileid); } 556308 AUE_NULL STD { int freebsd32_kldstat(int fileid, \ 557 struct kld32_file_stat* stat); } 558309 AUE_NULL NOPROTO { int kldfirstmod(int fileid); } 559310 AUE_GETSID NOPROTO { int getsid(pid_t pid); } 560311 AUE_SETRESUID NOPROTO { int setresuid(uid_t ruid, uid_t euid, \ 561 uid_t suid); } 562312 AUE_SETRESGID NOPROTO { int setresgid(gid_t rgid, gid_t egid, \ 563 gid_t sgid); } 564313 AUE_NULL OBSOL signanosleep 565314 AUE_NULL NOSTD { int freebsd32_aio_return( \ 566 struct aiocb32 *aiocbp); } 567315 AUE_NULL NOSTD { int freebsd32_aio_suspend( \ 568 struct aiocb32 * const * aiocbp, int nent, \ 569 const struct timespec32 *timeout); } 570316 AUE_NULL NOSTD { int freebsd32_aio_cancel(int fd, \ 571 struct aiocb32 *aiocbp); } 572317 AUE_NULL NOSTD { int freebsd32_aio_error( \ 573 struct aiocb32 *aiocbp); } 574318 AUE_NULL NOSTD { int freebsd32_oaio_read( \ 575 struct oaiocb32 *aiocbp); } 576319 AUE_NULL NOSTD { int freebsd32_oaio_write( \ 577 struct oaiocb32 *aiocbp); } 578320 AUE_NULL NOSTD { int freebsd32_olio_listio(int mode, \ 579 struct oaiocb32 * const *acb_list, \ 580 int nent, struct osigevent32 *sig); } 581321 AUE_NULL NOPROTO { int yield(void); } 582322 AUE_NULL OBSOL thr_sleep 583323 AUE_NULL OBSOL thr_wakeup 584324 AUE_MLOCKALL NOPROTO { int mlockall(int how); } 585325 AUE_MUNLOCKALL NOPROTO { int munlockall(void); } 586326 AUE_GETCWD NOPROTO { int __getcwd(char *buf, u_int buflen); } 587 588327 AUE_NULL NOPROTO { int sched_setparam (pid_t pid, \ 589 const struct sched_param *param); } 590328 AUE_NULL NOPROTO { int sched_getparam (pid_t pid, \ 591 struct sched_param *param); } 592 593329 AUE_NULL NOPROTO { int sched_setscheduler (pid_t pid, \ 594 int policy, \ 595 const struct sched_param *param); } 596330 AUE_NULL NOPROTO { int sched_getscheduler (pid_t pid); } 597 598331 AUE_NULL NOPROTO { int sched_yield (void); } 599332 AUE_NULL NOPROTO { int sched_get_priority_max (int policy); } 600333 AUE_NULL NOPROTO { int sched_get_priority_min (int policy); } 601334 AUE_NULL NOPROTO { int sched_rr_get_interval (pid_t pid, \ 602 struct timespec *interval); } 603335 AUE_NULL NOPROTO { int utrace(const void *addr, size_t len); } 604336 AUE_SENDFILE COMPAT4 { int freebsd32_sendfile(int fd, int s, \ 605 uint32_t offset1, uint32_t offset2, \ 606 size_t nbytes, struct sf_hdtr32 *hdtr, \ 607 off_t *sbytes, int flags); } 608337 AUE_NULL NOPROTO { int kldsym(int fileid, int cmd, \ 609 void *data); } 610338 AUE_JAIL STD { int freebsd32_jail(struct jail32 *jail); } 611339 AUE_NULL UNIMPL pioctl 612340 AUE_SIGPROCMASK NOPROTO { int sigprocmask(int how, \ 613 const sigset_t *set, sigset_t *oset); } 614341 AUE_SIGSUSPEND NOPROTO { int sigsuspend(const sigset_t *sigmask); } 615342 AUE_SIGACTION COMPAT4 { int freebsd32_sigaction(int sig, \ 616 struct sigaction32 *act, \ 617 struct sigaction32 *oact); } 618343 AUE_SIGPENDING NOPROTO { int sigpending(sigset_t *set); } 619344 AUE_SIGRETURN COMPAT4 { int freebsd32_sigreturn( \ 620 const struct freebsd4_freebsd32_ucontext *sigcntxp); } 621345 AUE_SIGWAIT STD { int freebsd32_sigtimedwait(const sigset_t *set, \ 622 siginfo_t *info, \ 623 const struct timespec *timeout); } 624346 AUE_NULL STD { int freebsd32_sigwaitinfo(const sigset_t *set, \ 625 siginfo_t *info); } 626347 AUE_NULL NOPROTO { int __acl_get_file(const char *path, \ 627 acl_type_t type, struct acl *aclp); } 628348 AUE_NULL NOPROTO { int __acl_set_file(const char *path, \ 629 acl_type_t type, struct acl *aclp); } 630349 AUE_NULL NOPROTO { int __acl_get_fd(int filedes, \ 631 acl_type_t type, struct acl *aclp); } 632350 AUE_NULL NOPROTO { int __acl_set_fd(int filedes, \ 633 acl_type_t type, struct acl *aclp); } 634351 AUE_NULL NOPROTO { int __acl_delete_file(const char *path, \ 635 acl_type_t type); } 636352 AUE_NULL NOPROTO { int __acl_delete_fd(int filedes, \ 637 acl_type_t type); } 638353 AUE_NULL NOPROTO { int __acl_aclcheck_file(const char *path, \ 639 acl_type_t type, struct acl *aclp); } 640354 AUE_NULL NOPROTO { int __acl_aclcheck_fd(int filedes, \ 641 acl_type_t type, struct acl *aclp); } 642355 AUE_EXTATTRCTL NOPROTO { int extattrctl(const char *path, int cmd, \ 643 const char *filename, int attrnamespace, \ 644 const char *attrname); } 645356 AUE_EXTATTR_SET_FILE NOPROTO { ssize_t extattr_set_file( \ 646 const char *path, int attrnamespace, \ 647 const char *attrname, void *data, \ 648 size_t nbytes); } 649357 AUE_EXTATTR_GET_FILE NOPROTO { ssize_t extattr_get_file( \ 650 const char *path, int attrnamespace, \ 651 const char *attrname, void *data, \ 652 size_t nbytes); } 653358 AUE_EXTATTR_DELETE_FILE NOPROTO { int extattr_delete_file( \ 654 const char *path, int attrnamespace, \ 655 const char *attrname); } 656359 AUE_NULL NOSTD { int freebsd32_aio_waitcomplete( \ 657 struct aiocb32 **aiocbp, \ 658 struct timespec32 *timeout); } 659360 AUE_GETRESUID NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \ 660 uid_t *suid); } 661361 AUE_GETRESGID NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \ 662 gid_t *sgid); } 663362 AUE_KQUEUE NOPROTO { int kqueue(void); } 664363 AUE_NULL STD { int freebsd32_kevent(int fd, \ 665 const struct kevent32 *changelist, \ 666 int nchanges, \ 667 struct kevent32 *eventlist, int nevents, \ 668 const struct timespec32 *timeout); } 669364 AUE_NULL UNIMPL __cap_get_proc 670365 AUE_NULL UNIMPL __cap_set_proc 671366 AUE_NULL UNIMPL __cap_get_fd 672367 AUE_NULL UNIMPL __cap_get_file 673368 AUE_NULL UNIMPL __cap_set_fd 674369 AUE_NULL UNIMPL __cap_set_file 675370 AUE_NULL UNIMPL nosys 676371 AUE_EXTATTR_SET_FD NOPROTO { ssize_t extattr_set_fd(int fd, \ 677 int attrnamespace, const char *attrname, \ 678 void *data, size_t nbytes); } 679372 AUE_EXTATTR_GET_FD NOPROTO { ssize_t extattr_get_fd(int fd, \ 680 int attrnamespace, const char *attrname, \ 681 void *data, size_t nbytes); } 682373 AUE_EXTATTR_DELETE_FD NOPROTO { int extattr_delete_fd(int fd, \ 683 int attrnamespace, \ 684 const char *attrname); } 685374 AUE_NULL NOPROTO { int __setugid(int flag); } 686375 AUE_NULL UNIMPL nfsclnt 687376 AUE_EACCESS NOPROTO { int eaccess(char *path, int amode); } 688377 AUE_NULL UNIMPL afs_syscall 689378 AUE_NMOUNT STD { int freebsd32_nmount(struct iovec32 *iovp, \ 690 unsigned int iovcnt, int flags); } 691379 AUE_NULL UNIMPL kse_exit 692380 AUE_NULL UNIMPL kse_wakeup 693381 AUE_NULL UNIMPL kse_create 694382 AUE_NULL UNIMPL kse_thr_interrupt 695383 AUE_NULL UNIMPL kse_release 696384 AUE_NULL UNIMPL __mac_get_proc 697385 AUE_NULL UNIMPL __mac_set_proc 698386 AUE_NULL UNIMPL __mac_get_fd 699387 AUE_NULL UNIMPL __mac_get_file 700388 AUE_NULL UNIMPL __mac_set_fd 701389 AUE_NULL UNIMPL __mac_set_file 702390 AUE_NULL NOPROTO { int kenv(int what, const char *name, \ 703 char *value, int len); } 704391 AUE_LCHFLAGS NOPROTO { int lchflags(const char *path, \ 705 u_long flags); } 706392 AUE_NULL NOPROTO { int uuidgen(struct uuid *store, \ 707 int count); } 708393 AUE_SENDFILE STD { int freebsd32_sendfile(int fd, int s, \ 709 uint32_t offset1, uint32_t offset2, \ 710 size_t nbytes, struct sf_hdtr32 *hdtr, \ 711 off_t *sbytes, int flags); } 712394 AUE_NULL UNIMPL mac_syscall 713395 AUE_GETFSSTAT NOPROTO { int getfsstat(struct statfs *buf, \ 714 long bufsize, int flags); } 715396 AUE_STATFS NOPROTO { int statfs(char *path, \ 716 struct statfs *buf); } 717397 AUE_FSTATFS NOPROTO { int fstatfs(int fd, struct statfs *buf); } 718398 AUE_FHSTATFS NOPROTO { int fhstatfs(const struct fhandle *u_fhp, \ 719 struct statfs *buf); } 720399 AUE_NULL UNIMPL nosys 721400 AUE_NULL NOSTD|NOPROTO { int ksem_close(semid_t id); } 722401 AUE_NULL NOSTD|NOPROTO { int ksem_post(semid_t id); } 723402 AUE_NULL NOSTD|NOPROTO { int ksem_wait(semid_t id); } 724403 AUE_NULL NOSTD|NOPROTO { int ksem_trywait(semid_t id); } 725404 AUE_NULL NOSTD { int freebsd32_ksem_init(semid_t *idp, \ 726 unsigned int value); } 727405 AUE_NULL NOSTD { int freebsd32_ksem_open(semid_t *idp, \ 728 const char *name, int oflag, \ 729 mode_t mode, unsigned int value); } 730406 AUE_NULL NOSTD|NOPROTO { int ksem_unlink(const char *name); } 731407 AUE_NULL NOSTD|NOPROTO { int ksem_getvalue(semid_t id, \ 732 int *val); } 733408 AUE_NULL NOSTD|NOPROTO { int ksem_destroy(semid_t id); } 734409 AUE_NULL UNIMPL __mac_get_pid 735410 AUE_NULL UNIMPL __mac_get_link 736411 AUE_NULL UNIMPL __mac_set_link 737412 AUE_EXTATTR_SET_LINK NOPROTO { ssize_t extattr_set_link( \ 738 const char *path, int attrnamespace, \ 739 const char *attrname, void *data, \ 740 size_t nbytes); } 741413 AUE_EXTATTR_GET_LINK NOPROTO { ssize_t extattr_get_link( \ 742 const char *path, int attrnamespace, \ 743 const char *attrname, void *data, \ 744 size_t nbytes); } 745414 AUE_EXTATTR_DELETE_LINK NOPROTO { int extattr_delete_link( \ 746 const char *path, int attrnamespace, \ 747 const char *attrname); } 748415 AUE_NULL UNIMPL __mac_execve 749416 AUE_SIGACTION STD { int freebsd32_sigaction(int sig, \ 750 struct sigaction32 *act, \ 751 struct sigaction32 *oact); } 752417 AUE_SIGRETURN STD { int freebsd32_sigreturn( \ 753 const struct freebsd32_ucontext *sigcntxp); } 754418 AUE_NULL UNIMPL __xstat 755419 AUE_NULL UNIMPL __xfstat 756420 AUE_NULL UNIMPL __xlstat 757421 AUE_NULL STD { int freebsd32_getcontext( \ 758 struct freebsd32_ucontext *ucp); } 759422 AUE_NULL STD { int freebsd32_setcontext( \ 760 const struct freebsd32_ucontext *ucp); } 761423 AUE_NULL STD { int freebsd32_swapcontext( \ 762 struct freebsd32_ucontext *oucp, \ 763 const struct freebsd32_ucontext *ucp); } 764424 AUE_SWAPOFF UNIMPL swapoff 765425 AUE_NULL NOPROTO { int __acl_get_link(const char *path, \ 766 acl_type_t type, struct acl *aclp); } 767426 AUE_NULL NOPROTO { int __acl_set_link(const char *path, \ 768 acl_type_t type, struct acl *aclp); } 769427 AUE_NULL NOPROTO { int __acl_delete_link(const char *path, \ 770 acl_type_t type); } 771428 AUE_NULL NOPROTO { int __acl_aclcheck_link(const char *path, \ 772 acl_type_t type, struct acl *aclp); } 773429 AUE_SIGWAIT NOPROTO { int sigwait(const sigset_t *set, \ 774 int *sig); } 775430 AUE_NULL UNIMPL thr_create; 776431 AUE_NULL NOPROTO { void thr_exit(long *state); } 777432 AUE_NULL NOPROTO { int thr_self(long *id); } 778433 AUE_NULL NOPROTO { int thr_kill(long id, int sig); } 779434 AUE_NULL UNIMPL nosys 780435 AUE_NULL UNIMPL nosys 781436 AUE_NULL NOPROTO { int jail_attach(int jid); } 782437 AUE_EXTATTR_LIST_FD NOPROTO { ssize_t extattr_list_fd(int fd, \ 783 int attrnamespace, void *data, \ 784 size_t nbytes); } 785438 AUE_EXTATTR_LIST_FILE NOPROTO { ssize_t extattr_list_file( \ 786 const char *path, int attrnamespace, \ 787 void *data, size_t nbytes); } 788439 AUE_EXTATTR_LIST_LINK NOPROTO { ssize_t extattr_list_link( \ 789 const char *path, int attrnamespace, \ 790 void *data, size_t nbytes); } 791440 AUE_NULL UNIMPL kse_switchin 792441 AUE_NULL NOSTD { int freebsd32_ksem_timedwait(semid_t id, \ 793 const struct timespec32 *abstime); } 794442 AUE_NULL STD { int freebsd32_thr_suspend( \ 795 const struct timespec32 *timeout); } 796443 AUE_NULL NOPROTO { int thr_wake(long id); } 797444 AUE_MODUNLOAD NOPROTO { int kldunloadf(int fileid, int flags); } 798445 AUE_AUDIT NOPROTO { int audit(const void *record, \ 799 u_int length); } 800446 AUE_AUDITON NOPROTO { int auditon(int cmd, void *data, \ 801 u_int length); } 802447 AUE_GETAUID NOPROTO { int getauid(uid_t *auid); } 803448 AUE_SETAUID NOPROTO { int setauid(uid_t *auid); } 804449 AUE_GETAUDIT NOPROTO { int getaudit(struct auditinfo *auditinfo); } 805450 AUE_SETAUDIT NOPROTO { int setaudit(struct auditinfo *auditinfo); } 806451 AUE_GETAUDIT_ADDR NOPROTO { int getaudit_addr( \ 807 struct auditinfo_addr *auditinfo_addr, \ 808 u_int length); } 809452 AUE_SETAUDIT_ADDR NOPROTO { int setaudit_addr( \ 810 struct auditinfo_addr *auditinfo_addr, \ 811 u_int length); } 812453 AUE_AUDITCTL NOPROTO { int auditctl(char *path); } 813454 AUE_NULL STD { int freebsd32_umtx_op(void *obj, int op,\ 814 u_long val, void *uaddr, \ 815 void *uaddr2); } 816455 AUE_NULL STD { int freebsd32_thr_new( \ 817 struct thr_param32 *param, \ 818 int param_size); } 819456 AUE_NULL NOPROTO { int sigqueue(pid_t pid, int signum, \ 820 void *value); } 821457 AUE_NULL NOSTD { int freebsd32_kmq_open( \ 822 const char *path, int flags, mode_t mode, \ 823 const struct mq_attr32 *attr); } 824458 AUE_NULL NOSTD { int freebsd32_kmq_setattr(int mqd, \ 825 const struct mq_attr32 *attr, \ 826 struct mq_attr32 *oattr); } 827459 AUE_NULL NOSTD { int freebsd32_kmq_timedreceive(int mqd, \ 828 char *msg_ptr, size_t msg_len, \ 829 unsigned *msg_prio, \ 830 const struct timespec32 *abs_timeout); } 831460 AUE_NULL NOSTD { int freebsd32_kmq_timedsend(int mqd, \ 832 const char *msg_ptr, size_t msg_len,\ 833 unsigned msg_prio, \ 834 const struct timespec32 *abs_timeout);} 835461 AUE_NULL NOSTD { int freebsd32_kmq_notify(int mqd, \ 836 const struct sigevent32 *sigev); } 837462 AUE_NULL NOPROTO|NOSTD { int kmq_unlink(const char *path); } 838463 AUE_NULL NOPROTO { int abort2(const char *why, int nargs, void **args); } 839464 AUE_NULL NOPROTO { int thr_set_name(long id, const char *name); } 840465 AUE_NULL NOSTD { int freebsd32_aio_fsync(int op, \ 841 struct aiocb32 *aiocbp); } 842466 AUE_RTPRIO NOPROTO { int rtprio_thread(int function, \ 843 lwpid_t lwpid, struct rtprio *rtp); } 844467 AUE_NULL UNIMPL nosys 845468 AUE_NULL UNIMPL nosys 846469 AUE_NULL UNIMPL __getpath_fromfd 847470 AUE_NULL UNIMPL __getpath_fromaddr 848471 AUE_NULL NOPROTO|NOSTD { int sctp_peeloff(int sd, uint32_t name); } 849472 AUE_NULL NOPROTO|NOSTD { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, \ 850 caddr_t to, __socklen_t tolen, \ 851 struct sctp_sndrcvinfo *sinfo, int flags); } 852473 AUE_NULL NOPROTO|NOSTD { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, \ 853 caddr_t to, __socklen_t tolen, \ 854 struct sctp_sndrcvinfo *sinfo, int flags); } 855474 AUE_NULL NOPROTO|NOSTD { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, \ 856 struct sockaddr * from, __socklen_t *fromlenaddr, \ 857 struct sctp_sndrcvinfo *sinfo, int *msg_flags); } 858#ifdef PAD64_REQUIRED 859475 AUE_PREAD STD { ssize_t freebsd32_pread(int fd, \ 860 void *buf,size_t nbyte, \ 861 int pad, \ 862 uint32_t offset1, uint32_t offset2); } 863476 AUE_PWRITE STD { ssize_t freebsd32_pwrite(int fd, \ 864 const void *buf, size_t nbyte, \ 865 int pad, \ 866 uint32_t offset1, uint32_t offset2); } 867477 AUE_MMAP STD { caddr_t freebsd32_mmap(caddr_t addr, \ 868 size_t len, int prot, int flags, int fd, \ 869 int pad, \ 870 uint32_t pos1, uint32_t pos2); } 871478 AUE_LSEEK STD { off_t freebsd32_lseek(int fd, \ 872 int pad, \ 873 uint32_t offset1, uint32_t offset2, \ 874 int whence); } 875479 AUE_TRUNCATE STD { int freebsd32_truncate(char *path, \ 876 int pad, \ 877 uint32_t length1, uint32_t length2); } 878480 AUE_FTRUNCATE STD { int freebsd32_ftruncate(int fd, \ 879 int pad, \ 880 uint32_t length1, uint32_t length2); } 881#else 882475 AUE_PREAD STD { ssize_t freebsd32_pread(int fd, \ 883 void *buf,size_t nbyte, \ 884 uint32_t offset1, uint32_t offset2); } 885476 AUE_PWRITE STD { ssize_t freebsd32_pwrite(int fd, \ 886 const void *buf, size_t nbyte, \ 887 uint32_t offset1, uint32_t offset2); } 888477 AUE_MMAP STD { caddr_t freebsd32_mmap(caddr_t addr, \ 889 size_t len, int prot, int flags, int fd, \ 890 uint32_t pos1, uint32_t pos2); } 891478 AUE_LSEEK STD { off_t freebsd32_lseek(int fd, \ 892 uint32_t offset1, uint32_t offset2, \ 893 int whence); } 894479 AUE_TRUNCATE STD { int freebsd32_truncate(char *path, \ 895 uint32_t length1, uint32_t length2); } 896480 AUE_FTRUNCATE STD { int freebsd32_ftruncate(int fd, \ 897 uint32_t length1, uint32_t length2); } 898#endif 899481 AUE_KILL NOPROTO { int thr_kill2(pid_t pid, long id, int sig); } 900482 AUE_SHMOPEN NOPROTO { int shm_open(const char *path, int flags, \ 901 mode_t mode); } 902483 AUE_SHMUNLINK NOPROTO { int shm_unlink(const char *path); } 903484 AUE_NULL NOPROTO { int cpuset(cpusetid_t *setid); } 904#ifdef PAD64_REQUIRED 905485 AUE_NULL STD { int freebsd32_cpuset_setid(cpuwhich_t which, \ 906 int pad, \ 907 uint32_t id1, uint32_t id2, \ 908 cpusetid_t setid); } 909#else 910485 AUE_NULL STD { int freebsd32_cpuset_setid(cpuwhich_t which, \ 911 uint32_t id1, uint32_t id2, \ 912 cpusetid_t setid); } 913#endif 914486 AUE_NULL STD { int freebsd32_cpuset_getid(cpulevel_t level, \ 915 cpuwhich_t which, \ 916 uint32_t id1, uint32_t id2, \ 917 cpusetid_t *setid); } 918487 AUE_NULL STD { int freebsd32_cpuset_getaffinity( \ 919 cpulevel_t level, cpuwhich_t which, \ 920 uint32_t id1, uint32_t id2, \ 921 size_t cpusetsize, \ 922 cpuset_t *mask); } 923488 AUE_NULL STD { int freebsd32_cpuset_setaffinity( \ 924 cpulevel_t level, cpuwhich_t which, \ 925 uint32_t id1, uint32_t id2, \ 926 size_t cpusetsize, \ 927 const cpuset_t *mask); } 928489 AUE_FACCESSAT NOPROTO { int faccessat(int fd, char *path, int amode, \ 929 int flag); } 930490 AUE_FCHMODAT NOPROTO { int fchmodat(int fd, const char *path, \ 931 mode_t mode, int flag); } 932491 AUE_FCHOWNAT NOPROTO { int fchownat(int fd, char *path, uid_t uid, \ 933 gid_t gid, int flag); } 934492 AUE_FEXECVE STD { int freebsd32_fexecve(int fd, \ 935 uint32_t *argv, uint32_t *envv); } 936493 AUE_FSTATAT STD { int freebsd32_fstatat(int fd, char *path, \ 937 struct stat *buf, int flag); } 938494 AUE_FUTIMESAT STD { int freebsd32_futimesat(int fd, char *path, \ 939 struct timeval *times); } 940495 AUE_LINKAT NOPROTO { int linkat(int fd1, char *path1, int fd2, \ 941 char *path2, int flag); } 942496 AUE_MKDIRAT NOPROTO { int mkdirat(int fd, char *path, \ 943 mode_t mode); } 944497 AUE_MKFIFOAT NOPROTO { int mkfifoat(int fd, char *path, \ 945 mode_t mode); } 946498 AUE_MKNODAT NOPROTO { int mknodat(int fd, char *path, \ 947 mode_t mode, dev_t dev); } 948499 AUE_OPENAT_RWTC NOPROTO { int openat(int fd, char *path, int flag, \ 949 mode_t mode); } 950500 AUE_READLINKAT NOPROTO { int readlinkat(int fd, char *path, char *buf, \ 951 size_t bufsize); } 952501 AUE_RENAMEAT NOPROTO { int renameat(int oldfd, char *old, int newfd, \ 953 const char *new); } 954502 AUE_SYMLINKAT NOPROTO { int symlinkat(char *path1, int fd, \ 955 char *path2); } 956503 AUE_UNLINKAT NOPROTO { int unlinkat(int fd, char *path, \ 957 int flag); } 958504 AUE_POSIX_OPENPT NOPROTO { int posix_openpt(int flags); } 959; 505 is initialised by the kgssapi code, if present. 960505 AUE_NULL UNIMPL gssd_syscall 961506 AUE_NULL STD { int freebsd32_jail_get(struct iovec32 *iovp, \ 962 unsigned int iovcnt, int flags); } 963507 AUE_NULL STD { int freebsd32_jail_set(struct iovec32 *iovp, \ 964 unsigned int iovcnt, int flags); } 965508 AUE_NULL NOPROTO { int jail_remove(int jid); } 966509 AUE_CLOSEFROM NOPROTO { int closefrom(int lowfd); } 967510 AUE_SEMCTL NOSTD { int freebsd32_semctl(int semid, int semnum, \ 968 int cmd, union semun32 *arg); } 969511 AUE_MSGCTL NOSTD { int freebsd32_msgctl(int msqid, int cmd, \ 970 struct msqid_ds32 *buf); } 971512 AUE_SHMCTL NOSTD { int freebsd32_shmctl(int shmid, int cmd, \ 972 struct shmid_ds32 *buf); } 973513 AUE_LPATHCONF NOPROTO { int lpathconf(char *path, int name); } 974514 AUE_NULL OBSOL cap_new 975515 AUE_CAP_RIGHTS_GET NOPROTO { int __cap_rights_get(int version, \ 976 int fd, cap_rights_t *rightsp); } 977516 AUE_CAP_ENTER STD { int freebsd32_cap_enter(void); } 978517 AUE_CAP_GETMODE NOPROTO { int cap_getmode(u_int *modep); } 979518 AUE_PDFORK NOPROTO { int pdfork(int *fdp, int flags); } 980519 AUE_PDKILL NOPROTO { int pdkill(int fd, int signum); } 981520 AUE_PDGETPID NOPROTO { int pdgetpid(int fd, pid_t *pidp); } 982521 AUE_PDWAIT UNIMPL pdwait4 983522 AUE_SELECT STD { int freebsd32_pselect(int nd, fd_set *in, \ 984 fd_set *ou, fd_set *ex, \ 985 const struct timespec32 *ts, \ 986 const sigset_t *sm); } 987523 AUE_NULL NOPROTO { int getloginclass(char *namebuf, \ 988 size_t namelen); } 989524 AUE_NULL NOPROTO { int setloginclass(const char *namebuf); } 990525 AUE_NULL NOPROTO { int rctl_get_racct(const void *inbufp, \ 991 size_t inbuflen, void *outbufp, \ 992 size_t outbuflen); } 993526 AUE_NULL NOPROTO { int rctl_get_rules(const void *inbufp, \ 994 size_t inbuflen, void *outbufp, \ 995 size_t outbuflen); } 996527 AUE_NULL NOPROTO { int rctl_get_limits(const void *inbufp, \ 997 size_t inbuflen, void *outbufp, \ 998 size_t outbuflen); } 999528 AUE_NULL NOPROTO { int rctl_add_rule(const void *inbufp, \ 1000 size_t inbuflen, void *outbufp, \ 1001 size_t outbuflen); } 1002529 AUE_NULL NOPROTO { int rctl_remove_rule(const void *inbufp, \ 1003 size_t inbuflen, void *outbufp, \ 1004 size_t outbuflen); } 1005#ifdef PAD64_REQUIRED 1006530 AUE_NULL STD { int freebsd32_posix_fallocate(int fd, \ 1007 int pad, \ 1008 uint32_t offset1, uint32_t offset2,\ 1009 uint32_t len1, uint32_t len2); } 1010531 AUE_NULL STD { int freebsd32_posix_fadvise(int fd, \ 1011 int pad, \ 1012 uint32_t offset1, uint32_t offset2,\ 1013 uint32_t len1, uint32_t len2, \ 1014 int advice); } 1015532 AUE_WAIT6 STD { int freebsd32_wait6(int idtype, int pad, \ 1016 uint32_t id1, uint32_t id2, \ 1017 int *status, int options, \ 1018 struct wrusage32 *wrusage, \ 1019 siginfo_t *info); } 1020#else 1021530 AUE_NULL STD { int freebsd32_posix_fallocate(int fd,\ 1022 uint32_t offset1, uint32_t offset2,\ 1023 uint32_t len1, uint32_t len2); } 1024531 AUE_NULL STD { int freebsd32_posix_fadvise(int fd, \ 1025 uint32_t offset1, uint32_t offset2,\ 1026 uint32_t len1, uint32_t len2, \ 1027 int advice); } 1028532 AUE_WAIT6 STD { int freebsd32_wait6(int idtype, \ 1029 uint32_t id1, uint32_t id2, \ 1030 int *status, int options, \ 1031 struct wrusage32 *wrusage, \ 1032 siginfo_t *info); } 1033#endif 1034533 AUE_CAP_RIGHTS_LIMIT NOPROTO { \ 1035 int cap_rights_limit(int fd, \ 1036 cap_rights_t *rightsp); } 1037534 AUE_CAP_IOCTLS_LIMIT STD { \ 1038 int freebsd32_cap_ioctls_limit(int fd, \ 1039 const uint32_t *cmds, size_t ncmds); } 1040535 AUE_CAP_IOCTLS_GET STD { \ 1041 ssize_t freebsd32_cap_ioctls_get(int fd, \ 1042 uint32_t *cmds, size_t maxcmds); } 1043536 AUE_CAP_FCNTLS_LIMIT NOPROTO { int cap_fcntls_limit(int fd, \ 1044 uint32_t fcntlrights); } 1045537 AUE_CAP_FCNTLS_GET NOPROTO { int cap_fcntls_get(int fd, \ 1046 uint32_t *fcntlrightsp); } 1047538 AUE_BINDAT NOPROTO { int bindat(int fd, int s, caddr_t name, \ 1048 int namelen); } 1049539 AUE_CONNECTAT NOPROTO { int connectat(int fd, int s, caddr_t name, \ 1050 int namelen); } 1051540 AUE_CHFLAGSAT NOPROTO { int chflagsat(int fd, const char *path, \ 1052 u_long flags, int atflag); } 1053541 AUE_ACCEPT NOPROTO { int accept4(int s, \ 1054 struct sockaddr * __restrict name, \ 1055 __socklen_t * __restrict anamelen, \ 1056 int flags); } 1057542 AUE_PIPE NOPROTO { int pipe2(int *fildes, int flags); } 1058543 AUE_NULL NOSTD { int freebsd32_aio_mlock( \ 1059 struct aiocb32 *aiocbp); } 1060#ifdef PAD64_REQUIRED 1061544 AUE_NULL STD { int freebsd32_procctl(int idtype, int pad, \ 1062 uint32_t id1, uint32_t id2, int com, \ 1063 void *data); } 1064#else 1065544 AUE_NULL STD { int freebsd32_procctl(int idtype, \ 1066 uint32_t id1, uint32_t id2, int com, \ 1067 void *data); } 1068#endif 1069545 AUE_POLL STD { int freebsd32_ppoll(struct pollfd *fds, \ 1070 u_int nfds, const struct timespec32 *ts, \ 1071 const sigset_t *set); } 1072546 AUE_FUTIMES STD { int freebsd32_futimens(int fd, \ 1073 struct timespec *times); } 1074547 AUE_FUTIMESAT STD { int freebsd32_utimensat(int fd, \ 1075 char *path, \ 1076 struct timespec *times, int flag); } 1077