|
ROHC compression/decompression library
|
ROHC ESP compression profile. More...
#include "c_esp.h"#include "c_generic.h"#include "c_ip.h"#include "rohc_traces_internal.h"#include "crc.h"#include "protocols/esp.h"#include "rohc_utils.h"#include <stdbool.h>#include <string.h>#include <assert.h>
Data Structures | |
| struct | sc_esp_context |
| Define the ESP part of the profile decompression context. More... | |
Functions | |
| bool | c_esp_check_profile (const struct rohc_comp *const comp, const struct ip_packet *const outer_ip, const struct ip_packet *const inner_ip, const uint8_t protocol, rohc_ctxt_key_t *const ctxt_key) |
| Check if the given packet corresponds to the ESP profile. | |
Variables | |
| struct c_profile | c_esp_profile |
| Define the compression part of the ESP profile as described in the RFC 3095. | |
ROHC ESP compression profile.
| bool c_esp_check_profile | ( | const struct rohc_comp *const | comp, |
| const struct ip_packet *const | outer_ip, | ||
| const struct ip_packet *const | inner_ip, | ||
| const uint8_t | protocol, | ||
| rohc_ctxt_key_t *const | ctxt_key | ||
| ) |
Check if the given packet corresponds to the ESP profile.
Conditions are:
This function is one of the functions that must exist in one profile for the framework to work.
| comp | The ROHC compressor |
| outer_ip | The outer IP header of the IP packet to check |
| inner_ip |
|
| protocol | The transport protocol carried by the IP packet:
|
| ctxt_key | The key to help finding the context associated with packet |
References c_generic_check_profile(), ip_get_next_layer(), ip_get_plen(), ROHC_IPPROTO_ESP, and esphdr::spi.
| struct c_profile c_esp_profile |
{
ROHC_IPPROTO_ESP,
ROHC_PROFILE_ESP,
"ESP / Compressor",
c_esp_create,
c_generic_destroy,
c_esp_check_profile,
c_esp_check_context,
c_esp_encode,
c_generic_reinit_context,
c_generic_feedback,
c_generic_use_udp_port,
}
Define the compression part of the ESP profile as described in the RFC 3095.
1.7.6.1