]> git.droids-corp.org - dpdk.git/commitdiff
security: support user-specified IV
authorAnoob Joseph <anoobj@marvell.com>
Tue, 7 Sep 2021 16:17:40 +0000 (21:47 +0530)
committerAkhil Goyal <gakhil@marvell.com>
Tue, 28 Sep 2021 11:35:32 +0000 (13:35 +0200)
Enabled user to provide IV to be used per security
operation. This would be used with lookaside protocol
offload for comparing against known vectors.

By default, PMD would internally generate random IV.

Signed-off-by: Anoob Joseph <anoobj@marvell.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
doc/guides/rel_notes/release_21_11.rst
lib/security/rte_security.h

index a11929c621c9117d122efd2812868620fafcde79..2a13459f90c98753d79fa1d82210c28ac730d4b9 100644 (file)
@@ -169,6 +169,10 @@ ABI Changes
   have much processing in PMD specific callbacks but just 64-bit set/get.
   This avoids a per packet function pointer jump overhead for such PMDs.
 
+* security: A new option ``iv_gen_disable`` was added in structure
+  ``rte_security_ipsec_sa_options`` to disable IV generation inside PMD,
+  so that application can provide its own IV and test known test vectors.
+
 
 Known Issues
 ------------
index 2446ab0671405f063088129babece3ba29513f27..f9e65912b467b3204de6571c6866bd8fd708c519 100644 (file)
@@ -192,6 +192,20 @@ struct rte_security_ipsec_sa_options {
         * * 0: Disable per session security statistics collection for this SA.
         */
        uint32_t stats : 1;
+
+       /** Disable IV generation in PMD
+        *
+        * * 1: Disable IV generation in PMD. When disabled, IV provided in
+        *      rte_crypto_op will be used by the PMD.
+        *
+        * * 0: Enable IV generation in PMD. When enabled, PMD generated random
+        *      value would be used and application is not required to provide
+        *      IV.
+        *
+        * Note: For inline cases, IV generation would always need to be handled
+        * by the PMD.
+        */
+       uint32_t iv_gen_disable : 1;
 };
 
 /** IPSec security association direction */