|
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 |