| ROHC compression/decompression library
   
    | 
The generic decompression context. More...
#include <d_generic.h>

| Data Fields | |
| struct d_generic_changes * | outer_ip_changes | 
| Information about the outer IP header. | |
| struct d_generic_changes * | inner_ip_changes | 
| Information about the inner IP header. | |
| struct rohc_lsb_decode * | sn_lsb_ctxt | 
| The LSB decoding context for the Sequence Number (SN) | |
| struct ip_id_offset_decode * | outer_ip_id_offset_ctxt | 
| The IP-ID of the outer IP header. | |
| struct ip_id_offset_decode * | inner_ip_id_offset_ctxt | 
| The IP-ID of the inner IP header. | |
| struct list_decomp * | list_decomp1 | 
| The list decompressor of the outer IP header. | |
| struct list_decomp * | list_decomp2 | 
| The list decompressor of the inner IP header. | |
| int | multiple_ip | 
| Whether the decompressed packet contains a 2nd IP header. | |
| rohc_packet_t | packet_type | 
| The type of packet the decompressor may receive: IR, IR-DYN, UO*. | |
| unsigned short | next_header_proto | 
| The IP protocol ID of the protocol the context is able to decompress. | |
| unsigned int | next_header_len | 
| The length of the next header. | |
| rohc_packet_t(* | detect_packet_type )(struct rohc_decomp *decomp, struct d_context *context, const unsigned char *packet, const size_t rohc_length, const size_t large_cid_len) | 
| int(* | parse_static_next_hdr )(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
| The handler used to parse the static part of the next header in the ROHC packet. | |
| int(* | parse_dyn_next_hdr )(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
| The handler used to parse the dynamic part of the next header in the ROHC packet. | |
| int(* | parse_uo_remainder )(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
| The handler used to parse the tail of the UO* ROHC packet. | |
| bool(* | decode_values_from_bits )(const struct d_context *context, const struct rohc_extr_bits bits, struct rohc_decoded_values *const decoded) | 
| int(* | build_next_header )(const struct d_generic_context *const context, const struct rohc_decoded_values decoded, unsigned char *dest, const unsigned int payload_len) | 
| unsigned int(* | compute_crc_static )(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
| The handler used to compute the CRC-STATIC value. | |
| unsigned int(* | compute_crc_dynamic )(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
| The handler used to compute the CRC-DYNAMIC value. | |
| void(* | update_context )(const struct d_context *context, const struct rohc_decoded_values decoded) | 
| void * | specific | 
| Profile-specific data. | |
| unsigned int | correction_counter | 
| Correction counter (see e and f in 5.3.2.2.4 of the RFC 3095) | |
The generic decompression context.
The object defines the generic context that manages IP(/nextheader) and IP/IP(/nextheader) packets. nextheader is managed by the profile-specific part of the context.
| int(* d_generic_context::build_next_header)(const struct d_generic_context *const context, const struct rohc_decoded_values decoded, unsigned char *dest, const unsigned int payload_len) | 
The handler used to build the uncompressed next header
Referenced by d_udp_create(), and d_udp_lite_create().
| unsigned int(* d_generic_context::compute_crc_dynamic)(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
The handler used to compute the CRC-DYNAMIC value.
Referenced by d_generic_create(), d_udp_create(), and d_udp_lite_create().
| unsigned int(* d_generic_context::compute_crc_static)(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
The handler used to compute the CRC-STATIC value.
Referenced by d_generic_create(), d_udp_create(), and d_udp_lite_create().
| unsigned int d_generic_context::correction_counter | 
Correction counter (see e and f in 5.3.2.2.4 of the RFC 3095)
| bool(* d_generic_context::decode_values_from_bits)(const struct d_context *context, const struct rohc_extr_bits bits, struct rohc_decoded_values *const decoded) | 
The handler used to decode extracted for next header
Referenced by d_udp_create(), and d_udp_lite_create().
| rohc_packet_t(* d_generic_context::detect_packet_type)(struct rohc_decomp *decomp, struct d_context *context, const unsigned char *packet, const size_t rohc_length, const size_t large_cid_len) | 
The handler used to detect the packet type
Referenced by d_generic_decode(), d_ip_create(), d_udp_create(), and d_udp_lite_create().
Information about the inner IP header.
Referenced by d_generic_create(), d_generic_destroy(), d_udp_create(), and d_udp_lite_create().
The IP-ID of the inner IP header.
Referenced by d_generic_create(), and d_generic_destroy().
The list decompressor of the outer IP header.
Referenced by d_generic_create(), and d_generic_destroy().
The list decompressor of the inner IP header.
Referenced by d_generic_create(), and d_generic_destroy().
Whether the decompressed packet contains a 2nd IP header.
| unsigned int d_generic_context::next_header_len | 
The length of the next header.
Referenced by d_udp_create(), and d_udp_lite_create().
| unsigned short d_generic_context::next_header_proto | 
The IP protocol ID of the protocol the context is able to decompress.
Referenced by d_generic_create(), d_udp_create(), and d_udp_lite_create().
Information about the outer IP header.
Referenced by d_generic_create(), d_generic_destroy(), d_udp_create(), d_udp_lite_create(), and udp_update_context().
The IP-ID of the outer IP header.
Referenced by d_generic_create(), and d_generic_destroy().
The type of packet the decompressor may receive: IR, IR-DYN, UO*.
Referenced by d_generic_decode(), and ip_parse_dynamic_ip().
| int(* d_generic_context::parse_dyn_next_hdr)(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
The handler used to parse the dynamic part of the next header in the ROHC packet.
Referenced by d_ip_create(), d_udp_create(), and d_udp_lite_create().
| int(* d_generic_context::parse_static_next_hdr)(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
The handler used to parse the static part of the next header in the ROHC packet.
Referenced by d_udp_create(), and d_udp_lite_create().
| int(* d_generic_context::parse_uo_remainder)(struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
The handler used to parse the tail of the UO* ROHC packet.
Referenced by d_udp_create(), and d_udp_lite_create().
The LSB decoding context for the Sequence Number (SN)
Referenced by d_generic_get_sn(), d_ip_create(), d_udp_create(), and d_udp_lite_create().
Profile-specific data.
Referenced by d_generic_destroy(), d_udp_create(), d_udp_lite_create(), and d_udp_lite_decode().
| void(* d_generic_context::update_context)(const struct d_context *context, const struct rohc_decoded_values decoded) | 
The handler used to update context with decoded next header fields
Referenced by d_udp_create(), and d_udp_lite_create().
 1.7.6.1
 1.7.6.1