ROHC compression/decompression library
Data Fields
c_profile Struct Reference

The ROHC compression profile. More...

#include <rohc_comp_internals.h>

Data Fields

const unsigned short protocol
 The IP protocol ID used to find out which profile is able to compress an IP packet.
const int * ports
 The UDP ports associated with this profile.
const unsigned short id
const char * description
int(* create )(struct c_context *const context, const struct ip_packet *packet)
 The handler used to create the profile-specific part of the compression context.
void(* destroy )(struct c_context *const context)
 The handler used to destroy the profile-specific part of the compression context.
int(* check_context )(const struct c_context *context, const struct ip_packet *packet)
 The handler used to check whether an uncompressed IP packet belongs to a context or not.
int(* encode )(struct c_context *const context, const struct ip_packet *packet, const int packet_size, unsigned char *const dest, const int dest_size, rohc_packet_t *const packet_type, int *const payload_offset)
 The handler used to encode uncompressed IP packets.
void(* feedback )(struct c_context *const context, const struct c_feedback *feedback)
 The handler used to warn the profile-specific part of the context about the arrival of feedback data.

Detailed Description

The ROHC compression profile.

The object defines a ROHC profile. Each field must be filled in for each new profile.


Field Documentation

int(* c_profile::check_context)(const struct c_context *context, const struct ip_packet *packet)

The handler used to check whether an uncompressed IP packet belongs to a context or not.

int(* c_profile::create)(struct c_context *const context, const struct ip_packet *packet)

The handler used to create the profile-specific part of the compression context.

A string that describes the profile

Referenced by rohc_c_context(), rohc_c_statistics(), and rohc_compress().

void(* c_profile::destroy)(struct c_context *const context)

The handler used to destroy the profile-specific part of the compression context.

Referenced by rohc_compress().

int(* c_profile::encode)(struct c_context *const context, const struct ip_packet *packet, const int packet_size, unsigned char *const dest, const int dest_size, rohc_packet_t *const packet_type, int *const payload_offset)

The handler used to encode uncompressed IP packets.

Referenced by rohc_compress().

void(* c_profile::feedback)(struct c_context *const context, const struct c_feedback *feedback)

The handler used to warn the profile-specific part of the context about the arrival of feedback data.

Referenced by c_deliver_feedback().

const unsigned short c_profile::id
const int* c_profile::ports

The UDP ports associated with this profile.

Only used with UDP as transport protocol. The pointer can be NULL if no port is specified. If defined, the list must be terminated by 0. example: { 5000, 5001, 0 }

const unsigned short c_profile::protocol

The IP protocol ID used to find out which profile is able to compress an IP packet.


The documentation for this struct was generated from the following file: