1 $DragonFly: src/sys/kern/syscalls.master,v 1.54 2007/04/22 00:59:25 dillon Exp $
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 $
6 ; System call name/number master file.
7 ; Processed to created init_sysent.c, syscalls.c and syscall.h.
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
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
30 ; #ifdef's, etc. may be included, and are copied to the output files.
32 #include <sys/param.h>
33 #include <sys/sysent.h>
34 #include <sys/sysproto.h>
37 #include <emulation/43bsd/stat.h>
40 #include <emulation/dragonfly12/stat.h>
42 ; Reserved/unimplemented system calls in the range 0-150 inclusive
43 ; are reserved for use in future Berkeley releases.
44 ; Additional system calls implemented in vendor and other
45 ; redistributions should be placed in the reserved range at the end
46 ; of the current calls.
48 0 STD NOHIDE { int nosys(void); } syscall nosys_args int
49 1 STD NOHIDE { void exit(int rval); }
50 2 STD POSIX { int fork(void); }
51 3 MPSAFE STD POSIX { ssize_t read(int fd, void *buf, size_t nbyte); }
52 4 MPSAFE STD POSIX { ssize_t write(int fd, const void *buf, size_t nbyte); }
53 5 STD POSIX { int open(char *path, int flags, int mode); }
54 ; XXX should be { int open(const char *path, int flags, ...); }
55 ; but we're not ready for `const' or varargs.
56 ; XXX man page says `mode_t mode'.
57 6 MPSAFE STD POSIX { int close(int fd); }
58 7 STD BSD { int wait4(int pid, int *status, int options, \
59 struct rusage *rusage); } wait4 wait_args int
60 8 COMPAT BSD { int creat(char *path, int mode); }
61 9 STD POSIX { int link(char *path, char *link); }
62 10 STD POSIX { int unlink(char *path); }
64 12 STD POSIX { int chdir(char *path); }
65 13 STD BSD { int fchdir(int fd); }
66 14 STD POSIX { int mknod(char *path, int mode, int dev); }
67 15 STD POSIX { int chmod(char *path, int mode); }
68 16 STD POSIX { int chown(char *path, int uid, int gid); }
69 17 STD BSD { int obreak(char *nsize); } break obreak_args int
70 18 STD BSD { int getfsstat(struct statfs *buf, long bufsize, \
72 19 COMPAT POSIX { long lseek(int fd, long offset, int whence); }
73 20 STD POSIX { pid_t getpid(void); }
74 21 STD BSD { int mount(char *type, char *path, int flags, \
76 ; XXX `path' should have type `const char *' but we're not ready for that.
77 22 STD BSD { int unmount(char *path, int flags); }
78 23 STD POSIX { int setuid(uid_t uid); }
79 24 MPSAFE STD POSIX { uid_t getuid(void); }
80 25 MPSAFE STD POSIX { uid_t geteuid(void); }
81 26 STD BSD { int ptrace(int req, pid_t pid, caddr_t addr, \
83 27 STD BSD { int recvmsg(int s, struct msghdr *msg, int flags); }
84 28 STD BSD { int sendmsg(int s, caddr_t msg, int flags); }
85 29 STD BSD { int recvfrom(int s, caddr_t buf, size_t len, \
86 int flags, caddr_t from, int *fromlenaddr); }
87 30 STD BSD { int accept(int s, caddr_t name, int *anamelen); }
88 31 STD BSD { int getpeername(int fdes, caddr_t asa, int *alen); }
89 32 STD BSD { int getsockname(int fdes, caddr_t asa, int *alen); }
90 33 STD POSIX { int access(char *path, int flags); }
91 34 STD BSD { int chflags(char *path, int flags); }
92 35 STD BSD { int fchflags(int fd, int flags); }
93 36 STD BSD { int sync(void); }
94 37 STD POSIX { int kill(int pid, int signum); }
95 38 COMPAT POSIX { int stat(char *path, struct ostat *ub); }
96 39 STD POSIX { pid_t getppid(void); }
97 40 COMPAT POSIX { int lstat(char *path, struct ostat *ub); }
98 41 MPSAFE STD POSIX { int dup(u_int fd); }
99 42 STD POSIX { int pipe(void); }
100 43 STD POSIX { gid_t getegid(void); }
101 44 STD BSD { int profil(caddr_t samples, size_t size, \
102 size_t offset, u_int scale); }
103 45 STD BSD { int ktrace(const char *fname, int ops, int facs, \
105 46 OBSOL NOHIDE freebsd3_sigaction
106 47 MPSAFE STD POSIX { gid_t getgid(void); }
107 48 OBSOL NOHIDE freebsd3_sigprocmask
108 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
109 ; us the mask, not a pointer to it, and we return the old mask as the
110 ; (int) return value.
111 49 STD BSD { int getlogin(char *namebuf, u_int namelen); }
112 50 STD BSD { int setlogin(char *namebuf); }
113 51 STD BSD { int acct(char *path); }
114 52 OBSOL NOHIDE freebsd3_sigpending
115 53 STD BSD { int sigaltstack(stack_t *ss, stack_t *oss); }
116 54 STD POSIX { int ioctl(int fd, u_long com, caddr_t data); }
117 55 STD BSD { int reboot(int opt); }
118 56 STD POSIX { int revoke(char *path); }
119 57 STD POSIX { int symlink(char *path, char *link); }
120 58 STD POSIX { int readlink(char *path, char *buf, int count); }
121 59 STD POSIX { int execve(char *fname, char **argv, char **envv); }
122 60 MPSAFE STD POSIX { int umask(int newmask); } umask umask_args int
123 61 STD BSD { int chroot(char *path); }
124 62 COMPAT POSIX { int fstat(int fd, struct ostat *sb); }
125 63 COMPAT BSD { int getkerninfo(int op, char *where, size_t *size, \
126 int arg); } getkerninfo getkerninfo_args int
127 64 COMPAT BSD { int getpagesize(void); } \
128 getpagesize getpagesize_args int
129 65 STD BSD { int msync(void *addr, size_t len, int flags); }
130 66 STD BSD { int vfork(void); }
131 67 OBSOL NOHIDE vread
132 68 OBSOL NOHIDE vwrite
133 69 STD BSD { int sbrk(int incr); }
134 70 STD BSD { int sstk(int incr); }
135 71 COMPAT BSD { int mmap(void *addr, int len, int prot, \
136 int flags, int fd, long pos); }
137 72 STD BSD { int ovadvise(int anom); } vadvise ovadvise_args int
138 73 STD BSD { int munmap(void *addr, size_t len); }
139 74 STD BSD { int mprotect(const void *addr, size_t len, int prot); }
140 75 STD BSD { int madvise(void *addr, size_t len, int behav); }
141 76 OBSOL NOHIDE vhangup
142 77 OBSOL NOHIDE vlimit
143 78 STD BSD { int mincore(const void *addr, size_t len, \
145 79 STD POSIX { int getgroups(u_int gidsetsize, gid_t *gidset); }
146 80 STD POSIX { int setgroups(u_int gidsetsize, gid_t *gidset); }
147 81 MPSAFE STD POSIX { int getpgrp(void); }
148 82 STD POSIX { int setpgid(int pid, int pgid); }
149 83 STD BSD { int setitimer(u_int which, struct itimerval *itv, \
150 struct itimerval *oitv); }
151 84 COMPAT BSD { int wait(void); }
152 85 STD BSD { int swapon(char *name); }
153 86 STD BSD { int getitimer(u_int which, struct itimerval *itv); }
154 87 COMPAT BSD { int gethostname(char *hostname, u_int len); } \
155 gethostname gethostname_args int
156 88 COMPAT BSD { int sethostname(char *hostname, u_int len); } \
157 sethostname sethostname_args int
158 89 MPSAFE STD BSD { int getdtablesize(void); }
159 90 MPSAFE STD POSIX { int dup2(u_int from, u_int to); }
160 91 UNIMPL BSD getdopt
161 92 MPSAFE STD POSIX { int fcntl(int fd, int cmd, long arg); }
162 ; XXX should be { int fcntl(int fd, int cmd, ...); }
163 ; but we're not ready for varargs.
164 ; XXX man page says `int arg' too.
165 93 STD BSD { int select(int nd, fd_set *in, fd_set *ou, \
166 fd_set *ex, struct timeval *tv); }
167 94 UNIMPL BSD setdopt
168 95 STD POSIX { int fsync(int fd); }
169 96 STD BSD { int setpriority(int which, int who, int prio); }
170 97 STD BSD { int socket(int domain, int type, int protocol); }
171 98 STD BSD { int connect(int s, caddr_t name, int namelen); }
172 99 CPT_NOA BSD { int accept(int s, caddr_t name, int *anamelen); } \
173 accept accept_args int
174 100 STD BSD { int getpriority(int which, int who); }
175 101 COMPAT BSD { int send(int s, caddr_t buf, int len, int flags); }
176 102 COMPAT BSD { int recv(int s, caddr_t buf, int len, int flags); }
177 103 OBSOL NOHIDE freebsd3_sigreturn
178 104 STD BSD { int bind(int s, caddr_t name, int namelen); }
179 105 STD BSD { int setsockopt(int s, int level, int name, \
180 caddr_t val, int valsize); }
181 106 STD BSD { int listen(int s, int backlog); }
182 107 OBSOL NOHIDE vtimes
183 108 COMPAT BSD { int sigvec(int signum, struct sigvec *nsv, \
184 struct sigvec *osv); }
185 109 COMPAT BSD { int sigblock(int mask); }
186 110 COMPAT BSD { int sigsetmask(int mask); }
187 111 OBSOL NOHIDE freebsd3_sigsuspend
188 ; XXX note nonstandard (bogus) calling convention - the libc stub passes
189 ; us the mask, not a pointer to it.
190 112 COMPAT BSD { int sigstack(struct sigstack *nss, \
191 struct sigstack *oss); }
192 113 COMPAT BSD { int recvmsg(int s, struct omsghdr *msg, int flags); }
193 114 COMPAT BSD { int sendmsg(int s, caddr_t msg, int flags); }
194 115 OBSOL NOHIDE vtrace
195 116 MPSAFE STD BSD { int gettimeofday(struct timeval *tp, \
196 struct timezone *tzp); }
197 117 STD BSD { int getrusage(int who, struct rusage *rusage); }
198 118 STD BSD { int getsockopt(int s, int level, int name, \
199 caddr_t val, int *avalsize); }
200 119 UNIMPL NOHIDE resuba (BSD/OS 2.x)
201 120 MPSAFE STD BSD { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
202 121 MPSAFE STD BSD { int writev(int fd, struct iovec *iovp, \
204 122 STD BSD { int settimeofday(struct timeval *tv, \
205 struct timezone *tzp); }
206 123 STD BSD { int fchown(int fd, int uid, int gid); }
207 124 STD BSD { int fchmod(int fd, int mode); }
208 125 CPT_NOA BSD { int recvfrom(int s, caddr_t buf, size_t len, \
209 int flags, caddr_t from, int *fromlenaddr); } \
210 recvfrom recvfrom_args int
211 126 STD BSD { int setreuid(int ruid, int euid); }
212 127 STD BSD { int setregid(int rgid, int egid); }
213 128 STD POSIX { int rename(char *from, char *to); }
214 129 COMPAT BSD { int truncate(char *path, long length); }
215 130 COMPAT BSD { int ftruncate(int fd, long length); }
216 131 STD BSD { int flock(int fd, int how); }
217 132 STD POSIX { int mkfifo(char *path, int mode); }
218 133 STD BSD { int sendto(int s, caddr_t buf, size_t len, \
219 int flags, caddr_t to, int tolen); }
220 134 STD BSD { int shutdown(int s, int how); }
221 135 STD BSD { int socketpair(int domain, int type, int protocol, \
223 136 STD POSIX { int mkdir(char *path, int mode); }
224 137 STD POSIX { int rmdir(char *path); }
225 138 STD BSD { int utimes(char *path, struct timeval *tptr); }
226 139 OBSOL NOHIDE 4.2 sigreturn
227 140 STD BSD { int adjtime(struct timeval *delta, \
228 struct timeval *olddelta); }
229 141 COMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); }
230 142 COMPAT BSD { long gethostid(void); }
231 143 COMPAT BSD { int sethostid(long hostid); }
232 144 MPSAFE COMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); }
233 145 MPSAFE COMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); }
234 146 COMPAT BSD { int killpg(int pgid, int signum); }
235 147 STD POSIX { int setsid(void); }
236 148 STD BSD { int quotactl(char *path, int cmd, int uid, \
238 149 COMPAT BSD { int quota(void); }
239 150 CPT_NOA BSD { int getsockname(int fdec, caddr_t asa, int *alen); }\
240 getsockname getsockname_args int
242 ; Syscalls 151-180 inclusive are reserved for vendor-specific
243 ; system calls. (This includes various calls added for compatibity
244 ; with other Unix variants.)
245 ; Some of these calls are now supported by BSD...
246 151 UNIMPL NOHIDE sem_lock (BSD/OS 2.x)
247 152 UNIMPL NOHIDE sem_wakeup (BSD/OS 2.x)
248 153 UNIMPL NOHIDE asyncdaemon (BSD/OS 2.x)
249 154 UNIMPL NOHIDE nosys
250 ; 155 is initialized by the NFS code, if present.
251 155 NOIMPL BSD { int nfssvc(int flag, caddr_t argp); }
252 156 COMPAT BSD { int getdirentries(int fd, char *buf, u_int count, \
254 157 STD BSD { int statfs(char *path, struct statfs *buf); }
255 158 STD BSD { int fstatfs(int fd, struct statfs *buf); }
256 159 UNIMPL NOHIDE nosys
257 160 UNIMPL NOHIDE nosys
258 ; 161 is initialized by the NFS code, if present.
259 161 STD BSD { int getfh(char *fname, struct fhandle *fhp); }
260 162 STD BSD { int getdomainname(char *domainname, int len); }
261 163 STD BSD { int setdomainname(char *domainname, int len); }
262 164 STD BSD { int uname(struct utsname *name); }
263 165 STD BSD { int sysarch(int op, char *parms); }
264 166 STD BSD { int rtprio(int function, pid_t pid, \
265 struct rtprio *rtp); }
266 167 UNIMPL NOHIDE nosys
267 168 UNIMPL NOHIDE nosys
268 169 STD BSD { int semsys(int which, int a2, int a3, int a4, \
270 ; XXX should be { int semsys(int which, ...); }
271 170 STD BSD { int msgsys(int which, int a2, int a3, int a4, \
273 ; XXX should be { int msgsys(int which, ...); }
274 171 STD BSD { int shmsys(int which, int a2, int a3, int a4); }
275 ; XXX should be { int shmsys(int which, ...); }
276 172 UNIMPL NOHIDE nosys
277 173 MPSAFE STD POSIX { ssize_t extpread(int fd, void *buf, \
278 size_t nbyte, int flags, off_t offset); }
279 174 MPSAFE STD POSIX { ssize_t extpwrite(int fd, const void *buf, \
280 size_t nbyte, int flags, off_t offset); }
281 175 UNIMPL NOHIDE nosys
282 176 STD BSD { int ntp_adjtime(struct timex *tp); }
283 177 UNIMPL NOHIDE sfork (BSD/OS 2.x)
284 178 UNIMPL NOHIDE getdescriptor (BSD/OS 2.x)
285 179 UNIMPL NOHIDE setdescriptor (BSD/OS 2.x)
286 180 UNIMPL NOHIDE nosys
288 ; Syscalls 181-199 are used by/reserved for BSD
289 181 STD POSIX { int setgid(gid_t gid); }
290 182 STD BSD { int setegid(gid_t egid); }
291 183 STD BSD { int seteuid(uid_t euid); }
292 184 UNIMPL BSD lfs_bmapv
293 185 UNIMPL BSD lfs_markv
294 186 UNIMPL BSD lfs_segclean
295 187 UNIMPL BSD lfs_segwait
296 188 COMPAT_DF12 POSIX { int stat(const char *path, struct dfbsd12_stat *ub); }
297 189 COMPAT_DF12 POSIX { int fstat(int fd, struct dfbsd12_stat *sb); }
298 190 COMPAT_DF12 POSIX { int lstat(const char *path, struct dfbsd12_stat *ub); }
299 191 STD POSIX { int pathconf(char *path, int name); }
300 192 STD POSIX { int fpathconf(int fd, int name); }
301 193 UNIMPL NOHIDE nosys
302 194 STD BSD { int getrlimit(u_int which, \
303 struct rlimit *rlp); } \
304 getrlimit __getrlimit_args int
305 195 STD BSD { int setrlimit(u_int which, \
306 struct rlimit *rlp); } \
307 setrlimit __setrlimit_args int
308 196 COMPAT_DF12 BSD { int getdirentries(int fd, char *buf, \
309 u_int count, long *basep); }
310 197 STD BSD { caddr_t mmap(caddr_t addr, size_t len, int prot, \
311 int flags, int fd, int pad, off_t pos); }
312 198 STD NOHIDE { int nosys(void); } __syscall __syscall_args int
313 199 STD POSIX { off_t lseek(int fd, int pad, off_t offset, \
315 200 STD BSD { int truncate(char *path, int pad, off_t length); }
316 201 STD BSD { int ftruncate(int fd, int pad, off_t length); }
317 202 STD BSD { int __sysctl(int *name, u_int namelen, void *old, \
318 size_t *oldlenp, void *new, size_t newlen); } \
319 __sysctl sysctl_args int
320 ; properly, __sysctl should be a NOHIDE, but making an exception
321 ; here allows to avoid one in libc/sys/Makefile.inc.
322 203 STD BSD { int mlock(const void *addr, size_t len); }
323 204 STD BSD { int munlock(const void *addr, size_t len); }
324 205 STD BSD { int undelete(char *path); }
325 206 STD BSD { int futimes(int fd, struct timeval *tptr); }
326 207 STD BSD { int getpgid(pid_t pid); }
327 208 UNIMPL NOHIDE newreboot (NetBSD)
328 209 STD BSD { int poll(struct pollfd *fds, u_int nfds, \
332 ; The following are reserved for loadable syscalls
334 ; 210 is used by the Checkpoint Module
335 210 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
336 211 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
337 212 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
338 213 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
339 214 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
340 215 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
341 216 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
342 217 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
343 218 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
344 219 NODEF NOHIDE lkmnosys lkmnosys nosys_args int
347 ; The following were introduced with NetBSD/4.4Lite-2
349 220 STD BSD { int __semctl(int semid, int semnum, int cmd, \
351 221 STD BSD { int semget(key_t key, int nsems, int semflg); }
352 222 STD BSD { int semop(int semid, struct sembuf *sops, \
354 223 UNIMPL NOHIDE semconfig
355 224 STD BSD { int msgctl(int msqid, int cmd, \
356 struct msqid_ds *buf); }
357 225 STD BSD { int msgget(key_t key, int msgflg); }
358 226 STD BSD { int msgsnd(int msqid, void *msgp, size_t msgsz, \
360 227 STD BSD { int msgrcv(int msqid, void *msgp, size_t msgsz, \
361 long msgtyp, int msgflg); }
362 228 STD BSD { int shmat(int shmid, void *shmaddr, int shmflg); }
363 229 STD BSD { int shmctl(int shmid, int cmd, \
364 struct shmid_ds *buf); }
365 230 STD BSD { int shmdt(void *shmaddr); }
366 231 STD BSD { int shmget(key_t key, int size, int shmflg); }
368 232 STD POSIX { int clock_gettime(clockid_t clock_id, \
369 struct timespec *tp); }
370 233 STD POSIX { int clock_settime(clockid_t clock_id, \
371 const struct timespec *tp); }
372 234 STD POSIX { int clock_getres(clockid_t clock_id, \
373 struct timespec *tp); }
374 235 UNIMPL NOHIDE timer_create
375 236 UNIMPL NOHIDE timer_delete
376 237 UNIMPL NOHIDE timer_settime
377 238 UNIMPL NOHIDE timer_gettime
378 239 UNIMPL NOHIDE timer_getoverrun
379 240 STD POSIX { int nanosleep(const struct timespec *rqtp, \
380 struct timespec *rmtp); }
381 241 UNIMPL NOHIDE nosys
382 242 UNIMPL NOHIDE nosys
383 243 UNIMPL NOHIDE nosys
384 244 UNIMPL NOHIDE nosys
385 245 UNIMPL NOHIDE nosys
386 246 UNIMPL NOHIDE nosys
387 247 UNIMPL NOHIDE nosys
388 248 UNIMPL NOHIDE nosys
389 249 UNIMPL NOHIDE nosys
390 ; syscall numbers initially used in OpenBSD
391 250 STD BSD { int minherit(void *addr, size_t len, int inherit); }
392 251 STD BSD { int rfork(int flags); }
393 252 STD BSD { int openbsd_poll(struct pollfd *fds, u_int nfds, \
395 253 STD BSD { int issetugid(void); }
396 254 STD BSD { int lchown(char *path, int uid, int gid); }
397 255 UNIMPL NOHIDE nosys
398 256 UNIMPL NOHIDE nosys
399 257 UNIMPL NOHIDE nosys
400 258 UNIMPL NOHIDE nosys
401 259 UNIMPL NOHIDE nosys
402 260 UNIMPL NOHIDE nosys
403 261 UNIMPL NOHIDE nosys
404 262 UNIMPL NOHIDE nosys
405 263 UNIMPL NOHIDE nosys
406 264 UNIMPL NOHIDE nosys
407 265 UNIMPL NOHIDE nosys
408 266 UNIMPL NOHIDE nosys
409 267 UNIMPL NOHIDE nosys
410 268 UNIMPL NOHIDE nosys
411 269 UNIMPL NOHIDE nosys
412 270 UNIMPL NOHIDE nosys
413 271 UNIMPL NOHIDE nosys
414 272 COMPAT_DF12 BSD { int getdents(int fd, char *buf, size_t count); }
415 273 UNIMPL NOHIDE nosys
416 274 STD BSD { int lchmod(char *path, mode_t mode); }
417 275 NOPROTO BSD { int lchown(char *path, uid_t uid, gid_t gid); } netbsd_lchown lchown_args int
418 276 STD BSD { int lutimes(char *path, struct timeval *tptr); }
419 277 NOPROTO BSD { int msync(void *addr, size_t len, int flags); } netbsd_msync msync_args int
420 278 OBSOL BSD { int nstat(char *path, struct nstat *ub); }
421 279 OBSOL NOHIDE { int nfstat(int fd, struct nstat *sb); }
422 280 OBSOL NOHIDE { int nlstat(char *path, struct nstat *ub); }
423 281 UNIMPL NOHIDE nosys
424 282 UNIMPL NOHIDE nosys
425 283 UNIMPL NOHIDE nosys
426 284 UNIMPL NOHIDE nosys
427 285 UNIMPL NOHIDE nosys
428 286 UNIMPL NOHIDE nosys
429 287 UNIMPL NOHIDE nosys
430 288 UNIMPL NOHIDE nosys
431 ; 289 and 290 from NetBSD (OpenBSD: 267 and 268)
432 289 MPSAFE STD BSD { ssize_t extpreadv(int fd, struct iovec *iovp, \
433 u_int iovcnt, int flags, off_t offset); }
434 290 MPSAFE STD BSD { ssize_t extpwritev(int fd, struct iovec *iovp,\
435 u_int iovcnt, int flags, off_t offset); }
436 291 UNIMPL NOHIDE nosys
437 292 UNIMPL NOHIDE nosys
438 293 UNIMPL NOHIDE nosys
439 294 UNIMPL NOHIDE nosys
440 295 UNIMPL NOHIDE nosys
441 296 UNIMPL NOHIDE nosys
442 ; XXX 297 is 300 in NetBSD
443 297 STD BSD { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
444 298 STD BSD { int fhopen(const struct fhandle *u_fhp, int flags); }
445 299 COMPAT_DF12 POSIX { int fhstat(const struct fhandle *u_fhp, struct dfbsd12_stat *sb); }
446 ; syscall numbers for FreeBSD
447 300 STD BSD { int modnext(int modid); }
448 301 STD BSD { int modstat(int modid, struct module_stat* stat); }
449 302 STD BSD { int modfnext(int modid); }
450 303 STD BSD { int modfind(const char *name); }
451 304 STD BSD { int kldload(const char *file); }
452 305 STD BSD { int kldunload(int fileid); }
453 306 STD BSD { int kldfind(const char *file); }
454 307 STD BSD { int kldnext(int fileid); }
455 308 STD BSD { int kldstat(int fileid, struct kld_file_stat* stat); }
456 309 STD BSD { int kldfirstmod(int fileid); }
457 310 STD BSD { int getsid(pid_t pid); }
458 311 STD BSD { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
459 312 STD BSD { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
460 313 OBSOL NOHIDE signanosleep
461 314 STD BSD { int aio_return(struct aiocb *aiocbp); }
462 315 STD BSD { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
463 316 STD BSD { int aio_cancel(int fd, struct aiocb *aiocbp); }
464 317 STD BSD { int aio_error(struct aiocb *aiocbp); }
465 318 STD BSD { int aio_read(struct aiocb *aiocbp); }
466 319 STD BSD { int aio_write(struct aiocb *aiocbp); }
467 320 STD BSD { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
468 321 STD BSD { int yield(void); }
469 322 STD BSD { int thr_sleep(const struct timespec *timeout); }
470 323 STD BSD { int thr_wakeup(pid_t pid); }
471 324 STD BSD { int mlockall(int how); }
472 325 STD BSD { int munlockall(void); }
473 326 STD BSD { int __getcwd(u_char *buf, u_int buflen); }
475 327 STD POSIX { int sched_setparam (pid_t pid, const struct sched_param *param); }
476 328 STD POSIX { int sched_getparam (pid_t pid, struct sched_param *param); }
478 329 STD POSIX { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
479 330 STD POSIX { int sched_getscheduler (pid_t pid); }
481 331 STD POSIX { int sched_yield (void); }
482 332 STD POSIX { int sched_get_priority_max (int policy); }
483 333 STD POSIX { int sched_get_priority_min (int policy); }
484 334 STD POSIX { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
485 335 STD BSD { int utrace(const void *addr, size_t len); }
486 336 OBSOL NOHIDE freebsd4_sendfile
487 337 STD BSD { int kldsym(int fileid, int cmd, void *data); }
488 338 STD BSD { int jail(struct jail *jail); }
489 339 UNIMPL BSD pioctl
490 340 MPSAFE STD POSIX { int sigprocmask(int how, const sigset_t *set, \
492 341 STD POSIX { int sigsuspend(const sigset_t *sigmask); }
493 342 STD POSIX { int sigaction(int sig, const struct sigaction *act, \
494 struct sigaction *oact); }
495 343 STD POSIX { int sigpending(sigset_t *set); }
496 344 STD BSD { int sigreturn(ucontext_t *sigcntxp); }
497 345 STD POSIX { int sigtimedwait(const sigset_t *set,\
498 siginfo_t *info, const struct timespec *timeout); }
499 346 STD POSIX { int sigwaitinfo(const sigset_t *set,\
501 347 STD BSD { int __acl_get_file(const char *path, \
502 acl_type_t type, struct acl *aclp); }
503 348 STD BSD { int __acl_set_file(const char *path, \
504 acl_type_t type, struct acl *aclp); }
505 349 STD BSD { int __acl_get_fd(int filedes, acl_type_t type, \
507 350 STD BSD { int __acl_set_fd(int filedes, acl_type_t type, \
509 351 STD BSD { int __acl_delete_file(const char *path, \
511 352 STD BSD { int __acl_delete_fd(int filedes, acl_type_t type); }
512 353 STD BSD { int __acl_aclcheck_file(const char *path, \
513 acl_type_t type, struct acl *aclp); }
514 354 STD BSD { int __acl_aclcheck_fd(int filedes, acl_type_t type, \
516 355 STD BSD { int extattrctl(const char *path, int cmd, \
517 const char *attrname, char *arg); }
518 356 STD BSD { int extattr_set_file(const char *path, \
519 const char *attrname, struct iovec *iovp, \
521 357 STD BSD { int extattr_get_file(const char *path, \
522 const char *attrname, struct iovec *iovp, \
524 358 STD BSD { int extattr_delete_file(const char *path, \
525 const char *attrname); }
526 359 STD BSD { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); }
527 360 STD BSD { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
528 361 STD BSD { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
529 362 STD BSD { int kqueue(void); }
530 363 STD BSD { int kevent(int fd, \
531 const struct kevent *changelist, int nchanges, \
532 struct kevent *eventlist, int nevents, \
533 const struct timespec *timeout); }
534 364 STD BSD { int sctp_peeloff(int sd, caddr_t name ); }
535 ; 365-392 used by FreeBSD-current
536 365 UNIMPL NOHIDE nosys
537 366 UNIMPL NOHIDE nosys
538 367 UNIMPL NOHIDE nosys
539 368 UNIMPL NOHIDE nosys
540 369 UNIMPL NOHIDE nosys
541 370 UNIMPL NOHIDE nosys
542 371 UNIMPL NOHIDE nosys
543 372 UNIMPL NOHIDE nosys
544 373 UNIMPL NOHIDE nosys
545 374 UNIMPL NOHIDE nosys
546 375 UNIMPL NOHIDE nosys
547 376 UNIMPL NOHIDE nosys
548 377 UNIMPL NOHIDE nosys
549 378 UNIMPL NOHIDE nosys
550 379 UNIMPL NOHIDE nosys
551 380 UNIMPL NOHIDE nosys
552 381 UNIMPL NOHIDE nosys
553 382 UNIMPL NOHIDE nosys
554 383 UNIMPL NOHIDE nosys
555 384 UNIMPL NOHIDE nosys
556 385 UNIMPL NOHIDE nosys
557 386 UNIMPL NOHIDE nosys
558 387 UNIMPL NOHIDE nosys
559 388 UNIMPL NOHIDE nosys
560 389 UNIMPL NOHIDE nosys
561 390 UNIMPL NOHIDE nosys
562 391 UNIMPL NOHIDE nosys
563 392 UNIMPL NOHIDE nosys
564 393 STD BSD { int sendfile(int fd, int s, off_t offset, size_t nbytes, \
565 struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
566 ; 394-439 used by FreeBSD-current
567 394 UNIMPL NOHIDE nosys
568 395 UNIMPL NOHIDE nosys
569 396 UNIMPL NOHIDE nosys
570 397 UNIMPL NOHIDE nosys
571 398 UNIMPL NOHIDE nosys
572 399 UNIMPL NOHIDE nosys
573 400 UNIMPL NOHIDE nosys
574 401 UNIMPL NOHIDE nosys
575 402 UNIMPL NOHIDE nosys
576 403 UNIMPL NOHIDE nosys
577 404 UNIMPL NOHIDE nosys
578 405 UNIMPL NOHIDE nosys
579 406 UNIMPL NOHIDE nosys
580 407 UNIMPL NOHIDE nosys
581 408 UNIMPL NOHIDE nosys
582 409 UNIMPL NOHIDE nosys
583 410 UNIMPL NOHIDE nosys
584 411 UNIMPL NOHIDE nosys
585 412 UNIMPL NOHIDE nosys
586 413 UNIMPL NOHIDE nosys
587 414 UNIMPL NOHIDE nosys
588 415 UNIMPL NOHIDE nosys
589 416 UNIMPL NOHIDE nosys
590 417 UNIMPL NOHIDE nosys
591 418 UNIMPL NOHIDE nosys
592 419 UNIMPL NOHIDE nosys
593 420 UNIMPL NOHIDE nosys
594 421 UNIMPL NOHIDE nosys
595 422 UNIMPL NOHIDE nosys
596 423 UNIMPL NOHIDE nosys
597 424 UNIMPL NOHIDE nosys
598 425 UNIMPL NOHIDE nosys
599 426 UNIMPL NOHIDE nosys
600 427 UNIMPL NOHIDE nosys
601 428 UNIMPL NOHIDE nosys
602 429 UNIMPL NOHIDE nosys
603 430 UNIMPL NOHIDE nosys
604 431 UNIMPL NOHIDE nosys
605 432 UNIMPL NOHIDE nosys
606 433 UNIMPL NOHIDE nosys
607 434 UNIMPL NOHIDE nosys
608 435 UNIMPL NOHIDE nosys
609 436 UNIMPL NOHIDE nosys
610 437 UNIMPL NOHIDE nosys
611 438 UNIMPL NOHIDE nosys
612 439 UNIMPL NOHIDE nosys
613 ; 440-449 reserved for FreeBSD-5.x growth
614 440 UNIMPL NOHIDE nosys
615 441 UNIMPL NOHIDE nosys
616 442 UNIMPL NOHIDE nosys
617 443 UNIMPL NOHIDE nosys
618 444 UNIMPL NOHIDE nosys
619 445 UNIMPL NOHIDE nosys
620 446 UNIMPL NOHIDE nosys
621 447 UNIMPL NOHIDE nosys
622 448 UNIMPL NOHIDE nosys
623 449 UNIMPL NOHIDE nosys
624 ; 450 DragonFly system calls
625 450 STD BSD { int varsym_set(int level, const char *name, const char *data); }
626 451 STD BSD { int varsym_get(int mask, const char *wild, char *buf, int bufsize); }
627 452 STD BSD { int varsym_list(int level, char *buf, int maxsize, int *marker); }
628 453 STD BSD { int upc_register(struct upcall *upc, void *ctxfunc, void *func, void *data); }
629 454 STD BSD { int upc_control(int cmd, int upcid, void *data); }
630 455 STD BSD { int caps_sys_service(const char *name, uid_t uid, gid_t gid, int upcid, int flags); }
631 456 STD BSD { int caps_sys_client(const char *name, uid_t uid, gid_t gid, int upcid, int flags); }
632 457 STD BSD { int caps_sys_close(int portid); }
633 458 STD BSD { off_t caps_sys_put(int portid, void *msg, int msgsize); }
634 459 STD BSD { int caps_sys_reply(int portid, void *msg, int msgsize, off_t msgcid); }
635 460 STD BSD { int caps_sys_get(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); }
636 461 STD BSD { int caps_sys_wait(int portid, void *msg, int maxsize, struct caps_msgid *msgid, struct caps_cred *ccr); }
637 462 STD BSD { int caps_sys_abort(int portid, off_t msgcid, int flags); }
638 463 STD BSD { off_t caps_sys_getgen(int portid); }
639 464 STD BSD { int caps_sys_setgen(int portid, off_t gen); }
640 465 STD BSD { int exec_sys_register(void *entry); }
641 466 STD BSD { int exec_sys_unregister(int id); }
642 467 STD BSD { int sys_checkpoint(int type, int fd, pid_t pid, int retval); }
643 468 STD BSD { int mountctl(const char *path, int op, int fd, const void *ctl, int ctllen, void *buf, int buflen); }
644 469 STD BSD { int umtx_sleep(volatile const int *ptr, int value, int timeout); }
645 470 STD BSD { int umtx_wakeup(volatile const int *ptr, int count); }
646 471 STD BSD { int jail_attach(int jid); }
647 472 STD BSD { int set_tls_area(int which, struct tls_info *info, size_t infosize); }
648 473 STD BSD { int get_tls_area(int which, struct tls_info *info, size_t infosize); }
649 474 MPSAFE STD BSD { int closefrom(int fd); }
650 475 STD POSIX { int stat(const char *path, struct stat *ub); }
651 476 STD POSIX { int fstat(int fd, struct stat *sb); }
652 477 STD POSIX { int lstat(const char *path, struct stat *ub); }
653 478 STD BSD { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
654 479 STD BSD { int getdirentries(int fd, char *buf, u_int count, \
656 480 STD BSD { int getdents(int fd, char *buf, size_t count); }
657 481 STD BSD { int usched_set(pid_t pid, int cmd, void *data, \
659 482 STD BSD { int extaccept(int s, int flags, caddr_t name, int *anamelen); }
660 483 STD BSD { int extconnect(int s, int flags, caddr_t name, int namelen); }
661 484 STD BSD { int syslink(int cmd, struct syslink_info *info, size_t bytes); }
662 485 STD BSD { int mcontrol(void *addr, size_t len, int behav, off_t value); }
663 486 STD BSD { int vmspace_create(void *id, int type, void *data); }
664 487 STD BSD { int vmspace_destroy(void *id); }
665 488 STD BSD { int vmspace_ctl(void *id, int cmd, \
666 struct trapframe *tframe, \
667 struct vextframe *vframe); }
668 489 STD BSD { int vmspace_mmap(void *id, void *addr, size_t len, \
669 int prot, int flags, int fd, \
671 490 STD BSD { int vmspace_munmap(void *id, void *addr, \
673 491 STD BSD { int vmspace_mcontrol(void *id, void *addr, \
674 size_t len, int behav, off_t value); }
675 492 STD BSD { ssize_t vmspace_pread(void *id, void *buf, \
676 size_t nbyte, int flags, off_t offset); }
677 493 STD BSD { ssize_t vmspace_pwrite(void *id, const void *buf, \
678 size_t nbyte, int flags, off_t offset); }
679 494 STD BSD { void extexit(int how, int status, void *addr); }
680 495 STD BSD { int lwp_create(struct lwp_params *params); }
681 496 STD BSD { lwpid_t lwp_gettid(void); }
682 497 STD BSD { int lwp_kill(pid_t pid, lwpid_t tid, int signum); }