On Thu, 2018-01-25 at 17:13 +0200, Jouni Malinen wrote:
> 
> +     if (nla_get_flag(info->attrs[NL80211_ATTR_EXTERNAL_AUTH_SUPPORT]))
> +             connect.flags |= CONNECT_REQ_EXTERNAL_AUTH_SUPPORT;

It seems like here we should check for connection owner, no?

If you say yes, I can edit that in.

> +int cfg80211_external_auth_request(struct net_device *dev,
> +                                struct cfg80211_external_auth_params *params,
> +                                gfp_t gfp)
> +{
> +     struct wireless_dev *wdev = dev->ieee80211_ptr;
> +     struct cfg80211_registered_device *rdev = wiphy_to_rdev(wdev->wiphy);
> +     struct sk_buff *msg;
> +     void *hdr;
> +
> +     if (!wdev->conn_owner_nlportid)
> +             return -EINVAL;

This still kinda makes sense, of course, though it should only happen
through races (connection owner goes away and we can't tear down the
connection quickly enough before this happens)

johannes

Reply via email to