$FreeBSD$ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). ; Processed to created linux_sysent.c, linux_syscalls.c and linux_syscall.h. ; Columns: number type nargs name alt{name,tag,rtyp}/comments ; number system call number, must be in order ; type one of STD, OBSOL, UNIMPL, COMPAT, CPT_NOA, LIBCOMPAT, ; NODEF, NOARGS, NOPROTO ; name psuedo-prototype of syscall routine ; If one of the following alts is different, then all appear: ; altname name of system call if different ; alttag name of args struct tag if different from [o]`name'"_args" ; altrtyp return type if not int (bogus - syscalls always return int) ; for UNIMPL/OBSOL, name continues with comments ; types: ; STD always included ; COMPAT included on COMPAT #ifdef ; CPT_NOA combines COMPAT with NOARGS ; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h ; NOARGS same as STD except do not create structure in sys/sysproto.h ; NODEF ?? ; NOPROTO same as STD except do not create structure or function in ; sys/sysproto.h ; OBSOL obsolete, not included in system, only specifies name ; UNIMPL not implemented, placeholder only #include "opt_compat.h" #include #include #include #include #include #include ; Isn't pretty, but there seems to be no other way to trap nosys #define nosys linux_nosys ; #ifdef's, etc. may be included, and are copied to the output files. 0 UNIMPL 1 MNOPROTO { void sys_exit(int rval); } exit sys_exit_args void 2 MSTD { int linux_fork(void); } 3 MNOPROTO { int read(int fd, char *buf, u_int nbyte); } 4 MNOPROTO { int write(int fd, char *buf, u_int nbyte); } 5 UNIMPL 6 MNOPROTO { int close(int fd); } 7 MSTD { int osf1_wait4(int pid, int *status, int options, \ struct osf1_rusage *rusage); } 8 UNIMPL 9 STD { int linux_link(char *path, char *to); } 10 STD { int linux_unlink(char *path); } 11 UNIMPL 12 STD { int linux_chdir(char *path); } 13 NOPROTO { int fchdir(int fd); } 14 STD { int linux_mknod(char *path, l_int mode, l_dev_t dev); } 15 STD { int linux_chmod(char *path, l_mode_t mode); } 16 STD { int linux_chown(char *path, l_uid_t uid, l_gid_t gid); } 17 STD { int linux_brk(l_ulong dsend); } 18 UNIMPL 19 STD { int linux_lseek(l_uint fdes, l_off_t off, l_int whence); } 20 NOPROTO { int getpid(void); } 21 UNIMPL osf1_mount 22 STD { int linux_umount(char *path, l_int flags); } 23 MNOPROTO { int setuid(uid_t uid); } 24 MNOPROTO { int getuid(void); } 25 UNIMPL 26 MSTD { int linux_ptrace(void); } 27 UNIMPL 28 UNIMPL 29 UNIMPL 30 UNIMPL 31 UNIMPL 32 UNIMPL 33 STD { int linux_access(char *path, l_int flags); } 34 UNIMPL 35 UNIMPL 36 NOPROTO { int sync(void); } 37 MSTD { int linux_kill(l_int pid, l_int signum); } 38 UNIMPL 39 MNOPROTO { int setpgid(int pid, int pgid); } 40 UNIMPL 41 MNOPROTO { int dup(u_int fd); } 42 MNOPROTO { int pipe(void); } 43 UNIMPL osf_set_program_attributes 44 UNIMPL 45 STD { int linux_open(char *path, l_int flags, l_int mode); } 46 UNIMPL 47 MNOPROTO { int getgid(void); } 48 MSTD { int osf1_sigprocmask(int how, u_long mask); } 49 UNIMPL 50 UNIMPL 51 NOPROTO { int acct(char *path); } 52 MSTD { int linux_sigpending(void); } 53 UNIMPL 54 STD { int linux_ioctl(l_uint fd, l_uint cmd, l_ulong arg); } 55 UNIMPL 56 UNIMPL 57 STD { int linux_symlink(char *path, char *to); } 58 STD { int linux_readlink(char *name, char *buf, l_int count); } 59 STD { int linux_execve(char *path, char **argp, char **envp); } 60 MNOPROTO { int umask(int newmask); } 61 NOPROTO { int chroot(char *path); } 62 UNIMPL 63 MNOPROTO { int getpgrp(void); } 64 STD { int linux_getpagesize(void); } 65 UNIMPL 66 MSTD { int linux_vfork(void); } 67 STD { int linux_newstat(char *path, struct l_newstat *buf); } 68 STD { int linux_newlstat(char *path, struct l_newstat *buf); } 69 UNIMPL 70 UNIMPL 71 STD { int linux_mmap(l_ulong addr, l_ulong len, l_ulong prot, \ l_ulong flags, l_ulong fd, l_ulong pos); } 72 UNIMPL 73 STD { int linux_munmap(l_ulong addr, l_size_t len); } 74 STD { int linux_mprotect(l_ulong addr, l_size_t len, \ l_ulong prot); } 75 MNOPROTO { int madvise(void *addr, size_t len, int behav); } 76 STD { int linux_vhangup(void); } 77 UNIMPL 78 UNIMPL 79 MSTD { int linux_setgroups(l_int gidsetsize, l_gid_t *grouplist); } 80 MSTD { int linux_getgroups(l_int gidsetsize, l_gid_t *grouplist); } 81 UNIMPL 82 MNODEF setpgid setpgid setpgid_args int 83 STD { int osf1_setitimer(u_int which, struct itimerval *itv, \ struct itimerval *oitv); } 84 UNIMPL 85 UNIMPL 86 UNIMPL osf_getitimer 87 STD { int linux_gethostname(void); } 88 MNOPROTO { int osethostname(char *hostname, u_int len); } \ osethostname sethostname_args int 89 STD { int linux_getdtablesize(void); } 90 MNOPROTO { int dup2(u_int from, u_int to); } 91 STD { int linux_newfstat(l_uint fd, struct l_newstat *buf); } 92 MSTD { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } 93 STD { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 NOPROTO { int poll(struct pollfd*, unsigned int nfds, long timeout); } 95 NOPROTO { int fsync(int fd); } 96 MNOPROTO { int setpriority(int which, int who, int prio); } 97 STD { int osf1_socket(int domain, int type, int protocol); } 98 STD { int linux_connect(l_int s, struct l_sockaddr *name, \ l_int namelen); } 99 NOPROTO { int oaccept(int s, caddr_t name, int *anamelen); } \ accept accept_args int 100 UNIMPL osf_getpriority 101 NOPROTO { int osend(int s, caddr_t buf, int len, int flags); } 102 NOPROTO { int orecv(int s, caddr_t buf, int len, int flags); } 103 MSTD { int osf1_sigreturn(struct osigcontext *sigcntxp); } 104 NOPROTO { int bind(int s, caddr_t name, int namelen); } 105 NOPROTO { int setsockopt(int s, int level, int name, caddr_t val, \ int valsize); } 106 NOPROTO { int listen(int s, int backlog); } 107 UNIMPL 108 UNIMPL 109 UNIMPL 110 UNIMPL 111 MSTD { int osf1_sigsuspend(unsigned long ss); } 112 UNIMPL osf_sigstack 113 STD { int linux_recvmsg(void); } 114 STD { int linux_sendmsg(void); } 115 UNIMPL 116 MSTD { int osf1_gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 117 STD { int osf1_getrusage(long who, void *rusage); } 118 NOPROTO { int getsockopt(int s, int level, int name, caddr_t val, \ int *avalsize); } 119 UNIMPL 120 NOPROTO { int readv(int fd, struct iovec *iovp, u_int iovcnt); } 121 NOPROTO { int writev(int fd, struct iovec *iovp, u_int iovcnt); } 122 UNIMPL osf_settimeofday 123 NOPROTO { int fchown(int fd, int uid, int gid); } 124 NOPROTO { int fchmod(int fd, int mode); } 125 NOPROTO { int orecvfrom(int s, caddr_t buf, size_t len, int flags, \ caddr_t from, int *fromlenaddr); } \ recvfrom recvfrom_args int 126 MNOPROTO { int setreuid(int ruid, int euid); } 127 MNOPROTO { int setregid(int rgid, int egid); } 128 STD { int linux_rename(char *from, char *to); } 129 STD { int linux_truncate(char *path, l_ulong length); } 130 NOPROTO { int oftruncate(int fd, long length); } 131 NOPROTO { int flock(int fd, int how); } 132 MNOPROTO { int setgid(gid_t gid); } 133 STD { int osf1_sendto(int s, caddr_t buf, size_t len, int flags, \ struct sockaddr *to, int tolen); } 134 NOPROTO { int shutdown(int s, int how); } 135 STD { int linux_socketpair(void); } 136 STD { int linux_mkdir(char *path, l_int mode); } 137 STD { int linux_rmdir(char *path); } 138 NOPROTO { int utimes(char *path, struct timeval *tptr); } 139 UNIMPL 140 UNIMPL 141 NOPROTO { int ogetpeername(int fdes, caddr_t asa, int *alen); } 142 UNIMPL 143 UNIMPL 144 MSTD { int linux_getrlimit(l_uint resource, \ struct l_rlimit *rlim); } 145 MSTD { int linux_setrlimit(l_uint resource, \ struct l_rlimit *rlim); } 146 UNIMPL 147 MNOPROTO { int setsid(void); } 148 STD { int linux_quotactl(void); } 149 UNIMPL 150 NOPROTO { int ogetsockname(int fdec, caddr_t asa, int *alen);} \ getsockname getsockname_args int 151 UNIMPL 152 UNIMPL 153 UNIMPL 154 UNIMPL 155 UNIMPL 156 MSTD { int osf1_sigaction(int sig, struct osf1_sigaction *nsa, \ struct osf1_sigaction *osa); } 157 UNIMPL 158 UNIMPL 159 UNIMPL osf_getdirentries 160 UNIMPL osf_statfs 161 UNIMPL osf_fstatfs 162 UNIMPL 163 UNIMPL 164 UNIMPL 165 UNIMPL osf_getdomainname 166 MNOPROTO { int setdomainname(char *name, int len); } 167 UNIMPL 168 UNIMPL 169 UNIMPL 170 UNIMPL 171 UNIMPL 172 UNIMPL 173 UNIMPL 174 UNIMPL 175 UNIMPL 176 UNIMPL 177 UNIMPL 178 UNIMPL 179 UNIMPL 180 UNIMPL 181 UNIMPL 182 UNIMPL 183 UNIMPL 184 UNIMPL 185 UNIMPL 186 UNIMPL 187 UNIMPL 188 UNIMPL 189 UNIMPL 190 UNIMPL 191 UNIMPL 192 UNIMPL 193 UNIMPL 194 UNIMPL 195 UNIMPL 196 UNIMPL 197 UNIMPL 198 UNIMPL 199 UNIMPL osf_swapon 200 STD { int linux_msgctl(l_int msqid, l_int cmd, \ struct l_msqid_ds *buf); } 201 STD { int linux_msgget(l_key_t key, l_int msgflg); } 202 STD { int linux_msgrcv(l_int msqid, struct l_msgbuf *msgp, \ l_size_t msgsz, l_long msgtyp, l_int msgflg); } 203 STD { int linux_msgsnd(l_int msqid, struct l_msgbuf *msgp, \ l_size_t msgsz, l_int msgflg); } 204 STD { int linux_semctl(l_int semid, l_int semnum, \ l_int cmd, union l_semun arg); } 205 STD { int linux_semget(l_key_t key, l_int nsems, \ l_int semflg); } 206 STD { int linux_semop(l_int semid, struct l_sembuf *tsops, \ l_uint nsops); } 207 UNIMPL osf_utsname 208 STD { int linux_lchown(char *path, l_uid_t uid, l_gid_t gid); } 209 STD { int linux_shmat(l_int shmid, char *shmaddr, l_int shmflg); } 210 STD { int linux_shmctl(l_int shmid, l_int cmd, \ struct l_shmid_ds *buf); } 211 STD { int linux_shmdt(char *shmaddr); } 212 STD { int linux_shmget(l_key_t key, l_size_t size, l_int shmflg); } 213 UNIMPL 214 UNIMPL 215 UNIMPL 216 UNIMPL 217 STD { int linux_msync(l_ulong addr, l_size_t len, l_int fl); } 218 UNIMPL 219 UNIMPL 220 UNIMPL 221 UNIMPL 222 UNIMPL 223 UNIMPL 224 UNIMPL 225 UNIMPL 226 UNIMPL 227 UNIMPL 228 UNIMPL 229 UNIMPL 230 UNIMPL 231 UNIMPL 232 UNIMPL 233 MNOPROTO { int getpgid(int pid); } 234 MSTD { int linux_getsid(l_pid_t pid); } 235 STD { int linux_sigaltstack(void); } 236 UNIMPL 237 UNIMPL 238 UNIMPL 239 UNIMPL 240 UNIMPL 241 MSTD { int osf1_sysinfo(int cmd, char *buf, long count); } 242 UNIMPL 243 UNIMPL 244 UNIMPL osf_proplist_syscall 245 UNIMPL 246 UNIMPL 247 UNIMPL 248 UNIMPL 249 UNIMPL 250 UNIMPL 251 UNIMPL osf_usleep_thread 252 UNIMPL 253 UNIMPL 254 STD { int linux_sysfs(l_int option, l_ulong arg1, l_ulong arg2); } 255 UNIMPL 256 STD { int osf1_getsysinfo(u_long op, caddr_t buffer, \ u_long nbytes, caddr_t arg, u_long flag); } 257 STD { int osf1_setsysinfo(u_long op, caddr_t buffer, \ u_long nbytes, caddr_t arg, u_long flag); } 258 UNIMPL 259 UNIMPL 260 UNIMPL 261 UNIMPL 262 UNIMPL 263 UNIMPL 264 UNIMPL 265 UNIMPL 266 UNIMPL 267 UNIMPL 268 UNIMPL 269 UNIMPL 270 UNIMPL 271 UNIMPL 272 UNIMPL 273 UNIMPL 274 UNIMPL 275 UNIMPL 276 UNIMPL 277 UNIMPL 278 UNIMPL 279 UNIMPL 280 UNIMPL 281 UNIMPL 282 UNIMPL 283 UNIMPL 284 UNIMPL 285 UNIMPL 286 UNIMPL 287 UNIMPL 288 UNIMPL 289 UNIMPL 290 UNIMPL 291 UNIMPL 292 UNIMPL 293 UNIMPL 294 UNIMPL 295 UNIMPL 296 UNIMPL 297 UNIMPL 298 UNIMPL 299 UNIMPL 300 STD { int linux_bdflush(void); } 301 STD { int linux_sethae(void); } 302 STD { int linux_mount(char *specialfile, char *dir, \ char *filesystemtype, l_ulong rwflag, \ void *data); } 303 STD { int linux_old_adjtimex(void); } 304 STD { int linux_swapoff(void); } 305 STD { int linux_getdents(l_uint fd, void *dent, l_uint count); } 306 STD { int linux_create_module(void); } 307 STD { int linux_init_module(void); } 308 STD { int linux_delete_module(void); } 309 STD { int linux_get_kernel_syms(void); } 310 STD { int linux_syslog(l_int type, char *buf, l_int len); } 311 STD { int linux_reboot(l_int magic1, l_int magic2, l_uint cmd, \ void *arg); } 312 MSTD { int linux_clone(l_int flags, void *stack); } 313 STD { int linux_uselib(char *library); } 314 MNOPROTO { int mlock(const void *addr, size_t len); } 315 MNOPROTO { int munlock(const void *addr, size_t len); } 316 MNOPROTO { int mlockall(int how); } 317 MNOPROTO { int munlockall(void); } 318 STD { int linux_sysinfo(void); } 319 STD { int linux_sysctl(struct l___sysctl_args *args); } 320 UNIMPL sys_idle 321 STD { int linux_oldumount(char *path); } 322 NOPROTO { int swapon(char *name); } 323 STD { int linux_times(struct l_times_argv *buf); } 324 STD { int linux_personality(l_ulong per); } 325 STD { int linux_setfsuid(l_uid_t uid); } 326 STD { int linux_setfsgid(l_gid_t gid); } 327 STD { int linux_ustat(l_dev_t dev, struct l_ustat *ubuf); } 328 STD { int linux_statfs(char *path, struct l_statfs_buf *buf); } 329 STD { int linux_fstatfs(l_uint fd, struct l_statfs_buf *buf); } 330 MNOPROTO { int sched_setparam(pid_t pid, \ const struct sched_param *param); } 331 MNOPROTO { int sched_getparam(pid_t pid, struct sched_param *param); } 332 MSTD { int linux_sched_setscheduler(l_pid_t pid, l_int policy, \ struct l_sched_param *param); } 333 MSTD { int linux_sched_getscheduler(l_pid_t pid); } 334 MNOPROTO { int sched_yield(void); } 335 MSTD { int linux_sched_get_priority_max(l_int policy); } 336 MSTD { int linux_sched_get_priority_min (l_int policy); } 337 NOPROTO { int sched_rr_get_interval (pid_t pid, \ struct timespec *interval); } 338 UNIMPL sys_afs_syscall 339 STD { int linux_newuname(struct l_newuname_t *buf); } 340 MNOPROTO { int nanosleep(const struct timespec *rqtp, \ struct timespec *rmtp); } 341 STD { int linux_mremap(l_ulong addr, l_ulong old_len, \ l_ulong new_len, l_ulong flags, \ l_ulong new_addr); } 342 STD { int linux_nfsservctl(void); } 343 MNOPROTO { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } 344 MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } 345 STD { int linux_pciconfig_read(void); } 346 STD { int linux_pciconfig_write(void); } 347 STD { int linux_query_module(void); } 348 STD { int linux_prctl(void); } 349 STD { int linux_pread(l_uint fd, char *buf, l_size_t nbyte, \ l_loff_t offset); } 350 STD { int linux_pwrite(l_uint fd, char *buf, l_size_t nbyte, \ l_loff_t offset); } 351 STD { int linux_rt_sigreturn(void); } 352 MSTD { int linux_rt_sigaction(l_int sig, l_sigaction_t *act, \ l_sigaction_t *oact, l_size_t sigsetsize); } 353 MSTD { int linux_rt_sigprocmask(l_int how, l_sigset_t *mask, \ l_sigset_t *omask, l_size_t sigsetsize); } 354 STD { int linux_rt_sigpending(void); } 355 STD { int linux_rt_sigtimedwait(void); } 356 STD { int linux_rt_sigqueueinfo(void); } 357 MSTD { int linux_rt_sigsuspend(l_sigset_t *newset, \ l_size_t sigsetsize); } 358 STD { int linux_select(l_int nfds, l_fd_set *readfds, \ l_fd_set *writefds, l_fd_set *exceptfds, \ struct l_timeval *timeout); } 359 MNOPROTO { int gettimeofday(struct timeval *tp, struct timezone *tzp); } 360 MNOPROTO { int settimeofday(struct timeval *tp, struct timezone *tzp); } 361 MSTD { int linux_getitimer(l_int which, struct l_itimerval *itv); } 362 MSTD { int linux_setitimer(l_int which, struct l_itimerval *itv, \ struct l_itimerval *oitv); } 363 STD { int linux_utimes(char *fname, struct l_timeval *times); } 364 MNOPROTO { int getrusage(int who, struct rusage *rusage); } 365 MSTD { int linux_wait4(l_pid_t pid, l_uint *status, l_int options, \ struct l_rusage *rusage); } 366 STD { int linux_adjtimex(void); } 367 STD { int linux_getcwd(char *buf, l_ulong bufsize); } 368 STD { int linux_capget(void); } 369 STD { int linux_capset(void); } 370 STD { int linux_sendfile(void); } 371 MNOPROTO { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } 372 MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } 373 UNIMPL sys_dipc 374 STD { int linux_pivot_root(char *new_root, char *put_old); } 375 STD { int linux_mincore(l_ulong start, l_size_t len, u_char *vec); } 376 STD { int linux_pciconfig_iobase(void); } 377 STD { int linux_getdents64(l_uint fd, void *dirent, l_uint count); }