ext4: Check that external xattr value block is zero
Currently we don't support xattrs with values stored out of line. Check for that in ext4_xattr_check_names() to make sure we never work with such xattrs since not all the code counts with that resulting is possible weird corruption issues. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
parent
e3014d14a8
commit
2de58f1102
|
@ -199,6 +199,8 @@ ext4_xattr_check_names(struct ext4_xattr_entry *entry, void *end,
|
|||
}
|
||||
|
||||
while (!IS_LAST_ENTRY(entry)) {
|
||||
if (entry->e_value_block != 0)
|
||||
return -EFSCORRUPTED;
|
||||
if (entry->e_value_size != 0 &&
|
||||
(value_start + le16_to_cpu(entry->e_value_offs) <
|
||||
(void *)e + sizeof(__u32) ||
|
||||
|
|
Loading…
Reference in New Issue