lkml.org 
[lkml]   [2015]   [Oct]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.1 20/46] crypto: ahash - ensure statesize is non-zero
    Date
    4.1-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Russell King <rmk+kernel@arm.linux.org.uk>

    commit 8996eafdcbad149ac0f772fb1649fbb75c482a6a upstream.

    Unlike shash algorithms, ahash drivers must implement export
    and import as their descriptors may contain hardware state and
    cannot be exported as is. Unfortunately some ahash drivers did
    not provide them and end up causing crashes with algif_hash.

    This patch adds a check to prevent these drivers from registering
    ahash algorithms until they are fixed.

    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    crypto/ahash.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/crypto/ahash.c
    +++ b/crypto/ahash.c
    @@ -544,7 +544,8 @@ static int ahash_prepare_alg(struct ahas
    struct crypto_alg *base = &alg->halg.base;

    if (alg->halg.digestsize > PAGE_SIZE / 8 ||
    - alg->halg.statesize > PAGE_SIZE / 8)
    + alg->halg.statesize > PAGE_SIZE / 8 ||
    + alg->halg.statesize == 0)
    return -EINVAL;

    base->cra_type = &crypto_ahash_type;



    \
     
     \ /
      Last update: 2015-10-23 20:21    [W:4.140 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site