|
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.
1.7.6.1