Messages in this thread | | | Subject | Re: [PATCH] nl80211: check return of nla_parse_nested | From | Johannes Berg <> | Date | Fri, 18 Feb 2022 17:51:04 +0100 |
| |
On Fri, 2022-02-18 at 08:30 -0800, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > Clang static analysis reports this representative problem > nl80211.c:15426:6: warning: Branch condition evaluates > to a garbage value > if (!tb[NL80211_SAR_ATTR_TYPE] || > ^~~~~~~~~~~~~~~~~~~~~~~~~~ > > tb is set when nla_parse_nested() is successful. > So check.
Well, it's a bit annoying that we cannot express/check this, but we already validated that it's going to succeed, through the nested policy:
static const struct nla_policy nl80211_policy[NUM_NL80211_ATTR] = { [...] [NL80211_ATTR_SAR_SPEC] = NLA_POLICY_NESTED(sar_policy),
Thus, it cannot actually fail. I suppose in this case checking for errors doesn't make the code that much worse, but there's isn't really much point. Maybe a comment would be useful?
johannes
| |