ROHC compression/decompression library
|
ROHC decompression context for the UDP-Lite profile. More...
#include "d_udp_lite.h"
#include "d_udp.h"
#include "d_generic.h"
#include "rohc_bit_ops.h"
#include "rohc_traces.h"
#include "rohc_debug.h"
#include "rohc_packets.h"
#include "crc.h"
#include "protocols/udp_lite.h"
#include "config.h"
Data Structures | |
struct | d_udp_lite_context |
Define the UDP-Lite part of the decompression profile context. More... | |
Functions | |
void * | d_udp_lite_create (void) |
Create the UDP-Lite decompression context. | |
int | d_udp_lite_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 for UDP-Lite profile. | |
Variables | |
struct d_profile | d_udplite_profile |
Define the decompression part of the UDP-Lite profile as described in the RFC 4019. |
ROHC decompression context for the UDP-Lite profile.
void* d_udp_lite_create | ( | void | ) |
Create the UDP-Lite decompression context.
This function is one of the functions that must exist in one profile for the framework to work.
References d_generic_context::build_next_header, d_udp_lite_context::cfi, d_udp_lite_context::cfp, d_generic_context::compute_crc_dynamic, d_generic_context::compute_crc_static, d_generic_create(), d_generic_destroy(), d_generic_context::decode_values_from_bits, d_generic_context::detect_packet_type, d_generic_context::inner_ip_changes, d_generic_changes::next_header, d_generic_changes::next_header_len, d_generic_context::next_header_len, d_generic_context::next_header_proto, d_generic_context::outer_ip_changes, d_generic_context::parse_dyn_next_hdr, d_generic_context::parse_static_next_hdr, d_generic_context::parse_uo_remainder, rohc_debugf, ROHC_IPPROTO_UDPLITE, rohc_lsb_free(), rohc_lsb_new(), ROHC_LSB_SHIFT_SN, d_generic_context::sn_lsb_ctxt, d_generic_context::specific, udp_compute_crc_dynamic(), udp_compute_crc_static(), udp_parse_static_udp(), udp_update_context(), d_generic_context::update_context, and zfree.
int d_udp_lite_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 for UDP-Lite profile.
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 | The decoded IP packet |
References d_udp_lite_context::cce_packet, d_generic_decode(), rohc_debugf, ROHC_ERROR, d_context::specific, and d_generic_context::specific.
struct d_profile d_udplite_profile |
{ ROHC_PROFILE_UDPLITE, "UDP-Lite / Decompressor", d_udp_lite_decode, d_udp_lite_create, d_udp_lite_destroy, d_generic_get_sn, }
Define the decompression part of the UDP-Lite profile as described in the RFC 4019.