29 #ifndef ROHC_DECOMP_TCP_DEFINES_H    30 #define ROHC_DECOMP_TCP_DEFINES_H    36 #include "schemes/tcp_ts.h"    37 #include "schemes/tcp_sack.h"    45 typedef struct __attribute__((packed))
    90         uint32_t auth_data[1];
   121         uint8_t ip_ecn_flags:2;
   127         uint8_t ip_id_behavior;
   142         uint8_t ip_ecn_flags:2;
   148         uint8_t ip_id_behavior;
   166         uint8_t ip_ecn_flags:2;
   172         uint8_t ip_id_behavior;
   174         uint32_t flow_label:20; 
   176         uint32_t src_addr[4];
   177         uint32_t dest_addr[4];
   239 #define ROHC_TCP_OPT_HDR_LEN 2U   240 #define ROHC_TCP_OPT_MAX_LEN 0xffU   241 #define ROHC_TCP_OPT_GENERIC_DATA_MAX_LEN \   242         (ROHC_TCP_OPT_MAX_LEN - ROHC_TCP_OPT_HDR_LEN) size_t data_len
Definition: d_tcp_defines.h:47
 
uint8_t urg_flag_bits
Definition: d_tcp_defines.h:397
 
uint8_t len
Definition: d_tcp_defines.h:212
 
size_t flowid_nr
Definition: d_tcp_defines.h:344
 
uint32_t ack_num
Definition: d_tcp_defines.h:469
 
struct ipv6_context ipv6_context_t
Define the IPv6 header context. 
 
size_t urg_flag_bits_nr
Definition: d_tcp_defines.h:398
 
uint32_t sequence_number
Definition: d_tcp_defines.h:65
 
uint8_t rsf_flags
Definition: d_tcp_defines.h:481
 
bool ecn_used
Definition: d_tcp_defines.h:294
 
uint8_t rsf_flags_bits
Definition: d_tcp_defines.h:403
 
uint8_t c_flag
Definition: d_tcp_defines.h:58
 
size_t src_port_nr
Definition: d_tcp_defines.h:383
 
rohc_cid_t cr_base_cid
Definition: d_tcp_defines.h:447
 
uint8_t k_flag
Definition: d_tcp_defines.h:59
 
size_t rohc_cid_t
Definition: rohc.h:193
 
Definition: d_tcp_defines.h:442
 
uint8_t ack_flag_bits
Definition: d_tcp_defines.h:399
 
bool ack_flag
Definition: d_tcp_defines.h:479
 
size_t opts_len
Definition: d_tcp_defines.h:357
 
size_t res_flags_bits_nr
Definition: d_tcp_defines.h:394
 
uint16_t tcp_check
Definition: d_tcp_defines.h:485
 
bool urg_flag
Definition: d_tcp_defines.h:296
 
uint8_t dscp_bits
Definition: d_tcp_defines.h:324
 
Define the IPv6 option context for MIME option. 
Definition: d_tcp_defines.h:73
 
size_t ecn_used_bits_nr
Definition: d_tcp_defines.h:392
 
uint32_t orig_src
Definition: d_tcp_defines.h:78
 
uint16_t msn
Definition: d_tcp_defines.h:454
 
uint32_t flowid
Definition: d_tcp_defines.h:342
 
bool used
Definition: d_tcp_defines.h:205
 
size_t len
Definition: d_tcp_defines.h:97
 
uint32_t opt_ts_rep
Definition: d_tcp_defines.h:492
 
tcp_ip_id_behavior_t id_behavior
Definition: d_tcp_defines.h:422
 
uint16_t dst_port
Definition: d_tcp_defines.h:463
 
uint16_t urg_ptr
Definition: d_tcp_defines.h:304
 
uint8_t proto
Definition: d_tcp_defines.h:338
 
size_t daddr_nr
Definition: d_tcp_defines.h:352
 
uint8_t ttl
Definition: d_tcp_defines.h:425
 
uint16_t tcp_check
Definition: d_tcp_defines.h:406
 
uint8_t ecn_flags_bits
Definition: d_tcp_defines.h:395
 
bool ttl_dyn_chain_flag
Definition: d_tcp_defines.h:377
 
Definition: decomp_wlsb.h:77
 
uint8_t proto
Definition: d_tcp_defines.h:426
 
Define the IPv6 option context for Destination, Hop-by-Hop and Routing option. 
Definition: d_tcp_defines.h:45
 
size_t opts_nr
Definition: d_tcp_defines.h:436
 
size_t dscp_bits_nr
Definition: d_tcp_defines.h:325
 
bool urg_flag
Definition: d_tcp_defines.h:478
 
