On Tue, Nov 28, 2017 at 12:58:45PM -0800, Eric Biggers wrote:
> diff --git a/crypto/hmac.c b/crypto/hmac.c
> index 92871dc2a63e..82436db6b6a6 100644
> --- a/crypto/hmac.c
> +++ b/crypto/hmac.c
> @@ -196,6 +196,11 @@ static int hmac_create(struct crypto_template *tmpl, 
> struct rtattr **tb)
>       if (IS_ERR(salg))
>               return PTR_ERR(salg);
>  
> +     /* The underlying hash algorithm must be unkeyed */
> +     err = -EINVAL;
> +     if (crypto_shash_alg_has_setkey(salg))
> +             goto out_put_alg;
> +
>       err = -EINVAL;
>       ds = salg->digestsize;
>       ss = salg->statesize;

I messed this up; it needs to initialize 'alg' first.  I'll send a fixed
version.

Eric

Reply via email to