blob: 69261876a7c89951728fcb1ee9fb03e058977b78 [file] [log] [blame]
Colin Cross07a58322022-02-08 19:45:27 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef __ASM_GENERIC_SOCKET_H
20#define __ASM_GENERIC_SOCKET_H
21#include <linux/posix_types.h>
22#include <asm/sockios.h>
23#define SOL_SOCKET 1
24#define SO_DEBUG 1
25#define SO_REUSEADDR 2
26#define SO_TYPE 3
27#define SO_ERROR 4
28#define SO_DONTROUTE 5
29#define SO_BROADCAST 6
30#define SO_SNDBUF 7
31#define SO_RCVBUF 8
32#define SO_SNDBUFFORCE 32
33#define SO_RCVBUFFORCE 33
34#define SO_KEEPALIVE 9
35#define SO_OOBINLINE 10
36#define SO_NO_CHECK 11
37#define SO_PRIORITY 12
38#define SO_LINGER 13
39#define SO_BSDCOMPAT 14
40#define SO_REUSEPORT 15
41#ifndef SO_PASSCRED
42#define SO_PASSCRED 16
43#define SO_PEERCRED 17
44#define SO_RCVLOWAT 18
45#define SO_SNDLOWAT 19
46#define SO_RCVTIMEO_OLD 20
47#define SO_SNDTIMEO_OLD 21
48#endif
49#define SO_SECURITY_AUTHENTICATION 22
50#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
51#define SO_SECURITY_ENCRYPTION_NETWORK 24
52#define SO_BINDTODEVICE 25
53#define SO_ATTACH_FILTER 26
54#define SO_DETACH_FILTER 27
55#define SO_GET_FILTER SO_ATTACH_FILTER
56#define SO_PEERNAME 28
57#define SO_ACCEPTCONN 30
58#define SO_PEERSEC 31
59#define SO_PASSSEC 34
60#define SO_MARK 36
61#define SO_PROTOCOL 38
62#define SO_DOMAIN 39
63#define SO_RXQ_OVFL 40
64#define SO_WIFI_STATUS 41
65#define SCM_WIFI_STATUS SO_WIFI_STATUS
66#define SO_PEEK_OFF 42
67#define SO_NOFCS 43
68#define SO_LOCK_FILTER 44
69#define SO_SELECT_ERR_QUEUE 45
70#define SO_BUSY_POLL 46
71#define SO_MAX_PACING_RATE 47
72#define SO_BPF_EXTENSIONS 48
73#define SO_INCOMING_CPU 49
74#define SO_ATTACH_BPF 50
75#define SO_DETACH_BPF SO_DETACH_FILTER
76#define SO_ATTACH_REUSEPORT_CBPF 51
77#define SO_ATTACH_REUSEPORT_EBPF 52
78#define SO_CNX_ADVICE 53
79#define SCM_TIMESTAMPING_OPT_STATS 54
80#define SO_MEMINFO 55
81#define SO_INCOMING_NAPI_ID 56
82#define SO_COOKIE 57
83#define SCM_TIMESTAMPING_PKTINFO 58
84#define SO_PEERGROUPS 59
85#define SO_ZEROCOPY 60
86#define SO_TXTIME 61
87#define SCM_TXTIME SO_TXTIME
88#define SO_BINDTOIFINDEX 62
89#define SO_TIMESTAMP_OLD 29
90#define SO_TIMESTAMPNS_OLD 35
91#define SO_TIMESTAMPING_OLD 37
92#define SO_TIMESTAMP_NEW 63
93#define SO_TIMESTAMPNS_NEW 64
94#define SO_TIMESTAMPING_NEW 65
95#define SO_RCVTIMEO_NEW 66
96#define SO_SNDTIMEO_NEW 67
97#define SO_DETACH_REUSEPORT_BPF 68
98#define SO_PREFER_BUSY_POLL 69
99#define SO_BUSY_POLL_BUDGET 70
100#define SO_NETNS_COOKIE 71
101#define SO_BUF_LOCK 72
102#define SO_RESERVE_MEM 73
Jordan Demeulenaere2d505822022-08-11 17:20:14 +0200103#define SO_TXREHASH 74
Colin Cross07a58322022-02-08 19:45:27 -0800104#if __BITS_PER_LONG == 64 || defined(__x86_64__) && defined(__ILP32__)
105#define SO_TIMESTAMP SO_TIMESTAMP_OLD
106#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
107#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD
108#define SO_RCVTIMEO SO_RCVTIMEO_OLD
109#define SO_SNDTIMEO SO_SNDTIMEO_OLD
110#else
111#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
112#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
113#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW)
114#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW)
115#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)
116#endif
117#define SCM_TIMESTAMP SO_TIMESTAMP
118#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
119#define SCM_TIMESTAMPING SO_TIMESTAMPING
120#endif