size_t ecn_flags_bits_nr
Definition: d_tcp_defines.h:327
 
size_t proto_nr
Definition: d_tcp_defines.h:340
 
uint16_t window
Definition: d_tcp_defines.h:484
 
size_t ecn_flags_bits_nr
Definition: d_tcp_defines.h:396
 
bool ttl_dyn_chain_flag
Definition: d_tcp_defines.h:457
 
uint8_t psh_flag_bits
Definition: d_tcp_defines.h:401
 
Definition: d_tcp_defines.h:320
 
struct ipv6_gre_option_context ipv6_gre_option_context_t
Define the IPv6 option context for GRE option. 
 
uint8_t ecn_used_bits
Definition: d_tcp_defines.h:391
 
uint8_t value
Definition: d_tcp_defines.h:222
 
uint8_t res_flags
Definition: d_tcp_defines.h:476
 
uint8_t dscp
Definition: d_tcp_defines.h:421
 
bool do_ctxt_replication
Definition: d_tcp_defines.h:365
 
uint8_t ecn_flags
Definition: d_tcp_defines.h:477
 
uint8_t df
Definition: d_tcp_defines.h:333
 
#define ROHC_TCP_OPT_GENERIC_DATA_MAX_LEN
Definition: d_tcp_defines.h:241
 
uint16_t dst_port
Definition: d_tcp_defines.h:384
 
Definition: decomp/schemes/tcp_sack.h:38
 
Define the common IP header context to IPv4 and IPv6. 
Definition: c_tcp_defines.h:127
 
size_t df_nr
Definition: d_tcp_defines.h:335
 
The Least Significant Bits (LSB) decoding object. 
Definition: decomp_wlsb.h:57
 
uint16_t value
Definition: d_tcp_defines.h:217
 
Definition: d_tcp_defines.h:234
 
uint16_t src_port
Definition: d_tcp_defines.h:382
 
Definition: c_tcp_defines.h:172
 
uint16_t src_port
Definition: d_tcp_defines.h:462
 
size_t dst_port_nr
Definition: d_tcp_defines.h:385
 
Definition: decomp_wlsb.h:86
 
#define IPV6_OPT_CTXT_LEN_MAX
Definition: ipv6.h:154
 
Define the IPv6 option context for AH option. 
Definition: d_tcp_defines.h:86
 
struct ipv6_generic_option_context ipv6_generic_option_context_t
Define the IPv6 generic option context. 
 
uint8_t df
Definition: d_tcp_defines.h:424
 
size_t rsf_flags_bits_nr
Definition: d_tcp_defines.h:404
 
bool psh_flag
Definition: d_tcp_defines.h:480
 
bool do_ctxt_replication
Definition: d_tcp_defines.h:445
 
size_t ip_nr
Definition: d_tcp_defines.h:451
 
uint8_t s_bit
Definition: d_tcp_defines.h:75
 
uint32_t seq_num_residue
Definition: d_tcp_defines.h:468
 
bool is_static
Definition: d_tcp_defines.h:211
 
Define the IPv6 header context. 
Definition: c_tcp_defines.h:184
 
uint16_t ack_stride
Definition: d_tcp_defines.h:287
 
bool ttl_irreg_chain_flag
Definition: d_tcp_defines.h:459
 
bool ack_flag
Definition: d_tcp_defines.h:297
 
Definition: d_tcp_defines.h:203
 
uint32_t sequence_number
Definition: d_tcp_defines.h:89
 
Window-based Least Significant Bits (W-LSB) decoding. 
 
size_t ack_flag_bits_nr
Definition: d_tcp_defines.h:400
 
size_t ip_contexts_nr
Definition: d_tcp_defines.h:314
 
struct ipv4_context ipv4_context_t
Define the IPv4 header context. 
 
Define the IPv4 header context. 
Definition: c_tcp_defines.h:148
 
#define ROHC_TCP_MAX_IP_HDRS
The maximum number of IP headers supported by the TCP profile. 
Definition: tcp.h:58
 
size_t id_behavior_nr
Definition: d_tcp_defines.h:330
 
Definition: d_tcp_defines.h:269
 
uint8_t load_len
Definition: d_tcp_defines.h:238
 
uint16_t ack_num_residue
Definition: d_tcp_defines.h:471
 
#define MAX_TCP_OPTION_INDEX
The largest index that may be used to identify one TCP option. 
Definition: tcp.h:76
 
uint32_t seq_num_scaled
Definition: d_tcp_defines.h:467
 
struct ipv6_mime_option_context ipv6_mime_option_context_t
Define the IPv6 option context for MIME option. 
 
