syscalls.master revision 1.46
11.46Scgd	$NetBSD: syscalls.master,v 1.46 1996/12/22 08:04:06 cgd Exp $
21.28Smycroft
31.22Scgd;	@(#)syscalls.master	8.2 (Berkeley) 1/13/94
41.1Sglass
51.23Scgd; NetBSD system call name/number "master" file.
61.23Scgd; (See syscalls.conf to see what it is processed into.)
71.23Scgd;
81.23Scgd; Fields: number type [type-dependent ...]
91.1Sglass;	number	system call number, must be in order
101.23Scgd;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
111.24Smycroft;		the compatibility options defined in syscalls.conf.
121.23Scgd;
131.1Sglass; types:
141.1Sglass;	STD	always included
151.23Scgd;	OBSOL	obsolete, not included in system
161.24Smycroft;	UNIMPL	unimplemented, not included in system
171.23Scgd;	NODEF	included, but don't define the syscall number
181.23Scgd;	NOARGS	included, but don't define the syscall args structure
191.43Scgd;	INDIR	included, but don't define the syscall args structure,
201.43Scgd;		and allow it to be "really" varargs.
211.23Scgd;
221.23Scgd; The compat options are defined in the syscalls.conf file, and the
231.23Scgd; compat option name is prefixed to the syscall name.  Other than
241.23Scgd; that, they're like NODEF (for 'compat' options), or STD (for
251.23Scgd; 'libcompat' options).
261.23Scgd;
271.23Scgd; The type-dependent arguments are as follows:
281.23Scgd; For STD, NODEF, NOARGS, and compat syscalls:
291.23Scgd;	{ pseudo-proto } [alias]
301.23Scgd; For other syscalls:
311.23Scgd;	[comment]
321.23Scgd;
331.23Scgd; #ifdef's, etc. may be included, and are copied to the output files.
341.23Scgd; #include's are copied to the syscall switch definition file only.
351.1Sglass
361.23Scgd#include <sys/param.h>
371.23Scgd#include <sys/systm.h>
381.23Scgd#include <sys/signal.h>
391.23Scgd#include <sys/mount.h>
401.23Scgd#include <sys/syscallargs.h>
411.1Sglass
421.1Sglass; Reserved/unimplemented system calls in the range 0-150 inclusive
431.1Sglass; are reserved for use in future Berkeley releases.
441.1Sglass; Additional system calls implemented in vendor and other
451.1Sglass; redistributions should be placed in the reserved range at the end
461.1Sglass; of the current calls.
471.1Sglass
481.43Scgd0	INDIR		{ int sys_syscall(int number, ...); }
491.44Scgd1	STD		{ void sys_exit(int rval); }
501.28Smycroft2	STD		{ int sys_fork(void); }
511.46Scgd3	STD		{ ssize_t sys_read(int fd, void *buf, size_t nbyte); }
521.46Scgd4	STD		{ ssize_t sys_write(int fd, const void *buf, \
531.46Scgd			    size_t nbyte); }
541.46Scgd5	STD		{ int sys_open(const char *path, \
551.46Scgd			    int flags, ... int mode); }
561.28Smycroft6	STD		{ int sys_close(int fd); }
571.28Smycroft7	STD		{ int sys_wait4(int pid, int *status, int options, \
581.23Scgd			    struct rusage *rusage); }
591.29Smycroft8	COMPAT_43	{ int sys_creat(char *path, int mode); } ocreat
601.46Scgd9	STD		{ int sys_link(const char *path, const char *link); }
611.46Scgd10	STD		{ int sys_unlink(const char *path); }
621.23Scgd11	OBSOL		execv
631.46Scgd12	STD		{ int sys_chdir(const char *path); }
641.28Smycroft13	STD		{ int sys_fchdir(int fd); }
651.46Scgd14	STD		{ int sys_mknod(const char *path, int mode, int dev); }
661.46Scgd15	STD		{ int sys_chmod(const char *path, int mode); }
671.46Scgd16	STD		{ int sys_chown(const char *path, uid_t uid, \
681.46Scgd			    gid_t gid); }
691.28Smycroft17	STD		{ int sys_obreak(char *nsize); } break
701.28Smycroft18	STD		{ int sys_getfsstat(struct statfs *buf, long bufsize, \
711.23Scgd			    int flags); }
721.29Smycroft19	COMPAT_43	{ long sys_lseek(int fd, long offset, int whence); } \
731.29Smycroft			    olseek
741.28Smycroft20	STD		{ pid_t sys_getpid(void); }
751.46Scgd21	STD		{ int sys_mount(const char *type, const char *path, \
761.46Scgd			    int flags, void *data); }
771.46Scgd22	STD		{ int sys_unmount(const char *path, int flags); }
781.28Smycroft23	STD		{ int sys_setuid(uid_t uid); }
791.28Smycroft24	STD		{ uid_t sys_getuid(void); }
801.28Smycroft25	STD		{ uid_t sys_geteuid(void); }
811.28Smycroft26	STD		{ int sys_ptrace(int req, pid_t pid, caddr_t addr, \
821.23Scgd			    int data); }
831.44Scgd27	STD		{ ssize_t sys_recvmsg(int s, struct msghdr *msg, \
841.28Smycroft			    int flags); }
851.46Scgd28	STD		{ ssize_t sys_sendmsg(int s, \
861.46Scgd			    const struct msghdr *msg, int flags); }
871.46Scgd29	STD		{ ssize_t sys_recvfrom(int s, void *buf, size_t len, \
881.46Scgd			    int flags, struct sockaddr *from, \
891.46Scgd			    int *fromlenaddr); }
901.46Scgd30	STD		{ int sys_accept(int s, struct sockaddr *name, \
911.46Scgd			    int *anamelen); }
921.46Scgd31	STD		{ int sys_getpeername(int fdes, struct sockaddr *asa, \
931.28Smycroft			    int *alen); }
941.46Scgd32	STD		{ int sys_getsockname(int fdes, struct sockaddr *asa, \
951.28Smycroft			    int *alen); }
961.46Scgd33	STD		{ int sys_access(const char *path, int flags); }
971.46Scgd34	STD		{ int sys_chflags(const char *path, u_long flags); }
981.46Scgd35	STD		{ int sys_fchflags(int fd, u_long flags); }
991.44Scgd36	STD		{ void sys_sync(void); }
1001.28Smycroft37	STD		{ int sys_kill(int pid, int signum); }
1011.29Smycroft38	COMPAT_43	{ int sys_stat(char *path, struct ostat *ub); } ostat
1021.28Smycroft39	STD		{ pid_t sys_getppid(void); }
1031.29Smycroft40	COMPAT_43	{ int sys_lstat(char *path, struct ostat *ub); } olstat
1041.28Smycroft41	STD		{ int sys_dup(u_int fd); }
1051.28Smycroft42	STD		{ int sys_pipe(void); }
1061.28Smycroft43	STD		{ gid_t sys_getegid(void); }
1071.30Scgd44	STD		{ int sys_profil(caddr_t samples, size_t size, \
1081.30Scgd			    u_long offset, u_int scale); }
1091.1Sglass#ifdef KTRACE
1101.46Scgd45	STD		{ int sys_ktrace(const char *fname, int ops, \
1111.46Scgd			    int facs, int pid); }
1121.1Sglass#else
1131.23Scgd45	UNIMPL		ktrace
1141.1Sglass#endif
1151.46Scgd46	STD		{ int sys_sigaction(int signum, \
1161.46Scgd			    const struct sigaction *nsa, \
1171.23Scgd			    struct sigaction *osa); }
1181.28Smycroft47	STD		{ gid_t sys_getgid(void); }
1191.28Smycroft48	STD		{ int sys_sigprocmask(int how, sigset_t mask); }
1201.37Sjtc49	STD		{ int sys___getlogin(char *namebuf, u_int namelen); }
1211.46Scgd50	STD		{ int sys_setlogin(const char *namebuf); }
1221.46Scgd51	STD		{ int sys_acct(const char *path); }
1231.28Smycroft52	STD		{ int sys_sigpending(void); }
1241.46Scgd53	STD		{ int sys_sigaltstack(const struct sigaltstack *nss, \
1251.23Scgd			    struct sigaltstack *oss); }
1261.46Scgd54	STD		{ int sys_ioctl(int fd, \
1271.46Scgd			    u_long com, ... caddr_t data); }
1281.34Smrg55	COMPAT_12	{ int sys_reboot(int opt); } oreboot
1291.46Scgd56	STD		{ int sys_revoke(const char *path); }
1301.46Scgd57	STD		{ int sys_symlink(const char *path, \
1311.46Scgd			    const char *link); }
1321.46Scgd58	STD		{ int sys_readlink(const char *path, char *buf, \
1331.46Scgd			    int count); }
1341.46Scgd59	STD		{ int sys_execve(const char *path, \
1351.46Scgd			    char * const *argp, char * const *envp); }
1361.28Smycroft60	STD		{ int sys_umask(int newmask); }
1371.46Scgd61	STD		{ int sys_chroot(const char *path); }
1381.29Smycroft62	COMPAT_43	{ int sys_fstat(int fd, struct ostat *sb); } ofstat
1391.28Smycroft63	COMPAT_43	{ int sys_getkerninfo(int op, char *where, int *size, \
1401.29Smycroft			    int arg); } ogetkerninfo
1411.29Smycroft64	COMPAT_43	{ int sys_getpagesize(void); } ogetpagesize
1421.28Smycroft65	STD		{ int sys_msync(caddr_t addr, size_t len); }
1431.28Smycroft66	STD		{ int sys_vfork(void); }
1441.23Scgd67	OBSOL		vread
1451.23Scgd68	OBSOL		vwrite
1461.28Smycroft69	STD		{ int sys_sbrk(int incr); }
1471.28Smycroft70	STD		{ int sys_sstk(int incr); }
1481.28Smycroft71	COMPAT_43	{ int sys_mmap(caddr_t addr, size_t len, int prot, \
1491.29Smycroft			    int flags, int fd, long pos); } ommap
1501.28Smycroft72	STD		{ int sys_ovadvise(int anom); } vadvise
1511.28Smycroft73	STD		{ int sys_munmap(caddr_t addr, size_t len); }
1521.28Smycroft74	STD		{ int sys_mprotect(caddr_t addr, size_t len, \
1531.28Smycroft			    int prot); }
1541.28Smycroft75	STD		{ int sys_madvise(caddr_t addr, size_t len, \
1551.28Smycroft			    int behav); }
1561.23Scgd76	OBSOL		vhangup
1571.23Scgd77	OBSOL		vlimit
1581.28Smycroft78	STD		{ int sys_mincore(caddr_t addr, size_t len, \
1591.28Smycroft			    char *vec); }
1601.28Smycroft79	STD		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
1611.46Scgd80	STD		{ int sys_setgroups(u_int gidsetsize, \
1621.46Scgd			    const gid_t *gidset); }
1631.28Smycroft81	STD		{ int sys_getpgrp(void); }
1641.28Smycroft82	STD		{ int sys_setpgid(int pid, int pgid); }
1651.28Smycroft83	STD		{ int sys_setitimer(u_int which, \
1661.46Scgd			    const struct itimerval *itv, \
1671.46Scgd			    struct itimerval *oitv); }
1681.29Smycroft84	COMPAT_43	{ int sys_wait(void); } owait
1691.46Scgd85	STD		{ int sys_swapon(const char *name); }
1701.28Smycroft86	STD		{ int sys_getitimer(u_int which, \
1711.28Smycroft			    struct itimerval *itv); }
1721.29Smycroft87	COMPAT_43	{ int sys_gethostname(char *hostname, u_int len); } \
1731.29Smycroft			    ogethostname
1741.29Smycroft88	COMPAT_43	{ int sys_sethostname(char *hostname, u_int len); } \
1751.29Smycroft			    osethostname
1761.29Smycroft89	COMPAT_43	{ int sys_getdtablesize(void); } ogetdtablesize
1771.28Smycroft90	STD		{ int sys_dup2(u_int from, u_int to); }
1781.23Scgd91	UNIMPL		getdopt
1791.44Scgd92	STD		{ int sys_fcntl(int fd, int cmd, ... void *arg); }
1801.28Smycroft93	STD		{ int sys_select(u_int nd, fd_set *in, fd_set *ou, \
1811.23Scgd			    fd_set *ex, struct timeval *tv); }
1821.23Scgd94	UNIMPL		setdopt
1831.28Smycroft95	STD		{ int sys_fsync(int fd); }
1841.28Smycroft96	STD		{ int sys_setpriority(int which, int who, int prio); }
1851.28Smycroft97	STD		{ int sys_socket(int domain, int type, int protocol); }
1861.46Scgd98	STD		{ int sys_connect(int s, const struct sockaddr *name, \
1871.46Scgd			    int namelen); }
1881.46Scgd99	COMPAT_43	{ int sys_accept(int s, caddr_t name, \
1891.46Scgd			    int *anamelen); } oaccept
1901.28Smycroft100	STD		{ int sys_getpriority(int which, int who); }
1911.28Smycroft101	COMPAT_43	{ int sys_send(int s, caddr_t buf, int len, \
1921.29Smycroft			    int flags); } osend
1931.28Smycroft102	COMPAT_43	{ int sys_recv(int s, caddr_t buf, int len, \
1941.29Smycroft			    int flags); } orecv
1951.28Smycroft103	STD		{ int sys_sigreturn(struct sigcontext *sigcntxp); }
1961.46Scgd104	STD		{ int sys_bind(int s, const struct sockaddr *name, \
1971.46Scgd			    int namelen); }
1981.28Smycroft105	STD		{ int sys_setsockopt(int s, int level, int name, \
1991.46Scgd			    const void *val, int valsize); }
2001.28Smycroft106	STD		{ int sys_listen(int s, int backlog); }
2011.23Scgd107	OBSOL		vtimes
2021.28Smycroft108	COMPAT_43	{ int sys_sigvec(int signum, struct sigvec *nsv, \
2031.29Smycroft			    struct sigvec *osv); } osigvec
2041.29Smycroft109	COMPAT_43	{ int sys_sigblock(int mask); } osigblock
2051.29Smycroft110	COMPAT_43	{ int sys_sigsetmask(int mask); } osigsetmask
2061.28Smycroft111	STD		{ int sys_sigsuspend(int mask); }
2071.28Smycroft112	COMPAT_43	{ int sys_sigstack(struct sigstack *nss, \
2081.29Smycroft			    struct sigstack *oss); } osigstack
2091.28Smycroft113	COMPAT_43	{ int sys_recvmsg(int s, struct omsghdr *msg, \
2101.29Smycroft			    int flags); } orecvmsg
2111.29Smycroft114	COMPAT_43	{ int sys_sendmsg(int s, caddr_t msg, int flags); } \
2121.29Smycroft			    osendmsg
2131.1Sglass#ifdef TRACE
2141.28Smycroft115	STD		{ int sys_vtrace(int request, int value); }
2151.1Sglass#else
2161.23Scgd115	OBSOL		vtrace
2171.1Sglass#endif
2181.28Smycroft116	STD		{ int sys_gettimeofday(struct timeval *tp, \
2191.23Scgd			    struct timezone *tzp); }
2201.28Smycroft117	STD		{ int sys_getrusage(int who, struct rusage *rusage); }
2211.28Smycroft118	STD		{ int sys_getsockopt(int s, int level, int name, \
2221.46Scgd			    void *val, int *avalsize); }
2231.26Scgd119	OBSOL		resuba
2241.46Scgd120	STD		{ ssize_t sys_readv(int fd, const struct iovec *iovp, \
2251.28Smycroft			    u_int iovcnt); }
2261.46Scgd121	STD		{ ssize_t sys_writev(int fd, \
2271.46Scgd			    const struct iovec *iovp, u_int iovcnt); }
2281.46Scgd122	STD		{ int sys_settimeofday(const struct timeval *tv, \
2291.46Scgd			    const struct timezone *tzp); }
2301.46Scgd123	STD		{ int sys_fchown(int fd, uid_t uid, gid_t gid); }
2311.28Smycroft124	STD		{ int sys_fchmod(int fd, int mode); }
2321.28Smycroft125	COMPAT_43	{ int sys_recvfrom(int s, caddr_t buf, size_t len, \
2331.29Smycroft			    int flags, caddr_t from, int *fromlenaddr); } \
2341.29Smycroft			    orecvfrom
2351.46Scgd126	STD		{ int sys_setreuid(uid_t ruid, uid_t euid); }
2361.46Scgd127	STD		{ int sys_setregid(gid_t rgid, gid_t egid); }
2371.46Scgd128	STD		{ int sys_rename(const char *from, const char *to); }
2381.29Smycroft129	COMPAT_43	{ int sys_truncate(char *path, long length); } \
2391.29Smycroft			    otruncate
2401.29Smycroft130	COMPAT_43	{ int sys_ftruncate(int fd, long length); } oftruncate
2411.28Smycroft131	STD		{ int sys_flock(int fd, int how); }
2421.46Scgd132	STD		{ int sys_mkfifo(const char *path, int mode); }
2431.46Scgd133	STD		{ ssize_t sys_sendto(int s, const void *buf, \
2441.46Scgd			    size_t len, int flags, const struct sockaddr *to, \
2451.46Scgd			    int tolen); }
2461.28Smycroft134	STD		{ int sys_shutdown(int s, int how); }
2471.28Smycroft135	STD		{ int sys_socketpair(int domain, int type, \
2481.28Smycroft			    int protocol, int *rsv); }
2491.46Scgd136	STD		{ int sys_mkdir(const char *path, int mode); }
2501.46Scgd137	STD		{ int sys_rmdir(const char *path); }
2511.46Scgd138	STD		{ int sys_utimes(const char *path, \
2521.46Scgd			    const struct timeval *tptr); }
2531.23Scgd139	OBSOL		4.2 sigreturn
2541.46Scgd140	STD		{ int sys_adjtime(const struct timeval *delta, \
2551.23Scgd			    struct timeval *olddelta); }
2561.28Smycroft141	COMPAT_43	{ int sys_getpeername(int fdes, caddr_t asa, \
2571.29Smycroft			    int *alen); } ogetpeername
2581.29Smycroft142	COMPAT_43	{ int32_t sys_gethostid(void); } ogethostid
2591.29Smycroft143	COMPAT_43	{ int sys_sethostid(int32_t hostid); } osethostid
2601.28Smycroft144	COMPAT_43	{ int sys_getrlimit(u_int which, \
2611.29Smycroft			    struct ogetrlimit *rlp); } ogetrlimit
2621.28Smycroft145	COMPAT_43	{ int sys_setrlimit(u_int which, \
2631.29Smycroft			    struct ogetrlimit *rlp); } osetrlimit
2641.29Smycroft146	COMPAT_43	{ int sys_killpg(int pgid, int signum); } okillpg
2651.28Smycroft147	STD		{ int sys_setsid(void); }
2661.46Scgd148	STD		{ int sys_quotactl(const char *path, int cmd, \
2671.46Scgd			    int uid, caddr_t arg); }
2681.29Smycroft149	COMPAT_43	{ int sys_quota(void); } oquota
2691.28Smycroft150	COMPAT_43	{ int sys_getsockname(int fdec, caddr_t asa, \
2701.29Smycroft			    int *alen); } ogetsockname
2711.1Sglass
2721.1Sglass; Syscalls 151-180 inclusive are reserved for vendor-specific
2731.1Sglass; system calls.  (This includes various calls added for compatibity
2741.1Sglass; with other Unix variants.)
2751.1Sglass; Some of these calls are now supported by BSD...
2761.23Scgd151	UNIMPL
2771.23Scgd152	UNIMPL
2781.23Scgd153	UNIMPL
2791.23Scgd154	UNIMPL
2801.20Smycroft#if defined(NFSCLIENT) || defined(NFSSERVER)
2811.46Scgd155	STD		{ int sys_nfssvc(int flag, void *argp); }
2821.1Sglass#else
2831.23Scgd155	UNIMPL
2841.1Sglass#endif
2851.28Smycroft156	COMPAT_43	{ int sys_getdirentries(int fd, char *buf, \
2861.29Smycroft			    u_int count, long *basep); } ogetdirentries
2871.46Scgd157	STD		{ int sys_statfs(const char *path, \
2881.46Scgd			    struct statfs *buf); }
2891.28Smycroft158	STD		{ int sys_fstatfs(int fd, struct statfs *buf); }
2901.23Scgd159	UNIMPL
2911.23Scgd160	UNIMPL
2921.40Sthorpej#if defined(NFSCLIENT) || defined(NFSSERVER)
2931.46Scgd161	STD		{ int sys_getfh(const char *fname, fhandle_t *fhp); }
2941.1Sglass#else
2951.23Scgd161	UNIMPL		getfh
2961.1Sglass#endif
2971.29Smycroft162	COMPAT_09	{ int sys_getdomainname(char *domainname, int len); } \
2981.29Smycroft			    ogetdomainname
2991.29Smycroft163	COMPAT_09	{ int sys_setdomainname(char *domainname, int len); } \
3001.29Smycroft			    osetdomainname
3011.29Smycroft164	COMPAT_09	{ int sys_uname(struct outsname *name); } ouname
3021.28Smycroft165	STD		{ int sys_sysarch(int op, char *parms); }
3031.23Scgd166	UNIMPL
3041.23Scgd167	UNIMPL
3051.23Scgd168	UNIMPL
3061.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
3071.23Scgd#if defined(SYSVSEM) && !defined(alpha)
3081.28Smycroft169	COMPAT_10	{ int sys_semsys(int which, int a2, int a3, int a4, \
3091.29Smycroft			    int a5); } osemsys
3101.9Scgd#else
3111.23Scgd169	UNIMPL		1.0 semsys
3121.9Scgd#endif
3131.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
3141.23Scgd#if defined(SYSVMSG) && !defined(alpha)
3151.28Smycroft170	COMPAT_10	{ int sys_msgsys(int which, int a2, int a3, int a4, \
3161.29Smycroft			    int a5, int a6); } omsgsys
3171.9Scgd#else
3181.23Scgd170	UNIMPL		1.0 msgsys
3191.9Scgd#endif
3201.23Scgd; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
3211.23Scgd#if defined(SYSVSHM) && !defined(alpha)
3221.29Smycroft171	COMPAT_10	{ int sys_shmsys(int which, int a2, int a3, int a4); } \
3231.29Smycroft			    oshmsys
3241.1Sglass#else
3251.23Scgd171	UNIMPL		1.0 shmsys
3261.1Sglass#endif
3271.23Scgd172	UNIMPL
3281.23Scgd173	UNIMPL
3291.23Scgd174	UNIMPL
3301.45Scgd175	STD		{ int sys_ntp_gettime(struct ntptimeval *ntvp); }
3311.38Sthorpej176	STD		{ int sys_ntp_adjtime(struct timex *tp); }
3321.23Scgd177	UNIMPL
3331.23Scgd178	UNIMPL
3341.23Scgd179	UNIMPL
3351.23Scgd180	UNIMPL
3361.1Sglass
3371.1Sglass; Syscalls 180-199 are used by/reserved for BSD
3381.28Smycroft181	STD		{ int sys_setgid(gid_t gid); }
3391.28Smycroft182	STD		{ int sys_setegid(gid_t egid); }
3401.28Smycroft183	STD		{ int sys_seteuid(uid_t euid); }
3411.17Scgd#ifdef LFS
3421.23Scgd184	STD		{ int lfs_bmapv(fsid_t *fsidp, \
3431.23Scgd			    struct block_info *blkiov, int blkcnt); }
3441.23Scgd185	STD		{ int lfs_markv(fsid_t *fsidp, \
3451.23Scgd			    struct block_info *blkiov, int blkcnt); }
3461.23Scgd186	STD		{ int lfs_segclean(fsid_t *fsidp, u_long segment); }
3471.23Scgd187	STD		{ int lfs_segwait(fsid_t *fsidp, struct timeval *tv); }
3481.23Scgd#else
3491.23Scgd184	UNIMPL
3501.23Scgd185	UNIMPL
3511.23Scgd186	UNIMPL
3521.23Scgd187	UNIMPL
3531.23Scgd#endif
3541.46Scgd188	STD		{ int sys_stat(const char *path, struct stat *ub); }
3551.28Smycroft189	STD		{ int sys_fstat(int fd, struct stat *sb); }
3561.46Scgd190	STD		{ int sys_lstat(const char *path, struct stat *ub); }
3571.46Scgd191	STD		{ long sys_pathconf(const char *path, int name); }
3581.44Scgd192	STD		{ long sys_fpathconf(int fd, int name); }
3591.23Scgd193	UNIMPL
3601.28Smycroft194	STD		{ int sys_getrlimit(u_int which, struct rlimit *rlp); }
3611.46Scgd195	STD		{ int sys_setrlimit(u_int which, \
3621.46Scgd			    const struct rlimit *rlp); }
3631.28Smycroft196	STD		{ int sys_getdirentries(int fd, char *buf, \
3641.28Smycroft			    u_int count, long *basep); }
3651.28Smycroft197	STD		{ caddr_t sys_mmap(caddr_t addr, size_t len, int prot, \
3661.23Scgd			    int flags, int fd, long pad, off_t pos); }
3671.43Scgd198	INDIR		{ quad_t sys___syscall(quad_t num, ...); }
3681.28Smycroft199	STD		{ off_t sys_lseek(int fd, int pad, off_t offset, \
3691.23Scgd			    int whence); }
3701.46Scgd200	STD		{ int sys_truncate(const char *path, int pad, \
3711.46Scgd			    off_t length); }
3721.28Smycroft201	STD		{ int sys_ftruncate(int fd, int pad, off_t length); }
3731.28Smycroft202	STD		{ int sys___sysctl(int *name, u_int namelen, \
3741.28Smycroft			    void *old, size_t *oldlenp, void *new, \
3751.28Smycroft			    size_t newlen); }
3761.28Smycroft203	STD		{ int sys_mlock(caddr_t addr, size_t len); }
3771.28Smycroft204	STD		{ int sys_munlock(caddr_t addr, size_t len); }
3781.46Scgd205	STD		{ int sys_undelete(const char *path); }
3791.46Scgd206	STD		{ int sys_futimes(int fd, \
3801.46Scgd			    const struct timeval *tptr); }
3811.34Smrg207	STD		{ int sys_getpgid(pid_t pid); }
3821.34Smrg208	STD		{ int sys_reboot(int opt, char *bootstr); }
3831.36Smycroft209	STD		{ int sys_poll(struct pollfd *fds, u_int nfds, \
3841.35Smycroft			    int timeout); }
3851.11Scgd;
3861.11Scgd; Syscalls 210-219 are reserved for dynamically loaded syscalls
3871.11Scgd;
3881.11Scgd#ifdef LKM
3891.28Smycroft210	NODEF		{ int sys_lkmnosys(void); }
3901.28Smycroft211	NODEF		{ int sys_lkmnosys(void); }
3911.28Smycroft212	NODEF		{ int sys_lkmnosys(void); }
3921.28Smycroft213	NODEF		{ int sys_lkmnosys(void); }
3931.28Smycroft214	NODEF		{ int sys_lkmnosys(void); }
3941.28Smycroft215	NODEF		{ int sys_lkmnosys(void); }
3951.28Smycroft216	NODEF		{ int sys_lkmnosys(void); }
3961.28Smycroft217	NODEF		{ int sys_lkmnosys(void); }
3971.28Smycroft218	NODEF		{ int sys_lkmnosys(void); }
3981.28Smycroft219	NODEF		{ int sys_lkmnosys(void); }
3991.11Scgd#else	/* !LKM */
4001.23Scgd210	UNIMPL
4011.23Scgd211	UNIMPL
4021.23Scgd212	UNIMPL
4031.23Scgd213	UNIMPL
4041.23Scgd214	UNIMPL
4051.23Scgd215	UNIMPL
4061.23Scgd216	UNIMPL
4071.23Scgd217	UNIMPL
4081.23Scgd218	UNIMPL
4091.23Scgd219	UNIMPL
4101.6Scgd#endif	/* !LKM */
4111.23Scgd; System calls 220-240 are reserved for use by NetBSD
4121.23Scgd#ifdef SYSVSEM
4131.28Smycroft220	STD		{ int sys___semctl(int semid, int semnum, int cmd, \
4141.23Scgd			    union semun *arg); }
4151.28Smycroft221	STD		{ int sys_semget(key_t key, int nsems, int semflg); }
4161.28Smycroft222	STD		{ int sys_semop(int semid, struct sembuf *sops, \
4171.23Scgd			    u_int nsops); }
4181.28Smycroft223	STD		{ int sys_semconfig(int flag); }
4191.23Scgd#else
4201.23Scgd220	UNIMPL		semctl
4211.23Scgd221	UNIMPL		semget
4221.23Scgd222	UNIMPL		semop
4231.23Scgd223	UNIMPL		semconfig
4241.23Scgd#endif
4251.23Scgd#ifdef SYSVMSG
4261.28Smycroft224	STD		{ int sys_msgctl(int msqid, int cmd, \
4271.23Scgd			    struct msqid_ds *buf); }
4281.28Smycroft225	STD		{ int sys_msgget(key_t key, int msgflg); }
4291.28Smycroft226	STD		{ int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
4301.23Scgd			    int msgflg); }
4311.28Smycroft227	STD		{ int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
4321.23Scgd			    long msgtyp, int msgflg); }
4331.23Scgd#else
4341.23Scgd224	UNIMPL		msgctl
4351.23Scgd225	UNIMPL		msgget
4361.23Scgd226	UNIMPL		msgsnd
4371.23Scgd227	UNIMPL		msgrcv
4381.23Scgd#endif
4391.23Scgd#ifdef SYSVSHM
4401.44Scgd228	STD		{ void *sys_shmat(int shmid, void *shmaddr, \
4411.44Scgd			    int shmflg); }
4421.28Smycroft229	STD		{ int sys_shmctl(int shmid, int cmd, \
4431.23Scgd			    struct shmid_ds *buf); }
4441.28Smycroft230	STD		{ int sys_shmdt(void *shmaddr); }
4451.28Smycroft231	STD		{ int sys_shmget(key_t key, int size, int shmflg); }
4461.23Scgd#else
4471.23Scgd228	UNIMPL		shmat
4481.23Scgd229	UNIMPL		shmctl
4491.23Scgd230	UNIMPL		shmdt
4501.23Scgd231	UNIMPL		shmget
4511.23Scgd#endif
4521.39Sjtc232	STD		{ int sys_clock_gettime(clockid_t clock_id, \
4531.39Sjtc				struct timespec *tp); }
4541.39Sjtc233	STD		{ int sys_clock_settime(clockid_t clock_id, \
4551.39Sjtc				const struct timespec *tp); }
4561.39Sjtc234	STD		{ int sys_clock_getres(clockid_t clock_id, \
4571.39Sjtc				struct timespec *tp); }
4581.39Sjtc235	UNIMPL		timer_create
4591.39Sjtc236	UNIMPL		timer_delete
4601.39Sjtc237	UNIMPL		timer_settime
4611.39Sjtc238	UNIMPL		timer_gettime
4621.39Sjtc239	UNIMPL		timer_getoverrun
4631.39Sjtc240	UNIMPL		nanosleep
464