NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
policy.c File Reference
#include <netinet/in.h>
#include <time.h>
#include <doca_argp.h>
#include <doca_log.h>
#include <doca_flow.h>
#include <samples/common.h>
#include <flow_parser.h>
#include "policy.h"
#include "config.h"
Include dependency graph for policy.c:

Go to the source code of this file.

Functions

 DOCA_LOG_REGISTER (IPSEC_SECURITY_GW::POLICY)
 
static doca_error_t convert_to_doca_icv (uint8_t icv_length, enum doca_flow_crypto_icv_len *length)
 
static enum doca_flow_crypto_key_type convert_to_doca_key_type (uint8_t key_type)
 
static doca_error_t parse_sa_attrs (struct ipsec_security_gw_ipsec_policy *policy, enum doca_flow_crypto_icv_len app_icv_len, struct ipsec_security_gw_sa_attrs *sa_attrs)
 
static doca_error_t ipsec_security_gw_policy_encrypt_parse (struct ipsec_security_gw_ipsec_policy *policy, struct ipsec_security_gw_config *app_cfg, struct encrypt_rule *rule, struct rte_hash **ip6_table)
 
static doca_error_t ipsec_security_gw_policy_decrypt_parse (struct ipsec_security_gw_ipsec_policy *policy, struct ipsec_security_gw_config *app_cfg, struct decrypt_rule *rule)
 
doca_error_t ipsec_security_gw_handle_encrypt_policy (struct ipsec_security_gw_config *app_cfg, struct ipsec_security_gw_ports_map *ports[], struct ipsec_security_gw_ipsec_policy *policy, struct encrypt_rule *rule)
 
doca_error_t ipsec_security_gw_handle_decrypt_policy (struct ipsec_security_gw_config *app_cfg, struct doca_flow_port *secured_port, struct ipsec_security_gw_ipsec_policy *policy, struct decrypt_rule *rule)
 
void print_policy_attrs (struct ipsec_security_gw_ipsec_policy *policy)
 

Function Documentation

◆ convert_to_doca_icv()

static doca_error_t convert_to_doca_icv ( uint8_t  icv_length,
enum doca_flow_crypto_icv_len length 
)
static

Definition at line 48 of file policy.c.

◆ convert_to_doca_key_type()

static enum doca_flow_crypto_key_type convert_to_doca_key_type ( uint8_t  key_type)
static

Definition at line 48 of file policy.c.

◆ DOCA_LOG_REGISTER()

DOCA_LOG_REGISTER ( IPSEC_SECURITY_GW::POLICY  )

◆ ipsec_security_gw_handle_decrypt_policy()

doca_error_t ipsec_security_gw_handle_decrypt_policy ( struct ipsec_security_gw_config app_cfg,
struct doca_flow_port *  secured_port,
struct ipsec_security_gw_ipsec_policy policy,
struct decrypt_rule rule 
)

Definition at line 269 of file policy.c.

◆ ipsec_security_gw_handle_encrypt_policy()

doca_error_t ipsec_security_gw_handle_encrypt_policy ( struct ipsec_security_gw_config app_cfg,
struct ipsec_security_gw_ports_map ports[],
struct ipsec_security_gw_ipsec_policy policy,
struct encrypt_rule rule 
)

Definition at line 244 of file policy.c.

◆ ipsec_security_gw_policy_decrypt_parse()

static doca_error_t ipsec_security_gw_policy_decrypt_parse ( struct ipsec_security_gw_ipsec_policy policy,
struct ipsec_security_gw_config app_cfg,
struct decrypt_rule rule 
)
static

Definition at line 202 of file policy.c.

◆ ipsec_security_gw_policy_encrypt_parse()

static doca_error_t ipsec_security_gw_policy_encrypt_parse ( struct ipsec_security_gw_ipsec_policy policy,
struct ipsec_security_gw_config app_cfg,
struct encrypt_rule rule,
struct rte_hash **  ip6_table 
)
static

Definition at line 121 of file policy.c.

◆ parse_sa_attrs()

static doca_error_t parse_sa_attrs ( struct ipsec_security_gw_ipsec_policy policy,
enum doca_flow_crypto_icv_len  app_icv_len,
struct ipsec_security_gw_sa_attrs sa_attrs 
)
static

Definition at line 89 of file policy.c.

◆ print_policy_attrs()

void print_policy_attrs ( struct ipsec_security_gw_ipsec_policy policy)

Definition at line 296 of file policy.c.