$OpenBSD: syscalls.master,v 1.4 1996/08/02 20:29:12 niklas Exp $ ; $NetBSD: syscalls.master,v 1.3 1995/10/10 18:28:40 mycroft Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; NetBSD COMPAT_FREEBSD system call name/number "master" file. ; (See syscalls.conf to see what it is processed into.) ; ; Fields: number type [type-dependent ...] ; number system call number, must be in order ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of ; the compatibility options defined in syscalls.conf. ; ; types: ; STD always included ; OBSOL obsolete, not included in system ; UNIMPL unimplemented, not included in system ; NODEF included, but don't define the syscall number ; NOARGS included, but don't define the syscall args structure ; ; The compat options are defined in the syscalls.conf file, and the ; compat option name is prefixed to the syscall name. Other than ; that, they're like NODEF (for 'compat' options), or STD (for ; 'libcompat' options). ; ; The type-dependent arguments are as follows: ; For STD, NODEF, NOARGS, and compat syscalls: ; { pseudo-proto } [alias] ; For other syscalls: ; [comment] ; ; #ifdef's, etc. may be included, and are copied to the output files. ; #include's are copied to the syscall switch definition file only. #include #include #include #include #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 NOARGS { int sys_nosys(void); } syscall 1 NOARGS { int sys_exit(int rval); } 2 NOARGS { int sys_fork(void); } 3 NOARGS { int sys_read(int fd, char *buf, u_int nbyte); } 4 NOARGS { int sys_write(int fd, char *buf, u_int nbyte); } 5 STD { int freebsd_sys_open(char *path, int flags, \ int mode); } 6 NOARGS { int sys_close(int fd); } 7 NOARGS { int sys_wait4(int pid, int *status, int options, \ struct rusage *rusage); } 8 STD { int compat_43_freebsd_sys_creat(char *path, \ int mode); } ocreat 9 STD { int freebsd_sys_link(char *path, char *link); } 10 STD { int freebsd_sys_unlink(char *path); } 11 OBSOL execv 12 STD { int freebsd_sys_chdir(char *path); } 13 NOARGS { int sys_fchdir(int fd); } 14 STD { int freebsd_sys_mknod(char *path, int mode, \ int dev); } 15 STD { int freebsd_sys_chmod(char *path, int mode); } 16 STD { int freebsd_sys_chown(char *path, int uid, int gid); } 17 NOARGS { int sys_obreak(char *nsize); } break 18 NOARGS { int sys_getfsstat(struct statfs *buf, long bufsize, \ int flags); } 19 NOARGS { long compat_43_sys_lseek(int fd, long offset, \ int whence); } olseek 20 NOARGS { pid_t sys_getpid(void); } 21 STD { int freebsd_sys_mount(int type, char *path, \ int flags, caddr_t data); } 22 STD { int freebsd_sys_unmount(char *path, int flags); } 23 NOARGS { int sys_setuid(uid_t uid); } 24 NOARGS { uid_t sys_getuid(void); } 25 NOARGS { uid_t sys_geteuid(void); } 26 STD { int freebsd_sys_ptrace(int req, pid_t pid, \ caddr_t addr, int data); } 27 NOARGS { int sys_recvmsg(int s, struct msghdr *msg, \ int flags); } 28 NOARGS { int sys_sendmsg(int s, caddr_t msg, int flags); } 29 NOARGS { int sys_recvfrom(int s, caddr_t buf, size_t len, \ int flags, caddr_t from, int *fromlenaddr); } 30 NOARGS { int sys_accept(int s, caddr_t name, int *anamelen); } 31 NOARGS { int sys_getpeername(int fdes, caddr_t asa, \ int *alen); } 32 NOARGS { int sys_getsockname(int fdes, caddr_t asa, \ int *alen); } 33 STD { int freebsd_sys_access(char *path, int flags); } 34 STD { int freebsd_sys_chflags(char *path, int flags); } 35 NOARGS { int sys_fchflags(int fd, int flags); } 36 NOARGS { int sys_sync(void); } 37 NOARGS { int sys_kill(int pid, int signum); } 38 STD { int compat_43_freebsd_sys_stat(char *path, \ struct ostat *ub); } ostat 39 NOARGS { pid_t sys_getppid(void); } 40 STD { int compat_43_freebsd_sys_lstat(char *path, \ struct ostat *ub); } olstat 41 NOARGS { int sys_dup(u_int fd); } 42 NOARGS { int sys_pipe(void); } 43 NOARGS { gid_t sys_getegid(void); } 44 NOARGS { int sys_profil(caddr_t samples, u_int size, \ u_int offset, u_int scale); } #ifdef KTRACE 45 NOARGS { int sys_ktrace(char *fname, int ops, int facs, \ int pid); } #else 45 UNIMPL ktrace #endif 46 NOARGS { int sys_sigaction(int signum, struct sigaction *nsa, \ struct sigaction *osa); } 47 NOARGS { gid_t sys_getgid(void); } 48 NOARGS { int sys_sigprocmask(int how, sigset_t mask); } 49 NOARGS { int sys_getlogin(char *namebuf, u_int namelen); } 50 NOARGS { int sys_setlogin(char *namebuf); } 51 NOARGS { int sys_acct(char *path); } 52 NOARGS { int sys_sigpending(void); } 53 NOARGS { int sys_sigaltstack(struct sigaltstack *nss, \ struct sigaltstack *oss); } 54 STD { int freebsd_sys_ioctl(int fd, u_long com, \ caddr_t data); } 55 NOARGS { int sys_reboot(int opt); } 56 STD { int freebsd_sys_revoke(char *path); } 57 STD { int freebsd_sys_symlink(char *path, char *link); } 58 STD { int freebsd_sys_readlink(char *path, char *buf, \ int count); } 59 STD { int freebsd_sys_execve(char *path, char **argp, \ char **envp); } 60 NOARGS { int sys_umask(int newmask); } 61 STD { int freebsd_sys_chroot(char *path); } 62 NOARGS { int compat_43_sys_fstat(int fd, struct ostat *sb); } \ ofstat 63 NOARGS { int compat_43_sys_getkerninfo(int op, char *where, \ int *size, int arg); } ogetkerninfo 64 NOARGS { int compat_43_sys_getpagesize(void); } ogetpagesize 65 STD { int freebsd_sys_msync(caddr_t addr, size_t len, \ int flags); } 66 NOARGS { int sys_vfork(void); } 67 OBSOL vread 68 OBSOL vwrite 69 NOARGS { int sys_sbrk(int incr); } 70 NOARGS { int sys_sstk(int incr); } 71 NOARGS { int compat_43_sys_mmap(caddr_t addr, size_t len, \ int prot, int flags, int fd, long pos); } ommap 72 NOARGS { int sys_ovadvise(int anom); } vadvise 73 NOARGS { int sys_munmap(caddr_t addr, size_t len); } 74 NOARGS { int sys_mprotect(caddr_t addr, size_t len, \ int prot); } 75 NOARGS { int sys_madvise(caddr_t addr, size_t len, \ int behav); } 76 OBSOL vhangup 77 OBSOL vlimit 78 NOARGS { int sys_mincore(caddr_t addr, size_t len, char *vec); } 79 NOARGS { int sys_getgroups(u_int gidsetsize, gid_t *gidset); } 80 NOARGS { int sys_setgroups(u_int gidsetsize, gid_t *gidset); } 81 NOARGS { int sys_getpgrp(void); } 82 NOARGS { int sys_setpgid(int pid, int pgid); } 83 NOARGS { int sys_setitimer(u_int which, \ struct itimerval *itv, struct itimerval *oitv); } 84 NOARGS { int compat_43_sys_wait(void); } owait 85 NOARGS { int sys_swapon(char *name); } 86 NOARGS { int sys_getitimer(u_int which, \ struct itimerval *itv); } 87 NOARGS { int compat_43_sys_gethostname(char *hostname, \ u_int len); } ogethostname 88 NOARGS { int compat_43_sys_sethostname(char *hostname, \ u_int len); } osethostname 89 NOARGS { int compat_43_sys_getdtablesize(void); } \ ogetdtablesize 90 NOARGS { int sys_dup2(u_int from, u_int to); } 91 UNIMPL getdopt 92 NOARGS { int sys_fcntl(int fd, int cmd, void *arg); } 93 NOARGS { int sys_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 UNIMPL setdopt 95 NOARGS { int sys_fsync(int fd); } 96 NOARGS { int sys_setpriority(int which, int who, int prio); } 97 NOARGS { int sys_socket(int domain, int type, int protocol); } 98 NOARGS { int sys_connect(int s, caddr_t name, int namelen); } 99 NOARGS { int compat_43_sys_accept(int s, caddr_t name, \ int *anamelen); } oaccept 100 NOARGS { int sys_getpriority(int which, int who); } 101 NOARGS { int compat_43_sys_send(int s, caddr_t buf, int len, \ int flags); } osend 102 NOARGS { int compat_43_sys_recv(int s, caddr_t buf, int len, \ int flags); } orecv 103 STD { int freebsd_sys_sigreturn( \ struct freebsd_sigcontext *scp); } 104 NOARGS { int sys_bind(int s, caddr_t name, int namelen); } 105 NOARGS { int sys_setsockopt(int s, int level, int name, \ caddr_t val, int valsize); } 106 NOARGS { int sys_listen(int s, int backlog); } 107 OBSOL vtimes 108 NOARGS { int compat_43_sys_sigvec(int signum, \ struct sigvec *nsv, struct sigvec *osv); } osigvec 109 NOARGS { int compat_43_sys_sigblock(int mask); } osigblock 110 NOARGS { int compat_43_sys_sigsetmask(int mask); } osigsetmask 111 NOARGS { int sys_sigsuspend(int mask); } 112 NOARGS { int compat_43_sys_sigstack(struct sigstack *nss, \ struct sigstack *oss); } osigstack 113 NOARGS { int compat_43_sys_recvmsg(int s, \ struct omsghdr *msg, int flags); } orecvmsg 114 NOARGS { int compat_43_sys_sendmsg(int s, caddr_t msg, \ int flags); } osendmsg #ifdef TRACE 115 NOARGS { int sys_vtrace(int request, int value); } #else 115 OBSOL vtrace #endif 116 NOARGS { int sys_gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 117 NOARGS { int sys_getrusage(int who, struct rusage *rusage); } 118 NOARGS { int sys_getsockopt(int s, int level, int name, \ caddr_t val, int *avalsize); } 119 OBSOL resuba 120 NOARGS { int sys_readv(int fd, struct iovec *iovp, \ u_int iovcnt); } 121 NOARGS { int sys_writev(int fd, struct iovec *iovp, \ u_int iovcnt); } 122 NOARGS { int sys_settimeofday(struct timeval *tv, \ struct timezone *tzp); } 123 NOARGS { int sys_fchown(int fd, int uid, int gid); } 124 NOARGS { int sys_fchmod(int fd, int mode); } 125 NOARGS { int compat_43_sys_recvfrom(int s, caddr_t buf, \ size_t len, int flags, caddr_t from, \ int *fromlenaddr); } orecvfrom 126 NOARGS { int compat_43_sys_setreuid(int ruid, int euid); } \ osetreuid 127 NOARGS { int compat_43_sys_setregid(int rgid, int egid); } \ osetregid 128 STD { int freebsd_sys_rename(char *from, char *to); } 129 STD { int compat_43_freebsd_sys_truncate(char *path, \ long length); } otruncate 130 NOARGS { int compat_43_sys_ftruncate(int fd, long length); } \ oftruncate 131 NOARGS { int sys_flock(int fd, int how); } 132 STD { int freebsd_sys_mkfifo(char *path, int mode); } 133 NOARGS { int sys_sendto(int s, caddr_t buf, size_t len, \ int flags, caddr_t to, int tolen); } 134 NOARGS { int sys_shutdown(int s, int how); } 135 NOARGS { int sys_socketpair(int domain, int type, \ int protocol, int *rsv); } 136 STD { int freebsd_sys_mkdir(char *path, int mode); } 137 STD { int freebsd_sys_rmdir(char *path); } 138 NOARGS { int sys_utimes(char *path, struct timeval *tptr); } 139 OBSOL 4.2 sigreturn 140 NOARGS { int sys_adjtime(struct timeval *delta, \ struct timeval *olddelta); } 141 NOARGS { int compat_43_sys_getpeername(int fdes, caddr_t asa, \ int *alen); } ogetpeername 142 NOARGS { int32_t compat_43_sys_gethostid(void); } ogethostid 143 NOARGS { int compat_43_sys_sethostid(int32_t hostid); } \ osethostid 144 NOARGS { int compat_43_sys_getrlimit(u_int which, \ struct ogetrlimit *rlp); } ogetrlimit 145 NOARGS { int compat_43_sys_setrlimit(u_int which, \ struct ogetrlimit *rlp); } osetrlimit 146 NOARGS { int compat_43_sys_killpg(int pgid, int signum); } \ okillpg 147 NOARGS { int sys_setsid(void); } 148 NOARGS { int sys_quotactl(char *path, int cmd, int uid, \ caddr_t arg); } 149 NOARGS { int compat_43_sys_quota(void); } oquota 150 NOARGS { int compat_43_sys_getsockname(int fdec, caddr_t asa, \ int *alen); } ogetsockname ; 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 152 UNIMPL 153 UNIMPL 154 UNIMPL #if defined(NFSCLIENT) || defined(NFSSERVER) 155 NOARGS { int sys_nfssvc(int flag, caddr_t argp); } #else 155 UNIMPL #endif 156 NOARGS { int compat_43_sys_getdirentries(int fd, char *buf, \ u_int count, long *basep); } ogetdirentries 157 STD { int freebsd_sys_statfs(char *path, \ struct statfs *buf); } 158 NOARGS { int sys_fstatfs(int fd, struct statfs *buf); } 159 UNIMPL 160 UNIMPL #ifdef NFSCLIENT 161 STD { int freebsd_sys_getfh(char *fname, fhandle_t *fhp); } #else 161 UNIMPL getfh #endif 162 NOARGS { int compat_09_sys_getdomainname(char *domainname, \ int len); } 163 NOARGS { int compat_09_sys_setdomainname(char *domainname, \ int len); } 164 NOARGS { int compat_09_sys_uname(struct outsname *name); } 165 NOARGS { int sys_sysarch(int op, char *parms); } 166 STD { int freebsd_sys_rtprio(int function, pid_t pid, \ struct freebsd_rtprio *rtp); } 167 UNIMPL 168 UNIMPL ; XXX more generally, never on machines where sizeof(void *) != sizeof(int) #if defined(SYSVSEM) && !defined(alpha) 169 NOARGS { int compat_10_sys_semsys(int which, int a2, int a3, \ int a4, int a5); } #else 169 UNIMPL 1.0 semsys #endif ; XXX more generally, never on machines where sizeof(void *) != sizeof(int) #if defined(SYSVMSG) && !defined(alpha) 170 NOARGS { int compat_10_sys_msgsys(int which, int a2, int a3, \ int a4, int a5, int a6); } #else 170 UNIMPL 1.0 msgsys #endif ; XXX more generally, never on machines where sizeof(void *) != sizeof(int) #if defined(SYSVSHM) && !defined(alpha) 171 NOARGS { int compat_10_sys_shmsys(int which, int a2, int a3, \ int a4); } #else 171 UNIMPL 1.0 shmsys #endif 172 UNIMPL 173 UNIMPL 174 UNIMPL 175 UNIMPL 176 STD { int freebsd_ntp_adjtime(struct freebsd_timex *tp); } 177 UNIMPL 178 UNIMPL 179 UNIMPL 180 UNIMPL ; Syscalls 180-199 are used by/reserved for BSD 181 NOARGS { int sys_setgid(gid_t gid); } 182 NOARGS { int sys_setegid(gid_t egid); } 183 NOARGS { int sys_seteuid(uid_t euid); } #ifdef LFS 184 NOARGS { int lfs_bmapv(fsid_t *fsidp, \ struct block_info *blkiov, int blkcnt); } 185 NOARGS { int lfs_markv(fsid_t *fsidp, \ struct block_info *blkiov, int blkcnt); } 186 NOARGS { int lfs_segclean(fsid_t *fsidp, u_long segment); } 187 NOARGS { int lfs_segwait(fsid_t *fsidp, struct timeval *tv); } #else 184 UNIMPL 185 UNIMPL 186 UNIMPL 187 UNIMPL #endif 188 STD { int freebsd_sys_stat(char *path, struct stat *ub); } 189 NOARGS { int sys_fstat(int fd, struct stat *sb); } 190 STD { int freebsd_sys_lstat(char *path, struct stat *ub); } 191 STD { int freebsd_sys_pathconf(char *path, int name); } 192 NOARGS { int sys_fpathconf(int fd, int name); } 193 UNIMPL 194 NOARGS { int sys_getrlimit(u_int which, struct rlimit *rlp); } 195 NOARGS { int sys_setrlimit(u_int which, struct rlimit *rlp); } 196 NOARGS { int sys_getdirentries(int fd, char *buf, \ u_int count, long *basep); } 197 NOARGS { caddr_t sys_mmap(caddr_t addr, size_t len, int prot, \ int flags, int fd, long pad, off_t pos); } 198 NOARGS { int sys_nosys(void); } __syscall 199 NOARGS { off_t sys_lseek(int fd, int pad, off_t offset, \ int whence); } 200 STD { int freebsd_sys_truncate(char *path, int pad, \ off_t length); } 201 NOARGS { int sys_ftruncate(int fd, int pad, off_t length); } 202 NOARGS { int sys___sysctl(int *name, u_int namelen, \ void *old, size_t *oldlenp, void *new, \ size_t newlen); } 203 NOARGS { int sys_mlock(caddr_t addr, size_t len); } 204 NOARGS { int sys_munlock(caddr_t addr, size_t len); } #ifdef FREEBSD_BASED_ON_44LITE_R2 205 STD { int freebsd_sys_undelete(char *path); } #else 205 UNIMPL #endif 206 UNIMPL 207 UNIMPL 208 UNIMPL 209 UNIMPL ; ; Syscalls 210-219 are reserved for dynamically loaded syscalls ; 210 UNIMPL 211 UNIMPL 212 UNIMPL 213 UNIMPL 214 UNIMPL 215 UNIMPL 216 UNIMPL 217 UNIMPL 218 UNIMPL 219 UNIMPL