|
|
1.1 root 1: /*
2: * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * The contents of this file constitute Original Code as defined in and
7: * are subject to the Apple Public Source License Version 1.1 (the
8: * "License"). You may not use this file except in compliance with the
9: * License. Please obtain a copy of the License at
10: * http://www.apple.com/publicsource and read it before using this file.
11: *
12: * This Original Code and all software distributed under the License are
13: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17: * License for the specific language governing rights and limitations
18: * under the License.
19: *
20: * @APPLE_LICENSE_HEADER_END@
21: */
22: /* Copyright (c) 1995-1999 Apple Computer, Inc. All Rights Reserved */
23: /*
24: * HISTORY
25: * 12-Feb-00 Clark Warner (warner_c) at Apple
26: * Added copyfile system call
27: * 26-Jul-99 Earsh Nandkeshwar (earsh) at Apple
28: * Changed getdirentryattr to getdirentriesattr
29: * 22-Jan-98 Clark Warner (warner_c) at Apple
30: * Created new system calls for supporting HFS/HFS Plus file system semantics
31: *
32: * 04-Jun-95 Mac Gillon (mgillon) at NeXT
33: * Created new version based on NS3.3 and 4.4BSD
34: *
35: */
36:
37:
38: #include <sys/param.h>
39: #include <sys/systm.h>
40: #include <sys/signal.h>
41: #include <sys/mount.h>
42:
43: /*
44: * definitions
45: */
46: int nosys();
47: int exit();
48: int fork();
49: int read();
50: int write();
51: int open();
52: int close();
53: int wait4();
54: int link();
55: int unlink();
56: int chdir();
57: int fchdir();
58: int mknod();
59: int chmod();
60: int chown();
61: int obreak();
62: int getfsstat();
63: int getpid();
64: int mount();
65: int unmount();
66: int setuid();
67: int getuid();
68: int geteuid();
69: int ptrace();
70: int recvmsg();
71: int sendmsg();
72: int recvfrom();
73: int accept();
74: int getpeername();
75: int getsockname();
76: int access();
77: int chflags();
78: int fchflags();
79: int sync();
80: int kill();
81: int getppid();
82: int dup();
83: int pipe();
84: int getegid();
85: int profil();
86: #if KTRACE
87: int ktrace();
88: #else
89: #endif
90: int sigaction();
91: int getgid();
92: int sigprocmask();
93: int getlogin();
94: int setlogin();
95: int acct();
96: int sigpending();
97: int sigaltstack();
98: int ioctl();
99: int reboot();
100: int revoke();
101: int symlink();
102: int readlink();
103: int execve();
104: int umask();
105: int chroot();
106: int msync();
107: int vfork();
108: int sbrk();
109: int sstk();
110: int ovadvise();
111: int munmap();
112: int mprotect();
113: int madvise();
114: int mincore();
115: int getgroups();
116: int setgroups();
117: int getpgrp();
118: int setpgid();
119: int setitimer();
120: int swapon();
121: int getitimer();
122: int getdtablesize();
123: int dup2();
124: int fcntl();
125: int select();
126: int fsync();
127: int setpriority();
128: int socket();
129: int connect();
130: int getpriority();
131: int sigreturn();
132: int bind();
133: int setsockopt();
134: int listen();
135: int sigsuspend();
136: #if TRACE
137: int vtrace();
138: #else
139: #endif
140: int gettimeofday();
141: int getrusage();
142: int getsockopt();
143: int readv();
144: int writev();
145: int settimeofday();
146: int fchown();
147: int fchmod();
148: int rename();
149: int flock();
150: int mkfifo();
151: int sendto();
152: int shutdown();
153: int socketpair();
154: int mkdir();
155: int rmdir();
156: int utimes();
157: int adjtime();
158: int setsid();
159: int quotactl();
160: int nfssvc();
161: int statfs();
162: int fstatfs();
163: int getfh();
164: int setgid();
165: int setegid();
166: int seteuid();
167: #if LFS
168: int lfs_bmapv();
169: int lfs_markv();
170: int lfs_segclean();
171: int lfs_segwait();
172: #else
173: #endif
174: int stat();
175: int fstat();
176: int lstat();
177: int pathconf();
178: int fpathconf();
179: int getrlimit();
180: int setrlimit();
181: int getdirentries();
182: int mmap();
183: int nosys();
184: int lseek();
185: int truncate();
186: int ftruncate();
187: int __sysctl();
188: int undelete();
189: int setprivexec();
190: int add_profil();
191: #ifdef NOTEVER
192: int table();
193: #endif /* NOTEVER */
194:
195: int kdebug_trace();
196:
197: int mlock();
198: int munlock();
199: int minherit();
200: int mlockall();
201: int munlockall();
202: #if COMPAT_43
203: #define compat(name,n) syss(__CONCAT(o,name),n)
204: #define compatp(name,n) sysp(__CONCAT(o,name),n)
205:
206: int ocreat();
207: int olseek();
208: int ostat();
209: int olstat();
210: #if KTRACE
211: #else
212: #endif
213: int ofstat();
214: int ogetkerninfo();
215: int osmmap();
216: int ogetpagesize();
217: int ommap();
218: int owait();
219: int ogethostname();
220: int osethostname();
221: int oaccept();
222: int osend();
223: int orecv();
224: int osigvec();
225: int osigblock();
226: int osigsetmask();
227: int osigstack();
228: int orecvmsg();
229: int osendmsg();
230: #if TRACE
231: #else
232: #endif
233: int orecvfrom();
234: int osetreuid();
235: int osetregid();
236: int otruncate();
237: int oftruncate();
238: int ogetpeername();
239: int ogethostid();
240: int osethostid();
241: int ogetrlimit();
242: int osetrlimit();
243: int okillpg();
244: int oquota();
245: int ogetsockname();
246: int ogetdomainname();
247: int osetdomainname();
248: int owait3();
249: #if NFS
250: #else
251: #endif
252: int ogetdirentries();
253: #if NFS
254: #else
255: #endif
256: #if LFS
257: #else
258: #endif
259:
260: #if NETAT
261: int ATsocket();
262: int ATgetmsg();
263: int ATputmsg();
264: int ATPsndreq();
265: int ATPsndrsp();
266: int ATPgetreq();
267: int ATPgetrsp();
268: #endif /* NETAT */
269:
270: /* Calls for supporting HFS Semantics */
271:
272: int mkcomplex();
273: int statv();
274: int lstatv();
275: int fstatv();
276: int getattrlist();
277: int setattrlist();
278: int getdirentriesattr();
279: int exchangedata();
280: int checkuseraccess();
281: int searchfs();
282: int delete();
283: int copyfile();
284:
285: /* end of HFS calls */
286:
287: #else /* COMPAT_43 */
288: #define compat(n, name) syss(nosys,0)
289: #define compatp(n, name) sysp(nosys,0)
290: #endif /* COMPAT_43 */
291:
292: int watchevent();
293: int waitevent();
294: int modwatch();
295: int fsctl();
296: int semsys();
297: int msgsys();
298: int shmsys();
299: int semctl();
300: int semget();
301: int semop();
302: int semconfig();
303: int msgctl();
304: int msgget();
305: int msgsnd();
306: int msgrcv();
307: int shmat();
308: int shmctl();
309: int shmdt();
310: int shmget();
311: int shm_open();
312: int shm_unlink();
313: int sem_open();
314: int sem_close();
315: int sem_unlink();
316: int sem_wait();
317: int sem_trywait();
318: int sem_post();
319: int sem_getvalue();
320: int sem_init();
321: int sem_destroy();
322: /*
323: * System call switch table.
324: */
325:
326: /* serial or parallel system call */
327: #define syss(fn,no) {no, 0, fn}
328: #define sysp(fn,no) {no, 1, fn}
329:
330: struct sysent sysent[] = {
331: syss(nosys,0), /* 0 = indir */
332: syss(exit,1), /* 1 = exit */
333: syss(fork,0), /* 2 = fork */
334: sysp(read,3), /* 3 = read */
335: sysp(write,3), /* 4 = write */
336: syss(open,3), /* 5 = open */
337: syss(close,1), /* 6 = close */
338: syss(wait4, 4), /* 7 = wait4 */
339: compat(creat,2), /* 8 = old creat */
340: syss(link,2), /* 9 = link */
341: syss(unlink,1), /* 10 = unlink */
342: syss(nosys, 0), /* 11 was obsolete execv */
343: syss(chdir,1), /* 12 = chdir */
344: syss(fchdir,1), /* 13 = fchdir */
345: syss(mknod,3), /* 14 = mknod */
346: syss(chmod,2), /* 15 = chmod */
347: syss(chown,3), /* 16 = chown; now 3 args */
348: syss(obreak,1), /* 17 = old break */
349: syss(getfsstat, 3), /* 18 = getfsstat */
350: compat(lseek,3), /* 19 = old lseek */
351: sysp(getpid,0), /* 20 = getpid */
352: syss(nosys, 0), /* 21 was obsolete mount */
353: syss(nosys, 0), /* 22 was obsolete umount */
354: syss(setuid,1), /* 23 = setuid */
355: sysp(getuid,0), /* 24 = getuid */
356: sysp(geteuid,0), /* 25 = geteuid */
357: syss(ptrace,4), /* 26 = ptrace */
358: syss(recvmsg,3), /* 27 = recvmsg */
359: syss(sendmsg,3), /* 28 = sendmsg */
360: syss(recvfrom,6), /* 29 = recvfrom */
361: syss(accept,3), /* 30 = accept */
362: syss(getpeername,3), /* 31 = getpeername */
363: syss(getsockname,3), /* 32 = getsockname */
364: syss(access,2), /* 33 = access */
365: syss(chflags,2), /* 34 = chflags */
366: syss(fchflags,2), /* 35 = fchflags */
367: syss(sync,0), /* 36 = sync */
368: syss(kill,2), /* 37 = kill */
369: compat(stat,2), /* 38 = old stat */
370: sysp(getppid,0), /* 39 = getppid */
371: compat(lstat,2), /* 40 = old lstat */
372: syss(dup,2), /* 41 = dup */
373: syss(pipe,0), /* 42 = pipe */
374: sysp(getegid,0), /* 43 = getegid */
375: syss(profil,4), /* 44 = profil */
376: #if KTRACE
377: syss(ktrace,4), /* 45 = ktrace */
378: #else
379: syss(nosys,0), /* 45 = nosys */
380: #endif
381: syss(sigaction,3), /* 46 = sigaction */
382: sysp(getgid,0), /* 47 = getgid */
383: syss(sigprocmask,2), /* 48 = sigprocmask */
384: syss(getlogin,2), /* 49 = getlogin */
385: syss(setlogin,1), /* 50 = setlogin */
386: syss(acct,1), /* 51 = turn acct off/on */
387: syss(sigpending,0), /* 52 = sigpending */
388: syss(sigaltstack,2), /* 53 = sigaltstack */
389: syss(ioctl,3), /* 54 = ioctl */
390: syss(reboot,2), /* 55 = reboot */
391: syss(revoke,1), /* 56 = revoke */
392: syss(symlink,2), /* 57 = symlink */
393: syss(readlink,3), /* 58 = readlink */
394: syss(execve,3), /* 59 = execve */
395: syss(umask,1), /* 60 = umask */
396: syss(chroot,1), /* 61 = chroot */
397: compat(fstat,2), /* 62 = old fstat */
398: syss(nosys,0), /* 63 = used internally, reserved */
399: compat(getpagesize,0), /* 64 = old getpagesize */
400: syss(msync,3), /* 65 = msync */
401: syss(vfork,0), /* 66 = vfork */
402: syss(nosys,0), /* 67 was obsolete vread */
403: syss(nosys,0), /* 68 was obsolete vwrite */
404: syss(sbrk,1), /* 69 = sbrk */
405: syss(sstk,1), /* 70 = sstk */
406: compat(smmap,6), /* 71 = old mmap */
407: syss(ovadvise,1), /* 72 = old vadvise */
408: syss(munmap,2), /* 73 = munmap */
409: syss(mprotect,3), /* 74 = mprotect */
410: syss(madvise,3), /* 75 = madvise */
411: syss(nosys,0), /* 76 was obsolete vhangup */
412: syss(nosys,0), /* 77 was obsolete vlimit */
413: syss(mincore,3), /* 78 = mincore */
414: sysp(getgroups,2), /* 79 = getgroups */
415: sysp(setgroups,2), /* 80 = setgroups */
416: sysp(getpgrp,0), /* 81 = getpgrp */
417: sysp(setpgid,2), /* 82 = setpgid */
418: syss(setitimer,3), /* 83 = setitimer */
419: compat(wait,0), /* 84 = old wait */
420: syss(swapon,1), /* 85 = swapon */
421: syss(getitimer,2), /* 86 = getitimer */
422: compat(gethostname,2), /* 87 = old gethostname */
423: compat(sethostname,2), /* 88 = old sethostname */
424: sysp(getdtablesize, 0), /* 89 getdtablesize */
425: syss(dup2,2), /* 90 = dup2 */
426: syss(nosys,0), /* 91 was obsolete getdopt */
427: syss(fcntl,3), /* 92 = fcntl */
428: syss(select,5), /* 93 = select */
429: syss(nosys,0), /* 94 was obsolete setdopt */
430: syss(fsync,1), /* 95 = fsync */
431: sysp(setpriority,3), /* 96 = setpriority */
432: syss(socket,3), /* 97 = socket */
433: syss(connect,3), /* 98 = connect */
434: compat(accept,3), /* 99 = accept */
435: sysp(getpriority,2), /* 100 = getpriority */
436: compat(send,4), /* 101 = old send */
437: compat(recv,4), /* 102 = old recv */
438: syss(sigreturn,1), /* 103 = sigreturn */
439: syss(bind,3), /* 104 = bind */
440: syss(setsockopt,5), /* 105 = setsockopt */
441: syss(listen,2), /* 106 = listen */
442: syss(nosys,0), /* 107 was vtimes */
443: compat(sigvec,3), /* 108 = sigvec */
444: compat(sigblock,1), /* 109 = sigblock */
445: compat(sigsetmask,1), /* 110 = sigsetmask */
446: syss(sigsuspend,1), /* 111 = sigpause */
447: compat(sigstack,2), /* 112 = sigstack */
448: compat(recvmsg,3), /* 113 = recvmsg */
449: compat(sendmsg,3), /* 114 = sendmsg */
450: syss(nosys,0), /* 115 = old vtrace */
451: syss(gettimeofday,2), /* 116 = gettimeofday */
452: sysp(getrusage,2), /* 117 = getrusage */
453: syss(getsockopt,5), /* 118 = getsockopt */
454: syss(nosys,0), /* 119 = old resuba */
455: sysp(readv,3), /* 120 = readv */
456: sysp(writev,3), /* 121 = writev */
457: syss(settimeofday,2), /* 122 = settimeofday */
458: syss(fchown,3), /* 123 = fchown */
459: syss(fchmod,2), /* 124 = fchmod */
460: compat(recvfrom,6), /* 125 = recvfrom */
461: compat(setreuid,2), /* 126 = setreuid */
462: compat(setregid,2), /* 127 = setregid */
463: syss(rename,2), /* 128 = rename */
464: compat(truncate,2), /* 129 = old truncate */
465: compat(ftruncate,2), /* 130 = ftruncate */
466: syss(flock,2), /* 131 = flock */
467: syss(mkfifo,2), /* 132 = nosys */
468: syss(sendto,6), /* 133 = sendto */
469: syss(shutdown,2), /* 134 = shutdown */
470: syss(socketpair,5), /* 135 = socketpair */
471: syss(mkdir,2), /* 136 = mkdir */
472: syss(rmdir,1), /* 137 = rmdir */
473: syss(utimes,2), /* 138 = utimes */
474: syss(nosys,0), /* 139 = used internally */
475: syss(adjtime,2), /* 140 = adjtime */
476: compat(getpeername,3),/* 141 = getpeername */
477: compat(gethostid,0), /* 142 = old gethostid */
478: sysp(nosys,0), /* 143 = old sethostid */
479: compat(getrlimit,2), /* 144 = old getrlimit */
480: compat(setrlimit,2), /* 145 = old setrlimit */
481: compat(killpg,2), /* 146 = old killpg */
482: syss(setsid,0), /* 147 = setsid */
483: syss(nosys,0), /* 148 was setquota */
484: syss(nosys,0), /* 149 was qquota */
485: compat(getsockname,3),/* 150 = getsockname */
486: /*
487: * Syscalls 151-183 inclusive are reserved for vendor-specific
488: * system calls. (This includes various calls added for compatibity
489: * with other Unix variants.)
490: */
491: syss(nosys,0), /* 151 was m68k specific machparam */
492: sysp(setprivexec,1),/* 152 = setprivexec */
493: syss(nosys,0), /* 153 */
494: syss(nosys,0), /* 154 */
495: syss(nfssvc,2), /* 155 = nfs_svc */
496: compat(getdirentries,4), /* 156 = old getdirentries */
497: syss(statfs, 2), /* 157 = statfs */
498: syss(fstatfs, 2), /* 158 = fstatfs */
499: syss(unmount, 2), /* 159 = unmount */
500: syss(nosys,0), /* 160 was async_daemon */
501: syss(getfh,2), /* 161 = get file handle */
502: compat(getdomainname,2), /* 162 = getdomainname */
503: compat(setdomainname,2), /* 163 = setdomainname */
504: syss(nosys,0), /* 164 */
505: #if QUOTA
506: syss(quotactl, 4), /* 165 = quotactl */
507: #else QUOTA
508: syss(nosys, 0), /* 165 = not configured */
509: #endif /* QUOTA */
510: syss(nosys,0), /* 166 was exportfs */
511: syss(mount, 4), /* 167 = mount */
512: syss(nosys,0), /* 168 was ustat */
513: syss(nosys,0), /* 169 = nosys */
514: #if NOTEVER
515: syss(table,5), /* 170 = table */
516: #else
517: syss(nosys,0), /* 170 was table */
518: #endif /* NOTEVER */
519: compat(wait3,3), /* 171 = old wait3 */
520: syss(nosys,0), /* 172 was rpause */
521: syss(nosys,0), /* 173 = nosys */
522: syss(nosys,0), /* 174 was getdents */
523: syss(nosys,0), /* 175 was gc_control */
524: syss(add_profil,4), /* 176 = add_profil */
525: syss(nosys,0), /* 177 */
526: syss(nosys,0), /* 178 */
527: syss(nosys,0), /* 179 */
528: syss(kdebug_trace,0), /* 180 */
529: syss(setgid,1), /* 181 */
530: syss(setegid,1), /* 182 */
531: syss(seteuid,1), /* 183 */
532: #if LFS
533: syss(lfs_bmapv,3), /* 184 = lfs_bmapv */
534: syss(lfs_markv,3), /* 185 = lfs_markv */
535: syss(lfs_segclean,2), /* 186 = lfs_segclean */
536: syss(lfs_segwait,2), /* 187 = lfs_segwait */
537: #else
538: syss(nosys,0), /* 184 = nosys */
539: syss(nosys,0), /* 185 = nosys */
540: syss(nosys,0), /* 186 = nosys */
541: syss(nosys,0), /* 187 = nosys */
542: #endif
543: syss(stat,2), /* 188 = stat */
544: syss(fstat,2), /* 189 = fstat */
545: syss(lstat,2), /* 190 = lstat */
546: syss(pathconf,2), /* 191 = pathconf */
547: syss(fpathconf,2), /* 192 = fpathconf */
548: syss(nosys,0), /* 193 = nosys */
549: syss(getrlimit,2), /* 194 = getrlimit */
550: syss(setrlimit,2), /* 195 = setrlimit */
551: syss(getdirentries,4), /* 196 = getdirentries */
552: #ifdef DOUBLE_ALIGN_PARAMS
553: syss(mmap,8), /* 197 = mmap */
554: #else
555: syss(mmap,7), /* 197 = mmap */
556: #endif
557: syss(nosys,0), /* 198 = __syscall */
558: syss(lseek,5), /* 199 = lseek */
559: syss(truncate,4), /* 200 = truncate */
560: syss(ftruncate,4), /* 201 = ftruncate */
561: syss(__sysctl,6), /* 202 = __sysctl */
562: sysp(mlock, 2), /* 203 = mlock */
563: syss(munlock, 2), /* 204 = munlock */
564: #if NETAT
565: syss(undelete,1), /* 205 = undelete */
566: syss(ATsocket,1), /* 206 = AppleTalk ATsocket */
567: syss(ATgetmsg,4), /* 207 = AppleTalk ATgetmsg*/
568: syss(ATputmsg,4), /* 208 = AppleTalk ATputmsg*/
569: syss(ATPsndreq,4), /* 209 = AppleTalk ATPsndreq*/
570: syss(ATPsndrsp,4), /* 210 = AppleTalk ATPsndrsp*/
571: syss(ATPgetreq,3), /* 211 = AppleTalk ATPgetreq*/
572: syss(ATPgetrsp,2), /* 212 = AppleTalk ATPgetrsp*/
573: syss(nosys,0), /* 213 = Reserved for AT expansion */
574: syss(nosys,0), /* 214 = Reserved for AT expansion */
575: syss(nosys,0), /* 215 = Reserved for AT expansion */
576: #else
577: syss(undelete,1), /* 205 = undelete */
578:
579: /* System calls 205 - 215 are reserved to allow HFS and AT to coexist */
580: /* CHW 1/22/98 */
581:
582: syss(nosys,0), /* 206 = Reserved for AppleTalk */
583: syss(nosys,0), /* 207 = Reserved for AppleTalk */
584: syss(nosys,0), /* 208 = Reserved for AppleTalk */
585: syss(nosys,0), /* 209 = Reserved for AppleTalk */
586: syss(nosys,0), /* 210 = Reserved for AppleTalk */
587: syss(nosys,0), /* 211 = Reserved for AppleTalk */
588: syss(nosys,0), /* 212 = Reserved for AppleTalk */
589: syss(nosys,0), /* 213 = Reserved for AppleTalk */
590: syss(nosys,0), /* 214 = Reserved for AppleTalk */
591: syss(nosys,0), /* 215 = Reserved for AppleTalk */
592: #endif /* NETAT */
593:
594: /*
595: * System Calls 216 - 230 are reserved for calls to support HFS/HFS Plus
596: * file system semantics. Currently, we only use 215-227. The rest is
597: * for future expansion in anticipation of new MacOS APIs for HFS Plus.
598: * These calls are not conditionalized becuase while they are specific
599: * to HFS semantics, they are not specific to the HFS filesystem.
600: * We expect all filesystems to recognize the call and report that it is
601: * not supported or to actually implement it.
602: */
603: syss(nosys,3), /* 216 = HFS make complex file call (multipel forks */
604: syss(nosys,2), /* 217 = HFS statv extended stat call for HFS */
605: syss(nosys,2), /* 218 = HFS lstatv extended lstat call for HFS */
606: syss(nosys,2), /* 219 = HFS fstatv extended fstat call for HFS */
607: syss(getattrlist,5), /* 220 = HFS getarrtlist get attribute list cal */
608: syss(setattrlist,5), /* 221 = HFS setattrlist set attribute list */
609: syss(getdirentriesattr,8), /* 222 = HFS getdirentriesattr get directory attributes */
610: syss(exchangedata,3), /* 223 = HFS exchangedata exchange file contents */
611: syss(checkuseraccess,6),/* 224 = HFS checkuseraccess check access to a file */
612: syss(searchfs,6), /* 225 = HFS searchfs to implement catalog searching */
613: syss(delete,1), /* 226 = private HFS delete (with Mac OS semantics) */
614: syss(copyfile,4), /* 227 = Copyfile for orignally for AFP */
615: syss(nosys,0), /* 228 */
616: syss(nosys,0), /* 229 */
617: syss(nosys,0), /* 230 */
618: syss(watchevent,2), /* 231 */
619: syss(waitevent,2), /* 232 */
620: syss(modwatch,2), /* 233 */
621: syss(nosys,0), /* 234 */
622: syss(nosys,0), /* 235 */
623: syss(nosys,0), /* 236 */
624: syss(nosys,0), /* 237 */
625: syss(nosys,0), /* 238 */
626: syss(nosys,0), /* 239 */
627: syss(nosys,0), /* 240 */
628: syss(nosys,0), /* 241 */
629: syss(fsctl,0), /* 242 */
630: syss(nosys,0), /* 243 */
631: syss(nosys,0), /* 244 */
632: syss(nosys,0), /* 245 */
633: syss(nosys,0), /* 246 */
634: syss(nosys,0), /* 247 */
635: syss(nosys,0), /* 248 */
636: syss(nosys,0), /* 249 */
637: syss(minherit,3), /* 250 */
638: syss(semsys,5), /* 251 = semsys */
639: syss(msgsys,6), /* 252 = msgsys */
640: syss(shmsys,4), /* 253 = shmsys */
641: syss(semctl,4), /* 254 = semctl */
642: syss(semget,3), /* 255 = semget */
643: syss(semop,3), /* 256 = semop */
644: syss(semconfig,1), /* 257 = semconfig */
645: syss(msgctl,3), /* 258 = msgctl */
646: syss(msgget,2), /* 259 = msgget */
647: syss(msgsnd,4), /* 260 = msgsnd */
648: syss(msgrcv,5), /* 261 = msgrcv */
649: syss(shmat,3), /* 262 = shmat */
650: syss(shmctl,3), /* 263 = shmctl */
651: syss(shmdt,1), /* 264 = shmdt */
652: syss(shmget,3), /* 265 = shmget */
653: syss(shm_open,3), /* 266 = shm_open */
654: syss(shm_unlink,1), /* 267 = shm_unlink */
655: syss(sem_open,4), /* 268 = sem_open */
656: syss(sem_close,1), /* 269 = sem_close */
657: syss(sem_unlink,1), /* 270 = sem_unlink */
658: syss(sem_wait,1), /* 271 = sem_wait */
659: syss(sem_trywait,1), /* 272 = sem_trywait */
660: syss(sem_post,1), /* 273 = sem_post */
661: syss(sem_getvalue,2), /* 274 = sem_getvalue */
662: syss(sem_init,3), /* 275 = sem_init */
663: syss(sem_destroy,1), /* 276 = sem_destroy */
664: syss(nosys,0), /* 277 */
665: syss(nosys,0), /* 278 */
666: syss(nosys,0), /* 279 */
667: syss(nosys,0), /* 280 */
668: syss(nosys,0), /* 281 */
669: syss(nosys,0), /* 282 */
670: syss(nosys,0), /* 283 */
671: syss(nosys,0), /* 284 */
672: syss(nosys,0), /* 285 */
673: syss(nosys,0), /* 286 */
674: syss(nosys,0), /* 287 */
675: syss(nosys,0), /* 288 */
676: syss(nosys,0), /* 289 */
677: syss(nosys,0), /* 290 */
678: syss(nosys,0), /* 291 */
679: syss(nosys,0), /* 292 */
680: syss(nosys,0), /* 293 */
681: syss(nosys,0), /* 294 */
682: syss(nosys,0), /* 295 */
683: syss(nosys,0), /* 296 */
684: syss(nosys,0), /* 297 */
685: syss(nosys,0), /* 298 */
686: syss(nosys,0), /* 299 */
687: syss(nosys,0), /* 300 */
688: syss(nosys,0), /* 301 */
689: syss(nosys,0), /* 302 */
690: syss(nosys,0), /* 303 */
691: syss(nosys,0), /* 304 */
692: syss(nosys,0), /* 305 */
693: syss(nosys,0), /* 306 */
694: syss(nosys,0), /* 307 */
695: syss(nosys,0), /* 308 */
696: syss(nosys,0), /* 309 */
697: syss(nosys,0), /* 310 */
698: syss(nosys,0), /* 311 */
699: syss(nosys,0), /* 312 */
700: syss(nosys,0), /* 313 */
701: syss(nosys,0), /* 314 */
702: syss(nosys,0), /* 315 */
703: syss(nosys,0), /* 316 */
704: syss(nosys,0), /* 317 */
705: syss(nosys,0), /* 318 */
706: syss(nosys,0), /* 319 */
707: syss(nosys,0), /* 320 */
708: syss(nosys,0), /* 321 */
709: syss(nosys,0), /* 322 */
710: syss(nosys,0), /* 323 */
711: syss(mlockall,1), /* 324 */
712: syss(munlockall,1), /* 325 */
713: syss(nosys,0), /* 326 */
714: syss(nosys,0), /* 327 */
715: syss(nosys,0), /* 328 */
716: syss(nosys,0), /* 329 */
717: syss(nosys,0), /* 330 */
718: syss(nosys,0), /* 331 */
719: syss(nosys,0), /* 332 */
720: syss(nosys,0), /* 333 */
721: syss(nosys,0), /* 334 */
722: syss(nosys,0), /* 335 */
723: syss(nosys,0), /* 336 */
724: syss(nosys,0), /* 337 */
725: syss(nosys,0), /* 338 */
726: syss(nosys,0), /* 339 */
727: syss(nosys,0), /* 340 */
728: syss(nosys,0), /* 341 */
729: syss(nosys,0), /* 342 */
730: syss(nosys,0), /* 343 */
731: syss(nosys,0), /* 344 */
732: syss(nosys,0), /* 345 */
733: syss(nosys,0), /* 346 */
734: syss(nosys,0), /* 347 */
735: syss(nosys,0), /* 348 */
736: syss(nosys,0) /* 349 */
737: };
738: int nsysent = sizeof(sysent) / sizeof(sysent[0]);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.