Jari Ruusu wrote: > Herbert Valerio Riedel wrote: > > finally, code to initialize the aes module have been hardcoded into loop.c > > this is IMHO a rather static approach, since unflexible, if it wasn't for > > this one, the modified loop.c could be easily used as drop in replacament > > for the cryptoapi, but nevertheless it might be possible to use cryptoapi > > with minor adaptions with the loop-AES modified loop-AES' loop.o. I'll > > investigate this one a little bit more, this might finally allow for > > backporting the cryptoapi to 2.2 by making use of jari's 2.2 > > modifications. > > Your code uses loop_register_transfer(). I see no obvious reasons why > loop-AES' loop.o would prevent your code from registering cipher id 18 > (LO_CRYPT_CRYPTOAPI). Only id 16 (LO_CRYPT_AES) is preregistered. I forgot one thing: if a cipher module is separated from loop driver code, cipher module locking is completely broken. This is a bug in Linus released loop.c code. In loop-AES, the AES cipher code and 'main' loop code are linked together, so this bug does not affect the AES cipher in loop-AES. Things go wrong only if external non-AES cipher module is registered. This bug was reported to linux-kernel mailing list by Ingo Rohloff on 21 June 2001. Subject was "Loop encryption module locking bug (linux-2.4.5)." Just seach LKML archives to read about it. Regards, Jari Ruusu <jari.ruusu@xxxxxxxxxx> Linux-crypto: cryptography in and on the Linux system Archive: http://mail.nl.linux.org/linux-crypto/