diff options
author | Tobias Brunner <tobias@strongswan.org> | 2017-09-25 18:07:58 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2017-11-08 16:48:10 +0100 |
commit | 126fd8af09b326f2224f686e4cd2ac99de8359ac (patch) | |
tree | ff9d8e4621ac1cd3ba86aca6f00933153f873e98 /src | |
parent | 883e7fcd65659ffc8540229934a39795d8411e13 (diff) | |
download | strongswan-126fd8af09b326f2224f686e4cd2ac99de8359ac.tar.bz2 strongswan-126fd8af09b326f2224f686e4cd2ac99de8359ac.tar.xz |
gmp: Use helper to determine XOF type
Diffstat (limited to 'src')
-rw-r--r-- | src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c | 19 | ||||
-rw-r--r-- | src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c | 19 |
2 files changed, 10 insertions, 28 deletions
diff --git a/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c b/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c index 3a9296535..e24fda8c2 100644 --- a/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c +++ b/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c @@ -354,21 +354,12 @@ static bool build_emsa_pss_signature(private_gmp_rsa_private_key_t *this, { return FALSE; } - switch (params->mgf1_hash) + xof = xof_mgf1_from_hash_algorithm(params->mgf1_hash); + if (xof == XOF_UNDEFINED) { - case HASH_SHA1: - xof = XOF_MGF1_SHA1; - break; - case HASH_SHA256: - xof = XOF_MGF1_SHA256; - break; - case HASH_SHA512: - xof = XOF_MGF1_SHA512; - break; - default: - DBG1(DBG_LIB, "%N is not supported for MGF1", hash_algorithm_names, - params->mgf1_hash); - return FALSE; + DBG1(DBG_LIB, "%N is not supported for MGF1", hash_algorithm_names, + params->mgf1_hash); + return FALSE; } /* emBits = modBits - 1 */ embits = mpz_sizeinbase(this->n, 2) - 1; diff --git a/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c b/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c index 45fdf1d67..52bc9fb38 100644 --- a/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c +++ b/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c @@ -304,21 +304,12 @@ static bool verify_emsa_pss_signature(private_gmp_rsa_public_key_t *this, { return FALSE; } - switch (params->mgf1_hash) + xof = xof_mgf1_from_hash_algorithm(params->mgf1_hash); + if (xof == XOF_UNDEFINED) { - case HASH_SHA1: - xof = XOF_MGF1_SHA1; - break; - case HASH_SHA256: - xof = XOF_MGF1_SHA256; - break; - case HASH_SHA512: - xof = XOF_MGF1_SHA512; - break; - default: - DBG1(DBG_LIB, "%N is not supported for MGF1", hash_algorithm_names, - params->mgf1_hash); - return FALSE; + DBG1(DBG_LIB, "%N is not supported for MGF1", hash_algorithm_names, + params->mgf1_hash); + return FALSE; } chunk_skip_zero(signature); if (signature.len == 0 || signature.len > this->k) |