Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/compat/linux Update linux socket socket options (SO_*). ...



details:   https://anonhg.NetBSD.org/src/rev/5ec14825f023
branches:  trunk
changeset: 326310:5ec14825f023
user:      njoly <njoly%NetBSD.org@localhost>
date:      Sat Jan 25 13:49:27 2014 +0000

description:
Update linux socket socket options (SO_*). Add common version to its
own file (linux_socket_generic.h); use it for all but alpha and mips.

diffstat:

 sys/compat/linux/arch/alpha/linux_socket.h     |  49 +++++++++-----
 sys/compat/linux/arch/amd64/linux_socket.h     |  25 +-------
 sys/compat/linux/arch/arm/linux_socket.h       |  45 +-------------
 sys/compat/linux/arch/i386/linux_socket.h      |  45 +-------------
 sys/compat/linux/arch/m68k/linux_socket.h      |  45 +-------------
 sys/compat/linux/arch/mips/linux_socket.h      |  44 +++++++++----
 sys/compat/linux/arch/powerpc/linux_socket.h   |  46 ++------------
 sys/compat/linux/common/linux_socket_generic.h |  81 ++++++++++++++++++++++++++
 8 files changed, 159 insertions(+), 221 deletions(-)

diffs (truncated from 504 to 300 lines):

diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/alpha/linux_socket.h
--- a/sys/compat/linux/arch/alpha/linux_socket.h        Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/alpha/linux_socket.h        Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.4 2008/04/28 20:23:42 martin Exp $  */
+/*     $NetBSD: linux_socket.h,v 1.5 2014/01/25 13:49:27 njoly Exp $   */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -50,30 +50,43 @@
 #define LINUX_SO_BROADCAST     0x0020
 #define LINUX_SO_LINGER                0x0080
 #define LINUX_SO_OOBINLINE     0x0100
-#define LINUX_SO_REUSEPORT     0x0200
-#define LINUX_SO_TYPE          0x1008
-#define LINUX_SO_ERROR         0x1007
+/* #define LINUX_SO_REUSEPORT  0x0200 */
 #define LINUX_SO_SNDBUF                0x1001
 #define LINUX_SO_RCVBUF                0x1002
+#define LINUX_SO_ERROR         0x1007
+#define LINUX_SO_TYPE          0x1008
+#define LINUX_SO_SNDBUFFORCE   0x100a
+#define LINUX_SO_RCVBUFFORCE   0x100b
+#define LINUX_SO_RCVLOWAT      0x1010
+#define LINUX_SO_SNDLOWAT      0x1011
+#define LINUX_SO_RCVTIMEO      0x1012
+#define LINUX_SO_SNDTIMEO      0x1013
+#define LINUX_SO_ACCEPTCONN    0x1014
+#define LINUX_SO_PROTOCOL      0x1028
+#define LINUX_SO_DOMAIN                0x1029
 
 #define LINUX_SO_NO_CHECK      11
 #define LINUX_SO_PRIORITY      12
-
-/* currently unused: */
-#define LINUX_SO_RCVLOWAT              0x1010
-#define LINUX_SO_SNDLOWAT              0x1011
-#define LINUX_SO_RCVTIMEO              0x1012
-#define LINUX_SO_SNDTIMEO              0x1013
-#define LINUX_SO_BSDCOMPAT             14
-#define LINUX_SO_PASSCRED              17
-#define LINUX_SO_PEERCRED              18
+#define LINUX_SO_BSDCOMPAT     14
+#define LINUX_SO_PASSCRED      17
+#define LINUX_SO_PEERCRED      18
 #define LINUX_SO_SECURITY_AUTHENTICATION       19
 #define LINUX_SO_SECURITY_ENCRYPTION_TRANSPORT 20
 #define LINUX_SO_SECURITY_ENCRYPTION_NETWORK   21
