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 */ 24 struct 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 */ 59 struct dccp_hdr_ext { 60 __be32 dccph_seq_low; 61 }; 62 struct dccp_hdr_request { 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 __be32 dccph_req_service; 65 }; 66 struct 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 }; 72 struct 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 }; 77 struct 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 */ 84 enum 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 101 enum 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 */ 119 enum { 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 }; 142 enum { 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 }; 155 struct 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