NetBSD-5.0.2/sys/compat/ibcs2/syscalls.master

	$NetBSD: syscalls.master,v 1.35 2008/06/19 12:24:22 hans Exp $

;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93

; NetBSD COMPAT_IBCS2 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 names and switch definition files only.

#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
#endif

#include <sys/param.h>
#include <sys/systm.h>
#include <sys/signal.h>
#include <sys/mount.h>
#include <sys/sched.h>
#include <sys/syscallargs.h>
#include <compat/ibcs2/ibcs2_types.h>
#include <compat/ibcs2/ibcs2_signal.h>
#include <compat/ibcs2/ibcs2_syscallargs.h>
#include <compat/ibcs2/ibcs2_statfs.h>

%%

0	NOARGS		{ int sys_nosys(void); } syscall
1	NOARGS		{ int sys_exit(int rval); }
2	NOARGS		{ int sys_fork(void); }
3	STD		{ int ibcs2_sys_read(int fd, char *buf, u_int nbytes); }
4	NOARGS		{ int sys_write(int fd, char *buf, u_int nbytes); }
5	STD		{ int ibcs2_sys_open(const char *path, int flags, \
			    int mode); }
6	NOARGS		{ int sys_close(int fd); }
7	STD		{ int ibcs2_sys_waitsys(int a1, int a2, int a3); }
8	STD		{ int ibcs2_sys_creat(const char *path, int mode); }
9	NOARGS		{ int sys_link(char *path, char *link); }
10	NOARGS		{ int sys_unlink(const char *path); }
11	STD		{ int ibcs2_sys_execv(const char *path, char **argp); }
12	NOARGS		{ int sys_chdir(const char *path); }
13	STD		{ int ibcs2_sys_time(ibcs2_time_t *tp); }
14	STD		{ int ibcs2_sys_mknod(const char* path, int mode, \
			    int dev); }
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
16	NOARGS		{ int sys___posix_chown(const char *path, int uid, \
			    int gid); }
17	NOARGS		{ int sys_obreak(void *nsize); }
18	STD		{ int ibcs2_sys_stat(const char* path, \
			    struct ibcs2_stat *st); }
19	NOARGS		{ long compat_43_sys_lseek(int fd, long offset, \
			    int whence); }
20	NOARGS		{ pid_t sys_getpid_with_ppid(void); }
21	STD		{ int ibcs2_sys_mount(char *special, char *dir, \
			    int flags, int fstype, char *data, int len); }
22	STD		{ int ibcs2_sys_umount(char *name); }
23	STD		{ int ibcs2_sys_setuid(int uid); }
24	NOARGS		{ uid_t sys_getuid_with_euid(void); }
25	STD		{ int ibcs2_sys_stime(long *timep); }
26	UNIMPL		ibcs2_ptrace
27	STD		{ int ibcs2_sys_alarm(unsigned sec); }
28	STD		{ int ibcs2_sys_fstat(int fd, struct ibcs2_stat *st); }
29	STD		{ int ibcs2_sys_pause(void); }
30	STD		{ int ibcs2_sys_utime(const char *path, \
			    struct ibcs2_utimbuf *buf); }
31	UNIMPL		was stty
32	STD		{ int ibcs2_sys_gtty(int fd, struct ibcs2_sgttyb *tb); }
33	STD		{ int ibcs2_sys_access(const char *path, int flags); }
34	STD		{ int ibcs2_sys_nice(int incr); }
35	STD		{ int ibcs2_sys_statfs(const char *path, \
			    struct ibcs2_statfs *buf, int len, int fstype); }
36	NOARGS		{ int sys_sync(void); }
37	STD		{ int ibcs2_sys_kill(int pid, int signo); }
38	STD		{ int ibcs2_sys_fstatfs(int fd, \
			    struct ibcs2_statfs *buf, int len, int fstype); }
39	STD		{ int ibcs2_sys_pgrpsys(int type, void *dummy, \
			    int pid, int pgid); }
40	UNIMPL		ibcs2_xenix
41	NOARGS		{ int sys_dup(u_int fd); }
42	NOARGS		{ int sys_pipe(void); }
43	STD		{ int ibcs2_sys_times(struct tms *tp); }
44	UNIMPL		profil
45	STD		{ int ibcs2_sys_plock(int cmd); }
46	STD		{ int ibcs2_sys_setgid(int gid); }
47	NOARGS		{ gid_t sys_getgid_with_egid(void); }
48	STD		{ int ibcs2_sys_sigsys(int sig, ibcs2_sig_t fp); }
#ifdef SYSVMSG
49	STD		{ int ibcs2_sys_msgsys(int which, int a2, int a3, \
			    int a4, int a5, int a6); }
#else
49	UNIMPL		msgsys
#endif
50	STD		{ int ibcs2_sys_sysmachine(int cmd, int arg); }
51	UNIMPL		ibcs2_acct
#ifdef SYSVSHM
52	STD		{ int ibcs2_sys_shmsys(int which, int a2, int a3, \
			    int a4); }
#else
52	UNIMPL		shmsys
#endif
#ifdef SYSVSEM
53	STD		{ int ibcs2_sys_semsys(int which, int a2, int a3, \
			    int a4, int a5); }
#else
53	UNIMPL		semsys
#endif
54	STD		{ int ibcs2_sys_ioctl(int fd, int cmd, void *data); }
55	STD		{ int ibcs2_sys_uadmin(int cmd, int func, \
			    void *data); }
56	UNIMPL
57	STD		{ int ibcs2_sys_utssys(int a1, int a2, int flag); }
58	NOARGS		{ int sys_fsync(int fd); }
59	STD		{ int ibcs2_sys_execve(const char *path, char **argp, \
			    char **envp); }
60	NOARGS		{ int sys_umask(int newmask); }
61	NOARGS		{ int sys_chroot(char *path); }
62	STD		{ int ibcs2_sys_fcntl(int fd, int cmd, char *arg); }
63	STD		{ long ibcs2_sys_ulimit(int cmd, int newlimit); }
64	UNIMPL		reserved for unix/pc
65	UNIMPL		reserved for unix/pc
66	UNIMPL		reserved for unix/pc
67	UNIMPL		reserved for unix/pc
68	UNIMPL		reserved for unix/pc
69	UNIMPL		reserved for unix/pc
70	OBSOL		rfs_advfs
71	OBSOL		rfs_unadvfs
72	OBSOL		rfs_rmount
73	OBSOL		rfs_rumount
74	OBSOL		rfs_rfstart
75	OBSOL		rfs_sigret
76	OBSOL		rfs_rdebug
77	OBSOL		rfs_rfstop
78	UNIMPL		rfs_rfsys
79	NOARGS		{ int sys_rmdir(const char *path); }
80	NOARGS		{ int sys_mkdir(const char *path, int mode); }
81	STD		{ int ibcs2_sys_getdents(int fd, char *buf, \
			    int nbytes); }
82	UNIMPL
83	UNIMPL
84	STD		{ int ibcs2_sys_sysfs(int cmd, void *d1, char *buf); }
85	STD		{ int ibcs2_sys_getmsg(int fd, \
			    struct ibcs2_stropts *ctl, \
			    struct ibcs2_stropts *dat, int *flags); }
86	STD		{ int ibcs2_sys_putmsg(int fd, \
			    struct ibcs2_stropts *ctl, \
			    struct ibcs2_stropts *dat, int flags); }
87	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
			    int timeout); }
88	UNIMPL
89	UNIMPL
90	NOARGS		{ int sys_symlink(const char *path, \
			    const char *link); }
91	STD		{ int ibcs2_sys_lstat(const char *path, \
			    struct ibcs2_stat *st); }
92	NOARGS		{ int sys_readlink(const char *path, char *buf, \
			    int count); }
93	NOARGS		{ int sys_fchmod(int fd, int mode); }
94	NOARGS		{ int sys___posix_fchown(int fd, int uid, int gid); } \
			    fchown
95	UNIMPL
96	NOARGS		{ int compat_16_sys___sigreturn14(struct sigcontext \
			    *sigcntxp); } sigreturn
97	STD		{ int ibcs2_sys_sigaltstack( \
			    const struct ibcs2_sigaltstack *nss, \
			    struct ibcs2_sigaltstack *oss); }
98	UNIMPL
99	UNIMPL
100	UNIMPL		getcontext/setcontext/sigsetjmp
101	UNIMPL
102	UNIMPL
103	STD		{ int ibcs2_sys_statvfs(const char *path, \
			    struct ibcs2_statvfs *buf); }
104	STD		{ int ibcs2_sys_fstatvfs(int fd, \
			    struct ibcs2_statvfs *buf); }
105	UNIMPL
106	UNIMPL
107	UNIMPL		waitid
108	UNIMPL		sigsendset
109	UNIMPL
110	UNIMPL
111	UNIMPL
112	UNIMPL		priocntl
113	UNIMPL
114	UNIMPL
115	STD		{ ibcs2_caddr_t ibcs2_sys_mmap(ibcs2_caddr_t addr, \
			    ibcs2_size_t len, int prot, int flags, int fd, \
			    ibcs2_off_t off); }
