xref: /dragonfly/sys/kern/syscalls.master (revision 2ee85085)
1 $DragonFly: src/sys/kern/syscalls.master,v 1.25 2005/07/30 20:29:40 joerg Exp $
2
3; @(#)syscalls.master	8.2 (Berkeley) 1/13/94
4; $FreeBSD: src/sys/kern/syscalls.master,v 1.72.2.10 2002/07/12 08:22:46 alfred Exp $
5;
6; System call name/number master file.
7; Processed to created init_sysent.c, syscalls.c and syscall.h.
8
9; Columns: number [MPSAFE] type nargs namespc name alt{name,tag,rtyp}/comments
10;	number	system call number, must be in order
11;   MPSAFE	optional field, specifies that syscall does not want the
12;		BGL grabbed automatically (it is SMP safe).
13;	type	one of STD, OBSOL, UNIMPL, COMPAT, CPT_NOA, LIBCOMPAT,
14;		NODEF, NOARGS, NOPROTO, NOIMPL
15;	namespc one of POSIX, BSD, NOHIDE
16;	name	psuedo-prototype of syscall routine
17;		If one of the following alts is different, then all appear:
18;	altname	name of system call if different
19;	alttag	name of args struct tag if different from [o]`name'"_args"
20;	altrtyp	return type if not int (bogus - syscalls always return int)
21;		for UNIMPL/OBSOL, name continues with comments
22
23; types:
24;	STD	always included
25;	COMPAT	included on COMPAT #ifdef
26;	LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
27;	OBSOL	obsolete, not included in system, only specifies name
28;	UNIMPL	not implemented, placeholder only
29
30; #ifdef's, etc. may be included, and are copied to the output files.
31
32#include <sys/param.h>
33#include <sys/sysent.h>
34#include <sys/sysproto.h>
35
36#ifdef COMPAT_43
37#include <emulation/43bsd/stat.h>
38#endif
39
40; Reserved/unimplemented system calls in the range 0-150 inclusive
41; are reserved for use in future Berkeley releases.
42; Additional system calls implemented in vendor and other
43; redistributions should be placed in the reserved range at the end
44; of the current calls.
45
460	STD	NOHIDE	{ int nosys(void); } syscall nosys_args int
471	STD	NOHIDE	{ void sys_exit(int rval); } exit sys_exit_args void
482	STD	POSIX	{ int fork(void); }
493	STD	POSIX	{ ssize_t read(int fd, void *buf, size_t nbyte); }
504	STD	POSIX	{ ssize_t write(int fd, const void *buf, size_t nbyte); }
515	STD	POSIX	{ int open(char *path, int flags, int mode); }
52; XXX should be		{ int open(const char *path, int flags, ...); }
53; but we're not ready for `const' or varargs.
54; XXX man page says `mode_t mode'.
556	STD	POSIX	{ int close(int fd); }
567	STD	BSD	{ int wait4(int pid, int *status, int options, \
57			    struct rusage *rusage); } wait4 wait_args int
588	COMPAT	BSD	{ int creat(char *path, int mode); }
599	STD	POSIX	{ int link(char *path, char *link); }
6010	STD	POSIX	{ int unlink(char *path); }
6111	OBSOL	NOHIDE	execv
6212	STD	POSIX	{ int chdir(char *path); }
6313	STD	BSD	{ int fchdir(int fd); }
6414	STD	POSIX	{ int mknod(char *path, int mode, int dev); }
6515	STD	POSIX	{ int chmod(char *path, int mode); }
6616	STD	POSIX	{ int chown(char *path, int uid, int gid); }
6717	STD	BSD	{ int obreak(char *nsize); } break obreak_args int
6818	STD	BSD	{ int getfsstat(struct statfs *buf, long bufsize, \
69			    int flags); }
7019	COMPAT	POSIX	{ long lseek(int fd, long offset, int whence); }
7120	STD	POSIX	{ pid_t getpid(void); }
7221	STD	BSD	{ int mount(char *type, char *path, int flags, \
73			    caddr_t data); }
74; XXX `path' should have type `const char *' but we're not ready for that.
7522	STD	BSD	{ int unmount(char *path, int flags); }
7623	STD	POSIX	{ int setuid(uid_t uid); }
7724	MPSAFE	STD	POSIX	{ uid_t getuid(void); }
7825	MPSAFE	STD	POSIX	{ uid_t geteuid(void); }
7926	STD	BSD	{ int ptrace(int req, pid_t pid, caddr_t addr, \
80			    int data); }
8127	STD	BSD	{ int recvmsg(int s, struct msghdr *msg, int flags); }
8228	STD	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
8329	STD	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
84			    int flags, caddr_t from, int *fromlenaddr); }
8530	STD	BSD	{ int accept(int s, caddr_t name, int *anamelen); }
8631	STD	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
8732	STD	BSD	{ int getsockname(int fdes, caddr_t asa, int *alen); }
8833	STD	POSIX	{ int access(char *path, int flags); }
8934	STD	BSD	{ int chflags(char *path, int flags); }
9035	STD	BSD	{ int fchflags(int fd, int flags); }
9136	STD	BSD	{ int sync(void); }
9237	STD	POSIX	{ int kill(int pid, int signum); }
9338	COMPAT	POSIX	{ int stat(char *path, struct ostat *ub); }
9439	STD	POSIX	{ pid_t getppid(void); }
9540	COMPAT	POSIX	{ int lstat(char *path, struct ostat *ub); }
9641	STD	POSIX	{ int dup(u_int fd); }
9742	STD	POSIX	{ int pipe(void); }
9843	STD	POSIX	{ gid_t getegid(void); }
9944	STD	BSD	{ int profil(caddr_t samples, size_t size, \
100			    size_t offset, u_int scale); }
10145	STD	BSD	{ int ktrace(const char *fname, int ops, int facs, \
102			    int pid); }
10346	OBSOL	NOHIDE	freebsd3_sigaction
10447	MPSAFE	STD	POSIX	{ gid_t getgid(void); }
10548	OBSOL	NOHIDE	freebsd3_sigprocmask
106; XXX note nonstandard (bogus) calling convention - the libc stub passes
107; us the mask, not a pointer to it, and we return the old mask as the
108; (int) return value.
10949	STD	BSD	{ int getlogin(char *namebuf, u_int namelen); }
11050	STD	BSD	{ int setlogin(char *namebuf); }
11151	STD	BSD	{ int acct(char *path); }
11252	OBSOL	NOHIDE	freebsd3_sigpending
11353	STD	BSD	{ int sigaltstack(stack_t *ss, stack_t *oss); }
11454	STD	POSIX	{ int ioctl(int fd, u_long com, caddr_t data); }
11555	STD	BSD	{ int reboot(int opt); }
11656	STD	POSIX	{ int revoke(char *path); }
11757	STD	POSIX	{ int symlink(char *path, char *link); }
11858	STD	POSIX	{ int readlink(char *path, char *buf, int count); }
11959	STD	POSIX	{ int execve(char *fname, char **argv, char **envv); }
12060	MPSAFE	STD	POSIX	{ int umask(int newmask); } umask umask_args int
12161	STD	BSD	{ int chroot(char *path); }
12262	COMPAT	POSIX	{ int fstat(int fd, struct ostat *sb); }
12363	COMPAT	BSD	{ int getkerninfo(int op, char *where, size_t *size, \
124			    int arg); } getkerninfo getkerninfo_args int
12564	COMPAT	BSD	{ int getpagesize(void); } \
126			    getpagesize getpagesize_args int
12765	STD	BSD	{ int msync(void *addr, size_t len, int flags); }
12866	STD	BSD	{ int vfork(void); }
12967	OBSOL	NOHIDE	vread
13068	OBSOL	NOHIDE	vwrite
13169	STD	BSD	{ int sbrk(int incr); }
13270	STD	BSD	{ int sstk(int incr); }
13371	COMPAT	BSD	{ int mmap(void *addr, int len, int prot, \
134			    int flags, int fd, long pos); }
13572	STD	BSD	{ int ovadvise(int anom); } vadvise ovadvise_args int
13673	STD	BSD	{ int munmap(void *addr, size_t len); }
13774	STD	BSD	{ int mprotect(const void *addr, size_t len, int prot); }
13875	STD	BSD	{ int madvise(void *addr, size_t len, int behav); }
13976	OBSOL	NOHIDE	vhangup
14077	OBSOL	NOHIDE	vlimit
14178	STD	BSD	{ int mincore(const void *addr, size_t len, \
142			    char *vec); }
14379	STD	POSIX	{ int getgroups(u_int gidsetsize, gid_t *gidset); }
14480	STD	POSIX	{ int setgroups(u_int gidsetsize, gid_t *gidset); }
14581	MPSAFE	STD	POSIX	{ int getpgrp(void); }
14682	STD	POSIX	{ int setpgid(int pid, int pgid); }
14783	STD	BSD	{ int setitimer(u_int which, struct itimerval *itv, \
148			    struct itimerval *oitv); }
14984	COMPAT	BSD	{ int wait(void); }
15085	STD	BSD	{ int swapon(char *name); }
15186	STD	BSD	{ int getitimer(u_int which, struct itimerval *itv); }
15287	COMPAT	BSD	{ int gethostname(char *hostname, u_int len); } \
153			    gethostname gethostname_args int
15488	COMPAT	BSD	{ int sethostname(char *hostname, u_int len); } \
155			    sethostname sethostname_args int
15689	STD	BSD	{ int getdtablesize(void); }
15790	STD	POSIX	{ int dup2(u_int from, u_int to); }
15891	UNIMPL	BSD	getdopt
15992	STD	POSIX	{ int fcntl(int fd, int cmd, long arg); }
160; XXX should be		{ int fcntl(int fd, int cmd, ...); }
161; but we're not ready for varargs.
162; XXX man page says `int arg' too.
16393	STD	BSD	{ int select(int nd, fd_set *in, fd_set *ou, \
164			    fd_set *ex, struct timeval *tv); }
16594	UNIMPL	BSD	setdopt
16695	STD	POSIX	{ int fsync(int fd); }
16796	STD	BSD	{ int setpriority(int which, int who, int prio); }
16897	STD	BSD	{ int socket(int domain, int type, int protocol); }
16998	STD	BSD	{ int connect(int s, caddr_t name, int namelen); }
17099	CPT_NOA	BSD	{ int accept(int s, caddr_t name, int *anamelen); } \
171			    accept accept_args int
172100	STD	BSD	{ int getpriority(int which, int who); }
173101	COMPAT	BSD	{ int send(int s, caddr_t buf, int len, int flags); }
174102	COMPAT	BSD	{ int recv(int s, caddr_t buf, int len, int flags); }
175103	OBSOL	NOHIDE	freebsd3_sigreturn
176104	STD	BSD	{ int bind(int s, caddr_t name, int namelen); }
177105	STD	BSD	{ int setsockopt(int s, int level, int name, \
178			    caddr_t val, int valsize); }
179106	STD	BSD	{ int listen(int s, int backlog); }
180107	OBSOL	NOHIDE	vtimes
181108	COMPAT	BSD	{ int sigvec(int signum, struct sigvec *nsv, \
182			    struct sigvec *osv); }
183109	COMPAT	BSD	{ int sigblock(int mask); }
184110	COMPAT	BSD	{ int sigsetmask(int mask); }
185111	OBSOL	NOHIDE	freebsd3_sigsuspend
186; XXX note nonstandard (bogus) calling convention - the libc stub passes
187; us the mask, not a pointer to it.
188112	COMPAT	BSD	{ int sigstack(struct sigstack *nss, \
189			    struct sigstack *oss); }
190113	COMPAT	BSD	{ int recvmsg(int s, struct omsghdr *msg, int flags); }
191114	COMPAT	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
192115	OBSOL	NOHIDE	vtrace
193116	MPSAFE	STD	BSD	{ int gettimeofday(struct timeval *tp, \
194			    struct timezone *tzp); }
195117	STD	BSD	{ int getrusage(int who, struct rusage *rusage); }
196118	STD	BSD	{ int getsockopt(int s, int level, int name, \
197			    caddr_t val, int *avalsize); }
198119	UNIMPL	NOHIDE	resuba (BSD/OS 2.x)
199120	STD	BSD	{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
200121	STD	BSD	{ int writev(int fd, struct iovec *iovp, \
201			    u_int iovcnt); }
202122	STD	BSD	{ int settimeofday(struct timeval *tv, \
203			    struct timezone *tzp); }
204123	STD	BSD	{ int fchown(int fd, int uid, int gid); }
205124	STD	BSD	{ int fchmod(int fd, int mode); }
206125	CPT_NOA	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
207			    int flags, caddr_t from, int *fromlenaddr); } \
208			    recvfrom recvfrom_args int
209126	STD	BSD	{ int setreuid(int ruid, int euid); }
210127	STD	BSD	{ int setregid(int rgid, int egid); }
211128	STD	POSIX	{ int rename(char *from, char *to); }
212129	COMPAT	BSD	{ int truncate(char *path, long length); }
213130	COMPAT	BSD	{ int ftruncate(int fd, long length); }
214131	STD	BSD	{ int flock(int fd, int how); }
215132	STD	POSIX	{ int mkfifo(char *path, int mode); }
216133	STD	BSD	{ int sendto(int s, caddr_t buf, size_t len, \
217			    int flags, caddr_t to, int tolen); }
218134	STD	BSD	{ int shutdown(int s, int how); }
219135	STD	BSD	{ int socketpair(int domain, int type, int protocol, \
220			    int *rsv); }
221136	STD	POSIX	{ int mkdir(char *path, int mode); }
222137	STD	POSIX	{ int rmdir(char *path); }
223138	STD	BSD	{ int utimes(char *path, struct timeval *tptr); }
224139	OBSOL	NOHIDE	4.2 sigreturn
225140	STD	BSD	{ int adjtime(struct timeval *delta, \
226			    struct timeval *olddelta); }
227141	COMPAT	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
228142	COMPAT	BSD	{ long gethostid(void); }
229143	COMPAT	BSD	{ int sethostid(long hostid); }
230144	COMPAT	BSD	{ int getrlimit(u_int which, struct orlimit *rlp); }
231145	COMPAT	BSD	{ int setrlimit(u_int which, struct orlimit *rlp); }
232146	COMPAT	BSD	{ int killpg(int pgid, int signum); }
233147	STD	POSIX	{ int setsid(void); }
234148	STD	BSD	{ int quotactl(char *path, int cmd, int uid, \
235			    caddr_t arg); }
236149	COMPAT	BSD	{ int quota(void); }
237150	CPT_NOA	BSD	{ int getsockname(int fdec, caddr_t asa, int *alen); }\
238			    getsockname getsockname_args int
239
240; Syscalls 151-180 inclusive are reserved for vendor-specific
241; system calls.  (This includes various calls added for compatibity
242; with other Unix variants.)
243; Some of these calls are now supported by BSD...
244151	UNIMPL	NOHIDE	sem_lock (BSD/OS 2.x)
245152	UNIMPL	NOHIDE	sem_wakeup (BSD/OS 2.x)
246153	UNIMPL	NOHIDE	asyncdaemon (BSD/OS 2.x)
247154	UNIMPL	NOHIDE	nosys
248; 155 is initialized by the NFS code, if present.
249155	NOIMPL	BSD	{ int nfssvc(int flag, caddr_t argp); }
250156	COMPAT	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
251			    long *basep); }
252157	STD	BSD	{ int statfs(char *path, struct statfs *buf); }
253158	STD	BSD	{ int fstatfs(int fd, struct statfs *buf); }
254159	UNIMPL	NOHIDE	nosys
255160	UNIMPL	NOHIDE	nosys
256; 161 is initialized by the NFS code, if present.
257161	STD	BSD	{ int getfh(char *fname, struct fhandle *fhp); }
258162	STD	BSD	{ int getdomainname(char *domainname, int len); }
259163	STD	BSD	{ int setdomainname(char *domainname, int len); }
260164	STD	BSD	{ int uname(struct utsname *name); }
261165	STD	BSD	{ int sysarch(int op, char *parms); }
262166	STD	BSD	{ int rtprio(int function, pid_t pid, \
263			    struct rtprio *rtp); }
264167	UNIMPL	NOHIDE	nosys
265168	UNIMPL	NOHIDE	nosys
266169	STD	BSD	{ int semsys(int which, int a2, int a3, int a4, \
267			    int a5); }
268; XXX should be		{ int semsys(int which, ...); }
269170	STD	BSD	{ int msgsys(int which, int a2, int a3, int a4, \
270			    int a5, int a6); }
271; XXX should be		{ int msgsys(int which, ...); }
272171	STD	BSD	{ int shmsys(int which, int a2, int a3, int a4); }
273; XXX should be		{ int shmsys(int which, ...); }
274172	UNIMPL	NOHIDE	nosys
275173	STD	POSIX	{ ssize_t pread(int fd, void *buf, size_t nbyte, \
276			    int pad, off_t offset); }
277174	STD	POSIX	{ ssize_t pwrite(int fd, const void *buf, \
278			    size_t nbyte, int pad, off_t offset); }
279175	UNIMPL	NOHIDE	nosys
280176	STD	BSD	{ int ntp_adjtime(struct timex *tp); }
281177	UNIMPL	NOHIDE	sfork (BSD/OS 2.x)
282178	UNIMPL	NOHIDE	getdescriptor (BSD/OS 2.x)
283179	UNIMPL	NOHIDE	setdescriptor (BSD/OS 2.x)
284180	UNIMPL	NOHIDE	nosys
285
286; Syscalls 181-199 are used by/reserved for BSD
287181	STD	POSIX	{ int setgid(gid_t gid); }
288182	STD	BSD	{ int setegid(gid_t egid); }
289183	STD	BSD	{ int seteuid(uid_t euid); }
290184	UNIMPL	BSD	lfs_bmapv
291185	UNIMPL	BSD	lfs_markv
292186	UNIMPL	BSD	lfs_segclean
293187	UNIMPL	BSD	lfs_segwait
294188	STD	POSIX	{ int stat(char *path, struct stat *ub); }
295189	STD	POSIX	{ int fstat(int fd, struct stat *sb); }
296190	STD	POSIX	{ int lstat(char *path, struct stat *ub); }
297191	STD	POSIX	{ int pathconf(char *path, int name); }
298192	STD	POSIX	{ int fpathconf(int fd, int name); }
299193	UNIMPL	NOHIDE	nosys
300194	STD	BSD	{ int getrlimit(u_int which, \
301			    struct rlimit *rlp); } \
302			    getrlimit __getrlimit_args int
303195	STD	BSD	{ int setrlimit(u_int which, \
304			    struct rlimit *rlp); } \
305			    setrlimit __setrlimit_args int
306196	STD	BSD	{ int getdirentries(int fd, char *buf, u_int count, \
307			    long *basep); }
308197	STD	BSD	{ caddr_t mmap(caddr_t addr, size_t len, int prot, \
309			    int flags, int fd, int pad, off_t pos); }
310198	STD	NOHIDE	{ int nosys(void); } __syscall __syscall_args int
311199	STD	POSIX	{ off_t lseek(int fd, int pad, off_t offset, \
312			    int whence); }
313200	STD	BSD	{ int truncate(char *path, int pad, off_t length); }
314201	STD	BSD	{ int ftruncate(int fd, int pad, off_t length); }
315202	STD	BSD	{ int __sysctl(int *name, u_int namelen, void *old, \
316			    size_t *oldlenp, void *new, size_t newlen); } \
317			    __sysctl sysctl_args int
318; properly, __sysctl should be a NOHIDE, but making an exception
319; here allows to avoid one in libc/sys/Makefile.inc.
320203	STD	BSD	{ int mlock(const void *addr, size_t len); }
321204	STD	BSD	{ int munlock(const void *addr, size_t len); }
322205	STD	BSD	{ int undelete(char *path); }
323206	STD	BSD	{ int futimes(int fd, struct timeval *tptr); }
324207	STD	BSD	{ int getpgid(pid_t pid); }
325208	UNIMPL	NOHIDE	newreboot (NetBSD)
326209	STD	BSD	{ int poll(struct pollfd *fds, u_int nfds, \
327			    int timeout); }
328
329;
330; The following are reserved for loadable syscalls
331;
332; 210 is used by the Checkpoint Module
333210	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
334211	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
335212	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
336213	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
337214	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
338215	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
339216	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
340217	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
341218	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
342219	NODEF	NOHIDE	lkmnosys lkmnosys nosys_args int
343
344;
345; The following were introduced with NetBSD/4.4Lite-2
346;
347220	STD	BSD	{ int __semctl(int semid, int semnum, int cmd, \
348			    union semun *arg); }
349221	STD	BSD	{ int semget(key_t key, int nsems, int semflg); }
350222	STD	BSD	{ int semop(int semid, struct sembuf *sops, \
351			    u_int nsops); }
352223	UNIMPL	NOHIDE	semconfig
353224	STD	BSD	{ int msgctl(int msqid, int cmd, \
354			    struct msqid_ds *buf); }
355225	STD	BSD	{ int msgget(key_t key, int msgflg); }
356226	STD	BSD	{ int msgsnd(int msqid, void *msgp, size_t msgsz, \
357			    int msgflg); }
358227	STD	BSD	{ int msgrcv(int msqid, void *msgp, size_t msgsz, \
359			    long msgtyp, int msgflg); }
360228	STD	BSD	{ int shmat(int shmid, void *shmaddr, int shmflg); }
361229	STD	BSD	{ int shmctl(int shmid, int cmd, \
362			    struct shmid_ds *buf); }
363230	STD	BSD	{ int shmdt(void *shmaddr); }
364231	STD	BSD	{ int shmget(key_t key, int size, int shmflg); }
365;
366232	STD	POSIX	{ int clock_gettime(clockid_t clock_id, \
367			    struct timespec *tp); }
368233	STD	POSIX	{ int clock_settime(clockid_t clock_id, \
369			    const struct timespec *tp); }
370234	STD	POSIX	{ int clock_getres(clockid_t clock_id, \
371			    struct timespec *tp); }
372235	UNIMPL	NOHIDE	timer_create
373236	UNIMPL	NOHIDE	timer_delete
374237	UNIMPL	NOHIDE	timer_settime
375238	UNIMPL	NOHIDE	timer_gettime
376239	UNIMPL	NOHIDE	timer_getoverrun
377240	STD	POSIX	{ int nanosleep(const struct timespec *rqtp, \
378			    struct timespec *rmtp); }
379241	UNIMPL	NOHIDE	nosys
380242	UNIMPL	NOHIDE	nosys
381243	UNIMPL	NOHIDE	nosys
382244	UNIMPL	NOHIDE	nosys
383245	UNIMPL	NOHIDE	nosys
384246	UNIMPL	NOHIDE	nosys
385247	UNIMPL	NOHIDE	nosys
386248	UNIMPL	NOHIDE	nosys
387249	UNIMPL	NOHIDE	nosys
388; syscall numbers initially used in OpenBSD
389250	STD	BSD	{ int minherit(void *addr, size_t len, int inherit); }
390251	STD	BSD	{ int rfork(int flags); }
391252	STD	BSD	{ int openbsd_poll(struct pollfd *fds, u_int nfds, \
392			    int timeout); }
393253	STD	BSD	{ int issetugid(void); }
394254	STD	BSD	{ int lchown(char *path, int uid, int gid); }
395255	UNIMPL	NOHIDE	nosys
396256	UNIMPL	NOHIDE	nosys
397257	UNIMPL	NOHIDE	nosys
398258	UNIMPL	NOHIDE	nosys
399259	UNIMPL	NOHIDE	nosys
400260	UNIMPL	NOHIDE	nosys
401261	UNIMPL	NOHIDE	nosys
402262	UNIMPL	NOHIDE	nosys
403263	UNIMPL	NOHIDE	nosys
404264	UNIMPL	NOHIDE	nosys
405265	UNIMPL	NOHIDE	nosys
406266	UNIMPL	NOHIDE	nosys
407267	UNIMPL	NOHIDE	nosys
408268	UNIMPL	NOHIDE	nosys
409269	UNIMPL	NOHIDE	nosys
410270	UNIMPL	NOHIDE	nosys
411271	UNIMPL	NOHIDE	nosys
412272	STD	BSD	{ int getdents(int fd, char *buf, size_t count); }
413273	UNIMPL	NOHIDE	nosys
414274	STD	BSD	{ int lchmod(char *path, mode_t mode); }
415275	NOPROTO BSD	{ int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int
416276	STD	BSD	{ int lutimes(char *path, struct timeval *tptr); }
417277	NOPROTO	BSD	{ int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int
418278	OBSOL	BSD	{ int nstat(char *path, struct nstat *ub); }
419279	OBSOL	NOHIDE	{ int nfstat(int fd, struct nstat *sb); }
420280	OBSOL	NOHIDE	{ int nlstat(char *path, struct nstat *ub); }
421281	UNIMPL	NOHIDE	nosys
422282	UNIMPL	NOHIDE	nosys
423283	UNIMPL	NOHIDE	nosys
424284	UNIMPL	NOHIDE	nosys
425285	UNIMPL	NOHIDE	nosys
426286	UNIMPL	NOHIDE	nosys
427287	UNIMPL	NOHIDE	nosys
428288	UNIMPL	NOHIDE	nosys
429289	UNIMPL	NOHIDE	nosys
430290	UNIMPL	NOHIDE	nosys
431291	UNIMPL	NOHIDE	nosys
432292	UNIMPL	NOHIDE	nosys
433293	UNIMPL	NOHIDE	nosys
434294	UNIMPL	NOHIDE	nosys
435295	UNIMPL	NOHIDE	nosys
436296	UNIMPL	NOHIDE	nosys
437; XXX 297 is 300 in NetBSD
438297	STD	BSD	{ int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
439298	STD	BSD	{ int fhopen(const struct fhandle *u_fhp, int flags); }
440299	STD	BSD 	{ int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
441; syscall numbers for FreeBSD
442300	STD	BSD	{ int modnext(int modid); }
443301	STD	BSD	{ int modstat(int modid, struct module_stat* stat); }
444302	STD	BSD	{ int modfnext(int modid); }
445303	STD	BSD	{ int modfind(const char *name); }
446304	STD	BSD	{ int kldload(const char *file); }
447305	STD	BSD	{ int kldunload(int fileid); }
448306	STD	BSD	{ int kldfind(const char *file); }
449307	STD	BSD	{ int kldnext(int fileid); }
450308	STD	BSD	{ int kldstat(int fileid, struct kld_file_stat* stat); }
451309	STD	BSD	{ int kldfirstmod(int fileid); }
452310	STD	BSD	{ int getsid(pid_t pid); }
453311	STD	BSD	{ int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
454312	STD	BSD	{ int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
455313	OBSOL	NOHIDE	signanosleep
456314     STD     BSD     { int aio_return(struct aiocb *aiocbp); }
457315     STD     BSD     { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
458316     STD     BSD     { int aio_cancel(int fd, struct aiocb *aiocbp); }
459317     STD     BSD     { int aio_error(struct aiocb *aiocbp); }
460318     STD     BSD     { int aio_read(struct aiocb *aiocbp); }
461319     STD     BSD     { int aio_write(struct aiocb *aiocbp); }
462320     STD     BSD     { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
463321     STD     BSD     { int yield(void); }
464322     STD     BSD     { int thr_sleep(const struct timespec *timeout); }
465323     STD     BSD     { int thr_wakeup(pid_t pid); }
466324     STD     BSD     { int mlockall(int how); }
467325     STD     BSD     { int munlockall(void); }
468326     STD     BSD     { int __getcwd(u_char *buf, u_int buflen); }
469
470327     STD     POSIX   { int sched_setparam (pid_t pid, const struct sched_param *param); }
471328     STD     POSIX   { int sched_getparam (pid_t pid, struct sched_param *param); }
472
473329     STD     POSIX   { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
474330     STD     POSIX   { int sched_getscheduler (pid_t pid); }
475
476331     STD     POSIX   { int sched_yield (void); }
477332     STD     POSIX   { int sched_get_priority_max (int policy); }
478333     STD     POSIX   { int sched_get_priority_min (int policy); }
479334     STD     POSIX   { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
480335	STD	BSD	{ int utrace(const void *addr, size_t len); }
481336	OBSOL	NOHIDE	freebsd4_sendfile
482337	STD	BSD	{ int kldsym(int fileid, int cmd, void *data); }
483338	STD	BSD	{ int jail(struct jail *jail); }
484339	UNIMPL	BSD	pioctl
485340	MPSAFE	STD	POSIX	{ int sigprocmask(int how, const sigset_t *set, \
486			    sigset_t *oset); }
487341	STD	POSIX	{ int sigsuspend(const sigset_t *sigmask); }
488342	STD	POSIX	{ int sigaction(int sig, const struct sigaction *act, \
489			    struct sigaction *oact); }
490343	STD	POSIX	{ int sigpending(sigset_t *set); }
491344	STD	BSD	{ int sigreturn(ucontext_t *sigcntxp); }
492345	STD	POSIX	{ int sigtimedwait(const sigset_t *set,\
493			     siginfo_t *info, const struct timespec *timeout); }
494346	STD	POSIX	{ int sigwaitinfo(const sigset_t *set,\
495			     siginfo_t *info); }
496347	STD	BSD	{ int __acl_get_file(const char *path, \
497			    acl_type_t type, struct acl *aclp); }
498348	STD	BSD	{ int __acl_set_file(const char *path, \
499			    acl_type_t type, struct acl *aclp); }
500349	STD	BSD	{ int __acl_get_fd(int filedes, acl_type_t type, \
501			    struct acl *aclp); }
502350	STD	BSD	{ int __acl_set_fd(int filedes, acl_type_t type, \
503			    struct acl *aclp); }
504351	STD	BSD	{ int __acl_delete_file(const char *path, \
505			    acl_type_t type); }
506352	STD	BSD	{ int __acl_delete_fd(int filedes, acl_type_t type); }
507353	STD	BSD	{ int __acl_aclcheck_file(const char *path, \
508			    acl_type_t type, struct acl *aclp); }
509354	STD	BSD	{ int __acl_aclcheck_fd(int filedes, acl_type_t type, \
510			    struct acl *aclp); }
511355	STD	BSD	{ int extattrctl(const char *path, int cmd, \
512			    const char *attrname, char *arg); }
513356	STD	BSD	{ int extattr_set_file(const char *path, \
514			    const char *attrname, struct iovec *iovp, \
515			    unsigned iovcnt); }
516357	STD	BSD	{ int extattr_get_file(const char *path, \
517			    const char *attrname, struct iovec *iovp, \
518			    unsigned iovcnt); }
519358	STD	BSD	{ int extattr_delete_file(const char *path, \
520			    const char *attrname); }
521359	STD	BSD	{ int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); }
522360	STD	BSD	{ int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
523361	STD	BSD	{ int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
524362	STD	BSD	{ int kqueue(void); }
525363	STD	BSD	{ int kevent(int fd, \
526			    const struct kevent *changelist, int nchanges, \
527			    struct kevent *eventlist, int nevents, \
528			    const struct timespec *timeout); }
529364	STD	BSD	{ int sctp_peeloff(int sd, caddr_t name ); }
530; 365-392 used by FreeBSD-current
531365	UNIMPL	NOHIDE	nosys
532366	UNIMPL	NOHIDE	nosys
533367	UNIMPL	NOHIDE	nosys
534368	UNIMPL	NOHIDE	nosys
535369	UNIMPL	NOHIDE	nosys
536370	UNIMPL	NOHIDE	nosys
537371	UNIMPL	NOHIDE	nosys
538372	UNIMPL	NOHIDE	nosys
539373	UNIMPL	NOHIDE	nosys
540374	UNIMPL	NOHIDE	nosys
541375	UNIMPL	NOHIDE	nosys
542376	UNIMPL	NOHIDE	nosys
543377	UNIMPL	NOHIDE	nosys
544378	UNIMPL	NOHIDE	nosys
545379	UNIMPL	NOHIDE	nosys
546380	UNIMPL	NOHIDE	nosys
547381	UNIMPL	NOHIDE	nosys
548382	UNIMPL	NOHIDE	nosys
549383	UNIMPL	NOHIDE	nosys
550384	UNIMPL	NOHIDE	nosys
551385	UNIMPL	NOHIDE	nosys
552386	UNIMPL	NOHIDE	nosys
553387	UNIMPL	NOHIDE	nosys
554388	UNIMPL	NOHIDE	nosys
555389	UNIMPL	NOHIDE	nosys
556390	UNIMPL	NOHIDE	nosys
557391	UNIMPL	NOHIDE	nosys
558392	UNIMPL	NOHIDE	nosys
559393	STD	BSD	{ int sendfile(int fd, int s, off_t offset, size_t nbytes, \
560				struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
561; 394-439 used by FreeBSD-current
562394	UNIMPL	NOHIDE	nosys
563395	UNIMPL	NOHIDE	nosys
564396	UNIMPL	NOHIDE	nosys
565397	UNIMPL	NOHIDE	nosys
566398	UNIMPL	NOHIDE	nosys
567399	UNIMPL	NOHIDE	nosys
568400	UNIMPL	NOHIDE	nosys
569401	UNIMPL	NOHIDE	nosys
570402	UNIMPL	NOHIDE	nosys
571403	UNIMPL	NOHIDE	nosys
572404	UNIMPL	NOHIDE	nosys
573405	UNIMPL	NOHIDE	nosys
574406	UNIMPL	NOHIDE	nosys
575407	UNIMPL	NOHIDE	nosys
576408	UNIMPL	NOHIDE	nosys
577409	UNIMPL	NOHIDE	nosys
578410	UNIMPL	NOHIDE	nosys
579411	UNIMPL	NOHIDE	nosys
580412	UNIMPL	NOHIDE	nosys
581413	UNIMPL	NOHIDE	nosys
582414	UNIMPL	NOHIDE	nosys
583415	UNIMPL	NOHIDE	nosys
584416	UNIMPL	NOHIDE	nosys
585417	UNIMPL	NOHIDE	nosys
586418	UNIMPL	NOHIDE	nosys
587419	UNIMPL	NOHIDE	nosys
588420	UNIMPL	NOHIDE	nosys
589421	UNIMPL	NOHIDE	nosys
590422	UNIMPL	NOHIDE	nosys
591423	UNIMPL	NOHIDE	nosys
592424	UNIMPL	NOHIDE	nosys
593425	UNIMPL	NOHIDE	nosys
594426	UNIMPL	NOHIDE	nosys
595427	UNIMPL	NOHIDE	nosys
596428	UNIMPL	NOHIDE	nosys
597429	UNIMPL	NOHIDE	nosys
598430	UNIMPL	NOHIDE	nosys
599431	UNIMPL	NOHIDE	nosys
600432	UNIMPL	NOHIDE	nosys
601433	UNIMPL	NOHIDE	nosys
602434	UNIMPL	NOHIDE	nosys
603435	UNIMPL	NOHIDE	nosys
604436	UNIMPL	NOHIDE	nosys
605437	UNIMPL	NOHIDE	nosys
606438	UNIMPL	NOHIDE	nosys
607439	UNIMPL	NOHIDE	nosys
608; 440-449 reserved for FreeBSD-5.x growth
609440	UNIMPL	NOHIDE	nosys
610441	UNIMPL	NOHIDE	nosys
611442	UNIMPL	NOHIDE	nosys
612443	UNIMPL	NOHIDE	nosys
613444	UNIMPL	NOHIDE	nosys
614445	UNIMPL	NOHIDE	nosys
615446	UNIMPL	NOHIDE	nosys
616447	UNIMPL	NOHIDE	nosys
617448	UNIMPL	NOHIDE	nosys
618449	UNIMPL	NOHIDE	nosys
619; 450 DragonFly system calls
620450	STD	BSD	{ int varsym_set(int level, const char *name, const char *data); }
621451	STD	BSD	{ int varsym_get(int mask, const char *wild, char *buf, int bufsize); }
622452	STD	BSD	{ int varsym_list(int level, char *buf, int maxsize, int *marker); }
623453	STD	BSD	{ int upc_register(struct upcall *upc, void *ctxfunc, void *func, void *data); }
624454	STD	BSD	{ int upc_control(int cmd, int upcid, void *data); }
625455	STD	BSD	{ int caps_sys_service(const char *name, uid_t uid, gid_t gid, int upcid, int flags); }
626456	STD	BSD	{ int caps_sys_client(const char *name, uid_t uid, gid_t gid, int upcid, int flags); }
627457	STD	BSD	{ int caps_sys_close(int portid); }
628458	STD	BSD	{ off_t caps_sys_put(int portid, void *msg, int msgsize); }
629459	STD	BSD	{ int caps_sys_reply(int portid, void *msg, int msgsize, off_t msgcid); }
630460	STD	BSD	{ int caps_sys_get(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); }
631461	STD	BSD	{ int caps_sys_wait(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); }
632462	STD	BSD	{ int caps_sys_abort(int portid, off_t msgcid, int flags); }
633463	STD	BSD	{ off_t caps_sys_getgen(int portid); }
634464	STD	BSD	{ int caps_sys_setgen(int portid, off_t gen); }
635465	STD	BSD	{ int exec_sys_register(void *entry); }
636466	STD	BSD	{ int exec_sys_unregister(int id); }
637467	STD	BSD	{ int sys_checkpoint(int type, int fd, pid_t pid, int retval); }
638468	STD	BSD	{ int mountctl(const char *path, int op, int fd, const void *ctl, int ctllen, void *buf, int buflen); }
639469	STD	BSD	{ int umtx_sleep(volatile const int *ptr, int value, int timeout); }
640470	STD	BSD	{ int umtx_wakeup(volatile const int *ptr, int count); }
641471	STD	BSD	{ int jail_attach(int jid); }
642472	STD	BSD	{ int sys_set_tls_area(int which, struct tls_info *info, size_t infosize); }
643473	STD	BSD	{ int sys_get_tls_area(int which, struct tls_info *info, size_t infosize); }
644474	STD	BSD	{ int closefrom(int fd); }
645
646