📄 changelog
字号:
loop-AES-v1.7e August 26 2003 - Removed now unnecessary module locking hacks on 2.6 kernels. - loop.c-2.6.patched updated with fixes from 2.6.0-test4 - loop.c-2.4.patched updated with ioctl fixes from 2.4.22 and 2.4.20-SuSE-86 kernel. - Removed SEPARATEMODULEDIR setting from build-initrd.sh. Now /linuxrc loads modules from /boot/modules-KERNELRELEASE/ directory. - Swapon now skips first page of swap partitions when setting up encrypted swaps. This leaves unencrypted swap signature page untouched. Based on code from Yoav Weiss.loop-AES-v2.0b November 29 2003 - Added workaround for module naming breakage in recent module-init-tools (2.6 kernels). - loop.c-2.6.patched updated with fixes from 2.6.0-test11 - Added INITIALDELAY setting to build-initrd.sh. This delays /linuxrc mounts to be more compatible with slowly initializing devices. Code from Andreas Voegele. - Added support for struct loop_info64 (2.4 kernels). - Added support for removing offset from IV computations (2.4 and 2.6 kernels). - Added -r option to losetup for read-only mode. - 64 bit loop device/file offset can now be used on 2.4 and later kernels. - Added 64 bit "-s nnn" option to losetup and "-o sizelimit=nnn" option to mount to limit size of loop device. This option works only on 2.4 and later kernels. - Added support for MD5 IV computation and multi-key operation that reduce chances of identical ciphertexts and triggers change to all cipher blocks in 512 byte CBC chain if any bit is changed in the 512 byte CBC chain. MD5 IV is only used in multi-key mode, read losetup -K man page for more details. - Unhashed encryption type, created using ancient loop-AES-v1.0c, now needs 'mount -o phash=unhashed1' or 'losetup -H unhashed1'. - Added support for separate object dir on 2.6.x kernels. - Eliminated highmem io buffer bouncing (2.4 and 2.6 kernels). - Added proper error handling to kernel_thread() error cases (2.4 and 2.6 kernels).loop-AES-v2.0c December 18 2003 - Fixed util-linux patch so it compiles on boxes where C library is compiled against 2.6 kernel headers. - Fixed SMP race that could corrupt data if all following conditions are met: (1) loop device is in multi-key mode, (2) SMP or UP+PREEMPT box, (3) shared writable mappings to a file, (4) memory mapped file data modified at same time as that same data is being encrypted inside loop transfer function, and (5) unclean shutdown so that re-dirtied page won't get written again.loop-AES-v2.0d December 19 2003 - v2.0c SMP race fix created new race with small security hole on 2.2 and 2.0 kernels when loop is in multi-key mode. That security hole is now fixed. No change at all for 2.4 and later kernels because they were not affected.loop-AES-v2.0e January 21 2004 - Modified build-initrd.sh to make it work with Debian version of module-init-tools. Patch from Martin Godisch. - build-initrd.sh can now be configured to build linuxrc using dietlibc. Patch originally from Martin Godisch. Patch cleaned up by Jari Ruusu. - Tiny speed optimization in MD5 IV computation. - Added workaround for Makefile breakage in 2.6.1-mm5 - Added workaround for CONFIG_REGPARM=y breakage.loop-AES-v2.0f February 9 2004 - Modified build-initrd.sh so that initrd loads loop module using .ko extension on 2.6 kernels. Previous version always used .o extension. - Removed 2.6.1-mm5 Makefile breakage workaround. - Modified Pentium assembler implementation detection to work with new style CPU selection code that is present in some 2.6 kernels. - Changed some build-initrd.sh defaults. New defaults are: USEGPGKEY=1, USEPIVOT=1, and USEDIETLIBC=1 - Updated loop code to be compatible with Pavel Machek's software suspend code (2.4 and 2.6 kernels).loop-AES-v2.0g March 15 2004 - Fixed build-initrd.sh compile time incompatibility with Fedora Core1. - Added support for Axboe's per-backing dev unplugging (2.6 kernels). - Added kernel patch version for 2.6.4 kernel.loop-AES-v2.1a May 8 2004 - Makefile updated to work with 2.6.6-rc3 kernel. - build-initrd.sh changed to consume 40 KB less kernel RAM when used with gpg encrypted key files. This change may break really old gpg versions that choke with read-only mounted keyrings. - Kernel patch versions now require removal of drivers/block/loop.c and include/linux/loop.h source files before patch can be applied. - Added back aes.c code that avoids byte swaps on big endian boxes. This change improves performance on all non-x86 computers. - Security fix: restrict length of passphrase to max 4094 bytes when it is read from file descriptor using "mount -p 0" option. - Added ioctl32 compatibility that is needed on 64bit boxes running 32bit losetup/mount programs (2.4 and 2.6 kernels). - Fixed build-initrd.sh incompatibility with distros that have system libraries in /lib64 instead of /libloop-AES-v2.1b May 27 2004 - Makefile and loop updated to work with 2.6.7-rc1-mm1 kernel. - Fixed bio vec merge bug that only affected loop on top of md-raid0 or md-linear (2.6 kernels only). - Enabled support for 2.6 kernel bio write barriers using QUEUE_FLAG_ORDERED flag.loop-AES-v2.1c July 28 2004 - Adapted and merged Russell King's loop.c flush_dcache_page() fix. Most sane processors were not affected, but some processors with goofy aliasing caches were indeed affected (2.4 and 2.6 kernels). - Added optimized assembler implementations of AES and MD5 functions for AMD64 and compatible processors. - Pentium-2 optimized assembler implementations of AES and MD5 are really i386 compatible, so now those assembler implementations are enabled for all x86 processors. - Fixed Makefile to be compatible with distros that include "" characters in KERNELRELEASE string. - Added dkms.conf configuration file for Dynamic Kernel Module Support. Charles Duffy wrote original version. - Added support for /lib/modules/`uname -r`/source symlink. - Converted MODULE_PARM macros to module_param (2.6 kernels only). - Added workaround for scripts/modpost breakage (2.6 kernels only).loop-AES-v2.2a September 8 2004 - Fixed multi-key ioctl incompatibility with sparc64 boxes running 64 bit kernel and 32 bit userland. Fix enabled for 2.4.26 and later 2.4 kernels. 2.6 kernels were not affected. - Added key scrubbing support for AES loop cipher. This feature is not enabled by default because it doubles storage space requirement for loop encryption keys. To enable, add KEYSCRUB=y parameter to loop module make command. (2.4 and 2.6 kernels only). - Added multi-key compatibility to losetup and mount -p option handling. - Fixed incompatibility with 2.6.8.1 kernel struct bio handling. - Small optimization to bio I/O barrier support. Also added support for queue->issue_flush_fn() I/O barrier calls. (2.6 kernels only). - Added workaround for kernel bug that causes I/O errors on -EWOULDBLOCK I/O elevator failures (2.6 kernels only).loop-AES-v2.2b September 9 2004 - Fixed queue->issue_flush_fn() bug that slipped to loop-AES-v2.2a and only affected barrier mounts on 2.6.9-rc and later kernels.loop-AES-v2.2c October 24 2004 - Added compile time autodetection and workaround for per-thread vs. per-process rlimits (2.6 kernels). - Added Gentoo compatible binary key setup option to mount and losetup 'mount -p 0 -o phash=unhashed3' or 'losetup -p 0 -H unhashed3'. - Added random key setup option to mount and losetup. This can be used to encrypt /tmp with random keys. - Added workaround for module_param_array() breakage in 2.6.10-rcloop-AES-v2.2d October 26 2004 - Fixed mount so that it can set desired initial permissions for loop mounted encrypted file system root directory with random keys. This fix corrects README example 4 unwritable encrypted /tmp problem of loop-AES-v2.2c.loop-AES-v3.0a November 27 2004 - Added new improved version 3 on-disk format that includes one separate key for MD5 IV computation. This fixes a weakness in IV computation that normally is not exploitable. - Fixed a bug that caused key file decrypt failure when gpg home directory was on read-only mounted file system. This bug affected encrypted root partition usage and is present only in losetup+mount from loop-AES-v2.2c and loop-AES-v2.2d versions.loop-AES-v3.0b January 16 2005 - Fixed externally compiled module version multi-key-v3 ioctl incompatibility with boxes running 64 bit kernel and 32 bit userland. Kernel patch versions were not affected (2.4 and 2.6 kernels). - Fixed bug that made v3 on-disk format always use file backed code path on some 2.6 kernels that did not have LO_FLAGS_DO_BMAP defined. No data loss, but file backed code path is not journaled file system safe. Same bug also had cosmetic side effect of "losetup -a" status query always displaying file backed v2 on-disk format as v3 on-disk format.loop-AES-v3.0c March 18 2005 - Changed gpg pipe code in losetup/mount to use '--no-options' instead of '--options /dev/null'. Fix from Lars Packschies. - Changed losetup/mount programs to warn about unknown key data format. - Added workaround for vanished QUEUE_FLAG_ORDERED define in 2.6.11-rc3-mm1 kernel. - Changed gcc command line parameter order to be same as in kernel Makefile. Wrong parameter order caused miscompilation with Xen architecture (2.6 kernels).loop-AES-v3.0d June 18 2005 - Added support for Red Hat installer specific LOOP_CHANGE_FD ioctl. Patch from David Eduardo Gomez Noguera. (2.6 kernels) - Added support for compat_ioctl. (2.6 kernels) - Changed build-initrd.sh script to accept both old and new style ldd program output. - gcc4 cleanups.loop-AES-v3.1b September 24 2005 - Added block I/O priority support. (2.6 kernels) - Added VIA padlock hardware AES support. (2.4 and 2.6 kernels) - Added losetup -R option which recomputes size of loop device. Useful with loop device on top of LVM volume. Patch from Jim MacBaine. (2.4 and 2.6 kernels)loop-AES-v3.1c January 18 2006 - WBINVD assembler instruction is no longer used on Xen builds. - Makefile changed to probe .h header files instead of .c source files. (2.4 and 2.6 kernels) - compat_ioctl code updated to handle all 32bit/64bit loop ioctl conversions on 2.6 kernels. No longer depends on fs/compat_ioctl.c handling them. - Semaphores are not used/needed anymore on 2.6 kernels. - Makefile changed to work around 2.6.16-rc1 build breakage.loop-AES-v3.1d April 10 2006 - Fixed Makefile incompatibility with USE_KBUILD=y build option. - Fixed incompatibility with CONFIG_PAX_KERNEXEC=y PAX config option. - Fixed incompatibility with old SuSE 8.0 kernel that caused scheduler interface to be misdetected. - Changed mount to honor offset=N and sizelimit=N mount options when they were used in combination with random keys generating phash=random mount option. Old encrypted data is used in new keys generation, but earlier buggy version always read and erased old data at offset=0. - Added mount patch from Max Vozeler that makes it easier to first fsck and then mount encrypted file systems.loop-AES-v3.1e October 28 2006 - Changed swapon program to use getpagesize() instead of PAGE_SIZE macro. Fixes build failure on some architectures. Patch form Max Vozeler. - Fixed some confusing bits in README. Fix from Jens Lechtenboerger. - Work around vanished <linux/config.h> in 2.6.19-rc2 kernel. Fixes build failure. - Changed loop code to use kthread_create() instead of kernel_thread() on 2.6.19-rc and newer kernels. - Changed losetup and mount programs to output error message if gpg program does not exist when gpg encrypted key file is used.loop-AES-v3.1f February 23 2007 - Work around dash /bin/sh shell and make-3.81 incompatibilities. - Work around block layer breakage in 2.6.20-rcX-mmX kernels. - Added "cleartextkey=file" mount option to mount, and "-P file" command line option to losetup. These options help automounters. - Added loop-aes-keygen script from Max Vozeler.loop-AES-v3.2a May 15 2007 - loop_twofish.c loop_serpent.c loop_blowfish.c modules included. They are not built by default. Add EXTRA_CIPHERS=y make parameter to build them. - Makefile rewritten to always use kbuild method on 2.6 kernels. - Work around invalidate_bdev() changes on recent 2.6 kernels.loop-AES-v3.2b October 25 2007 - Fixed compatibility detection problem involving separate obj/source trees. - Fixed request size problem on unencrypted device backed USB device. - Added initramfs type initrd build option to build-initrd.sh script. Patch from Fix <pr0gress0r@ngs.ru>. - Added gcc version override option to build-initrd.sh script. - Fixed losetup -P cleartext key option which always failed to work and printed error message saying so. - Added util-linux-ng patch. - Worked around block layer interface breakage on linux-2.6.24-rc1 kernel.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -