summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Schmidt <bernds_cb1@t-online.de>2009-10-06 09:55:26 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2009-10-11 11:33:56 -0700
commitef1f7a7e878e4ae37b3a78ebdeef9f911bae59df (patch)
treee73d6e0e852d370effdb9e6fb624e696321683ac
parentc6c599272374a358b4171d50ffd605e6cf7b481c (diff)
downloadlinux-3.10-ef1f7a7e878e4ae37b3a78ebdeef9f911bae59df.tar.gz
linux-3.10-ef1f7a7e878e4ae37b3a78ebdeef9f911bae59df.tar.bz2
linux-3.10-ef1f7a7e878e4ae37b3a78ebdeef9f911bae59df.zip
ROMFS: fix length used with romfs_dev_strnlen() function
An interestingly corrupted romfs file system exposed a problem with the romfs_dev_strnlen function: it's passing the wrong value to its helpers. Rather than limit the string to the length passed in by the callers, it uses the size of the device as the limit. Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--fs/romfs/storage.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/romfs/storage.c b/fs/romfs/storage.c
index b3208adf8e7..71e2b4d50a0 100644
--- a/fs/romfs/storage.c
+++ b/fs/romfs/storage.c
@@ -253,11 +253,11 @@ ssize_t romfs_dev_strnlen(struct super_block *sb,
#ifdef CONFIG_ROMFS_ON_MTD
if (sb->s_mtd)
- return romfs_mtd_strnlen(sb, pos, limit);
+ return romfs_mtd_strnlen(sb, pos, maxlen);
#endif
#ifdef CONFIG_ROMFS_ON_BLOCK
if (sb->s_bdev)
- return romfs_blk_strnlen(sb, pos, limit);
+ return romfs_blk_strnlen(sb, pos, maxlen);
#endif
return -EIO;
}