summaryrefslogtreecommitdiff
path: root/cipher
diff options
context:
space:
mode:
authorJussi Kivilinna <jussi.kivilinna@iki.fi>2015-10-25 15:11:14 +0200
committerJussi Kivilinna <jussi.kivilinna@iki.fi>2015-10-28 20:12:21 +0200
commitcee2e122ec6c1886957a8d47498eb63a6a921725 (patch)
treea24b86c36f84e71f3fcf09ff6fbd5ff8fa2c0b32 /cipher
parent74184c28fbe7ff58cf57f0094ef957d94045da7d (diff)
downloadlibgcrypt-cee2e122ec6c1886957a8d47498eb63a6a921725.tar.gz
md: check hmac flag in prepare_macpads
* cipher/md.c (prepare_macpads): Check hmac flag. -- Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
Diffstat (limited to 'cipher')
-rw-r--r--cipher/md.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/cipher/md.c b/cipher/md.c
index c6bf90d2..948d269b 100644
--- a/cipher/md.c
+++ b/cipher/md.c
@@ -671,6 +671,9 @@ prepare_macpads (gcry_md_hd_t a, const unsigned char *key, size_t keylen)
if (!a->ctx->list)
return GPG_ERR_DIGEST_ALGO; /* Might happen if no algo is enabled. */
+ if (!a->ctx->flags.hmac)
+ return GPG_ERR_DIGEST_ALGO; /* Tried setkey for non-HMAC md. */
+
for (r = a->ctx->list; r; r = r->next)
{
const unsigned char *k;