diff options
author | Ronald Zachariah <rozachar@cisco.com> | 2016-04-28 07:08:34 +0200 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-05-02 13:33:19 -0400 |
commit | 37f23885e4905ff500a8524328aa3084ac11cdb4 (patch) | |
tree | deaa4d52363cce6365ffcb85bc580f551f83e6a8 /fs/ext4 | |
parent | b525556e6325aa71427c0519f36247981cd444df (diff) | |
download | u-boot-37f23885e4905ff500a8524328aa3084ac11cdb4.tar.gz u-boot-37f23885e4905ff500a8524328aa3084ac11cdb4.tar.bz2 u-boot-37f23885e4905ff500a8524328aa3084ac11cdb4.zip |
fs: ext4: fix symlink read function
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>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/ext4_common.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c index 84fba767c1..40b798a43f 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 { |