1/****************************************************************************
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 _LINUX_DCCP_H
20#define _LINUX_DCCP_H
21#include <linux/types.h>
22#include <asm/byteorder.h>
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24struct dccp_hdr {
25 __be16 dccph_sport,
26 dccph_dport;
27 __u8 dccph_doff;
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#ifdef __LITTLE_ENDIAN_BITFIELD
30 __u8 dccph_cscov:4,
31 dccph_ccval:4;
32#elif defined(__BIG_ENDIAN_BITFIELD)
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 __u8 dccph_ccval:4,
35 dccph_cscov:4;
36#else
37#error "Adjust your <asm/byteorder.h> defines"
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39#endif
40 __u16 dccph_checksum;
41#ifdef __LITTLE_ENDIAN_BITFIELD
42 __u8 dccph_x:1,
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 dccph_type:4,
45 dccph_reserved:3;
46#elif defined(__BIG_ENDIAN_BITFIELD)
47 __u8 dccph_reserved:3,
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 dccph_type:4,
50 dccph_x:1;
51#else
52#error "Adjust your <asm/byteorder.h> defines"
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54#endif
55 __u8 dccph_seq2;
56 __be16 dccph_seq;
57};
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59struct dccp_hdr_ext {
60 __be32 dccph_seq_low;
61};
62struct dccp_hdr_request {
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 __be32 dccph_req_service;
65};
66struct dccp_hdr_ack_bits {
67 __be16 dccph_reserved1;
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 __be16 dccph_ack_nr_high;
70 __be32 dccph_ack_nr_low;
71};
72struct dccp_hdr_response {
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 struct dccp_hdr_ack_bits dccph_resp_ack;
75 __be32 dccph_resp_service;
76};
77struct dccp_hdr_reset {
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 struct dccp_hdr_ack_bits dccph_reset_ack;
80 __u8 dccph_reset_code,
81 dccph_reset_data[3];
82};
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84enum dccp_pkt_type {
85 DCCP_PKT_REQUEST = 0,
86 DCCP_PKT_RESPONSE,
87 DCCP_PKT_DATA,
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 DCCP_PKT_ACK,
90 DCCP_PKT_DATAACK,
91 DCCP_PKT_CLOSEREQ,
92 DCCP_PKT_CLOSE,
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94 DCCP_PKT_RESET,
95 DCCP_PKT_SYNC,
96 DCCP_PKT_SYNCACK,
97 DCCP_PKT_INVALID,
98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99};
100#define DCCP_NR_PKT_TYPES DCCP_PKT_INVALID
101enum dccp_reset_codes {
102 DCCP_RESET_CODE_UNSPECIFIED = 0,
103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 DCCP_RESET_CODE_CLOSED,
105 DCCP_RESET_CODE_ABORTED,
106 DCCP_RESET_CODE_NO_CONNECTION,
107 DCCP_RESET_CODE_PACKET_ERROR,
108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 DCCP_RESET_CODE_OPTION_ERROR,
110 DCCP_RESET_CODE_MANDATORY_ERROR,
111 DCCP_RESET_CODE_CONNECTION_REFUSED,
112 DCCP_RESET_CODE_BAD_SERVICE_CODE,
113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 DCCP_RESET_CODE_TOO_BUSY,
115 DCCP_RESET_CODE_BAD_INIT_COOKIE,
116 DCCP_RESET_CODE_AGGRESSION_PENALTY,
117};
118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119enum {
120 DCCPO_PADDING = 0,
121 DCCPO_MANDATORY = 1,
122 DCCPO_MIN_RESERVED = 3,
123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 DCCPO_MAX_RESERVED = 31,
125 DCCPO_CHANGE_L = 32,
126 DCCPO_CONFIRM_L = 33,
127 DCCPO_CHANGE_R = 34,
128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 DCCPO_CONFIRM_R = 35,
130 DCCPO_NDP_COUNT = 37,
131 DCCPO_ACK_VECTOR_0 = 38,
132 DCCPO_ACK_VECTOR_1 = 39,
133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 DCCPO_TIMESTAMP = 41,
135 DCCPO_TIMESTAMP_ECHO = 42,
136 DCCPO_ELAPSED_TIME = 43,
137 DCCPO_MAX = 45,
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 DCCPO_MIN_CCID_SPECIFIC = 128,
140 DCCPO_MAX_CCID_SPECIFIC = 255,
141};
142enum {
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 DCCPF_RESERVED = 0,
145 DCCPF_CCID = 1,
146 DCCPF_SEQUENCE_WINDOW = 3,
147 DCCPF_ACK_RATIO = 5,
148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 DCCPF_SEND_ACK_VECTOR = 6,
150 DCCPF_SEND_NDP_COUNT = 7,
151 DCCPF_MIN_CCID_SPECIFIC = 128,
152 DCCPF_MAX_CCID_SPECIFIC = 255,
153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154};
155struct dccp_so_feat {
156 __u8 dccpsf_feat;
157 __u8 *dccpsf_val;
158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 __u8 dccpsf_len;
160};
161#define DCCP_SOCKOPT_PACKET_SIZE 1
162#define DCCP_SOCKOPT_SERVICE 2
163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164#define DCCP_SOCKOPT_CHANGE_L 3
165#define DCCP_SOCKOPT_CHANGE_R 4
166#define DCCP_SOCKOPT_CCID_RX_INFO 128
167#define DCCP_SOCKOPT_CCID_TX_INFO 192
168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169#define DCCP_SERVICE_LIST_MAX_LEN 32
170#endif
171