| .. | .. |
|---|
| 2 | 2 | #ifndef _UAPI_ASM_SOCKET_H |
|---|
| 3 | 3 | #define _UAPI_ASM_SOCKET_H |
|---|
| 4 | 4 | |
|---|
| 5 | +#include <linux/posix_types.h> |
|---|
| 5 | 6 | #include <asm/sockios.h> |
|---|
| 6 | 7 | |
|---|
| 7 | 8 | /* For setsockopt(2) */ |
|---|
| .. | .. |
|---|
| 21 | 22 | #define SO_RCVBUFFORCE 0x100b |
|---|
| 22 | 23 | #define SO_SNDLOWAT 0x1003 |
|---|
| 23 | 24 | #define SO_RCVLOWAT 0x1004 |
|---|
| 24 | | -#define SO_SNDTIMEO 0x1005 |
|---|
| 25 | | -#define SO_RCVTIMEO 0x1006 |
|---|
| 25 | +#define SO_SNDTIMEO_OLD 0x1005 |
|---|
| 26 | +#define SO_RCVTIMEO_OLD 0x1006 |
|---|
| 26 | 27 | #define SO_ERROR 0x1007 |
|---|
| 27 | 28 | #define SO_TYPE 0x1008 |
|---|
| 28 | 29 | #define SO_PROTOCOL 0x1028 |
|---|
| .. | .. |
|---|
| 34 | 35 | #define SO_BSDCOMPAT 0x400e |
|---|
| 35 | 36 | #define SO_PASSCRED 0x4010 |
|---|
| 36 | 37 | #define SO_PEERCRED 0x4011 |
|---|
| 37 | | -#define SO_TIMESTAMP 0x4012 |
|---|
| 38 | | -#define SCM_TIMESTAMP SO_TIMESTAMP |
|---|
| 39 | | -#define SO_TIMESTAMPNS 0x4013 |
|---|
| 40 | | -#define SCM_TIMESTAMPNS SO_TIMESTAMPNS |
|---|
| 41 | 38 | |
|---|
| 42 | 39 | /* Security levels - as per NRL IPv6 - don't actually do anything */ |
|---|
| 43 | 40 | #define SO_SECURITY_AUTHENTICATION 0x4016 |
|---|
| .. | .. |
|---|
| 57 | 54 | #define SO_PASSSEC 0x401e |
|---|
| 58 | 55 | |
|---|
| 59 | 56 | #define SO_MARK 0x401f |
|---|
| 60 | | - |
|---|
| 61 | | -#define SO_TIMESTAMPING 0x4020 |
|---|
| 62 | | -#define SCM_TIMESTAMPING SO_TIMESTAMPING |
|---|
| 63 | 57 | |
|---|
| 64 | 58 | #define SO_RXQ_OVFL 0x4021 |
|---|
| 65 | 59 | |
|---|
| .. | .. |
|---|
| 107 | 101 | #define SO_TXTIME 0x4036 |
|---|
| 108 | 102 | #define SCM_TXTIME SO_TXTIME |
|---|
| 109 | 103 | |
|---|
| 104 | +#define SO_BINDTOIFINDEX 0x4037 |
|---|
| 105 | + |
|---|
| 106 | +#define SO_TIMESTAMP_OLD 0x4012 |
|---|
| 107 | +#define SO_TIMESTAMPNS_OLD 0x4013 |
|---|
| 108 | +#define SO_TIMESTAMPING_OLD 0x4020 |
|---|
| 109 | + |
|---|
| 110 | +#define SO_TIMESTAMP_NEW 0x4038 |
|---|
| 111 | +#define SO_TIMESTAMPNS_NEW 0x4039 |
|---|
| 112 | +#define SO_TIMESTAMPING_NEW 0x403A |
|---|
| 113 | + |
|---|
| 114 | +#define SO_RCVTIMEO_NEW 0x4040 |
|---|
| 115 | +#define SO_SNDTIMEO_NEW 0x4041 |
|---|
| 116 | + |
|---|
| 117 | +#define SO_DETACH_REUSEPORT_BPF 0x4042 |
|---|
| 118 | + |
|---|
| 119 | +#define SO_NETNS_COOKIE 0x4045 |
|---|
| 120 | + |
|---|
| 121 | +#if !defined(__KERNEL__) |
|---|
| 122 | + |
|---|
| 123 | +#if __BITS_PER_LONG == 64 |
|---|
| 124 | +#define SO_TIMESTAMP SO_TIMESTAMP_OLD |
|---|
| 125 | +#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD |
|---|
| 126 | +#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD |
|---|
| 127 | +#define SO_RCVTIMEO SO_RCVTIMEO_OLD |
|---|
| 128 | +#define SO_SNDTIMEO SO_SNDTIMEO_OLD |
|---|
| 129 | +#else |
|---|
| 130 | +#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW) |
|---|
| 131 | +#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW) |
|---|
| 132 | +#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW) |
|---|
| 133 | + |
|---|
| 134 | +#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW) |
|---|
| 135 | +#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW) |
|---|
| 136 | +#endif |
|---|
| 137 | + |
|---|
| 138 | +#define SCM_TIMESTAMP SO_TIMESTAMP |
|---|
| 139 | +#define SCM_TIMESTAMPNS SO_TIMESTAMPNS |
|---|
| 140 | +#define SCM_TIMESTAMPING SO_TIMESTAMPING |
|---|
| 141 | + |
|---|
| 142 | +#endif |
|---|
| 143 | + |
|---|
| 110 | 144 | #endif /* _UAPI_ASM_SOCKET_H */ |
|---|