blob: dc4e70ecab0e722eef491a363afc3015188000c0 [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
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 _UAPI_LINUX_DCCP_H
20#define _UAPI_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 {
Tao Baod7db5942015-01-28 10:07:51 -080025 __be16 dccph_sport, dccph_dport;
26 __u8 dccph_doff;
Ben Cheng655a7c02013-10-16 16:09:24 -070027#ifdef __LITTLE_ENDIAN_BITFIELD
Tao Baod7db5942015-01-28 10:07:51 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 __u8 dccph_cscov : 4, dccph_ccval : 4;
Ben Cheng655a7c02013-10-16 16:09:24 -070030#elif defined(__BIG_ENDIAN_BITFIELD)
Tao Baod7db5942015-01-28 10:07:51 -080031 __u8 dccph_ccval : 4, dccph_cscov : 4;
Ben Cheng655a7c02013-10-16 16:09:24 -070032#else
Ben Cheng655a7c02013-10-16 16:09:24 -070033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080034#error "Adjust your <asm/byteorder.h> defines"
Ben Cheng655a7c02013-10-16 16:09:24 -070035#endif
Tao Baod7db5942015-01-28 10:07:51 -080036 __sum16 dccph_checksum;
Ben Cheng655a7c02013-10-16 16:09:24 -070037#ifdef __LITTLE_ENDIAN_BITFIELD
Ben Cheng655a7c02013-10-16 16:09:24 -070038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080039 __u8 dccph_x : 1, dccph_type : 4, dccph_reserved : 3;
Ben Cheng655a7c02013-10-16 16:09:24 -070040#elif defined(__BIG_ENDIAN_BITFIELD)
Tao Baod7db5942015-01-28 10:07:51 -080041 __u8 dccph_reserved : 3, dccph_type : 4, dccph_x : 1;
Ben Cheng655a7c02013-10-16 16:09:24 -070042#else
Ben Cheng655a7c02013-10-16 16:09:24 -070043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080044#error "Adjust your <asm/byteorder.h> defines"
Ben Cheng655a7c02013-10-16 16:09:24 -070045#endif
Tao Baod7db5942015-01-28 10:07:51 -080046 __u8 dccph_seq2;
47 __be16 dccph_seq;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070049};
Ben Cheng655a7c02013-10-16 16:09:24 -070050struct dccp_hdr_ext {
Tao Baod7db5942015-01-28 10:07:51 -080051 __be32 dccph_seq_low;
Ben Cheng655a7c02013-10-16 16:09:24 -070052};
Ben Cheng655a7c02013-10-16 16:09:24 -070053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080054struct dccp_hdr_request {
55 __be32 dccph_req_service;
Ben Cheng655a7c02013-10-16 16:09:24 -070056};
57struct dccp_hdr_ack_bits {
Ben Cheng655a7c02013-10-16 16:09:24 -070058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080059 __be16 dccph_reserved1;
60 __be16 dccph_ack_nr_high;
61 __be32 dccph_ack_nr_low;
Ben Cheng655a7c02013-10-16 16:09:24 -070062};
Tao Baod7db5942015-01-28 10:07:51 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -070064struct dccp_hdr_response {
Tao Baod7db5942015-01-28 10:07:51 -080065 struct dccp_hdr_ack_bits dccph_resp_ack;
66 __be32 dccph_resp_service;
Ben Cheng655a7c02013-10-16 16:09:24 -070067};
Ben Cheng655a7c02013-10-16 16:09:24 -070068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080069struct dccp_hdr_reset {
70 struct dccp_hdr_ack_bits dccph_reset_ack;
71 __u8 dccph_reset_code, dccph_reset_data[3];
Ben Cheng655a7c02013-10-16 16:09:24 -070072};
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74enum dccp_pkt_type {
Tao Baod7db5942015-01-28 10:07:51 -080075 DCCP_PKT_REQUEST = 0,
76 DCCP_PKT_RESPONSE,
77 DCCP_PKT_DATA,
Ben Cheng655a7c02013-10-16 16:09:24 -070078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080079 DCCP_PKT_ACK,
80 DCCP_PKT_DATAACK,
81 DCCP_PKT_CLOSEREQ,
82 DCCP_PKT_CLOSE,
Ben Cheng655a7c02013-10-16 16:09:24 -070083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080084 DCCP_PKT_RESET,
85 DCCP_PKT_SYNC,
86 DCCP_PKT_SYNCACK,
87 DCCP_PKT_INVALID,
Ben Cheng655a7c02013-10-16 16:09:24 -070088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89};
90#define DCCP_NR_PKT_TYPES DCCP_PKT_INVALID
91enum dccp_reset_codes {
Tao Baod7db5942015-01-28 10:07:51 -080092 DCCP_RESET_CODE_UNSPECIFIED = 0,
Ben Cheng655a7c02013-10-16 16:09:24 -070093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080094 DCCP_RESET_CODE_CLOSED,
95 DCCP_RESET_CODE_ABORTED,
96 DCCP_RESET_CODE_NO_CONNECTION,
97 DCCP_RESET_CODE_PACKET_ERROR,
Ben Cheng655a7c02013-10-16 16:09:24 -070098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080099 DCCP_RESET_CODE_OPTION_ERROR,
100 DCCP_RESET_CODE_MANDATORY_ERROR,
101 DCCP_RESET_CODE_CONNECTION_REFUSED,
102 DCCP_RESET_CODE_BAD_SERVICE_CODE,
Ben Cheng655a7c02013-10-16 16:09:24 -0700103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800104 DCCP_RESET_CODE_TOO_BUSY,
105 DCCP_RESET_CODE_BAD_INIT_COOKIE,
106 DCCP_RESET_CODE_AGGRESSION_PENALTY,
107 DCCP_MAX_RESET_CODES
Ben Cheng655a7c02013-10-16 16:09:24 -0700108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109};
110enum {
Tao Baod7db5942015-01-28 10:07:51 -0800111 DCCPO_PADDING = 0,
112 DCCPO_MANDATORY = 1,
Ben Cheng655a7c02013-10-16 16:09:24 -0700113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800114 DCCPO_MIN_RESERVED = 3,
115 DCCPO_MAX_RESERVED = 31,
116 DCCPO_CHANGE_L = 32,
117 DCCPO_CONFIRM_L = 33,
Ben Cheng655a7c02013-10-16 16:09:24 -0700118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800119 DCCPO_CHANGE_R = 34,
120 DCCPO_CONFIRM_R = 35,
121 DCCPO_NDP_COUNT = 37,
122 DCCPO_ACK_VECTOR_0 = 38,
Ben Cheng655a7c02013-10-16 16:09:24 -0700123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800124 DCCPO_ACK_VECTOR_1 = 39,
125 DCCPO_TIMESTAMP = 41,
126 DCCPO_TIMESTAMP_ECHO = 42,
127 DCCPO_ELAPSED_TIME = 43,
Ben Cheng655a7c02013-10-16 16:09:24 -0700128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800129 DCCPO_MAX = 45,
130 DCCPO_MIN_RX_CCID_SPECIFIC = 128,
131 DCCPO_MAX_RX_CCID_SPECIFIC = 191,
132 DCCPO_MIN_TX_CCID_SPECIFIC = 192,
Ben Cheng655a7c02013-10-16 16:09:24 -0700133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800134 DCCPO_MAX_TX_CCID_SPECIFIC = 255,
Ben Cheng655a7c02013-10-16 16:09:24 -0700135};
136#define DCCP_SINGLE_OPT_MAXLEN 253
137enum {
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800139 DCCPC_CCID2 = 2,
140 DCCPC_CCID3 = 3,
Ben Cheng655a7c02013-10-16 16:09:24 -0700141};
142enum dccp_feature_numbers {
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800144 DCCPF_RESERVED = 0,
145 DCCPF_CCID = 1,
146 DCCPF_SHORT_SEQNOS = 2,
147 DCCPF_SEQUENCE_WINDOW = 3,
Ben Cheng655a7c02013-10-16 16:09:24 -0700148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800149 DCCPF_ECN_INCAPABLE = 4,
150 DCCPF_ACK_RATIO = 5,
151 DCCPF_SEND_ACK_VECTOR = 6,
152 DCCPF_SEND_NDP_COUNT = 7,
Ben Cheng655a7c02013-10-16 16:09:24 -0700153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800154 DCCPF_MIN_CSUM_COVER = 8,
155 DCCPF_DATA_CHECKSUM = 9,
156 DCCPF_MIN_CCID_SPECIFIC = 128,
157 DCCPF_SEND_LEV_RATE = 192,
Ben Cheng655a7c02013-10-16 16:09:24 -0700158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800159 DCCPF_MAX_CCID_SPECIFIC = 255,
Ben Cheng655a7c02013-10-16 16:09:24 -0700160};
161enum dccp_cmsg_type {
Tao Baod7db5942015-01-28 10:07:51 -0800162 DCCP_SCM_PRIORITY = 1,
Ben Cheng655a7c02013-10-16 16:09:24 -0700163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800164 DCCP_SCM_QPOLICY_MAX = 0xFFFF,
165 DCCP_SCM_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700166};
167enum dccp_packet_dequeueing_policy {
168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800169 DCCPQ_POLICY_SIMPLE,
170 DCCPQ_POLICY_PRIO,
171 DCCPQ_POLICY_MAX
Ben Cheng655a7c02013-10-16 16:09:24 -0700172};
173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174#define DCCP_SOCKOPT_PACKET_SIZE 1
175#define DCCP_SOCKOPT_SERVICE 2
176#define DCCP_SOCKOPT_CHANGE_L 3
177#define DCCP_SOCKOPT_CHANGE_R 4
178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179#define DCCP_SOCKOPT_GET_CUR_MPS 5
180#define DCCP_SOCKOPT_SERVER_TIMEWAIT 6
181#define DCCP_SOCKOPT_SEND_CSCOV 10
182#define DCCP_SOCKOPT_RECV_CSCOV 11
183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184#define DCCP_SOCKOPT_AVAILABLE_CCIDS 12
185#define DCCP_SOCKOPT_CCID 13
186#define DCCP_SOCKOPT_TX_CCID 14
187#define DCCP_SOCKOPT_RX_CCID 15
188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189#define DCCP_SOCKOPT_QPOLICY_ID 16
190#define DCCP_SOCKOPT_QPOLICY_TXQLEN 17
191#define DCCP_SOCKOPT_CCID_RX_INFO 128
192#define DCCP_SOCKOPT_CCID_TX_INFO 192
193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194#define DCCP_SERVICE_LIST_MAX_LEN 32
195#endif