summaryrefslogtreecommitdiff
path: root/sys/compat/linux/common
diff options
context:
space:
mode:
authordsl <dsl@NetBSD.org>2009-11-28 22:11:42 +0000
committerdsl <dsl@NetBSD.org>2009-11-28 22:11:42 +0000
commitea4ea02d98eba2e67dc5d45fd8d866cafc00e497 (patch)
treeb917c90b2d9b898a3e28c2df3d7ab1a008bf6cf3 /sys/compat/linux/common
parentd671d748d9163e2ce048f348670542badb74435d (diff)
Add LINUX_SIOCGIFMTU and LINUX_IP_HDRINCL support.
Fixes part of PR/31358 The other parts are rather too intrusive to be fixed as in the PR.
Diffstat (limited to 'sys/compat/linux/common')
-rw-r--r--sys/compat/linux/common/linux_socket.c9
-rw-r--r--sys/compat/linux/common/linux_socket.h3
-rw-r--r--sys/compat/linux/common/linux_sockio.h3
3 files changed, 11 insertions, 4 deletions
diff --git a/sys/compat/linux/common/linux_socket.c b/sys/compat/linux/common/linux_socket.c
index 4c3b64d7dbe..721a0682e65 100644
--- a/sys/compat/linux/common/linux_socket.c
+++ b/sys/compat/linux/common/linux_socket.c
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_socket.c,v 1.106 2009/11/13 22:39:35 joerg Exp $ */
+/* $NetBSD: linux_socket.c,v 1.107 2009/11/28 22:11:42 dsl Exp $ */
/*-
* Copyright (c) 1995, 1998, 2008 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_socket.c,v 1.106 2009/11/13 22:39:35 joerg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_socket.c,v 1.107 2009/11/28 22:11:42 dsl Exp $");
#if defined(_KERNEL_OPT)
#include "opt_inet.h"
@@ -849,6 +849,8 @@ linux_to_bsd_ip_sockopt(int lopt)
return IP_TOS;
case LINUX_IP_TTL:
return IP_TTL;
+ case LINUX_IP_HDRINCL:
+ return IP_HDRINCL;
case LINUX_IP_MULTICAST_TTL:
return IP_MULTICAST_TTL;
case LINUX_IP_MULTICAST_LOOP:
@@ -1275,6 +1277,9 @@ linux_ioctl_socket(struct lwp *l, const struct linux_sys_ioctl_args *uap, regist
case LINUX_SIOCGIFNETMASK:
SCARG(&ia, com) = OOSIOCGIFNETMASK;
break;
+ case LINUX_SIOCGIFMTU:
+ SCARG(&ia, com) = OSIOCGIFMTU;
+ break;
case LINUX_SIOCADDMULTI:
SCARG(&ia, com) = OSIOCADDMULTI;
break;
diff --git a/sys/compat/linux/common/linux_socket.h b/sys/compat/linux/common/linux_socket.h
index b973be9a9f5..248234f4149 100644
--- a/sys/compat/linux/common/linux_socket.h
+++ b/sys/compat/linux/common/linux_socket.h
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_socket.h,v 1.18 2009/06/17 14:18:51 njoly Exp $ */
+/* $NetBSD: linux_socket.h,v 1.19 2009/11/28 22:11:42 dsl Exp $ */
/*-
* Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
@@ -103,6 +103,7 @@
#define LINUX_IP_TOS 1
#define LINUX_IP_TTL 2
+#define LINUX_IP_HDRINCL 3
#define LINUX_IP_MULTICAST_IF 32
#define LINUX_IP_MULTICAST_TTL 33
#define LINUX_IP_MULTICAST_LOOP 34
diff --git a/sys/compat/linux/common/linux_sockio.h b/sys/compat/linux/common/linux_sockio.h
index f9ed3a10152..cb51bbd3664 100644
--- a/sys/compat/linux/common/linux_sockio.h
+++ b/sys/compat/linux/common/linux_sockio.h
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_sockio.h,v 1.17 2009/11/13 21:45:03 joerg Exp $ */
+/* $NetBSD: linux_sockio.h,v 1.18 2009/11/28 22:11:42 dsl Exp $ */
/*-
* Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
@@ -41,6 +41,7 @@
#define LINUX_SIOCGIFDSTADDR _LINUX_IO(0x89, 0x17)
#define LINUX_SIOCGIFBRDADDR _LINUX_IO(0x89, 0x19)
#define LINUX_SIOCGIFNETMASK _LINUX_IO(0x89, 0x1b)
+#define LINUX_SIOCGIFMTU _LINUX_IO(0x89, 0x21)
#define LINUX_SIOCADDMULTI _LINUX_IO(0x89, 0x31)
#define LINUX_SIOCDELMULTI _LINUX_IO(0x89, 0x32)
#define LINUX_SIOCGIFHWADDR _LINUX_IO(0x89, 0x27)