syscalls.master revision 1.51 1 $NetBSD: syscalls.master,v 1.51 2010/03/02 21:07:22 pooka Exp $
2
3 ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4
5 ; NetBSD COMPAT_ULTRIX system call name/number "master" file.
6 ; (See syscalls.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 #include <sys/param.h>
35 #include <sys/systm.h>
36 #include <sys/signal.h>
37 #include <sys/mount.h>
38 #include <sys/sched.h>
39 #include <sys/syscallargs.h>
40 #include <compat/ultrix/ultrix_syscallargs.h>
41
42 %%
43
44 0 NOARGS { int|sys||nosys(void); } syscall
45 1 NOARGS { int|sys||exit(int rval); }
46 2 NOARGS { int|sys||fork(void); }
47 3 NOARGS { int|sys||read(int fd, char *buf, u_int nbyte); }
48 4 NOARGS { int|sys||write(int fd, char *buf, u_int nbyte); }
49 5 STD { int|ultrix_sys||open(const char *path, int flags, \
50 int mode); }
51 6 NOARGS { int|sys||close(int fd); }
52 7 NOARGS { int|compat_43_sys||wait(void); } owait
53 8 STD { int|ultrix_sys||creat(const char *path, int mode); }
54 9 NOARGS { int|sys||link(char *path, char *link); }
55 10 NOARGS { int|sys||unlink(char *path); }
56 11 STD { int|ultrix_sys||execv(const char *path, char **argp); }
57 12 NOARGS { int|sys||chdir(char *path); }
58 13 OBSOL time
59 14 STD { int|ultrix_sys||mknod(const char *path, int mode, \
60 int dev); }
61 15 NOARGS { int|sys||chmod(char *path, int mode); }
62 16 NOARGS { int|sys||__posix_chown(char *path, int uid, int gid); }
63 17 NOARGS { int|sys||obreak(char *nsize); } break
64 18 OBSOL stat
65 19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \
66 int whence); }
67 20 NOARGS { pid_t|sys||getpid(void); }
68 21 STD { int|ultrix_sys||mount(char *special, char *dir, \
69 int rdonly, int type, void *data); }
70 22 OBSOL sysV_unmount
71 23 NOARGS { int|sys||setuid(uid_t uid); }
72 24 NOARGS { uid_t|sys||getuid(void); }
73 25 OBSOL v7 stime
74 26 OBSOL v7 ptrace
75 27 OBSOL v7 alarm
76 28 OBSOL v7 fstat
77 29 OBSOL v7 pause
78 30 OBSOL v7 utime
79 31 OBSOL v7 stty
80 32 OBSOL v7 gtty
81 33 STD { int|ultrix_sys||access(const char *path, int flags); }
82 34 OBSOL v7 nice
83 35 OBSOL v7 ftime
84 36 NOARGS { int|sys||sync(void); }
85 37 NOARGS { int|sys||kill(int pid, int signum); }
86 38 STD { int|ultrix_sys||stat(const char *path, \
87 struct stat43 *ub); } stat43
88 39 OBSOL v7 setpgrp
89 40 STD { int|ultrix_sys||lstat(const char *path, \
90 struct stat43 *ub); } lstat43
91 41 NOARGS { int|sys||dup(u_int fd); }
92 42 NOARGS { int|sys||pipe(void); }
93 43 OBSOL v7 times
94 44 NOARGS { int|sys||profil(void *samples, u_int size, \
95 u_int offset, u_int scale); }
96 45 UNIMPL
97 46 OBSOL v7 setgid
98 47 NOARGS { gid_t|sys||getgid(void); }
99 48 UNIMPL ssig
100 49 UNIMPL reserved for USG
101 50 UNIMPL reserved for USG
102 51 NOARGS { int|sys||acct(char *path); }
103 52 UNIMPL
104 53 UNIMPL syslock
105 54 STD { int|ultrix_sys||ioctl(int fd, u_long com, void *data); }
106 55 NOARGS { int|sys||reboot(int opt); }
107 56 UNIMPL v7 mpxchan
108 57 NOARGS { int|sys||symlink(char *path, char *link); }
109 58 NOARGS { int|sys||readlink(char *path, char *buf, int count); }
110 59 STD { int|ultrix_sys||execve(const char *path, char **argp, \
111 char **envp); }
112 60 NOARGS { int|sys||umask(int newmask); }
113 61 NOARGS { int|sys||chroot(char *path); }
114 62 NOARGS { int|compat_43_sys||fstat(int fd, struct stat43 *sb); }
115 63 UNIMPL
116 64 NOARGS { int|compat_43_sys||getpagesize(void); }
117 65 UNIMPL mremap
118 66 NOARGS { int|sys||vfork(void); }
119 67 OBSOL vread
120 68 OBSOL vwrite
121 69 NOARGS { int|sys||sbrk(intptr_t incr); }
122 70 NOARGS { int|sys||sstk(int incr); }
123 71 STD { int|ultrix_sys||mmap(void *addr, size_t len, \
124 int prot, u_int flags, int fd, long pos); }
125 72 NOARGS { int|sys||ovadvise(int anom); } vadvise
126 73 NOARGS { int|sys||munmap(void *addr, size_t len); }
127 74 NOARGS { int|sys||mprotect(void *addr, size_t len, \
128 int prot); }
129 75 NOARGS { int|sys||madvise(void *addr, size_t len, \
130 int behav); }
131 76 STD { int|ultrix_sys||vhangup(void); }
132 77 UNIMPL old vlimit
133 78 NOARGS { int|sys||mincore(void *addr, int len, char *vec); }
134 79 NOARGS { int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
135 80 NOARGS { int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
136 81 NOARGS { int|sys||getpgrp(void); }
137 82 STD { int|ultrix_sys||setpgrp(int pid, int pgid); }
138 83 NOARGS { int|sys|50|setitimer(u_int which, \
139 struct itimerval50 *itv, struct itimerval50 *oitv); }
140 84 STD { int|ultrix_sys||wait3(int *status, int options, \
141 struct rusage50 *rusage);}
142 85 NOARGS { int|compat_12_sys||swapon(char *name); }
143 86 NOARGS { int|sys|50|getitimer(u_int which, \
144 struct itimerval50 *itv); }
145 87 NOARGS { int|compat_43_sys||gethostname(char *hostname, \
146 u_int len); }
147 88 NOARGS { int|compat_43_sys||sethostname(char *hostname, \
148 u_int len); }
149 89 NOARGS { int|compat_43_sys||getdtablesize(void); }
150 90 NOARGS { int|sys||dup2(u_int from, u_int to); }
151 91 UNIMPL getdopt
152 92 STD { int|ultrix_sys||fcntl(int fd, int cmd, void *arg); }
153 93 STD { int|ultrix_sys||select(u_int nd, fd_set *in, fd_set *ou, \
154 fd_set *ex, struct timeval50 *tv); }
155 94 UNIMPL setdopt
156 95 NOARGS { int|sys||fsync(int fd); }
157 96 NOARGS { int|sys||setpriority(int which, int who, int prio); }
158 97 NOARGS { int|compat_30_sys||socket(int domain, int type, int protocol); }
159 98 NOARGS { int|sys||connect(int s, void *name, int namelen); }
160 99 NOARGS { int|compat_43_sys||accept(int s, void *name, \
161 int *anamelen); }
162 100 NOARGS { int|sys||getpriority(int which, int who); }
163 101 NOARGS { int|compat_43_sys||send(int s, void *buf, int len, \
164 int flags); }
165 102 NOARGS { int|compat_43_sys||recv(int s, void *buf, int len, \
166 int flags); }
167 103 STD { int|ultrix_sys||sigreturn(struct sigcontext * \
168 sigcntxp); }
169 104 NOARGS { int|sys||bind(int s, void *name, int namelen); }
170 105 STD { int|ultrix_sys||setsockopt(int s, int level, \
171 int name, void *val, int valsize); }
172 106 NOARGS { int|sys||listen(int s, int backlog); }
173 107 UNIMPL vtimes
174 108 STD { int|ultrix_sys||sigvec(int signum, \
175 struct sigvec *nsv, struct sigvec *osv); }
176 109 NOARGS { int|compat_43_sys||sigblock(int mask); }
177 110 NOARGS { int|compat_43_sys||sigsetmask(int mask); }
178 111 STD { int|ultrix_sys||sigsuspend(int mask); }
179 112 NOARGS { int|compat_43_sys||sigstack(struct sigstack *nss, \
180 struct sigstack *oss); }
181 113 NOARGS { int|compat_43_sys||recvmsg(int s, \
182 struct omsghdr *msg, int flags); }
183 114 NOARGS { int|compat_43_sys||sendmsg(int s, void *msg, \
184 int flags); }
185 115 OBSOL vtrace
186 116 NOARGS { int|sys|50|gettimeofday(struct timeval50 *tp, \
187 struct timezone *tzp); }
188 117 NOARGS { int|sys|50|getrusage(int who, struct rusage50 *rusage); }
189 118 NOARGS { int|sys||getsockopt(int s, int level, int name, \
190 void *val, int *avalsize); }
191 119 UNIMPL resuba
192 120 NOARGS { int|sys||readv(int fd, struct iovec *iovp, \
193 u_int iovcnt); }
194 121 NOARGS { int|sys||writev(int fd, struct iovec *iovp, \
195 u_int iovcnt); }
196 122 NOARGS { int|sys|50|settimeofday(struct timeval50 *tv, \
197 struct timezone *tzp); }
198 123 NOARGS { int|sys||__posix_fchown(int fd, int uid, int gid); }
199 124 NOARGS { int|sys||fchmod(int fd, int mode); }
200 125 NOARGS { int|compat_43_sys||recvfrom(int s, void *buf, \
201 size_t len, int flags, void *from, \
202 int *fromlenaddr); }
203 126 NOARGS { int|sys||setreuid(int ruid, int euid); }
204 127 NOARGS { int|sys||setregid(int rgid, int egid); }
205 128 NOARGS { int|sys||rename(char *from, char *to); }
206 129 NOARGS { int|compat_43_sys||truncate(char *path, long length); }
207 130 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); }
208 131 NOARGS { int|sys||flock(int fd, int how); }
209 132 UNIMPL
210 133 NOARGS { int|sys||sendto(int s, void *buf, size_t len, \
211 int flags, void *to, int tolen); }
212 134 NOARGS { int|sys||shutdown(int s, int how); }
213 135 NOARGS { int|sys||socketpair(int domain, int type, \
214 int protocol, int *rsv); }
215 136 NOARGS { int|sys||mkdir(char *path, int mode); }
216 137 NOARGS { int|sys||rmdir(char *path); }
217 138 NOARGS { int|sys|50|utimes(char *path, struct timeval50 *tptr); }
218 139 STD { int|ultrix_sys||sigcleanup(struct sigcontext *sigcntxp); }
219 140 NOARGS { int|sys|50|adjtime(struct timeval50 *delta, \
220 struct timeval50 *olddelta); }
221 141 NOARGS { int|compat_43_sys||getpeername(int fdes, void *asa, \
222 int *alen); }
223 142 NOARGS { int|compat_43_sys||gethostid(void); }
224 143 UNIMPL old sethostid
225 144 NOARGS { int|compat_43_sys||getrlimit(u_int which, \
226 struct orlimit *rlp); }
227 145 NOARGS { int|compat_43_sys||setrlimit(u_int which, \
228 struct orlimit *rlp); }
229 146 NOARGS { int|compat_43_sys||killpg(int pgid, int signum); }
230 147 UNIMPL
231 148 UNIMPL setquota
232 149 UNIMPL quota /* needs to be nullop to boot on Ultrix root partition*/
233 150 NOARGS { int|compat_43_sys||getsockname(int fdes, void *asa, \
234 int *alen); }
235 151 UNIMPL sysmips /* 4 args */
236 #ifdef __mips
237 152 STD { int|ultrix_sys||cacheflush(char *addr, int nbytes, \
238 int whichcache); }
239 153 STD { int|ultrix_sys||cachectl(char *addr, int nbytes, int cacheop); }
240 #else /* !mips */
241 152 UNIMPL
242 153 UNIMPL
243 #endif /* !mips */
244 154 UNIMPL
245 155 UNIMPL atomic_op
246 156 UNIMPL
247 157 UNIMPL
248 158 UNIMPL ultrix_sys_nfssvc
249 159 NOARGS { int|compat_43_sys||getdirentries(int fd, char *buf, \
250 u_int count, long *basep); }
251 160 STD { int|ultrix_sys||statfs(const char *path, \
252 struct ultrix_statfs *buf); }
253 161 STD { int|ultrix_sys||fstatfs(int fd, \
254 struct ultrix_statfs *buf); }
255 162 UNIMPL umount
256 163 UNIMPL async_daemon
257 164 NOARGS { int|compat_30_sys||getfh(char *fname, fhandle_t *fhp); }
258 165 NOARGS { int|compat_09_sys||getdomainname(char *domainname, \
259 int len); }
260 166 NOARGS { int|compat_09_sys||setdomainname(char *domainname, \
261 int len); }
262 167 UNIMPL
263 168 STD { int|ultrix_sys||quotactl(int cmd, char *special, \
264 int uid, void *addr); }
265 169 STD { int|ultrix_sys||exportfs(char *path, char *ex); }
266 170 UNIMPL ultrix_sys_mount
267 171 UNIMPL 4 hdwconf
268 172 UNIMPL msgctl
269 173 UNIMPL msgget
270 174 UNIMPL msgrcv
271 175 UNIMPL msgsnd
272 176 UNIMPL semctl
273 177 UNIMPL semget
274 178 UNIMPL semop
275 179 STD { int|ultrix_sys||uname(struct ultrix_utsname *name); }
276 180 STD { int|ultrix_sys||shmsys(u_int shmop, \
277 u_int a2, u_int a3, u_int a4); }
278 181 UNIMPL 0 plock
279 182 UNIMPL 0 lockf
280 183 STD { int|ultrix_sys||ustat(int dev, \
281 struct ultrix_ustat *buf); }
282 184 STD { int|ultrix_sys||getmnt(int *start, \
283 struct ultrix_fs_data *buf, \
284 int bufsize, int mode, char *path); }
285 185 UNIMPL notdef
286 186 UNIMPL notdef
287 187 STD { int|ultrix_sys||sigpending(int *mask); }
288 188 NOARGS { int|sys||setsid(void); }
289 189 STD { int|ultrix_sys||waitpid(int pid, int *status, \
290 int options); }
291 190 UNIMPL
292 191 UNIMPL
293 192 UNIMPL
294 193 UNIMPL
295 194 UNIMPL
296 195 UNIMPL
297 196 UNIMPL
298 197 UNIMPL
299 198 UNIMPL
300 199 UNIMPL
301 200 UNIMPL
302 201 UNIMPL
303 202 UNIMPL
304 203 UNIMPL
305 204 UNIMPL
306 205 UNIMPL
307 206 UNIMPL
308 207 UNIMPL
309 208 UNIMPL
310 209 UNIMPL
311 210 UNIMPL
312 211 UNIMPL
313 212 UNIMPL
314 213 UNIMPL
315 214 UNIMPL
316 215 UNIMPL
317 216 UNIMPL
318 217 UNIMPL
319 218 UNIMPL
320 219 UNIMPL
321 220 UNIMPL
322 221 UNIMPL
323 222 UNIMPL
324 223 UNIMPL
325 224 UNIMPL
326 225 UNIMPL
327 226 UNIMPL
328 227 UNIMPL
329 228 UNIMPL
330 229 UNIMPL
331 230 UNIMPL
332 231 UNIMPL
333 232 UNIMPL
334 233 UNIMPL 1 utc_gettime
335 234 UNIMPL 2 utc_adjtime
336 235 UNIMPL
337 236 UNIMPL
338 237 UNIMPL
339 238 UNIMPL
340 239 UNIMPL
341 240 UNIMPL
342 241 UNIMPL
343 242 UNIMPL
344 243 UNIMPL
345 244 UNIMPL
346 245 UNIMPL
347 246 UNIMPL
348 247 UNIMPL
349 248 UNIMPL
350 249 UNIMPL
351 250 UNIMPL
352 251 UNIMPL
353 252 UNIMPL audctl /*Make no-op for installation on Ultrix rootpartition?*/
354 253 UNIMPL audgen /*Make no-op for installation on Ultrix rootpartition?*/
355 254 UNIMPL startcpu
356 255 UNIMPL stopcpu
357 256 STD { int|ultrix_sys||getsysinfo(unsigned op, char *buffer, \
358 unsigned nbytes, int *start, char *arg); }
359 257 STD { int|ultrix_sys||setsysinfo(unsigned op, char *buffer, \
360 unsigned nbytes, unsigned arg, unsigned flag); }
361
362