1
2
3
4
5
6
7
8
9
10 #ifdef syscallarg
11 #undef syscallarg
12 #endif
13
14 #define syscallarg(x) \
15 union { \
16 register_t pad; \
17 struct { x datum; } le; \
18 struct { \
19 int8_t pad[ (sizeof (register_t) < sizeof (x)) \
20 ? 0 \
21 : sizeof (register_t) - sizeof (x)]; \
22 x datum; \
23 } be; \
24 }
25
26 struct ibcs2_sys_read_args {
27 syscallarg(int) fd;
28 syscallarg(char *) buf;
29 syscallarg(u_int) nbytes;
30 };
31
32 struct ibcs2_sys_open_args {
33 syscallarg(char *) path;
34 syscallarg(int) flags;
35 syscallarg(int) mode;
36 };
37
38 struct ibcs2_sys_waitsys_args {
39 syscallarg(int) a1;
40 syscallarg(int) a2;
41 syscallarg(int) a3;
42 };
43
44 struct ibcs2_sys_creat_args {
45 syscallarg(char *) path;
46 syscallarg(int) mode;
47 };
48
49 struct ibcs2_sys_unlink_args {
50 syscallarg(char *) path;
51 };
52
53 struct ibcs2_sys_execv_args {
54 syscallarg(char *) path;
55 syscallarg(char **) argp;
56 };
57
58 struct ibcs2_sys_chdir_args {
59 syscallarg(char *) path;
60 };
61
62 struct ibcs2_sys_time_args {
63 syscallarg(ibcs2_time_t *) tp;
64 };
65
66 struct ibcs2_sys_mknod_args {
67 syscallarg(char *) path;
68 syscallarg(int) mode;
69 syscallarg(int) dev;
70 };
71
72 struct ibcs2_sys_chmod_args {
73 syscallarg(char *) path;
74 syscallarg(int) mode;
75 };
76
77 struct ibcs2_sys_chown_args {
78 syscallarg(char *) path;
79 syscallarg(int) uid;
80 syscallarg(int) gid;
81 };
82
83 struct ibcs2_sys_stat_args {
84 syscallarg(char *) path;
85 syscallarg(struct ibcs2_stat *) st;
86 };
87
88 struct ibcs2_sys_mount_args {
89 syscallarg(char *) special;
90 syscallarg(char *) dir;
91 syscallarg(int) flags;
92 syscallarg(int) fstype;
93 syscallarg(char *) data;
94 syscallarg(int) len;
95 };
96
97 struct ibcs2_sys_umount_args {
98 syscallarg(char *) name;
99 };
100
101 struct ibcs2_sys_setuid_args {
102 syscallarg(int) uid;
103 };
104
105 struct ibcs2_sys_stime_args {
106 syscallarg(long *) timep;
107 };
108
109 struct ibcs2_sys_alarm_args {
110 syscallarg(unsigned) sec;
111 };
112
113 struct ibcs2_sys_fstat_args {
114 syscallarg(int) fd;
115 syscallarg(struct ibcs2_stat *) st;
116 };
117
118 struct ibcs2_sys_utime_args {
119 syscallarg(char *) path;
120 syscallarg(struct ibcs2_utimbuf *) buf;
121 };
122
123 struct ibcs2_sys_access_args {
124 syscallarg(char *) path;
125 syscallarg(int) flags;
126 };
127
128 struct ibcs2_sys_nice_args {
129 syscallarg(int) incr;
130 };
131
132 struct ibcs2_sys_statfs_args {
133 syscallarg(char *) path;
134 syscallarg(struct ibcs2_statfs *) buf;
135 syscallarg(int) len;
136 syscallarg(int) fstype;
137 };
138
139 struct ibcs2_sys_kill_args {
140 syscallarg(int) pid;
141 syscallarg(int) signo;
142 };
143
144 struct ibcs2_sys_fstatfs_args {
145 syscallarg(int) fd;
146 syscallarg(struct ibcs2_statfs *) buf;
147 syscallarg(int) len;
148 syscallarg(int) fstype;
149 };
150
151 struct ibcs2_sys_pgrpsys_args {
152 syscallarg(int) type;
153 syscallarg(caddr_t) dummy;
154 syscallarg(int) pid;
155 syscallarg(int) pgid;
156 };
157
158 struct ibcs2_sys_times_args {
159 syscallarg(struct tms *) tp;
160 };
161
162 struct ibcs2_sys_plock_args {
163 syscallarg(int) cmd;
164 };
165
166 struct ibcs2_sys_setgid_args {
167 syscallarg(int) gid;
168 };
169
170 struct ibcs2_sys_sigsys_args {
171 syscallarg(int) sig;
172 syscallarg(ibcs2_sig_t) fp;
173 };
174
175 struct ibcs2_sys_msgsys_args {
176 syscallarg(int) which;
177 syscallarg(int) a2;
178 syscallarg(int) a3;
179 syscallarg(int) a4;
180 syscallarg(int) a5;
181 syscallarg(int) a6;
182 };
183
184 struct ibcs2_sys_sysi86_args {
185 syscallarg(int) cmd;
186 syscallarg(int) arg;
187 };
188
189 struct ibcs2_sys_shmsys_args {
190 syscallarg(int) which;
191 syscallarg(int) a2;
192 syscallarg(int) a3;
193 syscallarg(int) a4;
194 };
195
196 struct ibcs2_sys_semsys_args {
197 syscallarg(int) which;
198 syscallarg(int) a2;
199 syscallarg(int) a3;
200 syscallarg(int) a4;
201 syscallarg(int) a5;
202 };
203
204 struct ibcs2_sys_ioctl_args {
205 syscallarg(int) fd;
206 syscallarg(int) cmd;
207 syscallarg(caddr_t) data;
208 };
209
210 struct ibcs2_sys_uadmin_args {
211 syscallarg(int) cmd;
212 syscallarg(int) func;
213 syscallarg(caddr_t) data;
214 };
215
216 struct ibcs2_sys_utssys_args {
217 syscallarg(int) a1;
218 syscallarg(int) a2;
219 syscallarg(int) flag;
220 };
221
222 struct ibcs2_sys_execve_args {
223 syscallarg(char *) path;
224 syscallarg(char **) argp;
225 syscallarg(char **) envp;
226 };
227
228 struct ibcs2_sys_fcntl_args {
229 syscallarg(int) fd;
230 syscallarg(int) cmd;
231 syscallarg(char *) arg;
232 };
233
234 struct ibcs2_sys_ulimit_args {
235 syscallarg(int) cmd;
236 syscallarg(int) newlimit;
237 };
238
239 struct ibcs2_sys_rmdir_args {
240 syscallarg(char *) path;
241 };
242
243 struct ibcs2_sys_mkdir_args {
244 syscallarg(char *) path;
245 syscallarg(int) mode;
246 };
247
248 struct ibcs2_sys_getdents_args {
249 syscallarg(int) fd;
250 syscallarg(char *) buf;
251 syscallarg(int) nbytes;
252 };
253
254 struct ibcs2_sys_sysfs_args {
255 syscallarg(int) cmd;
256 syscallarg(caddr_t) d1;
257 syscallarg(char *) buf;
258 };
259
260 struct ibcs2_sys_getmsg_args {
261 syscallarg(int) fd;
262 syscallarg(struct ibcs2_stropts *) ctl;
263 syscallarg(struct ibcs2_stropts *) dat;
264 syscallarg(int *) flags;
265 };
266
267 struct ibcs2_sys_putmsg_args {
268 syscallarg(int) fd;
269 syscallarg(struct ibcs2_stropts *) ctl;
270 syscallarg(struct ibcs2_stropts *) dat;
271 syscallarg(int) flags;
272 };
273
274 struct ibcs2_sys_symlink_args {
275 syscallarg(char *) path;
276 syscallarg(char *) link;
277 };
278
279 struct ibcs2_sys_lstat_args {
280 syscallarg(char *) path;
281 syscallarg(struct ibcs2_stat *) st;
282 };
283
284 struct ibcs2_sys_readlink_args {
285 syscallarg(char *) path;
286 syscallarg(char *) buf;
287 syscallarg(int) count;
288 };
289
290 struct xenix_sys_rdchk_args {
291 syscallarg(int) fd;
292 };
293
294 struct xenix_sys_chsize_args {
295 syscallarg(int) fd;
296 syscallarg(long) size;
297 };
298
299 struct xenix_sys_ftime_args {
300 syscallarg(struct xenix_timeb *) tp;
301 };
302
303 struct xenix_sys_nap_args {
304 syscallarg(int) millisec;
305 };
306
307 struct ibcs2_sys_eaccess_args {
308 syscallarg(char *) path;
309 syscallarg(int) flags;
310 };
311
312 struct ibcs2_sys_sigaction_args {
313 syscallarg(int) signum;
314 syscallarg(struct ibcs2_sigaction *) nsa;
315 syscallarg(struct ibcs2_sigaction *) osa;
316 };
317
318 struct ibcs2_sys_sigprocmask_args {
319 syscallarg(int) how;
320 syscallarg(ibcs2_sigset_t *) set;
321 syscallarg(ibcs2_sigset_t *) oset;
322 };
323
324 struct ibcs2_sys_sigpending_args {
325 syscallarg(ibcs2_sigset_t *) mask;
326 };
327
328 struct ibcs2_sys_sigsuspend_args {
329 syscallarg(ibcs2_sigset_t *) mask;
330 };
331
332 struct ibcs2_sys_getgroups_args {
333 syscallarg(int) gidsetsize;
334 syscallarg(ibcs2_gid_t *) gidset;
335 };
336
337 struct ibcs2_sys_setgroups_args {
338 syscallarg(int) gidsetsize;
339 syscallarg(ibcs2_gid_t *) gidset;
340 };
341
342 struct ibcs2_sys_sysconf_args {
343 syscallarg(int) name;
344 };
345
346 struct ibcs2_sys_pathconf_args {
347 syscallarg(char *) path;
348 syscallarg(int) name;
349 };
350
351 struct ibcs2_sys_fpathconf_args {
352 syscallarg(int) fd;
353 syscallarg(int) name;
354 };
355
356 struct ibcs2_sys_rename_args {
357 syscallarg(char *) from;
358 syscallarg(char *) to;
359 };
360
361
362
363
364
365 int sys_nosys(struct proc *, void *, register_t *);
366 int sys_exit(struct proc *, void *, register_t *);
367 int sys_fork(struct proc *, void *, register_t *);
368 int ibcs2_sys_read(struct proc *, void *, register_t *);
369 int sys_write(struct proc *, void *, register_t *);
370 int ibcs2_sys_open(struct proc *, void *, register_t *);
371 int sys_close(struct proc *, void *, register_t *);
372 int ibcs2_sys_waitsys(struct proc *, void *, register_t *);
373 int ibcs2_sys_creat(struct proc *, void *, register_t *);
374 int sys_link(struct proc *, void *, register_t *);
375 int ibcs2_sys_unlink(struct proc *, void *, register_t *);
376 int ibcs2_sys_execv(struct proc *, void *, register_t *);
377 int ibcs2_sys_chdir(struct proc *, void *, register_t *);
378 int ibcs2_sys_time(struct proc *, void *, register_t *);
379 int ibcs2_sys_mknod(struct proc *, void *, register_t *);
380 int ibcs2_sys_chmod(struct proc *, void *, register_t *);
381 int ibcs2_sys_chown(struct proc *, void *, register_t *);
382 int sys_obreak(struct proc *, void *, register_t *);
383 int ibcs2_sys_stat(struct proc *, void *, register_t *);
384 int compat_43_sys_lseek(struct proc *, void *, register_t *);
385 int sys_getpid(struct proc *, void *, register_t *);
386 int ibcs2_sys_mount(struct proc *, void *, register_t *);
387 int ibcs2_sys_umount(struct proc *, void *, register_t *);
388 int ibcs2_sys_setuid(struct proc *, void *, register_t *);
389 int sys_getuid(struct proc *, void *, register_t *);
390 int ibcs2_sys_stime(struct proc *, void *, register_t *);
391 int ibcs2_sys_alarm(struct proc *, void *, register_t *);
392 int ibcs2_sys_fstat(struct proc *, void *, register_t *);
393 int ibcs2_sys_pause(struct proc *, void *, register_t *);
394 int ibcs2_sys_utime(struct proc *, void *, register_t *);
395 int ibcs2_sys_access(struct proc *, void *, register_t *);
396 int ibcs2_sys_nice(struct proc *, void *, register_t *);
397 int ibcs2_sys_statfs(struct proc *, void *, register_t *);
398 int sys_sync(struct proc *, void *, register_t *);
399 int ibcs2_sys_kill(struct proc *, void *, register_t *);
400 int ibcs2_sys_fstatfs(struct proc *, void *, register_t *);
401 int ibcs2_sys_pgrpsys(struct proc *, void *, register_t *);
402 int sys_dup(struct proc *, void *, register_t *);
403 int sys_opipe(struct proc *, void *, register_t *);
404 int ibcs2_sys_times(struct proc *, void *, register_t *);
405 int ibcs2_sys_plock(struct proc *, void *, register_t *);
406 int ibcs2_sys_setgid(struct proc *, void *, register_t *);
407 int sys_getgid(struct proc *, void *, register_t *);
408 int ibcs2_sys_sigsys(struct proc *, void *, register_t *);
409 #ifdef SYSVMSG
410 int ibcs2_sys_msgsys(struct proc *, void *, register_t *);
411 #else
412 #endif
413 int ibcs2_sys_sysi86(struct proc *, void *, register_t *);
414 #ifdef SYSVSHM
415 int ibcs2_sys_shmsys(struct proc *, void *, register_t *);
416 #else
417 #endif
418 #ifdef SYSVSEM
419 int ibcs2_sys_semsys(struct proc *, void *, register_t *);
420 #else
421 #endif
422 int ibcs2_sys_ioctl(struct proc *, void *, register_t *);
423 int ibcs2_sys_uadmin(struct proc *, void *, register_t *);
424 int ibcs2_sys_utssys(struct proc *, void *, register_t *);
425 int ibcs2_sys_execve(struct proc *, void *, register_t *);
426 int sys_umask(struct proc *, void *, register_t *);
427 int sys_chroot(struct proc *, void *, register_t *);
428 int ibcs2_sys_fcntl(struct proc *, void *, register_t *);
429 int ibcs2_sys_ulimit(struct proc *, void *, register_t *);
430 int ibcs2_sys_rmdir(struct proc *, void *, register_t *);
431 int ibcs2_sys_mkdir(struct proc *, void *, register_t *);
432 int ibcs2_sys_getdents(struct proc *, void *, register_t *);
433 int ibcs2_sys_sysfs(struct proc *, void *, register_t *);
434 int ibcs2_sys_getmsg(struct proc *, void *, register_t *);
435 int ibcs2_sys_putmsg(struct proc *, void *, register_t *);
436 int sys_poll(struct proc *, void *, register_t *);
437 int ibcs2_sys_symlink(struct proc *, void *, register_t *);
438 int ibcs2_sys_lstat(struct proc *, void *, register_t *);
439 int ibcs2_sys_readlink(struct proc *, void *, register_t *);
440 int sys_sigreturn(struct proc *, void *, register_t *);
441 int xenix_sys_rdchk(struct proc *, void *, register_t *);
442 int xenix_sys_chsize(struct proc *, void *, register_t *);
443 int xenix_sys_ftime(struct proc *, void *, register_t *);
444 int xenix_sys_nap(struct proc *, void *, register_t *);
445 int sys_select(struct proc *, void *, register_t *);
446 int ibcs2_sys_eaccess(struct proc *, void *, register_t *);
447 int ibcs2_sys_sigaction(struct proc *, void *, register_t *);
448 int ibcs2_sys_sigprocmask(struct proc *, void *, register_t *);
449 int ibcs2_sys_sigpending(struct proc *, void *, register_t *);
450 int ibcs2_sys_sigsuspend(struct proc *, void *, register_t *);
451 int ibcs2_sys_getgroups(struct proc *, void *, register_t *);
452 int ibcs2_sys_setgroups(struct proc *, void *, register_t *);
453 int ibcs2_sys_sysconf(struct proc *, void *, register_t *);
454 int ibcs2_sys_pathconf(struct proc *, void *, register_t *);
455 int ibcs2_sys_fpathconf(struct proc *, void *, register_t *);
456 int ibcs2_sys_rename(struct proc *, void *, register_t *);