You are right, it is possible to do it as you comment (NL80211_CMD_STOP_AP and then NL80211_CMD_START_AP). It is therefore not necessary a specific command to abort the CAC. Thank you very much for the clarification and the time spent. PS: If you use OpenWRT you have to control the STOP and the START, the command "wifi" does not work properly. El mié., 26 sept. 2018 a las 11:26, Johannes Berg (<johannes@xxxxxxxxxxxxxxxx>) escribió: > > On Tue, 2018-09-25 at 10:19 +0200, Enrique Giraldo wrote: > > Add NL80211_CMD_ABORT_CAC to the nl80211 interface. > > As Arend pointed out, this really needs a much better commit message. > > Please also adjust the subject to have a proper prefix etc. See > https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches > for some help with that. > > > @@ -3227,6 +3228,7 @@ struct cfg80211_ops { > > int (*scan)(struct wiphy *wiphy, > > struct cfg80211_scan_request *request); > > void (*abort_scan)(struct wiphy *wiphy, struct wireless_dev *wdev); > > + void (*abort_cac)(struct wiphy *wiphy, struct wireless_dev *wdev); > > This is fine, you can add in the middle of the struct. > > > > > @@ -1220,6 +1223,7 @@ enum nl80211_commands { > > NL80211_CMD_WIPHY_REG_CHANGE, > > > > NL80211_CMD_ABORT_SCAN, > > + NL80211_CMD_ABORT_CAC, > > > > NL80211_CMD_START_NAN, > > This is *not* OK, as the comments here indicate, we must never add > anything in the middle of this enum, doing so breaks userspace ABI. > > johannes