Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

;	$NetBSD: syscalls.master,v 1.26 2018/01/06 16:41:23 kamil Exp $

;	from :NetBSD: syscalls.master,v 1.57 2000/12/09 07:10:36 mycroft Exp

; NetBSD COMPAT_SUNOS, 32 bit mode for sparc64 system call name/number "master" file.
; (See syscalls32.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"
#include "opt_compat_sunos.h"
#endif

#include <sys/param.h>
#include <sys/systm.h>
#include <sys/signal.h>
#include <sys/mount.h>
#include <sys/poll.h>
#include <sys/syscallargs.h>

#include <compat/sunos/sunos.h>
#include <compat/sunos/sunos_syscallargs.h>

#include <compat/netbsd32/netbsd32.h>
#include <compat/netbsd32/netbsd32_syscallargs.h>

#include <compat/sunos32/sunos32.h>
#include <compat/sunos32/sunos32_syscallargs.h>

%%

0	NOARGS		{ int|sys||nosys(void); } syscall
1	NOARGS		{ int|netbsd32||exit(int rval); }
2	NOARGS		{ int|sys||fork(void); }
3	NOARGS		{ netbsd32_ssize_t|netbsd32||read(int fd, netbsd32_voidp buf, netbsd32_size_t nbyte); }
4	NOARGS		{ netbsd32_ssize_t|netbsd32||write(int fd, const netbsd32_voidp buf, netbsd32_size_t nbyte); }
5	STD		{ int|sunos32_sys||open(const netbsd32_charp path, int flags, \
			    int mode); }
6	NOARGS		{ int|netbsd32||close(int fd); }
7	STD		{ int|sunos32_sys||wait4(int pid, netbsd32_intp status, \
			    int options, netbsd32_rusagep_t rusage); }
8	STD		{ int|sunos32_sys||creat(const netbsd32_charp path, int mode); }
9	NOARGS		{ int|netbsd32||link(netbsd32_charp path, netbsd32_charp link); }
10	NOARGS		{ int|netbsd32||unlink(netbsd32_charp path); }
11	STD		{ int|sunos32_sys||execv(const netbsd32_charp path, netbsd32_charpp argp); }
12	NOARGS		{ int|netbsd32||chdir(netbsd32_charp path); }
13	OBSOL		old_time
14	STD		{ int|sunos32_sys||mknod(const netbsd32_charp path, int mode, \
			    int dev); }
15	NOARGS		{ int|netbsd32||chmod(netbsd32_charp path, int mode); }
16	NOARGS		{ int|netbsd32||chown(netbsd32_charp path, int uid, int gid); }
17	NOARGS		{ int|netbsd32||break(netbsd32_charp nsize); }
18	OBSOL		old_stat
19	NOARGS		{ netbsd32_long|compat_43_netbsd32||olseek(int fd, netbsd32_long offset, int whence); }
20	NOARGS		{ pid_t|sys||getpid_with_ppid(void); }
21	OBSOL		sunos_old_mount
22	UNIMPL		System V umount
23	NOARGS		{ int|netbsd32||setuid(uid_t uid); }
24	NOARGS		{ uid_t|sys||getuid_with_euid(void); }
25	STD		{ int|sunos32_sys||stime(sunos32_time_tp tp); }
26	STD		{ netbsd32_long|sunos32_sys||ptrace(int req, pid_t pid, \
			    netbsd32_caddr_t addr, int data, netbsd32_charp addr2); }
27	UNIMPL		old_sunos_alarm
28	UNIMPL		old_sunos_fstat
29	UNIMPL		old_sunos_pause
30	UNIMPL		old_sunos_utime
31	UNIMPL		old_sunos_stty
32	UNIMPL		old_sunos_gtty
33	STD		{ int|sunos32_sys||access(const netbsd32_charp path, int flags); }
34	UNIMPL		old_sunos_nice
35	UNIMPL		old_sunos_ftime
36	NOARGS		{ int|sys||sync(void); }
37	NOARGS		{ int|netbsd32||kill(int pid, int signum); }
38	STD		{ int|sunos32_sys||stat(const netbsd32_charp path, \
			    netbsd32_stat43p_t ub); }
39	UNIMPL		sunos_setpgrp
40	STD		{ int|sunos32_sys||lstat(const netbsd32_charp path, \
			    netbsd32_stat43p_t ub); }
41	NOARGS		{ int|netbsd32||dup(int fd); }
42	NOARGS		{ int|sys||pipe(void); }
43	UNIMPL		sunos_times
44	NOARGS		{ int|netbsd32||profil(netbsd32_caddr_t samples, u_int size, \
			    u_int offset, u_int scale); }
45	UNIMPL
46	NOARGS		{ int|netbsd32||setgid(uid_t gid); }
47	NOARGS		{ gid_t|sys||getgid_with_egid(void); }
48	UNIMPL		sunos_ssig
49	UNIMPL		reserved for USG
50	UNIMPL		reserved for USG
51	NOARGS		{ int|netbsd32||acct(netbsd32_charp path); }
52	UNIMPL
53	STD		{ int|sunos32_sys||mctl(netbsd32_voidp addr, int len, int func, \
			    netbsd32_voidp arg); }
54	STD		{ int|sunos32_sys||ioctl(int fd, netbsd32_u_long com, \
			    netbsd32_caddr_t data); }
55	STD		{ int|sunos32_sys||reboot(int howto, netbsd32_charp bootstr); }
56	OBSOL		sunos_owait3
57	NOARGS		{ int|netbsd32||symlink(netbsd32_charp path, netbsd32_charp link); }
58	NOARGS		{ int|netbsd32||readlink(netbsd32_charp path, netbsd32_charp buf, int count); }
59	STD		{ int|sunos32_sys||execve(const netbsd32_charp path, netbsd32_charpp argp, \
			    netbsd32_charpp envp); }
60	NOARGS		{ int|netbsd32||umask(int newmask); }
61	NOARGS		{ int|netbsd32||chroot(netbsd32_charp path); }
62	NOARGS		{ int|compat_43_netbsd32||fstat43(int fd, netbsd32_stat43p_t sb); }
63	UNIMPL
64	NOARGS		{ int|compat_43_sys||getpagesize(void); } ogetpagesize
65	STD		{ int|sunos32_sys||omsync(netbsd32_caddr_t addr, netbsd32_size_t len, \
			    int flags); }
66	NOARGS		{ int|sys||vfork(void); }
67	OBSOL		vread
68	OBSOL		vwrite
69	OBSOL		sbrk
70	OBSOL		sstk
71	STD		{ netbsd32_voidp|sunos32_sys||mmap(netbsd32_voidp addr, netbsd32_size_t len, \
			    int prot, int flags, int fd, netbsd32_long pos); }
72	NOARGS		{ int|netbsd32||ovadvise(int anom); } vadvise
73	NOARGS		{ int|netbsd32||munmap(netbsd32_voidp addr, netbsd32_size_t len); }
74	NOARGS		{ int|netbsd32||mprotect(netbsd32_voidp addr, netbsd32_size_t len, \
			    int prot); }
75	NOARGS		{ int|netbsd32||madvise(netbsd32_voidp addr, netbsd32_size_t len, \
			    int behav); }
76	STD		{ int|sunos32_sys||vhangup(void); }
77	UNIMPL		vlimit
78	NOARGS		{ int|netbsd32||mincore(netbsd32_caddr_t addr, netbsd32_size_t len, netbsd32_charp vec); }
79	NOARGS		{ int|netbsd32||getgroups(u_int gidsetsize, netbsd32_gid_tp gidset); }
80	NOARGS		{ int|netbsd32||setgroups(u_int gidsetsize, netbsd32_gid_tp gidset); }
81	NOARGS		{ int|sys||getpgrp(void); }
82	STD		{ int|sunos32_sys||setpgrp(int pid, int pgid); }
83	NOARGS		{ int|compat_50_netbsd32||setitimer(u_int which, netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); }
84	UNIMPL		sunos32_sys_wait
85	NOARGS		{ int|compat_12_netbsd32||oswapon(netbsd32_charp name); }
86	NOARGS		{ int|compat_50_netbsd32||getitimer(u_int which, netbsd32_itimervalp_t itv); }
87	NOARGS		{ int|compat_43_netbsd32||ogethostname(netbsd32_charp hostname, u_int len); }
88	NOARGS		{ int|compat_43_netbsd32||osethostname(netbsd32_charp hostname, u_int len); }
89	NOARGS		{ int|compat_43_sys||getdtablesize(void); } ogetdtablesize
90	NOARGS		{ int|netbsd32||dup2(int from, int to); }
91	UNIMPL		getdopt
92	STD		{ int|sunos32_sys||fcntl(int fd, int cmd, netbsd32_voidp arg); }
93	NOARGS		{ int|compat_50_netbsd32||select(u_int nd, netbsd32_fd_setp_t in, netbsd32_fd_setp_t ou, \
			    netbsd32_fd_setp_t ex, netbsd32_timevalp_t tv); }
94	UNIMPL		setdopt
95	NOARGS		{ int|netbsd32||fsync(int fd); }
96	NOARGS		{ int|netbsd32||setpriority(int which, int who, int prio); }
97	STD		{ int|sunos32_sys||socket(int domain, int type, int protocol); }
98	NOARGS		{ int|netbsd32||connect(int s, netbsd32_caddr_t name, int namelen); }
99	NOARGS		{ int|compat_43_netbsd32||oaccept(int s, netbsd32_caddr_t name, netbsd32_intp anamelen); }
100	NOARGS		{ int|netbsd32||getpriority(int which, int who); }
101	NOARGS		{ int|compat_43_netbsd32||osend(int s, netbsd32_caddr_t buf, int len, \
			    int flags); }
102	NOARGS		{ int|compat_43_netbsd32||orecv(int s, netbsd32_caddr_t buf, int len, \
			    int flags); }
103	UNIMPL		old socketaddr
104	NOARGS		{ int|netbsd32||bind(int s, netbsd32_caddr_t name, int namelen); }
105	STD		{ int|sunos32_sys||setsockopt(int s, int level, int name, \
			    netbsd32_caddr_t val, int valsize); }
106	NOARGS		{ int|netbsd32||listen(int s, int backlog); }
107	UNIMPL		vtimes
108	STD		{ int|sunos32_sys||sigvec(int signum, netbsd32_sigvecp_t nsv, \
			    netbsd32_sigvecp_t osv); }
109	NOARGS		{ int|compat_43_netbsd32||sigblock(int mask); }
110	NOARGS		{ int|compat_43_netbsd32||sigsetmask(int mask); }
111	STD		{ int|sunos32_sys||sigsuspend(int mask); }
112	NOARGS		{ int|compat_43_netbsd32||osigstack(netbsd32_sigstackp_t nss, \
			    netbsd32_sigstackp_t oss); }
113	NOARGS		{ int|compat_43_netbsd32||orecvmsg(int s, \
			    netbsd32_omsghdrp_t msg, int flags); }
114	NOARGS		{ int|compat_43_netbsd32||osendmsg(int s, netbsd32_caddr_t msg, \
			    int flags); }
115	OBSOL		vtrace
116	NOARGS		{ int|compat_50_netbsd32||gettimeofday(netbsd32_timevalp_t tp, \
			    netbsd32_timezonep_t tzp); }
117	NOARGS		{ int|compat_50_netbsd32||getrusage(int who, netbsd32_rusagep_t rusage); }
118	NOARGS		{ int|netbsd32||getsockopt(int s, int level, int name, \
			    netbsd32_caddr_t val, netbsd32_intp avalsize); }
119	UNIMPL
120	NOARGS		{ int|netbsd32||readv(int fd, netbsd32_iovecp_t iovp, \
			    u_int iovcnt); }
121	NOARGS		{ int|netbsd32||writev(int fd, netbsd32_iovecp_t iovp, \
			    u_int iovcnt); }
122	NOARGS		{ int|compat_50_netbsd32||settimeofday(netbsd32_timevalp_t tv, \
			    netbsd32_timezonep_t tzp); }
123	NOARGS		{ int|netbsd32||fchown(int fd, int uid, int gid); }
124	NOARGS		{ int|netbsd32||fchmod(int fd, int mode); }
125	NOARGS		{ int|compat_43_netbsd32||orecvfrom(int s, netbsd32_caddr_t buf, \
			    netbsd32_size_t len, int flags, netbsd32_caddr_t from, \
			    netbsd32_intp fromlenaddr); }
126	NOARGS		{ int|netbsd32||setreuid(int ruid, int euid); }
127	NOARGS		{ int|netbsd32||setregid(int rgid, int egid); }
128	NOARGS		{ int|netbsd32||rename(netbsd32_charp from, netbsd32_charp to); }
129	NOARGS		{ int|compat_43_netbsd32||otruncate(netbsd32_charp path, netbsd32_long length); }
130	NOARGS		{ int|compat_43_netbsd32||oftruncate(int fd, netbsd32_long length); }
131	NOARGS		{ int|netbsd32||flock(int fd, int how); }
132	UNIMPL
133	NOARGS		{ int|netbsd32||sendto(int s, netbsd32_caddr_t buf, netbsd32_size_t len, \
			    int flags, netbsd32_caddr_t to, int tolen); }
134	NOARGS		{ int|netbsd32||shutdown(int s, int how); }
135	STD		{ int|sunos32_sys||socketpair(int domain, int type, \
			    int protocol, netbsd32_intp rsv); }
136	NOARGS		{ int|netbsd32||mkdir(netbsd32_charp path, int mode); }
137	NOARGS		{ int|netbsd32||rmdir(netbsd32_charp path); }
138	NOARGS		{ int|compat_50_netbsd32||utimes(netbsd32_charp path, netbsd32_timevalp_t tptr); }
139	STD		{ int|sunos32_sys||sigreturn(netbsd32_sigcontextp_t sigcntxp); }
140	NOARGS		{ int|compat_50_netbsd32||adjtime(netbsd32_timevalp_t delta, \
			    netbsd32_timevalp_t olddelta); }
141	NOARGS		{ int|compat_43_netbsd32||ogetpeername(int fdes, netbsd32_caddr_t asa, \
			    netbsd32_intp alen); }
142	NOARGS		{ int|compat_43_sys||gethostid(void); }
143	UNIMPL		old sethostid
144	STD		{ int|sunos32_sys||getrlimit(u_int which, \
			    netbsd32_orlimitp_t rlp); }
145	STD		{ int|sunos32_sys||setrlimit(u_int which, \
			    netbsd32_orlimitp_t rlp); }
146	NOARGS		{ int|compat_43_netbsd32||killpg(int pgid, int signum); }
147	UNIMPL
148	UNIMPL
149	UNIMPL
150	NOARGS		{ int|compat_43_netbsd32||ogetsockname(int fdes, netbsd32_caddr_t asa, \
			    netbsd32_intp alen); }
151	UNIMPL		getmsg
152	UNIMPL		putmsg
153	NOARGS		{ int|netbsd32||poll(netbsd32_pollfdp_t fds, u_int nfds, \
			    int timeout); }
154	UNIMPL
155	UNIMPL		nfssvc
156	NOARGS		{ int|compat_43_netbsd32||ogetdirentries(int fd, netbsd32_charp buf, \
			    u_int count, netbsd32_longp basep); }
157	STD		{ int|sunos32_sys||statfs(const netbsd32_charp path, \
			    sunos32_statfsp_t buf); }
158	STD		{ int|sunos32_sys||fstatfs(int fd, \
			    sunos32_statfsp_t buf); }
159	STD		{ int|sunos32_sys||unmount(netbsd32_charp path); }
160	UNIMPL		async_daemon
161	NOARGS		{ int|compat_30_sys||getfh(netbsd32_charp fname, netbsd32_fhandlep_t fhp); }
162	NOARGS		{ int|compat_09_netbsd32||ogetdomainname(netbsd32_charp domainname, \
			    int len); }
163	NOARGS		{ int|compat_09_netbsd32||osetdomainname(netbsd32_charp domainname, \
			    int len); }
164	UNIMPL		rtschedule
165	STD		{ int|sunos32_sys||quotactl(int cmd, netbsd32_charp special, \
			    int uid, netbsd32_caddr_t addr); }
166	STD		{ int|sunos32_sys||exportfs(netbsd32_charp path, netbsd32_charp ex); }
167	STD		{ int|sunos32_sys||mount(netbsd32_charp type, netbsd32_charp path, \
			    int flags, netbsd32_caddr_t data); }
168	STD		{ int|sunos32_sys||ustat(int dev, \
			    sunos32_ustatp_t buf); }
#ifdef SYSVSEM
169	NOARGS		{ int|compat_10_netbsd32||semsys(int which, int a2, int a3, \
			    int a4, int a5); } osemsys
#else
169	UNIMPL		semsys
#endif
#ifdef SYSVMSG
170	NOARGS		{ int|compat_10_netbsd32||msgsys(int which, int a2, int a3, \
			    int a4, int a5, int a6); } omsgsys
#else
170	UNIMPL		msgsys
#endif
#ifdef SYSVSHM
171	NOARGS		{ int|compat_10_netbsd32||shmsys(int which, int a2, int a3, \
			    int a4); } oshmsys
#else
171	UNIMPL		shmsys
#endif
172	STD		{ int|sunos32_sys||auditsys(netbsd32_charp record); }
173	UNIMPL		rfssys
174	STD		{ int|sunos32_sys||getdents(int fd, netbsd32_charp buf, \
			    int nbytes); }
175	NOARGS		{ int|sys||setsid(void); }
176	NOARGS		{ int|netbsd32||fchdir(int fd); }
177	NOARGS		{ int|netbsd32||fchroot(int fd); }
178	UNIMPL		vpixsys
179	UNIMPL		aioread
180	UNIMPL		aiowrite
181	UNIMPL		aiowait
182	UNIMPL		aiocancel
183	STD		{ int|sunos32_sys||sigpending(netbsd32_intp mask); }
184	UNIMPL
185	NOARGS		{ int|netbsd32||setpgid(int pid, int pgid); }
186	NOARGS		{ netbsd32_long|netbsd32||pathconf(netbsd32_charp path, int name); }
187	NOARGS		{ netbsd32_long|netbsd32||fpathconf(int fd, int name); }
188	STD		{ int|sunos32_sys||sysconf(int name); }
189	STD		{ int|sunos32_sys||uname(sunos32_utsnamep_t name); }