diff options
-rw-r--r-- | crypto/hash.c | 4 | ||||
-rw-r--r-- | include/crypto/hash.h | 9 | ||||
-rw-r--r-- | qapi/crypto.json | 15 |
3 files changed, 18 insertions, 10 deletions
diff --git a/crypto/hash.c b/crypto/hash.c index 5a47b90ec0..6e83f43e4a 100644 --- a/crypto/hash.c +++ b/crypto/hash.c @@ -24,13 +24,13 @@ #include <gnutls/gnutls.h> #include <gnutls/crypto.h> -static int qcrypto_hash_alg_map[QCRYPTO_HASH_ALG_LAST] = { +static int qcrypto_hash_alg_map[QCRYPTO_HASH_ALG__MAX] = { [QCRYPTO_HASH_ALG_MD5] = GNUTLS_DIG_MD5, [QCRYPTO_HASH_ALG_SHA1] = GNUTLS_DIG_SHA1, [QCRYPTO_HASH_ALG_SHA256] = GNUTLS_DIG_SHA256, }; -static size_t qcrypto_hash_alg_size[QCRYPTO_HASH_ALG_LAST] = { +static size_t qcrypto_hash_alg_size[QCRYPTO_HASH_ALG__MAX] = { [QCRYPTO_HASH_ALG_MD5] = 16, [QCRYPTO_HASH_ALG_SHA1] = 20, [QCRYPTO_HASH_ALG_SHA256] = 32, diff --git a/include/crypto/hash.h b/include/crypto/hash.h index 3d1812442f..41822c0a4e 100644 --- a/include/crypto/hash.h +++ b/include/crypto/hash.h @@ -24,14 +24,7 @@ #include "qemu-common.h" #include "qapi/error.h" -typedef enum { - QCRYPTO_HASH_ALG_MD5, - QCRYPTO_HASH_ALG_SHA1, - QCRYPTO_HASH_ALG_SHA256, - - QCRYPTO_HASH_ALG_LAST -} QCryptoHashAlgorithm; - +/* See also "QCryptoHashAlgorithm" defined in qapi/crypto.json */ /** * qcrypto_hash_supports: diff --git a/qapi/crypto.json b/qapi/crypto.json index 4012659169..0706ded59d 100644 --- a/qapi/crypto.json +++ b/qapi/crypto.json @@ -33,3 +33,18 @@ { 'enum': 'QCryptoSecretFormat', 'prefix': 'QCRYPTO_SECRET_FORMAT', 'data': ['raw', 'base64']} + + +## +# QCryptoHashAlgorithm: +# +# The supported algorithms for computing content digests +# +# @md5: MD5. Should not be used in any new code, legacy compat only +# @sha1: SHA-1. Should not be used in any new code, legacy compat only +# @sha256: SHA-256. Current recommended strong hash. +# Since: 2.6 +## +{ 'enum': 'QCryptoHashAlgorithm', + 'prefix': 'QCRYPTO_HASH_ALG', + 'data': ['md5', 'sha1', 'sha256']} |