summaryrefslogtreecommitdiff
path: root/examples/fips_validation
diff options
context:
space:
mode:
authorGowrishankar Muthukrishnan <[email protected]>2023-02-28 22:58:55 +0530
committerAkhil Goyal <[email protected]>2023-03-01 12:10:06 +0100
commit6e27b74b0e324fb966c8d10d1006b68089c2a806 (patch)
tree3ef413ce32769c58cfcf1f509f9666decf3f40ee /examples/fips_validation
parent02913adaed71fa8437fca727220303b4a0df0896 (diff)
examples/fips_validation: fix AES-XTS sequence number
Fix AES XTS test to read sequence number correctly. Fixes: f8e431ed8f6 ("examples/fips_validation: add parsing for AES-XTS") Cc: [email protected] Signed-off-by: Gowrishankar Muthukrishnan <[email protected]> Acked-by: Brian Dooley <[email protected]>
Diffstat (limited to 'examples/fips_validation')
-rw-r--r--examples/fips_validation/fips_validation_xts.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/examples/fips_validation/fips_validation_xts.c b/examples/fips_validation/fips_validation_xts.c
index 531e3c688e..530df78ab4 100644
--- a/examples/fips_validation/fips_validation_xts.c
+++ b/examples/fips_validation/fips_validation_xts.c
@@ -34,6 +34,7 @@
#define DATAUNITLEN_JSON_STR "dataUnitLen"
#define PAYLOADLEN_JSON_STR "payloadLen"
#define TWEAKVALUE_JSON_STR "tweakValue"
+#define SEQNUMBER_JSON_STR "sequenceNumber"
#define PT_JSON_STR "pt"
#define CT_JSON_STR "ct"
@@ -95,14 +96,17 @@ parser_xts_read_keylen(const char *key, char *src, struct fips_val *val)
static int
parser_xts_read_tweakval(const char *key, char *src, struct fips_val *val)
{
+ char num_str[4] = {0};
int ret;
- if (info.interim_info.xts_data.tweak_mode == XTS_TWEAK_MODE_HEX)
+ if (info.interim_info.xts_data.tweak_mode == XTS_TWEAK_MODE_HEX) {
ret = parse_uint8_hex_str(key, src, val);
- else if (info.interim_info.xts_data.tweak_mode == XTS_TWEAK_MODE_NUMBER)
- ret = parser_read_uint32_bit_val(key, src, val);
- else
+ } else if (info.interim_info.xts_data.tweak_mode == XTS_TWEAK_MODE_NUMBER) {
+ snprintf(num_str, RTE_DIM(num_str), "%x", atoi(src));
+ ret = parse_uint8_hex_str(key, num_str, val);
+ } else {
ret = -1;
+ }
return ret;
}
@@ -122,6 +126,7 @@ struct fips_test_callback xts_interim_json_vectors[] = {
struct fips_test_callback xts_enc_json_vectors[] = {
{KEY_JSON_STR, parse_uint8_known_len_hex_str, &vec.cipher_auth.key},
{TWEAKVALUE_JSON_STR, parser_xts_read_tweakval, &vec.iv},
+ {SEQNUMBER_JSON_STR, parser_xts_read_tweakval, &vec.iv},
{PT_JSON_STR, parse_uint8_hex_str, &vec.pt},
{NULL, NULL, NULL} /**< end pointer */
};