|
|
@@ -10949,9 +10949,12 @@ static int nl80211_set_wowlan(struct sk_buff *skb, struct genl_info *info)
|
|
|
rem) {
|
|
|
u8 *mask_pat;
|
|
|
|
|
|
- nla_parse_nested(pat_tb, MAX_NL80211_PKTPAT, pat,
|
|
|
- nl80211_packet_pattern_policy,
|
|
|
- info->extack);
|
|
|
+ err = nla_parse_nested(pat_tb, MAX_NL80211_PKTPAT, pat,
|
|
|
+ nl80211_packet_pattern_policy,
|
|
|
+ info->extack);
|
|
|
+ if (err)
|
|
|
+ goto error;
|
|
|
+
|
|
|
err = -EINVAL;
|
|
|
if (!pat_tb[NL80211_PKTPAT_MASK] ||
|
|
|
!pat_tb[NL80211_PKTPAT_PATTERN])
|
|
|
@@ -11200,8 +11203,11 @@ static int nl80211_parse_coalesce_rule(struct cfg80211_registered_device *rdev,
|
|
|
rem) {
|
|
|
u8 *mask_pat;
|
|
|
|
|
|
- nla_parse_nested(pat_tb, MAX_NL80211_PKTPAT, pat,
|
|
|
- nl80211_packet_pattern_policy, NULL);
|
|
|
+ err = nla_parse_nested(pat_tb, MAX_NL80211_PKTPAT, pat,
|
|
|
+ nl80211_packet_pattern_policy, NULL);
|
|
|
+ if (err)
|
|
|
+ return err;
|
|
|
+
|
|
|
if (!pat_tb[NL80211_PKTPAT_MASK] ||
|
|
|
!pat_tb[NL80211_PKTPAT_PATTERN])
|
|
|
return -EINVAL;
|