mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 16:54:20 +08:00
nl80211: Handle nla_memdup failures in handle_nan_filter
[ Upstream commit6ad27f522c
] As there's potential for failure of the nla_memdup(), check the return value. Fixes:a442b761b2
("cfg80211: add add_nan_func / del_nan_func") Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn> Link: https://lore.kernel.org/r/20220301100020.3801187-1-jiasheng@iscas.ac.cn Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
a304966606
commit
a1e603e5f3
@ -13177,6 +13177,9 @@ static int handle_nan_filter(struct nlattr *attr_filter,
|
||||
i = 0;
|
||||
nla_for_each_nested(attr, attr_filter, rem) {
|
||||
filter[i].filter = nla_memdup(attr, GFP_KERNEL);
|
||||
if (!filter[i].filter)
|
||||
goto err;
|
||||
|
||||
filter[i].len = nla_len(attr);
|
||||
i++;
|
||||
}
|
||||
@ -13189,6 +13192,15 @@ static int handle_nan_filter(struct nlattr *attr_filter,
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
err:
|
||||
i = 0;
|
||||
nla_for_each_nested(attr, attr_filter, rem) {
|
||||
kfree(filter[i].filter);
|
||||
i++;
|
||||
}
|
||||
kfree(filter);
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
static int nl80211_nan_add_func(struct sk_buff *skb,
|
||||
|
Loading…
Reference in New Issue
Block a user