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