1 ; $NetBSD: syscalls.master,v 1.26 2018/01/06 16:41:23 kamil Exp $ 2 3 ; from :NetBSD: syscalls.master,v 1.57 2000/12/09 07:10:36 mycroft Exp 4 5 ; NetBSD COMPAT_SUNOS, 32 bit mode for sparc64 system call name/number "master" file. 6 ; (See syscalls32.conf to see what it is processed into.) 7 ; 8 ; Fields: number type [type-dependent ...] 9 ; number system call number, must be in order 10 ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 11 ; the compatibility options defined in syscalls.conf. 12 ; 13 ; types: 14 ; STD always included 15 ; OBSOL obsolete, not included in system 16 ; UNIMPL unimplemented, not included in system 17 ; NODEF included, but don't define the syscall number 18 ; NOARGS included, but don't define the syscall args structure 19 ; 20 ; The compat options are defined in the syscalls.conf file, and the 21 ; compat option name is prefixed to the syscall name. Other than 22 ; that, they're like NODEF (for 'compat' options), or STD (for 23 ; 'libcompat' options). 24 ; 25 ; The type-dependent arguments are as follows: 26 ; For STD, NODEF, NOARGS, and compat syscalls: 27 ; { pseudo-proto } [alias] 28 ; For other syscalls: 29 ; [comment] 30 ; 31 ; #ifdef's, etc. may be included, and are copied to the output files. 32 ; #include's are copied to the syscall names and switch definition files only. 33 34 #if defined(_KERNEL_OPT) 35 #include "opt_sysv.h" 36 #include "opt_compat_sunos.h" 37 #endif 38 39 #include <sys/param.h> 40 #include <sys/systm.h> 41 #include <sys/signal.h> 42 #include <sys/mount.h> 43 #include <sys/poll.h> 44 #include <sys/syscallargs.h> 45 46 #include <compat/sunos/sunos.h> 47 #include <compat/sunos/sunos_syscallargs.h> 48 49 #include <compat/netbsd32/netbsd32.h> 50 #include <compat/netbsd32/netbsd32_syscallargs.h> 51 52 #include <compat/sunos32/sunos32.h> 53 #include <compat/sunos32/sunos32_syscallargs.h> 54 55 %% 56 57 0 NOARGS { int|sys||nosys(void); } syscall 58 1 NOARGS { int|netbsd32||exit(int rval); } 59 2 NOARGS { int|sys||fork(void); } 60 3 NOARGS { netbsd32_ssize_t|netbsd32||read(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte); } 61 4 NOARGS { netbsd32_ssize_t|netbsd32||write(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte); } 62 5 STD { int|sunos32_sys||open(const netbsd32_charp path, int flags, \ 63 int mode); } 64 6 NOARGS { int|netbsd32||close(int fd); } 65 7 STD { int|sunos32_sys||wait4(int pid, netbsd32_intp status, \ 66 int options, netbsd32_rusagep_t rusage); } 67 8 STD { int|sunos32_sys||creat(const netbsd32_charp path, int mode); } 68 9 NOARGS { int|netbsd32||link(netbsd32_charp path, netbsd32_charp link); } 69 10 NOARGS { int|netbsd32||unlink(netbsd32_charp path); } 70 11 STD { int|sunos32_sys||execv(const netbsd32_charp path, netbsd32_charpp argp); } 71 12 NOARGS { int|netbsd32||chdir(netbsd32_charp path); } 72 13 OBSOL old_time 73 14 STD { int|sunos32_sys||mknod(const netbsd32_charp path, int mode, \ 74 int dev); } 75 15 NOARGS { int|netbsd32||chmod(netbsd32_charp path, int mode); } 76 16 NOARGS { int|netbsd32||chown(netbsd32_charp path, int uid, int gid); } 77 17 NOARGS { int|netbsd32||break(netbsd32_charp nsize); } 78 18 OBSOL old_stat 79 19 NOARGS { netbsd32_long|compat_43_netbsd32||olseek(int fd, netbsd32_long offset, int whence); } 80 20 NOARGS { pid_t|sys||getpid_with_ppid(void); } 81 21 OBSOL sunos_old_mount 82 22 UNIMPL System V umount 83 23 NOARGS { int|netbsd32||setuid(uid_t uid); } 84 24 NOARGS { uid_t|sys||getuid_with_euid(void); } 85 25 STD { int|sunos32_sys||stime(sunos32_time_tp tp); } 86 26 STD { netbsd32_long|sunos32_sys||ptrace(int req, pid_t pid, \ 87 netbsd32_caddr_t addr, int data, netbsd32_charp addr2); } 88 27 UNIMPL old_sunos_alarm 89 28 UNIMPL old_sunos_fstat 90 29 UNIMPL old_sunos_pause 91 30 UNIMPL old_sunos_utime 92 31 UNIMPL old_sunos_stty 93 32 UNIMPL old_sunos_gtty 94 33 STD { int|sunos32_sys||access(const netbsd32_charp path, int flags); } 95 34 UNIMPL old_sunos_nice 96 35 UNIMPL old_sunos_ftime 97 36 NOARGS { int|sys||sync(void); } 98 37 NOARGS { int|netbsd32||kill(int pid, int signum); } 99 38 STD { int|sunos32_sys||stat(const netbsd32_charp path, \ 100 netbsd32_stat43p_t ub); } 101 39 UNIMPL sunos_setpgrp 102 40 STD { int|sunos32_sys||lstat(const netbsd32_charp path, \ 103 netbsd32_stat43p_t ub); } 104 41 NOARGS { int|netbsd32||dup(int fd); } 105 42 NOARGS { int|sys||pipe(void); } 106 43 UNIMPL sunos_times 107 44 NOARGS { int|netbsd32||profil(netbsd32_caddr_t samples, u_int size, \ 108 u_int offset, u_int scale); } 109 45 UNIMPL 110 46 NOARGS { int|netbsd32||setgid(uid_t gid); } 111 47 NOARGS { gid_t|sys||getgid_with_egid(void); } 112 48 UNIMPL sunos_ssig 113 49 UNIMPL reserved for USG 114 50 UNIMPL reserved for USG 115 51 NOARGS { int|netbsd32||acct(netbsd32_charp path); } 116 52 UNIMPL 117 53 STD { int|sunos32_sys||mctl(netbsd32_voidp addr, int len, int func, \ 118 netbsd32_voidp arg); } 119 54 STD { int|sunos32_sys||ioctl(int fd, netbsd32_u_long com, \ 120 netbsd32_caddr_t data); } 121 55 STD { int|sunos32_sys||reboot(int howto, netbsd32_charp bootstr); } 122 56 OBSOL sunos_owait3 123 57 NOARGS { int|netbsd32||symlink(netbsd32_charp path, netbsd32_charp link); } 124 58 NOARGS { int|netbsd32||readlink(netbsd32_charp path, netbsd32_charp buf, int count); } 125 59 STD { int|sunos32_sys||execve(const netbsd32_charp path, netbsd32_charpp argp, \ 126 netbsd32_charpp envp); } 127 60 NOARGS { int|netbsd32||umask(int newmask); } 128 61 NOARGS { int|netbsd32||chroot(netbsd32_charp path); } 129 62 NOARGS { int|compat_43_netbsd32||fstat43(int fd, netbsd32_stat43p_t sb); } 130 63 UNIMPL 131 64 NOARGS { int|compat_43_sys||getpagesize(void); } ogetpagesize 132 65 STD { int|sunos32_sys||omsync(netbsd32_caddr_t addr, netbsd32_size_t len, \ 133 int flags); } 134 66 NOARGS { int|sys||vfork(void); } 135 67 OBSOL vread 136 68 OBSOL vwrite 137 69 OBSOL sbrk 138 70 OBSOL sstk 139 71 STD { netbsd32_voidp|sunos32_sys||mmap(netbsd32_voidp addr, netbsd32_size_t len, \ 140 int prot, int flags, int fd, netbsd32_long pos); } 141 72 NOARGS { int|netbsd32||ovadvise(int anom); } vadvise 142 73 NOARGS { int|netbsd32||munmap(netbsd32_voidp addr, netbsd32_size_t len); } 143 74 NOARGS { int|netbsd32||mprotect(netbsd32_voidp addr, netbsd32_size_t len, \ 144 int prot); } 145 75 NOARGS { int|netbsd32||madvise(netbsd32_voidp addr, netbsd32_size_t len, \ 146 int behav); } 147 76 STD { int|sunos32_sys||vhangup(void); } 148 77 UNIMPL vlimit 149 78 NOARGS { int|netbsd32||mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); } 150 79 NOARGS { int|netbsd32||getgroups(u_int gidsetsize, netbsd32_gid_tp gidset); } 151 80 NOARGS { int|netbsd32||setgroups(u_int gidsetsize, netbsd32_gid_tp gidset); } 152 81 NOARGS { int|sys||getpgrp(void); } 153 82 STD { int|sunos32_sys||setpgrp(int pid, int pgid); } 154 83 NOARGS { int|compat_50_netbsd32||setitimer(u_int which, netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); } 155 84 UNIMPL sunos32_sys_wait 156 85 NOARGS { int|compat_12_netbsd32||oswapon(netbsd32_charp name); } 157 86 NOARGS { int|compat_50_netbsd32||getitimer(u_int which, netbsd32_itimervalp_t itv); } 158 87 NOARGS { int|compat_43_netbsd32||ogethostname(netbsd32_charp hostname, u_int len); } 159 88 NOARGS { int|compat_43_netbsd32||osethostname(netbsd32_charp hostname, u_int len); } 160 89 NOARGS { int|compat_43_sys||getdtablesize(void); } ogetdtablesize 161 90 NOARGS { int|netbsd32||dup2(int from, int to); } 162 91 UNIMPL getdopt 163 92 STD { int|sunos32_sys||fcntl(int fd, int cmd, netbsd32_voidp arg); } 164 93 NOARGS { int|compat_50_netbsd32||select(u_int nd, netbsd32_fd_setp_t in, netbsd32_fd_setp_t ou, \ 165 netbsd32_fd_setp_t ex, netbsd32_timevalp_t tv); } 166 94 UNIMPL setdopt 167 95 NOARGS { int|netbsd32||fsync(int fd); } 168 96 NOARGS { int|netbsd32||setpriority(int which, int who, int prio); } 169 97 STD { int|sunos32_sys||socket(int domain, int type, int protocol); } 170 98 NOARGS { int|netbsd32||connect(int s, netbsd32_caddr_t name, int namelen); } 171 99 NOARGS { int|compat_43_netbsd32||oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); } 172 100 NOARGS { int|netbsd32||getpriority(int which, int who); } 173 101 NOARGS { int|compat_43_netbsd32||osend(int s, netbsd32_caddr_t buf, int len, \ 174 int flags); } 175 102 NOARGS { int|compat_43_netbsd32||orecv(int s, netbsd32_caddr_t buf, int len, \ 176 int flags); } 177 103 UNIMPL old socketaddr 178 104 NOARGS { int|netbsd32||bind(int s, netbsd32_caddr_t name, int namelen); } 179 105 STD { int|sunos32_sys||setsockopt(int s, int level, int name, \ 180 netbsd32_caddr_t val, int valsize); } 181 106 NOARGS { int|netbsd32||listen(int s, int backlog); } 182 107 UNIMPL vtimes 183 108 STD { int|sunos32_sys||sigvec(int signum, netbsd32_sigvecp_t nsv, \ 184 netbsd32_sigvecp_t osv); } 185 109 NOARGS { int|compat_43_netbsd32||sigblock(int mask); } 186 110 NOARGS { int|compat_43_netbsd32||sigsetmask(int mask); } 187 111 STD { int|sunos32_sys||sigsuspend(int mask); } 188 112 NOARGS { int|compat_43_netbsd32||osigstack(netbsd32_sigstackp_t nss, \ 189 netbsd32_sigstackp_t oss); } 190 113 NOARGS { int|compat_43_netbsd32||orecvmsg(int s, \ 191 netbsd32_omsghdrp_t msg, int flags); } 192 114 NOARGS { int|compat_43_netbsd32||osendmsg(int s, netbsd32_caddr_t msg, \ 193 int flags); } 194 115 OBSOL vtrace 195 116 NOARGS { int|compat_50_netbsd32||gettimeofday(netbsd32_timevalp_t tp, \ 196 netbsd32_timezonep_t tzp); } 197 117 NOARGS { int|compat_50_netbsd32||getrusage(int who, netbsd32_rusagep_t rusage); } 198 118 NOARGS { int|netbsd32||getsockopt(int s, int level, int name, \ 199 netbsd32_caddr_t val, netbsd32_intp avalsize); } 200 119 UNIMPL 201 120 NOARGS { int|netbsd32||readv(int fd, netbsd32_iovecp_t iovp, \ 202 u_int iovcnt); } 203 121 NOARGS { int|netbsd32||writev(int fd, netbsd32_iovecp_t iovp, \ 204 u_int iovcnt); } 205 122 NOARGS { int|compat_50_netbsd32||settimeofday(netbsd32_timevalp_t tv, \ 206 netbsd32_timezonep_t tzp); } 207 123 NOARGS { int|netbsd32||fchown(int fd, int uid, int gid); } 208 124 NOARGS { int|netbsd32||fchmod(int fd, int mode); } 209 125 NOARGS { int|compat_43_netbsd32||orecvfrom(int s, netbsd32_caddr_t buf, \ 210 netbsd32_size_t len, int flags, netbsd32_caddr_t from, \ 211 netbsd32_intp fromlenaddr); } 212 126 NOARGS { int|netbsd32||setreuid(int ruid, int euid); } 213 127 NOARGS { int|netbsd32||setregid(int rgid, int egid); } 214 128 NOARGS { int|netbsd32||rename(netbsd32_charp from, netbsd32_charp to); } 215 129 NOARGS { int|compat_43_netbsd32||otruncate(netbsd32_charp path, netbsd32_long length); } 216 130 NOARGS { int|compat_43_netbsd32||oftruncate(int fd, netbsd32_long length); } 217 131 NOARGS { int|netbsd32||flock(int fd, int how); } 218 132 UNIMPL 219 133 NOARGS { int|netbsd32||sendto(int s, netbsd32_caddr_t buf, netbsd32_size_t len, \ 220 int flags, netbsd32_caddr_t to, int tolen); } 221 134 NOARGS { int|netbsd32||shutdown(int s, int how); } 222 135 STD { int|sunos32_sys||socketpair(int domain, int type, \ 223 int protocol, netbsd32_intp rsv); } 224 136 NOARGS { int|netbsd32||mkdir(netbsd32_charp path, int mode); } 225 137 NOARGS { int|netbsd32||rmdir(netbsd32_charp path); } 226 138 NOARGS { int|compat_50_netbsd32||utimes(netbsd32_charp path, netbsd32_timevalp_t tptr); } 227 139 STD { int|sunos32_sys||sigreturn(netbsd32_sigcontextp_t sigcntxp); } 228 140 NOARGS { int|compat_50_netbsd32||adjtime(netbsd32_timevalp_t delta, \ 229 netbsd32_timevalp_t olddelta); } 230 141 NOARGS { int|compat_43_netbsd32||ogetpeername(int fdes, netbsd32_caddr_t asa, \ 231 netbsd32_intp alen); } 232 142 NOARGS { int|compat_43_sys||gethostid(void); } 233 143 UNIMPL old sethostid 234 144 STD { int|sunos32_sys||getrlimit(u_int which, \ 235 netbsd32_orlimitp_t rlp); } 236 145 STD { int|sunos32_sys||setrlimit(u_int which, \ 237 netbsd32_orlimitp_t rlp); } 238 146 NOARGS { int|compat_43_netbsd32||killpg(int pgid, int signum); } 239 147 UNIMPL 240 148 UNIMPL 241 149 UNIMPL 242 150 NOARGS { int|compat_43_netbsd32||ogetsockname(int fdes, netbsd32_caddr_t asa, \ 243 netbsd32_intp alen); } 244 151 UNIMPL getmsg 245 152 UNIMPL putmsg 246 153 NOARGS { int|netbsd32||poll(netbsd32_pollfdp_t fds, u_int nfds, \ 247 int timeout); } 248 154 UNIMPL 249 155 UNIMPL nfssvc 250 156 NOARGS { int|compat_43_netbsd32||ogetdirentries(int fd, netbsd32_charp buf, \ 251 u_int count, netbsd32_longp basep); } 252 157 STD { int|sunos32_sys||statfs(const netbsd32_charp path, \ 253 sunos32_statfsp_t buf); } 254 158 STD { int|sunos32_sys||fstatfs(int fd, \ 255 sunos32_statfsp_t buf); } 256 159 STD { int|sunos32_sys||unmount(netbsd32_charp path); } 257 160 UNIMPL async_daemon 258 161 NOARGS { int|compat_30_sys||getfh(netbsd32_charp fname, netbsd32_fhandlep_t fhp); } 259 162 NOARGS { int|compat_09_netbsd32||ogetdomainname(netbsd32_charp domainname, \ 260 int len); } 261 163 NOARGS { int|compat_09_netbsd32||osetdomainname(netbsd32_charp domainname, \ 262 int len); } 263 164 UNIMPL rtschedule 264 165 STD { int|sunos32_sys||quotactl(int cmd, netbsd32_charp special, \ 265 int uid, netbsd32_caddr_t addr); } 266 166 STD { int|sunos32_sys||exportfs(netbsd32_charp path, netbsd32_charp ex); } 267 167 STD { int|sunos32_sys||mount(netbsd32_charp type, netbsd32_charp path, \ 268 int flags, netbsd32_caddr_t data); } 269 168 STD { int|sunos32_sys||ustat(int dev, \ 270 sunos32_ustatp_t buf); } 271 #ifdef SYSVSEM 272 169 NOARGS { int|compat_10_netbsd32||semsys(int which, int a2, int a3, \ 273 int a4, int a5); } osemsys 274 #else 275 169 UNIMPL semsys 276 #endif 277 #ifdef SYSVMSG 278 170 NOARGS { int|compat_10_netbsd32||msgsys(int which, int a2, int a3, \ 279 int a4, int a5, int a6); } omsgsys 280 #else 281 170 UNIMPL msgsys 282 #endif 283 #ifdef SYSVSHM 284 171 NOARGS { int|compat_10_netbsd32||shmsys(int which, int a2, int a3, \ 285 int a4); } oshmsys 286 #else 287 171 UNIMPL shmsys 288 #endif 289 172 STD { int|sunos32_sys||auditsys(netbsd32_charp record); } 290 173 UNIMPL rfssys 291 174 STD { int|sunos32_sys||getdents(int fd, netbsd32_charp buf, \ 292 int nbytes); } 293 175 NOARGS { int|sys||setsid(void); } 294 176 NOARGS { int|netbsd32||fchdir(int fd); } 295 177 NOARGS { int|netbsd32||fchroot(int fd); } 296 178 UNIMPL vpixsys 297 179 UNIMPL aioread 298 180 UNIMPL aiowrite 299 181 UNIMPL aiowait 300 182 UNIMPL aiocancel 301 183 STD { int|sunos32_sys||sigpending(netbsd32_intp mask); } 302 184 UNIMPL 303 185 NOARGS { int|netbsd32||setpgid(int pid, int pgid); } 304 186 NOARGS { netbsd32_long|netbsd32||pathconf(netbsd32_charp path, int name); } 305 187 NOARGS { netbsd32_long|netbsd32||fpathconf(int fd, int name); } 306 188 STD { int|sunos32_sys||sysconf(int name); } 307 189 STD { int|sunos32_sys||uname(sunos32_utsnamep_t name); } 308