crypto: tcrypt - Fix AEAD chunk testing
My changeset 4b22f0ddb6
crypto: tcrpyt - Remove unnecessary kmap/kunmap calls
introduced a typo that broke AEAD chunk testing. In particular,
axbuf should really be xbuf.
There is also an issue with testing the last segment when encrypting.
The additional part produced by AEAD wasn't tested. Similarly, on
decryption the additional part of the AEAD input is mistaken for
corruption.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
f3c85bc1bc
commit
f176e632ef
1 changed files with 19 additions and 9 deletions
|
@ -481,21 +481,31 @@ next_one:
|
|||
|
||||
for (k = 0, temp = 0; k < template[i].np; k++) {
|
||||
printk(KERN_INFO "page %u\n", k);
|
||||
q = &axbuf[IDX[k]];
|
||||
hexdump(q, template[i].tap[k]);
|
||||
q = &xbuf[IDX[k]];
|
||||
|
||||
n = template[i].tap[k];
|
||||
if (k == template[i].np - 1)
|
||||
n += enc ? authsize : -authsize;
|
||||
hexdump(q, n);
|
||||
printk(KERN_INFO "%s\n",
|
||||
memcmp(q, template[i].result + temp,
|
||||
template[i].tap[k] -
|
||||
(k < template[i].np - 1 || enc ?
|
||||
0 : authsize)) ?
|
||||
memcmp(q, template[i].result + temp, n) ?
|
||||
"fail" : "pass");
|
||||
|
||||
for (n = 0; q[template[i].tap[k] + n]; n++)
|
||||
;
|
||||
q += n;
|
||||
if (k == template[i].np - 1 && !enc) {
|
||||
if (memcmp(q, template[i].input +
|
||||
temp + n, authsize))
|
||||
n = authsize;
|
||||
else
|
||||
n = 0;
|
||||
} else {
|
||||
for (n = 0; q[n]; n++)
|
||||
;
|
||||
}
|
||||
if (n) {
|
||||
printk("Result buffer corruption %u "
|
||||
"bytes:\n", n);
|
||||
hexdump(&q[template[i].tap[k]], n);
|
||||
hexdump(q, n);
|
||||
}
|
||||
|
||||
temp += template[i].tap[k];
|
||||
|
|
Loading…
Reference in a new issue