syscalls.master revision 1.20
11.20Scgd	$NetBSD: syscalls.master,v 1.20 1994/10/26 02:57:11 cgd Exp $
21.20Scgd
31.17Scgd;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
41.1Sderaadt
51.18Sderaadt; NetBSD COMPAT_SUNOS system call name/number "master" file.
61.18Sderaadt; (See syscalls.conf to see what it is processed into.)
71.18Sderaadt;
81.18Sderaadt; Fields: number type [type-dependent ...]
91.1Sderaadt;	number	system call number, must be in order
101.18Sderaadt;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
111.18Sderaadt;		the compatibility options defined in syscalls.conf.
121.18Sderaadt;
131.1Sderaadt; types:
141.1Sderaadt;	STD	always included
151.18Sderaadt;	OBSOL	obsolete, not included in system
161.18Sderaadt;	UNIMPL	unimplemented, not included in system
171.18Sderaadt;	NODEF	included, but don't define the syscall number
181.18Sderaadt;	NOARGS	included, but don't define the syscall args structure
191.18Sderaadt;
201.18Sderaadt; The compat options are defined in the syscalls.conf file, and the
211.18Sderaadt; compat option name is prefixed to the syscall name.  Other than
221.18Sderaadt; that, they're like NODEF (for 'compat' options), or STD (for
231.18Sderaadt; 'libcompat' options).
241.18Sderaadt;
251.18Sderaadt; The type-dependent arguments are as follows:
261.18Sderaadt; For STD, NODEF, NOARGS, and compat syscalls:
271.18Sderaadt;	{ pseudo-proto } [alias]
281.18Sderaadt; For other syscalls:
291.18Sderaadt;	[comment]
301.18Sderaadt;
311.18Sderaadt; #ifdef's, etc. may be included, and are copied to the output files.
321.18Sderaadt; #include's are copied to the syscall switch definition file only.
331.1Sderaadt
341.18Sderaadt#include <sys/param.h>
351.18Sderaadt#include <sys/systm.h>
361.18Sderaadt#include <sys/signal.h>
371.18Sderaadt#include <sys/mount.h>
381.18Sderaadt#include <sys/syscallargs.h>
391.18Sderaadt#include <compat/sunos/sunos.h>
401.19Sderaadt#include <compat/sunos/sunos_syscallargs.h>
411.1Sderaadt
421.18Sderaadt0	NOARGS		{ int nosys(void); } syscall
431.18Sderaadt1	NOARGS		{ int exit(int rval); }
441.18Sderaadt2	NOARGS		{ int fork(void); }
451.18Sderaadt3	NOARGS		{ int read(int fd, char *buf, u_int nbyte); }
461.18Sderaadt4	NOARGS		{ int write(int fd, char *buf, u_int nbyte); }
471.18Sderaadt5	STD		{ int sunos_open(char *path, int flags, int mode); }
481.18Sderaadt6	NOARGS		{ int close(int fd); }
491.18Sderaadt7	STD		{ int sunos_wait4(int pid, int *status, int options, \
501.18Sderaadt			  struct rusage *rusage); }
511.18Sderaadt8	STD		{ int sunos_creat(char *path, int mode); }
521.18Sderaadt9	NOARGS		{ int link(char *path, char *link); }
531.18Sderaadt10	NOARGS		{ int unlink(char *path); }
541.18Sderaadt11	STD		{ int sunos_execv(char *path, char **argp); }
551.18Sderaadt12	NOARGS		{ int chdir(char *path); }
561.18Sderaadt13	OBSOL		time
571.18Sderaadt14	STD		{ int sunos_mknod(char *path, int mode, int dev); }
581.18Sderaadt15	NOARGS		{ int chmod(char *path, int mode); }
591.18Sderaadt16	NOARGS		{ int chown(char *path, int uid, int gid); }
601.18Sderaadt17	NOARGS		{ int obreak(char *nsize); } break
611.18Sderaadt18	OBSOL		stat
621.18Sderaadt19	NOARGS		{ long compat_43_lseek(int fd, long offset, int whence); }
631.18Sderaadt20	NOARGS		{ pid_t getpid(void); }
641.18Sderaadt21	OBSOL		sunos_old_mount
651.18Sderaadt22	UNIMPL		System V umount
661.18Sderaadt23	NOARGS		{ int setuid(uid_t uid); }
671.18Sderaadt24	NOARGS		{ uid_t getuid(void); }
681.18Sderaadt25	UNIMPL		sunos_stime
691.18Sderaadt26	UNIMPL		sunos_ptrace
701.18Sderaadt27	UNIMPL		sunos_alarm
711.18Sderaadt28	UNIMPL		sunos_fstat
721.18Sderaadt29	UNIMPL		sunos_pause
731.18Sderaadt30	UNIMPL		sunos_utime
741.18Sderaadt31	UNIMPL		sunos_stty
751.18Sderaadt32	UNIMPL		sunos_gtty
761.18Sderaadt33	NOARGS		{ int access(char *path, int flags); }
771.18Sderaadt34	UNIMPL		sunos_nice
781.18Sderaadt35	UNIMPL		sunos_ftime
791.18Sderaadt36	NOARGS		{ int sync(void); }
801.18Sderaadt37	NOARGS		{ int kill(int pid, int signum); }
811.18Sderaadt38	NOARGS		{ int compat_43_stat(char *path, struct ostat *ub); }
821.18Sderaadt39	UNIMPL		sunos_setpgrp
831.18Sderaadt40	NOARGS		{ int compat_43_lstat(char *path, struct ostat *ub); }
841.18Sderaadt41	NOARGS		{ int dup(u_int fd); }
851.18Sderaadt42	NOARGS		{ int pipe(void); }
861.18Sderaadt43	UNIMPL		sunos_times
871.18Sderaadt44	NOARGS		{ int profil(caddr_t samples, u_int size, \
881.18Sderaadt			    u_int offset, u_int scale); }
891.18Sderaadt45	UNIMPL		
901.18Sderaadt46	UNIMPL		sunos_setgid
911.18Sderaadt47	NOARGS		{ gid_t getgid(void); }
921.18Sderaadt48	UNIMPL		sunos_ssig
931.18Sderaadt49	UNIMPL		reserved for USG
941.18Sderaadt50	UNIMPL		reserved for USG
951.18Sderaadt51	NOARGS		{ int acct(char *path); }
961.18Sderaadt52	UNIMPL		
971.18Sderaadt53	STD		{ int sunos_mctl(caddr_t addr, int len, int func, \
981.18Sderaadt			    void *arg); }
991.18Sderaadt54	STD		{ int sunos_ioctl(int fd, u_long com, caddr_t data); }
1001.18Sderaadt55	NOARGS		{ int reboot(int opt); }
1011.18Sderaadt56	OBSOL		sunos_owait3
1021.18Sderaadt57	NOARGS		{ int symlink(char *path, char *link); }
1031.18Sderaadt58	NOARGS		{ int readlink(char *path, char *buf, int count); }
1041.18Sderaadt59	NOARGS		{ int execve(char *path, char **argp, char **envp); }
1051.18Sderaadt60	NOARGS		{ int umask(int newmask); }
1061.18Sderaadt61	NOARGS		{ int chroot(char *path); }
1071.18Sderaadt62	NOARGS		{ int compat_43_fstat(int fd, struct ostat *sb); }
1081.18Sderaadt63	UNIMPL		
1091.18Sderaadt64	NOARGS		{ int compat_43_getpagesize(void); }
1101.18Sderaadt65	STD		{ int sunos_omsync(caddr_t addr, int len, int flags); }
1111.18Sderaadt66	NOARGS		{ int vfork(void); }
1121.18Sderaadt67	OBSOL		vread
1131.18Sderaadt68	OBSOL		vwrite
1141.18Sderaadt69	NOARGS		{ int sbrk(int incr); }
1151.18Sderaadt70	NOARGS		{ int sstk(int incr); }
1161.18Sderaadt71	STD		{ int sunos_mmap(caddr_t addr, int len, int prot, \
1171.18Sderaadt			    int flags, int fd, long pos); }
1181.18Sderaadt72	NOARGS		{ int ovadvise(int anom); } vadvise
1191.18Sderaadt73	NOARGS		{ int munmap(caddr_t addr, int len); }
1201.18Sderaadt74	NOARGS		{ int mprotect(caddr_t addr, int len, int prot); }
1211.18Sderaadt75	NOARGS		{ int madvise(caddr_t addr, int len, int behav); }
1221.18Sderaadt76	STD		{ int sunos_vhangup(void); }
1231.18Sderaadt77	UNIMPL		vlimit
1241.18Sderaadt78	NOARGS		{ int mincore(caddr_t addr, int len, char *vec); }
1251.18Sderaadt79	NOARGS		{ int getgroups(u_int gidsetsize, gid_t *gidset); }
1261.18Sderaadt80	NOARGS		{ int setgroups(u_int gidsetsize, gid_t *gidset); }
1271.18Sderaadt81	NOARGS		{ int getpgrp(void); }
1281.18Sderaadt82	STD		{ int sunos_setpgid(int pid, int pgid); }
1291.18Sderaadt83	NOARGS		{ int setitimer(u_int which, struct itimerval *itv, \
1301.18Sderaadt			    struct itimerval *oitv); }
1311.18Sderaadt84	UNIMPL		{ int wait(void); }
1321.18Sderaadt85	NOARGS		{ int swapon(char *name); }
1331.18Sderaadt86	NOARGS		{ int getitimer(u_int which, struct itimerval *itv); }
1341.18Sderaadt87	NOARGS		{ int compat_43_gethostname(char *hostname, u_int len); }
1351.18Sderaadt88	NOARGS		{ int compat_43_sethostname(char *hostname, u_int len); }
1361.18Sderaadt89	NOARGS		{ int compat_43_getdtablesize(void); }
1371.18Sderaadt90	NOARGS		{ int dup2(u_int from, u_int to); }
1381.18Sderaadt91	UNIMPL		getdopt
1391.18Sderaadt92	NOARGS		{ int fcntl(int fd, int cmd, void *arg); }
1401.18Sderaadt93	NOARGS		{ int select(u_int nd, fd_set *in, fd_set *ou, \
1411.18Sderaadt			    fd_set *ex, struct timeval *tv); }
1421.18Sderaadt94	UNIMPL		setdopt
1431.18Sderaadt95	NOARGS		{ int fsync(int fd); }
1441.18Sderaadt96	NOARGS		{ int setpriority(int which, int who, int prio); }
1451.18Sderaadt97	NOARGS		{ int socket(int domain, int type, int protocol); }
1461.18Sderaadt98	NOARGS		{ int connect(int s, caddr_t name, int namelen); }
1471.18Sderaadt99	NOARGS		{ int compat_43_accept(int s, caddr_t name, int *anamelen); }
1481.18Sderaadt100	NOARGS		{ int getpriority(int which, int who); }
1491.18Sderaadt101	NOARGS		{ int compat_43_send(int s, caddr_t buf, int len, int flags); }
1501.18Sderaadt102	NOARGS		{ int compat_43_recv(int s, caddr_t buf, int len, int flags); }
1511.18Sderaadt103	UNIMPL		old socketaddr
1521.18Sderaadt104	NOARGS		{ int bind(int s, caddr_t name, int namelen); }
1531.18Sderaadt105	STD		{ int sunos_setsockopt(int s, int level, int name, \
1541.18Sderaadt			    caddr_t val, int valsize); }
1551.18Sderaadt106	NOARGS		{ int listen(int s, int backlog); }
1561.18Sderaadt107	UNIMPL		vtimes
1571.18Sderaadt108	NOARGS		{ int compat_43_sigvec(int signum, struct sigvec *nsv, \
1581.18Sderaadt			    struct sigvec *osv); }
1591.18Sderaadt109	NOARGS		{ int compat_43_sigblock(int mask); }
1601.18Sderaadt110	NOARGS		{ int compat_43_sigsetmask(int mask); }
1611.18Sderaadt111	NOARGS		{ int sigsuspend(int mask); }
1621.18Sderaadt112	NOARGS		{ int compat_43_sigstack(struct sigstack *nss, \
1631.18Sderaadt			    struct sigstack *oss); }
1641.18Sderaadt113	NOARGS		{ int compat_43_recvmsg(int s, struct omsghdr *msg, int flags); }
1651.18Sderaadt114	NOARGS		{ int compat_43_sendmsg(int s, caddr_t msg, int flags); }
1661.18Sderaadt115	OBSOL		vtrace
1671.18Sderaadt116	NOARGS		{ int gettimeofday(struct timeval *tp, \
1681.18Sderaadt			    struct timezone *tzp); }
1691.18Sderaadt117	NOARGS		{ int getrusage(int who, struct rusage *rusage); }
1701.18Sderaadt118	NOARGS		{ int getsockopt(int s, int level, int name, \
1711.18Sderaadt			    caddr_t val, int *avalsize); }
1721.18Sderaadt119	UNIMPL		
1731.18Sderaadt120	NOARGS		{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
1741.18Sderaadt121	NOARGS		{ int writev(int fd, struct iovec *iovp, \
1751.18Sderaadt			    u_int iovcnt); }
1761.18Sderaadt122	NOARGS		{ int settimeofday(struct timeval *tv, \
1771.18Sderaadt			    struct timezone *tzp); }
1781.18Sderaadt123	NOARGS		{ int fchown(int fd, int uid, int gid); }
1791.18Sderaadt124	NOARGS		{ int fchmod(int fd, int mode); }
1801.18Sderaadt125	NOARGS		{ int compat_43_recvfrom(int s, caddr_t buf, size_t len, \
1811.18Sderaadt			    int flags, caddr_t from, int *fromlenaddr); }
1821.18Sderaadt126	NOARGS		{ int compat_43_setreuid(int ruid, int euid); }
1831.18Sderaadt127	NOARGS		{ int compat_43_setregid(int rgid, int egid); }
1841.18Sderaadt128	NOARGS		{ int rename(char *from, char *to); }
1851.18Sderaadt129	NOARGS		{ int compat_43_truncate(char *path, long length); }
1861.18Sderaadt130	NOARGS		{ int compat_43_ftruncate(int fd, long length); }
1871.18Sderaadt131	NOARGS		{ int flock(int fd, int how); }
1881.18Sderaadt132	UNIMPL		
1891.18Sderaadt133	NOARGS		{ int sendto(int s, caddr_t buf, size_t len, \
1901.18Sderaadt			    int flags, caddr_t to, int tolen); }
1911.18Sderaadt134	NOARGS		{ int shutdown(int s, int how); }
1921.18Sderaadt135	NOARGS		{ int socketpair(int domain, int type, int protocol, \
1931.18Sderaadt			    int *rsv); }
1941.18Sderaadt136	NOARGS		{ int mkdir(char *path, int mode); }
1951.18Sderaadt137	NOARGS		{ int rmdir(char *path); }
1961.18Sderaadt138	NOARGS		{ int utimes(char *path, struct timeval *tptr); }
1971.18Sderaadt139	NOARGS		{ int sigreturn(struct sigcontext *sigcntxp); }
1981.18Sderaadt140	NOARGS		{ int adjtime(struct timeval *delta, \
1991.18Sderaadt			    struct timeval *olddelta); }
2001.18Sderaadt141	NOARGS		{ int compat_43_getpeername(int fdes, caddr_t asa, int *alen); }
2011.18Sderaadt142	NOARGS		{ int compat_43_gethostid(void); }
2021.18Sderaadt143	UNIMPL		old sethostid
2031.18Sderaadt144	STD		{ int sunos_getrlimit(u_int which, struct orlimit *rlp); }
2041.18Sderaadt145	STD		{ int sunos_setrlimit(u_int which, struct orlimit *rlp); }
2051.18Sderaadt146	NOARGS		{ int compat_43_killpg(int pgid, int signum); }
2061.18Sderaadt147	UNIMPL		
2071.18Sderaadt148	UNIMPL		
2081.18Sderaadt149	UNIMPL		
2091.18Sderaadt150	NOARGS		{ int compat_43_getsockname(int fdes, caddr_t asa, int *alen); }
2101.18Sderaadt151	UNIMPL		getmsg
2111.18Sderaadt152	UNIMPL		putmsg
2121.18Sderaadt153	UNIMPL		poll
2131.18Sderaadt154	UNIMPL		
2141.9Sderaadt#ifdef NFSSERVER
2151.18Sderaadt155	STD		{ int sunos_nfssvc(int fd); }
2161.9Sderaadt#else
2171.18Sderaadt155	UNIMPL		
2181.9Sderaadt#endif
2191.18Sderaadt156	NOARGS		{ int getdirentries(int fd, char *buf, u_int count, \
2201.18Sderaadt			    long *basep); }
2211.18Sderaadt157	STD		{ int sunos_statfs(char *path, struct sunos_statfs *buf); }
2221.18Sderaadt158	STD		{ int sunos_fstatfs(int fd, struct sunos_statfs *buf); }
2231.18Sderaadt159	STD		{ int sunos_unmount(char *path, int flags); }
2241.9Sderaadt#ifdef NFSCLIENT
2251.18Sderaadt160	NOARGS		{ int async_daemon(void); }
2261.18Sderaadt161	NOARGS		{ int getfh(char *fname, fhandle_t *fhp); }
2271.9Sderaadt#else
2281.18Sderaadt160	UNIMPL		
2291.18Sderaadt161	UNIMPL		
2301.9Sderaadt#endif
2311.18Sderaadt162	NOARGS		{ int compat_09_getdomainname(char *domainname, int len); }
2321.18Sderaadt163	NOARGS		{ int compat_09_setdomainname(char *domainname, int len); }
2331.18Sderaadt164	UNIMPL		rtschedule
2341.18Sderaadt165	STD		{ int sunos_quotactl(int cmd, char *special, int uid, \
2351.18Sderaadt			    caddr_t addr); }
2361.18Sderaadt166	STD		{ int sunos_exportfs(char *path, char *ex); }
2371.18Sderaadt167	STD		{ int sunos_mount(char *type, char *dir, int flags, \
2381.18Sderaadt			    caddr_t data); }
2391.18Sderaadt168	STD		{ int sunos_ustat(int dev, struct sunos_ustat *buf); }
2401.6Sderaadt#ifdef SYSVSEM
2411.18Sderaadt169	NOARGS		{ int semsys(int which, int a2, int a3, int a4, \
2421.18Sderaadt			    int a5); }
2431.6Sderaadt#else
2441.18Sderaadt169	UNIMPL		1.0 semsys
2451.6Sderaadt#endif
2461.6Sderaadt#ifdef SYSVMSG
2471.18Sderaadt170	NOARGS		{ int msgsys(int which, int a2, int a3, int a4, \
2481.18Sderaadt			    int a5, int a6); }
2491.6Sderaadt#else
2501.18Sderaadt170	UNIMPL		1.0 msgsys
2511.6Sderaadt#endif
2521.1Sderaadt#ifdef SYSVSHM
2531.18Sderaadt171	NOARGS		{ int shmsys(int which, int a2, int a3, int a4); }
2541.1Sderaadt#else
2551.18Sderaadt171	UNIMPL		1.0 shmsys
2561.1Sderaadt#endif
2571.18Sderaadt172	STD		{ int sunos_auditsys(char *record); }
2581.18Sderaadt173	UNIMPL		rfssys
2591.18Sderaadt174	STD		{ int sunos_getdents(int fd, char *buf, int nbytes); }
2601.18Sderaadt175	NOARGS		{ int setsid(void); }
2611.18Sderaadt176	NOARGS		{ int fchdir(int fd); }
2621.18Sderaadt177	STD		{ int sunos_fchroot(int fd); }
2631.18Sderaadt178	UNIMPL		vpixsys
2641.18Sderaadt179	UNIMPL		aioread
2651.18Sderaadt180	UNIMPL		aiowrite
2661.18Sderaadt181	UNIMPL		aiowait
2671.18Sderaadt182	UNIMPL		aiocancel
2681.18Sderaadt183	STD		{ int sunos_sigpending(int *mask); }
2691.18Sderaadt184	UNIMPL		
2701.18Sderaadt185	NOARGS		{ int setpgid(int pid, int pgid); }
2711.18Sderaadt186	UNIMPL		{ long pathconf(char *path, int name); }
2721.18Sderaadt187	UNIMPL		{ long fpathconf(int fd, int name); }
2731.18Sderaadt188	STD		{ int sunos_sysconf(int name); }
2741.18Sderaadt189	STD		{ int sunos_uname(struct sunos_utsname *name); }
275