-#define LINUX_SO_BINDTODEVICE          25
-#define LINUX_SO_ATTACH_FILTER         26
-#define LINUX_SO_DETACH_FILTER         27
-#define LINUX_SO_PEERNAME              28
-#define LINUX_SO_TIMESTAMP             29
+#define LINUX_SO_BINDTODEVICE  25
+#define LINUX_SO_ATTACH_FILTER 26
+#define LINUX_SO_DETACH_FILTER 27
+#define LINUX_SO_GET_FILTER    LINUX_SO_ATTACH_FILTER
+#define LINUX_SO_PEERNAME      28
+#define LINUX_SO_TIMESTAMP     29
+#define LINUX_SO_PEERSEC       30
+#define LINUX_SO_PASSSEC       34
+#define LINUX_SO_TIMESTAMPNS   35
+#define LINUX_SO_MARK          36
+#define LINUX_SO_TIMESTAMPING  37
+#define LINUX_SO_RXQ_OVFL      40
+#define LINUX_SO_WIFI_STATUS   41
+#define LINUX_SO_PEEK_OFF      42
+#define LINUX_SO_NOFCS         43
 
 #endif /* !_ALPHA_LINUX_SOCKET_H */
diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/amd64/linux_socket.h
--- a/sys/compat/linux/arch/amd64/linux_socket.h        Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/amd64/linux_socket.h        Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.2 2005/12/11 12:20:14 christos Exp $ */
+/*     $NetBSD: linux_socket.h,v 1.3 2014/01/25 13:49:27 njoly Exp $ */
 
 /*-
  * Copyright (c) 2005 Emmanuel Dreyfus, all rights reserved.
@@ -34,27 +34,6 @@
 #ifndef _AMD64_LINUX_SOCKET_H
 #define _AMD64_LINUX_SOCKET_H
 
-#define LINUX_SOL_SOCKET       1
-
-#define LINUX_SO_DEBUG         1
-#define LINUX_SO_REUSEADDR     2
-#define LINUX_SO_TYPE          3
-#define LINUX_SO_ERROR         4
-#define LINUX_SO_DONTROUTE     5
-#define LINUX_SO_BROADCAST     6
-#define LINUX_SO_SNDBUF                7
-#define LINUX_SO_RCVBUF                8
-#define LINUX_SO_KEEPALIVE     9
-#define LINUX_SO_OOBINLINE     10
-#define LINUX_SO_NO_CHECK      11
-#define LINUX_SO_PRIORITY      12
-#define LINUX_SO_LINGER                13
-#define LINUX_SO_BSDCOMPAT     14
-#define LINUX_SO_PASSCRED      16
-#define LINUX_SO_PEERCRED      17
-#define LINUX_SO_RCVLOWAT      18
-#define LINUX_SO_SNDLOWAT      19
-#define LINUX_SO_RCVTIMEO      20
-#define LINUX_SO_SNDTIMEO      21
+#include <compat/linux/common/linux_socket_generic.h>
 
 #endif /* !_AMD64_LINUX_SOCKET_H */
diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/arm/linux_socket.h
--- a/sys/compat/linux/arch/arm/linux_socket.h  Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/arm/linux_socket.h  Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.4 2008/04/28 20:23:42 martin Exp $  */
+/*     $NetBSD: linux_socket.h,v 1.5 2014/01/25 13:49:27 njoly Exp $   */
 
 /*-
  * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
@@ -32,47 +32,6 @@
 #ifndef _ARM_LINUX_SOCKET_H
 #define _ARM_LINUX_SOCKET_H
 
-/*
- * Option levels for [gs]etsockopt(2).  Only SOL_SOCKET is different,
- * the rest matches IPPROTO_XXX
- */
-#define LINUX_SOL_SOCKET       1
-
-/*
- * Options for [gs]etsockopt(2), socket level.  For Linux, thay
- * are not masks, but just increasing numbers.
- */
-
-#define LINUX_SO_DEBUG         1
-#define LINUX_SO_REUSEADDR     2
-#define LINUX_SO_TYPE          3
-#define LINUX_SO_ERROR         4
-#define LINUX_SO_DONTROUTE     5
-#define LINUX_SO_BROADCAST     6
-#define LINUX_SO_SNDBUF                7
-#define LINUX_SO_RCVBUF                8
-#define LINUX_SO_KEEPALIVE     9
-#define LINUX_SO_OOBINLINE     10
-#define LINUX_SO_NO_CHECK      11
-#define LINUX_SO_PRIORITY      12
-#define LINUX_SO_LINGER                13
-
-/* unused: */
-#define LINUX_SO_BSDCOMPAT     14
-#define LINUX_SO_REUSEPORT     15      /* undef in Linux */
-#define LINUX_SO_PASSCRED      16
-#define LINUX_SO_PEERCRED      17
-#define LINUX_SO_RCVLOWAT      18
-#define LINUX_SO_SNDLOWAT      19
-#define LINUX_SO_RCVTIMEO      20
-#define LINUX_SO_SNDTIMEO      21
-#define LINUX_SO_SECURITY_AUTHENTICATION       22
-#define LINUX_SO_SECURITY_ENCRYPTION_TRANSPORT 23
-#define LINUX_SO_SECURITY_ENCRYPTION_NETWORK   24
-#define LINUX_SO_BINDTODEVICE  25
-#define LINUX_SO_ATTACH_FILTER 26
-#define LINUX_SO_DETACH_FILTER 27
-#define LINUX_SO_PEERNAME      28
-#define LINUX_SO_TIMESTAMP     29
+#include <compat/linux/common/linux_socket_generic.h>
 
 #endif /* !_ARM_LINUX_SOCKET_H */
diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/i386/linux_socket.h
--- a/sys/compat/linux/arch/i386/linux_socket.h Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/i386/linux_socket.h Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.8 2008/04/28 20:23:42 martin Exp $  */
+/*     $NetBSD: linux_socket.h,v 1.9 2014/01/25 13:49:27 njoly Exp $   */
 
 /*-
  * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
@@ -32,47 +32,6 @@
 #ifndef _I386_LINUX_SOCKET_H
 #define _I386_LINUX_SOCKET_H
 
-/*
- * Option levels for [gs]etsockopt(2).  Only SOL_SOCKET is different,
- * the rest matches IPPROTO_XXX
- */
-#define LINUX_SOL_SOCKET       1
-
-/*
- * Options for [gs]etsockopt(2), socket level.  For Linux, thay
- * are not masks, but just increasing numbers.
- */
-
-#define LINUX_SO_DEBUG         1
-#define LINUX_SO_REUSEADDR     2
-#define LINUX_SO_TYPE          3
-#define LINUX_SO_ERROR         4
-#define LINUX_SO_DONTROUTE     5
-#define LINUX_SO_BROADCAST     6
-#define LINUX_SO_SNDBUF                7
-#define LINUX_SO_RCVBUF                8
-#define LINUX_SO_KEEPALIVE     9
-#define LINUX_SO_OOBINLINE     10
-#define LINUX_SO_NO_CHECK      11
-#define LINUX_SO_PRIORITY      12
-#define LINUX_SO_LINGER                13
-
-/* unused: */
-#define LINUX_SO_BSDCOMPAT     14
-#define LINUX_SO_REUSEPORT     15      /* undef in Linux */
-#define LINUX_SO_PASSCRED      16
-#define LINUX_SO_PEERCRED      17
-#define LINUX_SO_RCVLOWAT      18
-#define LINUX_SO_SNDLOWAT      19
-#define LINUX_SO_RCVTIMEO      20
-#define LINUX_SO_SNDTIMEO      21
-#define LINUX_SO_SECURITY_AUTHENTICATION       22
-#define LINUX_SO_SECURITY_ENCRYPTION_TRANSPORT 23
-#define LINUX_SO_SECURITY_ENCRYPTION_NETWORK   24
-#define LINUX_SO_BINDTODEVICE  25
-#define LINUX_SO_ATTACH_FILTER 26
-#define LINUX_SO_DETACH_FILTER 27
-#define LINUX_SO_PEERNAME      28
-#define LINUX_SO_TIMESTAMP     29
+#include <compat/linux/common/linux_socket_generic.h>
 
 #endif /* !_I386_LINUX_SOCKET_H */
diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/m68k/linux_socket.h
--- a/sys/compat/linux/arch/m68k/linux_socket.h Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/m68k/linux_socket.h Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.4 2008/04/28 20:23:42 martin Exp $  */
+/*     $NetBSD: linux_socket.h,v 1.5 2014/01/25 13:49:27 njoly Exp $   */
 
 /*-
  * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
@@ -32,47 +32,6 @@
 #ifndef _M68K_LINUX_SOCKET_H
 #define _M68K_LINUX_SOCKET_H
 
-/*
- * Option levels for [gs]etsockopt(2).  Only SOL_SOCKET is different,
- * the rest matches IPPROTO_XXX
- */
-#define LINUX_SOL_SOCKET       1
-
-/*
- * Options for [gs]etsockopt(2), socket level.  For Linux, thay
- * are not masks, but just increasing numbers.
- */
-
-#define LINUX_SO_DEBUG         1
-#define LINUX_SO_REUSEADDR     2
-#define LINUX_SO_TYPE          3
-#define LINUX_SO_ERROR         4
-#define LINUX_SO_DONTROUTE     5
-#define LINUX_SO_BROADCAST     6
-#define LINUX_SO_SNDBUF                7
-#define LINUX_SO_RCVBUF                8
-#define LINUX_SO_KEEPALIVE     9
-#define LINUX_SO_OOBINLINE     10
-#define LINUX_SO_NO_CHECK      11
-#define LINUX_SO_PRIORITY      12
-#define LINUX_SO_LINGER                13
-
-/* unused: */
-#define LINUX_SO_BSDCOMPAT     14
-#define LINUX_SO_REUSEPORT     15      /* undef in Linux */
-#define LINUX_SO_PASSCRED      16
-#define LINUX_SO_PEERCRED      17
-#define LINUX_SO_RCVLOWAT      18
-#define LINUX_SO_SNDLOWAT      19
-#define LINUX_SO_RCVTIMEO      20
-#define LINUX_SO_SNDTIMEO      21
-#define LINUX_SO_SECURITY_AUTHENTICATION       22
-#define LINUX_SO_SECURITY_ENCRYPTION_TRANSPORT 23
-#define LINUX_SO_SECURITY_ENCRYPTION_NETWORK   24
-#define LINUX_SO_BINDTODEVICE  25
-#define LINUX_SO_ATTACH_FILTER 26
-#define LINUX_SO_DETACH_FILTER 27
-#define LINUX_SO_PEERNAME      28
-#define LINUX_SO_TIMESTAMP     29
+#include <compat/linux/common/linux_socket_generic.h>
 
 #endif /* !_M68K_LINUX_SOCKET_H */
diff -r c624f0b8c159 -r 5ec14825f023 sys/compat/linux/arch/mips/linux_socket.h
--- a/sys/compat/linux/arch/mips/linux_socket.h Sat Jan 25 10:40:40 2014 +0000
+++ b/sys/compat/linux/arch/mips/linux_socket.h Sat Jan 25 13:49:27 2014 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_socket.h,v 1.5 2008/04/28 20:23:43 martin Exp $ */
+/*     $NetBSD: linux_socket.h,v 1.6 2014/01/25 13:49:27 njoly Exp $ */
 
 /*-
  * Copyright (c) 1995, 1998, 2001 The NetBSD Foundation, Inc.
@@ -50,23 +50,29 @@
 
 #define LINUX_SO_DEBUG         0x0001
 #define LINUX_SO_REUSEADDR     0x0004
-#define LINUX_SO_TYPE          0x1008
-#define LINUX_SO_ERROR         0x1007
+#define LINUX_SO_KEEPALIVE     0x0008
 #define LINUX_SO_DONTROUTE     0x0010
 #define LINUX_SO_BROADCAST     0x0020



Home | Main Index | Thread Index | Old Index