]> git.baikalelectronics.ru Git - kernel.git/commit
ext3: validate directory entry data before use
authorDuane Griffin <duaneg@dghda.com>
Fri, 25 Jul 2008 08:46:31 +0000 (01:46 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 25 Jul 2008 17:53:33 +0000 (10:53 -0700)
commit97c174477f7a0de8a390eb1d1f2ec29051dab4dd
tree775834cb708749217f56523b9517aba700978409
parent0f780ab99c25047c2734757027f2fc644f94f178
ext3: validate directory entry data before use

ext3_dx_find_entry uses ext3_next_entry without verifying that the entry
is valid.  If its rec_len == 0 this causes an infinite loop.  Refactor the
loop to check the validity of entries before checking whether they match
and moving onto the next one.

There are other uses of ext3_next_entry in this file which also look
problematic.  They should be reviewed and fixed if/when we have a
test-case that triggers them.

This patch fixes the first case (image hdb.25.softlockup.gz) reported in
http://bugzilla.kernel.org/show_bug.cgi?id=10882.

Signed-off-by: Duane Griffin <duaneg@dghda.com>
Cc: <linux-ext4@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/ext3/namei.c