summaryrefslogtreecommitdiff
path: root/sys/compat/ultrix/ultrix_sysent.c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1995-12-26 20:23:43 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1995-12-26 20:23:43 +0000
commit1761d011b4a83a9818c0a207dae66dbcbf764e69 (patch)
tree1fd597a50c1a17327c0c3581a4b8a38b15b30ea9 /sys/compat/ultrix/ultrix_sysent.c
parent9d7e2bf74d251f8245c717a45d446a0da7f6639b (diff)
from netbsd:
Add emulation of Ultrix select: before calling native sys_select(), limit the number of FDs to select on to the maximum supported by NetBSD -- which is as many FDs as the emul_ultrix process can have open, anyway. Add emulation of Ultrix getmnt(2) in ultrix_fs.c Add partial emulation of Ultrix tty ioctl()s in ultrix_ioctl.c, derived from compat/sunos/sunos_ioctl.c. Ultrix libc's ``isatty()'' now works in compat_emul processes. Fix ultrix_sys_select() entry. Add emulation of ultrix mount(2). Sufficient to NFS-mount filesystems using a NetBSD kernel in an ultrix root filesystem. Move wait emulation to the old (v7) wait syscall number, as that's what the Ultrix ufs_mount binary uses.
Diffstat (limited to 'sys/compat/ultrix/ultrix_sysent.c')
-rw-r--r--sys/compat/ultrix/ultrix_sysent.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/sys/compat/ultrix/ultrix_sysent.c b/sys/compat/ultrix/ultrix_sysent.c
index fdf44822eb1..13a53958973 100644
--- a/sys/compat/ultrix/ultrix_sysent.c
+++ b/sys/compat/ultrix/ultrix_sysent.c
@@ -48,7 +48,7 @@ struct sysent ultrix_sysent[] = {
{ 1, s(struct sys_close_args),
sys_close }, /* 6 = close */
{ 0, 0,
- sys_nosys }, /* 7 = unimplemented old_wait */
+ compat_43_sys_wait }, /* 7 = owait */
{ 2, s(struct compat_43_sys_creat_args),
compat_43_sys_creat }, /* 8 = creat */
{ 2, s(struct sys_link_args),
@@ -75,8 +75,8 @@ struct sysent ultrix_sysent[] = {
compat_43_sys_lseek }, /* 19 = lseek */
{ 0, 0,
sys_getpid }, /* 20 = getpid */
- { 0, 0,
- sys_nosys }, /* 21 = obsolete mount */
+ { 5, s(struct ultrix_sys_mount_args),
+ ultrix_sys_mount }, /* 21 = mount */
{ 0, 0,
sys_nosys }, /* 22 = obsolete sysV_unmount */
{ 1, s(struct sys_setuid_args),
@@ -141,8 +141,8 @@ struct sysent ultrix_sysent[] = {
sys_nosys }, /* 52 = unimplemented */
{ 0, 0,
sys_nosys }, /* 53 = unimplemented syslock */
- { 3, s(struct sys_ioctl_args),
- sys_ioctl }, /* 54 = ioctl */
+ { 3, s(struct ultrix_sys_ioctl_args),
+ ultrix_sys_ioctl }, /* 54 = ioctl */
{ 1, s(struct sys_reboot_args),
sys_reboot }, /* 55 = reboot */
{ 0, 0,
@@ -219,8 +219,8 @@ struct sysent ultrix_sysent[] = {
sys_nosys }, /* 91 = unimplemented getdopt */
{ 3, s(struct sys_fcntl_args),
sys_fcntl }, /* 92 = fcntl */
- { 5, s(struct sys_select_args),
- sys_select }, /* 93 = select */
+ { 5, s(struct ultrix_sys_select_args),
+ ultrix_sys_select }, /* 93 = select */
{ 0, 0,
sys_nosys }, /* 94 = unimplemented setdopt */
{ 1, s(struct sys_fsync_args),
@@ -386,7 +386,7 @@ struct sysent ultrix_sysent[] = {
{ 2, s(struct ultrix_sys_exportfs_args),
ultrix_sys_exportfs }, /* 169 = exportfs */
{ 0, 0,
- sys_nosys }, /* 170 = unimplemented mount */
+ sys_nosys }, /* 170 = unimplemented { int ultrix_sys_mount ( char * special , char * dir , int rdonly , int type , caddr_t data ) ; } */
{ 0, 0,
sys_nosys }, /* 171 = unimplemented 4 hdwconf */
{ 0, 0,
@@ -413,8 +413,8 @@ struct sysent ultrix_sysent[] = {
sys_nosys }, /* 182 = unimplemented 0 lockf */
{ 2, s(struct ultrix_sys_ustat_args),
ultrix_sys_ustat }, /* 183 = ustat */
- { 0, 0,
- sys_nosys }, /* 184 = unimplemented getmnt */
+ { 5, s(struct ultrix_sys_getmnt_args),
+ ultrix_sys_getmnt }, /* 184 = getmnt */
{ 0, 0,
sys_nosys }, /* 185 = unimplemented notdef */
{ 0, 0,