ibcs2_sysent.c revision 8876
1/*-
2 * Copyright (c) 1994 S�ren Schmidt
3 * Copyright (c) 1994 Sean Eric Fagan
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 *    notice, this list of conditions and the following disclaimer
11 *    in this position and unchanged.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 *    notice, this list of conditions and the following disclaimer in the
14 *    documentation and/or other materials provided with the distribution.
15 * 3. The name of the author may not be used to endorse or promote products
16 *    derived from this software withough specific prior written permission
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 *	$Id: ibcs2_sysent.c,v 1.1 1994/10/14 08:53:10 sos Exp $
30 */
31
32#include <i386/ibcs2/ibcs2.h>
33#include <sys/param.h>
34#include <sys/systm.h>
35#include <sys/signal.h>
36#include <sys/sysent.h>
37
38#define NERR	80	/* XXX must match sys/errno.h */
39
40/* errno conversion tables */
41int bsd_to_svr3_errno[NERR] = {
42	  0,  1,  2,  3,  4,  5,  6,  7,  8,  9,
43	 10, 45, 12, 13, 14, 15, 16, 17, 18, 19,
44	 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
45	 30, 31, 32, 33, 34, 11, 91, 92, 93, 94,
46	 95, 96,118, 97, 98, 99,100,101,102,103,
47	104,105,106,107,108, 63,110,111,112,113,
48	114,115, 31, 78,116,117,145, 11, 11, 11,
49	  0, 66,  0,  0,  0,  0,  0, 46, 89,  0,
50};
51
52/* function defines */
53int	ibcs2_access();
54int	ibcs2_advfs();
55int	ibcs2_alarm();
56int	ibcs2_break();
57int	ibcs2_chdir();
58int	ibcs2_chmod();
59int	ibcs2_chown();
60int	ibcs2_chroot();
61int	ibcs2_cisc();
62int	ibcs2_clocal();
63int	ibcs2_close();
64int	ibcs2_creat();
65int	ibcs2_cxenix();
66int	ibcs2_dup();
67int	ibcs2_exec();
68int	ibcs2_exece();
69int	ibcs2_exit();
70int	ibcs2_fcntl();
71int	ibcs2_fork();
72int	ibcs2_fstat();
73int	ibcs2_fstatfs();
74int	ibcs2_fsync();
75int	ibcs2_getdents();
76int	ibcs2_getgid();
77int	ibcs2_getmsg();
78int	ibcs2_getpid();
79int	ibcs2_getuid();
80int	ibcs2_gtime();
81int	ibcs2_gtty();
82int	ibcs2_ioctl();
83int	ibcs2_kill();
84int	ibcs2_libattach();
85int	ibcs2_libdetach();
86int	ibcs2_link();
87int	ibcs2_lstat();
88int	ibcs2_mkdir();
89int	ibcs2_mknod();
90int	ibcs2_msgsys();
91int	ibcs2_nice();
92int	ibcs2_nosys();
93int	ibcs2_open();
94int	ibcs2_pause();
95int	ibcs2_pipe();
96int	ibcs2_plock();
97int	ibcs2_poll();
98int	ibcs2_procids();
99int	ibcs2_profil();
100int	ibcs2_ptrace();
101int	ibcs2_putmsg();
102int	ibcs2_read();
103int	ibcs2_readlink();
104int	ibcs2_rfdebug();
105int	ibcs2_rfstart();
106int	ibcs2_rfstop();
107int	ibcs2_rfsys();
108int	ibcs2_rmdir();
109int	ibcs2_rmount();
110int	ibcs2_rumount();
111int	ibcs2_secure();
112int	ibcs2_seek();
113int	ibcs2_semsys();
114int	ibcs2_setgid();
115int	ibcs2_setuid();
116int	ibcs2_shmsys();
117int	ibcs2_sigsys();
118int	ibcs2_smount();
119int	ibcs2_stat();
120int	ibcs2_statfs();
121int	ibcs2_stime();
122int	ibcs2_stty();
123int	ibcs2_sumount();
124int	ibcs2_symlink();
125int	ibcs2_sync();
126int	ibcs2_sysacct();
127int	ibcs2_sysfs();
128int	ibcs2_sysi86();
129int	ibcs2_times();
130int	ibcs2_uadmin();
131int	ibcs2_ulimit();
132int	ibcs2_umask();
133int	ibcs2_unadvfs();
134int	ibcs2_unlink();
135int	ibcs2_utime();
136int	ibcs2_utssys();
137int	ibcs2_wait();
138int	ibcs2_write();
139int	ibcs2_traceemu();		/* XXX */
140int	sigreturn();			/* XXX */
141
142/* ibcs2 svr3 sysent table */
143struct sysent svr3_sysent[] =
144{
145	0, ibcs2_nosys,			/*  0 = indir */
146	1, ibcs2_exit,			/*  1 = exit */
147	0, ibcs2_fork,			/*  2 = fork */
148	3, ibcs2_read,			/*  3 = read */
149	3, ibcs2_write,			/*  4 = write */
150	3, ibcs2_open,			/*  5 = open */
151	1, ibcs2_close,			/*  6 = close */
152	3, ibcs2_wait,			/*  7 = wait */
153	2, ibcs2_creat,			/*  8 = creat */
154	2, ibcs2_link,			/*  9 = link */
155	1, ibcs2_unlink,		/* 10 = unlink */
156	2, ibcs2_exec,			/* 11 = exec */
157	1, ibcs2_chdir,			/* 12 = chdir */
158	0, ibcs2_gtime,			/* 13 = time */
159	3, ibcs2_mknod,			/* 14 = mknod */
160	2, ibcs2_chmod,			/* 15 = chmod */
161	3, ibcs2_chown,			/* 16 = chown */
162	1, ibcs2_break,			/* 17 = break */
163	2, ibcs2_stat,			/* 18 = stat */
164	3, ibcs2_seek,			/* 19 = seek */
165	0, ibcs2_getpid,		/* 20 = getpid */
166	6, ibcs2_smount,		/* 21 = mount */
167	1, ibcs2_sumount,		/* 22 = umount */
168	1, ibcs2_setuid,		/* 23 = setuid */
169	0, ibcs2_getuid,		/* 24 = getuid */
170	1, ibcs2_stime,			/* 25 = stime */
171	4, ibcs2_ptrace,		/* 26 = ptrace */
172	1, ibcs2_alarm,			/* 27 = alarm */
173	2, ibcs2_fstat,			/* 28 = fstat */
174	0, ibcs2_pause,			/* 29 = pause */
175	2, ibcs2_utime,			/* 30 = utime */
176	2, ibcs2_stty,			/* 31 = stty */
177	2, ibcs2_gtty,			/* 32 = gtty */
178	2, ibcs2_access,		/* 33 = access */
179	1, ibcs2_nice,			/* 34 = nice */
180	4, ibcs2_statfs,		/* 35 = statfs */
181	0, ibcs2_sync,			/* 36 = sync */
182	2, ibcs2_kill,			/* 37 = kill */
183	4, ibcs2_fstatfs,		/* 38 = fstatfs */
184	1, ibcs2_procids,		/* 39 = procids */
185	5, ibcs2_cxenix,		/* 40 = XENIX special system call */
186	1, ibcs2_dup,			/* 41 = dup */
187	1, ibcs2_pipe,			/* 42 = pipe */
188	1, ibcs2_times,			/* 43 = times */
189	4, ibcs2_profil,		/* 44 = prof */
190	1, ibcs2_plock,			/* 45 = proc lock */
191	1, ibcs2_setgid,		/* 46 = setgid */
192	0, ibcs2_getgid,		/* 47 = getgid */
193	2, ibcs2_sigsys,		/* 48 = signal */
194	6, ibcs2_msgsys,		/* 49 = IPC message */
195	4, ibcs2_sysi86,               	/* 50 = i386-specific system call */
196	1, ibcs2_sysacct,		/* 51 = turn acct off/on */
197	4, ibcs2_shmsys,               	/* 52 = shared memory */
198	5, ibcs2_semsys,		/* 53 = IPC semaphores */
199	3, ibcs2_ioctl,			/* 54 = ioctl */
200	3, ibcs2_uadmin,		/* 55 = uadmin */
201	0, ibcs2_nosys,			/* 56 = reserved for exch */
202	3, ibcs2_utssys,		/* 57 = utssys */
203	1, ibcs2_fsync,			/* 58 = fsync */
204	3, ibcs2_exece,			/* 59 = exece */
205	1, ibcs2_umask,			/* 60 = umask */
206	1, ibcs2_chroot,		/* 61 = chroot */
207	3, ibcs2_fcntl,			/* 62 = fcntl */
208	2, ibcs2_ulimit,		/* 63 = ulimit */
209	0, ibcs2_nosys,			/* 64 = nosys */
210	0, ibcs2_nosys,			/* 65 = nosys */
211	0, ibcs2_nosys,			/* 66 = nosys */
212	0, ibcs2_nosys,			/* 67 = file locking call */
213	0, ibcs2_nosys,			/* 68 = local system calls */
214	0, ibcs2_nosys,			/* 69 = inode open */
215	4, ibcs2_advfs,			/* 70 = advfs */
216	1, ibcs2_unadvfs,		/* 71 = unadvfs */
217	4, ibcs2_rmount,		/* 72 = rmount */
218	1, ibcs2_rumount,		/* 73 = rumount */
219	5, ibcs2_rfstart,		/* 74 = rfstart */
220	0, ibcs2_nosys,			/* 75 = not used */
221	1, ibcs2_rfdebug, 	 	/* 76 = rfdebug */
222	0, ibcs2_rfstop,	  	/* 77 = rfstop */
223	6, ibcs2_rfsys,			/* 78 = rfsys */
224	1, ibcs2_rmdir,			/* 79 = rmdir */
225	2, ibcs2_mkdir,			/* 80 = mkdir */
226	4, ibcs2_getdents,		/* 81 = getdents */
227	3, ibcs2_libattach,		/* 82 = libattach */
228	1, ibcs2_libdetach,		/* 83 = libdetach */
229	3, ibcs2_sysfs,			/* 84 = sysfs */
230	4, ibcs2_getmsg,		/* 85 = getmsg */
231	4, ibcs2_putmsg,		/* 86 = putmsg */
232	3, ibcs2_poll,			/* 87 = poll */
233	0, ibcs2_nosys,			/* 88 = not used */
234	6, ibcs2_secure,		/* 89 = secureware */
235	2, ibcs2_symlink,		/* 90 = symlink */
236	2, ibcs2_lstat,			/* 91 = lstat */
237	3, ibcs2_readlink,		/* 92 = readlink */
238	0, ibcs2_nosys,			/* 93 = not used */
239	0, ibcs2_nosys,			/* 94 = not used */
240	0, ibcs2_nosys,			/* 95 = not used */
241	0, ibcs2_nosys,			/* 96 = not used */
242	0, ibcs2_nosys,			/* 97 = not used */
243	0, ibcs2_nosys,			/* 98 = not used */
244	0, ibcs2_nosys,			/* 99 = not used */
245	0, ibcs2_nosys,			/* 100 = not used */
246	0, ibcs2_nosys,			/* 101 = not used */
247	0, ibcs2_nosys,			/* 102 = not used */
248	1, sigreturn,			/* 103 = BSD sigreturn XXX */
249	0, ibcs2_nosys,			/* 104 = not used */
250	5, ibcs2_cisc,			/* 105 = ISC special */
251	0, ibcs2_nosys,			/* 106 = not used */
252	0, ibcs2_nosys,			/* 107 = not used */
253	0, ibcs2_nosys,			/* 108 = not used */
254	0, ibcs2_nosys,			/* 109 = not used */
255	0, ibcs2_nosys,			/* 110 = not used */
256	0, ibcs2_nosys,			/* 111 = not used */
257	0, ibcs2_nosys,			/* 112 = not used */
258	0, ibcs2_nosys,			/* 113 = not used */
259	0, ibcs2_nosys,			/* 114 = not used */
260	0, ibcs2_nosys,			/* 115 = not used */
261	0, ibcs2_nosys,			/* 116 = not used */
262	0, ibcs2_nosys,			/* 117 = not used */
263	0, ibcs2_nosys,			/* 118 = not used */
264	0, ibcs2_nosys,			/* 119 = not used */
265	0, ibcs2_nosys,			/* 120 = not used */
266	0, ibcs2_nosys,			/* 121 = not used */
267	0, ibcs2_nosys,			/* 122 = not used */
268	0, ibcs2_nosys,			/* 123 = not used */
269	0, ibcs2_nosys,			/* 124 = not used */
270	0, ibcs2_nosys,			/* 125 = not used */
271	1, ibcs2_traceemu,		/* 126 = ibcs2 emulator trace cntl */
272	5, ibcs2_clocal,		/* 127 = local system calls */
273};
274
275struct sysentvec ibcs2_svr3_sysvec = {
276	sizeof (svr3_sysent) / sizeof (svr3_sysent[0]),
277	svr3_sysent,
278	0x7F,
279	NSIG,
280	bsd_to_ibcs2_signal,
281	NERR,
282	bsd_to_svr3_errno
283};
284
285#if 0
286
287int	ibcs2_acancel();
288int	ibcs2_adjtime();
289int	ibcs2_context();
290int	ibcs2_evsys();
291int	ibcs2_evtrapret();
292int	ibcs2_fchdir();
293int	ibcs2_fchmod();
294int	ibcs2_fchown();
295int	ibcs2_fstatvfs();
296int	ibcs2_fxstat();
297int	ibcs2_getgroups();
298int	ibcs2_getpmsg();
299int	ibcs2_getrlimit();
300int	ibcs2_hrtsys();
301int	ibcs2_lchown();
302int	ibcs2_lxstat();
303int	ibcs2_memcntl();
304int	ibcs2_mincore();
305int	ibcs2_mmap();
306int	ibcs2_mprotect();
307int	ibcs2_munmap();
308int	ibcs2_pathconf();
309int	ibcs2_priocntlsys();
310int	ibcs2_putgmsg();
311int	ibcs2_readv();
312int	ibcs2_rename();
313int	ibcs2_setegid();
314int	ibcs2_seteuid();
315int	ibcs2_setgroups();
316int	ibcs2_setrlimit();
317int	ibcs2_sigaction();
318int	ibcs2_sigaltstack();
319int	ibcs2_sigpending();
320int	ibcs2_sigprocmask();
321int	ibcs2_sigsendsys();
322int	ibcs2_sigsuspend();
323int	ibcs2_statvfs();
324int	ibcs2_sysconfig();
325int	ibcs2_systeminfo();
326int	ibcs2_vfork();
327int	ibcs2_waitsys();
328int	ibcs2_writev();
329int	ibcs2_xmknod();
330int	ibcs2_xstat();
331
332int bsd_to_svr4_errno[NERR] = {
333	  0,  1,  2,  3,  4,  5,  6,  7,  8,  9,
334	 10, 45, 12, 13, 14, 15, 16, 17, 18, 19,
335	 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
336	 30, 31, 32, 33, 34, 11,150,149, 95, 96,
337	 97, 98, 99,120,121,122,123,124,125,126,
338	127,128,129,130,131,132,133,134,143,144,
339	145,146, 90, 78,147,148, 93, 11, 94, 11,
340	  0,  0,  0,  0,  0,  0,  0, 46, 89,  0,
341};
342
343/* ibcs2 svr4 sysent table */
344struct sysent svr4_sysent[] =
345{
346	0, ibcs2_nosys,			/*  0 = indir */
347	1, ibcs2_exit,			/*  1 = exit */
348	0, ibcs2_fork,			/*  2 = fork */
349	3, ibcs2_read,			/*  3 = read */
350	3, ibcs2_write,			/*  4 = write */
351	3, ibcs2_open,			/*  5 = open */
352	1, ibcs2_close,			/*  6 = close */
353	3, ibcs2_wait,			/*  7 = wait */
354	2, ibcs2_creat,			/*  8 = creat */
355	2, ibcs2_link,			/*  9 = link */
356	1, ibcs2_unlink,		/* 10 = unlink */
357	2, ibcs2_exec,			/* 11 = exec */
358	1, ibcs2_chdir,			/* 12 = chdir */
359	0, ibcs2_gtime,			/* 13 = time */
360	3, ibcs2_mknod,			/* 14 = mknod */
361	2, ibcs2_chmod,			/* 15 = chmod */
362	3, ibcs2_chown,			/* 16 = chown */
363	1, ibcs2_break,			/* 17 = break */
364	2, ibcs2_stat,			/* 18 = stat */
365	3, ibcs2_seek,			/* 19 = seek */
366	0, ibcs2_getpid,		/* 20 = getpid */
367	6, ibcs2_smount,		/* 21 = mount */
368	1, ibcs2_sumount,		/* 22 = umount */
369	1, ibcs2_setuid,		/* 23 = setuid */
370	0, ibcs2_getuid,		/* 24 = getuid */
371	1, ibcs2_stime,			/* 25 = stime */
372	4, ibcs2_ptrace,		/* 26 = ptrace */
373	1, ibcs2_alarm,			/* 27 = alarm */
374	2, ibcs2_fstat,			/* 28 = fstat */
375	0, ibcs2_pause,			/* 29 = pause */
376	2, ibcs2_utime,			/* 30 = utime */
377	2, ibcs2_stty,			/* 31 = stty */
378	2, ibcs2_gtty,			/* 32 = gtty */
379	2, ibcs2_access,		/* 33 = access */
380	1, ibcs2_nice,			/* 34 = nice */
381	4, ibcs2_statfs,		/* 35 = statfs */
382	0, ibcs2_sync,			/* 36 = sync */
383	2, ibcs2_kill,			/* 37 = kill */
384	4, ibcs2_fstatfs,		/* 38 = fstatfs */
385	1, ibcs2_procids,		/* 39 = procids */
386	5, ibcs2_cxenix,		/* 40 = XENIX special system call */
387	1, ibcs2_dup,			/* 41 = dup */
388	1, ibcs2_pipe,			/* 42 = pipe */
389	1, ibcs2_times,			/* 43 = times */
390	4, ibcs2_profil,		/* 44 = prof */
391	1, ibcs2_plock,			/* 45 = proc lock */
392	1, ibcs2_setgid,		/* 46 = setgid */
393	0, ibcs2_getgid,		/* 47 = getgid */
394	2, ibcs2_sigsys,		/* 48 = signal */
395	6, ibcs2_msgsys,		/* 49 = IPC message */
396	4, ibcs2_sysi86,               	/* 50 = i386-specific system call */
397	1, ibcs2_sysacct,		/* 51 = turn acct off/on */
398	4, ibcs2_shmsys,               	/* 52 = shared memory */
399	5, ibcs2_semsys,		/* 53 = IPC semaphores */
400	3, ibcs2_ioctl,			/* 54 = ioctl */
401	3, ibcs2_uadmin,		/* 55 = uadmin */
402	0, ibcs2_nosys,			/* 56 = reserved for exch */
403	3, ibcs2_utssys,		/* 57 = utssys */
404	1, ibcs2_fsync,			/* 58 = fsync */
405	3, ibcs2_exece,			/* 59 = exece */
406	1, ibcs2_umask,			/* 60 = umask */
407	1, ibcs2_chroot,		/* 61 = chroot */
408	3, ibcs2_fcntl,			/* 62 = fcntl */
409	2, ibcs2_ulimit,		/* 63 = ulimit */
410	0, ibcs2_nosys,			/* 64 = nosys */
411	0, ibcs2_nosys,			/* 65 = nosys */
412	0, ibcs2_nosys,			/* 66 = nosys */
413	0, ibcs2_nosys,			/* 67 = file locking call */
414	0, ibcs2_nosys,			/* 68 = local system calls */
415	0, ibcs2_nosys,			/* 69 = inode open */
416	4, ibcs2_advfs,			/* 70 = advfs */
417	1, ibcs2_unadvfs,		/* 71 = unadvfs */
418	4, ibcs2_rmount,		/* 72 = rmount */
419	1, ibcs2_rumount,		/* 73 = rumount */
420	5, ibcs2_rfstart,		/* 74 = rfstart */
421	0, ibcs2_nosys,			/* 75 = not used */
422	1, ibcs2_rfdebug, 	 	/* 76 = rfdebug */
423	0, ibcs2_rfstop,	  	/* 77 = rfstop */
424	6, ibcs2_rfsys,			/* 78 = rfsys */
425	1, ibcs2_rmdir,			/* 79 = rmdir */
426	2, ibcs2_mkdir,			/* 80 = mkdir */
427	4, ibcs2_getdents,		/* 81 = getdents */
428	3, ibcs2_libattach,		/* 82 = libattach */
429	1, ibcs2_libdetach,		/* 83 = libdetach */
430	3, ibcs2_sysfs,			/* 84 = sysfs */
431	4, ibcs2_getmsg,		/* 85 = getmsg */
432	4, ibcs2_putmsg,		/* 86 = putmsg */
433	3, ibcs2_poll,			/* 87 = poll */
434	6, ibcs2_lstat,			/* 88 = lstat */
435	2, ibcs2_symlink,		/* 89 = symlink */
436	3, ibcs2_readlink,		/* 90 = readlink */
437	2, ibcs2_setgroups,		/* 91 = setgroups */
438	2, ibcs2_getgroups,		/* 92 = getgroups */
439	2, ibcs2_fchmod,		/* 93 = fchmod */
440	3, ibcs2_fchown,		/* 94 = fchown */
441	3, ibcs2_sigprocmask,		/* 95 = sigprocmask */
442	0, ibcs2_sigsuspend,		/* 96 = sigsuspend */
443	2, ibcs2_sigaltstack,		/* 97 = sigaltstack */
444	3, ibcs2_sigaction,		/* 98 = sigaction */
445	1, ibcs2_sigpending,		/* 99 = sigpending */
446	0, ibcs2_context,		/* 100 = context */
447	0, ibcs2_evsys,			/* 101 = evsys */
448	0, ibcs2_evtrapret,		/* 102 = evtrapret */
449	0, ibcs2_statvfs,		/* 103 = statvfs */
450	0, ibcs2_fstatvfs,		/* 104 = fstatvfs */
451	5, ibcs2_cisc,			/* 105 = ISC special */
452	0, ibcs2_nfssys,		/* 106 = nfssys */
453	0, ibcs2_waitsys,		/* 107 = waitsys */
454	0, ibcs2_sigsendsys,		/* 108 = sigsendsys */
455	0, ibcs2_hrtsys,		/* 109 = hrtsys */
456	0, ibcs2_acancel,		/* 110 = acancel */
457	0, ibcs2_async,			/* 111 = async */
458	0, ibcs2_priocntlsys,		/* 112 = priocntlsys */
459	0, ibcs2_pathconf,		/* 113 = pathconf */
460	0, ibcs2_mincore,		/* 114 = mincore */
461	6, ibcs2_mmap,			/* 115 = mmap */
462	3, ibcs2_mprotect,		/* 116 = mprotect */
463	2, ibcs2_munmap,		/* 117 = munmap */
464	0, ibcs2_pathconf,		/* 118 = fpathconf */
465	0, ibcs2_vfork,			/* 119 = vfork */
466	0, ibcs2_fchdir,		/* 120 = fchdir */
467	0, ibcs2_readv,			/* 121 = readv */
468	0, ibcs2_writev,		/* 122 = writev */
469	3, ibcs2_xstat,			/* 123 = xstat */
470	3, ibcs2_lxstat,		/* 124 = lxstat */
471	3, ibcs2_fxstat,		/* 125 = fxstat */
472	4, ibcs2_xmknod,		/* 126 = xmknod */
473	5, ibcs2_clocal,		/* 127 = local system calls */
474	0, ibcs2_setrlimit,		/* 128 = setrlimit */
475	0, ibcs2_getrlimit,		/* 129 = getrlimit */
476	0, ibcs2_lchown,		/* 130 = lchown */
477	0, ibcs2_memcntl,		/* 131 = memcntl */
478	0, ibcs2_getpmsg,		/* 132 = getpmsg */
479	0, ibcs2_putgmsg,		/* 133 = putgmsg */
480	2, ibcs2_rename,		/* 134 = rename */
481	1, ibcs2_uname,			/* 135 = uname */
482	0, ibcs2_setegid,		/* 136 = setegid */
483	0, ibcs2_sysconfig,		/* 137 = sysconfig */
484	0, ibcs2_adjtime,		/* 138 = adjtime */
485	0, ibcs2_systeminfo,		/* 139 = systeminfo */
486	0, ibcs2_nosys,			/* 140 = not used */
487	0, ibcs2_seteuid,		/* 141 = seteuid */
488};
489
490struct sysentvec ibcs2_svr4_sysvec = {
491	sizeof (svr4_sysent) / sizeof (svr4_sysent[0]),
492	svr4_sysent,
493	0xFF,
494	NSIG,
495	bsd_to_ibcs2_signal,
496	NERR,
497	bsd_to_svr4_errno
498};
499
500#endif
501