hc
2024-02-20 e636c8d336489bf3eed5878299e6cc045bbad077
kernel/arch/sparc/include/uapi/asm/socket.h
....@@ -2,6 +2,7 @@
22 #ifndef _ASM_SOCKET_H
33 #define _ASM_SOCKET_H
44
5
+#include <linux/posix_types.h>
56 #include <asm/sockios.h>
67
78 /* For setsockopt(2) */
....@@ -20,8 +21,8 @@
2021 #define SO_BSDCOMPAT 0x0400
2122 #define SO_RCVLOWAT 0x0800
2223 #define SO_SNDLOWAT 0x1000
23
-#define SO_RCVTIMEO 0x2000
24
-#define SO_SNDTIMEO 0x4000
24
+#define SO_RCVTIMEO_OLD 0x2000
25
+#define SO_SNDTIMEO_OLD 0x4000
2526 #define SO_ACCEPTCONN 0x8000
2627
2728 #define SO_SNDBUF 0x1001
....@@ -32,7 +33,6 @@
3233 #define SO_TYPE 0x1008
3334 #define SO_PROTOCOL 0x1028
3435 #define SO_DOMAIN 0x1029
35
-
3636
3737 /* Linux specific, keep the same. */
3838 #define SO_NO_CHECK 0x000b
....@@ -45,18 +45,11 @@
4545 #define SO_GET_FILTER SO_ATTACH_FILTER
4646
4747 #define SO_PEERNAME 0x001c
48
-#define SO_TIMESTAMP 0x001d
49
-#define SCM_TIMESTAMP SO_TIMESTAMP
5048
5149 #define SO_PEERSEC 0x001e
5250 #define SO_PASSSEC 0x001f
53
-#define SO_TIMESTAMPNS 0x0021
54
-#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
5551
5652 #define SO_MARK 0x0022
57
-
58
-#define SO_TIMESTAMPING 0x0023
59
-#define SCM_TIMESTAMPING SO_TIMESTAMPING
6053
6154 #define SO_RXQ_OVFL 0x0024
6255
....@@ -104,9 +97,51 @@
10497 #define SO_TXTIME 0x003f
10598 #define SCM_TXTIME SO_TXTIME
10699
100
+#define SO_BINDTOIFINDEX 0x0041
101
+
107102 /* Security levels - as per NRL IPv6 - don't actually do anything */
108103 #define SO_SECURITY_AUTHENTICATION 0x5001
109104 #define SO_SECURITY_ENCRYPTION_TRANSPORT 0x5002
110105 #define SO_SECURITY_ENCRYPTION_NETWORK 0x5004
111106
107
+#define SO_TIMESTAMP_OLD 0x001d
108
+#define SO_TIMESTAMPNS_OLD 0x0021
109
+#define SO_TIMESTAMPING_OLD 0x0023
110
+
111
+#define SO_TIMESTAMP_NEW 0x0046
112
+#define SO_TIMESTAMPNS_NEW 0x0042
113
+#define SO_TIMESTAMPING_NEW 0x0043
114
+
115
+#define SO_RCVTIMEO_NEW 0x0044
116
+#define SO_SNDTIMEO_NEW 0x0045
117
+
118
+#define SO_DETACH_REUSEPORT_BPF 0x0047
119
+
120
+#define SO_NETNS_COOKIE 0x0050
121
+
122
+#if !defined(__KERNEL__)
123
+
124
+
125
+#if __BITS_PER_LONG == 64
126
+#define SO_TIMESTAMP SO_TIMESTAMP_OLD
127
+#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
128
+#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD
129
+
130
+#define SO_RCVTIMEO SO_RCVTIMEO_OLD
131
+#define SO_SNDTIMEO SO_SNDTIMEO_OLD
132
+#else
133
+#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
134
+#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
135
+#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW)
136
+
137
+#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW)
138
+#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)
139
+#endif
140
+
141
+#define SCM_TIMESTAMP SO_TIMESTAMP
142
+#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
143
+#define SCM_TIMESTAMPING SO_TIMESTAMPING
144
+
145
+#endif
146
+
112147 #endif /* _ASM_SOCKET_H */