crypto: testmgr - Validate output length in (de)compression tests
When self-testing (de)compression algorithms, make sure the actual size of the (de)compressed output data matches the expected output size. Otherwise, in case the actual output size would be smaller than the expected output size, the subsequent buffer compare test would still succeed, and no error would be reported. Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
dad3df2044
commit
b812eb0076
1 changed files with 16 additions and 0 deletions
|
@ -843,6 +843,14 @@ static int test_comp(struct crypto_comp *tfm, struct comp_testvec *ctemplate,
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (dlen != ctemplate[i].outlen) {
|
||||
printk(KERN_ERR "alg: comp: Compression test %d "
|
||||
"failed for %s: output len = %d\n", i + 1, algo,
|
||||
dlen);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (memcmp(result, ctemplate[i].output, dlen)) {
|
||||
printk(KERN_ERR "alg: comp: Compression test %d "
|
||||
"failed for %s\n", i + 1, algo);
|
||||
|
@ -867,6 +875,14 @@ static int test_comp(struct crypto_comp *tfm, struct comp_testvec *ctemplate,
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (dlen != dtemplate[i].outlen) {
|
||||
printk(KERN_ERR "alg: comp: Decompression test %d "
|
||||
"failed for %s: output len = %d\n", i + 1, algo,
|
||||
dlen);
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (memcmp(result, dtemplate[i].output, dlen)) {
|
||||
printk(KERN_ERR "alg: comp: Decompression test %d "
|
||||
"failed for %s\n", i + 1, algo);
|
||||
|
|
Loading…
Reference in a new issue