struct ipvx_context ipvx_context_t
Define the common IP header context to IPv4 and IPv6. 
 
uint32_t key
Definition: d_tcp_defines.h:64
 
uint8_t rsf_flags
Definition: d_tcp_defines.h:298
 
uint16_t ack_num_residue
Definition: d_tcp_defines.h:288
 
uint8_t version
Definition: d_tcp_defines.h:419
 
Define the IPv6 option context for GRE option. 
Definition: d_tcp_defines.h:56
 
uint32_t opt_ts_req
Definition: d_tcp_defines.h:491
 
uint16_t ack_stride
Definition: d_tcp_defines.h:472
 
uint8_t res_flags
Definition: d_tcp_defines.h:293
 
uint8_t version
Definition: d_tcp_defines.h:322
 
Definition: decomp_wlsb.h:68
 
Definition: d_tcp_defines.h:417
 
size_t opts_len
Definition: d_tcp_defines.h:437
 
uint8_t ecn_flags
Definition: d_tcp_defines.h:295
 
uint8_t nh_proto
Definition: d_tcp_defines.h:99
 
rohc_cid_t cr_base_cid
Definition: d_tcp_defines.h:367
 
uint8_t type
Definition: d_tcp_defines.h:206
 
uint32_t ack_num_scaled
Definition: d_tcp_defines.h:470
 
ipv6_gre_option_context_t gre
Definition: d_tcp_defines.h:104
 
ip_version
IP version. 
Definition: ip.h:49
 
uint8_t rnd
Definition: d_tcp_defines.h:428
 
uint8_t protocol
Definition: d_tcp_defines.h:61
 
uint32_t spi
Definition: d_tcp_defines.h:88
 
uint8_t ecn_flags_bits
Definition: d_tcp_defines.h:326
 
Define union of IP contexts. 
Definition: c_tcp_defines.h:210
 
uint8_t id_behavior
Definition: d_tcp_defines.h:329
 
uint8_t padding
Definition: d_tcp_defines.h:62
 
ipv6_ah_option_context_t ah
Definition: d_tcp_defines.h:106
 
uint16_t tcp_src_port
Definition: d_tcp_defines.h:280
 
tcp_ip_id_behavior_t
Definition: tcp.h:259
 
uint8_t s_flag
Definition: d_tcp_defines.h:60
 
uint16_t urg_ptr
Definition: d_tcp_defines.h:486
 
size_t opts_nr
Definition: d_tcp_defines.h:356
 
size_t opts_len
Definition: d_tcp_defines.h:196
 
uint32_t orig_dest
Definition: d_tcp_defines.h:77
 
#define ROHC_TCP_OPTS_MAX
The maximum of TCP options supported by the TCP profile. 
Definition: tcp.h:102
 
Definition: d_tcp_defines.h:250
 
Definition: d_tcp_defines.h:236
 
size_t ip_nr
Definition: d_tcp_defines.h:371
 
uint8_t res_bits
Definition: d_tcp_defines.h:76
 
#define ROHC_TCP_MAX_IP_EXT_HDRS
The maximum number of IP extension header supported by the TCP profile. 
Definition: tcp.h:67
 
bool ttl_irreg_chain_flag
Definition: d_tcp_defines.h:379
 
ipv6_mime_option_context_t mime
Definition: d_tcp_defines.h:105
 
uint8_t nbo
Definition: d_tcp_defines.h:427
 
uint8_t proto
Definition: d_tcp_defines.h:98
 
uint16_t ip_id
Definition: d_tcp_defines.h:149
 
uint16_t id
Definition: d_tcp_defines.h:423
 
size_t psh_flag_bits_nr
Definition: d_tcp_defines.h:402
 
uint32_t seq_num
Definition: d_tcp_defines.h:466
 
size_t saddr_nr
Definition: d_tcp_defines.h:348
 
size_t nr
Definition: d_tcp_defines.h:253
 
uint8_t ecn_flags
Definition: d_tcp_defines.h:420
 
struct ipv6_ah_option_context ipv6_ah_option_context_t
Define the IPv6 option context for AH option. 
 
uint32_t seq_num_residue
Definition: d_tcp_defines.h:283
 
Definition: d_tcp_defines.h:362
 
uint8_t res_flags_bits
Definition: d_tcp_defines.h:393
 
uint32_t flowid
Definition: d_tcp_defines.h:430
 
bool ecn_used
Definition: d_tcp_defines.h:475
 
uint16_t tcp_dst_port
Definition: d_tcp_defines.h:281
 
uint8_t sid
Definition: d_tcp_defines.h:429
 
Compute the interpretation interval for LSB and W-LSB encoding. 
 
Definition: d_tcp_defines.h:235