blob: 2d90586c19f0482f367ea1d96c8b05bc4a091001 [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
2 * This file is auto-generated. Modifications will be lost.
3 *
4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5 * for more information.
6 */
Ben Cheng655a7c02013-10-16 16:09:24 -07007#ifndef __ASM_GENERIC_SOCKET_H
8#define __ASM_GENERIC_SOCKET_H
Christopher Ferris24f97eb2019-05-20 12:58:13 -07009#include <linux/posix_types.h>
Ben Cheng655a7c02013-10-16 16:09:24 -070010#include <asm/sockios.h>
11#define SOL_SOCKET 1
Ben Cheng655a7c02013-10-16 16:09:24 -070012#define SO_DEBUG 1
13#define SO_REUSEADDR 2
14#define SO_TYPE 3
15#define SO_ERROR 4
Ben Cheng655a7c02013-10-16 16:09:24 -070016#define SO_DONTROUTE 5
17#define SO_BROADCAST 6
18#define SO_SNDBUF 7
19#define SO_RCVBUF 8
Ben Cheng655a7c02013-10-16 16:09:24 -070020#define SO_SNDBUFFORCE 32
21#define SO_RCVBUFFORCE 33
22#define SO_KEEPALIVE 9
23#define SO_OOBINLINE 10
Ben Cheng655a7c02013-10-16 16:09:24 -070024#define SO_NO_CHECK 11
25#define SO_PRIORITY 12
26#define SO_LINGER 13
27#define SO_BSDCOMPAT 14
Ben Cheng655a7c02013-10-16 16:09:24 -070028#define SO_REUSEPORT 15
29#ifndef SO_PASSCRED
30#define SO_PASSCRED 16
31#define SO_PEERCRED 17
Ben Cheng655a7c02013-10-16 16:09:24 -070032#define SO_RCVLOWAT 18
33#define SO_SNDLOWAT 19
Christopher Ferris24f97eb2019-05-20 12:58:13 -070034#define SO_RCVTIMEO_OLD 20
35#define SO_SNDTIMEO_OLD 21
Ben Cheng655a7c02013-10-16 16:09:24 -070036#endif
37#define SO_SECURITY_AUTHENTICATION 22
38#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
39#define SO_SECURITY_ENCRYPTION_NETWORK 24
Ben Cheng655a7c02013-10-16 16:09:24 -070040#define SO_BINDTODEVICE 25
41#define SO_ATTACH_FILTER 26
42#define SO_DETACH_FILTER 27
43#define SO_GET_FILTER SO_ATTACH_FILTER
Ben Cheng655a7c02013-10-16 16:09:24 -070044#define SO_PEERNAME 28
Ben Cheng655a7c02013-10-16 16:09:24 -070045#define SO_ACCEPTCONN 30
Ben Cheng655a7c02013-10-16 16:09:24 -070046#define SO_PEERSEC 31
47#define SO_PASSSEC 34
Ben Cheng655a7c02013-10-16 16:09:24 -070048#define SO_MARK 36
Ben Cheng655a7c02013-10-16 16:09:24 -070049#define SO_PROTOCOL 38
Ben Cheng655a7c02013-10-16 16:09:24 -070050#define SO_DOMAIN 39
51#define SO_RXQ_OVFL 40
52#define SO_WIFI_STATUS 41
53#define SCM_WIFI_STATUS SO_WIFI_STATUS
Ben Cheng655a7c02013-10-16 16:09:24 -070054#define SO_PEEK_OFF 42
55#define SO_NOFCS 43
56#define SO_LOCK_FILTER 44
57#define SO_SELECT_ERR_QUEUE 45
Christopher Ferris38062f92014-07-09 15:33:25 -070058#define SO_BUSY_POLL 46
59#define SO_MAX_PACING_RATE 47
60#define SO_BPF_EXTENSIONS 48
Christopher Ferris05d08e92016-02-04 13:16:38 -080061#define SO_INCOMING_CPU 49
Christopher Ferris05d08e92016-02-04 13:16:38 -080062#define SO_ATTACH_BPF 50
63#define SO_DETACH_BPF SO_DETACH_FILTER
Christopher Ferris106b3a82016-08-24 12:15:38 -070064#define SO_ATTACH_REUSEPORT_CBPF 51
65#define SO_ATTACH_REUSEPORT_EBPF 52
Christopher Ferris106b3a82016-08-24 12:15:38 -070066#define SO_CNX_ADVICE 53
Christopher Ferris48af7cb2017-02-21 12:35:09 -080067#define SCM_TIMESTAMPING_OPT_STATS 54
Christopher Ferris525ce912017-07-26 13:12:53 -070068#define SO_MEMINFO 55
69#define SO_INCOMING_NAPI_ID 56
70#define SO_COOKIE 57
Christopher Ferris1308ad32017-11-14 17:32:13 -080071#define SCM_TIMESTAMPING_PKTINFO 58
72#define SO_PEERGROUPS 59
73#define SO_ZEROCOPY 60
Christopher Ferris9ce28842018-10-25 12:11:39 -070074#define SO_TXTIME 61
75#define SCM_TXTIME SO_TXTIME
Christopher Ferris24f97eb2019-05-20 12:58:13 -070076#define SO_BINDTOIFINDEX 62
77#define SO_TIMESTAMP_OLD 29
78#define SO_TIMESTAMPNS_OLD 35
79#define SO_TIMESTAMPING_OLD 37
80#define SO_TIMESTAMP_NEW 63
81#define SO_TIMESTAMPNS_NEW 64
82#define SO_TIMESTAMPING_NEW 65
83#define SO_RCVTIMEO_NEW 66
84#define SO_SNDTIMEO_NEW 67
Christopher Ferrisb8a95e22019-10-02 18:29:20 -070085#define SO_DETACH_REUSEPORT_BPF 68
Christopher Ferris05667cd2021-02-16 16:01:34 -080086#define SO_PREFER_BUSY_POLL 69
87#define SO_BUSY_POLL_BUDGET 70
Christopher Ferris3a39c0b2021-09-02 00:03:38 +000088#define SO_NETNS_COOKIE 71
Christopher Ferris2abfa9e2021-11-01 16:26:06 -070089#define SO_BUF_LOCK 72
Christopher Ferrisa4792612022-01-10 13:51:15 -080090#define SO_RESERVE_MEM 73
Christopher Ferris10a76e62022-06-08 13:31:52 -070091#define SO_TXREHASH 74
Christopher Ferris80ae69d2022-08-02 16:32:21 -070092#define SO_RCVMARK 75
Christopher Ferris8666d042023-09-06 14:55:31 -070093#define SO_PASSPIDFD 76
94#define SO_PEERPIDFD 77
Christopher Ferris24f97eb2019-05-20 12:58:13 -070095#if __BITS_PER_LONG == 64 || defined(__x86_64__) && defined(__ILP32__)
96#define SO_TIMESTAMP SO_TIMESTAMP_OLD
97#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
98#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD
99#define SO_RCVTIMEO SO_RCVTIMEO_OLD
100#define SO_SNDTIMEO SO_SNDTIMEO_OLD
101#else
102#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
103#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
104#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW)
105#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW)
106#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)
107#endif
108#define SCM_TIMESTAMP SO_TIMESTAMP
109#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
110#define SCM_TIMESTAMPING SO_TIMESTAMPING
Christopher Ferris05d08e92016-02-04 13:16:38 -0800111#endif