API Reference Manual 1.51.0
Loading...
Searching...
No Matches
odp_ipsec_sa_param_t Struct Reference

IPSEC Security Association (SA) parameters. More...

#include <ipsec_types.h>

Collaboration diagram for odp_ipsec_sa_param_t:
[legend]

Data Fields

odp_ipsec_dir_t dir
 IPSEC SA direction: inbound or outbound.
 
odp_ipsec_protocol_t proto
 IPSEC protocol: ESP or AH.
 
odp_ipsec_mode_t mode
 IPSEC protocol mode: transport or tunnel.
 
odp_ipsec_crypto_param_t crypto
 Parameters for crypto and authentication algorithms.
 
odp_ipsec_sa_opt_t opt
 Various SA option flags.
 
odp_ipsec_lifetime_t lifetime
 SA lifetime parameters.
 
uint32_t spi
 SPI value.
 
odp_queue_t dest_queue
 Destination queue for IPSEC events.
 
void * context
 User defined SA context pointer.
 
uint32_t context_len
 Context data length.
 
struct { 
 
   struct { 
 
      odp_ipsec_lookup_mode_t   lookup_mode 
 SA lookup mode The default value is ODP_IPSEC_LOOKUP_DISABLED. More...
 
      struct { 
 
         odp_ipsec_ip_version_t   ip_version 
 Select IP version. More...
 
         void *   dst_addr 
 IP destination address (NETWORK ENDIAN) to be matched in addition to SPI value. More...
 
      }   lookup_param 
 Additional SA lookup parameters. More...
 
      uint32_t   antireplay_ws 
 Minimum anti-replay window size. More...
 
      odp_ipsec_pipeline_t   pipeline 
 Select pipelined destination for resulting events. More...
 
      odp_cos_t   dest_cos 
 Classifier destination CoS for resulting packets. More...
 
      odp_bool_t   reassembly_en 
 Enable reassembly of IPsec tunneled fragments. More...
 
   }   inbound 
 Inbound specific parameters.
 
   struct { 
 
      odp_ipsec_tunnel_param_t   tunnel 
 Parameters for tunnel mode. More...
 
      odp_ipsec_frag_mode_t   frag_mode 
 Fragmentation mode The default value is ODP_IPSEC_FRAG_DISABLED. More...
 
      uint32_t   mtu 
 MTU for outbound IP fragmentation offload. More...
 
   }   outbound 
 Outbound specific parameters.
 
};  
 IPSEC SA direction dependent parameters.
 

Detailed Description

IPSEC Security Association (SA) parameters.

Examples
odp_ipsec.c, and odp_ipsecfwd.c.

Definition at line 873 of file api/spec/ipsec_types.h.

Field Documentation

◆ dir

odp_ipsec_dir_t odp_ipsec_sa_param_t::dir

IPSEC SA direction: inbound or outbound.

Examples
odp_ipsec.c, and odp_ipsecfwd.c.

Definition at line 875 of file api/spec/ipsec_types.h.

◆ proto

odp_ipsec_protocol_t odp_ipsec_sa_param_t::proto

IPSEC protocol: ESP or AH.

The default value is ODP_IPSEC_ESP.

Examples
odp_ipsec.c.

Definition at line 878 of file api/spec/ipsec_types.h.

◆ mode

odp_ipsec_mode_t odp_ipsec_sa_param_t::mode

IPSEC protocol mode: transport or tunnel.

Examples
odp_ipsec.c.

Definition at line 881 of file api/spec/ipsec_types.h.

◆ crypto

odp_ipsec_crypto_param_t odp_ipsec_sa_param_t::crypto

Parameters for crypto and authentication algorithms.

Examples
odp_ipsec.c.

Definition at line 884 of file api/spec/ipsec_types.h.

◆ opt

odp_ipsec_sa_opt_t odp_ipsec_sa_param_t::opt

Various SA option flags.

Definition at line 887 of file api/spec/ipsec_types.h.

◆ lifetime

odp_ipsec_lifetime_t odp_ipsec_sa_param_t::lifetime

SA lifetime parameters.

Definition at line 890 of file api/spec/ipsec_types.h.

◆ spi

uint32_t odp_ipsec_sa_param_t::spi

SPI value.

Examples
odp_ipsecfwd.c.

Definition at line 893 of file api/spec/ipsec_types.h.

◆ dest_queue

odp_queue_t odp_ipsec_sa_param_t::dest_queue

