Commit bc5b8a90 authored by Dan Carpenter's avatar Dan Carpenter Committed by Linus Torvalds

hfs: add sanity check for file name length

On a corrupted file system the ->len field could be wrong leading to
a buffer overflow.
Reported-and-acked-by: default avatarClement LECIGNE <clement.lecigne@netasq.com>
Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Cc: stable@kernel.org
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 7f80850d
...@@ -40,6 +40,8 @@ int hfs_mac2asc(struct super_block *sb, char *out, const struct hfs_name *in) ...@@ -40,6 +40,8 @@ int hfs_mac2asc(struct super_block *sb, char *out, const struct hfs_name *in)
src = in->name; src = in->name;
srclen = in->len; srclen = in->len;
if (srclen > HFS_NAMELEN)
srclen = HFS_NAMELEN;
dst = out; dst = out;
dstlen = HFS_MAX_NAMELEN; dstlen = HFS_MAX_NAMELEN;
if (nls_io) { if (nls_io) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment