From a18622864c8e9e7f7eea463db69ec3d4df00efdc Mon Sep 17 00:00:00 2001 From: Archana Muniganti Date: Thu, 11 Jun 2020 19:14:15 +0530 Subject: [PATCH] examples/fips_validation: fix TDES interim callback Fix missing callback registration and the incorrect callback definition for interim NK_STR. The callback should compare input key against the interim. Fixes: 527cbf3d5ee3 ("examples/fips_validation: support TDES parsing") Cc: stable@dpdk.org Signed-off-by: Archana Muniganti --- .../fips_validation/fips_validation_tdes.c | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/examples/fips_validation/fips_validation_tdes.c b/examples/fips_validation/fips_validation_tdes.c index 84dd288e60..a1ddd57cfd 100644 --- a/examples/fips_validation/fips_validation_tdes.c +++ b/examples/fips_validation/fips_validation_tdes.c @@ -59,9 +59,7 @@ static int parse_tdes_uint8_hex_str(const char *key, char *src, struct fips_val *val); static int -parse_tdes_interim(const char *key, - __rte_unused char *text, - struct fips_val *val); +parse_tdes_interim(const char *key, char *text, struct fips_val *val); struct fips_test_callback tdes_tests_vectors[] = { {KEYS_STR, parse_tdes_uint8_hex_str, &vec.cipher_auth.key}, @@ -77,6 +75,7 @@ struct fips_test_callback tdes_tests_vectors[] = { struct fips_test_callback tdes_tests_interim_vectors[] = { {ENC_STR, parse_tdes_interim, NULL}, {DEC_STR, parse_tdes_interim, NULL}, + {NK_STR, parse_tdes_interim, NULL}, {NULL, NULL, NULL} /**< end pointer */ }; @@ -94,21 +93,23 @@ struct fips_test_callback tdes_writeback_callbacks[] = { }; static int -parse_tdes_interim(const char *key, - __rte_unused char *text, +parse_tdes_interim(const char *key, char *text, __rte_unused struct fips_val *val) { if (strstr(key, ENC_STR)) info.op = FIPS_TEST_ENC_AUTH_GEN; else if (strstr(key, DEC_STR)) info.op = FIPS_TEST_DEC_AUTH_VERIF; - else if (strstr(NK_STR, "NumKeys = 1")) - info.interim_info.tdes_data.nb_keys = 1; - else if (strstr(NK_STR, "NumKeys = 2")) - info.interim_info.tdes_data.nb_keys = 2; - else if (strstr(NK_STR, "NumKeys = 3")) - info.interim_info.tdes_data.nb_keys = 3; - else + else if (strstr(key, NK_STR)) { + if (strcmp(text, "NumKeys = 1") == 0) + info.interim_info.tdes_data.nb_keys = 1; + else if (strcmp(text, "NumKeys = 2") == 0) + info.interim_info.tdes_data.nb_keys = 2; + else if (strcmp(text, "NumKeys = 3") == 0) + info.interim_info.tdes_data.nb_keys = 3; + else + return -EINVAL; + } else return -EINVAL; return 0; -- 2.20.1