From f609cb5185acb0955d66795cb297e9fe9d83405a Mon Sep 17 00:00:00 2001 From: HuaxinLu Date: Thu, 30 Jun 2022 14:36:05 +0800 Subject: [PATCH] libkmod: Support SM3 hash algorithm SM3 has been supported in kernel and cryptographic libraries like openssl. This patch adds support for the SM3 algorithm of kmod. Signed-off-by: HuaxinLu --- libkmod/libkmod-signature.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libkmod/libkmod-signature.c b/libkmod/libkmod-signature.c index 4e8748c..4ae5af6 100644 --- a/libkmod/libkmod-signature.c +++ b/libkmod/libkmod-signature.c @@ -56,6 +56,7 @@ enum pkey_hash_algo { PKEY_HASH_SHA384, PKEY_HASH_SHA512, PKEY_HASH_SHA224, + PKEY_HASH_SM3, PKEY_HASH__LAST }; @@ -68,6 +69,7 @@ const char *const pkey_hash_algo[PKEY_HASH__LAST] = { [PKEY_HASH_SHA384] = "sha384", [PKEY_HASH_SHA512] = "sha512", [PKEY_HASH_SHA224] = "sha224", + [PKEY_HASH_SM3] = "sm3", }; enum pkey_id_type { @@ -161,6 +163,10 @@ static int obj_to_hash_algo(const ASN1_OBJECT *o) return PKEY_HASH_SHA512; case NID_sha224: return PKEY_HASH_SHA224; +# ifndef OPENSSL_NO_SM3 + case NID_sm3: + return PKEY_HASH_SM3; +# endif default: return -1; } -- 2.39.2