syscalls.master revision 122537
180016Sobrien $FreeBSD: head/sys/kern/syscalls.master 122537 2003-11-12 08:01:40Z mckusick $
280016Sobrien;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
380016Sobrien;
480016Sobrien; System call name/number master file.
578828Sobrien; Processed to created init_sysent.c, syscalls.c and syscall.h.
678828Sobrien
778828Sobrien; Columns: number [M]type nargs namespc name alt{name,tag,rtyp}/comments
878828Sobrien;	number	system call number, must be in order
978828Sobrien;	type	one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA,
1078828Sobrien;		[M]LIBCOMPAT, [M]NODEF,  [M]NOARGS,  [M]NOPROTO,  [M]NOIMPL,
1178828Sobrien;		[M]NOSTD, [M]COMPAT4
1278828Sobrien;	namespc one of POSIX, BSD, NOHIDE
1378828Sobrien;	name	psuedo-prototype of syscall routine
1478828Sobrien;		If one of the following alts is different, then all appear:
1577298Sobrien;	altname	name of system call if different
1668765Sobrien;	alttag	name of args struct tag if different from [o]`name'"_args"
1777298Sobrien;	altrtyp	return type if not int (bogus - syscalls always return int)
1868765Sobrien;		for UNIMPL/OBSOL, name continues with comments
1977298Sobrien
2077298Sobrien; types:
2177298Sobrien;	[M]	e.g. like MSTD -- means the system call is MP-safe.  If no
2277298Sobrien;		M prefix is used, the syscall wrapper will obtain the Giant
2377298Sobrien;		lock for the syscall.
2477298Sobrien;	STD	always included
2577298Sobrien;	COMPAT	included on COMPAT #ifdef
2677298Sobrien;	COMPAT4	included on COMPAT4 #ifdef (FreeBSD 4 compat)
2777298Sobrien;	LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
2877298Sobrien;	OBSOL	obsolete, not included in system, only specifies name
2977298Sobrien;	UNIMPL	not implemented, placeholder only
3077298Sobrien;	NOSTD	implemented but as a lkm that can be statically
3177298Sobrien;			compiled in sysent entry will be filled with lkmsys
3277298Sobrien;			so the SYSCALL_MODULE macro works
3377298Sobrien;
3477298Sobrien; Please copy any additions and changes to the following compatability tables:
3577298Sobrien; sys/ia64/ia32/syscalls.master  (take a best guess)
3677298Sobrien; [other 64 bit platforms with an alternate 32 bit syscall table go here too]
3777298Sobrien; #ifdef's, etc. may be included, and are copied to the output files.
3877298Sobrien
3977298Sobrien#include <sys/param.h>
4077298Sobrien#include <sys/sysent.h>
4177298Sobrien#include <sys/sysproto.h>
4277298Sobrien
4377298Sobrien; Reserved/unimplemented system calls in the range 0-150 inclusive
4477298Sobrien; are reserved for use in future Berkeley releases.
4577298Sobrien; Additional system calls implemented in vendor and other
4677298Sobrien; redistributions should be placed in the reserved range at the end
4777298Sobrien; of the current calls.
4877298Sobrien
4977298Sobrien0	STD	NOHIDE	{ int nosys(void); } syscall nosys_args int
5077298Sobrien1	MSTD	NOHIDE	{ void sys_exit(int rval); } exit sys_exit_args void
5177298Sobrien2	MSTD	POSIX	{ int fork(void); }
5277298Sobrien3	MSTD	POSIX	{ ssize_t read(int fd, void *buf, size_t nbyte); }
5377298Sobrien4	MSTD	POSIX	{ ssize_t write(int fd, const void *buf, size_t nbyte); }
5478828Sobrien5	STD	POSIX	{ int open(char *path, int flags, int mode); }
5577298Sobrien; XXX should be		{ int open(const char *path, int flags, ...); }
5677298Sobrien; but we're not ready for `const' or varargs.
5777298Sobrien; XXX man page says `mode_t mode'.
5877298Sobrien6	MSTD	POSIX	{ int close(int fd); }
5977298Sobrien7	MSTD	BSD	{ int wait4(int pid, int *status, int options, \
6077298Sobrien			    struct rusage *rusage); } wait4 wait_args int
6177298Sobrien8	COMPAT	BSD	{ int creat(char *path, int mode); }
6278828Sobrien9	STD	POSIX	{ int link(char *path, char *link); }
6377298Sobrien10	STD	POSIX	{ int unlink(char *path); }
6477298Sobrien11	OBSOL	NOHIDE	execv
6577298Sobrien12	STD	POSIX	{ int chdir(char *path); }
6677298Sobrien13	STD	BSD	{ int fchdir(int fd); }
6777298Sobrien14	STD	POSIX	{ int mknod(char *path, int mode, int dev); }
6877298Sobrien15	STD	POSIX	{ int chmod(char *path, int mode); }
6977298Sobrien16	STD	POSIX	{ int chown(char *path, int uid, int gid); }
7077298Sobrien17	MSTD	BSD	{ int obreak(char *nsize); } break obreak_args int
7177298Sobrien18	COMPAT4	BSD	{ int getfsstat(struct ostatfs *buf, long bufsize, \
7277298Sobrien			    int flags); }
7377298Sobrien19	COMPAT	POSIX	{ long lseek(int fd, long offset, int whence); }
7477298Sobrien20	MSTD	POSIX	{ pid_t getpid(void); }
7577298Sobrien21	STD	BSD	{ int mount(char *type, char *path, int flags, \
7677298Sobrien			    caddr_t data); }
7777298Sobrien; XXX `path' should have type `const char *' but we're not ready for that.
7877298Sobrien22	STD	BSD	{ int unmount(char *path, int flags); }
7977298Sobrien23	MSTD	POSIX	{ int setuid(uid_t uid); }
8077298Sobrien24	MSTD	POSIX	{ uid_t getuid(void); }
8177298Sobrien25	MSTD	POSIX	{ uid_t geteuid(void); }
8277298Sobrien26	MSTD	BSD	{ int ptrace(int req, pid_t pid, caddr_t addr, \
8377298Sobrien			    int data); }
8477298Sobrien27	MSTD	BSD	{ int recvmsg(int s, struct msghdr *msg, int flags); }
8577298Sobrien28	MSTD	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
8677298Sobrien29	MSTD	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
8777298Sobrien			    int flags, caddr_t from, int *fromlenaddr); }
8877298Sobrien30	MSTD	BSD	{ int accept(int s, caddr_t name, int *anamelen); }
8977298Sobrien31	MSTD	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
9077298Sobrien32	MSTD	BSD	{ int getsockname(int fdes, caddr_t asa, int *alen); }
9177298Sobrien33	STD	POSIX	{ int access(char *path, int flags); }
9277298Sobrien34	STD	BSD	{ int chflags(char *path, int flags); }
9377298Sobrien35	STD	BSD	{ int fchflags(int fd, int flags); }
9477298Sobrien36	STD	BSD	{ int sync(void); }
9577298Sobrien37	MSTD	POSIX	{ int kill(int pid, int signum); }
9678828Sobrien38	COMPAT	POSIX	{ int stat(char *path, struct ostat *ub); }
9777298Sobrien39	MSTD	POSIX	{ pid_t getppid(void); }
9877298Sobrien40	COMPAT	POSIX	{ int lstat(char *path, struct ostat *ub); }
9977298Sobrien41	MSTD	POSIX	{ int dup(u_int fd); }
10077298Sobrien42	MSTD	POSIX	{ int pipe(void); }
10177298Sobrien43	MSTD	POSIX	{ gid_t getegid(void); }
10277298Sobrien44	MSTD	BSD	{ int profil(caddr_t samples, size_t size, \
10377298Sobrien			    size_t offset, u_int scale); }
10477298Sobrien45	MSTD	BSD	{ int ktrace(const char *fname, int ops, int facs, \
10577298Sobrien			    int pid); }
10677298Sobrien46	MCOMPAT	POSIX	{ int sigaction(int signum, struct osigaction *nsa, \
10777298Sobrien			    struct osigaction *osa); }
10877298Sobrien47	MSTD	POSIX	{ gid_t getgid(void); }
10977298Sobrien48	MCOMPAT	POSIX	{ int sigprocmask(int how, osigset_t mask); }
11077298Sobrien; XXX note nonstandard (bogus) calling convention - the libc stub passes
11177298Sobrien; us the mask, not a pointer to it, and we return the old mask as the
11277298Sobrien; (int) return value.
11377298Sobrien49	MSTD	BSD	{ int getlogin(char *namebuf, u_int namelen); }
11477298Sobrien50	MSTD	BSD	{ int setlogin(char *namebuf); }
11577298Sobrien51	MSTD	BSD	{ int acct(char *path); }
11677298Sobrien52	MCOMPAT	POSIX	{ int sigpending(void); }
11777298Sobrien53	MSTD	BSD	{ int sigaltstack(stack_t *ss, stack_t *oss); }
11877298Sobrien54	MSTD	POSIX	{ int ioctl(int fd, u_long com, caddr_t data); }
11977298Sobrien55	MSTD	BSD	{ int reboot(int opt); }
12077298Sobrien56	STD	POSIX	{ int revoke(char *path); }
12177298Sobrien57	STD	POSIX	{ int symlink(char *path, char *link); }
12277298Sobrien58	STD	POSIX	{ int readlink(char *path, char *buf, int count); }
12377298Sobrien59	MSTD	POSIX	{ int execve(char *fname, char **argv, char **envv); }
12477298Sobrien60	MSTD	POSIX	{ int umask(int newmask); } umask umask_args int
12577298Sobrien61	STD	BSD	{ int chroot(char *path); }
12677298Sobrien62	MCOMPAT	POSIX	{ int fstat(int fd, struct ostat *sb); }
12777298Sobrien63	MCOMPAT	BSD	{ int getkerninfo(int op, char *where, size_t *size, \
12877298Sobrien			    int arg); } getkerninfo getkerninfo_args int
12977298Sobrien64	MCOMPAT	BSD	{ int getpagesize(void); } \
13077298Sobrien			    getpagesize getpagesize_args int
13177298Sobrien65	MSTD	BSD	{ int msync(void *addr, size_t len, int flags); }
13277298Sobrien66	MSTD	BSD	{ int vfork(void); }
13377298Sobrien67	OBSOL	NOHIDE	vread
13477298Sobrien68	OBSOL	NOHIDE	vwrite
13577298Sobrien69	MSTD	BSD	{ int sbrk(int incr); }
13677298Sobrien70	MSTD	BSD	{ int sstk(int incr); }
13777298Sobrien71	MCOMPAT	BSD	{ int mmap(void *addr, int len, int prot, \
13877298Sobrien			    int flags, int fd, long pos); }
13977298Sobrien72	MSTD	BSD	{ int ovadvise(int anom); } vadvise ovadvise_args int
14077298Sobrien73	MSTD	BSD	{ int munmap(void *addr, size_t len); }
14177298Sobrien74	MSTD	BSD	{ int mprotect(const void *addr, size_t len, int prot); }
14277298Sobrien75	MSTD	BSD	{ int madvise(void *addr, size_t len, int behav); }
14377298Sobrien76	OBSOL	NOHIDE	vhangup
14477298Sobrien77	OBSOL	NOHIDE	vlimit
14577298Sobrien78	MSTD	BSD	{ int mincore(const void *addr, size_t len, \
14678828Sobrien			    char *vec); }
14777298Sobrien79	MSTD	POSIX	{ int getgroups(u_int gidsetsize, gid_t *gidset); }
14877298Sobrien80	MSTD	POSIX	{ int setgroups(u_int gidsetsize, gid_t *gidset); }
14977298Sobrien81	MSTD	POSIX	{ int getpgrp(void); }
15077298Sobrien82	MSTD	POSIX	{ int setpgid(int pid, int pgid); }
15177298Sobrien83	MSTD	BSD	{ int setitimer(u_int which, struct itimerval *itv, \
15277298Sobrien			    struct itimerval *oitv); }
15377298Sobrien84	MCOMPAT	BSD	{ int wait(void); }
15477298Sobrien85	MSTD	BSD	{ int swapon(char *name); }
15577298Sobrien86	MSTD	BSD	{ int getitimer(u_int which, struct itimerval *itv); }
15677298Sobrien87	MCOMPAT	BSD	{ int gethostname(char *hostname, u_int len); } \
15777298Sobrien			    gethostname gethostname_args int
15877298Sobrien88	MCOMPAT	BSD	{ int sethostname(char *hostname, u_int len); } \
15977298Sobrien			    sethostname sethostname_args int
16077298Sobrien89	MSTD	BSD	{ int getdtablesize(void); }
16177298Sobrien90	MSTD	POSIX	{ int dup2(u_int from, u_int to); }
16277298Sobrien91	UNIMPL	BSD	getdopt
16377298Sobrien92	MSTD	POSIX	{ int fcntl(int fd, int cmd, long arg); }
16477298Sobrien; XXX should be		{ int fcntl(int fd, int cmd, ...); }
16577298Sobrien; but we're not ready for varargs.
16677298Sobrien93	MSTD	BSD	{ int select(int nd, fd_set *in, fd_set *ou, \
16777298Sobrien			    fd_set *ex, struct timeval *tv); }
16877298Sobrien94	UNIMPL	BSD	setdopt
16978828Sobrien95	STD	POSIX	{ int fsync(int fd); }
17077298Sobrien96	MSTD	BSD	{ int setpriority(int which, int who, int prio); }
17177298Sobrien97	MSTD	BSD	{ int socket(int domain, int type, int protocol); }
17277298Sobrien98	MSTD	BSD	{ int connect(int s, caddr_t name, int namelen); }
17377298Sobrien99	MCPT_NOA BSD	{ int accept(int s, caddr_t name, int *anamelen); } \
17478828Sobrien			    accept accept_args int
17577298Sobrien100	MSTD	BSD	{ int getpriority(int which, int who); }
17677298Sobrien101	MCOMPAT	BSD	{ int send(int s, caddr_t buf, int len, int flags); }
17777298Sobrien102	MCOMPAT	BSD	{ int recv(int s, caddr_t buf, int len, int flags); }
17877298Sobrien103	MCOMPAT	BSD	{ int sigreturn(struct osigcontext *sigcntxp); }
17961843Sobrien104	MSTD	BSD	{ int bind(int s, caddr_t name, int namelen); }
18061843Sobrien105	MSTD	BSD	{ int setsockopt(int s, int level, int name, \
18161843Sobrien			    caddr_t val, int valsize); }
18261843Sobrien106	MSTD	BSD	{ int listen(int s, int backlog); }
18361843Sobrien107	OBSOL	NOHIDE	vtimes
18461843Sobrien108	MCOMPAT	BSD	{ int sigvec(int signum, struct sigvec *nsv, \
18577298Sobrien			    struct sigvec *osv); }
18677298Sobrien109	MCOMPAT	BSD	{ int sigblock(int mask); }
18777298Sobrien110	MCOMPAT	BSD	{ int sigsetmask(int mask); }
18877298Sobrien111	MCOMPAT	POSIX	{ int sigsuspend(osigset_t mask); }
18977298Sobrien; XXX note nonstandard (bogus) calling convention - the libc stub passes
19077298Sobrien; us the mask, not a pointer to it.
19177298Sobrien112	MCOMPAT	BSD	{ int sigstack(struct sigstack *nss, \
19277298Sobrien			    struct sigstack *oss); }
19378828Sobrien113	MCOMPAT	BSD	{ int recvmsg(int s, struct omsghdr *msg, int flags); }
19477298Sobrien114	MCOMPAT	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
19577298Sobrien115	OBSOL	NOHIDE	vtrace
19677298Sobrien116	MSTD	BSD	{ int gettimeofday(struct timeval *tp, \
19777298Sobrien			    struct timezone *tzp); }
19877298Sobrien117	MSTD	BSD	{ int getrusage(int who, struct rusage *rusage); }
19977298Sobrien118	MSTD	BSD	{ int getsockopt(int s, int level, int name, \
20077298Sobrien			    caddr_t val, int *avalsize); }
20177298Sobrien119	UNIMPL	NOHIDE	resuba (BSD/OS 2.x)
20277298Sobrien120	MSTD	BSD	{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
20377298Sobrien121	MSTD	BSD	{ int writev(int fd, struct iovec *iovp, \
20477298Sobrien			    u_int iovcnt); }
20577298Sobrien122	MSTD	BSD	{ int settimeofday(struct timeval *tv, \
20677298Sobrien			    struct timezone *tzp); }
20777298Sobrien123	STD	BSD	{ int fchown(int fd, int uid, int gid); }
20877298Sobrien124	STD	BSD	{ int fchmod(int fd, int mode); }
20977298Sobrien125	MCPT_NOA BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
21077298Sobrien			    int flags, caddr_t from, int *fromlenaddr); } \
21177298Sobrien			    recvfrom recvfrom_args int
21277298Sobrien126	MSTD	BSD	{ int setreuid(int ruid, int euid); }
21377298Sobrien127	MSTD	BSD	{ int setregid(int rgid, int egid); }
21477298Sobrien128	STD	POSIX	{ int rename(char *from, char *to); }
21577298Sobrien129	COMPAT	BSD	{ int truncate(char *path, long length); }
21677298Sobrien130	COMPAT	BSD	{ int ftruncate(int fd, long length); }
21777298Sobrien131	MSTD	BSD	{ int flock(int fd, int how); }
21877298Sobrien132	STD	POSIX	{ int mkfifo(char *path, int mode); }
21977298Sobrien133	MSTD	BSD	{ int sendto(int s, caddr_t buf, size_t len, \
22077298Sobrien			    int flags, caddr_t to, int tolen); }
22177298Sobrien134	MSTD	BSD	{ int shutdown(int s, int how); }
22277298Sobrien135	MSTD	BSD	{ int socketpair(int domain, int type, int protocol, \
22377298Sobrien			    int *rsv); }
22477298Sobrien136	STD	POSIX	{ int mkdir(char *path, int mode); }
22577298Sobrien137	STD	POSIX	{ int rmdir(char *path); }
22677298Sobrien138	STD	BSD	{ int utimes(char *path, struct timeval *tptr); }
22777298Sobrien139	OBSOL	NOHIDE	4.2 sigreturn
22877298Sobrien140	MSTD	BSD	{ int adjtime(struct timeval *delta, \
22977298Sobrien			    struct timeval *olddelta); }
23077298Sobrien141	MCOMPAT	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
23177298Sobrien142	MCOMPAT	BSD	{ long gethostid(void); }
23277298Sobrien143	MCOMPAT	BSD	{ int sethostid(long hostid); }
23377298Sobrien144	MCOMPAT	BSD	{ int getrlimit(u_int which, struct orlimit *rlp); }
23477298Sobrien145	MCOMPAT	BSD	{ int setrlimit(u_int which, struct orlimit *rlp); }
23577298Sobrien146	MCOMPAT	BSD	{ int killpg(int pgid, int signum); }
23677298Sobrien147	MSTD	POSIX	{ int setsid(void); }
23777298Sobrien148	STD	BSD	{ int quotactl(char *path, int cmd, int uid, \
23877298Sobrien			    caddr_t arg); }
23977298Sobrien149	MCOMPAT	BSD	{ int quota(void); }
24077298Sobrien150	MCPT_NOA BSD	{ int getsockname(int fdec, caddr_t asa, int *alen); }\
24177298Sobrien			    getsockname getsockname_args int
24277298Sobrien
24377298Sobrien; Syscalls 151-180 inclusive are reserved for vendor-specific
24477298Sobrien; system calls.  (This includes various calls added for compatibity
24577298Sobrien; with other Unix variants.)
24677298Sobrien; Some of these calls are now supported by BSD...
24777298Sobrien151	UNIMPL	NOHIDE	sem_lock (BSD/OS 2.x)
24877298Sobrien152	UNIMPL	NOHIDE	sem_wakeup (BSD/OS 2.x)
24977298Sobrien153	UNIMPL	NOHIDE	asyncdaemon (BSD/OS 2.x)
25077298Sobrien154	UNIMPL	NOHIDE	nosys
25177298Sobrien; 155 is initialized by the NFS code, if present.
25277298Sobrien155	MNOIMPL	BSD	{ int nfssvc(int flag, caddr_t argp); }
25360484Sobrien156	COMPAT	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
25460484Sobrien			    long *basep); }
25560484Sobrien157	COMPAT4	BSD	{ int statfs(char *path, struct ostatfs *buf); }
25660484Sobrien158	COMPAT4	BSD	{ int fstatfs(int fd, struct ostatfs *buf); }
25760484Sobrien159	UNIMPL	NOHIDE	nosys
25860484Sobrien160	UNIMPL	NOHIDE	nosys
25960484Sobrien161	STD	BSD	{ int getfh(char *fname, struct fhandle *fhp); }
26060484Sobrien162	MSTD	BSD	{ int getdomainname(char *domainname, int len); }
26177298Sobrien163	MSTD	BSD	{ int setdomainname(char *domainname, int len); }
26277298Sobrien164	MSTD	BSD	{ int uname(struct utsname *name); }
26377298Sobrien165	MSTD	BSD	{ int sysarch(int op, char *parms); }
26477298Sobrien166	MSTD	BSD	{ int rtprio(int function, pid_t pid, \
26577298Sobrien			    struct rtprio *rtp); }
26677298Sobrien167	UNIMPL	NOHIDE	nosys
26760484Sobrien168	UNIMPL	NOHIDE	nosys
26860484Sobrien; 169 is initialized by the SYSVSEM code if present or loaded
26960484Sobrien169	MNOSTD	BSD	{ int semsys(int which, int a2, int a3, int a4, \
27060484Sobrien			    int a5); }
27160484Sobrien; 169 is initialized by the SYSVMSG code if present or loaded
27260484Sobrien; XXX should be		{ int semsys(int which, ...); }
27360484Sobrien170	MNOSTD	BSD	{ int msgsys(int which, int a2, int a3, int a4, \
27460484Sobrien			    int a5, int a6); }
27560484Sobrien; 169 is initialized by the SYSVSHM code if present or loaded
27660484Sobrien; XXX should be		{ int msgsys(int which, ...); }
27760484Sobrien171	MNOSTD	BSD	{ int shmsys(int which, int a2, int a3, int a4); }
27860484Sobrien; XXX should be		{ int shmsys(int which, ...); }
27960484Sobrien172	UNIMPL	NOHIDE	nosys
28060484Sobrien173	MSTD	POSIX	{ ssize_t pread(int fd, void *buf, size_t nbyte, \
28160484Sobrien			    int pad, off_t offset); }
28260484Sobrien174	MSTD	POSIX	{ ssize_t pwrite(int fd, const void *buf, \
28360484Sobrien			    size_t nbyte, int pad, off_t offset); }
28460484Sobrien175	UNIMPL	NOHIDE	nosys
28560484Sobrien176	MSTD	BSD	{ int ntp_adjtime(struct timex *tp); }
28660484Sobrien177	UNIMPL	NOHIDE	sfork (BSD/OS 2.x)
28760484Sobrien178	UNIMPL	NOHIDE	getdescriptor (BSD/OS 2.x)
28860484Sobrien179	UNIMPL	NOHIDE	setdescriptor (BSD/OS 2.x)
28960484Sobrien180	UNIMPL	NOHIDE	nosys
29060484Sobrien
29160484Sobrien; Syscalls 181-199 are used by/reserved for BSD
29260484Sobrien181	MSTD	POSIX	{ int setgid(gid_t gid); }
29360484Sobrien182	MSTD	BSD	{ int setegid(gid_t egid); }
29460484Sobrien183	MSTD	BSD	{ int seteuid(uid_t euid); }
29560484Sobrien184	UNIMPL	BSD	lfs_bmapv
29660484Sobrien185	UNIMPL	BSD	lfs_markv
29760484Sobrien186	UNIMPL	BSD	lfs_segclean
29860484Sobrien187	UNIMPL	BSD	lfs_segwait
29960484Sobrien188	STD	POSIX	{ int stat(char *path, struct stat *ub); }
30060484Sobrien189	MSTD	POSIX	{ int fstat(int fd, struct stat *sb); }
30160484Sobrien190	STD	POSIX	{ int lstat(char *path, struct stat *ub); }
30260484Sobrien191	STD	POSIX	{ int pathconf(char *path, int name); }
30360484Sobrien192	MSTD	POSIX	{ int fpathconf(int fd, int name); }
30460484Sobrien193	UNIMPL	NOHIDE	nosys
30560484Sobrien194	MSTD	BSD	{ int getrlimit(u_int which, \
30660484Sobrien			    struct rlimit *rlp); } \
30760484Sobrien			    getrlimit __getrlimit_args int
30860484Sobrien195	MSTD	BSD	{ int setrlimit(u_int which, \
30960484Sobrien			    struct rlimit *rlp); } \
31060484Sobrien			    setrlimit __setrlimit_args int
31160484Sobrien196	STD	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
31260484Sobrien			    long *basep); }
31360484Sobrien197	MSTD	BSD	{ caddr_t mmap(caddr_t addr, size_t len, int prot, \
31460484Sobrien			    int flags, int fd, int pad, off_t pos); }
31560484Sobrien198	STD	NOHIDE	{ int nosys(void); } __syscall __syscall_args int
31660484Sobrien199	STD	POSIX	{ off_t lseek(int fd, int pad, off_t offset, \
31760484Sobrien			    int whence); }
31860484Sobrien200	STD	BSD	{ int truncate(char *path, int pad, off_t length); }
31960484Sobrien201	STD	BSD	{ int ftruncate(int fd, int pad, off_t length); }
32060484Sobrien202	MSTD	BSD	{ int __sysctl(int *name, u_int namelen, void *old, \
32160484Sobrien			    size_t *oldlenp, void *new, size_t newlen); } \
32260484Sobrien			    __sysctl sysctl_args int
32360484Sobrien; properly, __sysctl should be a NOHIDE, but making an exception
32460484Sobrien; here allows to avoid one in libc/sys/Makefile.inc.
32560484Sobrien203	MSTD	BSD	{ int mlock(const void *addr, size_t len); }
32660484Sobrien204	MSTD	BSD	{ int munlock(const void *addr, size_t len); }
32760484Sobrien205	STD	BSD	{ int undelete(char *path); }
32860484Sobrien206	STD	BSD	{ int futimes(int fd, struct timeval *tptr); }
32960484Sobrien207	MSTD	BSD	{ int getpgid(pid_t pid); }
33060484Sobrien208	UNIMPL	NOHIDE	newreboot (NetBSD)
33160484Sobrien209	MSTD	BSD	{ int poll(struct pollfd *fds, u_int nfds, \
33260484Sobrien			    int timeout); }
33360484Sobrien
33460484Sobrien;
33560484Sobrien; The following are reserved for loadable syscalls
33678828Sobrien;
33760484Sobrien210	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33860484Sobrien211	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
33960484Sobrien212	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34060484Sobrien213	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34160484Sobrien214	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34260484Sobrien215	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34360484Sobrien216	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34460484Sobrien217	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34560484Sobrien218	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34660484Sobrien219	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
34760484Sobrien
34860484Sobrien;
34960484Sobrien; The following were introduced with NetBSD/4.4Lite-2
35060484Sobrien; They are initialized by thier respective modules/sysinits
35160484Sobrien220	MNOSTD	BSD	{ int __semctl(int semid, int semnum, int cmd, \
35260484Sobrien			    union semun *arg); }
35360484Sobrien221	MNOSTD	BSD	{ int semget(key_t key, int nsems, int semflg); }
35460484Sobrien222	MNOSTD	BSD	{ int semop(int semid, struct sembuf *sops, \
35560484Sobrien			    size_t nsops); }
35660484Sobrien223	UNIMPL	NOHIDE	semconfig
35760484Sobrien224	MNOSTD	BSD	{ int msgctl(int msqid, int cmd, \
35860484Sobrien			    struct msqid_ds *buf); }
35960484Sobrien225	MNOSTD	BSD	{ int msgget(key_t key, int msgflg); }
36060484Sobrien226	MNOSTD	BSD	{ int msgsnd(int msqid, const void *msgp, size_t msgsz, \
36160484Sobrien			    int msgflg); }
36260484Sobrien227	MNOSTD	BSD	{ int msgrcv(int msqid, void *msgp, size_t msgsz, \
36360484Sobrien			    long msgtyp, int msgflg); }
36460484Sobrien228	MNOSTD	BSD	{ int shmat(int shmid, const void *shmaddr, int shmflg); }
36560484Sobrien229	MNOSTD	BSD	{ int shmctl(int shmid, int cmd, \
36660484Sobrien			    struct shmid_ds *buf); }
36760484Sobrien230	MNOSTD	BSD	{ int shmdt(const void *shmaddr); }
36860484Sobrien231	MNOSTD	BSD	{ int shmget(key_t key, size_t size, int shmflg); }
36960484Sobrien;
37060484Sobrien232	MSTD	POSIX	{ int clock_gettime(clockid_t clock_id, \
37160484Sobrien			    struct timespec *tp); }
37260484Sobrien233	MSTD	POSIX	{ int clock_settime(clockid_t clock_id, \
37360484Sobrien			    const struct timespec *tp); }
37460484Sobrien234	MSTD	POSIX	{ int clock_getres(clockid_t clock_id, \
37560484Sobrien			    struct timespec *tp); }
37660484Sobrien235	UNIMPL	NOHIDE	timer_create
37760484Sobrien236	UNIMPL	NOHIDE	timer_delete
37860484Sobrien237	UNIMPL	NOHIDE	timer_settime
37960484Sobrien238	UNIMPL	NOHIDE	timer_gettime
38060484Sobrien239	UNIMPL	NOHIDE	timer_getoverrun
38160484Sobrien240	MSTD	POSIX	{ int nanosleep(const struct timespec *rqtp, \
38260484Sobrien			    struct timespec *rmtp); }
38360484Sobrien241	UNIMPL	NOHIDE	nosys
38460484Sobrien242	UNIMPL	NOHIDE	nosys
38560484Sobrien243	UNIMPL	NOHIDE	nosys
38660484Sobrien244	UNIMPL	NOHIDE	nosys
38760484Sobrien245	UNIMPL	NOHIDE	nosys
38860484Sobrien246	UNIMPL	NOHIDE	nosys
38960484Sobrien247	UNIMPL	NOHIDE	nosys
39060484Sobrien248	UNIMPL	NOHIDE	nosys
39160484Sobrien249	UNIMPL	NOHIDE	nosys
39260484Sobrien; syscall numbers initially used in OpenBSD
39360484Sobrien250	MSTD	BSD	{ int minherit(void *addr, size_t len, int inherit); }
39460484Sobrien251	MSTD	BSD	{ int rfork(int flags); }
39560484Sobrien252	MSTD	BSD	{ int openbsd_poll(struct pollfd *fds, u_int nfds, \
39660484Sobrien			    int timeout); }
39760484Sobrien253	MSTD	BSD	{ int issetugid(void); }
39860484Sobrien254	STD	BSD	{ int lchown(char *path, int uid, int gid); }
39960484Sobrien255	UNIMPL	NOHIDE	nosys
40060484Sobrien256	UNIMPL	NOHIDE	nosys
40160484Sobrien257	UNIMPL	NOHIDE	nosys
40260484Sobrien258	UNIMPL	NOHIDE	nosys
40360484Sobrien259	UNIMPL	NOHIDE	nosys
40460484Sobrien260	UNIMPL	NOHIDE	nosys
40560484Sobrien261	UNIMPL	NOHIDE	nosys
40660484Sobrien262	UNIMPL	NOHIDE	nosys
40760484Sobrien263	UNIMPL	NOHIDE	nosys
40860484Sobrien264	UNIMPL	NOHIDE	nosys
40960484Sobrien265	UNIMPL	NOHIDE	nosys
41060484Sobrien266	UNIMPL	NOHIDE	nosys
41160484Sobrien267	UNIMPL	NOHIDE	nosys
41260484Sobrien268	UNIMPL	NOHIDE	nosys
41360484Sobrien269	UNIMPL	NOHIDE	nosys
41460484Sobrien270	UNIMPL	NOHIDE	nosys
41560484Sobrien271	UNIMPL	NOHIDE	nosys
41660484Sobrien272	STD	BSD	{ int getdents(int fd, char *buf, size_t count); }
41760484Sobrien273	UNIMPL	NOHIDE	nosys
41860484Sobrien274	STD	BSD	{ int lchmod(char *path, mode_t mode); }
41960484Sobrien275	NOPROTO BSD	{ int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int
42060484Sobrien276	STD	BSD	{ int lutimes(char *path, struct timeval *tptr); }
42160484Sobrien277	MNOPROTO BSD	{ int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int
42260484Sobrien278	STD	BSD	{ int nstat(char *path, struct nstat *ub); }
42360484Sobrien279	MSTD	BSD	{ int nfstat(int fd, struct nstat *sb); }
42460484Sobrien280	STD	BSD	{ int nlstat(char *path, struct nstat *ub); }
42560484Sobrien281	UNIMPL	NOHIDE	nosys
42660484Sobrien282	UNIMPL	NOHIDE	nosys
42760484Sobrien283	UNIMPL	NOHIDE	nosys
42860484Sobrien284	UNIMPL	NOHIDE	nosys
42960484Sobrien285	UNIMPL	NOHIDE	nosys
43060484Sobrien286	UNIMPL	NOHIDE	nosys
43160484Sobrien287	UNIMPL	NOHIDE	nosys
43260484Sobrien288	UNIMPL	NOHIDE	nosys
43360484Sobrien289	UNIMPL	NOHIDE	nosys
43460484Sobrien290	UNIMPL	NOHIDE	nosys
43560484Sobrien291	UNIMPL	NOHIDE	nosys
43660484Sobrien292	UNIMPL	NOHIDE	nosys
43760484Sobrien293	UNIMPL	NOHIDE	nosys
43860484Sobrien294	UNIMPL	NOHIDE	nosys
43960484Sobrien295	UNIMPL	NOHIDE	nosys
44060484Sobrien296	UNIMPL	NOHIDE	nosys
44160484Sobrien; XXX 297 is 300 in NetBSD 
44260484Sobrien297	COMPAT4	BSD	{ int fhstatfs(const struct fhandle *u_fhp, struct ostatfs *buf); }
44360484Sobrien298	STD	BSD	{ int fhopen(const struct fhandle *u_fhp, int flags); }
44460484Sobrien299	STD	BSD 	{ int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
44560484Sobrien; syscall numbers for FreeBSD
44660484Sobrien300	MSTD	BSD	{ int modnext(int modid); }
44760484Sobrien301	MSTD	BSD	{ int modstat(int modid, struct module_stat* stat); }
44860484Sobrien302	MSTD	BSD	{ int modfnext(int modid); }
44960484Sobrien303	MSTD	BSD	{ int modfind(const char *name); }
45060484Sobrien304	MSTD	BSD	{ int kldload(const char *file); }
45160484Sobrien305	MSTD	BSD	{ int kldunload(int fileid); }
45260484Sobrien306	MSTD	BSD	{ int kldfind(const char *file); }
45360484Sobrien307	MSTD	BSD	{ int kldnext(int fileid); }
45460484Sobrien308	MSTD	BSD	{ int kldstat(int fileid, struct kld_file_stat* stat); }
45560484Sobrien309	MSTD	BSD	{ int kldfirstmod(int fileid); }
45660484Sobrien310	MSTD	BSD	{ int getsid(pid_t pid); }
45760484Sobrien311	MSTD	BSD	{ int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
45860484Sobrien312	MSTD	BSD	{ int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
45960484Sobrien313	OBSOL	NOHIDE	signanosleep
46060484Sobrien314     NOSTD   BSD     { int aio_return(struct aiocb *aiocbp); }
46160484Sobrien315     NOSTD   BSD     { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
46260484Sobrien316     NOSTD   BSD     { int aio_cancel(int fd, struct aiocb *aiocbp); }
46360484Sobrien317     NOSTD   BSD     { int aio_error(struct aiocb *aiocbp); }
46478828Sobrien318     NOSTD   BSD     { int aio_read(struct aiocb *aiocbp); }
46560484Sobrien319     NOSTD   BSD     { int aio_write(struct aiocb *aiocbp); }
46660484Sobrien320     NOSTD   BSD     { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
46760484Sobrien321     MSTD	BSD     { int yield(void); }
46860484Sobrien322	OBSOL	NOHIDE	thr_sleep
46960484Sobrien323	OBSOL	NOHIDE	thr_wakeup
47060484Sobrien324     MSTD	BSD     { int mlockall(int how); }
47160484Sobrien325     MSTD	BSD     { int munlockall(void); }
47260484Sobrien326     STD     BSD     { int __getcwd(u_char *buf, u_int buflen); }
47360484Sobrien
47460484Sobrien327     MSTD     POSIX   { int sched_setparam (pid_t pid, const struct sched_param *param); }
47560484Sobrien328     MSTD     POSIX   { int sched_getparam (pid_t pid, struct sched_param *param); }
47660484Sobrien
47760484Sobrien329     MSTD     POSIX   { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
47860484Sobrien330     MSTD     POSIX   { int sched_getscheduler (pid_t pid); }
47960484Sobrien
48060484Sobrien331     MSTD     POSIX   { int sched_yield (void); }
48160484Sobrien332     MSTD     POSIX   { int sched_get_priority_max (int policy); }
48260484Sobrien333     MSTD     POSIX   { int sched_get_priority_min (int policy); }
48360484Sobrien334     MSTD     POSIX   { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
48460484Sobrien335	MSTD	BSD	{ int utrace(const void *addr, size_t len); }
48560484Sobrien336	MCOMPAT4	BSD	{ int sendfile(int fd, int s, off_t offset, size_t nbytes, \
48660484Sobrien				struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
48760484Sobrien337	STD	BSD	{ int kldsym(int fileid, int cmd, void *data); }
48860484Sobrien338	MSTD	BSD	{ int jail(struct jail *jail); }
48960484Sobrien339	UNIMPL	BSD	pioctl
49060484Sobrien340	MSTD	POSIX	{ int sigprocmask(int how, const sigset_t *set, \
49160484Sobrien			    sigset_t *oset); }
49260484Sobrien341	MSTD	POSIX	{ int sigsuspend(const sigset_t *sigmask); }
49360484Sobrien342	MCOMPAT4 POSIX	{ int sigaction(int sig, const struct sigaction *act, \
49460484Sobrien			    struct sigaction *oact); }
49560484Sobrien343	MSTD	POSIX	{ int sigpending(sigset_t *set); }
49660484Sobrien344	MCOMPAT4 BSD	{ int sigreturn(const struct ucontext4 *sigcntxp); }
49760484Sobrien345	MSTD	NOHIDE	{ int sigtimedwait(const sigset_t *set, \
49860484Sobrien			    siginfo_t *info, const struct timespec *timeout); }
49960484Sobrien346	MSTD	NOHIDE	{ int sigwaitinfo(const sigset_t *set, \
50060484Sobrien			    siginfo_t *info); }
50160484Sobrien347	MSTD	BSD	{ int __acl_get_file(const char *path, \
50260484Sobrien			    acl_type_t type, struct acl *aclp); }
50360484Sobrien348	MSTD	BSD	{ int __acl_set_file(const char *path, \
50477298Sobrien			    acl_type_t type, struct acl *aclp); }
50560484Sobrien349	MSTD	BSD	{ int __acl_get_fd(int filedes, acl_type_t type, \
50660484Sobrien			    struct acl *aclp); }
50760484Sobrien350	MSTD	BSD	{ int __acl_set_fd(int filedes, acl_type_t type, \
50860484Sobrien			    struct acl *aclp); }
50960484Sobrien351	MSTD	BSD	{ int __acl_delete_file(const char *path, \
51060484Sobrien			    acl_type_t type); }
51160484Sobrien352	MSTD	BSD	{ int __acl_delete_fd(int filedes, acl_type_t type); }
51260484Sobrien353	MSTD	BSD	{ int __acl_aclcheck_file(const char *path, \
51360484Sobrien			    acl_type_t type, struct acl *aclp); }
51460484Sobrien354	MSTD	BSD	{ int __acl_aclcheck_fd(int filedes, acl_type_t type, \
51560484Sobrien			    struct acl *aclp); }
51660484Sobrien355	STD	BSD	{ int extattrctl(const char *path, int cmd, \
51760484Sobrien			    const char *filename, int attrnamespace, \
51860484Sobrien			    const char *attrname); }
51960484Sobrien356	STD	BSD	{ int extattr_set_file(const char *path, \
52060484Sobrien			    int attrnamespace, const char *attrname, \
52160484Sobrien			    void *data, size_t nbytes); }
52260484Sobrien357	STD	BSD	{ ssize_t extattr_get_file(const char *path, \
52360484Sobrien			    int attrnamespace, const char *attrname, \
52460484Sobrien			    void *data, size_t nbytes); }
52560484Sobrien358	STD	BSD	{ int extattr_delete_file(const char *path, \
52660484Sobrien			    int attrnamespace, const char *attrname); }
52760484Sobrien359	NOSTD	BSD	{ int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); }
52860484Sobrien360	MSTD	BSD	{ int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
52960484Sobrien361	MSTD	BSD	{ int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
53060484Sobrien362	MSTD	BSD	{ int kqueue(void); }
53160484Sobrien363	MSTD	BSD	{ int kevent(int fd, \
53260484Sobrien			    const struct kevent *changelist, int nchanges, \
53360484Sobrien			    struct kevent *eventlist, int nevents, \
53477298Sobrien			    const struct timespec *timeout); }
53560484Sobrien364	UNIMPL	BSD	__cap_get_proc
53660484Sobrien365	UNIMPL	BSD	__cap_set_proc
53760484Sobrien366	UNIMPL	BSD	__cap_get_fd
53860484Sobrien367	UNIMPL	BSD	__cap_get_file
53960484Sobrien368	UNIMPL	BSD	__cap_set_fd
54060484Sobrien369	UNIMPL	BSD	__cap_set_file
54160484Sobrien370	NODEF	NOHIDE	lkmressys lkmressys nosys_args int
54260484Sobrien371	STD	BSD	{ int extattr_set_fd(int fd, int attrnamespace, \
54360484Sobrien			    const char *attrname, void *data, \
54460484Sobrien			    size_t nbytes); }
54560484Sobrien372	STD	BSD	{ ssize_t extattr_get_fd(int fd, int attrnamespace, \
54660484Sobrien			    const char *attrname, void *data, size_t nbytes); }
54760484Sobrien373	STD	BSD	{ int extattr_delete_fd(int fd, int attrnamespace, \
54860484Sobrien			    const char *attrname); }
54960484Sobrien374	MSTD	BSD	{ int __setugid(int flag); }
55060484Sobrien375	NOIMPL	BSD	{ int nfsclnt(int flag, caddr_t argp); }
55160484Sobrien376	STD	BSD	{ int eaccess(char *path, int flags); }
55260484Sobrien377	UNIMPL	BSD	afs_syscall
55360484Sobrien378	STD	BSD	{ int nmount(struct iovec *iovp, unsigned int iovcnt, \
55460484Sobrien			    int flags); }
55560484Sobrien379	MSTD	BSD	{ int kse_exit(void); }
55660484Sobrien380	MSTD	BSD	{ int kse_wakeup(struct kse_mailbox *mbx); }
55760484Sobrien381	STD	BSD	{ int kse_create(struct kse_mailbox *mbx, \
55860484Sobrien			    int newgroup); }
55960484Sobrien382	MSTD	BSD	{ int kse_thr_interrupt(struct kse_thr_mailbox *tmbx, int cmd, long data); }
56060484Sobrien383	MSTD	BSD	{ int kse_release(struct timespec *timeout); }
56160484Sobrien384	MSTD	BSD	{ int __mac_get_proc(struct mac *mac_p); }
56260484Sobrien385	MSTD	BSD	{ int __mac_set_proc(struct mac *mac_p); }
56360484Sobrien386	MSTD	BSD	{ int __mac_get_fd(int fd, struct mac *mac_p); }
56460484Sobrien387	MSTD	BSD	{ int __mac_get_file(const char *path_p, \
56560484Sobrien			    struct mac *mac_p); }
56660484Sobrien388	MSTD	BSD	{ int __mac_set_fd(int fd, struct mac *mac_p); }
56760484Sobrien389	MSTD	BSD	{ int __mac_set_file(const char *path_p, \
56860484Sobrien			    struct mac *mac_p); }
56960484Sobrien390	STD	BSD	{ int kenv(int what, const char *name, char *value, \
57060484Sobrien			    int len); }
57160484Sobrien391	STD	BSD	{ int lchflags(const char *path, int flags); }
57260484Sobrien392	STD	BSD	{ int uuidgen(struct uuid *store, int count); }
57360484Sobrien393	MSTD	BSD	{ int sendfile(int fd, int s, off_t offset, size_t nbytes, \
57460484Sobrien				struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
57560484Sobrien394	MSTD	BSD	{ int mac_syscall(const char *policy, int call, \
57660484Sobrien				void *arg); }
57760484Sobrien395	STD	BSD	{ int getfsstat(struct statfs *buf, long bufsize, \
57860484Sobrien			    int flags); }
57960484Sobrien396	STD	BSD	{ int statfs(char *path, struct statfs *buf); }
58060484Sobrien397	STD	BSD	{ int fstatfs(int fd, struct statfs *buf); }
58160484Sobrien398	STD	BSD	{ int fhstatfs(const struct fhandle *u_fhp, \
58260484Sobrien			    struct statfs *buf); }
58360484Sobrien399	UNIMPL	NOHIDE	nosys
58460484Sobrien400	MNOSTD	BSD	{ int ksem_close(semid_t id); }
58560484Sobrien401	MNOSTD	BSD	{ int ksem_post(semid_t id); }
58660484Sobrien402	MNOSTD	BSD	{ int ksem_wait(semid_t id); }
58760484Sobrien403	MNOSTD	BSD	{ int ksem_trywait(semid_t id); }
58860484Sobrien404	MNOSTD	BSD	{ int ksem_init(semid_t *idp, unsigned int value); }
58960484Sobrien405	MNOSTD	BSD	{ int ksem_open(semid_t *idp, const char *name, \
59060484Sobrien				int oflag, mode_t mode, unsigned int value); }
59160484Sobrien406	MNOSTD	BSD	{ int ksem_unlink(const char *name); }
59260484Sobrien407	MNOSTD	BSD	{ int ksem_getvalue(semid_t id, int *val); }
59360484Sobrien408	MNOSTD	BSD	{ int ksem_destroy(semid_t id); }
59460484Sobrien409	MSTD	BSD	{ int __mac_get_pid(pid_t pid, struct mac *mac_p); }
59560484Sobrien410	MSTD	BSD	{ int __mac_get_link(const char *path_p, \
59660484Sobrien			    struct mac *mac_p); }
59760484Sobrien411	MSTD	BSD	{ int __mac_set_link(const char *path_p, \
59860484Sobrien			    struct mac *mac_p); }
59960484Sobrien412	STD	BSD	{ int extattr_set_link(const char *path, \
60060484Sobrien			    int attrnamespace, const char *attrname, \
60138889Sjdp			    void *data, size_t nbytes); }
60238889Sjdp413	STD	BSD	{ ssize_t extattr_get_link(const char *path, \
60338889Sjdp			    int attrnamespace, const char *attrname, \
60438889Sjdp			    void *data, size_t nbytes); }
60538889Sjdp414	STD	BSD	{ int extattr_delete_link(const char *path, \
60638889Sjdp			    int attrnamespace, const char *attrname); }
60738889Sjdp415	MSTD	BSD	{ int __mac_execve(char *fname, char **argv, \
60838889Sjdp			    char **envv, struct mac *mac_p); }
60938889Sjdp416	MSTD	POSIX	{ int sigaction(int sig, const struct sigaction *act, \
61038889Sjdp			    struct sigaction *oact); }
61138889Sjdp417	MSTD	BSD	{ int sigreturn(const struct __ucontext *sigcntxp); }
61238889Sjdp418	UNIMPL	BSD	__xstat
61338889Sjdp419	UNIMPL	BSD	__xfstat
61438889Sjdp420	UNIMPL	BSD	__xlstat
61538889Sjdp421	MSTD	BSD	{ int getcontext(struct __ucontext *ucp); }
61638889Sjdp422	MSTD	BSD	{ int setcontext(const struct __ucontext *ucp); }
61738889Sjdp423	MSTD	BSD	{ int swapcontext(struct __ucontext *oucp, \
61838889Sjdp			    const struct __ucontext *ucp); }
61938889Sjdp424	MSTD	BSD	{ int swapoff(const char *name); }
62038889Sjdp425	MSTD	BSD	{ int __acl_get_link(const char *path, \
62138889Sjdp			    acl_type_t type, struct acl *aclp); }
62238889Sjdp426	MSTD	BSD	{ int __acl_set_link(const char *path, \
62338889Sjdp			    acl_type_t type, struct acl *aclp); }
62438889Sjdp427	MSTD	BSD	{ int __acl_delete_link(const char *path, \
62538889Sjdp			    acl_type_t type); }
62638889Sjdp428	MSTD	BSD	{ int __acl_aclcheck_link(const char *path, \
62760484Sobrien			    acl_type_t type, struct acl *aclp); }
62838889Sjdp429	MSTD	NOHIDE	{ int sigwait(const sigset_t *set, int *sig); }
62938889Sjdp430	MSTD	BSD	{ int thr_create(ucontext_t *ctx, thr_id_t *id, int flags); }
63038889Sjdp431	MSTD	BSD	{ void thr_exit(void); }
63138889Sjdp432	MSTD	BSD	{ int thr_self(thr_id_t *id); }
63238889Sjdp433	MSTD	BSD	{ int thr_kill(thr_id_t id, int sig); }
63338889Sjdp434	MSTD	BSD	{ int _umtx_lock(struct umtx *umtx); }
63438889Sjdp435	MSTD	BSD	{ int _umtx_unlock(struct umtx *umtx); }
63538889Sjdp436	MSTD	BSD	{ int jail_attach(int jid); }
63638889Sjdp437	STD	BSD	{ ssize_t extattr_list_fd(int fd, int attrnamespace, \
63738889Sjdp			    void *data, size_t nbytes); }
63838889Sjdp438	STD	BSD	{ ssize_t extattr_list_file(const char *path, \
63938889Sjdp			    int attrnamespace, void *data, size_t nbytes); }
64038889Sjdp439	STD	BSD	{ ssize_t extattr_list_link(const char *path, \
64138889Sjdp			    int attrnamespace, void *data, size_t nbytes); }
64238889Sjdp
64338889Sjdp; Please copy any additions and changes to the following compatability tables:
64438889Sjdp; sys/ia64/ia32/syscalls.master  (take a best guess)
64538889Sjdp; [other 64 bit platforms with an alternate 32 bit syscall table go here too]
64638889Sjdp