mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-19 01:26:42 +07:00
btrfs: Check name_len in btrfs_check_ref_name_override
In btrfs_log_inode, btrfs_search_forward gets the buffer and then btrfs_check_ref_name_override will read name from ref/extref for the first time. Call btrfs_is_name_len_valid before reading name. Signed-off-by: Su Yue <suy.fnst@cn.fujitsu.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
8ee8c2d62d
commit
3c1d418448
@ -4562,6 +4562,12 @@ static int btrfs_check_ref_name_override(struct extent_buffer *eb,
|
||||
this_len = sizeof(*extref) + this_name_len;
|
||||
}
|
||||
|
||||
ret = btrfs_is_name_len_valid(eb, slot, name_ptr,
|
||||
this_name_len);
|
||||
if (!ret) {
|
||||
ret = -EIO;
|
||||
goto out;
|
||||
}
|
||||
if (this_name_len > name_len) {
|
||||
char *new_name;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user