Data Accelerator Offload
|
#include "dao_netlink_crypto.h"
#include <rte_crypto.h>
#include <netlink/xfrm/sa.h>
#include <netlink/xfrm/sp.h>
#include <netlink/xfrm/ae.h>
#include <netlink/xfrm/template.h>
#include <netlink/xfrm/selector.h>
#include <netlink/xfrm/lifetime.h>
Go to the source code of this file.
Data Structures | |
struct | dao_netlink_ip_addr |
struct | dao_netlink_xfrm_sa_xform |
struct | dao_netlink_xfrm_sa |
struct | dao_netlink_xfrm_policy |
struct | dao_netlink_xfrm_callback_ops |
Typedefs | |
typedef struct dao_netlink_ip_addr | dao_netlink_ip_addr_t |
typedef struct dao_netlink_xfrm_sa_xform | dao_netlink_xfrm_sa_xform_t |
typedef struct dao_netlink_xfrm_sa | dao_netlink_xfrm_sa_t |
typedef struct dao_netlink_xfrm_policy | dao_netlink_xfrm_policy_t |
typedef struct dao_netlink_xfrm_callback_ops | dao_netlink_xfrm_callback_ops_t |
Functions | |
static const char * | dao_netlink_ipsec_dir_to_str (dao_netlink_xfrm_policy_dir_t dir) |
static const char * | dao_netlink_xfrm_tunnel_type_to_str (dao_netlink_xfrm_tunnel_type_t ip_proto) |
int | dao_netlink_xfrm_sa_to_crypto_xform (struct dao_netlink_xfrm_sa *sa, dao_netlink_xfrm_policy_dir_t dir, struct rte_crypto_sym_xform *cipher, struct rte_crypto_sym_xform *auth) |
int | dao_netlink_xfrm_notifier_register (dao_netlink_xfrm_callback_ops_t *xfrm_ops, void *app_cookie) |
DAO XFRM Netlink Notification management
Definition in file dao_netlink_xfrm.h.
typedef struct dao_netlink_ip_addr dao_netlink_ip_addr_t |
Netlink IP address structure
typedef struct dao_netlink_xfrm_sa_xform dao_netlink_xfrm_sa_xform_t |
Crypto transform
typedef struct dao_netlink_xfrm_sa dao_netlink_xfrm_sa_t |
XFRM SA object
typedef struct dao_netlink_xfrm_policy dao_netlink_xfrm_policy_t |
XFRM Policy object
typedef struct dao_netlink_xfrm_callback_ops dao_netlink_xfrm_callback_ops_t |
High level XFRM callback ops registered by application
Policy directions from LINUX
Enumerator | |
---|---|
DAO_NETLINK_XFRM_POLICY_DIR_IN | Inbound direction |
DAO_NETLINK_XFRM_POLICY_DIR_OUT | Outbound direction |
DAO_NETLINK_XFRM_POLICY_DIR_FWD | Forward |
Definition at line 42 of file dao_netlink_xfrm.h.
xfrm op type
Enumerator | |
---|---|
DAO_NETLINK_XFRM_OP_POLICY_ADD | Add IPsec policy |
DAO_NETLINK_XFRM_OP_POLICY_UPD | Update IPsec policy |
Definition at line 52 of file dao_netlink_xfrm.h.
IPsec protocol: ESP, AH
Enumerator | |
---|---|
DAO_NETLINK_XFRM_PROTO_ESP | ESP Tunnel |
DAO_NETLINK_XFRM_PROTO_AH | AH Tunnel |
Definition at line 60 of file dao_netlink_xfrm.h.
IPsec SA mode
Enumerator | |
---|---|
DAO_NETLINK_XFRM_MODE_TRANSPORT | Transport mode |
DAO_NETLINK_XFRM_MODE_TUNNEL | Tunnel mode |
Definition at line 68 of file dao_netlink_xfrm.h.
IPsec tunnel type
Enumerator | |
---|---|
DAO_NETLINK_XFRM_TUNNEL_IPV4 | IPv4 |
DAO_NETLINK_XFRM_TUNNEL_IPV6 | IPv6 |
Definition at line 76 of file dao_netlink_xfrm.h.
IPsec SA flags
Enumerator | |
---|---|
DAO_NETLINK_XFRM_SA_FLAG_USE_ESN | Extended sequence number is enabled |
DAO_NETLINK_XFRM_SA_FLAG_USE_AR | Anti-Replay is enabled |
Definition at line 84 of file dao_netlink_xfrm.h.
|
inlinestatic |
Translate Policy direction to string
dir | Policy direction |
Definition at line 223 of file dao_netlink_xfrm.h.
|
inlinestatic |
Tunnel type to String
ip_proto | XFRM tunnel type |
Definition at line 253 of file dao_netlink_xfrm.h.
int dao_netlink_xfrm_sa_to_crypto_xform | ( | struct dao_netlink_xfrm_sa * | sa, |
dao_netlink_xfrm_policy_dir_t | dir, | ||
struct rte_crypto_sym_xform * | cipher, | ||
struct rte_crypto_sym_xform * | auth | ||
) |
Converts netlink xfrm transform to DPDK crypto xforms
sa | DAO netlink XFRM SA object received in dao_netlink_xfrm_callback_ops_t | |
dir | Policy direction | |
[out] | cipher | DPDK crypto xform for cipher key |
[out] | auth | DPDK crypto xform for auth key |
int dao_netlink_xfrm_notifier_register | ( | dao_netlink_xfrm_callback_ops_t * | xfrm_ops, |
void * | app_cookie | ||
) |
High level registration function for NETLINK_XFRM
xfrm_ops | High level XFRM callback ops |
app_cookie | Application specific cookie for identifying netlink notification |