diff options
| author | manu <manu@NetBSD.org> | 2006-08-25 08:25:03 +0000 |
|---|---|---|
| committer | manu <manu@NetBSD.org> | 2006-08-25 08:25:03 +0000 |
| commit | 01f2e16aa80f6c3751e1c19267836bfc08e99705 (patch) | |
| tree | dbb184cde64e22a27952737b715d1593dc10bb67 /sys/compat/linux32/common/linux32_ioctl.c | |
| parent | 4f9577ff1dcba8e8dac5d8f1822082dbbe97f99f (diff) | |
Add support for socket ioctl.
Diffstat (limited to 'sys/compat/linux32/common/linux32_ioctl.c')
| -rw-r--r-- | sys/compat/linux32/common/linux32_ioctl.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/sys/compat/linux32/common/linux32_ioctl.c b/sys/compat/linux32/common/linux32_ioctl.c index 052bf1c5b2e..950d7a5b4f0 100644 --- a/sys/compat/linux32/common/linux32_ioctl.c +++ b/sys/compat/linux32/common/linux32_ioctl.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_ioctl.c,v 1.2 2006/02/15 09:31:17 manu Exp $ */ +/* $NetBSD: linux32_ioctl.c,v 1.3 2006/08/25 08:25:03 manu Exp $ */ /*- * Copyright (c) 2006 Emmanuel Dreyfus, all rights reserved. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux32_ioctl.c,v 1.2 2006/02/15 09:31:17 manu Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux32_ioctl.c,v 1.3 2006/08/25 08:25:03 manu Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -53,6 +53,9 @@ __KERNEL_RCSID(0, "$NetBSD: linux32_ioctl.c,v 1.2 2006/02/15 09:31:17 manu Exp $ #include <compat/linux32/common/linux32_sysctl.h> #include <compat/linux32/linux32_syscallargs.h> +extern int linux_ioctl_socket(struct lwp *, + struct linux_sys_ioctl_args *, register_t *); + int linux32_sys_ioctl(l, v, retval) struct lwp *l; @@ -76,6 +79,15 @@ linux32_sys_ioctl(l, v, retval) case 'T': error = linux32_ioctl_termios(l, uap, retval); break; + case 0x89: { + struct linux_sys_ioctl_args cup; + + SCARG(&cup, fd) = SCARG(uap, fd); + SCARG(&cup, com) = (u_long)SCARG(uap, com); + SCARG(&cup, data) = (caddr_t)(u_long)SCARG(uap, data); + error = linux_ioctl_socket(l, &cup, retval); + break; + } default: printf("Not yet implemented ioctl group \'%c\'\n", group); error = EINVAL; |
