ROHC compression/decompression library
|
ROHC decompression context for the IP-only profile. More...
#include "d_ip.h"
#include "rohc_traces.h"
#include "rohc_bit_ops.h"
#include "rohc_packets.h"
#include "rohc_debug.h"
#include "decode.h"
#include "config.h"
Functions | |
void * | d_ip_create (void) |
Create the IP decompression context. | |
rohc_packet_t | ip_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) |
Detect the type of ROHC packet for IP-based non-RTP profiles. | |
int | ip_parse_dynamic_ip (struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) |
Parse the IP dynamic part of the ROHC packet. | |
Variables | |
struct d_profile | d_ip_profile |
Define the decompression part of the IP-only profile as described in the RFC 3843. |
ROHC decompression context for the IP-only profile.
void* d_ip_create | ( | void | ) |
Create the IP decompression context.
This function is one of the functions that must exist in one profile for the framework to work.
References d_generic_create(), d_generic_context::detect_packet_type, ip_detect_packet_type(), ip_parse_dynamic_ip(), d_generic_context::parse_dyn_next_hdr, rohc_debugf, rohc_lsb_new(), ROHC_LSB_SHIFT_SN, d_generic_context::sn_lsb_ctxt, and zfree.
rohc_packet_t ip_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 | ||
) |
Detect the type of ROHC packet for IP-based non-RTP profiles.
decomp | The ROHC decompressor |
context | The decompression context |
packet | The ROHC packet |
rohc_length | The length of the ROHC packet |
large_cid_len | The length of the optional large CID field |
References d_is_ir(), d_is_irdyn(), d_is_uo0(), d_is_uo1(), d_is_uor2(), PACKET_IR, PACKET_IR_DYN, PACKET_UNKNOWN, PACKET_UO_0, PACKET_UO_1, PACKET_UOR_2, and rohc_debugf.
Referenced by d_ip_create(), and d_udp_create().
int ip_parse_dynamic_ip | ( | struct d_generic_context * | context, |
const unsigned char * | packet, | ||
unsigned int | length, | ||
struct rohc_extr_bits *const | bits | ||
) |
Parse the IP dynamic part of the ROHC packet.
context | The generic decompression context |
packet | The ROHC packet to parse |
length | The length of the ROHC packet |
bits | OUT: The bits extracted from the ROHC header |
References GET_NEXT_16_BITS, PACKET_IR, PACKET_IR_DYN, d_generic_context::packet_type, rohc_debugf, rohc_extr_bits::sn, and rohc_extr_bits::sn_nr.
Referenced by d_ip_create().
struct d_profile d_ip_profile |
{ ROHC_PROFILE_IP, "IP / Decompressor", d_generic_decode, d_ip_create, d_ip_destroy, d_generic_get_sn, }
Define the decompression part of the IP-only profile as described in the RFC 3843.