Provided by: dpdk-doc_24.11.2-2_all bug

NAME

       rte_crypto_op

SYNOPSIS

       #include <rte_crypto.h>

   Data Fields
       struct rte_mempool * mempool
       rte_iova_t phys_addr
       union {
          struct rte_crypto_sym_op sym [0]
          struct rte_crypto_asym_op asym [0]
       };

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() .

       Definition at line 91 of file rte_crypto.h.

Field Documentation

   uint8_t type
       operation type

       Definition at line 97 of file rte_crypto.h.

   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

       Definition at line 99 of file rte_crypto.h.

   uint8_t sess_type
       operation session type

       Definition at line 107 of file rte_crypto.h.

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

       The flags are defined as RTE_CRYPTO_OP_AUX_FLAGS_* and would be set by PMD for application consumption
       when the status is RTE_CRYPTO_OP_STATUS_SUCCESS. In case of errors, the value of this field is undefined.

       With TLS record offload (RTE_SECURITY_PROTOCOL_TLS_RECORD), application may provide the extra padding
       required for the plaintext provided. This field can be used for passing the same in units of 8B. The
       value would be set by application for PMD consumption.

       See also
           struct rte_security_tls_record_sess_options

       Definition at line 109 of file rte_crypto.h.

   uint8_t content_type
       Content type. The field can act both as input and output.

       As input, for passing message type in case of record write (encrypt) operation. Applicable for,

       1.  TLS 1.2

       2.  TLS 1.3

       3.  DTLS 1.2

       As output, for returning message type in case of record read (decrypt) operation. Applicable for,

       1.  TLS 1.3

       Message types are listed as RTE_TLS_TYPE_* and RTE_DTLS_TYPE_*.

       Definition at line 128 of file rte_crypto.h.

   struct  { ... }  tls_record
       TLS record

   union  { ... }  param1
       Additional per operation parameter 1.

   uint8_t reserved[1]
       Reserved bytes to fill 64 bits for future additions

       Definition at line 149 of file rte_crypto.h.

   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 153 of file rte_crypto.h.

   struct rte_mempool* mempool
       crypto operation mempool which operation is allocated from

       Definition at line 163 of file rte_crypto.h.

   rte_iova_t phys_addr
       physical address of crypto operation

       Definition at line 166 of file rte_crypto.h.

   struct rte_crypto_sym_op sym[0]
       Symmetric operation parameters

       Definition at line 178 of file rte_crypto.h.

   struct rte_crypto_asym_op asym[0]
       Asymmetric operation parameters

       Definition at line 181 of file rte_crypto.h.

   __extension__ union  { ... }
       operation specific parameters

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 24.11.2                                rte_crypto_op(3)