diff options
author | HuaxinLu <luhuaxin1@huawei.com> | 2022-06-30 14:36:05 +0800 |
---|---|---|
committer | Lucas De Marchi <lucas.de.marchi@gmail.com> | 2022-06-30 07:44:32 -0700 |
commit | f609cb5185acb0955d66795cb297e9fe9d83405a (patch) | |
tree | 3ff14972fb126354cfbd2012719e0938e0ebe8f1 | |
parent | edc7f3a2d3e1bed358c64ff0ba9276c2610eac02 (diff) | |
download | kmod-f609cb5185acb0955d66795cb297e9fe9d83405a.tar.gz |
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 <luhuaxin1@huawei.com>
-rw-r--r-- | libkmod/libkmod-signature.c | 6 |
1 files changed, 6 insertions, 0 deletions
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; } |