#include <arpa/inet.h>
#include <doca_flow.h>
#include "ipsec_ctx.h"
Go to the source code of this file.
|
| #define | QUEUE_DEPTH (512) /* DOCA Flow queue depth */ |
| |
| #define | SECURED_IDX (0) /* Index for secured network port in ports array */ |
| |
| #define | UNSECURED_IDX (1) /* Index for unsecured network port in ports array */ |
| |
| #define | DEFAULT_TIMEOUT_US (10000) /* default timeout for processing entries */ |
| |
| #define | DEF_EXPECTED_ENTRIES (1024) /* default expected entries in the pipe */ |
| |
| #define | SET_L4_PORT(layer, port, value) |
| |
| #define | BE_IPV4_ADDR(a, b, c, d) (RTE_BE32((a << 24) + (b << 16) + (c << 8) + d)) /* Big endian conversion */ |
| |
| #define | SET_IP6_ADDR(addr, a, b, c, d) |
| |
| #define | SET_MAC_ADDR(addr, a, b, c, d, e, f) |
| |
|
| union security_gateway_pkt_meta | __attribute__ ((__packed__)) |
| |
| doca_error_t | ipsec_security_gw_init_doca_flow (const struct ipsec_security_gw_config *app_cfg, int nb_queues, struct ipsec_security_gw_ports_map *ports[]) |
| |
| doca_error_t | ipsec_security_gw_init_status (struct ipsec_security_gw_config *app_cfg, int nb_queues) |
| |
| doca_error_t | ipsec_security_gw_bind (struct ipsec_security_gw_ports_map *ports[], struct ipsec_security_gw_config *app_cfg) |
| |
| void | doca_flow_cleanup (int nb_ports, struct ipsec_security_gw_ports_map *ports[]) |
| |
| doca_error_t | process_entries (struct doca_flow_port *port, struct entries_status *status, int timeout, uint16_t pipe_queue) |
| |
| doca_error_t | create_switch_ingress_root_pipes (struct ipsec_security_gw_ports_map *ports[], struct ipsec_security_gw_config *app_cfg) |
| |
| doca_error_t | create_switch_egress_root_pipes (struct ipsec_security_gw_ports_map *ports[], struct ipsec_security_gw_config *app_cfg) |
| |
| doca_error_t | create_rss_pipe (struct ipsec_security_gw_config *app_cfg, struct doca_flow_port *port, uint16_t nb_queues, struct doca_flow_pipe **rss_pipe) |
| |
| void | create_hairpin_pipe_fwd (struct ipsec_security_gw_config *app_cfg, int port_id, bool encrypt, uint16_t *rss_queues, uint32_t rss_flags, struct doca_flow_fwd *fwd) |
| |
| void | remove_ethernet_padding (struct rte_mbuf **m) |
| |
| uint32_t | get_icv_len_int (enum doca_flow_crypto_icv_len icv_len) |
| |
| void | security_gateway_free_status_entries (struct ipsec_security_gw_config *app_cfg) |
| |
| void | security_gateway_free_resources (struct ipsec_security_gw_config *app_cfg) |
| |
◆ BE_IPV4_ADDR
| #define BE_IPV4_ADDR |
( |
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d |
|
) |
| (RTE_BE32((a << 24) + (b << 16) + (c << 8) + d)) /* Big endian conversion */ |
◆ DEF_EXPECTED_ENTRIES
| #define DEF_EXPECTED_ENTRIES (1024) /* default expected entries in the pipe */ |
◆ DEFAULT_TIMEOUT_US
| #define DEFAULT_TIMEOUT_US (10000) /* default timeout for processing entries */ |
◆ QUEUE_DEPTH
| #define QUEUE_DEPTH (512) /* DOCA Flow queue depth */ |
◆ SECURED_IDX
| #define SECURED_IDX (0) /* Index for secured network port in ports array */ |
◆ SET_IP6_ADDR
| #define SET_IP6_ADDR |
( |
|
addr, |
|
|
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d |
|
) |
| |
Value: do { \
addr[0] = a; \
addr[1] = b; \
addr[2] = c; \
addr[3] = d; \
} while (0)
Definition at line 53 of file flow_common.h.
◆ SET_L4_PORT
| #define SET_L4_PORT |
( |
|
layer, |
|
|
|
port, |
|
|
|
value |
|
) |
| |
Value: do { \
match.layer.tcp.l4_port.port = (
value); \
match.layer.udp.l4_port.port = (
value); \
} while (0)
@ DOCA_FLOW_L4_TYPE_EXT_TCP
@ DOCA_FLOW_L4_TYPE_EXT_UDP
Definition at line 44 of file flow_common.h.
◆ SET_MAC_ADDR
| #define SET_MAC_ADDR |
( |
|
addr, |
|
|
|
a, |
|
|
|
b, |
|
|
|
c, |
|
|
|
d, |
|
|
|
e, |
|
|
|
f |
|
) |
| |
Value: do { \
addr[0] = a & 0xff; \
addr[1] = b & 0xff; \
addr[2] = c & 0xff; \
addr[3] = d & 0xff; \
addr[4] = e & 0xff; \
addr[5] = f & 0xff; \
} while (0)
Definition at line 60 of file flow_common.h.
◆ UNSECURED_IDX
| #define UNSECURED_IDX (1) /* Index for unsecured network port in ports array */ |
◆ create_hairpin_pipe_fwd()
◆ create_rss_pipe()
◆ create_switch_egress_root_pipes()
◆ create_switch_ingress_root_pipes()
◆ doca_flow_cleanup()
◆ get_icv_len_int()
◆ ipsec_security_gw_bind()
◆ ipsec_security_gw_init_doca_flow()
◆ ipsec_security_gw_init_status()
◆ process_entries()
◆ remove_ethernet_padding()
| void remove_ethernet_padding |
( |
struct rte_mbuf ** |
m | ) |
|
◆ security_gateway_free_resources()
◆ security_gateway_free_status_entries()
◆ antireplay_syndrome
| uint32_t antireplay_syndrome |
◆ decrypt
◆ decrypt_syndrome
| uint32_t decrypt_syndrome |
◆ encrypt
◆ inner_ipv6
◆ rsvd0
◆ rule_id
◆ u32