DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] app/crypto-perf: Only run AEAD decrypt with valid test vector file.
@ 2025-07-28  8:06 Emma Finn
  0 siblings, 0 replies; only message in thread
From: Emma Finn @ 2025-07-28  8:06 UTC (permalink / raw)
  To: Kai Ji; +Cc: dev, gakhil, Emma Finn

The test dummy vector data is incorrect for AEAD decryption, so we should
only run when passed a valid test vector file. This patch also moves the
check for correct test vector data to after the vector has been
populated by test vector file or dummy data.

Signed-off-by: Emma Finn <emma.finn@intel.com>
---
 app/test-crypto-perf/cperf_options_parsing.c | 19 +++++++++++++++++--
 app/test-crypto-perf/main.c                  | 12 ++++++------
 2 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/app/test-crypto-perf/cperf_options_parsing.c b/app/test-crypto-perf/cperf_options_parsing.c
index 0e0dc4fd06..12623e4cfe 100644
--- a/app/test-crypto-perf/cperf_options_parsing.c
+++ b/app/test-crypto-perf/cperf_options_parsing.c
@@ -1482,11 +1482,26 @@ cperf_options_check(struct cperf_options *options)
 		}
 	}
 
-	if (options->test == CPERF_TEST_TYPE_THROUGHPUT &&
+	if ((options->test == CPERF_TEST_TYPE_THROUGHPUT ||
+	    options->test == CPERF_TEST_TYPE_LATENCY) &&
 	    (options->aead_op == RTE_CRYPTO_AEAD_OP_DECRYPT ||
 	     options->auth_op == RTE_CRYPTO_AUTH_OP_VERIFY) &&
 	    !options->out_of_place) {
-		RTE_LOG(ERR, USER1, "Only out-of-place is allowed in throughput decryption.\n");
+		RTE_LOG(ERR, USER1, "Only out-of-place is allowed in throughput and"
+			    " latency decryption.\n");
+		return -EINVAL;
+	}
+
+	if ((options->test == CPERF_TEST_TYPE_THROUGHPUT ||
+		 options->test == CPERF_TEST_TYPE_LATENCY) &&
+	    (options->aead_op == RTE_CRYPTO_AEAD_OP_DECRYPT ||
+	     options->auth_op == RTE_CRYPTO_AUTH_OP_VERIFY) &&
+		 options->test_name == NULL &&
+		 options->test_file == NULL) {
+		RTE_LOG(ERR, USER1, "Define path to the file with test"
+				" vectors.\n");
+		RTE_LOG(ERR, USER1, "Define test name to get the correct digest"
+				" from the test vectors.\n");
 		return -EINVAL;
 	}
 
diff --git a/app/test-crypto-perf/main.c b/app/test-crypto-perf/main.c
index 2e38c0011d..ef3c71b492 100644
--- a/app/test-crypto-perf/main.c
+++ b/app/test-crypto-perf/main.c
@@ -731,12 +731,6 @@ main(int argc, char **argv)
 					" specified file\n");
 			goto err;
 		}
-
-		if (cperf_check_test_vector(&opts, t_vec)) {
-			RTE_LOG(ERR, USER1, "Incomplete necessary test vectors"
-					"\n");
-			goto err;
-		}
 	} else {
 		t_vec = cperf_test_vector_get_dummy(&opts);
 		if (t_vec == NULL) {
@@ -746,6 +740,12 @@ main(int argc, char **argv)
 			goto err;
 		}
 	}
+	/* Add check for test vector data after dummy and file option. */
+	if (cperf_check_test_vector(&opts, t_vec)) {
+		RTE_LOG(ERR, USER1, "Incomplete necessary test vectors"
+				"\n");
+		goto err;
+	}
 
 	ret = cperf_get_op_functions(&opts, &op_fns);
 	if (ret) {
-- 
2.34.1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-07-28  8:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-28  8:06 [PATCH] app/crypto-perf: Only run AEAD decrypt with valid test vector file Emma Finn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).