xref: /netbsd/sys/compat/freebsd/syscalls.master (revision bf9ec67e)
1	$NetBSD: syscalls.master,v 1.37 2002/05/03 00:20:57 eeh Exp $
2
3;	from: @(#)syscalls.master	8.2 (Berkeley) 1/13/94
4
5; NetBSD COMPAT_FREEBSD system call name/number "master" file.
6; (See syscalls.conf to see what it is processed into.)
7;
8; Fields: number type [type-dependent ...]
9;	number	system call number, must be in order
10;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11;		the compatibility options defined in syscalls.conf.
12;
13; types:
14;	STD	always included
15;	OBSOL	obsolete, not included in system
16;	UNIMPL	unimplemented, not included in system
17;	NODEF	included, but don't define the syscall number
18;	NOARGS	included, but don't define the syscall args structure
19;
20; The compat options are defined in the syscalls.conf file, and the
21; compat option name is prefixed to the syscall name.  Other than
22; that, they're like NODEF (for 'compat' options), or STD (for
23; 'libcompat' options).
24;
25; The type-dependent arguments are as follows:
26; For STD, NODEF, NOARGS, and compat syscalls:
27;	{ pseudo-proto } [alias]
28; For other syscalls:
29;	[comment]
30;
31; #ifdef's, etc. may be included, and are copied to the output files.
32; #include's are copied to the syscall names and switch definition files only.
33
34#if defined(_KERNEL_OPT)
35#include "opt_ktrace.h"
36#include "opt_nfsserver.h"
37#include "opt_ntp.h"
38#include "opt_sysv.h"
39#include "opt_compat_43.h"
40
41#include "fs_lfs.h"
42#include "fs_nfs.h"
43#endif
44
45#include <sys/param.h>
46#include <sys/systm.h>
47#include <sys/signal.h>
48#include <sys/mount.h>
49#include <sys/syscallargs.h>
50
51#include <compat/freebsd/freebsd_syscallargs.h>
52
53#include <machine/freebsd_machdep.h>
54
55%%
56
57; Reserved/unimplemented system calls in the range 0-150 inclusive
58; are reserved for use in future Berkeley releases.
59; Additional system calls implemented in vendor and other
60; redistributions should be placed in the reserved range at the end
61; of the current calls.
62
630	NOARGS		{ int sys_nosys(void); } syscall
641	NOARGS		{ int sys_exit(int rval); }
652	NOARGS		{ int sys_fork(void); }
663	NOARGS		{ int sys_read(int fd, char *buf, u_int nbyte); }
674	NOARGS		{ int sys_write(int fd, char *buf, u_int nbyte); }
685	STD		{ int freebsd_sys_open(const char *path, int flags, \
69			    int mode); }
706	NOARGS		{ int sys_close(int fd); }
717	NOARGS		{ int sys_wait4(int pid, int *status, int options, \
72			    struct rusage *rusage); }
738	STD		{ int compat_43_freebsd_sys_creat(const char *path, \
74			    int mode); } ocreat
759	STD		{ int freebsd_sys_link(const char *path, \
76			    const char *link); }
7710	STD		{ int freebsd_sys_unlink(const char *path); }
7811	OBSOL		execv
7912	STD		{ int freebsd_sys_chdir(const char *path); }
8013	NOARGS		{ int sys_fchdir(int fd); }
8114	STD		{ int freebsd_sys_mknod(const char *path, int mode, \
82			    int dev); }
8315	STD		{ int freebsd_sys_chmod(const char *path, int mode); }
8416	STD		{ int freebsd_sys_chown(const char *path, int uid, \
85			    int gid); }
8617	NOARGS		{ int sys_obreak(char *nsize); } break
8718	NOARGS		{ int sys_getfsstat(struct statfs *buf, long bufsize, \
88			    int flags); }
8919	NOARGS		{ long compat_43_sys_lseek(int fd, long offset, \
90			    int whence); } olseek
9120	NOARGS		{ pid_t sys_getpid_with_ppid(void); }
9221	STD		{ int freebsd_sys_mount(int type, const char *path, \
93			    int flags, caddr_t data); }
9422	STD		{ int freebsd_sys_unmount(const char *path, \
95			    int flags); }
9623	NOARGS		{ int sys_setuid(uid_t uid); }
9724	NOARGS		{ uid_t sys_getuid_with_euid(void); }
9825	NOARGS		{ uid_t sys_geteuid(void); }
9926	STD		{ int freebsd_sys_ptrace(int req, pid_t pid, \
100			    caddr_t addr, int data); }
10127	NOARGS		{ int sys_recvmsg(int s, struct msghdr *msg, \
102			    int flags); }
10328	NOARGS		{ int sys_sendmsg(int s, caddr_t msg, int flags); }
10429	NOARGS		{ int sys_recvfrom(int s, caddr_t buf, size_t len, \
105			    int flags, caddr_t from, int *fromlenaddr); }
10630	NOARGS		{ int sys_accept(int s, caddr_t name, int *anamelen); }
10731	NOARGS		{ int sys_getpeername(int fdes, caddr_t asa, \
108			    int *alen); }
10932	NOARGS		{ int sys_getsockname(int fdes, caddr_t asa, \
110			    int *alen); }
11133	STD		{ int freebsd_sys_access(const char *path, int flags); }
11234	STD		{ int freebsd_sys_chflags(const char *path, \
113			    int flags); }
11435	NOARGS		{ int sys_fchflags(int fd, int flags); }
11536	NOARGS		{ int sys_sync(void); }
11637	NOARGS		{ int sys_kill(int pid, int signum); }
11738	STD		{ int compat_43_freebsd_sys_stat(const char *path, \
118			    struct stat43 *ub); } stat43
11939	NOARGS		{ pid_t sys_getppid(void); }
12040	STD		{ int compat_43_freebsd_sys_lstat(const char *path, \
121			    struct stat43 *ub); } lstat43
12241	NOARGS		{ int sys_dup(u_int fd); }
12342	NOARGS		{ int sys_pipe(void); }
12443	NOARGS		{ gid_t sys_getegid(void); }
12544	NOARGS		{ int sys_profil(caddr_t samples, u_int size, \
126			    u_int offset, u_int scale); }
127#ifdef KTRACE
12845	NOARGS		{ int sys_ktrace(char *fname, int ops, int facs, \
129			    int pid); }
130#else
13145	EXCL		ktrace
132#endif
13346	NOARGS		{ int compat_13_sys_sigaction(int signum, \
134			    const struct sigaction13 *nsa, \
135			    struct sigaction13 *osa); }
13647	NOARGS		{ gid_t sys_getgid_with_egid(void); }
13748	NOARGS		{ int compat_13_sys_sigprocmask(int how, \
138			    int mask); }
13949	NOARGS		{ int sys___getlogin(char *namebuf, u_int namelen); }
14050	NOARGS		{ int sys_setlogin(char *namebuf); }
14151	NOARGS		{ int sys_acct(char *path); }
14252	NOARGS		{ int compat_13_sys_sigpending(void); }
14353	NOARGS		{ int compat_13_sys_sigaltstack( \
144			    const struct sigaltstack13 *nss, \
145			    struct sigaltstack13 *oss); }
14654	STD		{ int freebsd_sys_ioctl(int fd, u_long com, \
147			    caddr_t data); }
14855	NOARGS		{ int sys_reboot(int opt); } oreboot
14956	STD		{ int freebsd_sys_revoke(const char *path); }
15057	STD		{ int freebsd_sys_symlink(const char *path, \
151			    const char *link); }
15258	STD		{ int freebsd_sys_readlink(const char *path, \
153			    char *buf, int count); }
15459	STD		{ int freebsd_sys_execve(const char *path, \
155			    char **argp, char **envp); }
15660	NOARGS		{ int sys_umask(int newmask); }
15761	STD		{ int freebsd_sys_chroot(const char *path); }
15862	NOARGS		{ int compat_43_sys_fstat(int fd, struct stat43 *sb); } \
159			    fstat43
16063	NOARGS		{ int compat_43_sys_getkerninfo(int op, char *where, \
161			    int *size, int arg); } ogetkerninfo
16264	NOARGS		{ int compat_43_sys_getpagesize(void); } ogetpagesize
16365	STD		{ int freebsd_sys_msync(caddr_t addr, size_t len, \
164			    int flags); }
16566	NOARGS		{ int sys_vfork(void); }
16667	OBSOL		vread
16768	OBSOL		vwrite
16869	NOARGS		{ int sys_sbrk(intptr_t incr); }
16970	NOARGS		{ int sys_sstk(int incr); }
17071	NOARGS		{ int compat_43_sys_mmap(caddr_t addr, size_t len, \
171			    int prot, int flags, int fd, long pos); } ommap
17272	NOARGS		{ int sys_ovadvise(int anom); } vadvise
17373	NOARGS		{ int sys_munmap(caddr_t addr, size_t len); }
17474	NOARGS		{ int sys_mprotect(caddr_t addr, size_t len, \
175			    int prot); }
17675	NOARGS		{ int sys_madvise(caddr_t addr, size_t len, \
177			    int behav); }
17876	OBSOL		vhangup
17977	OBSOL		vlimit
18078	NOARGS		{ int sys_mincore(caddr_t addr, size_t len, char *vec); }
18179	NOARGS		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
18280	NOARGS		{ int sys_setgroups(u_int gidsetsize, gid_t *gidset); }
18381	NOARGS		{ int sys_getpgrp(void); }
18482	NOARGS		{ int sys_setpgid(int pid, int pgid); }
18583	NOARGS		{ int sys_setitimer(u_int which, \
186			    struct itimerval *itv, struct itimerval *oitv); }
18784	NOARGS		{ int compat_43_sys_wait(void); } owait
18885	NOARGS		{ int compat_12_sys_swapon(char *name); }
18986	NOARGS		{ int sys_getitimer(u_int which, \
190			    struct itimerval *itv); }
19187	NOARGS		{ int compat_43_sys_gethostname(char *hostname, \
192			    u_int len); } ogethostname
19388	NOARGS		{ int compat_43_sys_sethostname(char *hostname, \
194			    u_int len); } osethostname
19589	NOARGS		{ int compat_43_sys_getdtablesize(void); } \
196			    ogetdtablesize
19790	NOARGS		{ int sys_dup2(u_int from, u_int to); }
19891	UNIMPL		getdopt
19992	NOARGS		{ int sys_fcntl(int fd, int cmd, void *arg); }
20093	NOARGS		{ int sys_select(u_int nd, fd_set *in, fd_set *ou, \
201			    fd_set *ex, struct timeval *tv); }
20294	UNIMPL		setdopt
20395	NOARGS		{ int sys_fsync(int fd); }
20496	NOARGS		{ int sys_setpriority(int which, int who, int prio); }
20597	NOARGS		{ int sys_socket(int domain, int type, int protocol); }
20698	NOARGS		{ int sys_connect(int s, caddr_t name, int namelen); }
20799	NOARGS		{ int compat_43_sys_accept(int s, caddr_t name, \
208			    int *anamelen); } oaccept
209100	NOARGS		{ int sys_getpriority(int which, int who); }
210101	NOARGS		{ int compat_43_sys_send(int s, caddr_t buf, int len, \
211			    int flags); } osend
212102	NOARGS		{ int compat_43_sys_recv(int s, caddr_t buf, int len, \
213			    int flags); } orecv
214103	STD		{ int freebsd_sys_sigreturn( \
215			    struct freebsd_sigcontext *scp); }
216104	NOARGS		{ int sys_bind(int s, caddr_t name, int namelen); }
217105	NOARGS		{ int sys_setsockopt(int s, int level, int name, \
218			    caddr_t val, int valsize); }
219106	NOARGS		{ int sys_listen(int s, int backlog); }
220107	OBSOL		vtimes
221108	NOARGS		{ int compat_43_sys_sigvec(int signum, \
222			    struct sigvec *nsv, struct sigvec *osv); } osigvec
223109	NOARGS		{ int compat_43_sys_sigblock(int mask); } osigblock
224110	NOARGS		{ int compat_43_sys_sigsetmask(int mask); } osigsetmask
225111	NOARGS		{ int compat_13_sys_sigsuspend(int mask); }
226112	NOARGS		{ int compat_43_sys_sigstack(struct sigstack *nss, \
227			    struct sigstack *oss); } osigstack
228113	NOARGS		{ int compat_43_sys_recvmsg(int s, \
229			    struct omsghdr *msg, int flags); } orecvmsg
230114	NOARGS		{ int compat_43_sys_sendmsg(int s, caddr_t msg, \
231			    int flags); } osendmsg
232#ifdef TRACE
233115	NOARGS		{ int sys_vtrace(int request, int value); }
234#else
235115	OBSOL		vtrace
236#endif
237116	NOARGS		{ int sys_gettimeofday(struct timeval *tp, \
238			    struct timezone *tzp); }
239117	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
240118	NOARGS		{ int sys_getsockopt(int s, int level, int name, \
241			    caddr_t val, int *avalsize); }
242119	OBSOL		resuba
243120	NOARGS		{ int sys_readv(int fd, struct iovec *iovp, \
244			    u_int iovcnt); }
245121	NOARGS		{ int sys_writev(int fd, struct iovec *iovp, \
246			    u_int iovcnt); }
247122	NOARGS		{ int sys_settimeofday(struct timeval *tv, \
248			    struct timezone *tzp); }
249123	NOARGS		{ int sys_fchown(int fd, int uid, int gid); }
250124	NOARGS		{ int sys_fchmod(int fd, int mode); }
251125	NOARGS		{ int compat_43_sys_recvfrom(int s, caddr_t buf, \
252			    size_t len, int flags, caddr_t from, \
253			    int *fromlenaddr); } orecvfrom
254126	NOARGS		{ int sys_setreuid(int ruid, int euid); }
255127	NOARGS		{ int sys_setregid(int rgid, int egid); }
256128	STD		{ int freebsd_sys_rename(const char *from, \
257			    const char *to); }
258129	STD		{ int compat_43_freebsd_sys_truncate(const char *path, \
259			    long length); } otruncate
260130	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); } \
261			    oftruncate
262131	NOARGS		{ int sys_flock(int fd, int how); }
263132	STD		{ int freebsd_sys_mkfifo(const char *path, int mode); }
264133	NOARGS		{ int sys_sendto(int s, caddr_t buf, size_t len, \
265			    int flags, caddr_t to, int tolen); }
266134	NOARGS		{ int sys_shutdown(int s, int how); }
267135	NOARGS		{ int sys_socketpair(int domain, int type, \
268			    int protocol, int *rsv); }
269136	STD		{ int freebsd_sys_mkdir(const char *path, int mode); }
270137	STD		{ int freebsd_sys_rmdir(const char *path); }
271138	NOARGS		{ int sys_utimes(char *path, struct timeval *tptr); }
272139	OBSOL		4.2 sigreturn
273140	NOARGS		{ int sys_adjtime(struct timeval *delta, \
274			    struct timeval *olddelta); }
275141	NOARGS		{ int compat_43_sys_getpeername(int fdes, caddr_t asa, \
276			    int *alen); } ogetpeername
277142	NOARGS		{ int32_t compat_43_sys_gethostid(void); } ogethostid
278143	NOARGS		{ int compat_43_sys_sethostid(int32_t hostid); } \
279			    osethostid
280144	NOARGS		{ int compat_43_sys_getrlimit(u_int which, \
281			    struct orlimit *rlp); } ogetrlimit
282145	NOARGS		{ int compat_43_sys_setrlimit(u_int which, \
283			    struct orlimit *rlp); } osetrlimit
284146	NOARGS		{ int compat_43_sys_killpg(int pgid, int signum); } \
285			    okillpg
286147	NOARGS		{ int sys_setsid(void); }
287148	NOARGS		{ int sys_quotactl(char *path, int cmd, int uid, \
288			    caddr_t arg); }
289149	NOARGS		{ int compat_43_sys_quota(void); } oquota
290150	NOARGS		{ int compat_43_sys_getsockname(int fdec, caddr_t asa, \
291			    int *alen); } ogetsockname
292
293; Syscalls 151-180 inclusive are reserved for vendor-specific
294; system calls.  (This includes various calls added for compatibity
295; with other Unix variants.)
296; Some of these calls are now supported by BSD...
297151	UNIMPL		sem_lock
298152	UNIMPL		sem_wakeup
299153	UNIMPL		asyncdaemon
300154	UNIMPL
301#if defined(NFS) || defined(NFSSERVER)
302155	NOARGS		{ int sys_nfssvc(int flag, caddr_t argp); }
303#else
304155	UNIMPL		nfssvc
305#endif
306156	NOARGS		{ int compat_43_sys_getdirentries(int fd, char *buf, \
307			    u_int count, long *basep); } ogetdirentries
308157	STD		{ int freebsd_sys_statfs(const char *path, \
309			    struct statfs *buf); }
310158	NOARGS		{ int sys_fstatfs(int fd, struct statfs *buf); }
311159	UNIMPL
312160	UNIMPL
313#ifdef NFS
314161	STD		{ int freebsd_sys_getfh(const char *fname, \
315			    fhandle_t *fhp); }
316#else
317161	UNIMPL		getfh
318#endif
319162	NOARGS		{ int compat_09_sys_getdomainname(char *domainname, \
320			    int len); }
321163	NOARGS		{ int compat_09_sys_setdomainname(char *domainname, \
322			    int len); }
323164	NOARGS		{ int compat_09_sys_uname(struct outsname *name); }
324165	NOARGS		{ int sys_sysarch(int op, char *parms); }
325166	STD		{ int freebsd_sys_rtprio(int function, pid_t pid, \
326			    struct freebsd_rtprio *rtp); }
327167	UNIMPL
328168	UNIMPL
329; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
330#if defined(SYSVSEM) && !defined(_LP64)
331169	STD		{ int freebsd_sys_semsys(int which, int a2, int a3, \
332			    int a4, int a5); }
333#else
334169	UNIMPL		1.0 semsys
335#endif
336; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
337#if defined(SYSVMSG) && !defined(_LP64)
338170	STD		{ int freebsd_sys_msgsys(int which, int a2, int a3, \
339			    int a4, int a5, int a6); }
340#else
341170	UNIMPL		1.0 msgsys
342#endif
343; XXX more generally, never on machines where sizeof(void *) != sizeof(int)
344#if defined(SYSVSHM) && !defined(_LP64)
345171	STD		{ int freebsd_sys_shmsys(int which, int a2, int a3, \
346			    int a4); }
347#else
348171	UNIMPL		1.0 shmsys
349#endif
350172	UNIMPL
351173	NOARGS		{ ssize_t sys_pread(int fd, void *buf, \
352			    size_t nbyte, int pad, off_t offset); }
353174	NOARGS		{ ssize_t sys_pwrite(int fd, const void *buf, \
354			    size_t nbyte, int pad, off_t offset); }
355175	UNIMPL
356#ifdef NTP
357176	STD		{ int freebsd_ntp_adjtime(struct freebsd_timex *tp); }
358#else
359176     EXCL            ntp_adjtime
360#endif
361177	UNIMPL		sfork
362178	UNIMPL		getdescriptor
363179	UNIMPL		setdescriptor
364180	UNIMPL
365
366; Syscalls 180-199 are used by/reserved for BSD
367181	NOARGS		{ int sys_setgid(gid_t gid); }
368182	NOARGS		{ int sys_setegid(gid_t egid); }
369183	NOARGS		{ int sys_seteuid(uid_t euid); }
370#ifdef LFS
371184	NOARGS		{ int sys_lfs_bmapv(fsid_t *fsidp, \
372			    struct block_info *blkiov, int blkcnt); }
373185	NOARGS		{ int sys_lfs_markv(fsid_t *fsidp, \
374			    struct block_info *blkiov, int blkcnt); }
375186	NOARGS		{ int sys_lfs_segclean(fsid_t *fsidp, u_long segment); }
376187	NOARGS		{ int sys_lfs_segwait(fsid_t *fsidp, struct timeval *tv); }
377#else
378184	UNIMPL
379185	UNIMPL
380186	UNIMPL
381187	UNIMPL
382#endif
383188	STD		{ int freebsd_sys_stat(const char *path, \
384			    struct stat12 *ub); }
385189	NOARGS		{ int compat_12_sys_fstat(int fd, \
386			    struct stat12 *sb); }
387190	STD		{ int freebsd_sys_lstat(const char *path, \
388			    struct stat12 *ub); }
389191	STD		{ int freebsd_sys_pathconf(const char *path, \
390			    int name); }
391192	NOARGS		{ int sys_fpathconf(int fd, int name); }
392193	UNIMPL
393194	NOARGS		{ int sys_getrlimit(u_int which, struct rlimit *rlp); }
394195	NOARGS		{ int sys_setrlimit(u_int which, struct rlimit *rlp); }
395196	NOARGS		{ int compat_12_sys_getdirentries(int fd, char *buf, \
396			    u_int count, long *basep); }
397197	NOARGS		{ caddr_t sys_mmap(caddr_t addr, size_t len, int prot, \
398			    int flags, int fd, long pad, off_t pos); }
399198	NOARGS		{ int sys_nosys(void); } __syscall
400199	NOARGS		{ off_t sys_lseek(int fd, int pad, off_t offset, \
401			    int whence); }
402200	STD		{ int freebsd_sys_truncate(const char *path, int pad, \
403			    off_t length); }
404201	NOARGS		{ int sys_ftruncate(int fd, int pad, off_t length); }
405202	NOARGS		{ int sys___sysctl(int *name, u_int namelen, \
406			    void *old, size_t *oldlenp, void *new, \
407			    size_t newlen); }
408203	NOARGS		{ int sys_mlock(caddr_t addr, size_t len); }
409204	NOARGS		{ int sys_munlock(caddr_t addr, size_t len); }
410#ifdef FREEBSD_BASED_ON_44LITE_R2
411205	STD		{ int freebsd_sys_undelete(char *path); }
412#else
413205	UNIMPL		undelete
414#endif
415206	NOARGS		{ int sys_futimes(int fd, const struct timeval *tptr); }
416207	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
417#if 0
418208	NOARGS		{ int sys_reboot(int opt, char *bootstr); }
419#else
420208	UNIMPL		newreboot
421#endif
422209	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
423			    int timeout); }
424;
425; Syscalls 210-219 are reserved for dynamically loaded syscalls
426;
427210	UNIMPL
428211	UNIMPL
429212	UNIMPL
430213	UNIMPL
431214	UNIMPL
432215	UNIMPL
433216	UNIMPL
434217	UNIMPL
435218	UNIMPL
436219	UNIMPL
437;
438; Syscalls 220-239 are reserved for syscalls imported from NetBSD
439;
440#ifdef SYSVSEM
441220	NOARGS		{ int compat_14_sys___semctl(int semid, int semnum, \
442			    int cmd, union __semun *arg); }
443221	NOARGS		{ int sys_semget(key_t key, int nsems, int semflg); }
444222	NOARGS		{ int sys_semop(int semid, struct sembuf *sops, \
445			    u_int nsops); }
446223	NOARGS		{ int sys_semconfig(int flag); }
447#else
448220	UNIMPL		semctl
449221	UNIMPL		semget
450222	UNIMPL		semop
451223	UNIMPL		semconfig
452#endif
453#ifdef SYSVMSG
454224	NOARGS		{ int compat_14_sys_msgctl(int msqid, int cmd, \
455			    struct msqid14_ds *buf); }
456225	NOARGS		{ int sys_msgget(key_t key, int msgflg); }
457226	NOARGS		{ int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
458			    int msgflg); }
459227	NOARGS		{ int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
460			    long msgtyp, int msgflg); }
461#else
462224	UNIMPL		msgctl
463225	UNIMPL		msgget
464226	UNIMPL		msgsnd
465227	UNIMPL		msgrcv
466#endif
467#ifdef SYSVSHM
468228	NOARGS		{ int sys_shmat(int shmid, void *shmaddr, int shmflg); }
469229	NOARGS		{ int compat_14_sys_shmctl(int shmid, int cmd, \
470			    struct shmid_ds14 *buf); }
471230	NOARGS		{ int sys_shmdt(void *shmaddr); }
472231	NOARGS		{ int sys_shmget(key_t key, int size, int shmflg); }
473#else
474228	UNIMPL		shmat
475229	UNIMPL		shmctl
476230	UNIMPL		shmdt
477231	UNIMPL		shmget
478#endif
479;
480; XXXX
481232	NOARGS		{ int sys_clock_gettime(clockid_t clock_id, \
482			    struct timespec *tp); }
483233	NOARGS		{ int sys_clock_settime(clockid_t clock_id, \
484			    const struct timespec *tp); }
485234	NOARGS		{ int sys_clock_getres(clockid_t clock_id, \
486			    struct timespec *tp); }
487235	UNIMPL		timer_create
488236	UNIMPL		timer_delete
489237	UNIMPL		timer_settime
490238	UNIMPL		timer_gettime
491239	UNIMPL		timer_getoverrun
492240	NOARGS		{ int sys_nanosleep(const struct timespec *rqtp, \
493			    struct timespec *rmtp); }
494241	UNIMPL
495242	UNIMPL
496243	UNIMPL
497244	UNIMPL
498245	UNIMPL
499246	UNIMPL
500247	UNIMPL
501248	UNIMPL
502249	UNIMPL
503; syscall numbers initially used in OpenBSD
504250	NOARGS		{ int sys_minherit(void *addr, size_t len, \
505			    int inherit); }
506251	UNIMPL		rfork
507252	UNIMPL		openbsd_poll
508253	NOARGS		{ int sys_issetugid(void); }
509254	STD		{ int freebsd_sys_lchown(const char *path, int uid, \
510			    int gid); }
511255	UNIMPL
512256	UNIMPL
513257	UNIMPL
514258	UNIMPL
515259	UNIMPL
516260	UNIMPL
517261	UNIMPL
518262	UNIMPL
519263	UNIMPL
520264	UNIMPL
521265	UNIMPL
522266	UNIMPL
523267	UNIMPL
524268	UNIMPL
525269	UNIMPL
526270	UNIMPL
527271	UNIMPL
528272	NOARGS		{ int sys_getdents(int fd, char *buf, size_t count); }
529273	UNIMPL
530274	NOARGS		{ int sys_lchmod(const char *path, mode_t mode); }
531275	NOARGS		{ int sys_lchown(const char *path, uid_t uid, \
532			    gid_t gid); } netbsd_lchown
533276	NOARGS		{ int sys_lutimes(const char *path, \
534			    const struct timeval *tptr); }
535277	NOARGS		{ int sys___msync13(void *addr, size_t len, int flags); }
536278	NOARGS		{ int sys___stat13(const char *path, struct stat *ub); }
537279	NOARGS		{ int sys___fstat13(int fd, struct stat *sb); }
538280	NOARGS		{ int sys___lstat13(const char *path, struct stat *ub);}
539281	UNIMPL
540282	UNIMPL
541283	UNIMPL
542284	UNIMPL
543285	UNIMPL
544286	UNIMPL
545287	UNIMPL
546288	UNIMPL
547289	UNIMPL
548290	UNIMPL
549291	UNIMPL
550292	UNIMPL
551293	UNIMPL
552294	UNIMPL
553295	UNIMPL
554296	UNIMPL
555297	NOARGS		{ int sys_fhstatfs(const fhandle_t *fhp, \
556			    struct statfs *buf); }
557298	NOARGS		{ int sys_fhopen(const fhandle_t *fhp, int flags); }
558299	NOARGS		{ int sys_fhstat(const fhandle_t *fhp, \
559			    struct stat *sb); }
560; syscall numbers for FreeBSD
561300	UNIMPL		modnext
562301	UNIMPL		modstat
563302	UNIMPL		modfnext
564303	UNIMPL		modfind
565304	UNIMPL		kldload
566305	UNIMPL		kldunload
567306	UNIMPL		kldfind
568307	UNIMPL		kldnext
569308	UNIMPL		kldstat
570309	UNIMPL		kldfirstmod
571310	NOARGS		{ pid_t sys_getsid(pid_t pid); }
572311	UNIMPL		setresuid
573312	UNIMPL		setresgid
574313	UNIMPL		signanosleep
575314	UNIMPL		aio_return
576315	UNIMPL		aio_suspend
577316	UNIMPL		aio_cancel
578317	UNIMPL		aio_error
579318	UNIMPL		aio_read
580319	UNIMPL		aio_write
581320	UNIMPL		lio_listio
582321	UNIMPL		yield
583322	UNIMPL		thr_sleep
584323	UNIMPL		thr_wakeup
585324	NOARGS		{ int sys_mlockall(int flags); }
586325	NOARGS		{ int sys_munlockall(void); }
587326	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
588327	UNIMPL		sched_setparam
589328	UNIMPL		sched_getparam
590329	UNIMPL		sched_setscheduler
591330	UNIMPL		sched_getscheduler
592331	UNIMPL		sched_yield
593332	UNIMPL		sched_get_priority_max
594333	UNIMPL		sched_get_priority_min
595334	UNIMPL		sched_rr_get_interval
596335	STD		{ int freebsd_sys_utrace(void *addr, size_t len); }
597336	UNIMPL		sendfile
598337	UNIMPL		kldsym
599338	UNIMPL		jail
600339	UNIMPL		pioctl
601340	NOARGS		{ int sys___sigprocmask14(int how, \
602			    const sigset_t *set, \
603			    sigset_t *oset); }
604341	NOARGS		{ int sys___sigsuspend14(const sigset_t *set); }
605342	STD		{ int freebsd_sys_sigaction4(int signum, \
606			    const struct freebsd_sigaction4 *nsa, \
607			    struct freebsd_sigaction4 *osa); }
608343	NOARGS		{ int sys___sigpending14(const sigset_t *set); }
609344	UNIMPL		4.0 sigreturn
610345	UNIMPL		sigtimedwait
611346	UNIMPL		sigwaitinfo
612347	UNIMPL		__acl_get_file
613348	UNIMPL		__acl_set_file
614349	UNIMPL		__acl_get_fd
615350	UNIMPL		__acl_set_fd
616351	UNIMPL		__acl_delete_file
617352	UNIMPL		__acl_delete_fd
618353	UNIMPL		__acl_aclcheck_file
619354	UNIMPL		__acl_aclcheck_fd
620355	UNIMPL		extattrctl
621356	UNIMPL		extattr_set_file
622357	UNIMPL		extattr_get_file
623358	UNIMPL		extattr_delete_file
624359	UNIMPL		aio_waitcomplete
625360	UNIMPL		getresuid
626361	UNIMPL		getresgid
627362	UNIMPL		kqueue
628363	UNIMPL		kevent
629