]> git.baikalelectronics.ru Git - kernel.git/commit
crypto: testmgr - test the shash API
authorEric Biggers <ebiggers@google.com>
Tue, 28 May 2019 16:40:55 +0000 (09:40 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 6 Jun 2019 06:38:57 +0000 (14:38 +0800)
commit224020bcc0e4054b4ab480cab684780873c3ea9a
treed2e24e3559521e8611f0df26c164b32047c320f3
parentf70081117f77fbeaf836bd00ad28e3f6d4ff3bbe
crypto: testmgr - test the shash API

For hash algorithms implemented using the "shash" algorithm type, test
both the ahash and shash APIs, not just the ahash API.

Testing the ahash API already tests the shash API indirectly, which is
normally good enough.  However, there have been corner cases where there
have been shash bugs that don't get exposed through the ahash API.  So,
update testmgr to test the shash API too.

This would have detected the arm64 SHA-1 and SHA-2 bugs for which fixes
were just sent out (https://patchwork.kernel.org/patch/10964843/ and
https://patchwork.kernel.org/patch/10965089/):

    alg: shash: sha1-ce test failed (wrong result) on test vector 0, cfg="init+finup aligned buffer"
    alg: shash: sha224-ce test failed (wrong result) on test vector 0, cfg="init+finup aligned buffer"
    alg: shash: sha256-ce test failed (wrong result) on test vector 0, cfg="init+finup aligned buffer"

This also would have detected the bugs fixed by commit ea8eeb95573e
("crypto: crct10dif-generic - fix use via crypto_shash_digest()") and
commit dea168d765dc
("crypto: x86/crct10dif-pcl - fix use via crypto_shash_digest()").

Signed-off-by: Eric Biggers <ebiggers@google.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/testmgr.c