libwd/0073-uadk_tool-added-sm4-xts-GB-test.patch
2023-11-23 10:41:04 +08:00

94 lines
3.2 KiB
Diff

From 12c7632bc6dbf9043c8c1e24177bd3b36aed8b57 Mon Sep 17 00:00:00 2001
From: Weili Qian <qianweili@huawei.com>
Date: Fri, 10 Nov 2023 11:52:42 +0800
Subject: [PATCH 73/85] uadk_tool: added sm4-xts GB test
Add testcase cmd sm4-128-xts-gb for sm4-xts GB.
Signed-off-by: Weili Qian <qianweili@huawei.com>
---
uadk_tool/benchmark/sec_uadk_benchmark.c | 6 ++++++
uadk_tool/benchmark/sec_wd_benchmark.c | 6 ++++++
uadk_tool/benchmark/uadk_benchmark.c | 4 +++-
uadk_tool/benchmark/uadk_benchmark.h | 1 +
4 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/uadk_tool/benchmark/sec_uadk_benchmark.c b/uadk_tool/benchmark/sec_uadk_benchmark.c
index 7ccdb7e..d6effe5 100644
--- a/uadk_tool/benchmark/sec_uadk_benchmark.c
+++ b/uadk_tool/benchmark/sec_uadk_benchmark.c
@@ -370,6 +370,12 @@ static int sec_uadk_param_parse(thread_data *tddata, struct acc_option *options)
mode = WD_CIPHER_XTS;
alg = WD_CIPHER_SM4;
break;
+ case SM4_128_XTS_GB:
+ keysize = 32;
+ ivsize = 16;
+ mode = WD_CIPHER_XTS_GB;
+ alg = WD_CIPHER_SM4;
+ break;
case AES_128_CCM:
keysize = 16;
ivsize = 16;
diff --git a/uadk_tool/benchmark/sec_wd_benchmark.c b/uadk_tool/benchmark/sec_wd_benchmark.c
index e620c3c..6e5c8a0 100644
--- a/uadk_tool/benchmark/sec_wd_benchmark.c
+++ b/uadk_tool/benchmark/sec_wd_benchmark.c
@@ -436,6 +436,12 @@ static int sec_wd_param_parse(thread_data *tddata, struct acc_option *options)
mode = WCRYPTO_CIPHER_XTS;
alg = WCRYPTO_CIPHER_SM4;
break;
+ case SM4_128_XTS_GB:
+ keysize = 32;
+ ivsize = 16;
+ mode = WCRYPTO_CIPHER_XTS_GB;
+ alg = WCRYPTO_CIPHER_SM4;
+ break;
case AES_128_CCM:
keysize = 16;
ivsize = 16;
diff --git a/uadk_tool/benchmark/uadk_benchmark.c b/uadk_tool/benchmark/uadk_benchmark.c
index ff95bea..6d5d009 100644
--- a/uadk_tool/benchmark/uadk_benchmark.c
+++ b/uadk_tool/benchmark/uadk_benchmark.c
@@ -122,6 +122,7 @@ static struct acc_alg_item alg_options[] = {
{"sm4-128-ofb", SM4_128_OFB},
{"sm4-128-cfb", SM4_128_CFB},
{"sm4-128-xts", SM4_128_XTS},
+ {"sm4-128-xts-gb", SM4_128_XTS_GB},
{"aes-128-ccm", AES_128_CCM},
{"aes-192-ccm", AES_192_CCM},
{"aes-256-ccm", AES_256_CCM},
@@ -210,6 +211,7 @@ static struct acc_alg_item alg_name_options[] = {
{"ofb(sm4)", SM4_128_OFB},
{"cfb(sm4)", SM4_128_CFB},
{"xts(sm4)", SM4_128_XTS},
+ {"xts(sm4)", SM4_128_XTS_GB},
{"ccm(aes)", AES_128_CCM},
{"ccm(aes)", AES_192_CCM},
{"ccm(aes)", AES_256_CCM},
@@ -482,7 +484,7 @@ static void parse_alg_param(struct acc_option *option)
snprintf(option->algclass, MAX_ALG_NAME, "%s", "ecdsa");
option->acctype = HPRE_TYPE;
option->subtype = ECDSA_TYPE;
- } else if (option->algtype <= SM4_128_XTS) {
+ } else if (option->algtype <= SM4_128_XTS_GB) {
snprintf(option->algclass, MAX_ALG_NAME, "%s", "cipher");
option->acctype = SEC_TYPE;
option->subtype = CIPHER_TYPE;
diff --git a/uadk_tool/benchmark/uadk_benchmark.h b/uadk_tool/benchmark/uadk_benchmark.h
index c2ba9bc..1cce63d 100644
--- a/uadk_tool/benchmark/uadk_benchmark.h
+++ b/uadk_tool/benchmark/uadk_benchmark.h
@@ -173,6 +173,7 @@ enum test_alg {
SM4_128_OFB,
SM4_128_CFB,
SM4_128_XTS,
+ SM4_128_XTS_GB,
AES_128_CCM, // aead
AES_192_CCM,
AES_256_CCM,
--
2.25.1