1 $FreeBSD: releng/6.3/sys/compat/freebsd32/syscalls.master 170945 2007-06-18 22:44:59Z jhb $
2 ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
3 ; from: src/sys/kern/syscalls.master 1.107
4 ;
5 ; System call name/number master file.
6 ; Processed to created init_sysent.c, syscalls.c and syscall.h.
7
8 ; Columns: number [M]type nargs name alt{name,tag,rtyp}/comments
9 ; number system call number, must be in order
10 ; audit the audit event associated with the system call
11 ; A value of AUE_NULL means no auditing, but it also means that
12 ; there is no audit event for the call at this time. For the
13 ; case where the event exists, but we don't want auditing, the
14 ; event should be #defined to AUE_NULL in audit_kevents.h.
15 ; type one of [M]STD, [M]OBSOL, [M]UNIMPL, [M]COMPAT, [M]CPT_NOA,
16 ; [M]LIBCOMPAT, [M]NODEF, [M]NOARGS, [M]NOPROTO, [M]NOIMPL,
17 ; [M]NOSTD
18 ; name psuedo-prototype of syscall routine
19 ; If one of the following alts is different, then all appear:
20 ; altname name of system call if different
21 ; alttag name of args struct tag if different from [o]`name'"_args"
22 ; altrtyp return type if not int (bogus - syscalls always return int)
23 ; for UNIMPL/OBSOL, name continues with comments
24
25 ; types:
26 ; [M] e.g. like MSTD -- means the system call is MP-safe. If no
27 ; M prefix is used, the syscall wrapper will obtain the Giant
28 ; lock for the syscall.
29 ; STD always included
30 ; COMPAT included on COMPAT #ifdef
31 ; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
32 ; OBSOL obsolete, not included in system, only specifies name
33 ; UNIMPL not implemented, placeholder only
34 ; NOSTD implemented but as a lkm that can be statically
35 ; compiled in sysent entry will be filled with lkmsys
36 ; so the SYSCALL_MODULE macro works
37
38 ; #ifdef's, etc. may be included, and are copied to the output files.
39
40 #include <sys/param.h>
41 #include <sys/sysent.h>
42 #include <sys/sysproto.h>
43 #include <sys/mount.h>
44 #include <compat/freebsd32/freebsd32.h>
45 #include <compat/freebsd32/freebsd32_proto.h>
46
47 ; Reserved/unimplemented system calls in the range 0-150 inclusive
48 ; are reserved for use in future Berkeley releases.
49 ; Additional system calls implemented in vendor and other
50 ; redistributions should be placed in the reserved range at the end
51 ; of the current calls.
52
53 0 AUE_NULL MNOPROTO { int nosys(void); } syscall nosys_args int
54 1 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit \
55 sys_exit_args void
56 2 AUE_FORK MNOPROTO { int fork(void); }
57 3 AUE_READ MNOPROTO { ssize_t read(int fd, void *buf, \
58 size_t nbyte); }
59 4 AUE_WRITE MNOPROTO { ssize_t write(int fd, const void *buf, \
60 size_t nbyte); }
61 5 AUE_OPEN_RWTC MNOPROTO { int open(char *path, int flags, \
62 int mode); }
63 6 AUE_CLOSE MNOPROTO { int close(int fd); }
64 7 AUE_WAIT4 MSTD { int freebsd32_wait4(int pid, int *status, \
65 int options, struct rusage32 *rusage); }
66 8 AUE_CREAT OBSOL old creat
67 9 AUE_LINK MNOPROTO { int link(char *path, char *link); }
68 10 AUE_UNLINK MNOPROTO { int unlink(char *path); }
69 11 AUE_NULL OBSOL execv
70 12 AUE_CHDIR MNOPROTO { int chdir(char *path); }
71 13 AUE_FCHDIR MNOPROTO { int fchdir(int fd); }
72 14 AUE_MKNOD MNOPROTO { int mknod(char *path, int mode, int dev); }
73 15 AUE_CHMOD MNOPROTO { int chmod(char *path, int mode); }
74 16 AUE_CHOWN MNOPROTO { int chown(char *path, int uid, int gid); }
75 17 AUE_NULL MNOPROTO { int obreak(char *nsize); } break \
76 obreak_args int
77 18 AUE_GETFSSTAT MCOMPAT4 { int freebsd32_getfsstat( \
78 struct statfs32 *buf, long bufsize, \
79 int flags); }
80 19 AUE_LSEEK OBSOL olseek
81 20 AUE_GETPID MNOPROTO { pid_t getpid(void); }
82 21 AUE_MOUNT NOPROTO { int mount(char *type, char *path, \
83 int flags, caddr_t data); }
84 22 AUE_UMOUNT NOPROTO { int unmount(char *path, int flags); }
85 23 AUE_SETUID MNOPROTO { int setuid(uid_t uid); }
86 24 AUE_GETUID MNOPROTO { uid_t getuid(void); }
87 25 AUE_GETEUID MNOPROTO { uid_t geteuid(void); }
88 26 AUE_PTRACE MNOPROTO { int ptrace(int req, pid_t pid, \
89 caddr_t addr, int data); }
90 ; XXX implement
91 27 AUE_RECVMSG MSTD { int freebsd32_recvmsg(int s, struct msghdr32 *msg, \
92 int flags); }
93 28 AUE_SENDMSG MSTD { int freebsd32_sendmsg(int s, struct msghdr32 *msg, \
94 int flags); }
95 29 AUE_RECVFROM MSTD { int freebsd32_recvfrom(int s, u_int32_t buf, \
96 u_int32_t len, int flags, u_int32_t from, \
97 u_int32_t fromlenaddr); }
98 30 AUE_ACCEPT MNOPROTO { int accept(int s, caddr_t name, \
99 int *anamelen); }
100 31 AUE_GETPEERNAME MNOPROTO { int getpeername(int fdes, caddr_t asa, \
101 int *alen); }
102 32 AUE_GETSOCKNAME MNOPROTO { int getsockname(int fdes, caddr_t asa, \
103 int *alen); }
104 33 AUE_ACCESS MNOPROTO { int access(char *path, int flags); }
105 34 AUE_CHFLAGS MNOPROTO { int chflags(char *path, int flags); }
106 35 AUE_FCHFLAGS MNOPROTO { int fchflags(int fd, int flags); }
107 36 AUE_SYNC MNOPROTO { int sync(void); }
108 37 AUE_KILL MNOPROTO { int kill(int pid, int signum); }
109 38 AUE_STAT UNIMPL ostat
110 39 AUE_GETPPID MNOPROTO { pid_t getppid(void); }
111 40 AUE_LSTAT UNIMPL olstat
112 41 AUE_DUP MNOPROTO { int dup(u_int fd); }
113 42 AUE_PIPE MNOPROTO { int pipe(void); }
114 43 AUE_GETEGID MNOPROTO { gid_t getegid(void); }
115 44 AUE_PROFILE MNOPROTO { int profil(caddr_t samples, size_t size, \
116 size_t offset, u_int scale); }
117 45 AUE_KTRACE MNOPROTO { int ktrace(const char *fname, int ops, \
118 int facs, int pid); }
119 46 AUE_SIGACTION MCOMPAT { int freebsd32_sigaction( int signum, \
120 struct osigaction32 *nsa, \
121 struct osigaction32 *osa); }
122 47 AUE_GETGID MNOPROTO { gid_t getgid(void); }
123 48 AUE_SIGPROCMASK MCOMPAT { int freebsd32_sigprocmask(int how, \
124 osigset_t mask); }
125 49 AUE_GETLOGIN MNOPROTO { int getlogin(char *namebuf, \
126 u_int namelen); }
127 50 AUE_SETLOGIN MNOPROTO { int setlogin(char *namebuf); }
128 51 AUE_ACCT MNOPROTO { int acct(char *path); }
129 52 AUE_SIGPENDING MCOMPAT { int freebsd32_sigpending(void); }
130 53 AUE_SIGALTSTACK MSTD { int freebsd32_sigaltstack( \
131 struct sigaltstack32 *ss, \
132 struct sigaltstack32 *oss); }
133 54 AUE_IOCTL MNOPROTO { int ioctl(int fd, u_long com, \
134 caddr_t data); }
135 55 AUE_REBOOT MNOPROTO { int reboot(int opt); }
136 56 AUE_REVOKE MNOPROTO { int revoke(char *path); }
137 57 AUE_SYMLINK MNOPROTO { int symlink(char *path, char *link); }
138 58 AUE_READLINK MNOPROTO { int readlink(char *path, char *buf, \
139 int count); }
140 59 AUE_EXECVE MSTD { int freebsd32_execve(char *fname, \
141 u_int32_t *argv, u_int32_t *envv); }
142 60 AUE_UMASK MNOPROTO { int umask(int newmask); } umask \
143 umask_args int
144 61 AUE_CHROOT MNOPROTO { int chroot(char *path); }
145 62 AUE_FSTAT OBSOL ofstat
146 63 AUE_NULL OBSOL ogetkerninfo
147 64 AUE_NULL OBSOL ogetpagesize
148 ; XXX implement (not OBSOL at all)
149 65 AUE_MSYNC MNOPROTO { int msync(void *addr, size_t len, \
150 int flags); }
151 66 AUE_VFORK MNOPROTO { int vfork(void); }
152 67 AUE_NULL OBSOL vread
153 68 AUE_NULL OBSOL vwrite
154 69 AUE_SBRK MNOPROTO { int sbrk(int incr); }
155 70 AUE_SSTK MNOPROTO { int sstk(int incr); }
156 71 AUE_MMAP OBSOL ommap
157 72 AUE_O_VADVISE MNOPROTO { int ovadvise(int anom); } vadvise \
158 ovadvise_args int
159 73 AUE_MUNMAP MNOPROTO { int munmap(void *addr, size_t len); }
160 74 AUE_MPROTECT MNOPROTO { int mprotect(const void *addr, \
161 size_t len, int prot); }
162 75 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \
163 int behav); }
164 76 AUE_NULL OBSOL vhangup
165 77 AUE_NULL OBSOL vlimit
166 78 AUE_MINCORE MNOPROTO { int mincore(const void *addr, size_t len, \
167 char *vec); }
168 79 AUE_GETGROUPS MNOPROTO { int getgroups(u_int gidsetsize, \
169 gid_t *gidset); }
170 80 AUE_SETGROUPS MNOPROTO { int setgroups(u_int gidsetsize, \
171 gid_t *gidset); }
172 81 AUE_GETPGRP MNOPROTO { int getpgrp(void); }
173 82 AUE_SETPGRP MNOPROTO { int setpgid(int pid, int pgid); }
174 83 AUE_SETITIMER MSTD { int freebsd32_setitimer(u_int which, \
175 struct itimerval32 *itv, \
176 struct itimerval32 *oitv); }
177 84 AUE_NULL OBSOL owait
178 ; XXX implement
179 85 AUE_SWAPON OBSOL oswapon
180 86 AUE_GETITIMER MSTD { int freebsd32_getitimer(u_int which, \
181 struct itimerval32 *itv); }
182 87 AUE_O_GETHOSTNAME OBSOL ogethostname
183 88 AUE_O_SETHOSTNAME OBSOL osethostname
184 89 AUE_GETDTABLESIZE MNOPROTO { int getdtablesize(void); }
185 90 AUE_DUP2 MNOPROTO { int dup2(u_int from, u_int to); }
186 91 AUE_NULL UNIMPL getdopt
187 92 AUE_FCNTL MNOPROTO { int fcntl(int fd, int cmd, long arg); }
188 93 AUE_SELECT MSTD { int freebsd32_select(int nd, fd_set *in, \
189 fd_set *ou, fd_set *ex, \
190 struct timeval32 *tv); }
191 ; XXX need to override for big-endian - little-endian should work fine.
192 94 AUE_NULL UNIMPL setdopt
193 95 AUE_FSYNC MNOPROTO { int fsync(int fd); }
194 96 AUE_SETPRIORITY MNOPROTO { int setpriority(int which, int who, \
195 int prio); }
196 97 AUE_SOCKET MNOPROTO { int socket(int domain, int type, \
197 int protocol); }
198 98 AUE_CONNECT MNOPROTO { int connect(int s, caddr_t name, \
199 int namelen); }
200 99 AUE_NULL OBSOL oaccept
201 100 AUE_GETPRIORITY MNOPROTO { int getpriority(int which, int who); }
202 101 AUE_NULL OBSOL osend
203 102 AUE_NULL OBSOL orecv
204 103 AUE_NULL OBSOL osigreturn
205 104 AUE_BIND MNOPROTO { int bind(int s, caddr_t name, \
206 int namelen); }
207 105 AUE_SETSOCKOPT MNOPROTO { int setsockopt(int s, int level, \
208 int name, caddr_t val, int valsize); }
209 106 AUE_LISTEN MNOPROTO { int listen(int s, int backlog); }
210 107 AUE_NULL OBSOL vtimes
211 108 AUE_O_SIGVEC MCOMPAT { int freebsd32_sigvec(int signum, \
212 struct sigvec32 *nsv, \
213 struct sigvec32 *osv); }
214 109 AUE_O_SIGBLOCK MCOMPAT { int freebsd32_sigblock(int mask); }
215 110 AUE_O_SIGSETMASK MCOMPAT { int freebsd32_sigsetmask( int mask); }
216 111 AUE_SIGSUSPEND MCOMPAT { int freebsd32_sigsuspend( int mask); }
217 112 AUE_O_SIGSTACK MCOMPAT { int freebsd32_sigstack( \
218 struct sigstack32 *nss, \
219 struct sigstack32 *oss); }
220 113 AUE_NULL OBSOL orecvmsg
221 114 AUE_NULL OBSOL osendmsg
222 115 AUE_NULL OBSOL vtrace
223 116 AUE_GETTIMEOFDAY MSTD { int freebsd32_gettimeofday( \
224 struct timeval32 *tp, \
225 struct timezone *tzp); }
226 117 AUE_GETRUSAGE MSTD { int freebsd32_getrusage(int who, \
227 struct rusage32 *rusage); }
228 118 AUE_GETSOCKOPT MNOPROTO { int getsockopt(int s, int level, \
229 int name, caddr_t val, int *avalsize); }
230 119 AUE_NULL UNIMPL resuba (BSD/OS 2.x)
231 120 AUE_READV MSTD { int freebsd32_readv(int fd, \
232 struct iovec32 *iovp, u_int iovcnt); }
233 121 AUE_WRITEV MSTD { int freebsd32_writev(int fd, \
234 struct iovec32 *iovp, u_int iovcnt); }
235 122 AUE_SETTIMEOFDAY MSTD { int freebsd32_settimeofday( \
236 struct timeval32 *tv, \
237 struct timezone *tzp); }
238 123 AUE_FCHOWN MNOPROTO { int fchown(int fd, int uid, int gid); }
239 124 AUE_FCHMOD MNOPROTO { int fchmod(int fd, int mode); }
240 125 AUE_RECVFROM OBSOL orecvfrom
241 126 AUE_SETREUID MNOPROTO { int setreuid(int ruid, int euid); }
242 127 AUE_SETREGID MNOPROTO { int setregid(int rgid, int egid); }
243 128 AUE_RENAME MNOPROTO { int rename(char *from, char *to); }
244 129 AUE_TRUNCATE OBSOL otruncate
245 130 AUE_FTRUNCATE OBSOL ftruncate
246 131 AUE_FLOCK MNOPROTO { int flock(int fd, int how); }
247 132 AUE_MKFIFO MNOPROTO { int mkfifo(char *path, int mode); }
248 133 AUE_SENDTO MNOPROTO { int sendto(int s, caddr_t buf, \
249 size_t len, int flags, caddr_t to, \
250 int tolen); }
251 134 AUE_SHUTDOWN MNOPROTO { int shutdown(int s, int how); }
252 135 AUE_SOCKETPAIR MNOPROTO { int socketpair(int domain, int type, \
253 int protocol, int *rsv); }
254 136 AUE_MKDIR MNOPROTO { int mkdir(char *path, int mode); }
255 137 AUE_RMDIR MNOPROTO { int rmdir(char *path); }
256 138 AUE_UTIMES MSTD { int freebsd32_utimes(char *path, \
257 struct timeval32 *tptr); }
258 139 AUE_NULL OBSOL 4.2 sigreturn
259 140 AUE_ADJTIME MSTD { int freebsd32_adjtime( \
260 struct timeval32 *delta, \
261 struct timeval32 *olddelta); }
262 141 AUE_GETPEERNAME OBSOL ogetpeername
263 142 AUE_SYSCTL OBSOL ogethostid
264 143 AUE_SYSCTL OBSOL sethostid
265 144 AUE_GETRLIMIT OBSOL getrlimit
266 145 AUE_SETRLIMIT OBSOL setrlimit
267 146 AUE_KILLPG OBSOL killpg
268 147 AUE_SETSID MNOPROTO { int setsid(void); }
269 148 AUE_QUOTACTL MNOPROTO { int quotactl(char *path, int cmd, int uid, \
270 caddr_t arg); }
271 149 AUE_O_QUOTA OBSOL oquota
272 150 AUE_GETSOCKNAME OBSOL ogetsockname
273
274 ; Syscalls 151-180 inclusive are reserved for vendor-specific
275 ; system calls. (This includes various calls added for compatibity
276 ; with other Unix variants.)
277 ; Some of these calls are now supported by BSD...
278 151 AUE_NULL UNIMPL sem_lock (BSD/OS 2.x)
279 152 AUE_NULL UNIMPL sem_wakeup (BSD/OS 2.x)
280 153 AUE_NULL UNIMPL asyncdaemon (BSD/OS 2.x)
281 154 AUE_NULL UNIMPL nosys
282 ; 155 is initialized by the NFS code, if present.
283 ; XXX this is a problem!!!
284 155 AUE_NFS_SVC UNIMPL nfssvc
285 156 AUE_GETDIRENTRIES OBSOL ogetdirentries
286 157 AUE_STATFS MCOMPAT4 { int freebsd32_statfs(char *path, \
287 struct statfs32 *buf); }
288 158 AUE_FSTATFS MCOMPAT4 { int freebsd32_fstatfs(int fd, \
289 struct statfs32 *buf); }
290 159 AUE_NULL UNIMPL nosys
291 160 AUE_NULL UNIMPL nosys
292 161 AUE_NFS_GETFH MNOPROTO { int getfh(char *fname, \
293 struct fhandle *fhp); }
294 162 AUE_SYSCTL MNOPROTO { int getdomainname(char *domainname, \
295 int len); }
296 163 AUE_SYSCTL MNOPROTO { int setdomainname(char *domainname, \
297 int len); }
298 164 AUE_NULL MNOPROTO { int uname(struct utsname *name); }
299 165 AUE_SYSARCH MNOPROTO { int sysarch(int op, char *parms); }
300 166 AUE_RTPRIO MNOPROTO { int rtprio(int function, pid_t pid, \
301 struct rtprio *rtp); }
302 167 AUE_NULL UNIMPL nosys
303 168 AUE_NULL UNIMPL nosys
304 169 AUE_SEMSYS MSTD { int freebsd32_semsys(int which, int a2, \
305 int a3, int a4, int a5); }
306 170 AUE_MSGSYS MSTD { int freebsd32_msgsys(int which, int a2, \
307 int a3, int a4, int a5, int a6); }
308 171 AUE_SHMSYS MSTD { int freebsd32_shmsys(int which, uint32_t a2, \
309 uint32_t a3, uint32_t a4); }
310 172 AUE_NULL UNIMPL nosys
311 173 AUE_PREAD MSTD { ssize_t freebsd32_pread(int fd, void *buf, \
312 size_t nbyte, int pad, \
313 u_int32_t offsetlo, u_int32_t offsethi); }
314 ; XXX note - bigendian is different
315 174 AUE_PWRITE MSTD { ssize_t freebsd32_pwrite(int fd, \
316 const void *buf, size_t nbyte, int pad, \
317 u_int32_t offsetlo, u_int32_t offsethi); }
318 ; XXX note - bigendian is different
319 175 AUE_NULL UNIMPL nosys
320 176 AUE_NTP_ADJTIME MNOPROTO { int ntp_adjtime(struct timex *tp); }
321 177 AUE_NULL UNIMPL sfork (BSD/OS 2.x)
322 178 AUE_NULL UNIMPL getdescriptor (BSD/OS 2.x)
323 179 AUE_NULL UNIMPL setdescriptor (BSD/OS 2.x)
324 180 AUE_NULL UNIMPL nosys
325
326 ; Syscalls 181-199 are used by/reserved for BSD
327 181 AUE_SETGID MNOPROTO { int setgid(gid_t gid); }
328 182 AUE_SETEGID MNOPROTO { int setegid(gid_t egid); }
329 183 AUE_SETEUID MNOPROTO { int seteuid(uid_t euid); }
330 184 AUE_NULL UNIMPL lfs_bmapv
331 185 AUE_NULL UNIMPL lfs_markv
332 186 AUE_NULL UNIMPL lfs_segclean
333 187 AUE_NULL UNIMPL lfs_segwait
334 188 AUE_STAT MSTD { int freebsd32_stat(char *path, \
335 struct stat32 *ub); }
336 189 AUE_FSTAT MSTD { int freebsd32_fstat(int fd, \
337 struct stat32 *ub); }
338 190 AUE_LSTAT MSTD { int freebsd32_lstat(char *path, \
339 struct stat32 *ub); }
340 191 AUE_PATHCONF MNOPROTO { int pathconf(char *path, int name); }
341 192 AUE_FPATHCONF MNOPROTO { int fpathconf(int fd, int name); }
342 193 AUE_NULL UNIMPL nosys
343 194 AUE_GETRLIMIT MNOPROTO { int getrlimit(u_int which, \
344 struct rlimit *rlp); } getrlimit \
345 __getrlimit_args int
346 195 AUE_SETRLIMIT MNOPROTO { int setrlimit(u_int which, \
347 struct rlimit *rlp); } setrlimit \
348 __setrlimit_args int
349 196 AUE_GETDIRENTRIES MNOPROTO { int getdirentries(int fd, char *buf, \
350 u_int count, long *basep); }
351 197 AUE_MMAP MSTD { caddr_t freebsd32_mmap(caddr_t addr, \
352 size_t len, int prot, int flags, int fd, \
353 int pad, u_int32_t poslo, \
354 u_int32_t poshi); }
355 198 AUE_NULL MNOPROTO { int nosys(void); } __syscall \
356 __syscall_args int
357 ; XXX note - bigendian is different
358 199 AUE_LSEEK MSTD { off_t freebsd32_lseek(int fd, int pad, \
359 u_int32_t offsetlo, u_int32_t offsethi, \
360 int whence); }
361 ; XXX note - bigendian is different
362 200 AUE_TRUNCATE MSTD { int freebsd32_truncate(char *path, \
363 int pad, u_int32_t lengthlo, \
364 u_int32_t lengthhi); }
365 ; XXX note - bigendian is different
366 201 AUE_FTRUNCATE MSTD { int freebsd32_ftruncate(int fd, int pad, \
367 u_int32_t lengthlo, u_int32_t lengthhi); }
368 202 AUE_SYSCTL MSTD { int freebsd32_sysctl(int *name, \
369 u_int namelen, void *old, \
370 u_int32_t *oldlenp, void *new, \
371 u_int32_t newlen); }
372 203 AUE_MLOCK MNOPROTO { int mlock(const void *addr, \
373 size_t len); }
374 204 AUE_MUNLOCK MNOPROTO { int munlock(const void *addr, \
375 size_t len); }
376 205 AUE_UNDELETE MNOPROTO { int undelete(char *path); }
377 206 AUE_FUTIMES MSTD { int freebsd32_futimes(int fd, \
378 struct timeval32 *tptr); }
379 207 AUE_GETPGID MNOPROTO { int getpgid(pid_t pid); }
380 208 AUE_NULL UNIMPL newreboot (NetBSD)
381 209 AUE_POLL MNOPROTO { int poll(struct pollfd *fds, u_int nfds, \
382 int timeout); }
383
384 ;
385 ; The following are reserved for loadable syscalls
386 ;
387 210 AUE_NULL UNIMPL
388 211 AUE_NULL UNIMPL
389 212 AUE_NULL UNIMPL
390 213 AUE_NULL UNIMPL
391 214 AUE_NULL UNIMPL
392 215 AUE_NULL UNIMPL
393 216 AUE_NULL UNIMPL
394 217 AUE_NULL UNIMPL
395 218 AUE_NULL UNIMPL
396 219 AUE_NULL UNIMPL
397
398 ;
399 ; The following were introduced with NetBSD/4.4Lite-2
400 ; They are initialized by thier respective modules/sysinits
401 ; XXX PROBLEM!!
402 220 AUE_SEMCTL MNOPROTO { int __semctl(int semid, int semnum, \
403 int cmd, union semun *arg); }
404 221 AUE_SEMGET MNOPROTO { int semget(key_t key, int nsems, \
405 int semflg); }
406 222 AUE_SEMOP MNOPROTO { int semop(int semid, struct sembuf *sops, \
407 u_int nsops); }
408 223 AUE_NULL UNIMPL semconfig
409 224 AUE_MSGCTL MNOPROTO { int msgctl(int msqid, int cmd, \
410 struct msqid_ds *buf); }
411 225 AUE_MSGGET MNOPROTO { int msgget(key_t key, int msgflg); }
412 226 AUE_MSGSND MNOPROTO { int msgsnd(int msqid, void *msgp, \
413 size_t msgsz, int msgflg); }
414 227 AUE_MSGRCV MNOPROTO { int msgrcv(int msqid, void *msgp, \
415 size_t msgsz, long msgtyp, int msgflg); }
416 228 AUE_SHMAT MNOPROTO { int shmat(int shmid, void *shmaddr, \
417 int shmflg); }
418 229 AUE_SHMCTL MSTD { int freebsd32_shmctl(int shmid, int cmd, \
419 struct shmid_ds32 *buf); }
420 230 AUE_SHMDT MNOPROTO { int shmdt(void *shmaddr); }
421 231 AUE_SHMGET MNOPROTO { int shmget(key_t key, int size, \
422 int shmflg); }
423 ;
424 232 AUE_NULL MSTD { int freebsd32_clock_gettime(clockid_t clock_id, \
425 struct timespec32 *tp); }
426 233 AUE_CLOCK_SETTIME MSTD { int freebsd32_clock_settime(clockid_t clock_id, \
427 const struct timespec32 *tp); }
428 234 AUE_NULL MSTD { int freebsd32_clock_getres(clockid_t clock_id, \
429 struct timespec32 *tp); }
430 235 AUE_NULL UNIMPL timer_create
431 236 AUE_NULL UNIMPL timer_delete
432 237 AUE_NULL UNIMPL timer_settime
433 238 AUE_NULL UNIMPL timer_gettime
434 239 AUE_NULL UNIMPL timer_getoverrun
435 240 AUE_NULL MSTD { int freebsd32_nanosleep( \
436 const struct timespec32 *rqtp, \
437 struct timespec32 *rmtp); }
438 241 AUE_NULL UNIMPL nosys
439 242 AUE_NULL UNIMPL nosys
440 243 AUE_NULL UNIMPL nosys
441 244 AUE_NULL UNIMPL nosys
442 245 AUE_NULL UNIMPL nosys
443 246 AUE_NULL UNIMPL nosys
444 247 AUE_NULL UNIMPL nosys
445 248 AUE_NULL UNIMPL ntp_gettime
446 249 AUE_NULL UNIMPL nosys
447 ; syscall numbers initially used in OpenBSD
448 250 AUE_MINHERIT MNOPROTO { int minherit(void *addr, size_t len, \
449 int inherit); }
450 251 AUE_RFORK MNOPROTO { int rfork(int flags); }
451 252 AUE_POLL MNOPROTO { int openbsd_poll(struct pollfd *fds, \
452 u_int nfds, int timeout); }
453 253 AUE_ISSETUGID MNOPROTO { int issetugid(void); }
454 254 AUE_LCHOWN MNOPROTO { int lchown(char *path, int uid, int gid); }
455 255 AUE_NULL UNIMPL nosys
456 256 AUE_NULL UNIMPL nosys
457 257 AUE_NULL UNIMPL nosys
458 258 AUE_NULL UNIMPL nosys
459 259 AUE_NULL UNIMPL nosys
460 260 AUE_NULL UNIMPL nosys
461 261 AUE_NULL UNIMPL nosys
462 262 AUE_NULL UNIMPL nosys
463 263 AUE_NULL UNIMPL nosys
464 264 AUE_NULL UNIMPL nosys
465 265 AUE_NULL UNIMPL nosys
466 266 AUE_NULL UNIMPL nosys
467 267 AUE_NULL UNIMPL nosys
468 268 AUE_NULL UNIMPL nosys
469 269 AUE_NULL UNIMPL nosys
470 270 AUE_NULL UNIMPL nosys
471 271 AUE_NULL UNIMPL nosys
472 272 AUE_O_GETDENTS MNOPROTO { int getdents(int fd, char *buf, \
473 size_t count); }
474 273 AUE_NULL UNIMPL nosys
475 274 AUE_LCHMOD MNOPROTO { int lchmod(char *path, mode_t mode); }
476 275 AUE_LCHOWN MNOPROTO { int lchown(char *path, uid_t uid, \
477 gid_t gid); } netbsd_lchown \
478 lchown_args int
479 276 AUE_LUTIMES MSTD { int freebsd32_lutimes(char *path, \
480 struct timeval32 *tptr); }
481 277 AUE_MSYNC MNOPROTO { int msync(void *addr, size_t len, \
482 int flags); } netbsd_msync msync_args int
483 278 AUE_STAT MNOPROTO { int nstat(char *path, struct nstat *ub); }
484 279 AUE_FSTAT MNOPROTO { int nfstat(int fd, struct nstat *sb); }
485 280 AUE_LSTAT MNOPROTO { int nlstat(char *path, struct nstat *ub); }
486 281 AUE_NULL UNIMPL nosys
487 282 AUE_NULL UNIMPL nosys
488 283 AUE_NULL UNIMPL nosys
489 284 AUE_NULL UNIMPL nosys
490 285 AUE_NULL UNIMPL nosys
491 286 AUE_NULL UNIMPL nosys
492 287 AUE_NULL UNIMPL nosys
493 288 AUE_NULL UNIMPL nosys
494 ; 289 and 290 from NetBSD (OpenBSD: 267 and 268)
495 289 AUE_PREADV MSTD { ssize_t freebsd32_preadv(int fd, \
496 struct iovec32 *iovp, \
497 u_int iovcnt, off_t offset); }
498 ; XXX note - bigendian is different
499 290 AUE_PWRITEV MSTD { ssize_t freebsd32_pwritev(int fd, \
500 struct iovec32 *iovp, \
501 u_int iovcnt, off_t offset); }
502 ; XXX note - bigendian is different
503 291 AUE_NULL UNIMPL nosys
504 292 AUE_NULL UNIMPL nosys
505 293 AUE_NULL UNIMPL nosys
506 294 AUE_NULL UNIMPL nosys
507 295 AUE_NULL UNIMPL nosys
508 296 AUE_NULL UNIMPL nosys
509 ; XXX 297 is 300 in NetBSD
510 297 AUE_FHSTATFS MCOMPAT4 { int freebsd32_fhstatfs( \
511 const struct fhandle *u_fhp, \
512 struct statfs32 *buf); }
513 298 AUE_FHOPEN MNOPROTO { int fhopen(const struct fhandle *u_fhp, \
514 int flags); }
515 299 AUE_FHSTAT MNOPROTO { int fhstat(const struct fhandle *u_fhp, \
516 struct stat *sb); }
517 ; syscall numbers for FreeBSD
518 300 AUE_NULL MNOPROTO { int modnext(int modid); }
519 301 AUE_NULL MSTD { int freebsd32_modstat(int modid, \
520 struct module_stat32* stat); }
521 302 AUE_NULL MNOPROTO { int modfnext(int modid); }
522 303 AUE_NULL MNOPROTO { int modfind(const char *name); }
523 304 AUE_MODLOAD MNOPROTO { int kldload(const char *file); }
524 305 AUE_MODUNLOAD MNOPROTO { int kldunload(int fileid); }
525 306 AUE_NULL MNOPROTO { int kldfind(const char *file); }
526 307 AUE_NULL MNOPROTO { int kldnext(int fileid); }
527 308 AUE_NULL MNOPROTO { int kldstat(int fileid, \
528 struct kld_file_stat* stat); }
529 309 AUE_NULL MNOPROTO { int kldfirstmod(int fileid); }
530 310 AUE_GETSID MNOPROTO { int getsid(pid_t pid); }
531 311 AUE_SETRESUID MNOPROTO { int setresuid(uid_t ruid, uid_t euid, \
532 uid_t suid); }
533 312 AUE_SETRESGID MNOPROTO { int setresgid(gid_t rgid, gid_t egid, \
534 gid_t sgid); }
535 313 AUE_NULL OBSOL signanosleep
536 314 AUE_NULL UNIMPL aio_return
537 315 AUE_NULL UNIMPL aio_suspend
538 316 AUE_NULL UNIMPL aio_cancel
539 317 AUE_NULL UNIMPL aio_error
540 318 AUE_NULL UNIMPL aio_read
541 319 AUE_NULL UNIMPL aio_write
542 320 AUE_NULL UNIMPL lio_listio
543 321 AUE_NULL MNOPROTO { int yield(void); }
544 322 AUE_NULL OBSOL thr_sleep
545 323 AUE_NULL OBSOL thr_wakeup
546 324 AUE_MLOCKALL MNOPROTO { int mlockall(int how); }
547 325 AUE_MUNLOCKALL MNOPROTO { int munlockall(void); }
548 326 AUE_GETCWD MNOPROTO { int __getcwd(u_char *buf, u_int buflen); }
549
550 327 AUE_NULL MNOPROTO { int sched_setparam (pid_t pid, \
551 const struct sched_param *param); }
552 328 AUE_NULL MNOPROTO { int sched_getparam (pid_t pid, \
553 struct sched_param *param); }
554
555 329 AUE_NULL MNOPROTO { int sched_setscheduler (pid_t pid, \
556 int policy, \
557 const struct sched_param *param); }
558 330 AUE_NULL MNOPROTO { int sched_getscheduler (pid_t pid); }
559
560 331 AUE_NULL MNOPROTO { int sched_yield (void); }
561 332 AUE_NULL MNOPROTO { int sched_get_priority_max (int policy); }
562 333 AUE_NULL MNOPROTO { int sched_get_priority_min (int policy); }
563 334 AUE_NULL MNOPROTO { int sched_rr_get_interval (pid_t pid, \
564 struct timespec *interval); }
565 335 AUE_NULL MNOPROTO { int utrace(const void *addr, size_t len); }
566 ; XXX note - bigendian is different
567 336 AUE_SENDFILE MCOMPAT4 { int freebsd32_sendfile(int fd, int s, \
568 u_int32_t offsetlo, u_int32_t offsethi, \
569 size_t nbytes, struct sf_hdtr32 *hdtr, \
570 off_t *sbytes, int flags); }
571 337 AUE_NULL MNOPROTO { int kldsym(int fileid, int cmd, \
572 void *data); }
573 338 AUE_JAIL MNOPROTO { int jail(struct jail *jail); }
574 339 AUE_NULL UNIMPL pioctl
575 340 AUE_SIGPROCMASK MNOPROTO { int sigprocmask(int how, \
576 const sigset_t *set, sigset_t *oset); }
577 341 AUE_SIGSUSPEND MNOPROTO { int sigsuspend(const sigset_t *sigmask); }
578 342 AUE_SIGACTION MCOMPAT4 { int freebsd32_sigaction(int sig, \
579 struct sigaction32 *act, \
580 struct sigaction32 *oact); }
581 343 AUE_SIGPENDING MNOPROTO { int sigpending(sigset_t *set); }
582 344 AUE_SIGRETURN MCOMPAT4 { int freebsd32_sigreturn( \
583 const struct freebsd4_freebsd32_ucontext *sigcntxp); }
584 ; XXX implement
585 345 AUE_SIGWAIT UNIMPL sigtimedwait
586 ; XXX implement
587 346 AUE_NULL UNIMPL sigwaitinfo
588 347 AUE_NULL MNOPROTO { int __acl_get_file(const char *path, \
589 acl_type_t type, struct acl *aclp); }
590 348 AUE_NULL MNOPROTO { int __acl_set_file(const char *path, \
591 acl_type_t type, struct acl *aclp); }
592 349 AUE_NULL MNOPROTO { int __acl_get_fd(int filedes, \
593 acl_type_t type, struct acl *aclp); }
594 350 AUE_NULL MNOPROTO { int __acl_set_fd(int filedes, \
595 acl_type_t type, struct acl *aclp); }
596 351 AUE_NULL MNOPROTO { int __acl_delete_file(const char *path, \
597 acl_type_t type); }
598 352 AUE_NULL MNOPROTO { int __acl_delete_fd(int filedes, \
599 acl_type_t type); }
600 353 AUE_NULL MNOPROTO { int __acl_aclcheck_file(const char *path, \
601 acl_type_t type, struct acl *aclp); }
602 354 AUE_NULL MNOPROTO { int __acl_aclcheck_fd(int filedes, \
603 acl_type_t type, struct acl *aclp); }
604 355 AUE_EXTATTRCTL NOPROTO { int extattrctl(const char *path, int cmd, \
605 const char *filename, int attrnamespace, \
606 const char *attrname); }
607 356 AUE_EXTATTR_SET_FILE NOPROTO { int extattr_set_file( \
608 const char *path, int attrnamespace, \
609 const char *attrname, void *data, \
610 size_t nbytes); }
611 357 AUE_EXTATTR_GET_FILE NOPROTO { ssize_t extattr_get_file( \
612 const char *path, int attrnamespace, \
613 const char *attrname, void *data, \
614 size_t nbytes); }
615 358 AUE_EXTATTR_DELETE_FILE NOPROTO { int extattr_delete_file( \
616 const char *path, int attrnamespace, \
617 const char *attrname); }
618 359 AUE_NULL UNIMPL aio_waitcomplete
619 360 AUE_GETRESUID MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \
620 uid_t *suid); }
621 361 AUE_GETRESGID MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \
622 gid_t *sgid); }
623 362 AUE_KQUEUE MNOPROTO { int kqueue(void); }
624 363 AUE_NULL MSTD { int freebsd32_kevent(int fd, \
625 const struct kevent32 *changelist, \
626 int nchanges, \
627 struct kevent32 *eventlist, int nevents, \
628 const struct timespec32 *timeout); }
629 364 AUE_NULL UNIMPL __cap_get_proc
630 365 AUE_NULL UNIMPL __cap_set_proc
631 366 AUE_NULL UNIMPL __cap_get_fd
632 367 AUE_NULL UNIMPL __cap_get_file
633 368 AUE_NULL UNIMPL __cap_set_fd
634 369 AUE_NULL UNIMPL __cap_set_file
635 370 AUE_NULL UNIMPL lkmressys
636 371 AUE_EXTATTR_SET_FD NOPROTO { int extattr_set_fd(int fd, \
637 int attrnamespace, const char *attrname, \
638 void *data, size_t nbytes); }
639 372 AUE_EXTATTR_GET_FD NOPROTO { ssize_t extattr_get_fd(int fd, \
640 int attrnamespace, const char *attrname, \
641 void *data, size_t nbytes); }
642 373 AUE_EXTATTR_DELETE_FD NOPROTO { int extattr_delete_fd(int fd, \
643 int attrnamespace, \
644 const char *attrname); }
645 374 AUE_NULL MNOPROTO { int __setugid(int flag); }
646 375 AUE_NULL UNIMPL nfsclnt
647 376 AUE_EACCESS MNOPROTO { int eaccess(char *path, int flags); }
648 377 AUE_NULL UNIMPL afs_syscall
649 378 AUE_NMOUNT NOPROTO { int nmount(struct iovec *iovp, \
650 unsigned int iovcnt, int flags); }
651 379 AUE_NULL MNOPROTO { int kse_exit(void); }
652 380 AUE_NULL MNOPROTO { int kse_wakeup(struct kse_mailbox *mbx); }
653 381 AUE_NULL MNOPROTO { int kse_create(struct kse_mailbox *mbx, \
654 int newgroup); }
655 382 AUE_NULL MNOPROTO { int kse_thr_interrupt( \
656 struct kse_thr_mailbox *tmbx); }
657 383 AUE_NULL MNOPROTO { int kse_release(void); }
658 384 AUE_NULL UNIMPL __mac_get_proc
659 385 AUE_NULL UNIMPL __mac_set_proc
660 386 AUE_NULL UNIMPL __mac_get_fd
661 387 AUE_NULL UNIMPL __mac_get_file
662 388 AUE_NULL UNIMPL __mac_set_fd
663 389 AUE_NULL UNIMPL __mac_set_file
664 390 AUE_NULL MNOPROTO { int kenv(int what, const char *name, \
665 char *value, int len); }
666 391 AUE_LCHFLAGS MNOPROTO { int lchflags(const char *path, int flags); }
667 392 AUE_NULL MNOPROTO { int uuidgen(struct uuid *store, \
668 int count); }
669 393 AUE_SENDFILE MSTD { int freebsd32_sendfile(int fd, int s, \
670 u_int32_t offsetlo, u_int32_t offsethi, \
671 size_t nbytes, struct sf_hdtr32 *hdtr, \
672 off_t *sbytes, int flags); }
673 394 AUE_NULL UNIMPL mac_syscall
674 395 AUE_GETFSSTAT MNOPROTO { int getfsstat(struct statfs *buf, \
675 long bufsize, int flags); }
676 396 AUE_STATFS MNOPROTO { int statfs(char *path, \
677 struct statfs *buf); }
678 397 AUE_FSTATFS MNOPROTO { int fstatfs(int fd, struct statfs *buf); }
679 398 AUE_FHSTATFS MNOPROTO { int fhstatfs(const struct fhandle *u_fhp, \
680 struct statfs *buf); }
681 399 AUE_NULL UNIMPL nosys
682 ; XXX implement these?
683 400 AUE_NULL UNIMPL ksem_close
684 401 AUE_NULL UNIMPL ksem_post
685 402 AUE_NULL UNIMPL ksem_wait
686 403 AUE_NULL UNIMPL ksem_trywait
687 404 AUE_NULL UNIMPL ksem_init
688 405 AUE_NULL UNIMPL ksem_open
689 406 AUE_NULL UNIMPL ksem_unlink
690 407 AUE_NULL UNIMPL ksem_getvalue
691 408 AUE_NULL UNIMPL ksem_destroy
692 409 AUE_NULL UNIMPL __mac_get_pid
693 410 AUE_NULL UNIMPL __mac_get_link
694 411 AUE_NULL UNIMPL __mac_set_link
695 412 AUE_EXTATTR_SET_LINK UNIMPL extattr_set_link
696 413 AUE_EXTATTR_GET_LINK UNIMPL extattr_get_link
697 414 AUE_EXTATTR_DELETE_LINK UNIMPL extattr_delete_link
698 415 AUE_NULL UNIMPL __mac_execve
699 416 AUE_SIGACTION MSTD { int freebsd32_sigaction(int sig, \
700 struct sigaction32 *act, \
701 struct sigaction32 *oact); }
702 417 AUE_SIGRETURN MSTD { int freebsd32_sigreturn( \
703 const struct freebsd32_ucontext *sigcntxp); }
704 418 AUE_NULL UNIMPL __xstat
705 419 AUE_NULL UNIMPL __xfstat
706 420 AUE_NULL UNIMPL __xlstat
707 421 AUE_NULL STD { int freebsd32_getcontext( \
708 struct freebsd32_ucontext *ucp); }
709 422 AUE_NULL STD { int freebsd32_setcontext( \
710 const struct freebsd32_ucontext *ucp); }
711 423 AUE_NULL STD { int freebsd32_swapcontext( \
712 struct freebsd32_ucontext *oucp, \
713 const struct freebsd32_ucontext *ucp); }
714 424 AUE_SWAPOFF UNIMPL swapoff
715 425 AUE_NULL UNIMPL __acl_get_link
716 426 AUE_NULL UNIMPL __acl_set_link
717 427 AUE_NULL UNIMPL __acl_delete_link
718 428 AUE_NULL UNIMPL __acl_aclcheck_link
719 ; XXX implement
720 429 AUE_SIGWAIT UNIMPL sigwait
721 430 AUE_NULL UNIMPL thr_create
722 431 AUE_NULL MNOPROTO { void thr_exit(long *state); }
723 432 AUE_NULL MNOPROTO { int thr_self(long *id); }
724 433 AUE_NULL MNOPROTO { int thr_kill(long id, int sig); }
725 434 AUE_NULL MSTD { int freebsd32_umtx_lock(struct umtx *umtx); }
726 435 AUE_NULL MSTD { int freebsd32_umtx_unlock(struct umtx *umtx); }
727 436 AUE_NULL MNOPROTO { int jail_attach(int jid); }
728 437 AUE_EXTATTR_LIST_FD UNIMPL extattr_list_fd
729 438 AUE_EXTATTR_LIST_FILE UNIMPL extattr_list_file
730 439 AUE_EXTATTR_LIST_LINK UNIMPL extattr_list_link
731 440 AUE_NULL UNIMPL kse_switchin
732 441 AUE_NULL UNIMPL ksem_timedwait
733 442 AUE_NULL MSTD { int freebsd32_thr_suspend( \
734 const struct timespec32 *timeout); }
735 443 AUE_NULL MNOPROTO { int thr_wake(long id); }
736 444 AUE_MODUNLOAD MNOPROTO { int kldunloadf(int fileid, int flags); }
737 445 AUE_AUDIT MNOPROTO { int audit(const void *record, \
738 u_int length); }
739 446 AUE_AUDITON MNOPROTO { int auditon(int cmd, void *data, \
740 u_int length); }
741 447 AUE_GETAUID MNOPROTO { int getauid(uid_t *auid); }
742 448 AUE_SETAUID MNOPROTO { int setauid(uid_t *auid); }
743 449 AUE_GETAUDIT MNOPROTO { int getaudit(struct auditinfo *auditinfo); }
744 450 AUE_SETAUDIT MNOPROTO { int setaudit(struct auditinfo *auditinfo); }
745 451 AUE_GETAUDIT_ADDR MNOPROTO { int getaudit_addr( \
746 struct auditinfo_addr *auditinfo_addr, \
747 u_int length); }
748 452 AUE_SETAUDIT_ADDR MNOPROTO { int setaudit_addr( \
749 struct auditinfo_addr *auditinfo_addr, \
750 u_int length); }
751 453 AUE_AUDITCTL MNOPROTO { int auditctl(char *path); }
752 454 AUE_NULL MSTD { int freebsd32_umtx_op(struct umtx *umtx, \
753 int op, long id, void *uaddr, \
754 void *uaddr2); }
755 455 AUE_NULL MSTD { int freebsd32_thr_new( \
756 struct thr_param32 *param, \
757 int param_size); }
Cache object: b402f0fdeb5835c13461fc7f89402df2
|