| ROHC compression/decompression library
   
    | 
ROHC generic decompression context for IP-only, UDP and UDP Lite profiles. More...
#include "rohc_decomp.h"#include "rohc_packets.h"#include "comp_list.h"#include "lsb_decode.h"#include "ip_id_offset_decode.h"#include "ip.h"#include "crc.h"#include <stddef.h>#include <stdbool.h>

Go to the source code of this file.
| Data Structures | |
| struct | rohc_extr_ip_bits | 
| struct | rohc_extr_bits | 
| The bits extracted from ROHC UO* base headers.  More... | |
| struct | rohc_decoded_ip_values | 
| struct | rohc_decoded_values | 
| The values decoded from the bits extracted from ROHC header.  More... | |
| struct | d_generic_changes | 
| Store information about an IP header between the different decompressions of IP packets.  More... | |
| struct | d_generic_context | 
| The generic decompression context.  More... | |
| struct | list_decomp | 
| The list decompressor.  More... | |
| Defines | |
| #define | MAX_ITEM 15 | 
| #define | LIST_COMP_WINDOW 100 | 
| #define | L 5 | 
| Functions | |
| void * | d_generic_create (void) | 
| Create the generic decompression context. | |
| void | d_generic_destroy (void *context) | 
| Destroy the context. | |
| int | d_generic_decode (struct rohc_decomp *decomp, struct d_context *context, const unsigned char *const rohc_packet, const unsigned int rohc_length, const size_t add_cid_len, const size_t large_cid_len, unsigned char *dest) | 
| Decode one IR, IR-DYN or UO* packet. | |
| int | d_generic_get_sn (struct d_context *context) | 
| Get the reference SN value of the context. | |
ROHC generic decompression context for IP-only, UDP and UDP Lite profiles.
| #define L 5 | 
| #define LIST_COMP_WINDOW 100 | 
Referenced by d_generic_destroy().
| #define MAX_ITEM 15 | 
| void* d_generic_create | ( | void | ) | 
Create the generic decompression context.
This function is one of the functions that must exist in one profile for the framework to work.
References list_decomp::check_index, compute_crc_dynamic(), d_generic_context::compute_crc_dynamic, compute_crc_static(), d_generic_context::compute_crc_static, list_decomp::create_item, list_decomp::encode_extension, list_decomp::free_table, list_decomp::get_ext_size, d_generic_context::inner_ip_changes, d_generic_context::inner_ip_id_offset_ctxt, ip_id_offset_free(), ip_id_offset_new(), d_generic_context::list_decomp1, d_generic_context::list_decomp2, d_generic_context::next_header_proto, d_generic_context::outer_ip_changes, d_generic_context::outer_ip_id_offset_ctxt, rohc_debugf, and zfree.
Referenced by d_ip_create(), d_rtp_create(), d_udp_create(), and d_udp_lite_create().
| int d_generic_decode | ( | struct rohc_decomp * | decomp, | 
| struct d_context * | context, | ||
| const unsigned char *const | rohc_packet, | ||
| const unsigned int | rohc_length, | ||
| const size_t | add_cid_len, | ||
| const size_t | large_cid_len, | ||
| unsigned char * | dest | ||
| ) | 
Decode one IR, IR-DYN or UO* packet.
This function is one of the functions that must exist in one profile for the framework to work.
| decomp | The ROHC decompressor | 
| context | The decompression context | 
| rohc_packet | The ROHC packet to decode | 
| rohc_length | The length of the ROHC packet | 
| add_cid_len | The length of the optional Add-CID field | 
| large_cid_len | The length of the optional large CID field | 
| dest | OUT: The decoded IP packet | 
References d_generic_context::detect_packet_type, NO_CONTEXT, PACKET_IR, PACKET_IR_DYN, d_generic_context::packet_type, PACKET_UO_0, PACKET_UO_1, PACKET_UO_1_ID, PACKET_UO_1_RTP, PACKET_UO_1_TS, PACKET_UOR_2, PACKET_UOR_2_ID, PACKET_UOR_2_RTP, PACKET_UOR_2_TS, rohc_debugf, ROHC_ERROR, rohc_get_packet_descr(), d_context::specific, d_context::state, and STATIC_CONTEXT.
Referenced by d_udp_lite_decode().
| void d_generic_destroy | ( | void * | context | ) | 
Destroy the context.
This function is one of the functions that must exist in one profile for the framework to work.
| context | The compression context | 
References list_decomp::free_table, d_generic_context::inner_ip_changes, d_generic_context::inner_ip_id_offset_ctxt, ip_id_offset_free(), LIST_COMP_WINDOW, d_generic_context::list_decomp1, d_generic_context::list_decomp2, list_destroy(), list_decomp::list_table, d_generic_context::outer_ip_changes, d_generic_context::outer_ip_id_offset_ctxt, d_generic_context::specific, and zfree.
Referenced by d_rtp_create(), d_udp_create(), and d_udp_lite_create().
| int d_generic_get_sn | ( | struct d_context * | context | ) | 
Get the reference SN value of the context.
This function is one of the functions that must exist in one profile for the framework to work.
| context | The decompression context | 
References rohc_lsb_get_ref(), d_generic_context::sn_lsb_ctxt, and d_context::specific.
 1.7.6.1
 1.7.6.1