• Herbert Xu's avatar
    crypto: algif_hash - Fix NULL hash crash with shash · a8348bca
    Herbert Xu authored
    Recently algif_hash has been changed to allow null hashes.  This
    triggers a bug when used with an shash algorithm whereby it will
    cause a crash during the digest operation.
    
    This patch fixes it by avoiding the digest operation and instead
    doing an init followed by a final which avoids the buggy code in
    shash.
    
    This patch also ensures that the result buffer is freed after an
    error so that it is not returned as a genuine hash result on the
    next recv call.
    
    The shash/ahash wrapper code will be fixed later to handle this
    case correctly.
    
    Fixes: 493b2ed3 ("crypto: algif_hash - Handle NULL hashes correctly")
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    Tested-by: default avatarLaura Abbott <labbott@redhat.com>
    a8348bca
algif_hash.c 10.4 KB