|
ROHC compression/decompression library
|
ROHC decompression context for the uncompressed profile. More...

Functions | |
| void * | uncompressed_allocate_decode_data (void) |
| Allocate profile-specific data, nothing to allocate for the uncompressed profile. | |
| void | uncompressed_free_decode_data (void *context) |
| Destroy profile-specific data, nothing to destroy for the uncompressed profile. | |
| int | uncompressed_decode_ir (struct rohc_decomp *decomp, struct d_context *context, unsigned char *packet, int payload_size, int large_cid_len, int is_addcid_used, unsigned char *dest) |
| Decode one IR packet. | |
| unsigned int | uncompressed_detect_ir_size (struct d_context *context, unsigned char *packet, unsigned int plen, unsigned int large_cid_len) |
| Find the length of data in an IR packet. | |
| unsigned int | uncompressed_detect_ir_dyn_size (struct d_context *context, unsigned char *packet, unsigned int plen, unsigned int large_cid_len) |
| Find the length of data in an IR-DYN packet. | |
| int | uncompressed_decode (struct rohc_decomp *decomp, struct d_context *context, unsigned char *packet, int size, int second_byte, unsigned char *dest) |
| Decode one IR-DYN, UO-0, UO-1 or UOR-2 packet, but not IR packet. | |
| int | uncompressed_get_sn (struct d_context *context) |
| Get the reference SN value of the context. Always return 0 for the uncompressed profile. | |
Variables | |
| struct d_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.
| void* uncompressed_allocate_decode_data | ( | void | ) |
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.
| int uncompressed_decode | ( | struct rohc_decomp * | decomp, |
| struct d_context * | context, | ||
| unsigned char * | packet, | ||
| int | size, | ||
| int | second_byte, | ||
| unsigned char * | dest | ||
| ) |
Decode one IR-DYN, UO-0, UO-1 or UOR-2 packet, but not IR 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 |
| packet | The ROHC packet to decode |
| size | The length of the ROHC packet |
| second_byte | The offset for the second byte of the ROHC packet (depends on the CID encoding and the packet type) |
| dest | The decoded IP packet |
References GET_BIT_0_7, NO_CONTEXT, rohc_debugf, ROHC_ERROR, and d_context::state.
| int uncompressed_decode_ir | ( | struct rohc_decomp * | decomp, |
| struct d_context * | context, | ||
| unsigned char * | packet, | ||
| int | payload_size, | ||
| int | large_cid_len, | ||
| int | is_addcid_used, | ||
| unsigned char * | dest | ||
| ) |
Decode one IR 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 |
| packet | The ROHC packet to decode |
| payload_size | The length of the ROHC packet to decode |
| large_cid_len | The length of the large CID field |
| is_addcid_used | Whether the add-CID field is present or not |
| dest | The decoded IP packet |
References FULL_CONTEXT, and d_context::state.
| unsigned int uncompressed_detect_ir_dyn_size | ( | struct d_context * | context, |
| unsigned char * | packet, | ||
| unsigned int | plen, | ||
| unsigned int | large_cid_len | ||
| ) |
Find the length of data in an IR-DYN packet.
This function is one of the functions that must exist in one profile for the framework to work.
| context | The decompression context |
| packet | The IR-DYN packet after the Add-CID byte if present |
| plen | The length of the IR-DYN packet minus the Add-CID byte |
| large_cid_len | The size of the large CID field |
References rohc_debugf.
| unsigned int uncompressed_detect_ir_size | ( | struct d_context * | context, |
| unsigned char * | packet, | ||
| unsigned int | plen, | ||
| unsigned int | large_cid_len | ||
| ) |
Find the length of data in an IR packet.
This function is one of the functions that must exist in one profile for the framework to work.
| context | The decompression context |
| packet | The IR packet after the Add-CID byte if present |
| plen | The length of the IR-DYN packet minus the Add-CID byte |
| large_cid_len | The size of the large CID field |
| void uncompressed_free_decode_data | ( | void * | context | ) |
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 |
| int uncompressed_get_sn | ( | struct d_context * | context | ) |
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 |
| struct d_profile d_uncomp_profile |
{
ROHC_PROFILE_UNCOMPRESSED,
"1.0",
"Uncompressed / Decompressor",
uncompressed_decode,
uncompressed_decode_ir,
uncompressed_allocate_decode_data,
uncompressed_free_decode_data,
uncompressed_detect_ir_size,
uncompressed_detect_ir_dyn_size,
NULL,
uncompressed_get_sn,
}
Define the decompression part of the Uncompressed profile as described in the RFC 3095.
1.7.6.1