Re: Possible bug: blkcipher_walk_done()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 10, 2010 at 09:42:13AM +0000, Dmitry Kasatkin wrote:
> Hi,
> 
> It seems that there is a mistake in the implementation of
> 
> int blkcipher_walk_done(struct blkcipher_desc *desc,
>             struct blkcipher_walk *walk, int err)
> 
> blkcipher_walk_virt() will call crypto_kmap() to map page.
> 
> But in the case then err argument is < 0 and we cannot continue then
> blkcipher_walk_done() will not
> unmap the page.
> 
> What do you think?

Only blkcipher.c itself calls blkcipher_walk_done with err < 0.
Algorithms are not supposed to do that as this interface is only
for synchronous implementations.

When blkcipher.c uses it with err < 0 the pages are never mapped.

Do you need to be able to fail with a synchronous algorithm?

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux