crypto: perform runtime check for hash/hmac support in gcrypt
gcrypto has the ability to dynamically disable hash/hmac algorithms at runtime, so QEMU must perform a runtime check. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
bbd40a0e31
commit
a7e4275232
@ -43,7 +43,7 @@ gboolean qcrypto_hash_supports(QCryptoHashAlgo alg)
|
|||||||
{
|
{
|
||||||
if (alg < G_N_ELEMENTS(qcrypto_hash_alg_map) &&
|
if (alg < G_N_ELEMENTS(qcrypto_hash_alg_map) &&
|
||||||
qcrypto_hash_alg_map[alg] != GCRY_MD_NONE) {
|
qcrypto_hash_alg_map[alg] != GCRY_MD_NONE) {
|
||||||
return true;
|
return gcry_md_test_algo(qcrypto_hash_alg_map[alg]) == 0;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -40,7 +40,7 @@ bool qcrypto_hmac_supports(QCryptoHashAlgo alg)
|
|||||||
{
|
{
|
||||||
if (alg < G_N_ELEMENTS(qcrypto_hmac_alg_map) &&
|
if (alg < G_N_ELEMENTS(qcrypto_hmac_alg_map) &&
|
||||||
qcrypto_hmac_alg_map[alg] != GCRY_MAC_NONE) {
|
qcrypto_hmac_alg_map[alg] != GCRY_MAC_NONE) {
|
||||||
return true;
|
return gcry_mac_test_algo(qcrypto_hmac_alg_map[alg]) == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
Loading…
Reference in New Issue
Block a user