• Eric Biggers's avatar
    crypto: testmgr - fix testing OPTIONAL_KEY hash algorithms · 9b3abc01
    Eric Biggers authored
    Since testmgr uses a single tfm for all tests of each hash algorithm,
    once a key is set the tfm won't be unkeyed anymore.  But with crc32 and
    crc32c, the key is really the "default initial state" and is optional;
    those algorithms should have both keyed and unkeyed test vectors, to
    verify that implementations use the correct default key.
    
    Simply listing the unkeyed test vectors first isn't guaranteed to work
    yet because testmgr makes multiple passes through the test vectors.
    crc32c does have an unkeyed test vector listed first currently, but it
    only works by chance because the last crc32c test vector happens to use
    a key that is the same as the default key.
    
    Therefore, teach testmgr to split hash test vectors into unkeyed and
    keyed sections, and do all the unkeyed ones before the keyed ones.
    Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    9b3abc01
testmgr.c 87.6 KB