Destination queue for IPSEC events.

Operations in asynchronous or inline mode enqueue resulting events into this queue. The default queue ('default_queue') is used when SA is not known.

Examples
odp_ipsec.c, and odp_ipsecfwd.c.

Definition at line 901 of file api/spec/ipsec_types.h.

◆ context

void* odp_ipsec_sa_param_t::context

User defined SA context pointer.

User defined context pointer associated with the SA. The implementation may prefetch the context data. Default value of the pointer is NULL.

Definition at line 909 of file api/spec/ipsec_types.h.

◆ context_len

uint32_t odp_ipsec_sa_param_t::context_len

Context data length.

User defined context data length in bytes for prefetching. The implementation may use this value as a hint for the number of context data bytes to prefetch. Default value is zero (no hint).

Definition at line 917 of file api/spec/ipsec_types.h.

◆ lookup_mode

odp_ipsec_lookup_mode_t odp_ipsec_sa_param_t::lookup_mode

SA lookup mode The default value is ODP_IPSEC_LOOKUP_DISABLED.

Definition at line 926 of file api/spec/ipsec_types.h.

◆ ip_version

odp_ipsec_ip_version_t odp_ipsec_sa_param_t::ip_version

Select IP version.

Definition at line 933 of file api/spec/ipsec_types.h.

◆ dst_addr

void* odp_ipsec_sa_param_t::dst_addr

IP destination address (NETWORK ENDIAN) to be matched in addition to SPI value.

Definition at line 937 of file api/spec/ipsec_types.h.

◆ [struct]

struct { ... } odp_ipsec_sa_param_t::lookup_param

Additional SA lookup parameters.

Values are considered only in ODP_IPSEC_LOOKUP_DSTADDR_SPI lookup mode.

◆ antireplay_ws

uint32_t odp_ipsec_sa_param_t::antireplay_ws

Minimum anti-replay window size.

Use 0 to disable anti-replay service. The default value is 0.

Definition at line 944 of file api/spec/ipsec_types.h.

◆ pipeline

odp_ipsec_pipeline_t odp_ipsec_sa_param_t::pipeline

Select pipelined destination for resulting events.

Asynchronous and inline modes generate events. Select where those events are sent. Inbound SAs may choose to use pipelined classification. The default value is ODP_IPSEC_PIPELINE_NONE.

Definition at line 953 of file api/spec/ipsec_types.h.

◆ dest_cos

odp_cos_t odp_ipsec_sa_param_t::dest_cos

Classifier destination CoS for resulting packets.

Successfully decapsulated packets are sent to classification through this CoS. Other resulting events are sent to 'dest_queue'. This field is considered only when 'pipeline' is ODP_IPSEC_PIPELINE_CLS. The CoS must not be shared between any pktio interface default CoS. The maximum number of different CoS supported is defined by IPSEC capability max_cls_cos.

Definition at line 966 of file api/spec/ipsec_types.h.

◆ reassembly_en

odp_bool_t odp_ipsec_sa_param_t::reassembly_en

Enable reassembly of IPsec tunneled fragments.

Attempt reassembly of fragments after IPsec tunnel decapsulation.

Reassembly is attempted for inline or asynchronously processed packets, not for packets processed using the synchronous API function.

Fragments received through different SAs will not be reassembled into the same packet.

IPsec statistics reflect IPsec processing before reassembly and thus count all individual fragments.

Reassembly may be enabled for an SA only if reassembly was enabled in the global IPsec configuration.

Default value is false.

See also
odp_ipsec_config()

Definition at line 992 of file api/spec/ipsec_types.h.

◆ tunnel

odp_ipsec_tunnel_param_t odp_ipsec_sa_param_t::tunnel

Parameters for tunnel mode.

Examples
odp_ipsec.c.

Definition at line 999 of file api/spec/ipsec_types.h.

◆ frag_mode

odp_ipsec_frag_mode_t odp_ipsec_sa_param_t::frag_mode

Fragmentation mode The default value is ODP_IPSEC_FRAG_DISABLED.

Definition at line 1004 of file api/spec/ipsec_types.h.

◆ mtu

uint32_t odp_ipsec_sa_param_t::mtu

MTU for outbound IP fragmentation offload.

This is the maximum length of IP packets that outbound IPSEC operations may produce. The value may be updated later with odp_ipsec_sa_mtu_update().

Definition at line 1012 of file api/spec/ipsec_types.h.


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