syscalls.master revision 49428
149428Sjkh	$Id: syscalls.master,v 1.60 1999/08/04 20:04:25 jkh Exp $
21817Sdg;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
31817Sdg;
41541Srgrimes; System call name/number master file.
51541Srgrimes; Processed to created init_sysent.c, syscalls.c and syscall.h.
61541Srgrimes
710905Sbde; Columns: number type nargs namespc name alt{name,tag,rtyp}/comments
81541Srgrimes;	number	system call number, must be in order
91541Srgrimes;	type	one of STD, OBSOL, UNIMPL, COMPAT
102696Swollman;	namespc one of POSIX, BSD, NOHIDE
1111294Sswallace;	name	psuedo-prototype of syscall routine
1210905Sbde;		If one of the following alts is different, then all appear:
131541Srgrimes;	altname	name of system call if different
1410905Sbde;	alttag	name of args struct tag if different from [o]`name'"_args"
1510905Sbde;	altrtyp	return type if not int (bogus - syscalls always return int)
161541Srgrimes;		for UNIMPL/OBSOL, name continues with comments
171541Srgrimes
181541Srgrimes; types:
191541Srgrimes;	STD	always included
201541Srgrimes;	COMPAT	included on COMPAT #ifdef
211541Srgrimes;	LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
221541Srgrimes;	OBSOL	obsolete, not included in system, only specifies name
231541Srgrimes;	UNIMPL	not implemented, placeholder only
241541Srgrimes
251541Srgrimes; #ifdef's, etc. may be included, and are copied to the output files.
261541Srgrimes
2711294Sswallace#include <sys/param.h>
2811294Sswallace#include <sys/sysent.h>
2911294Sswallace#include <sys/sysproto.h>
3011294Sswallace
311541Srgrimes; Reserved/unimplemented system calls in the range 0-150 inclusive
321541Srgrimes; are reserved for use in future Berkeley releases.
331541Srgrimes; Additional system calls implemented in vendor and other
341541Srgrimes; redistributions should be placed in the reserved range at the end
351541Srgrimes; of the current calls.
361541Srgrimes
3711294Sswallace0	STD	NOHIDE	{ int nosys(void); } syscall nosys_args int
3811294Sswallace1	STD	NOHIDE	{ void exit(int rval); } exit rexit_args void
3911294Sswallace2	STD	POSIX	{ int fork(void); }
4038515Sdfr3	STD	POSIX	{ ssize_t read(int fd, void *buf, size_t nbyte); }
4138515Sdfr4	STD	POSIX	{ ssize_t write(int fd, const void *buf, size_t nbyte); }
4211294Sswallace5	STD	POSIX	{ int open(char *path, int flags, int mode); }
4312216Sbde; XXX should be		{ int open(const char *path, int flags, ...); }
4412216Sbde; but we're not ready for `const' or varargs.
4512216Sbde; XXX man page says `mode_t mode'.
4611294Sswallace6	STD	POSIX	{ int close(int fd); }
4711294Sswallace7	STD	BSD	{ int wait4(int pid, int *status, int options, \
4811294Sswallace			    struct rusage *rusage); } wait4 wait_args int
4911294Sswallace8	COMPAT	BSD	{ int creat(char *path, int mode); }
5011294Sswallace9	STD	POSIX	{ int link(char *path, char *link); }
5111294Sswallace10	STD	POSIX	{ int unlink(char *path); }
5211294Sswallace11	OBSOL	NOHIDE	execv
5311294Sswallace12	STD	POSIX	{ int chdir(char *path); }
5411294Sswallace13	STD	BSD	{ int fchdir(int fd); }
5511294Sswallace14	STD	POSIX	{ int mknod(char *path, int mode, int dev); }
5611294Sswallace15	STD	POSIX	{ int chmod(char *path, int mode); }
5711294Sswallace16	STD	POSIX	{ int chown(char *path, int uid, int gid); }
5811294Sswallace17	STD	BSD	{ int obreak(char *nsize); } break obreak_args int
5911294Sswallace18	STD	BSD	{ int getfsstat(struct statfs *buf, long bufsize, \
6011294Sswallace			    int flags); }
6111294Sswallace19	COMPAT	POSIX	{ long lseek(int fd, long offset, int whence); }
6211294Sswallace20	STD	POSIX	{ pid_t getpid(void); }
6322521Sdyson21	STD	BSD	{ int mount(char *type, char *path, int flags, \
6411294Sswallace			    caddr_t data); }
6512216Sbde; XXX 4.4lite2 uses `char *type' but we're not ready for that.
6612216Sbde; XXX `path' should have type `const char *' but we're not ready for that.
6711294Sswallace22	STD	BSD	{ int unmount(char *path, int flags); }
6811294Sswallace23	STD	POSIX	{ int setuid(uid_t uid); }
6911294Sswallace24	STD	POSIX	{ uid_t getuid(void); }
7011294Sswallace25	STD	POSIX	{ uid_t geteuid(void); }
7111294Sswallace26	STD	BSD	{ int ptrace(int req, pid_t pid, caddr_t addr, \
7211294Sswallace			    int data); }
7311294Sswallace27	STD	BSD	{ int recvmsg(int s, struct msghdr *msg, int flags); }
7411294Sswallace28	STD	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
7511294Sswallace29	STD	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
7611294Sswallace			    int flags, caddr_t from, int *fromlenaddr); }
7711294Sswallace30	STD	BSD	{ int accept(int s, caddr_t name, int *anamelen); }
7811294Sswallace31	STD	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
7911294Sswallace32	STD	BSD	{ int getsockname(int fdes, caddr_t asa, int *alen); }
8011294Sswallace33	STD	POSIX	{ int access(char *path, int flags); }
8111294Sswallace34	STD	BSD	{ int chflags(char *path, int flags); }
8211294Sswallace35	STD	BSD	{ int fchflags(int fd, int flags); }
8311294Sswallace36	STD	BSD	{ int sync(void); }
8411294Sswallace37	STD	POSIX	{ int kill(int pid, int signum); }
8511294Sswallace38	COMPAT	POSIX	{ int stat(char *path, struct ostat *ub); }
8611294Sswallace39	STD	POSIX	{ pid_t getppid(void); }
8711294Sswallace40	COMPAT	POSIX	{ int lstat(char *path, struct ostat *ub); }
8811294Sswallace41	STD	POSIX	{ int dup(u_int fd); }
8911294Sswallace42	STD	POSIX	{ int pipe(void); }
9011294Sswallace43	STD	POSIX	{ gid_t getegid(void); }
9138515Sdfr44	STD	BSD	{ int profil(caddr_t samples, size_t size, \
9238515Sdfr			    size_t offset, u_int scale); }
9347103Sbde45	STD	BSD	{ int ktrace(const char *fname, int ops, int facs, \
9411294Sswallace			    int pid); }
9511294Sswallace46	STD	POSIX	{ int sigaction(int signum, struct sigaction *nsa, \
9611294Sswallace			    struct sigaction *osa); }
9711294Sswallace47	STD	POSIX	{ gid_t getgid(void); }
9811294Sswallace48	STD	POSIX	{ int sigprocmask(int how, sigset_t mask); }
9921776Sbde; XXX note nonstandard (bogus) calling convention - the libc stub passes
10021776Sbde; us the mask, not a pointer to it, and we return the old mask as the
10121776Sbde; (int) return value.
10211294Sswallace49	STD	BSD	{ int getlogin(char *namebuf, u_int namelen); }
10311294Sswallace50	STD	BSD	{ int setlogin(char *namebuf); }
10411294Sswallace51	STD	BSD	{ int acct(char *path); }
10511294Sswallace52	STD	POSIX	{ int sigpending(void); }
10611294Sswallace53	STD	BSD	{ int sigaltstack(struct sigaltstack *nss, \
10711294Sswallace			    struct sigaltstack *oss); }
10811294Sswallace54	STD	POSIX	{ int ioctl(int fd, u_long com, caddr_t data); }
10911294Sswallace55	STD	BSD	{ int reboot(int opt); }
11011294Sswallace56	STD	POSIX	{ int revoke(char *path); }
11111294Sswallace57	STD	POSIX	{ int symlink(char *path, char *link); }
11211294Sswallace58	STD	POSIX	{ int readlink(char *path, char *buf, int count); }
11311294Sswallace59	STD	POSIX	{ int execve(char *fname, char **argv, char **envv); }
11422521Sdyson60	STD	POSIX	{ int umask(int newmask); } umask umask_args int
11511294Sswallace61	STD	BSD	{ int chroot(char *path); }
11611294Sswallace62	COMPAT	POSIX	{ int fstat(int fd, struct ostat *sb); }
11738515Sdfr63	COMPAT	BSD	{ int getkerninfo(int op, char *where, size_t *size, \
11811294Sswallace			    int arg); } getkerninfo getkerninfo_args int
11911294Sswallace64	COMPAT	BSD	{ int getpagesize(void); } \
12011294Sswallace			    getpagesize getpagesize_args int
12132166Salex65	STD	BSD	{ int msync(void *addr, size_t len, int flags); }
12214219Speter66	STD	BSD	{ int vfork(void); }
12311294Sswallace67	OBSOL	NOHIDE	vread
12411294Sswallace68	OBSOL	NOHIDE	vwrite
12511294Sswallace69	STD	BSD	{ int sbrk(int incr); }
12611294Sswallace70	STD	BSD	{ int sstk(int incr); }
12732166Salex71	COMPAT	BSD	{ int mmap(void *addr, int len, int prot, \
12811294Sswallace			    int flags, int fd, long pos); }
12911294Sswallace72	STD	BSD	{ int ovadvise(int anom); } vadvise ovadvise_args int
13032166Salex73	STD	BSD	{ int munmap(void *addr, size_t len); }
13132166Salex74	STD	BSD	{ int mprotect(const void *addr, size_t len, int prot); }
13232166Salex75	STD	BSD	{ int madvise(void *addr, size_t len, int behav); }
13311294Sswallace76	OBSOL	NOHIDE	vhangup
13411294Sswallace77	OBSOL	NOHIDE	vlimit
13533040Sbde78	STD	BSD	{ int mincore(const void *addr, size_t len, \
13633040Sbde			    char *vec); }
13711294Sswallace79	STD	POSIX	{ int getgroups(u_int gidsetsize, gid_t *gidset); }
13811294Sswallace80	STD	POSIX	{ int setgroups(u_int gidsetsize, gid_t *gidset); }
13911294Sswallace81	STD	POSIX	{ int getpgrp(void); }
14011294Sswallace82	STD	POSIX	{ int setpgid(int pid, int pgid); }
14111294Sswallace83	STD	BSD	{ int setitimer(u_int which, struct itimerval *itv, \
14211294Sswallace			    struct itimerval *oitv); }
14311330Sswallace84	COMPAT	BSD	{ int wait(void); }
14411294Sswallace85	STD	BSD	{ int swapon(char *name); }
14511294Sswallace86	STD	BSD	{ int getitimer(u_int which, struct itimerval *itv); }
14611294Sswallace87	COMPAT	BSD	{ int gethostname(char *hostname, u_int len); } \
14711294Sswallace			    gethostname gethostname_args int
14811294Sswallace88	COMPAT	BSD	{ int sethostname(char *hostname, u_int len); } \
14911294Sswallace			    sethostname sethostname_args int
15011294Sswallace89	STD	BSD	{ int getdtablesize(void); }
15111294Sswallace90	STD	POSIX	{ int dup2(u_int from, u_int to); }
15211294Sswallace91	UNIMPL	BSD	getdopt
15336735Sdfr92	STD	POSIX	{ int fcntl(int fd, int cmd, long arg); }
15412216Sbde; XXX should be		{ int fcntl(int fd, int cmd, ...); }
15512216Sbde; but we're not ready for varargs.
15612216Sbde; XXX man page says `int arg' too.
15717702Ssmpatel93	STD	BSD	{ int select(int nd, fd_set *in, fd_set *ou, \
15811294Sswallace			    fd_set *ex, struct timeval *tv); }
15911294Sswallace94	UNIMPL	BSD	setdopt
16011294Sswallace95	STD	POSIX	{ int fsync(int fd); }
16111294Sswallace96	STD	BSD	{ int setpriority(int which, int who, int prio); }
16211294Sswallace97	STD	BSD	{ int socket(int domain, int type, int protocol); }
16311294Sswallace98	STD	BSD	{ int connect(int s, caddr_t name, int namelen); }
16411330Sswallace99	CPT_NOA	BSD	{ int accept(int s, caddr_t name, int *anamelen); } \
16511294Sswallace			    accept accept_args int
16611294Sswallace100	STD	BSD	{ int getpriority(int which, int who); }
16711294Sswallace101	COMPAT	BSD	{ int send(int s, caddr_t buf, int len, int flags); }
16811294Sswallace102	COMPAT	BSD	{ int recv(int s, caddr_t buf, int len, int flags); }
16911294Sswallace103	STD	BSD	{ int sigreturn(struct sigcontext *sigcntxp); }
17011294Sswallace104	STD	BSD	{ int bind(int s, caddr_t name, int namelen); }
17111294Sswallace105	STD	BSD	{ int setsockopt(int s, int level, int name, \
17211294Sswallace			    caddr_t val, int valsize); }
17311294Sswallace106	STD	BSD	{ int listen(int s, int backlog); }
17411294Sswallace107	OBSOL	NOHIDE	vtimes
17511294Sswallace108	COMPAT	BSD	{ int sigvec(int signum, struct sigvec *nsv, \
17611294Sswallace			    struct sigvec *osv); }
17711294Sswallace109	COMPAT	BSD	{ int sigblock(int mask); }
17811294Sswallace110	COMPAT	BSD	{ int sigsetmask(int mask); }
17921776Sbde111	STD	POSIX	{ int sigsuspend(sigset_t mask); }
18021776Sbde; XXX note nonstandard (bogus) calling convention - the libc stub passes
18121776Sbde; us the mask, not a pointer to it.
18211294Sswallace112	COMPAT	BSD	{ int sigstack(struct sigstack *nss, \
18311294Sswallace			    struct sigstack *oss); }
18411294Sswallace113	COMPAT	BSD	{ int recvmsg(int s, struct omsghdr *msg, int flags); }
18511294Sswallace114	COMPAT	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
18611294Sswallace115	OBSOL	NOHIDE	vtrace
18711294Sswallace116	STD	BSD	{ int gettimeofday(struct timeval *tp, \
18811294Sswallace			    struct timezone *tzp); }
18911294Sswallace117	STD	BSD	{ int getrusage(int who, struct rusage *rusage); }
19011294Sswallace118	STD	BSD	{ int getsockopt(int s, int level, int name, \
19111294Sswallace			    caddr_t val, int *avalsize); }
19214215Speter119	UNIMPL	NOHIDE	resuba (BSD/OS 2.x)
19311294Sswallace120	STD	BSD	{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
19411294Sswallace121	STD	BSD	{ int writev(int fd, struct iovec *iovp, \
19511294Sswallace			    u_int iovcnt); }
19611294Sswallace122	STD	BSD	{ int settimeofday(struct timeval *tv, \
19711294Sswallace			    struct timezone *tzp); }
19811294Sswallace123	STD	BSD	{ int fchown(int fd, int uid, int gid); }
19911294Sswallace124	STD	BSD	{ int fchmod(int fd, int mode); }
20011330Sswallace125	CPT_NOA	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
20111294Sswallace			    int flags, caddr_t from, int *fromlenaddr); } \
20211294Sswallace			    recvfrom recvfrom_args int
20311294Sswallace126	STD	BSD	{ int setreuid(int ruid, int euid); }
20411294Sswallace127	STD	BSD	{ int setregid(int rgid, int egid); }
20511294Sswallace128	STD	POSIX	{ int rename(char *from, char *to); }
20611294Sswallace129	COMPAT	BSD	{ int truncate(char *path, long length); }
20711294Sswallace130	COMPAT	BSD	{ int ftruncate(int fd, long length); }
20811294Sswallace131	STD	BSD	{ int flock(int fd, int how); }
20911294Sswallace132	STD	POSIX	{ int mkfifo(char *path, int mode); }
21011294Sswallace133	STD	BSD	{ int sendto(int s, caddr_t buf, size_t len, \
21111294Sswallace			    int flags, caddr_t to, int tolen); }
21211294Sswallace134	STD	BSD	{ int shutdown(int s, int how); }
21311294Sswallace135	STD	BSD	{ int socketpair(int domain, int type, int protocol, \
21411294Sswallace			    int *rsv); }
21511294Sswallace136	STD	POSIX	{ int mkdir(char *path, int mode); }
21611294Sswallace137	STD	POSIX	{ int rmdir(char *path); }
21711294Sswallace138	STD	BSD	{ int utimes(char *path, struct timeval *tptr); }
21811294Sswallace139	OBSOL	NOHIDE	4.2 sigreturn
21911294Sswallace140	STD	BSD	{ int adjtime(struct timeval *delta, \
22011294Sswallace			    struct timeval *olddelta); }
22111294Sswallace141	COMPAT	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
22211294Sswallace142	COMPAT	BSD	{ long gethostid(void); }
22311294Sswallace143	COMPAT	BSD	{ int sethostid(long hostid); }
22411294Sswallace144	COMPAT	BSD	{ int getrlimit(u_int which, struct ogetrlimit *rlp); }
22511294Sswallace145	COMPAT	BSD	{ int setrlimit(u_int which, struct ogetrlimit *rlp); }
22611294Sswallace146	COMPAT	BSD	{ int killpg(int pgid, int signum); }
22711294Sswallace147	STD	POSIX	{ int setsid(void); }
22811294Sswallace148	STD	BSD	{ int quotactl(char *path, int cmd, int uid, \
22911294Sswallace			    caddr_t arg); }
23011294Sswallace149	COMPAT	BSD	{ int quota(void); }
23111330Sswallace150	CPT_NOA	BSD	{ int getsockname(int fdec, caddr_t asa, int *alen); }\
23211330Sswallace			    getsockname getsockname_args int
2331541Srgrimes
2341541Srgrimes; Syscalls 151-180 inclusive are reserved for vendor-specific
2351541Srgrimes; system calls.  (This includes various calls added for compatibity
2361541Srgrimes; with other Unix variants.)
2371541Srgrimes; Some of these calls are now supported by BSD...
23814215Speter151	UNIMPL	NOHIDE	sem_lock (BSD/OS 2.x)
23914215Speter152	UNIMPL	NOHIDE	sem_wakeup (BSD/OS 2.x)
24014215Speter153	UNIMPL	NOHIDE	asyncdaemon (BSD/OS 2.x)
24111294Sswallace154	UNIMPL	NOHIDE	nosys
24230740Sphk; 155 is initialized by the NFS code, if present.
24330740Sphk155	NOIMPL	BSD	{ int nfssvc(int flag, caddr_t argp); }
24411294Sswallace156	COMPAT	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
24511294Sswallace			    long *basep); }
24611294Sswallace157	STD	BSD	{ int statfs(char *path, struct statfs *buf); }
24711294Sswallace158	STD	BSD	{ int fstatfs(int fd, struct statfs *buf); }
24811294Sswallace159	UNIMPL	NOHIDE	nosys
24911294Sswallace160	UNIMPL	NOHIDE	nosys
25030740Sphk; 161 is initialized by the NFS code, if present.
25130740Sphk161	NOIMPL	BSD	{ int getfh(char *fname, struct fhandle *fhp); }
25211294Sswallace162	STD	BSD	{ int getdomainname(char *domainname, int len); }
25311294Sswallace163	STD	BSD	{ int setdomainname(char *domainname, int len); }
25412216Sbde164	STD	BSD	{ int uname(struct utsname *name); }
25511294Sswallace165	STD	BSD	{ int sysarch(int op, char *parms); }
25611294Sswallace166	STD	BSD	{ int rtprio(int function, pid_t pid, \
25711294Sswallace			    struct rtprio *rtp); }
25811294Sswallace167	UNIMPL	NOHIDE	nosys
25911294Sswallace168	UNIMPL	NOHIDE	nosys
26011294Sswallace169	STD	BSD	{ int semsys(int which, int a2, int a3, int a4, \
26111294Sswallace			    int a5); }
26212216Sbde; XXX should be		{ int semsys(int which, ...); }
26311294Sswallace170	STD	BSD	{ int msgsys(int which, int a2, int a3, int a4, \
26411294Sswallace			    int a5, int a6); }
26512216Sbde; XXX should be		{ int msgsys(int which, ...); }
26611294Sswallace171	STD	BSD	{ int shmsys(int which, int a2, int a3, int a4); }
26712216Sbde; XXX should be		{ int shmsys(int which, ...); }
26811294Sswallace172	UNIMPL	NOHIDE	nosys
26945311Sdt173	STD	POSIX	{ ssize_t pread(int fd, void *buf, size_t nbyte, \
27045311Sdt			    int pad, off_t offset); }
27145311Sdt174	STD	POSIX	{ ssize_t pwrite(int fd, const void *buf, \
27245311Sdt			    size_t nbyte, int pad, off_t offset); }
27311294Sswallace175	UNIMPL	NOHIDE	nosys
27411294Sswallace176	STD	BSD	{ int ntp_adjtime(struct timex *tp); }
27514215Speter177	UNIMPL	NOHIDE	sfork (BSD/OS 2.x)
27614215Speter178	UNIMPL	NOHIDE	getdescriptor (BSD/OS 2.x)
27714215Speter179	UNIMPL	NOHIDE	setdescriptor (BSD/OS 2.x)
27849428Sjkh180	UNIMPL	NOHIDE	nosys
2791541Srgrimes
28049428Sjkh; Syscalls 181-199 are used by/reserved for BSD
28111294Sswallace181	STD	POSIX	{ int setgid(gid_t gid); }
28211294Sswallace182	STD	BSD	{ int setegid(gid_t egid); }
28311294Sswallace183	STD	BSD	{ int seteuid(uid_t euid); }
28432889Sphk184	UNIMPL	BSD	lfs_bmapv
28532889Sphk185	UNIMPL	BSD	lfs_markv
28632889Sphk186	UNIMPL	BSD	lfs_segclean
28732889Sphk187	UNIMPL	BSD	lfs_segwait
28811294Sswallace188	STD	POSIX	{ int stat(char *path, struct stat *ub); }
28911294Sswallace189	STD	POSIX	{ int fstat(int fd, struct stat *sb); }
29011294Sswallace190	STD	POSIX	{ int lstat(char *path, struct stat *ub); }
29111294Sswallace191	STD	POSIX	{ int pathconf(char *path, int name); }
29211294Sswallace192	STD	POSIX	{ int fpathconf(int fd, int name); }
29311294Sswallace193	UNIMPL	NOHIDE	nosys
29411294Sswallace194	STD	BSD	{ int getrlimit(u_int which, \
29511330Sswallace			    struct orlimit *rlp); } \
29611294Sswallace			    getrlimit __getrlimit_args int
29711294Sswallace195	STD	BSD	{ int setrlimit(u_int which, \
29811330Sswallace			    struct orlimit *rlp); } \
29911294Sswallace			    setrlimit __setrlimit_args int
30011294Sswallace196	STD	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
30111294Sswallace			    long *basep); }
30211294Sswallace197	STD	BSD	{ caddr_t mmap(caddr_t addr, size_t len, int prot, \
30311294Sswallace			    int flags, int fd, long pad, off_t pos); }
30411294Sswallace198	STD	NOHIDE	{ int nosys(void); } __syscall __syscall_args int
30511294Sswallace199	STD	POSIX	{ off_t lseek(int fd, int pad, off_t offset, \
30611294Sswallace			    int whence); }
30711294Sswallace200	STD	BSD	{ int truncate(char *path, int pad, off_t length); }
30811294Sswallace201	STD	BSD	{ int ftruncate(int fd, int pad, off_t length); }
30911294Sswallace202	STD	BSD	{ int __sysctl(int *name, u_int namelen, void *old, \
31011294Sswallace			    size_t *oldlenp, void *new, size_t newlen); } \
31111294Sswallace			    __sysctl sysctl_args int
3122696Swollman; properly, __sysctl should be a NOHIDE, but making an exception
3132696Swollman; here allows to avoid one in libc/sys/Makefile.inc.
31432166Salex203	STD	BSD	{ int mlock(const void *addr, size_t len); }
31532166Salex204	STD	BSD	{ int munlock(const void *addr, size_t len); }
31635938Sdyson205	STD	BSD	{ int undelete(char *path); }
31735938Sdyson206	STD	BSD	{ int futimes(int fd, struct timeval *tptr); }
31828399Speter207	STD	BSD	{ int getpgid(pid_t pid); }
31925581Speter208	UNIMPL	NOHIDE	newreboot (NetBSD)
32029348Speter209	STD	BSD	{ int poll(struct pollfd *fds, u_int nfds, \
32129348Speter			    int timeout); }
3222124Sdg
3232124Sdg;
3242124Sdg; The following are reserved for loadable syscalls
3252124Sdg;
32611294Sswallace210	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
32711294Sswallace211	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
32811294Sswallace212	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
32911294Sswallace213	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33011294Sswallace214	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33111294Sswallace215	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33211294Sswallace216	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33311294Sswallace217	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33411294Sswallace218	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33511294Sswallace219	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33612864Speter
33712864Speter;
33814215Speter; The following were introduced with NetBSD/4.4Lite-2
33912864Speter;
34012864Speter220	STD	BSD	{ int __semctl(int semid, int semnum, int cmd, \
34112864Speter			    union semun *arg); }
34212864Speter221	STD	BSD	{ int semget(key_t key, int nsems, int semflg); }
34312864Speter222	STD	BSD	{ int semop(int semid, struct sembuf *sops, \
34412864Speter			    u_int nsops); }
34512864Speter223	STD	BSD	{ int semconfig(int flag); }
34612864Speter224	STD	BSD	{ int msgctl(int msqid, int cmd, \
34712864Speter			    struct msqid_ds *buf); }
34812864Speter225	STD	BSD	{ int msgget(key_t key, int msgflg); }
34912864Speter226	STD	BSD	{ int msgsnd(int msqid, void *msgp, size_t msgsz, \
35012864Speter			    int msgflg); }
35112864Speter227	STD	BSD	{ int msgrcv(int msqid, void *msgp, size_t msgsz, \
35212864Speter			    long msgtyp, int msgflg); }
35312864Speter228	STD	BSD	{ int shmat(int shmid, void *shmaddr, int shmflg); }
35412864Speter229	STD	BSD	{ int shmctl(int shmid, int cmd, \
35512864Speter			    struct shmid_ds *buf); }
35612864Speter230	STD	BSD	{ int shmdt(void *shmaddr); }
35712864Speter231	STD	BSD	{ int shmget(key_t key, int size, int shmflg); }
35814219Speter;
35925580Speter232	STD	POSIX	{ int clock_gettime(clockid_t clock_id, \
36025580Speter			    struct timespec *tp); }
36125580Speter233	STD	POSIX	{ int clock_settime(clockid_t clock_id, \
36225580Speter			    const struct timespec *tp); }
36325580Speter234	STD	POSIX	{ int clock_getres(clockid_t clock_id, \
36425580Speter			    struct timespec *tp); }
36525580Speter235	UNIMPL	NOHIDE	timer_create
36625580Speter236	UNIMPL	NOHIDE	timer_delete
36725580Speter237	UNIMPL	NOHIDE	timer_settime
36825580Speter238	UNIMPL	NOHIDE	timer_gettime
36925580Speter239	UNIMPL	NOHIDE	timer_getoverrun
37025580Speter240	STD	POSIX	{ int nanosleep(const struct timespec *rqtp, \
37125580Speter			    struct timespec *rmtp); }
37214219Speter241	UNIMPL	NOHIDE	nosys
37314219Speter242	UNIMPL	NOHIDE	nosys
37414219Speter243	UNIMPL	NOHIDE	nosys
37514219Speter244	UNIMPL	NOHIDE	nosys
37614219Speter245	UNIMPL	NOHIDE	nosys
37714219Speter246	UNIMPL	NOHIDE	nosys
37814219Speter247	UNIMPL	NOHIDE	nosys
37914219Speter248	UNIMPL	NOHIDE	nosys
38014219Speter249	UNIMPL	NOHIDE	nosys
38114219Speter; syscall numbers initially used in OpenBSD
38232166Salex250	STD	BSD	{ int minherit(void *addr, size_t len, int inherit); }
38314219Speter251	STD	BSD	{ int rfork(int flags); }
38429348Speter252	STD	BSD	{ int openbsd_poll(struct pollfd *fds, u_int nfds, \
38529348Speter			    int timeout); }
38624451Speter253	STD	BSD	{ int issetugid(void); }
38724439Speter254	STD	BSD	{ int lchown(char *path, int uid, int gid); }
38825537Sdfr255	UNIMPL	NOHIDE	nosys
38925537Sdfr256	UNIMPL	NOHIDE	nosys
39025537Sdfr257	UNIMPL	NOHIDE	nosys
39125537Sdfr258	UNIMPL	NOHIDE	nosys
39225537Sdfr259	UNIMPL	NOHIDE	nosys
39325537Sdfr260	UNIMPL	NOHIDE	nosys
39425537Sdfr261	UNIMPL	NOHIDE	nosys
39525537Sdfr262	UNIMPL	NOHIDE	nosys
39625537Sdfr263	UNIMPL	NOHIDE	nosys
39725537Sdfr264	UNIMPL	NOHIDE	nosys
39825537Sdfr265	UNIMPL	NOHIDE	nosys
39925537Sdfr266	UNIMPL	NOHIDE	nosys
40025537Sdfr267	UNIMPL	NOHIDE	nosys
40125537Sdfr268	UNIMPL	NOHIDE	nosys
40225537Sdfr269	UNIMPL	NOHIDE	nosys
40325537Sdfr270	UNIMPL	NOHIDE	nosys
40425537Sdfr271	UNIMPL	NOHIDE	nosys
40535938Sdyson272	STD	BSD	{ int getdents(int fd, char *buf, size_t count); }
40625537Sdfr273	UNIMPL	NOHIDE	nosys
40735938Sdyson274	STD	BSD	{ int lchmod(char *path, mode_t mode); }
40835938Sdyson275	NOPROTO BSD	{ int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown netbsd_lchown int
40935938Sdyson276	STD	BSD	{ int lutimes(char *path, struct timeval *tptr); }
41035938Sdyson277	NOPROTO	BSD	{ int msync(void *addr, size_t len, int flags); } netbsd_msync netbsd_msync int
41135938Sdyson278	STD	BSD	{ int nstat(char *path, struct nstat *ub); }
41235938Sdyson279	STD	BSD	{ int nfstat(int fd, struct nstat *sb); }
41335938Sdyson280	STD	BSD	{ int nlstat(char *path, struct nstat *ub); }
41425537Sdfr281	UNIMPL	NOHIDE	nosys
41525537Sdfr282	UNIMPL	NOHIDE	nosys
41625537Sdfr283	UNIMPL	NOHIDE	nosys
41725537Sdfr284	UNIMPL	NOHIDE	nosys
41825537Sdfr285	UNIMPL	NOHIDE	nosys
41925537Sdfr286	UNIMPL	NOHIDE	nosys
42025537Sdfr287	UNIMPL	NOHIDE	nosys
42125537Sdfr288	UNIMPL	NOHIDE	nosys
42225537Sdfr289	UNIMPL	NOHIDE	nosys
42325537Sdfr290	UNIMPL	NOHIDE	nosys
42425537Sdfr291	UNIMPL	NOHIDE	nosys
42525537Sdfr292	UNIMPL	NOHIDE	nosys
42625537Sdfr293	UNIMPL	NOHIDE	nosys
42725537Sdfr294	UNIMPL	NOHIDE	nosys
42825537Sdfr295	UNIMPL	NOHIDE	nosys
42925537Sdfr296	UNIMPL	NOHIDE	nosys
43025537Sdfr297	UNIMPL	NOHIDE	nosys
43125537Sdfr298	UNIMPL	NOHIDE	nosys
43225537Sdfr299	UNIMPL	NOHIDE	nosys
43325537Sdfr; syscall numbers for FreeBSD
43425537Sdfr300	STD	BSD	{ int modnext(int modid); }
43525537Sdfr301	STD	BSD	{ int modstat(int modid, struct module_stat* stat); }
43625537Sdfr302	STD	BSD	{ int modfnext(int modid); }
43725537Sdfr303	STD	BSD	{ int modfind(char *name); }
43825537Sdfr304	STD	BSD	{ int kldload(const char *file); }
43925537Sdfr305	STD	BSD	{ int kldunload(int fileid); }
44025537Sdfr306	STD	BSD	{ int kldfind(const char *file); }
44125537Sdfr307	STD	BSD	{ int kldnext(int fileid); }
44225537Sdfr308	STD	BSD	{ int kldstat(int fileid, struct kld_file_stat* stat); }
44325537Sdfr309	STD	BSD	{ int kldfirstmod(int fileid); }
44428399Speter310	STD	BSD	{ int getsid(pid_t pid); }
44525580Speter311	UNIMPL	NOHIDE	setresuid
44625580Speter312	UNIMPL	NOHIDE	setresgid
44736033Speter313	OBSOL	NOHIDE	signanosleep
44826671Sdyson314     STD     BSD     { int aio_return(struct aiocb *aiocbp); }
44926671Sdyson315     STD     BSD     { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
45026671Sdyson316     STD     BSD     { int aio_cancel(int fd, struct aiocb *aiocbp); }
45126671Sdyson317     STD     BSD     { int aio_error(struct aiocb *aiocbp); }
45226671Sdyson318     STD     BSD     { int aio_read(struct aiocb *aiocbp); }
45326671Sdyson319     STD     BSD     { int aio_write(struct aiocb *aiocbp); }
45426671Sdyson320     STD     BSD     { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
45526671Sdyson321     STD     BSD     { int yield(void); }
45626671Sdyson322     STD     BSD     { int thr_sleep(const struct timespec *timeout); }
45726671Sdyson323     STD     BSD     { int thr_wakeup(pid_t pid); }
45826671Sdyson324     STD     BSD     { int mlockall(int how); }
45926671Sdyson325     STD     BSD     { int munlockall(void); }
46029391Sphk326     STD     BSD     { int __getcwd(u_char *buf, u_int buflen); }
46134925Sdufault
46234925Sdufault327     STD     POSIX   { int sched_setparam (pid_t pid, const struct sched_param *param); }
46334925Sdufault328     STD     POSIX   { int sched_getparam (pid_t pid, struct sched_param *param); }
46434925Sdufault
46534925Sdufault329     STD     POSIX   { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
46634925Sdufault330     STD     POSIX   { int sched_getscheduler (pid_t pid); }
46734925Sdufault
46834925Sdufault331     STD     POSIX   { int sched_yield (void); }
46934925Sdufault332     STD     POSIX   { int sched_get_priority_max (int policy); }
47034925Sdufault333     STD     POSIX   { int sched_get_priority_min (int policy); }
47134925Sdufault334     STD     POSIX   { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
47247103Sbde335	STD	BSD	{ int utrace(const void *addr, size_t len); }
47340931Sdg336	STD	BSD	{ int sendfile(int fd, int s, off_t offset, size_t nbytes, \
47440931Sdg				struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
47541088Speter337	STD	BSD	{ int kldsym(int fileid, int cmd, void *data); }
47646154Sphk338	STD	BSD	{ int jail(struct jail *jail); }
47749420Sjkh339	UNIMPL	BSD	pioctl
478