linux-hardened/fs/ext3
Theodore Ts'o f0cad89f5e ext3: Avoid uninitialized memory references with a corrupted htree directory
If the first htree directory is missing '.' or '..' but is otherwise a
valid directory, and we do a lookup for '.' or '..', it's possible to
dereference an uninitialized memory pointer in ext3_htree_next_block().
Avoid this.

We avoid this by moving the special case from ext3_dx_find_entry() to
ext3_find_entry(); this also means we can optimize ext3_find_entry()
slightly when NFS looks up "..".

Thanks to Brad Spengler for pointing a Clang warning that led me to
look more closely at this code.  The warning was harmless, but it was
useful in pointing out code that was too ugly to live.  This warning was
also reported by Roman Borisov.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Jan Kara <jack@suse.cz>
Cc: Brad Spengler <spender@grsecurity.net>
Signed-off-by: Jan Kara <jack@suse.cz>
2011-01-06 11:52:15 +01:00
..
acl.c ext3: update ctime when changing the file's permission by setfacl 2010-06-25 01:20:37 +02:00
acl.h ext[234]: move over to 'check_acl' permission model 2009-09-08 11:09:04 -07:00
balloc.c ext3: Update kernel-doc comments 2010-10-28 01:30:05 +02:00
bitmap.c fs: mark nibblemap const 2007-10-17 08:42:47 -07:00
dir.c ext3 uses rb_node = NULL; to zero rb_root. 2010-05-27 17:39:36 +02:00
ext3_jbd.c ext3: replace remaining __FUNCTION__ occurrences 2008-04-28 08:58:45 -07:00
file.c dquot: cleanup dquot initialize routine 2010-03-05 00:20:30 +01:00
fsync.c block: remove BLKDEV_IFL_WAIT 2010-09-16 20:52:58 +02:00
hash.c ext3: Add support for non-native signed/unsigned htree hash algorithms 2008-10-28 13:21:55 -04:00
ialloc.c ext3: Fix lost extented attributes for inode with ino == 11 2010-10-05 12:20:23 +02:00
inode.c Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6 2010-10-27 20:13:18 -07:00
ioctl.c ext3: remove the BKL in ext3/ioctl.c 2009-04-02 19:04:52 -07:00
Kconfig ext3: default to ordered mode 2010-07-23 12:50:55 +02:00
Makefile [PATCH] ext3: uninline large functions 2006-12-07 08:39:35 -08:00
namei.c ext3: Avoid uninitialized memory references with a corrupted htree directory 2011-01-06 11:52:15 +01:00
namei.h
resize.c ext3: Fix debug messages in ext3_group_extend() 2010-10-28 01:30:05 +02:00
super.c ext3: Return error code from generic_check_addressable 2011-01-06 11:52:15 +01:00
symlink.c ext3: symlink must be handled via filesystem specific operation 2010-04-12 21:11:39 +02:00
xattr.c mbcache: Remove unused features 2010-08-09 16:48:45 -04:00
xattr.h ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr_security.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr_trusted.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr_user.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00