116     NOARGS          { int sys_mprotect(void *addr, int len, int prot); }
117     NOARGS          { int sys_munmap(void *addr, int len); }
118	UNIMPL
119	UNIMPL		vfork
120	NOARGS		{ int sys_fchdir(int fd); }
121	NOARGS		{ int sys_readv(int fd, struct iovec *iovp, u_int iovcnt); }
122	NOARGS		{ int sys_writev(int fd, struct iovec *iovp, u_int iovcnt); }
123	UNIMPL		xstat
124	UNIMPL		lxstat
125	UNIMPL		fxstat
126	UNIMPL
127	UNIMPL
128	UNIMPL		setrlimit
129	UNIMPL		getrlimit
130	UNIMPL		lchown
131	STD		{ int ibcs2_sys_memcntl(ibcs2_caddr_t addr, \
                            ibcs2_size_t len, int cmd, ibcs2_caddr_t arg, \
                            int attr, int mask); }
132	UNIMPL		getpmsg
133	UNIMPL		putpmsg
134	UNIMPL
135	UNIMPL
136	UNIMPL		setegid
137	UNIMPL
138	UNIMPL		adjtime
139	UNIMPL
140	UNIMPL
141	UNIMPL		seteuid
142	UNIMPL
143	UNIMPL
144	UNIMPL
145	UNIMPL
146	UNIMPL
147	UNIMPL
148	UNIMPL
149	UNIMPL
150	UNIMPL
151	UNIMPL
152	UNIMPL
153	UNIMPL
154	UNIMPL
155	UNIMPL
156	UNIMPL
157	UNIMPL
158	UNIMPL
159	UNIMPL
160	UNIMPL
161	UNIMPL
162	UNIMPL
163	UNIMPL
164	UNIMPL
165	UNIMPL
166	UNIMPL
167	UNIMPL
168	UNIMPL
169	UNIMPL
170	UNIMPL
171	STD		{ int ibcs2_sys_gettimeofday(struct timeval *tp); }
172	STD		{ int ibcs2_sys_settimeofday(struct timeval *tp); }
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	NOARGS		{ int compat_43_sys_truncate(char *path, long len); }
192	NOARGS		{ int compat_43_sys_ftruncate(int fd, long len); }
193	UNIMPL
194	UNIMPL
195	UNIMPL
196	UNIMPL
197	UNIMPL
198	UNIMPL
199	UNIMPL
200	UNIMPL
201	STD		{ int xenix_sys_locking(int fd, int blk, int size); }
202	UNIMPL		xenix_creatsem
203	UNIMPL		xenix_opensem
204	UNIMPL		xenix_sigsem
205	UNIMPL		xenix_waitsem
206	UNIMPL		xenix_nbwaitsem
207	STD		{ int xenix_sys_rdchk(int fd); }
208	UNIMPL
209	UNIMPL
210	STD		{ int xenix_sys_chsize(int fd, long size); }
211	STD		{ int xenix_sys_ftime(struct xenix_timeb *tp); }
212	STD		{ int xenix_sys_nap(long millisec); }
213	UNIMPL		xenix_sdget
214	UNIMPL		xenix_sdfree
215	UNIMPL		xenix_sdenter
216	UNIMPL		xenix_sdleave
217	UNIMPL		xenix_sdgetv
218	UNIMPL		xenix_sdwaitv
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		xenix_proctl
233	UNIMPL		xenix_execseg
234	UNIMPL		xenix_unexecseg
235	UNIMPL
236	NOARGS		{ int sys_select(u_int nd, fd_set *in, fd_set *ou, \
			    fd_set *ex, struct timeval *tv); }
237	STD		{ int ibcs2_sys_eaccess(const char *path, int flags); }
238	UNIMPL		xenix_paccess
239	STD		{ int ibcs2_sys_sigaction(int signum, \
			    const struct ibcs2_sigaction *nsa, \
			    struct ibcs2_sigaction *osa); }
240	STD		{ int ibcs2_sys_sigprocmask(int how, \
			    const ibcs2_sigset_t *set, \
			    ibcs2_sigset_t *oset); }
241	STD		{ int ibcs2_sys_sigpending( \
			    ibcs2_sigset_t *set); }
242	STD		{ int ibcs2_sys_sigsuspend( \
			    const ibcs2_sigset_t *set); }
243	STD		{ int ibcs2_sys_getgroups(int gidsetsize, \
			    ibcs2_gid_t *gidset); }
244	STD		{ int ibcs2_sys_setgroups(int gidsetsize, \
			    ibcs2_gid_t *gidset); }
245	STD		{ int ibcs2_sys_sysconf(int name); }
246	STD		{ int ibcs2_sys_pathconf(char *path, int name); }
247	STD		{ int ibcs2_sys_fpathconf(int fd, int name); }
248	NOARGS		{ int sys___posix_rename(const char *from, \
			    const char *to); }
249	UNIMPL
250	STD		{ int ibcs2_sys_scoinfo(struct scoutsname *bp, int len); }
251	UNIMPL
252	UNIMPL
253	UNIMPL
254	UNIMPL
255	UNIMPL		getitimer
256	UNIMPL		setitimer
257	UNIMPL
258	UNIMPL		setreuid
259	UNIMPL		setregid