ROHC compression/decompression library
|
ROHC decompression context for the uncompressed profile. More...
#include "rohc_decomp.h"
#include "rohc_decomp_internals.h"
#include "rohc_bit_ops.h"
#include "rohc_traces_internal.h"
#include "crc.h"
#include "rohc_decomp_detect_packet.h"
#include <string.h>
Functions | |
static rohc_packet_t | uncomp_detect_pkt_type (const struct rohc_decomp_ctxt *const context, const uint8_t *const rohc_packet, const size_t rohc_length, const size_t large_cid_len) |
Detect the type of ROHC packet for the Uncompressed profile. | |
static rohc_status_t | uncomp_decode (struct rohc_decomp *const decomp, struct rohc_decomp_ctxt *const context, const struct rohc_buf rohc_packet, const size_t add_cid_len, const size_t large_cid_len, struct rohc_buf *const uncomp_packet, rohc_packet_t *const packet_type) |
Decode one IR or Normal packet for the Uncompressed profile. | |
static rohc_status_t | uncomp_decode_ir (struct rohc_decomp *const decomp, struct rohc_decomp_ctxt *context, const struct rohc_buf rohc_packet, const size_t add_cid_len, const size_t large_cid_len, struct rohc_buf *const uncomp_packet) |
Decode one IR packet for the Uncompressed profile. | |
static rohc_status_t | uncomp_decode_normal (struct rohc_decomp_ctxt *context, const struct rohc_buf rohc_packet, const size_t large_cid_len, struct rohc_buf *const uncomp_packet) |
Decode one Normal packet for the Uncompressed profile. | |
static uint32_t | uncomp_get_sn (const struct rohc_decomp_ctxt *const context) |
Get the reference SN value of the context. Always return 0 for the uncompressed profile. | |
static void * | uncomp_new_context (const struct rohc_decomp_ctxt *const context) |
Allocate profile-specific data, nothing to allocate for the uncompressed profile. | |
static void | uncomp_free_context (void *context) |
Destroy profile-specific data, nothing to destroy for the uncompressed profile. | |
Variables | |
struct rohc_decomp_profile | d_uncomp_profile |
Define the decompression part of the Uncompressed profile as described in the RFC 3095. |
ROHC decompression context for the uncompressed profile.
static rohc_status_t uncomp_decode | ( | struct rohc_decomp *const | decomp, |
struct rohc_decomp_ctxt *const | context, | ||
const struct rohc_buf | rohc_packet, | ||
const size_t | add_cid_len, | ||
const size_t | large_cid_len, | ||
struct rohc_buf *const | uncomp_packet, | ||
rohc_packet_t *const | packet_type | ||
) | [static] |
Decode one IR or Normal packet for the Uncompressed 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 | |
add_cid_len | The length of the optional Add-CID field | |
large_cid_len | The length of the large CID field | |
[out] | uncomp_packet | The uncompressed packet |
packet_type | IN: The type of the ROHC packet to parse OUT: The type of the parsed ROHC packet |
static rohc_status_t uncomp_decode_ir | ( | struct rohc_decomp *const | decomp, |
struct rohc_decomp_ctxt * | context, | ||
const struct rohc_buf | rohc_packet, | ||
const size_t | add_cid_len, | ||
const size_t | large_cid_len, | ||
struct rohc_buf *const | uncomp_packet | ||
) | [static] |
Decode one IR packet for the Uncompressed profile.
decomp | The ROHC decompressor | |
context | The decompression context | |
rohc_packet | The ROHC packet to decode | |
add_cid_len | The length of the optional Add-CID field | |
large_cid_len | The length of the large CID field | |
[out] | uncomp_packet | The uncompressed packet |
static rohc_status_t uncomp_decode_normal | ( | struct rohc_decomp_ctxt * | context, |
const struct rohc_buf | rohc_packet, | ||
const size_t | large_cid_len, | ||
struct rohc_buf *const | uncomp_packet | ||
) | [static] |
Decode one Normal packet for the Uncompressed profile.
context | The decompression context | |
rohc_packet | The ROHC packet to decode | |
large_cid_len | The length of the optional large CID field | |
[out] | uncomp_packet | The uncompressed packet |
static rohc_packet_t uncomp_detect_pkt_type | ( | const struct rohc_decomp_ctxt *const | context, |
const uint8_t *const | rohc_packet, | ||
const size_t | rohc_length, | ||
const size_t | large_cid_len | ||
) | [static] |
Detect the type of ROHC packet for the Uncompressed profile.
context | The decompression context |
rohc_packet | The ROHC packet |
rohc_length | The length of the ROHC packet |
large_cid_len | The length of the optional large CID field |
static void uncomp_free_context | ( | void * | context | ) | [static] |
Destroy profile-specific data, nothing to destroy for the uncompressed profile.
This function is one of the functions that must exist in one profile for the framework to work.
context | The compression context |
static uint32_t uncomp_get_sn | ( | const struct rohc_decomp_ctxt *const | context | ) | [static] |
Get the reference SN value of the context. Always return 0 for the uncompressed profile.
This function is one of the functions that must exist in one profile for the framework to work.
context | The decompression context |
static void* uncomp_new_context | ( | const struct rohc_decomp_ctxt *const | context | ) | [static] |
Allocate profile-specific data, nothing to allocate for the uncompressed profile.
This function is one of the functions that must exist in one profile for the framework to work.
{ .id = ROHC_PROFILE_UNCOMPRESSED, .new_context = uncomp_new_context, .free_context = uncomp_free_context, .decode = uncomp_decode, .detect_pkt_type = uncomp_detect_pkt_type, .get_sn = uncomp_get_sn, }
Define the decompression part of the Uncompressed profile as described in the RFC 3095.