29 #ifndef ROHC_COMP_TCP_DEFINES_H 30 #define ROHC_COMP_TCP_DEFINES_H 34 #include "schemes/ip_ctxt.h" 175 #if ((defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ 176 (defined(__GNUC__) && defined(__GNUC_MINOR__) && \ 177 (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)))) 178 _Static_assert((offsetof(
struct sc_tcp_context, seq_num_scaled) % 8) == 0,
179 "seq_num_scaled in sc_tcp_context should be aligned on 8 bytes");
180 _Static_assert((offsetof(
struct sc_tcp_context, ack_deltas_width) % 8) == 0,
181 "ack_deltas_width in sc_tcp_context should be aligned on 8 bytes");
182 _Static_assert((offsetof(
struct sc_tcp_context, msn_wlsb) % 8) == 0,
183 "msn_wlsb in sc_tcp_context should be aligned on 8 bytes");
184 _Static_assert((offsetof(
struct sc_tcp_context, ttl_hopl_wlsb) % 8) == 0,
185 "ttl_hopl_wlsb in sc_tcp_context should be aligned on 8 bytes");
186 _Static_assert((offsetof(
struct sc_tcp_context, tcp_opts) % 8) == 0,
187 "tcp_opts in sc_tcp_context should be aligned on 8 bytes");
188 _Static_assert((offsetof(
struct sc_tcp_context, ip_contexts) % 8) == 0,
189 "ip_contexts in sc_tcp_context should be aligned on 8 bytes");
191 "sc_tcp_context length should be multiple of 8 bytes");
struct c_wlsb ttl_hopl_wlsb
Definition: c_tcp_defines.h:156
uint16_t innermost_ip_id_behavior_changed
Definition: c_tcp_defines.h:75
uint32_t ack_num
Definition: c_tcp_defines.h:108
rohc_ip_id_behavior_t ip_id_behaviors[ROHC_MAX_IP_HDRS]
Definition: c_tcp_defines.h:58
uint8_t urg_flag
Definition: c_tcp_defines.h:151
struct c_wlsb msn_wlsb
Definition: c_tcp_defines.h:155
uint8_t ack_num_scaling_nr
Definition: c_tcp_defines.h:120
Definition: c_tcp_defines.h:96
uint8_t tcp_seq_num_trans_nr
Definition: c_tcp_defines.h:116
uint8_t ecn_used_change_count
Definition: c_tcp_defines.h:124
uint32_t seq_num_residue
Definition: c_tcp_defines.h:105
Define the TCP-specific temporary variables in the profile compression context.
Definition: c_tcp_defines.h:47
uint32_t seq_num
Definition: c_tcp_defines.h:103
struct c_tcp_opts_ctxt tcp_opts
Definition: c_tcp_defines.h:165
uint8_t ipv6_exts_list_static_trans_nr
Definition: c_tcp_defines.h:135
uint16_t tcp_urg_ptr_changed
Definition: c_tcp_defines.h:84
Handle the list of TCP options for the TCP ompression profile.
struct c_wlsb ip_id_wlsb
Definition: c_tcp_defines.h:157
uint8_t ttl_hopl_change_count[ROHC_MAX_IP_HDRS]
Definition: c_tcp_defines.h:142
ip_context_t ip_contexts[ROHC_MAX_IP_HDRS]
Definition: c_tcp_defines.h:171
uint16_t is_ipv6_exts_list_dyn_changed
Definition: c_tcp_defines.h:67
uint16_t outer_ip_ttl_changed
Definition: c_tcp_defines.h:78
uint16_t msn_of_last_ctxt_updating_pkt
Definition: c_tcp_defines.h:101
rohc_ip_id_behavior_t innermost_ip_id_behavior
Definition: c_tcp_defines.h:53
uint8_t unused2
Definition: c_tcp_defines.h:153
uint8_t cr_tcp_urg_ptr_present
Definition: c_tcp_defines.h:147
uint8_t innermost_dscp_trans_nr
Definition: c_tcp_defines.h:133
bool ttl_hopl_changed[ROHC_MAX_IP_HDRS]
Definition: c_tcp_defines.h:60
bool outer_ip_id_behavior_changed
Definition: c_tcp_defines.h:88
uint8_t tcp_opts_list_static_trans_nr
Definition: c_tcp_defines.h:139
Definition: c_tcp_opts_list.h:128
uint16_t tcp_ack_flag_changed
Definition: c_tcp_defines.h:81
uint8_t ip_contexts_nr
Definition: c_tcp_defines.h:170
uint16_t tcp_ack_num_unchanged
Definition: c_tcp_defines.h:73
One W-LSB encoding object.
Definition: comp_wlsb.h:68
uint16_t ip_id_delta
Definition: c_tcp_defines.h:55
uint8_t tcp_window_change_count
Definition: c_tcp_defines.h:122
struct c_wlsb seq_wlsb
Definition: c_tcp_defines.h:159
uint32_t seq_num_scaled
Definition: c_tcp_defines.h:104
uint8_t innermost_ttl_hopl_change_count
Definition: c_tcp_defines.h:127
rohc_ip_id_behavior_t
Definition: rohc_internal.h:236
uint16_t msn
Definition: c_tcp_defines.h:98
uint32_t ack_num_scaled
Definition: c_tcp_defines.h:110
struct c_wlsb ack_scaled_wlsb
Definition: c_tcp_defines.h:162
uint8_t ipv6_exts_list_dyn_trans_nr
Definition: c_tcp_defines.h:137
struct c_wlsb seq_scaled_wlsb
Definition: c_tcp_defines.h:160
uint8_t innermost_ip_id_behavior_trans_nr
Definition: c_tcp_defines.h:131
uint32_t ack_num_residue
Definition: c_tcp_defines.h:111
uint8_t outer_ip_id_behavior_trans_nr
Definition: c_tcp_defines.h:129
uint32_t ack_num
Definition: c_tcp_defines.h:50
uint8_t cr_tcp_window_present
Definition: c_tcp_defines.h:146
struct c_tcp_opts_ctxt_tmp tcp_opts
Definition: c_tcp_defines.h:91
uint16_t urg_ptr_nbo
Definition: c_tcp_defines.h:167
uint16_t dscp_changed
Definition: c_tcp_defines.h:80
uint16_t innermost_ttl_hopl_changed
Definition: c_tcp_defines.h:76
struct c_wlsb window_wlsb
Definition: c_tcp_defines.h:158
uint16_t tcp_seq_num_unchanged
Definition: c_tcp_defines.h:71
uint8_t res_flags
Definition: c_tcp_defines.h:150
uint16_t ip_df_changed
Definition: c_tcp_defines.h:79
uint8_t seq_num_scaling_nr
Definition: c_tcp_defines.h:119
uint16_t tcp_window_changed
Definition: c_tcp_defines.h:69
uint8_t tcp_ack_num_trans_nr
Definition: c_tcp_defines.h:118
uint16_t tcp_urg_flag_changed
Definition: c_tcp_defines.h:83
Definition: c_tcp_opts_list.h:77
uint8_t ecn_used
Definition: c_tcp_defines.h:144
uint16_t ttl_irreg_chain_flag
Definition: c_tcp_defines.h:77
uint8_t cr_tcp_ack_num_present
Definition: c_tcp_defines.h:148
uint16_t ecn_used_changed
Definition: c_tcp_defines.h:85
uint16_t tcp_urg_flag_present
Definition: c_tcp_defines.h:82
uint16_t is_ipv6_exts_list_static_changed
Definition: c_tcp_defines.h:64
uint32_t seq_num
Definition: c_tcp_defines.h:49
The TCP compression context for one IPv4 or IPv6 header.
Definition: comp/schemes/ip_ctxt.h:76
uint8_t ack_deltas_next
Definition: c_tcp_defines.h:113
Defines the common IPv4/v6 header.
uint8_t ecn_used_zero_count
Definition: c_tcp_defines.h:126
uint32_t seq_num_factor
Definition: c_tcp_defines.h:106
uint16_t window_nbo
Definition: c_tcp_defines.h:168
uint16_t ack_stride
Definition: c_tcp_defines.h:112
uint16_t ack_deltas_width[20]
Definition: c_tcp_defines.h:109
uint8_t tcp_urg_ptr_trans_nr
Definition: c_tcp_defines.h:141
struct c_wlsb ack_wlsb
Definition: c_tcp_defines.h:161
#define ROHC_MAX_IP_HDRS
The maximum number of IP headers supported.
Definition: protocols/ip.h:46
uint8_t ack_flag
Definition: c_tcp_defines.h:152