1	$NetBSD: syscalls.master,v 1.47 2008/12/02 13:45:02 njoly Exp $
2
3;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
4
5; NetBSD COMPAT_OSF1 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#if defined(_KERNEL_OPT)
35#include "opt_compat_43.h"
36#endif
37
38#include <sys/param.h>
39#include <sys/systm.h>
40#include <sys/signal.h>
41#include <sys/mount.h>
42#include <sys/poll.h>
43#include <sys/syscallargs.h>
44
45#include <compat/osf1/osf1.h>
46#include <compat/osf1/osf1_syscallargs.h>
47
48%%
49
500	NOARGS		{ int|sys||nosys(void); } syscall
511	NOARGS		{ int|sys||exit(int rval); }
522	NOARGS		{ int|sys||fork(void); }
533	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
544	NOARGS		{ int|sys||write(int fd, const char *buf, \
55			    u_int nbyte); }
565	UNIMPL		old open
576	NOARGS		{ int|sys||close(int fd); }
587	STD		{ int|osf1_sys||wait4(int pid, int *status, \
59			    int options, struct osf1_rusage *rusage); }
608	UNIMPL		old creat
619	NOARGS		{ int|sys||link(const char *path, const char *link); }
6210	NOARGS		{ int|sys||unlink(const char *path); }
6311	UNIMPL		execv
6412	NOARGS		{ int|sys||chdir(const char *path); }
6513	NOARGS		{ int|sys||fchdir(int fd); }
6614	STD		{ int|osf1_sys||mknod(const char *path, int mode, \
67			    int dev); }
6815	NOARGS		{ int|sys||chmod(const char *path, int mode); }
6916	NOARGS		{ int|sys||__posix_chown(const char *path, int uid, \
70			    int gid); }
7117	NOARGS		{ int|sys||obreak(char *nsize); }
7218	STD		{ int|osf1_sys||getfsstat(struct osf1_statfs *buf, \
73			    long bufsize, int flags); }
7419	STD		{ off_t|osf1_sys||lseek(int fd, off_t offset, \
75			    int whence); }
7620	NOARGS		{ pid_t|sys||getpid_with_ppid(void); }
7721	STD		{ int|osf1_sys||mount(int type, const char *path, \
78			    int flags, void *data); }
7922	STD		{ int|osf1_sys||unmount(const char *path, int flags); }
8023	STD		{ int|osf1_sys||setuid(uid_t uid); }
8124	NOARGS		{ uid_t|sys||getuid_with_euid(void); }
8225	UNIMPL		exec_with_loader
8326	UNIMPL		ptrace
8427	STD		{ int|osf1_sys||recvmsg_xopen(int s, \
85			    struct osf1_msghdr_xopen *msg, int flags); }
8628	STD		{ int|osf1_sys||sendmsg_xopen(int s, \
87			    const struct osf1_msghdr_xopen *msg, int flags); }
8829	UNIMPL		recvfrom
8930	UNIMPL		accept
9031	UNIMPL		getpeername
9132	UNIMPL		getsockname
9233	STD		{ int|osf1_sys||access(const char *path, int flags); }
9334	UNIMPL		chflags
9435	UNIMPL		fchflags
9536	NOARGS		{ int|sys||sync(void); }
9637	NOARGS		{ int|sys||kill(int pid, int signum); }
9738	UNIMPL		old stat
9839	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
9940	UNIMPL		old lstat
10041	NOARGS		{ int|sys||dup(u_int fd); }
10142	NOARGS		{ int|sys||pipe(void); }
10243	STD		{ int|osf1_sys||set_program_attributes( \
103                          void *taddr, unsigned long tsize, \
104                          void *daddr, unsigned long dsize); }
10544	UNIMPL		profil
10645	STD		{ int|osf1_sys||open(const char *path, int flags, \
107			    int mode); }
10846	OBSOL		sigaction
10947	NOARGS		{ gid_t|sys||getgid_with_egid(void); }
110; XXX
11148	NOARGS		{ int|compat_13_sys||sigprocmask(int how, \
112			    sigset13_t mask); }
11349	NOARGS		{ int|sys||__getlogin(char *namebuf, u_int namelen); }
11450	NOARGS		{ int|sys||__setlogin(const char *namebuf); }
11551	NOARGS		{ int|sys||acct(const char *path); }
11652	UNIMPL		sigpending
11753	STD		{ int|osf1_sys||classcntl(int opcode, int arg1, \
118			    int arg2, int arg3); }
11954	STD		{ int|osf1_sys||ioctl(int fd, int com, void *data); }
12055	STD		{ int|osf1_sys||reboot(int opt); }
12156	NOARGS		{ int|sys||revoke(const char *path); }
12257	NOARGS		{ int|sys||symlink(const char *path, \
123			    const char *link); }
12458	NOARGS		{ int|sys||readlink(const char *path, char *buf, \
125			    int count); }
12659	STD		{ int|osf1_sys||execve(const char *path, \
127			    char * const *argp, char * const *envp); }
12860	NOARGS		{ int|sys||umask(int newmask); }
12961	NOARGS		{ int|sys||chroot(const char *path); }
13062	UNIMPL		old fstat
13163	NOARGS		{ int|sys||getpgrp(void); }
13264	NOARGS		{ int|compat_43_sys||getpagesize(void); }
13365	UNIMPL		mremap
13466	NOARGS		{ int|sys||vfork(void); }
13567	STD		{ int|osf1_sys||stat(const char *path, \
136			    struct osf1_stat *ub); }
13768	STD		{ int|osf1_sys||lstat(const char *path, \
138			    struct osf1_stat *ub); }
13969	UNIMPL		sbrk
14070	UNIMPL		sstk
14171	STD		{ void *|osf1_sys||mmap(void *addr, size_t len, \
142			    int prot, int flags, int fd, off_t pos); }
14372	UNIMPL		ovadvise
14473	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
14574	STD		{ int|osf1_sys||mprotect(void *addr, size_t len, \
146			    int prot); }
14775	STD		{ int|osf1_sys||madvise(void *addr, size_t len, \
148			    int behav); }
14976	UNIMPL		old vhangup
15077	UNIMPL		kmodcall
15178	UNIMPL		mincore
15279	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
15380	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
15481	UNIMPL		old getpgrp
155; OSF/1 setpgrp(); identical in function to setpgid().  XXX
15682	NOARGS		{ int|sys||setpgid(int pid, int pgid); } setpgrp
15783	STD		{ int|osf1_sys||setitimer(u_int which, \
158			    struct osf1_itimerval *itv, \
159			    struct osf1_itimerval *oitv); }
16084	UNIMPL		old wait
16185	UNIMPL		table
16286	STD		{ int|osf1_sys||getitimer(u_int which, struct osf1_itimerval *itv); }
16387	NOARGS		{ int|compat_43_sys||gethostname(char *hostname, \
164			    u_int len); }
16588	NOARGS		{ int|compat_43_sys||sethostname(const char *hostname, \
166			    u_int len); }
16789	NOARGS		{ int|compat_43_sys||getdtablesize(void); }
16890	NOARGS		{ int|sys||dup2(u_int from, u_int to); }
16991	STD		{ int|osf1_sys||fstat(int fd, void *sb); }
17092	STD		{ int|osf1_sys||fcntl(int fd, int cmd, void *arg); }
17193	STD		{ int|osf1_sys||select(u_int nd, fd_set *in, \
172			    fd_set *ou, fd_set *ex, struct osf1_timeval *tv); }
173; maybe XXX
17494	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
175			    int timeout); }
17695	NOARGS		{ int|sys||fsync(int fd); }
17796	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
17897	STD		{ int|osf1_sys||socket(int domain, int type, \
179			    int protocol); }
18098	NOARGS		{ int|sys||connect(int s, void *name, int namelen); }
18199	NOARGS		{ int|compat_43_sys||accept(int s, void *name, \
182			    int *anamelen); }
183100	NOARGS		{ int|sys||getpriority(int which, int who); }
184101	NOARGS		{ int|compat_43_sys||send(int s, void *buf, int len, \
185			    int flags); }
186102	NOARGS		{ int|compat_43_sys||recv(int s, void *buf, int len, \
187			    int flags); }
188103	NOARGS		{ int|compat_13_sys||sigreturn(\
189			    struct sigcontext13 *sigcntxp); }
190104	NOARGS		{ int|sys||bind(int s, void *name, int namelen); }
191105	NOARGS		{ int|sys||setsockopt(int s, int level, int name, \
192			    void *val, int valsize); }
193106	NOARGS		{ int|sys||listen(int s, int backlog); }
194107	UNIMPL		plock
195108	UNIMPL		old sigvec
196109	UNIMPL		old sigblock
197110	UNIMPL		old sigsetmask
198111	NOARGS		{ int|compat_13_sys||sigsuspend(int mask); }
199112	NOARGS		{ int|compat_43_sys||sigstack(struct sigstack *nss, \
200			    struct sigstack *oss); }
201113	UNIMPL		old recvmsg
202114	UNIMPL		old sendmsg
203115	OBSOL		vtrace
204116	STD		{ int|osf1_sys||gettimeofday(struct osf1_timeval *tp, \
205			    struct osf1_timezone *tzp); }
206117	STD		{ int|osf1_sys||getrusage(int who, \
207			    struct osf1_rusage *rusage); }
208; XXX
209118	NOARGS		{ int|sys||getsockopt(int s, int level, int name, \
210			    void *val, int *avalsize); }
211119	UNIMPL
212120	STD		{ int|osf1_sys||readv(int fd, \
213			    struct osf1_iovec *iovp, u_int iovcnt); }
214121	STD		{ int|osf1_sys||writev(int fd, \
215			    struct osf1_iovec *iovp, u_int iovcnt); }
216122	STD		{ int|osf1_sys||settimeofday(struct osf1_timeval *tv, \
217			    struct osf1_timezone *tzp); }
218123	NOARGS		{ int|sys||__posix_fchown(int fd, int uid, int gid); }
219124	NOARGS		{ int|sys||fchmod(int fd, int mode); }
220125	NOARGS		{ int|compat_43_sys||recvfrom(int s, void *buf, \
221			    size_t len, int flags, void *from, \
222			    int *fromlenaddr); }
223126	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
224127	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
225128	NOARGS		{ int|sys||__posix_rename(const char *from, \
226			    const char *to); }
227129	STD		{ int|osf1_sys||truncate(const char *path, \
228			    off_t length); }
229130	STD		{ int|osf1_sys||ftruncate(int fd, off_t length); }
230131	NOARGS		{ int|sys||flock(int fd, int operation); }
231132	STD		{ int|osf1_sys||setgid(gid_t gid); }
232133	STD		{ int|osf1_sys||sendto(int s, void *buf, size_t len, \
233			    int flags, struct sockaddr *to, int tolen); }
234134	NOARGS		{ int|sys||shutdown(int s, int how); }
235135	STD		{ int|osf1_sys||socketpair(int domain, int type, \
236			    int protocol, int *rsv); }
237136	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
238137	NOARGS		{ int|sys||rmdir(const char *path); }
239138	STD		{ int|osf1_sys||utimes(const char *path, \
240			    const struct osf1_timeval *tptr); }
241139	OBSOL		4.2 sigreturn
242140	UNIMPL		adjtime
243141	NOARGS		{ int|compat_43_sys||getpeername(int fdes, \
244			    void *asa, int *alen); }
245142	NOARGS		{ int32_t|compat_43_sys||gethostid(void); }
246143	NOARGS		{ int|compat_43_sys||sethostid(int32_t hostid); }
247; XXX
248144	STD		{ int|osf1_sys||getrlimit(u_int which, \
249			    struct rlimit *rlp); }
250; XXX
251145	STD		{ int|osf1_sys||setrlimit(u_int which, \
252			    struct rlimit *rlp); }
253146	UNIMPL		old killpg
254147	NOARGS		{ int|sys||setsid(void); }
255148	UNIMPL		quotactl
256149	NOARGS		{ int|compat_43_sys||quota(void); }
257150	NOARGS		{ int|compat_43_sys||getsockname(int fdec, \
258			    void *asa, int *alen); }
259151	UNIMPL		pread
260152	UNIMPL		pwrite
261153	UNIMPL		pid_block
262154	UNIMPL		pid_unblock
263155	UNIMPL		signal_urti
264156	STD		{ int|osf1_sys||sigaction(int signum, \
265			    struct osf1_sigaction *nsa, \
266			    struct osf1_sigaction *osa); }
267157	UNIMPL		sigwaitprim
268158	UNIMPL		nfssvc
269159	STD		{ int|osf1_sys||getdirentries(int fd, char *buf, \
270			    int nbytes, long *basep); }
271160	STD		{ int|osf1_sys||statfs(const char *path, \
272			    struct osf1_statfs *buf, int len); }
273161	STD		{ int|osf1_sys||fstatfs(int fd, \
274			    struct osf1_statfs *buf, int len); }
275162	UNIMPL
276163	UNIMPL		async_daemon
277164	UNIMPL		getfh
278165	NOARGS		{ int|compat_09_sys||getdomainname(char *domainname, \
279			    int len); }
280166	NOARGS		{ int|compat_09_sys||setdomainname(char *domainname, \
281			    int len); }
282167	UNIMPL
283168	UNIMPL
284169	UNIMPL		exportfs
285170	UNIMPL
286171	UNIMPL
287172	UNIMPL		alt msgctl
288173	UNIMPL		alt msgget
289174	UNIMPL		alt msgrcv
290175	UNIMPL		alt msgsnd
291176	UNIMPL		alt semctl
292177	UNIMPL		alt semget
293178	UNIMPL		alt semop
294179	UNIMPL		alt uname
295180	UNIMPL
296181	UNIMPL		alt plock
297182	UNIMPL		lockf
298183	UNIMPL
299184	UNIMPL		getmnt
300185	UNIMPL
301186	UNIMPL		unmount
302187	UNIMPL		alt sigpending
303188	UNIMPL		alt setsid
304189	UNIMPL
305190	UNIMPL
306191	UNIMPL
307192	UNIMPL
308193	UNIMPL
309194	UNIMPL
310195	UNIMPL
311196	UNIMPL
312197	UNIMPL
313198	UNIMPL
314199	UNIMPL		swapon
315200	UNIMPL		msgctl
316201	UNIMPL		msgget
317202	UNIMPL		msgrcv
318203	UNIMPL		msgsnd
319204	UNIMPL		semctl
320205	UNIMPL		semget
321206	UNIMPL		semop
322207	STD		{ int|osf1_sys||uname(struct osf1_uname *name); }
323208	NOARGS		{ int|sys||__posix_lchown(const char *path, int uid, \
324			    int gid); }
325209	STD		{ void *|osf1_sys||shmat(int shmid, \
326			    const void *shmaddr, int shmflg); }
327210	STD		{ int|osf1_sys||shmctl(int shmid, int cmd, \
328			    struct osf1_shmid_ds *buf); }
329211	STD		{ int|osf1_sys||shmdt(const void *shmaddr); }
330212	STD		{ int|osf1_sys||shmget(osf1_key_t key, size_t size, \
331			    int flags); }
332213	UNIMPL		mvalid
333214	UNIMPL		getaddressconf
334215	UNIMPL		msleep
335216	UNIMPL		mwakeup
336217	UNIMPL		msync
337218	UNIMPL		signal
338219	UNIMPL		utc gettime
339220	UNIMPL		utc adjtime
340221	UNIMPL
341222	UNIMPL		security
342223	UNIMPL		kloadcall
343224	STD		{ int|osf1_sys||stat2(const char *path, \
344			    struct osf1_stat2 *ub); }
345225	STD		{ int|osf1_sys||lstat2(const char *path, \
346			    struct osf1_stat2 *ub); }
347226	STD		{ int|osf1_sys||fstat2(int fd, \
348			    struct osf1_stat2 *sb); }
349227	UNIMPL		statfs2
350228	UNIMPL		fstatfs2
351229	UNIMPL		getfsstat2
352230	UNIMPL
353231	UNIMPL
354232	UNIMPL
355233	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
356234	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
357235	STD		{ int|osf1_sys||sigaltstack( \
358			    struct osf1_sigaltstack *nss, \
359			    struct osf1_sigaltstack *oss); }
360236	UNIMPL		waitid
361237	UNIMPL		priocntlset
362238	UNIMPL		sigsendset
363239	UNIMPL		set_speculative
364240	UNIMPL		msfs_syscall
365241	STD		{ int|osf1_sys||sysinfo(int cmd, char *buf, long len); }
366242	UNIMPL		uadmin
367243	UNIMPL		fuser
368244	UNIMPL		proplist_syscall
369245	UNIMPL		ntp_adjtime
370246	UNIMPL		ntp_gettime
371247	STD		{ long|osf1_sys||pathconf(const char *path, int name); }
372248	STD		{ long|osf1_sys||fpathconf(int fd, int name); }
373249	UNIMPL
374250	UNIMPL		uswitch
375251	STD		{ int|osf1_sys||usleep_thread( \
376			    struct osf1_timeval *sleep, \
377			    struct osf1_timeval *slept); }
378252	UNIMPL		audcntl
379253	UNIMPL		audgen
380254	UNIMPL		sysfs
381255	UNIMPL		subsys_info
382256	STD		{ int|osf1_sys||getsysinfo(u_long op, void *buffer, \
383			    u_long nbytes, void *arg, u_long flag); }
384257	STD		{ int|osf1_sys||setsysinfo(u_long op, void *buffer, \
385			    u_long nbytes, void *arg, u_long flag); }
386258	UNIMPL		afs_syscall
387259	UNIMPL		swapctl
388260	UNIMPL		memcntl
389261	UNIMPL		fdatasync
390262	UNIMPL		oflock
391263	UNIMPL		_F64_readv
392264	UNIMPL		_F64_writev
393265	UNIMPL		cdslxlate
394266	UNIMPL		sendfile
395