DPDK  23.07.0
Data Fields
rte_crypto_op Struct Reference

#include <rte_crypto.h>

Data Fields

struct rte_mempoolmempool
 
rte_iova_t phys_addr
 
union {
   struct rte_crypto_sym_op   sym [0]
 
   struct rte_crypto_asym_op   asym [0]
 
}; 
 
uint8_t type
 
uint8_t status
 
uint8_t sess_type
 
uint8_t aux_flags
 
uint8_t reserved [2]
 
uint16_t private_data_offset
 

Detailed Description

Cryptographic Operation.

This structure contains data relating to performing cryptographic operations. This operation structure is used to contain any operation which is supported by the cryptodev API, PMDs should check the type parameter to verify that the operation is a support function of the device. Crypto operations are enqueued and dequeued in crypto PMDs using the rte_cryptodev_enqueue_burst() / rte_cryptodev_dequeue_burst() .

Examples:
examples/fips_validation/fips_dev_self_test.c, examples/fips_validation/main.c, examples/ipsec-secgw/esp.c, examples/ipsec-secgw/ipsec.c, examples/ipsec-secgw/ipsec_process.c, examples/ipsec-secgw/ipsec_worker.c, examples/l2fwd-crypto/main.c, and examples/vhost_crypto/main.c.

Definition at line 82 of file rte_crypto.h.

Field Documentation

◆ type

uint8_t type

operation type

Examples:
examples/ipsec-secgw/ipsec_worker.c.

Definition at line 88 of file rte_crypto.h.

◆ status

uint8_t status

operation status - this is reset to RTE_CRYPTO_OP_STATUS_NOT_PROCESSED on allocation from mempool and will be set to RTE_CRYPTO_OP_STATUS_SUCCESS after crypto operation is successfully processed by a crypto PMD

Examples:
examples/ipsec-secgw/esp.c, and examples/ipsec-secgw/ipsec_worker.c.

Definition at line 90 of file rte_crypto.h.

◆ sess_type

uint8_t sess_type

operation session type

Definition at line 98 of file rte_crypto.h.

◆ aux_flags

uint8_t aux_flags

Operation specific auxiliary/additional flags. These flags carry additional information from the operation. Processing of the same is optional.

Definition at line 100 of file rte_crypto.h.

◆ reserved

uint8_t reserved[2]

Reserved bytes to fill 64 bits for future additions

Definition at line 105 of file rte_crypto.h.

◆ private_data_offset

uint16_t private_data_offset

Offset to indicate start of private data (if any). The offset is counted from the start of the rte_crypto_op including IV. The private data may be used by the application to store information which should remain untouched in the library/driver

Definition at line 109 of file rte_crypto.h.

◆ mempool

struct rte_mempool* mempool

crypto operation mempool which operation is allocated from

Definition at line 119 of file rte_crypto.h.

◆ phys_addr

rte_iova_t phys_addr

physical address of crypto operation

Definition at line 122 of file rte_crypto.h.

◆ sym

struct rte_crypto_sym_op sym[0]

◆ asym

struct rte_crypto_asym_op asym[0]

Asymmetric operation parameters

Examples:
examples/fips_validation/main.c.

Definition at line 137 of file rte_crypto.h.

◆ @61

__extension__ { ... }

operation specific parameters


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