syscalls.master revision 122301
1 $FreeBSD: head/sys/compat/freebsd32/syscalls.master 122301 2003-11-08 07:31:30Z peter $ 2; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 3; from: src/sys/kern/syscalls.master 1.107 4; 5; System call name/number master file. 6; Processed to created init_sysent.c, syscalls.c and syscall.h. 7 8; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments 9; number system call number, must be in order 10; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA, 11; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL, 12; [M]NOSTD 13; namespc one of POSIX, BSD, NOHIDE 14; name psuedo-prototype of syscall routine 15; If one of the following alts is different, then all appear: 16; altname name of system call if different 17; alttag name of args struct tag if different from [o]`name'"_args" 18; altrtyp return type if not int (bogus - syscalls always return int) 19; for UNIMPL/OBSOL, name continues with comments 20 21; types: 22; [M] e.g. like MSTD -- means the system call is MP-safe. If no 23; M prefix is used, the syscall wrapper will obtain the Giant 24; lock for the syscall. 25; STD always included 26; COMPAT included on COMPAT #ifdef 27; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h 28; OBSOL obsolete, not included in system, only specifies name 29; UNIMPL not implemented, placeholder only 30; NOSTD implemented but as a lkm that can be statically 31; compiled in sysent entry will be filled with lkmsys 32; so the SYSCALL_MODULE macro works 33 34; #ifdef's, etc. may be included, and are copied to the output files. 35 36#include <sys/param.h> 37#include <sys/sysent.h> 38#include <sys/sysproto.h> 39#include <sys/mount.h> 40#include <compat/freebsd32/freebsd32.h> 41#include <compat/freebsd32/freebsd32_proto.h> 42 43; Reserved/unimplemented system calls in the range 0-150 inclusive 44; are reserved for use in future Berkeley releases. 45; Additional system calls implemented in vendor and other 46; redistributions should be placed in the reserved range at the end 47; of the current calls. 48 490 MNOPROTO NOHIDE { int nosys(void); } syscall nosys_args int 501 MNOPROTO NOHIDE { void sys_exit(int rval); } exit sys_exit_args void 512 MNOPROTO POSIX { int fork(void); } 523 MNOPROTO POSIX { ssize_t read(int fd, void *buf, size_t nbyte); } 534 MNOPROTO POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); } 545 STD POSIX { int freebsd32_open(char *path, int flags, int mode); } 55; XXX should be { int open(const char *path, int flags, ...); } 56; but we're not ready for `const' or varargs. 57; XXX man page says `mode_t mode'. 586 MNOPROTO POSIX { int close(int fd); } 597 MSTD BSD { int freebsd32_wait4(int pid, int *status, int options, \ 60 struct rusage32 *rusage); } 618 OBSOL BSD old creat 629 NOPROTO POSIX { int link(char *path, char *link); } 6310 NOPROTO POSIX { int unlink(char *path); } 6411 OBSOL NOHIDE execv 6512 NOPROTO POSIX { int chdir(char *path); } 6613 NOPROTO BSD { int fchdir(int fd); } 6714 NOPROTO POSIX { int mknod(char *path, int mode, int dev); } 6815 NOPROTO POSIX { int chmod(char *path, int mode); } 6916 NOPROTO POSIX { int chown(char *path, int uid, int gid); } 7017 MNOPROTO BSD { int obreak(char *nsize); } break obreak_args int 7118 STD BSD { int freebsd32_getfsstat(struct statfs32 *buf, \ 72 long bufsize, int flags); } 7319 OBSOL POSIX olseek 7420 MNOPROTO POSIX { pid_t getpid(void); } 7521 NOPROTO BSD { int mount(char *type, char *path, int flags, \ 76 caddr_t data); } 77; XXX `path' should have type `const char *' but we're not ready for that. 7822 NOPROTO BSD { int unmount(char *path, int flags); } 7923 MNOPROTO POSIX { int setuid(uid_t uid); } 8024 MNOPROTO POSIX { uid_t getuid(void); } 8125 MNOPROTO POSIX { uid_t geteuid(void); } 8226 MNOPROTO BSD { int ptrace(int req, pid_t pid, caddr_t addr, \ 83 int data); } 84; XXX implement 8527 UNIMPL BSD recvmsg 8628 MNOPROTO BSD { int sendmsg(int s, caddr_t msg, int flags); } 8729 MNOPROTO BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 88 int flags, caddr_t from, int *fromlenaddr); } 8930 MNOPROTO BSD { int accept(int s, caddr_t name, int *anamelen); } 9031 MNOPROTO BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 9132 MNOPROTO BSD { int getsockname(int fdes, caddr_t asa, int *alen); } 9233 STD POSIX { int freebsd32_access(char *path, int flags); } 9334 STD BSD { int freebsd32_chflags(char *path, int flags); } 9435 NOPROTO BSD { int fchflags(int fd, int flags); } 9536 NOPROTO BSD { int sync(void); } 9637 MNOPROTO POSIX { int kill(int pid, int signum); } 9738 UNIMPL POSIX ostat 9839 MNOPROTO POSIX { pid_t getppid(void); } 9940 UNIMPL POSIX olstat 10041 MNOPROTO POSIX { int dup(u_int fd); } 10142 MNOPROTO POSIX { int pipe(void); } 10243 MNOPROTO POSIX { gid_t getegid(void); } 10344 MNOPROTO BSD { int profil(caddr_t samples, size_t size, \ 104 size_t offset, u_int scale); } 10545 MNOPROTO BSD { int ktrace(const char *fname, int ops, int facs, \ 106 int pid); } 10746 UNIMPL POSIX osigaction 10847 MNOPROTO POSIX { gid_t getgid(void); } 10948 UNIMPL POSIX osigprocmask 11049 MNOPROTO BSD { int getlogin(char *namebuf, u_int namelen); } 11150 MNOPROTO BSD { int setlogin(char *namebuf); } 11251 MNOPROTO BSD { int acct(char *path); } 11352 MNOPROTO POSIX { int sigpending(void); } 11453 MSTD BSD { int freebsd32_sigaltstack(struct sigaltstack32 *ss, \ 115 struct sigaltstack32 *oss); } 11654 MNOPROTO POSIX { int ioctl(int fd, u_long com, caddr_t data); } 11755 MNOPROTO BSD { int reboot(int opt); } 11856 NOPROTO POSIX { int revoke(char *path); } 11957 NOPROTO POSIX { int symlink(char *path, char *link); } 12058 NOPROTO POSIX { int readlink(char *path, char *buf, int count); } 12159 STD POSIX { int freebsd32_execve(char *fname, u_int32_t *argv, \ 122 u_int32_t *envv); } 12360 MNOPROTO POSIX { int umask(int newmask); } umask umask_args int 12461 NOPROTO BSD { int chroot(char *path); } 12562 OBSOL POSIX ofstat 12663 OBSOL BSD ogetkerninfo 12764 OBSOL BSD ogetpagesize 128; XXX implement (not OBSOL at all) 12965 OBSOL BSD omsync 13066 MNOPROTO BSD { int vfork(void); } 13167 OBSOL NOHIDE vread 13268 OBSOL NOHIDE vwrite 13369 MNOPROTO BSD { int sbrk(int incr); } 13470 MNOPROTO BSD { int sstk(int incr); } 13571 OBSOL BSD ommap 13672 MNOPROTO BSD { int ovadvise(int anom); } vadvise ovadvise_args int 13773 MNOPROTO BSD { int munmap(void *addr, size_t len); } 13874 MNOPROTO BSD { int mprotect(const void *addr, size_t len, \ 139 int prot); } 14075 MNOPROTO BSD { int madvise(void *addr, size_t len, int behav); } 14176 OBSOL NOHIDE vhangup 14277 OBSOL NOHIDE vlimit 14378 MNOPROTO BSD { int mincore(const void *addr, size_t len, \ 144 char *vec); } 14579 MNOPROTO POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); } 14680 MNOPROTO POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); } 14781 MNOPROTO POSIX { int getpgrp(void); } 14882 MNOPROTO POSIX { int setpgid(int pid, int pgid); } 14983 STD BSD { int freebsd32_setitimer(u_int which, \ 150 struct itimerval32 *itv, \ 151 struct itimerval32 *oitv); } 15284 OBSOL BSD owait 153; XXX implement 15485 OBSOL BSD oswapon 155; XXX implement 15686 OBSOL BSD ogetitimer 15787 OBSOL BSD ogethostname 15888 OBSOL BSD osethostname 15989 MNOPROTO BSD { int getdtablesize(void); } 16090 MNOPROTO POSIX { int dup2(u_int from, u_int to); } 16191 UNIMPL BSD getdopt 16292 MNOPROTO POSIX { int fcntl(int fd, int cmd, long arg); } 163; XXX should be { int fcntl(int fd, int cmd, ...); } 164; but we're not ready for varargs. 165; XXX man page says `int arg' too. 16693 STD BSD { int freebsd32_select(int nd, fd_set *in, fd_set *ou, \ 167 fd_set *ex, struct timeval32 *tv); } 168; XXX need to override for big-endian - little-endian should work fine. 16994 UNIMPL BSD setdopt 17095 NOPROTO POSIX { int fsync(int fd); } 17196 MNOPROTO BSD { int setpriority(int which, int who, int prio); } 17297 MNOPROTO BSD { int socket(int domain, int type, int protocol); } 17398 MNOPROTO BSD { int connect(int s, caddr_t name, int namelen); } 17499 MNOPROTO BSD { int accept(int s, caddr_t name, int *anamelen); } \ 175 accept accept_args int 176100 MNOPROTO BSD { int getpriority(int which, int who); } 177101 OBSOL BSD osend 178102 OBSOL BSD orecv 179103 OBSOL BSD osigreturn 180104 MNOPROTO BSD { int bind(int s, caddr_t name, int namelen); } 181105 MNOPROTO BSD { int setsockopt(int s, int level, int name, \ 182 caddr_t val, int valsize); } 183106 MNOPROTO BSD { int listen(int s, int backlog); } 184107 OBSOL NOHIDE vtimes 185108 OBSOL BSD osigvec 186109 OBSOL BSD osigblock 187110 OBSOL BSD osigsetmask 188111 OBSOL POSIX osigsuspend 189112 OBSOL BSD osigstack 190113 OBSOL BSD orecvmsg 191114 OBSOL BSD osendmsg 192115 OBSOL NOHIDE vtrace 193116 STD BSD { int freebsd32_gettimeofday(struct timeval32 *tp, \ 194 struct timezone *tzp); } 195117 STD BSD { int freebsd32_getrusage(int who, \ 196 struct rusage32 *rusage); } 197118 MNOPROTO BSD { int getsockopt(int s, int level, int name, \ 198 caddr_t val, int *avalsize); } 199119 UNIMPL NOHIDE resuba (BSD/OS 2.x) 200120 STD BSD { int freebsd32_readv(int fd, struct iovec32 *iovp, \ 201 u_int iovcnt); } 202121 STD BSD { int freebsd32_writev(int fd, struct iovec32 *iovp, \ 203 u_int iovcnt); } 204122 STD BSD { int freebsd32_settimeofday(struct timeval32 *tv, \ 205 struct timezone *tzp); } 206123 NOPROTO BSD { int fchown(int fd, int uid, int gid); } 207124 NOPROTO BSD { int fchmod(int fd, int mode); } 208125 MNOPROTO BSD { int recvfrom(int s, caddr_t buf, size_t len, \ 209 int flags, caddr_t from, int *fromlenaddr); } \ 210 recvfrom recvfrom_args int 211126 MNOPROTO BSD { int setreuid(int ruid, int euid); } 212127 MNOPROTO BSD { int setregid(int rgid, int egid); } 213128 NOPROTO POSIX { int rename(char *from, char *to); } 214129 OBSOL BSD otruncate 215130 OBSOL BSD ftruncate 216131 MNOPROTO BSD { int flock(int fd, int how); } 217132 NOPROTO POSIX { int mkfifo(char *path, int mode); } 218133 MNOPROTO BSD { int sendto(int s, caddr_t buf, size_t len, \ 219 int flags, caddr_t to, int tolen); } 220134 MNOPROTO BSD { int shutdown(int s, int how); } 221135 MNOPROTO BSD { int socketpair(int domain, int type, int protocol, \ 222 int *rsv); } 223136 NOPROTO POSIX { int mkdir(char *path, int mode); } 224137 NOPROTO POSIX { int rmdir(char *path); } 225138 STD BSD { int freebsd32_utimes(char *path, \ 226 struct timeval32 *tptr); } 227139 OBSOL NOHIDE 4.2 sigreturn 228140 STD BSD { int freebsd32_adjtime(struct timeval32 *delta, \ 229 struct timeval32 *olddelta); } 230141 OBSOL BSD ogetpeername 231142 OBSOL BSD ogethostid 232143 OBSOL BSD sethostid 233144 OBSOL BSD getrlimit 234145 OBSOL BSD setrlimit 235146 OBSOL BSD killpg 236147 MNOPROTO POSIX { int setsid(void); } 237148 NOPROTO BSD { int quotactl(char *path, int cmd, int uid, \ 238 caddr_t arg); } 239149 OBSOL BSD oquota 240150 OBSOL BSD ogetsockname 241 242; Syscalls 151-180 inclusive are reserved for vendor-specific 243; system calls. (This includes various calls added for compatibity 244; with other Unix variants.) 245; Some of these calls are now supported by BSD... 246151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x) 247152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x) 248153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x) 249154 UNIMPL NOHIDE nosys 250; 155 is initialized by the NFS code, if present. 251155 UNIMPL NOHIDE nfssvc 252156 NOPROTO BSD { int getdirentries(int fd, char *buf, u_int count, \ 253 long *basep); } 254157 STD BSD { int freebsd32_statfs(char *path, \ 255 struct statfs32 *buf); } 256158 STD BSD { int freebsd32_fstatfs(int fd, struct statfs32 *buf); } 257159 UNIMPL NOHIDE nosys 258160 UNIMPL NOHIDE nosys 259161 NOPROTO BSD { int getfh(char *fname, struct fhandle *fhp); } 260162 MNOPROTO BSD { int getdomainname(char *domainname, int len); } 261163 MNOPROTO BSD { int setdomainname(char *domainname, int len); } 262164 MNOPROTO BSD { int uname(struct utsname *name); } 263165 MNOPROTO BSD { int sysarch(int op, char *parms); } 264166 MNOPROTO BSD { int rtprio(int function, pid_t pid, \ 265 struct rtprio *rtp); } 266167 UNIMPL NOHIDE nosys 267168 UNIMPL NOHIDE nosys 268169 STD BSD { int freebsd32_semsys(int which, int a2, int a3, \ 269 int a4, int a5); } 270170 STD BSD { int freebsd32_msgsys(int which, int a2, int a3, \ 271 int a4, int a5, int a6); } 272171 STD BSD { int freebsd32_shmsys(int which, int a2, int a3, \ 273 int a4); } 274172 UNIMPL NOHIDE nosys 275173 STD POSIX { ssize_t freebsd32_pread(int fd, void *buf, \ 276 size_t nbyte, int pad, u_int32_t offsetlo, \ 277 u_int32_t offsethi); } 278; XXX note - bigendian is different 279174 STD POSIX { ssize_t freebsd32_pwrite(int fd, const void *buf, \ 280 size_t nbyte, int pad, u_int32_t offsetlo, \ 281 u_int32_t offsethi); } 282; XXX note - bigendian is different 283175 UNIMPL NOHIDE nosys 284176 MNOPROTO BSD { int ntp_adjtime(struct timex *tp); } 285177 UNIMPL NOHIDE sfork (BSD/OS 2.x) 286178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x) 287179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x) 288180 UNIMPL NOHIDE nosys 289 290; Syscalls 181-199 are used by/reserved for BSD 291181 MNOPROTO POSIX { int setgid(gid_t gid); } 292182 MNOPROTO BSD { int setegid(gid_t egid); } 293183 MNOPROTO BSD { int seteuid(uid_t euid); } 294184 UNIMPL BSD lfs_bmapv 295185 UNIMPL BSD lfs_markv 296186 UNIMPL BSD lfs_segclean 297187 UNIMPL BSD lfs_segwait 298188 STD POSIX { int freebsd32_stat(char *path, struct stat32 *ub); } 299189 STD POSIX { int freebsd32_fstat(int fd, struct stat32 *ub); } 300190 STD POSIX { int freebsd32_lstat(char *path, struct stat32 *ub); } 301191 NOPROTO POSIX { int pathconf(char *path, int name); } 302192 MNOPROTO POSIX { int fpathconf(int fd, int name); } 303193 UNIMPL NOHIDE nosys 304194 MNOPROTO BSD { int getrlimit(u_int which, \ 305 struct rlimit *rlp); } \ 306 getrlimit __getrlimit_args int 307195 MNOPROTO BSD { int setrlimit(u_int which, \ 308 struct rlimit *rlp); } \ 309 setrlimit __setrlimit_args int 310196 NOPROTO BSD { int getdirentries(int fd, char *buf, u_int count, \ 311 long *basep); } 312197 STD BSD { caddr_t freebsd32_mmap(caddr_t addr, size_t len, \ 313 int prot, int flags, int fd, int pad, \ 314 u_int32_t poslo, u_int32_t poshi); } 315198 NOPROTO NOHIDE { int nosys(void); } __syscall __syscall_args int 316; XXX note - bigendian is different 317199 STD POSIX { off_t freebsd32_lseek(int fd, int pad, \ 318 u_int32_t offsetlo, u_int32_t offsethi, \ 319 int whence); } 320; XXX note - bigendian is different 321200 STD BSD { int freebsd32_truncate(char *path, int pad, \ 322 u_int32_t lengthlo, u_int32_t lengthhi); } 323; XXX note - bigendian is different 324201 STD BSD { int freebsd32_ftruncate(int fd, int pad, \ 325 u_int32_t lengthlo, u_int32_t lengthhi); } 326202 MSTD BSD { int freebsd32_sysctl(int *name, u_int namelen, \ 327 void *old, u_int32_t *oldlenp, void *new, \ 328 u_int32_t newlen); } 329203 MNOPROTO BSD { int mlock(const void *addr, size_t len); } 330204 MNOPROTO BSD { int munlock(const void *addr, size_t len); } 331205 NOPROTO BSD { int undelete(char *path); } 332206 NOPROTO BSD { int futimes(int fd, struct timeval *tptr); } 333207 MNOPROTO BSD { int getpgid(pid_t pid); } 334208 UNIMPL NOHIDE newreboot (NetBSD) 335209 MNOPROTO BSD { int poll(struct pollfd *fds, u_int nfds, \ 336 int timeout); } 337 338; 339; The following are reserved for loadable syscalls 340; 341210 UNIMPL NOHIDE 342211 UNIMPL NOHIDE 343212 UNIMPL NOHIDE 344213 UNIMPL NOHIDE 345214 UNIMPL NOHIDE 346215 UNIMPL NOHIDE 347216 UNIMPL NOHIDE 348217 UNIMPL NOHIDE 349218 UNIMPL NOHIDE 350219 UNIMPL NOHIDE 351 352; 353; The following were introduced with NetBSD/4.4Lite-2 354; They are initialized by thier respective modules/sysinits 355220 MNOPROTO BSD { int __semctl(int semid, int semnum, int cmd, \ 356 union semun *arg); } 357221 MNOPROTO BSD { int semget(key_t key, int nsems, int semflg); } 358222 MNOPROTO BSD { int semop(int semid, struct sembuf *sops, \ 359 u_int nsops); } 360223 UNIMPL NOHIDE semconfig 361224 MNOPROTO BSD { int msgctl(int msqid, int cmd, \ 362 struct msqid_ds *buf); } 363225 MNOPROTO BSD { int msgget(key_t key, int msgflg); } 364226 MNOPROTO BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \ 365 int msgflg); } 366227 MNOPROTO BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \ 367 long msgtyp, int msgflg); } 368228 MNOPROTO BSD { int shmat(int shmid, void *shmaddr, int shmflg); } 369229 MNOPROTO BSD { int shmctl(int shmid, int cmd, \ 370 struct shmid_ds *buf); } 371230 MNOPROTO BSD { int shmdt(void *shmaddr); } 372231 MNOPROTO BSD { int shmget(key_t key, int size, int shmflg); } 373; 374232 MNOPROTO POSIX { int clock_gettime(clockid_t clock_id, \ 375 struct timespec *tp); } 376233 MNOPROTO POSIX { int clock_settime(clockid_t clock_id, \ 377 const struct timespec *tp); } 378234 MNOPROTO POSIX { int clock_getres(clockid_t clock_id, \ 379 struct timespec *tp); } 380235 UNIMPL NOHIDE timer_create 381236 UNIMPL NOHIDE timer_delete 382237 UNIMPL NOHIDE timer_settime 383238 UNIMPL NOHIDE timer_gettime 384239 UNIMPL NOHIDE timer_getoverrun 385240 MNOPROTO POSIX { int nanosleep(const struct timespec *rqtp, \ 386 struct timespec *rmtp); } 387241 UNIMPL NOHIDE nosys 388242 UNIMPL NOHIDE nosys 389243 UNIMPL NOHIDE nosys 390244 UNIMPL NOHIDE nosys 391245 UNIMPL NOHIDE nosys 392246 UNIMPL NOHIDE nosys 393247 UNIMPL NOHIDE nosys 394248 UNIMPL NOHIDE nosys 395249 UNIMPL NOHIDE nosys 396; syscall numbers initially used in OpenBSD 397250 MNOPROTO BSD { int minherit(void *addr, size_t len, int inherit); } 398251 MNOPROTO BSD { int rfork(int flags); } 399252 MNOPROTO BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \ 400 int timeout); } 401253 MNOPROTO BSD { int issetugid(void); } 402254 NOPROTO BSD { int lchown(char *path, int uid, int gid); } 403255 UNIMPL NOHIDE nosys 404256 UNIMPL NOHIDE nosys 405257 UNIMPL NOHIDE nosys 406258 UNIMPL NOHIDE nosys 407259 UNIMPL NOHIDE nosys 408260 UNIMPL NOHIDE nosys 409261 UNIMPL NOHIDE nosys 410262 UNIMPL NOHIDE nosys 411263 UNIMPL NOHIDE nosys 412264 UNIMPL NOHIDE nosys 413265 UNIMPL NOHIDE nosys 414266 UNIMPL NOHIDE nosys 415267 UNIMPL NOHIDE nosys 416268 UNIMPL NOHIDE nosys 417269 UNIMPL NOHIDE nosys 418270 UNIMPL NOHIDE nosys 419271 UNIMPL NOHIDE nosys 420272 NOPROTO BSD { int getdents(int fd, char *buf, size_t count); } 421273 UNIMPL NOHIDE nosys 422274 NOPROTO BSD { int lchmod(char *path, mode_t mode); } 423275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int 424276 NOPROTO BSD { int lutimes(char *path, struct timeval *tptr); } 425277 MNOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int 426278 NOPROTO BSD { int nstat(char *path, struct nstat *ub); } 427279 MNOPROTO BSD { int nfstat(int fd, struct nstat *sb); } 428280 NOPROTO BSD { int nlstat(char *path, struct nstat *ub); } 429281 UNIMPL NOHIDE nosys 430282 UNIMPL NOHIDE nosys 431283 UNIMPL NOHIDE nosys 432284 UNIMPL NOHIDE nosys 433285 UNIMPL NOHIDE nosys 434286 UNIMPL NOHIDE nosys 435287 UNIMPL NOHIDE nosys 436288 UNIMPL NOHIDE nosys 437289 UNIMPL NOHIDE nosys 438290 UNIMPL NOHIDE nosys 439291 UNIMPL NOHIDE nosys 440292 UNIMPL NOHIDE nosys 441293 UNIMPL NOHIDE nosys 442294 UNIMPL NOHIDE nosys 443295 UNIMPL NOHIDE nosys 444296 UNIMPL NOHIDE nosys 445; XXX 297 is 300 in NetBSD 446297 NOPROTO BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } 447298 NOPROTO BSD { int fhopen(const struct fhandle *u_fhp, int flags); } 448299 NOPROTO BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } 449; syscall numbers for FreeBSD 450300 MNOPROTO BSD { int modnext(int modid); } 451301 MNOPROTO BSD { int modstat(int modid, struct module_stat* stat); } 452302 MNOPROTO BSD { int modfnext(int modid); } 453303 MNOPROTO BSD { int modfind(const char *name); } 454304 MNOPROTO BSD { int kldload(const char *file); } 455305 MNOPROTO BSD { int kldunload(int fileid); } 456306 MNOPROTO BSD { int kldfind(const char *file); } 457307 MNOPROTO BSD { int kldnext(int fileid); } 458308 MNOPROTO BSD { int kldstat(int fileid, struct kld_file_stat* stat); } 459309 MNOPROTO BSD { int kldfirstmod(int fileid); } 460310 MNOPROTO BSD { int getsid(pid_t pid); } 461311 MNOPROTO BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } 462312 MNOPROTO BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } 463313 OBSOL NOHIDE signanosleep 464314 UNIMPL NOHIDE aio_return 465315 UNIMPL NOHIDE aio_suspend 466316 UNIMPL NOHIDE aio_cancel 467317 UNIMPL NOHIDE aio_error 468318 UNIMPL NOHIDE aio_read 469319 UNIMPL NOHIDE aio_write 470320 UNIMPL NOHIDE lio_listio 471321 MNOPROTO BSD { int yield(void); } 472322 OBSOL NOHIDE thr_sleep 473323 OBSOL NOHIDE thr_wakeup 474324 MNOPROTO BSD { int mlockall(int how); } 475325 MNOPROTO BSD { int munlockall(void); } 476326 NOPROTO BSD { int __getcwd(u_char *buf, u_int buflen); } 477 478327 MNOPROTO POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); } 479328 MNOPROTO POSIX { int sched_getparam (pid_t pid, struct sched_param *param); } 480 481329 MNOPROTO POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } 482330 MNOPROTO POSIX { int sched_getscheduler (pid_t pid); } 483 484331 MNOPROTO POSIX { int sched_yield (void); } 485332 MNOPROTO POSIX { int sched_get_priority_max (int policy); } 486333 MNOPROTO POSIX { int sched_get_priority_min (int policy); } 487334 MNOPROTO POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } 488335 MNOPROTO BSD { int utrace(const void *addr, size_t len); } 489; XXX note - bigendian is different 490336 MCOMPAT4 BSD { int freebsd32_sendfile(int fd, int s, \ 491 u_int32_t offsetlo,u_int32_t offsethi, \ 492 size_t nbytes, struct sf_hdtr *hdtr, \ 493 off_t *sbytes, int flags); } 494337 NOPROTO BSD { int kldsym(int fileid, int cmd, void *data); } 495338 MNOPROTO BSD { int jail(struct jail *jail); } 496339 UNIMPL BSD pioctl 497340 MNOPROTO POSIX { int sigprocmask(int how, const sigset_t *set, \ 498 sigset_t *oset); } 499341 MNOPROTO POSIX { int sigsuspend(const sigset_t *sigmask); } 500342 MCOMPAT4 POSIX { int freebsd32_sigaction(int sig, \ 501 struct sigaction32 *act, \ 502 struct sigaction32 *oact); } 503343 MNOPROTO POSIX { int sigpending(sigset_t *set); } 504344 MCOMPAT4 BSD { int freebsd32_sigreturn( \ 505 const struct __ucontext *sigcntxp); } 506; XXX implement 507345 UNIMPL NOHIDE sigtimedwait 508; XXX implement 509346 UNIMPL NOHIDE sigwaitinfo 510347 MNOPROTO BSD { int __acl_get_file(const char *path, \ 511 acl_type_t type, struct acl *aclp); } 512348 MNOPROTO BSD { int __acl_set_file(const char *path, \ 513 acl_type_t type, struct acl *aclp); } 514349 MNOPROTO BSD { int __acl_get_fd(int filedes, acl_type_t type, \ 515 struct acl *aclp); } 516350 MNOPROTO BSD { int __acl_set_fd(int filedes, acl_type_t type, \ 517 struct acl *aclp); } 518351 MNOPROTO BSD { int __acl_delete_file(const char *path, \ 519 acl_type_t type); } 520352 MNOPROTO BSD { int __acl_delete_fd(int filedes, acl_type_t type); } 521353 MNOPROTO BSD { int __acl_aclcheck_file(const char *path, \ 522 acl_type_t type, struct acl *aclp); } 523354 MNOPROTO BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \ 524 struct acl *aclp); } 525355 NOPROTO BSD { int extattrctl(const char *path, int cmd, \ 526 const char *filename, int attrnamespace, \ 527 const char *attrname); } 528356 NOPROTO BSD { int extattr_set_file(const char *path, \ 529 int attrnamespace, const char *attrname, \ 530 void *data, size_t nbytes); } 531357 NOPROTO BSD { ssize_t extattr_get_file(const char *path, \ 532 int attrnamespace, const char *attrname, \ 533 void *data, size_t nbytes); } 534358 NOPROTO BSD { int extattr_delete_file(const char *path, \ 535 int attrnamespace, const char *attrname); } 536359 UNIMPL NOHIDE aio_waitcomplete 537360 MNOPROTO BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } 538361 MNOPROTO BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } 539362 MNOPROTO BSD { int kqueue(void); } 540363 MSTD BSD { int freebsd32_kevent(int fd, \ 541 const struct kevent *changelist, int nchanges, \ 542 struct kevent *eventlist, int nevents, \ 543 const struct timespec *timeout); } 544364 UNIMPL NOHIDE __cap_get_proc 545365 UNIMPL NOHIDE __cap_set_proc 546366 UNIMPL NOHIDE __cap_get_fd 547367 UNIMPL NOHIDE __cap_get_file 548368 UNIMPL NOHIDE __cap_set_fd 549369 UNIMPL NOHIDE __cap_set_file 550370 UNIMPL NOHIDE lkmressys 551371 NOPROTO BSD { int extattr_set_fd(int fd, int attrnamespace, \ 552 const char *attrname, void *data, \ 553 size_t nbytes); } 554372 NOPROTO BSD { ssize_t extattr_get_fd(int fd, int attrnamespace, \ 555 const char *attrname, void *data, size_t nbytes); } 556373 NOPROTO BSD { int extattr_delete_fd(int fd, int attrnamespace, \ 557 const char *attrname); } 558374 MNOPROTO BSD { int __setugid(int flag); } 559375 UNIMPL BSD nfsclnt 560376 NOPROTO BSD { int eaccess(char *path, int flags); } 561377 UNIMPL BSD afs_syscall 562378 NOPROTO BSD { int nmount(struct iovec *iovp, unsigned int iovcnt, \ 563 int flags); } 564379 NOPROTO BSD { int kse_exit(void); } 565380 NOPROTO BSD { int kse_wakeup(struct kse_mailbox *mbx); } 566381 NOPROTO BSD { int kse_create(struct kse_mailbox *mbx, \ 567 int newgroup); } 568382 NOPROTO BSD { int kse_thr_interrupt(struct kse_thr_mailbox *tmbx); } 569383 NOPROTO BSD { int kse_release(void); } 570384 UNIMPL BSD __mac_get_proc 571385 UNIMPL BSD __mac_set_proc 572386 UNIMPL BSD __mac_get_fd 573387 UNIMPL BSD __mac_get_file 574388 UNIMPL BSD __mac_set_fd 575389 UNIMPL BSD __mac_set_file 576390 NOPROTO BSD { int kenv(int what, const char *name, char *value, \ 577 int len); } 578391 NOPROTO BSD { int lchflags(const char *path, int flags); } 579392 NOPROTO BSD { int uuidgen(struct uuid *store, int count); } 580393 MSTD BSD { int freebsd32_sendfile(int fd, int s, \ 581 u_int32_t offsetlo, u_int32_t offsethi, \ 582 size_t nbytes, struct sf_hdtr *hdtr, \ 583 off_t *sbytes, int flags); } 584394 UNIMPL NOHIDE mac_syscall 585395 UNIMPL NOHIDE nosys 586396 UNIMPL NOHIDE nosys 587397 UNIMPL NOHIDE nosys 588398 UNIMPL NOHIDE nosys 589399 UNIMPL NOHIDE nosys 590; XXX implement these? 591400 UNIMPL NOHIDE ksem_close 592401 UNIMPL NOHIDE ksem_post 593402 UNIMPL NOHIDE ksem_wait 594403 UNIMPL NOHIDE ksem_trywait 595404 UNIMPL NOHIDE ksem_init 596405 UNIMPL NOHIDE ksem_open 597406 UNIMPL NOHIDE ksem_unlink 598407 UNIMPL NOHIDE ksem_getvalue 599408 UNIMPL NOHIDE ksem_destroy 600409 UNIMPL BSD __mac_get_pid 601410 UNIMPL BSD __mac_get_link 602411 UNIMPL BSD __mac_set_link 603412 UNIMPL BSD extattr_set_link 604413 UNIMPL BSD extattr_get_link 605414 UNIMPL BSD extattr_delete_link 606415 UNIMPL BSD __mac_execve 607416 STD POSIX { int freebsd32_sigaction(int sig, \ 608 struct sigaction32 *act, \ 609 struct sigaction32 *oact); } 610417 MSTD BSD { int freebsd32_sigreturn( \ 611 const struct freebsd32_ucontext *sigcntxp); } 612418 UNIMPL BSD __xstat 613419 UNIMPL BSD __xfstat 614420 UNIMPL BSD __xlstat 615; XXX implement 616421 UNIMPL BSD getcontext 617; XXX implement 618422 UNIMPL BSD setcontext 619; XXX implement 620423 UNIMPL BSD swapcontext 621424 UNIMPL BSD swapoff 622425 UNIMPL BSD __acl_get_link 623426 UNIMPL BSD __acl_set_link 624427 UNIMPL BSD __acl_delete_link 625428 UNIMPL BSD __acl_aclcheck_link 626; XXX implement 627429 UNIMPL NOHIDE sigwait 628430 MNOPROTO BSD { int thr_create(ucontext_t *ctx, thr_id_t *id, \ 629 int flag s); } 630431 MNOPROTO BSD { void thr_exit(void); } 631432 MNOPROTO BSD { int thr_self(thr_id_t *id); } 632433 MNOPROTO BSD { int thr_kill(thr_id_t id, int sig); } 633434 MNOPROTO BSD { int _umtx_lock(struct umtx *umtx); } 634435 MNOPROTO BSD { int _umtx_unlock(struct umtx *umtx); } 635436 MNOPROTO BSD { int jail_attach(int jid); } 636 637