| ROHC compression/decompression library
   
    | 
ROHC decompression context for the UDP profile. More...
#include "d_udp.h"#include "rohc_traces.h"#include "rohc_bit_ops.h"#include "rohc_debug.h"#include "crc.h"#include "protocols/udp.h"#include "config.h"
| Functions | |
| void * | d_udp_create (void) | 
| Create the UDP decompression context. | |
| int | udp_parse_static_udp (struct d_generic_context *context, const unsigned char *packet, unsigned int length, struct rohc_extr_bits *const bits) | 
| Parse the UDP static part of the ROHC packet. | |
| void | udp_update_context (const struct d_context *context, const struct rohc_decoded_values decoded) | 
| Update context with decoded UDP values. | |
| Variables | |
| struct d_profile | d_udp_profile | 
| Define the decompression part of the UDP profile as described in the RFC 3095. | |
ROHC decompression context for the UDP profile.
| void* d_udp_create | ( | void | ) | 
Create the UDP 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_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, ip_detect_packet_type(), 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_UDP, rohc_lsb_free(), rohc_lsb_new(), ROHC_LSB_SHIFT_SN, d_generic_context::sn_lsb_ctxt, d_generic_context::specific, d_udp_context::udp_checksum_present, udp_compute_crc_dynamic(), udp_compute_crc_static(), udp_parse_static_udp(), udp_update_context(), d_generic_context::update_context, and zfree.
| int udp_parse_static_udp | ( | struct d_generic_context * | context, | 
| const unsigned char * | packet, | ||
| unsigned int | length, | ||
| struct rohc_extr_bits *const | bits | ||
| ) | 
Parse the UDP static 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, rohc_debugf, rohc_extr_bits::udp_dst, rohc_extr_bits::udp_dst_nr, rohc_extr_bits::udp_src, and rohc_extr_bits::udp_src_nr.
Referenced by d_udp_create(), and d_udp_lite_create().
| void udp_update_context | ( | const struct d_context * | context, | 
| const struct rohc_decoded_values | decoded | ||
| ) | 
Update context with decoded UDP values.
The following decoded values are updated in context:
| context | The decompression context | 
| decoded | The decoded values to update in the context | 
References udphdr::dest, d_generic_changes::next_header, d_generic_context::outer_ip_changes, udphdr::source, d_context::specific, rohc_decoded_values::udp_dst, and rohc_decoded_values::udp_src.
Referenced by d_udp_create(), and d_udp_lite_create().
| struct d_profile d_udp_profile | 
{
        ROHC_PROFILE_UDP,       
        "UDP / Decompressor",   
        d_generic_decode,       
        d_udp_create,
        d_udp_destroy,
        d_generic_get_sn,
}
Define the decompression part of the UDP profile as described in the RFC 3095.
 1.7.6.1
 1.7.6.1