[U-Boot] [PATCH v2] fs: ext4: fix symlink read function

From: Ronald Zachariah rozachar@cisco.com
The function ext4fs_read_symlink was unable to handle a symlink which had target name of exactly 60 characters.
Signed-off-by: Ronald Zachariah rozachar@cisco.com Signed-off-by: Stefan Roese sr@denx.de Reviewed-by: Stephen Warren swarren@nvidia.com Cc: Tom Rini trini@konsulko.com --- v2: - Change '60' to sizeof(diro->inode.b.symlink) as suggested by Stephen
fs/ext4/ext4_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c index 84fba76..40b798a 100644 --- a/fs/ext4/ext4_common.c +++ b/fs/ext4/ext4_common.c @@ -2040,7 +2040,7 @@ static char *ext4fs_read_symlink(struct ext2fs_node *node) if (!symlink) return 0;
- if (__le32_to_cpu(diro->inode.size) <= 60) { + if (__le32_to_cpu(diro->inode.size) < sizeof(diro->inode.b.symlink)) { strncpy(symlink, diro->inode.b.symlink, __le32_to_cpu(diro->inode.size)); } else {

On Thu, Apr 28, 2016 at 07:08:34AM +0200, Stefan Roese wrote:
From: Ronald Zachariah rozachar@cisco.com
The function ext4fs_read_symlink was unable to handle a symlink which had target name of exactly 60 characters.
Signed-off-by: Ronald Zachariah rozachar@cisco.com Signed-off-by: Stefan Roese sr@denx.de Reviewed-by: Stephen Warren swarren@nvidia.com Cc: Tom Rini trini@konsulko.com
Applied to u-boot/master, thanks!
participants (2)
-
Stefan Roese
-
Tom Rini