diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 1995-12-26 20:23:43 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 1995-12-26 20:23:43 +0000 |
commit | 1761d011b4a83a9818c0a207dae66dbcbf764e69 (patch) | |
tree | 1fd597a50c1a17327c0c3581a4b8a38b15b30ea9 /sys/compat/ultrix/ultrix_sysent.c | |
parent | 9d7e2bf74d251f8245c717a45d446a0da7f6639b (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.c | 20 |
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, |