2 ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
4 ; System call name/number master file.
5 ; Processed to created init_sysent.c, syscalls.c and syscall.h.
7 ; Columns: number audit type name alt{name,tag,rtyp}/comments
8 ; number system call number, must be in order
9 ; audit the audit event associated with the system call
10 ; A value of AUE_NULL means no auditing, but it also means that
11 ; there is no audit event for the call at this time. For the
12 ; case where the event exists, but we don't want auditing, the
13 ; event should be #defined to AUE_NULL in audit_kevents.h.
14 ; type one of STD, OBSOL, UNIMPL, COMPAT, CPT_NOA, LIBCOMPAT,
15 ; NODEF, NOARGS, NOPROTO, NOIMPL, NOSTD, COMPAT4
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
25 ; COMPAT included on COMPAT #ifdef
26 ; COMPAT4 included on COMPAT4 #ifdef (FreeBSD 4 compat)
27 ; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
28 ; OBSOL obsolete, not included in system, only specifies name
29 ; UNIMPL not implemented, placeholder only
30 ; NOSTD implemented but as a lkm that can be statically
31 ; compiled in; sysent entry will be filled with lkmsys
32 ; so the SYSCALL_MODULE macro works
34 ; Please copy any additions and changes to the following compatability tables:
35 ; sys/compat/freebsd32/syscalls.master
37 ; #ifdef's, etc. may be included, and are copied to the output files.
39 #include <sys/param.h>
40 #include <sys/sysent.h>
41 #include <sys/sysproto.h>
43 ; Reserved/unimplemented system calls in the range 0-150 inclusive
44 ; are reserved for use in future Berkeley releases.
45 ; Additional system calls implemented in vendor and other
46 ; redistributions should be placed in the reserved range at the end
47 ; of the current calls.
49 0 AUE_NULL STD { int nosys(void); } syscall nosys_args int
50 1 AUE_EXIT STD { void sys_exit(int rval); } exit \
52 2 AUE_FORK STD { int fork(void); }
53 3 AUE_NULL STD { ssize_t read(int fd, void *buf, \
55 4 AUE_NULL STD { ssize_t write(int fd, const void *buf, \
57 5 AUE_OPEN_RWTC STD { int open(char *path, int flags, int mode); }
58 ; XXX should be { int open(const char *path, int flags, ...); }
59 ; but we're not ready for `const' or varargs.
60 ; XXX man page says `mode_t mode'.
61 6 AUE_CLOSE STD { int close(int fd); }
62 7 AUE_WAIT4 STD { int wait4(int pid, int *status, \
63 int options, struct rusage *rusage); } \
65 8 AUE_CREAT COMPAT { int creat(char *path, int mode); }
66 9 AUE_LINK STD { int link(char *path, char *link); }
67 10 AUE_UNLINK STD { int unlink(char *path); }
68 11 AUE_NULL OBSOL execv
69 12 AUE_CHDIR STD { int chdir(char *path); }
70 13 AUE_FCHDIR STD { int fchdir(int fd); }
71 14 AUE_MKNOD STD { int mknod(char *path, int mode, int dev); }
72 15 AUE_CHMOD STD { int chmod(char *path, int mode); }
73 16 AUE_CHOWN STD { int chown(char *path, int uid, int gid); }
74 17 AUE_NULL STD { int obreak(char *nsize); } break \
76 18 AUE_GETFSSTAT COMPAT4 { int getfsstat(struct ostatfs *buf, \
77 long bufsize, int flags); }
78 19 AUE_LSEEK COMPAT { long lseek(int fd, long offset, \
80 20 AUE_GETPID STD { pid_t getpid(void); }
81 21 AUE_MOUNT STD { int mount(char *type, char *path, \
82 int flags, caddr_t data); }
83 ; XXX `path' should have type `const char *' but we're not ready for that.
84 22 AUE_UMOUNT STD { int unmount(char *path, int flags); }
85 23 AUE_SETUID STD { int setuid(uid_t uid); }
86 24 AUE_GETUID STD { uid_t getuid(void); }
87 25 AUE_GETEUID STD { uid_t geteuid(void); }
88 26 AUE_PTRACE STD { int ptrace(int req, pid_t pid, \
89 caddr_t addr, int data); }
90 27 AUE_RECVMSG STD { int recvmsg(int s, struct msghdr *msg, \
92 28 AUE_SENDMSG STD { int sendmsg(int s, struct msghdr *msg, \
94 29 AUE_RECVFROM STD { int recvfrom(int s, caddr_t buf, \
95 size_t len, int flags, \
96 struct sockaddr * __restrict from, \
97 __socklen_t * __restrict fromlenaddr); }
98 30 AUE_ACCEPT STD { int accept(int s, \
99 struct sockaddr * __restrict name, \
100 __socklen_t * __restrict anamelen); }
101 31 AUE_GETPEERNAME STD { int getpeername(int fdes, \
102 struct sockaddr * __restrict asa, \
103 __socklen_t * __restrict alen); }
104 32 AUE_GETSOCKNAME STD { int getsockname(int fdes, \
105 struct sockaddr * __restrict asa, \
106 __socklen_t * __restrict alen); }
107 33 AUE_ACCESS STD { int access(char *path, int flags); }
108 34 AUE_CHFLAGS STD { int chflags(char *path, int flags); }
109 35 AUE_FCHFLAGS STD { int fchflags(int fd, int flags); }
110 36 AUE_SYNC STD { int sync(void); }
111 37 AUE_KILL STD { int kill(int pid, int signum); }
112 38 AUE_STAT COMPAT { int stat(char *path, struct ostat *ub); }
113 39 AUE_GETPPID STD { pid_t getppid(void); }
114 40 AUE_LSTAT COMPAT { int lstat(char *path, struct ostat *ub); }
115 41 AUE_DUP STD { int dup(u_int fd); }
116 42 AUE_PIPE STD { int pipe(void); }
117 43 AUE_GETEGID STD { gid_t getegid(void); }
118 44 AUE_PROFILE STD { int profil(caddr_t samples, size_t size, \
119 size_t offset, u_int scale); }
120 45 AUE_KTRACE STD { int ktrace(const char *fname, int ops, \
121 int facs, int pid); }
122 46 AUE_SIGACTION COMPAT { int sigaction(int signum, \
123 struct osigaction *nsa, \
124 struct osigaction *osa); }
125 47 AUE_GETGID STD { gid_t getgid(void); }
126 48 AUE_SIGPROCMASK COMPAT { int sigprocmask(int how, osigset_t mask); }
127 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
128 ; us the mask, not a pointer to it, and we return the old mask as the
129 ; (int) return value.
130 49 AUE_GETLOGIN STD { int getlogin(char *namebuf, u_int \
132 50 AUE_SETLOGIN STD { int setlogin(char *namebuf); }
133 51 AUE_ACCT STD { int acct(char *path); }
134 52 AUE_SIGPENDING COMPAT { int sigpending(void); }
135 53 AUE_SIGALTSTACK STD { int sigaltstack(stack_t *ss, \
137 54 AUE_IOCTL STD { int ioctl(int fd, u_long com, \
139 55 AUE_REBOOT STD { int reboot(int opt); }
140 56 AUE_REVOKE STD { int revoke(char *path); }
141 57 AUE_SYMLINK STD { int symlink(char *path, char *link); }
142 58 AUE_READLINK STD { int readlink(char *path, char *buf, \
144 59 AUE_EXECVE STD { int execve(char *fname, char **argv, \
146 60 AUE_UMASK STD { int umask(int newmask); } umask umask_args \
148 61 AUE_CHROOT STD { int chroot(char *path); }
149 62 AUE_FSTAT COMPAT { int fstat(int fd, struct ostat *sb); }
150 63 AUE_NULL COMPAT { int getkerninfo(int op, char *where, \
151 size_t *size, int arg); } getkerninfo \
153 64 AUE_NULL COMPAT { int getpagesize(void); } getpagesize \
155 65 AUE_MSYNC STD { int msync(void *addr, size_t len, \
157 66 AUE_VFORK STD { int vfork(void); }
158 67 AUE_NULL OBSOL vread
159 68 AUE_NULL OBSOL vwrite
160 69 AUE_SBRK STD { int sbrk(int incr); }
161 70 AUE_SSTK STD { int sstk(int incr); }
162 71 AUE_MMAP COMPAT { int mmap(void *addr, int len, int prot, \
163 int flags, int fd, long pos); }
164 72 AUE_O_VADVISE STD { int ovadvise(int anom); } vadvise \
166 73 AUE_MUNMAP STD { int munmap(void *addr, size_t len); }
167 74 AUE_MPROTECT STD { int mprotect(const void *addr, size_t len, \
169 75 AUE_MADVISE STD { int madvise(void *addr, size_t len, \
171 76 AUE_NULL OBSOL vhangup
172 77 AUE_NULL OBSOL vlimit
173 78 AUE_MINCORE STD { int mincore(const void *addr, size_t len, \
175 79 AUE_GETGROUPS STD { int getgroups(u_int gidsetsize, \
177 80 AUE_SETGROUPS STD { int setgroups(u_int gidsetsize, \
179 81 AUE_GETPGRP STD { int getpgrp(void); }
180 82 AUE_SETPGRP STD { int setpgid(int pid, int pgid); }
181 83 AUE_SETITIMER STD { int setitimer(u_int which, struct \
182 itimerval *itv, struct itimerval *oitv); }
183 84 AUE_WAIT4 COMPAT { int wait(void); }
184 85 AUE_SWAPON STD { int swapon(char *name); }
185 86 AUE_GETITIMER STD { int getitimer(u_int which, \
186 struct itimerval *itv); }
187 87 AUE_SYSCTL COMPAT { int gethostname(char *hostname, \
188 u_int len); } gethostname \
190 88 AUE_SYSCTL COMPAT { int sethostname(char *hostname, \
191 u_int len); } sethostname \
193 89 AUE_GETDTABLESIZE STD { int getdtablesize(void); }
194 90 AUE_DUP2 STD { int dup2(u_int from, u_int to); }
195 91 AUE_NULL UNIMPL getdopt
196 92 AUE_FCNTL STD { int fcntl(int fd, int cmd, long arg); }
197 ; XXX should be { int fcntl(int fd, int cmd, ...); }
198 ; but we're not ready for varargs.
199 93 AUE_SELECT STD { int select(int nd, fd_set *in, fd_set *ou, \
200 fd_set *ex, struct timeval *tv); }
201 94 AUE_NULL UNIMPL setdopt
202 95 AUE_FSYNC STD { int fsync(int fd); }
203 96 AUE_SETPRIORITY STD { int setpriority(int which, int who, \
205 97 AUE_SOCKET STD { int socket(int domain, int type, \
207 98 AUE_CONNECT STD { int connect(int s, caddr_t name, \
209 99 AUE_ACCEPT CPT_NOA { int accept(int s, caddr_t name, \
210 int *anamelen); } accept accept_args int
211 100 AUE_GETPRIORITY STD { int getpriority(int which, int who); }
212 101 AUE_SEND COMPAT { int send(int s, caddr_t buf, int len, \
214 102 AUE_RECV COMPAT { int recv(int s, caddr_t buf, int len, \
216 103 AUE_SIGRETURN COMPAT { int sigreturn( \
217 struct osigcontext *sigcntxp); }
218 104 AUE_BIND STD { int bind(int s, caddr_t name, \
220 105 AUE_SETSOCKOPT STD { int setsockopt(int s, int level, int name, \
221 caddr_t val, int valsize); }
222 106 AUE_LISTEN STD { int listen(int s, int backlog); }
223 107 AUE_NULL OBSOL vtimes
224 108 AUE_NULL COMPAT { int sigvec(int signum, struct sigvec *nsv, \
225 struct sigvec *osv); }
226 109 AUE_NULL COMPAT { int sigblock(int mask); }
227 110 AUE_NULL COMPAT { int sigsetmask(int mask); }
228 111 AUE_NULL COMPAT { int sigsuspend(osigset_t mask); }
229 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
230 ; us the mask, not a pointer to it.
231 112 AUE_NULL COMPAT { int sigstack(struct sigstack *nss, \
232 struct sigstack *oss); }
233 113 AUE_RECVMSG COMPAT { int recvmsg(int s, struct omsghdr *msg, \
235 114 AUE_SENDMSG COMPAT { int sendmsg(int s, caddr_t msg, \
237 115 AUE_NULL OBSOL vtrace
238 116 AUE_GETTIMEOFDAY STD { int gettimeofday(struct timeval *tp, \
239 struct timezone *tzp); }
240 117 AUE_GETRUSAGE STD { int getrusage(int who, \
241 struct rusage *rusage); }
242 118 AUE_GETSOCKOPT STD { int getsockopt(int s, int level, int name, \
243 caddr_t val, int *avalsize); }
244 119 AUE_NULL UNIMPL resuba (BSD/OS 2.x)
245 120 AUE_READV STD { int readv(int fd, struct iovec *iovp, \
247 121 AUE_WRITEV STD { int writev(int fd, struct iovec *iovp, \
249 122 AUE_SETTIMEOFDAY STD { int settimeofday(struct timeval *tv, \
250 struct timezone *tzp); }
251 123 AUE_FCHOWN STD { int fchown(int fd, int uid, int gid); }
252 124 AUE_FCHMOD STD { int fchmod(int fd, int mode); }
253 125 AUE_RECVFROM CPT_NOA { int recvfrom(int s, caddr_t buf, \
254 size_t len, int flags, caddr_t from, int \
255 *fromlenaddr); } recvfrom recvfrom_args \
257 126 AUE_SETREUID STD { int setreuid(int ruid, int euid); }
258 127 AUE_SETREGID STD { int setregid(int rgid, int egid); }
259 128 AUE_RENAME STD { int rename(char *from, char *to); }
260 129 AUE_TRUNCATE COMPAT { int truncate(char *path, long length); }
261 130 AUE_FTRUNCATE COMPAT { int ftruncate(int fd, long length); }
262 131 AUE_FLOCK STD { int flock(int fd, int how); }
263 132 AUE_MKFIFO STD { int mkfifo(char *path, int mode); }
264 133 AUE_SENDTO STD { int sendto(int s, caddr_t buf, size_t len, \
265 int flags, caddr_t to, int tolen); }
266 134 AUE_SHUTDOWN STD { int shutdown(int s, int how); }
267 135 AUE_SOCKETPAIR STD { int socketpair(int domain, int type, \
268 int protocol, int *rsv); }
269 136 AUE_MKDIR STD { int mkdir(char *path, int mode); }
270 137 AUE_RMDIR STD { int rmdir(char *path); }
271 138 AUE_UTIMES STD { int utimes(char *path, \
272 struct timeval *tptr); }
273 139 AUE_NULL OBSOL 4.2 sigreturn
274 140 AUE_ADJTIME STD { int adjtime(struct timeval *delta, \
275 struct timeval *olddelta); }
276 141 AUE_GETPEERNAME COMPAT { int getpeername(int fdes, caddr_t asa, \
278 142 AUE_SYSCTL COMPAT { long gethostid(void); }
279 143 AUE_SYSCTL COMPAT { int sethostid(long hostid); }
280 144 AUE_GETRLIMIT COMPAT { int getrlimit(u_int which, struct \
282 145 AUE_SETRLIMIT COMPAT { int setrlimit(u_int which, \
283 struct orlimit *rlp); }
284 146 AUE_KILLPG COMPAT { int killpg(int pgid, int signum); }
285 147 AUE_SETSID STD { int setsid(void); }
286 148 AUE_QUOTACTL STD { int quotactl(char *path, int cmd, int uid, \
288 149 AUE_O_QUOTA COMPAT { int quota(void); }
289 150 AUE_GETSOCKNAME CPT_NOA { int getsockname(int fdec, \
290 caddr_t asa, int *alen); } getsockname \
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...
297 151 AUE_NULL UNIMPL sem_lock (BSD/OS 2.x)
298 152 AUE_NULL UNIMPL sem_wakeup (BSD/OS 2.x)
299 153 AUE_NULL UNIMPL asyncdaemon (BSD/OS 2.x)
300 154 AUE_NULL UNIMPL nosys
301 ; 155 is initialized by the NFS code, if present.
302 155 AUE_NFS_SVC NOSTD { int nfssvc(int flag, caddr_t argp); }
303 156 AUE_GETDIRENTRIES COMPAT { int getdirentries(int fd, char *buf, \
304 u_int count, long *basep); }
305 157 AUE_STATFS COMPAT4 { int statfs(char *path, \
306 struct ostatfs *buf); }
307 158 AUE_FSTATFS COMPAT4 { int fstatfs(int fd, \
308 struct ostatfs *buf); }
309 159 AUE_NULL UNIMPL nosys
310 160 AUE_LGETFH STD { int lgetfh(char *fname, \
311 struct fhandle *fhp); }
312 161 AUE_NFS_GETFH STD { int getfh(char *fname, \
313 struct fhandle *fhp); }
314 162 AUE_SYSCTL STD { int getdomainname(char *domainname, \
316 163 AUE_SYSCTL STD { int setdomainname(char *domainname, \
318 164 AUE_NULL STD { int uname(struct utsname *name); }
319 165 AUE_SYSARCH STD { int sysarch(int op, char *parms); }
320 166 AUE_RTPRIO STD { int rtprio(int function, pid_t pid, \
321 struct rtprio *rtp); }
322 167 AUE_NULL UNIMPL nosys
323 168 AUE_NULL UNIMPL nosys
324 ; 169 is initialized by the SYSVSEM code if present or loaded
325 169 AUE_SEMSYS NOSTD { int semsys(int which, int a2, int a3, \
327 ; 169 is initialized by the SYSVMSG code if present or loaded
328 ; XXX should be { int semsys(int which, ...); }
329 170 AUE_MSGSYS NOSTD { int msgsys(int which, int a2, int a3, \
330 int a4, int a5, int a6); }
331 ; 169 is initialized by the SYSVSHM code if present or loaded
332 ; XXX should be { int msgsys(int which, ...); }
333 171 AUE_SHMSYS NOSTD { int shmsys(int which, int a2, int a3, \
335 ; XXX should be { int shmsys(int which, ...); }
336 172 AUE_NULL UNIMPL nosys
337 173 AUE_PREAD STD { ssize_t pread(int fd, void *buf, \
338 size_t nbyte, int pad, off_t offset); }
339 174 AUE_PWRITE STD { ssize_t pwrite(int fd, const void *buf, \
340 size_t nbyte, int pad, off_t offset); }
341 175 AUE_NULL UNIMPL nosys
342 176 AUE_NTP_ADJTIME STD { int ntp_adjtime(struct timex *tp); }
343 177 AUE_NULL UNIMPL sfork (BSD/OS 2.x)
344 178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x)
345 179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x)
346 180 AUE_NULL UNIMPL nosys
348 ; Syscalls 181-199 are used by/reserved for BSD
349 181 AUE_SETGID STD { int setgid(gid_t gid); }
350 182 AUE_SETEGID STD { int setegid(gid_t egid); }
351 183 AUE_SETEUID STD { int seteuid(uid_t euid); }
352 184 AUE_NULL UNIMPL lfs_bmapv
353 185 AUE_NULL UNIMPL lfs_markv
354 186 AUE_NULL UNIMPL lfs_segclean
355 187 AUE_NULL UNIMPL lfs_segwait
356 188 AUE_STAT STD { int stat(char *path, struct stat *ub); }
357 189 AUE_FSTAT STD { int fstat(int fd, struct stat *sb); }
358 190 AUE_LSTAT STD { int lstat(char *path, struct stat *ub); }
359 191 AUE_PATHCONF STD { int pathconf(char *path, int name); }
360 192 AUE_FPATHCONF STD { int fpathconf(int fd, int name); }
361 193 AUE_NULL UNIMPL nosys
362 194 AUE_GETRLIMIT STD { int getrlimit(u_int which, \
363 struct rlimit *rlp); } getrlimit \
365 195 AUE_SETRLIMIT STD { int setrlimit(u_int which, \
366 struct rlimit *rlp); } setrlimit \
368 196 AUE_GETDIRENTRIES STD { int getdirentries(int fd, char *buf, \
369 u_int count, long *basep); }
370 197 AUE_MMAP STD { caddr_t mmap(caddr_t addr, size_t len, \
371 int prot, int flags, int fd, int pad, \
373 198 AUE_NULL STD { int nosys(void); } __syscall \
375 199 AUE_LSEEK STD { off_t lseek(int fd, int pad, off_t offset, \
377 200 AUE_TRUNCATE STD { int truncate(char *path, int pad, \
379 201 AUE_FTRUNCATE STD { int ftruncate(int fd, int pad, \
381 202 AUE_SYSCTL STD { int __sysctl(int *name, u_int namelen, \
382 void *old, size_t *oldlenp, void *new, \
383 size_t newlen); } __sysctl sysctl_args int
384 203 AUE_MLOCK STD { int mlock(const void *addr, size_t len); }
385 204 AUE_MUNLOCK STD { int munlock(const void *addr, size_t len); }
386 205 AUE_UNDELETE STD { int undelete(char *path); }
387 206 AUE_FUTIMES STD { int futimes(int fd, struct timeval *tptr); }
388 207 AUE_GETPGID STD { int getpgid(pid_t pid); }
389 208 AUE_NULL UNIMPL newreboot (NetBSD)
390 209 AUE_POLL STD { int poll(struct pollfd *fds, u_int nfds, \
394 ; The following are reserved for loadable syscalls
396 210 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
397 211 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
398 212 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
399 213 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
400 214 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
401 215 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
402 216 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
403 217 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
404 218 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
405 219 AUE_NULL NODEF lkmnosys lkmnosys nosys_args int
408 ; The following were introduced with NetBSD/4.4Lite-2
409 220 AUE_SEMCTL NOSTD { int __semctl(int semid, int semnum, \
410 int cmd, union semun *arg); }
411 221 AUE_SEMGET NOSTD { int semget(key_t key, int nsems, \
413 222 AUE_SEMOP NOSTD { int semop(int semid, struct sembuf *sops, \
415 223 AUE_NULL UNIMPL semconfig
416 224 AUE_MSGCTL NOSTD { int msgctl(int msqid, int cmd, \
417 struct msqid_ds *buf); }
418 225 AUE_MSGGET NOSTD { int msgget(key_t key, int msgflg); }
419 226 AUE_MSGSND NOSTD { int msgsnd(int msqid, const void *msgp, \
420 size_t msgsz, int msgflg); }
421 227 AUE_MSGRCV NOSTD { int msgrcv(int msqid, void *msgp, \
422 size_t msgsz, long msgtyp, int msgflg); }
423 228 AUE_SHMAT NOSTD { int shmat(int shmid, const void *shmaddr, \
425 229 AUE_SHMCTL NOSTD { int shmctl(int shmid, int cmd, \
426 struct shmid_ds *buf); }
427 230 AUE_SHMDT NOSTD { int shmdt(const void *shmaddr); }
428 231 AUE_SHMGET NOSTD { int shmget(key_t key, size_t size, \
431 232 AUE_NULL STD { int clock_gettime(clockid_t clock_id, \
432 struct timespec *tp); }
433 233 AUE_CLOCK_SETTIME STD { int clock_settime( \
434 clockid_t clock_id, \
435 const struct timespec *tp); }
436 234 AUE_NULL STD { int clock_getres(clockid_t clock_id, \
437 struct timespec *tp); }
438 235 AUE_NULL STD { int ktimer_create(clockid_t clock_id, \
439 struct sigevent *evp, int *timerid); }
440 236 AUE_NULL STD { int ktimer_delete(int timerid); }
441 237 AUE_NULL STD { int ktimer_settime(int timerid, int flags, \
442 const struct itimerspec *value, \
443 struct itimerspec *ovalue); }
444 238 AUE_NULL STD { int ktimer_gettime(int timerid, struct \
445 itimerspec *value); }
446 239 AUE_NULL STD { int ktimer_getoverrun(int timerid); }
447 240 AUE_NULL STD { int nanosleep(const struct timespec *rqtp, \
448 struct timespec *rmtp); }
449 241 AUE_NULL UNIMPL nosys
450 242 AUE_NULL UNIMPL nosys
451 243 AUE_NULL UNIMPL nosys
452 244 AUE_NULL UNIMPL nosys
453 245 AUE_NULL UNIMPL nosys
454 246 AUE_NULL UNIMPL nosys
455 247 AUE_NULL UNIMPL nosys
456 248 AUE_NULL STD { int ntp_gettime(struct ntptimeval *ntvp); }
457 249 AUE_NULL UNIMPL nosys
458 ; syscall numbers initially used in OpenBSD
459 250 AUE_MINHERIT STD { int minherit(void *addr, size_t len, \
461 251 AUE_RFORK STD { int rfork(int flags); }
462 252 AUE_POLL STD { int openbsd_poll(struct pollfd *fds, \
463 u_int nfds, int timeout); }
464 253 AUE_ISSETUGID STD { int issetugid(void); }
465 254 AUE_LCHOWN STD { int lchown(char *path, int uid, int gid); }
466 255 AUE_NULL NOSTD { int aio_read(struct aiocb *aiocbp); }
467 256 AUE_NULL NOSTD { int aio_write(struct aiocb *aiocbp); }
468 257 AUE_NULL NOSTD { int lio_listio(int mode, \
469 struct aiocb * const *acb_list, \
470 int nent, struct sigevent *sig); }
471 258 AUE_NULL UNIMPL nosys
472 259 AUE_NULL UNIMPL nosys
473 260 AUE_NULL UNIMPL nosys
474 261 AUE_NULL UNIMPL nosys
475 262 AUE_NULL UNIMPL nosys
476 263 AUE_NULL UNIMPL nosys
477 264 AUE_NULL UNIMPL nosys
478 265 AUE_NULL UNIMPL nosys
479 266 AUE_NULL UNIMPL nosys
480 267 AUE_NULL UNIMPL nosys
481 268 AUE_NULL UNIMPL nosys
482 269 AUE_NULL UNIMPL nosys
483 270 AUE_NULL UNIMPL nosys
484 271 AUE_NULL UNIMPL nosys
485 272 AUE_O_GETDENTS STD { int getdents(int fd, char *buf, \
487 273 AUE_NULL UNIMPL nosys
488 274 AUE_LCHMOD STD { int lchmod(char *path, mode_t mode); }
489 275 AUE_LCHOWN NOPROTO { int lchown(char *path, uid_t uid, \
490 gid_t gid); } netbsd_lchown lchown_args \
492 276 AUE_LUTIMES STD { int lutimes(char *path, \
493 struct timeval *tptr); }
494 277 AUE_MSYNC NOPROTO { int msync(void *addr, size_t len, \
495 int flags); } netbsd_msync msync_args int
496 278 AUE_STAT STD { int nstat(char *path, struct nstat *ub); }
497 279 AUE_FSTAT STD { int nfstat(int fd, struct nstat *sb); }
498 280 AUE_LSTAT STD { int nlstat(char *path, struct nstat *ub); }
499 281 AUE_NULL UNIMPL nosys
500 282 AUE_NULL UNIMPL nosys
501 283 AUE_NULL UNIMPL nosys
502 284 AUE_NULL UNIMPL nosys
503 285 AUE_NULL UNIMPL nosys
504 286 AUE_NULL UNIMPL nosys
505 287 AUE_NULL UNIMPL nosys
506 288 AUE_NULL UNIMPL nosys
507 ; 289 and 290 from NetBSD (OpenBSD: 267 and 268)
508 289 AUE_PREADV STD { ssize_t preadv(int fd, struct iovec *iovp, \
509 u_int iovcnt, off_t offset); }
510 290 AUE_PWRITEV STD { ssize_t pwritev(int fd, struct iovec *iovp, \
511 u_int iovcnt, off_t offset); }
512 291 AUE_NULL UNIMPL nosys
513 292 AUE_NULL UNIMPL nosys
514 293 AUE_NULL UNIMPL nosys
515 294 AUE_NULL UNIMPL nosys
516 295 AUE_NULL UNIMPL nosys
517 296 AUE_NULL UNIMPL nosys
518 ; XXX 297 is 300 in NetBSD
519 297 AUE_FHSTATFS COMPAT4 { int fhstatfs( \
520 const struct fhandle *u_fhp, \
521 struct ostatfs *buf); }
522 298 AUE_FHOPEN STD { int fhopen(const struct fhandle *u_fhp, \
524 299 AUE_FHSTAT STD { int fhstat(const struct fhandle *u_fhp, \
526 ; syscall numbers for FreeBSD
527 300 AUE_NULL STD { int modnext(int modid); }
528 301 AUE_NULL STD { int modstat(int modid, \
529 struct module_stat *stat); }
530 302 AUE_NULL STD { int modfnext(int modid); }
531 303 AUE_NULL STD { int modfind(const char *name); }
532 304 AUE_MODLOAD STD { int kldload(const char *file); }
533 305 AUE_MODUNLOAD STD { int kldunload(int fileid); }
534 306 AUE_NULL STD { int kldfind(const char *file); }
535 307 AUE_NULL STD { int kldnext(int fileid); }
536 308 AUE_NULL STD { int kldstat(int fileid, struct \
537 kld_file_stat* stat); }
538 309 AUE_NULL STD { int kldfirstmod(int fileid); }
539 310 AUE_GETSID STD { int getsid(pid_t pid); }
540 311 AUE_SETRESUID STD { int setresuid(uid_t ruid, uid_t euid, \
542 312 AUE_SETRESGID STD { int setresgid(gid_t rgid, gid_t egid, \
544 313 AUE_NULL OBSOL signanosleep
545 314 AUE_NULL NOSTD { int aio_return(struct aiocb *aiocbp); }
546 315 AUE_NULL NOSTD { int aio_suspend( \
547 struct aiocb * const * aiocbp, int nent, \
548 const struct timespec *timeout); }
549 316 AUE_NULL NOSTD { int aio_cancel(int fd, \
550 struct aiocb *aiocbp); }
551 317 AUE_NULL NOSTD { int aio_error(struct aiocb *aiocbp); }
552 318 AUE_NULL NOSTD { int oaio_read(struct oaiocb *aiocbp); }
553 319 AUE_NULL NOSTD { int oaio_write(struct oaiocb *aiocbp); }
554 320 AUE_NULL NOSTD { int olio_listio(int mode, \
555 struct oaiocb * const *acb_list, \
556 int nent, struct osigevent *sig); }
557 321 AUE_NULL STD { int yield(void); }
558 322 AUE_NULL OBSOL thr_sleep
559 323 AUE_NULL OBSOL thr_wakeup
560 324 AUE_MLOCKALL STD { int mlockall(int how); }
561 325 AUE_MUNLOCKALL STD { int munlockall(void); }
562 326 AUE_GETCWD STD { int __getcwd(u_char *buf, u_int buflen); }
564 327 AUE_NULL STD { int sched_setparam (pid_t pid, \
565 const struct sched_param *param); }
566 328 AUE_NULL STD { int sched_getparam (pid_t pid, struct \
567 sched_param *param); }
569 329 AUE_NULL STD { int sched_setscheduler (pid_t pid, int \
570 policy, const struct sched_param \
572 330 AUE_NULL STD { int sched_getscheduler (pid_t pid); }
574 331 AUE_NULL STD { int sched_yield (void); }
575 332 AUE_NULL STD { int sched_get_priority_max (int policy); }
576 333 AUE_NULL STD { int sched_get_priority_min (int policy); }
577 334 AUE_NULL STD { int sched_rr_get_interval (pid_t pid, \
578 struct timespec *interval); }
579 335 AUE_NULL STD { int utrace(const void *addr, size_t len); }
580 336 AUE_SENDFILE COMPAT4 { int sendfile(int fd, int s, \
581 off_t offset, size_t nbytes, \
582 struct sf_hdtr *hdtr, off_t *sbytes, \
584 337 AUE_NULL STD { int kldsym(int fileid, int cmd, \
586 338 AUE_JAIL STD { int jail(struct jail *jail); }
587 339 AUE_NULL UNIMPL pioctl
588 340 AUE_SIGPROCMASK STD { int sigprocmask(int how, \
589 const sigset_t *set, sigset_t *oset); }
590 341 AUE_SIGSUSPEND STD { int sigsuspend(const sigset_t *sigmask); }
591 342 AUE_SIGACTION COMPAT4 { int sigaction(int sig, const \
592 struct sigaction *act, \
593 struct sigaction *oact); }
594 343 AUE_SIGPENDING STD { int sigpending(sigset_t *set); }
595 344 AUE_SIGRETURN COMPAT4 { int sigreturn( \
596 const struct ucontext4 *sigcntxp); }
597 345 AUE_SIGWAIT STD { int sigtimedwait(const sigset_t *set, \
599 const struct timespec *timeout); }
600 346 AUE_NULL STD { int sigwaitinfo(const sigset_t *set, \
602 347 AUE_NULL STD { int __acl_get_file(const char *path, \
603 acl_type_t type, struct acl *aclp); }
604 348 AUE_NULL STD { int __acl_set_file(const char *path, \
605 acl_type_t type, struct acl *aclp); }
606 349 AUE_NULL STD { int __acl_get_fd(int filedes, \
607 acl_type_t type, struct acl *aclp); }
608 350 AUE_NULL STD { int __acl_set_fd(int filedes, \
609 acl_type_t type, struct acl *aclp); }
610 351 AUE_NULL STD { int __acl_delete_file(const char *path, \
612 352 AUE_NULL STD { int __acl_delete_fd(int filedes, \
614 353 AUE_NULL STD { int __acl_aclcheck_file(const char *path, \
615 acl_type_t type, struct acl *aclp); }
616 354 AUE_NULL STD { int __acl_aclcheck_fd(int filedes, \
617 acl_type_t type, struct acl *aclp); }
618 355 AUE_EXTATTRCTL STD { int extattrctl(const char *path, int cmd, \
619 const char *filename, int attrnamespace, \
620 const char *attrname); }
621 356 AUE_EXTATTR_SET_FILE STD { int extattr_set_file( \
622 const char *path, int attrnamespace, \
623 const char *attrname, void *data, \
625 357 AUE_EXTATTR_GET_FILE STD { ssize_t extattr_get_file( \
626 const char *path, int attrnamespace, \
627 const char *attrname, void *data, \
629 358 AUE_EXTATTR_DELETE_FILE STD { int extattr_delete_file(const char *path, \
631 const char *attrname); }
632 359 AUE_NULL NOSTD { int aio_waitcomplete( \
633 struct aiocb **aiocbp, \
634 struct timespec *timeout); }
635 360 AUE_GETRESUID STD { int getresuid(uid_t *ruid, uid_t *euid, \
637 361 AUE_GETRESGID STD { int getresgid(gid_t *rgid, gid_t *egid, \
639 362 AUE_KQUEUE STD { int kqueue(void); }
640 363 AUE_NULL STD { int kevent(int fd, \
641 struct kevent *changelist, int nchanges, \
642 struct kevent *eventlist, int nevents, \
643 const struct timespec *timeout); }
644 364 AUE_NULL UNIMPL __cap_get_proc
645 365 AUE_NULL UNIMPL __cap_set_proc
646 366 AUE_NULL UNIMPL __cap_get_fd
647 367 AUE_NULL UNIMPL __cap_get_file
648 368 AUE_NULL UNIMPL __cap_set_fd
649 369 AUE_NULL UNIMPL __cap_set_file
650 370 AUE_NULL NODEF lkmressys lkmressys nosys_args int
651 371 AUE_EXTATTR_SET_FD STD { int extattr_set_fd(int fd, \
652 int attrnamespace, const char *attrname, \
653 void *data, size_t nbytes); }
654 372 AUE_EXTATTR_GET_FD STD { ssize_t extattr_get_fd(int fd, \
655 int attrnamespace, const char *attrname, \
656 void *data, size_t nbytes); }
657 373 AUE_EXTATTR_DELETE_FD STD { int extattr_delete_fd(int fd, \
659 const char *attrname); }
660 374 AUE_NULL STD { int __setugid(int flag); }
661 375 AUE_NULL NOIMPL { int nfsclnt(int flag, caddr_t argp); }
662 376 AUE_EACCESS STD { int eaccess(char *path, int flags); }
663 377 AUE_NULL UNIMPL afs_syscall
664 378 AUE_NMOUNT STD { int nmount(struct iovec *iovp, \
665 unsigned int iovcnt, int flags); }
666 379 AUE_NULL STD { int kse_exit(void); }
667 380 AUE_NULL STD { int kse_wakeup(struct kse_mailbox *mbx); }
668 381 AUE_NULL STD { int kse_create(struct kse_mailbox *mbx, \
670 382 AUE_NULL STD { int kse_thr_interrupt( \
671 struct kse_thr_mailbox *tmbx, int cmd, \
673 383 AUE_NULL STD { int kse_release(struct timespec *timeout); }
674 384 AUE_NULL STD { int __mac_get_proc(struct mac *mac_p); }
675 385 AUE_NULL STD { int __mac_set_proc(struct mac *mac_p); }
676 386 AUE_NULL STD { int __mac_get_fd(int fd, \
677 struct mac *mac_p); }
678 387 AUE_NULL STD { int __mac_get_file(const char *path_p, \
679 struct mac *mac_p); }
680 388 AUE_NULL STD { int __mac_set_fd(int fd, \
681 struct mac *mac_p); }
682 389 AUE_NULL STD { int __mac_set_file(const char *path_p, \
683 struct mac *mac_p); }
684 390 AUE_NULL STD { int kenv(int what, const char *name, \
685 char *value, int len); }
686 391 AUE_LCHFLAGS STD { int lchflags(const char *path, int flags); }
687 392 AUE_NULL STD { int uuidgen(struct uuid *store, \
689 393 AUE_SENDFILE STD { int sendfile(int fd, int s, off_t offset, \
690 size_t nbytes, struct sf_hdtr *hdtr, \
691 off_t *sbytes, int flags); }
692 394 AUE_NULL STD { int mac_syscall(const char *policy, \
693 int call, void *arg); }
694 395 AUE_GETFSSTAT STD { int getfsstat(struct statfs *buf, \
695 long bufsize, int flags); }
696 396 AUE_STATFS STD { int statfs(char *path, \
697 struct statfs *buf); }
698 397 AUE_FSTATFS STD { int fstatfs(int fd, struct statfs *buf); }
699 398 AUE_FHSTATFS STD { int fhstatfs(const struct fhandle *u_fhp, \
700 struct statfs *buf); }
701 399 AUE_NULL UNIMPL nosys
702 400 AUE_NULL NOSTD { int ksem_close(semid_t id); }
703 401 AUE_NULL NOSTD { int ksem_post(semid_t id); }
704 402 AUE_NULL NOSTD { int ksem_wait(semid_t id); }
705 403 AUE_NULL NOSTD { int ksem_trywait(semid_t id); }
706 404 AUE_NULL NOSTD { int ksem_init(semid_t *idp, \
707 unsigned int value); }
708 405 AUE_NULL NOSTD { int ksem_open(semid_t *idp, \
709 const char *name, int oflag, \
710 mode_t mode, unsigned int value); }
711 406 AUE_NULL NOSTD { int ksem_unlink(const char *name); }
712 407 AUE_NULL NOSTD { int ksem_getvalue(semid_t id, int *val); }
713 408 AUE_NULL NOSTD { int ksem_destroy(semid_t id); }
714 409 AUE_NULL STD { int __mac_get_pid(pid_t pid, \
715 struct mac *mac_p); }
716 410 AUE_NULL STD { int __mac_get_link(const char *path_p, \
717 struct mac *mac_p); }
718 411 AUE_NULL STD { int __mac_set_link(const char *path_p, \
719 struct mac *mac_p); }
720 412 AUE_EXTATTR_SET_LINK STD { int extattr_set_link( \
721 const char *path, int attrnamespace, \
722 const char *attrname, void *data, \
724 413 AUE_EXTATTR_GET_LINK STD { ssize_t extattr_get_link( \
725 const char *path, int attrnamespace, \
726 const char *attrname, void *data, \
728 414 AUE_EXTATTR_DELETE_LINK STD { int extattr_delete_link( \
729 const char *path, int attrnamespace, \
730 const char *attrname); }
731 415 AUE_NULL STD { int __mac_execve(char *fname, char **argv, \
732 char **envv, struct mac *mac_p); }
733 416 AUE_SIGACTION STD { int sigaction(int sig, \
734 const struct sigaction *act, \
735 struct sigaction *oact); }
736 417 AUE_SIGRETURN STD { int sigreturn( \
737 const struct __ucontext *sigcntxp); }
738 418 AUE_NULL UNIMPL __xstat
739 419 AUE_NULL UNIMPL __xfstat
740 420 AUE_NULL UNIMPL __xlstat
741 421 AUE_NULL STD { int getcontext(struct __ucontext *ucp); }
742 422 AUE_NULL STD { int setcontext( \
743 const struct __ucontext *ucp); }
744 423 AUE_NULL STD { int swapcontext(struct __ucontext *oucp, \
745 const struct __ucontext *ucp); }
746 424 AUE_SWAPOFF STD { int swapoff(const char *name); }
747 425 AUE_NULL STD { int __acl_get_link(const char *path, \
748 acl_type_t type, struct acl *aclp); }
749 426 AUE_NULL STD { int __acl_set_link(const char *path, \
750 acl_type_t type, struct acl *aclp); }
751 427 AUE_NULL STD { int __acl_delete_link(const char *path, \
753 428 AUE_NULL STD { int __acl_aclcheck_link(const char *path, \
754 acl_type_t type, struct acl *aclp); }
755 429 AUE_SIGWAIT STD { int sigwait(const sigset_t *set, \
757 430 AUE_NULL STD { int thr_create(ucontext_t *ctx, long *id, \
759 431 AUE_NULL STD { void thr_exit(long *state); }
760 432 AUE_NULL STD { int thr_self(long *id); }
761 433 AUE_NULL STD { int thr_kill(long id, int sig); }
762 434 AUE_NULL STD { int _umtx_lock(struct umtx *umtx); }
763 435 AUE_NULL STD { int _umtx_unlock(struct umtx *umtx); }
764 436 AUE_NULL STD { int jail_attach(int jid); }
765 437 AUE_EXTATTR_LIST_FD STD { ssize_t extattr_list_fd(int fd, \
766 int attrnamespace, void *data, \
768 438 AUE_EXTATTR_LIST_FILE STD { ssize_t extattr_list_file( \
769 const char *path, int attrnamespace, \
770 void *data, size_t nbytes); }
771 439 AUE_EXTATTR_LIST_LINK STD { ssize_t extattr_list_link( \
772 const char *path, int attrnamespace, \
773 void *data, size_t nbytes); }
774 440 AUE_NULL STD { int kse_switchin( \
775 struct kse_thr_mailbox *tmbx, \
777 441 AUE_NULL NOSTD { int ksem_timedwait(semid_t id, \
778 const struct timespec *abstime); }
779 442 AUE_NULL STD { int thr_suspend( \
780 const struct timespec *timeout); }
781 443 AUE_NULL STD { int thr_wake(long id); }
782 444 AUE_MODUNLOAD STD { int kldunloadf(int fileid, int flags); }
783 445 AUE_AUDIT STD { int audit(const void *record, \
785 446 AUE_AUDITON STD { int auditon(int cmd, void *data, \
787 447 AUE_GETAUID STD { int getauid(uid_t *auid); }
788 448 AUE_SETAUID STD { int setauid(uid_t *auid); }
789 449 AUE_GETAUDIT STD { int getaudit(struct auditinfo *auditinfo); }
790 450 AUE_SETAUDIT STD { int setaudit(struct auditinfo *auditinfo); }
791 451 AUE_GETAUDIT_ADDR STD { int getaudit_addr( \
792 struct auditinfo_addr *auditinfo_addr, \
794 452 AUE_SETAUDIT_ADDR STD { int setaudit_addr( \
795 struct auditinfo_addr *auditinfo_addr, \
797 453 AUE_AUDITCTL STD { int auditctl(char *path); }
798 454 AUE_NULL STD { int _umtx_op(void *obj, int op, \
799 u_long val, void *uaddr1, void *uaddr2); }
800 455 AUE_NULL STD { int thr_new(struct thr_param *param, \
802 456 AUE_NULL STD { int sigqueue(pid_t pid, int signum, void *value); }
803 457 AUE_NULL NOSTD { int kmq_open(const char *path, int flags, \
804 mode_t mode, const struct mq_attr *attr); }
805 458 AUE_NULL NOSTD { int kmq_setattr(int mqd, \
806 const struct mq_attr *attr, \
807 struct mq_attr *oattr); }
808 459 AUE_NULL NOSTD { int kmq_timedreceive(int mqd, \
809 char *msg_ptr, size_t msg_len, \
810 unsigned *msg_prio, \
811 const struct timespec *abs_timeout); }
812 460 AUE_NULL NOSTD { int kmq_timedsend(int mqd, \
813 const char *msg_ptr, size_t msg_len,\
815 const struct timespec *abs_timeout);}
816 461 AUE_NULL NOSTD { int kmq_notify(int mqd, \
817 const struct sigevent *sigev); }
818 462 AUE_NULL NOSTD { int kmq_unlink(const char *path); }
819 463 AUE_NULL STD { int abort2(const char *why, int nargs, void **args); }
820 464 AUE_NULL STD { int thr_set_name(long id, const char *name); }
821 465 AUE_NULL NOSTD { int aio_fsync(int op, struct aiocb *aiocbp); }
822 466 AUE_RTPRIO STD { int rtprio_thread(int function, \
823 lwpid_t lwpid, struct rtprio *rtp); }
824 467 AUE_NULL UNIMPL nosys
825 468 AUE_NULL UNIMPL nosys
826 469 AUE_NULL UNIMPL __getpath_fromfd
827 470 AUE_NULL UNIMPL __getpath_fromaddr
828 471 AUE_NULL STD { int sctp_peeloff(int sd, uint32_t name); }
829 472 AUE_NULL STD { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, \
830 caddr_t to, __socklen_t tolen, \
831 struct sctp_sndrcvinfo *sinfo, int flags); }
832 473 AUE_NULL STD { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, \
833 caddr_t to, __socklen_t tolen, \
834 struct sctp_sndrcvinfo *sinfo, int flags); }
835 474 AUE_NULL STD { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, \
836 struct sockaddr * from, __socklen_t *fromlenaddr, \
837 struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
838 ; Please copy any additions and changes to the following compatability tables:
839 ; sys/compat/freebsd32/syscalls.master