aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2014-12-15 13:25:39 +0200
committerMister Oyster <oysterized@gmail.com>2017-04-13 12:32:24 +0200
commit50a83a05586f62b3c48ea83126cc44df135c813a (patch)
tree5aaee5605d1228d1a885ec4d0120d983feb38cbe /include
parentfa5735fd9060d1c90bd96fa9633d7ee5d5dbe651 (diff)
BACKPORT: nl80211: Stop scheduled scan if netlink client disappears
(cherry pick from commit 93a1e86ce10e4898f9ca9cd09d659a8a7780ee5e) An attribute NL80211_ATTR_SOCKET_OWNER can be set by the scan initiator. If present, the attribute will cause the scan to be stopped if the client dies. Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Bug: 25561044 Change-Id: Ibe4a555b29b64b6df1b9ed4cdcd0f05a69416d14
Diffstat (limited to 'include')
-rw-r--r--include/net/cfg80211.h3
-rw-r--r--include/uapi/linux/nl80211.h5
2 files changed, 7 insertions, 1 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 7957aa425..35d70af27 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1297,6 +1297,8 @@ struct cfg80211_match_set {
* @channels: channels to scan
* @min_rssi_thold: for drivers only supporting a single threshold, this
* contains the minimum over all matchsets
+ * @owner_nlportid: netlink portid of owner (if this should is a request
+ * owned by a particular socket)
*/
struct cfg80211_sched_scan_request {
struct cfg80211_ssid *ssids;
@@ -1315,6 +1317,7 @@ struct cfg80211_sched_scan_request {
struct wiphy *wiphy;
struct net_device *dev;
unsigned long scan_start;
+ u32 owner_nlportid;
/* keep last */
struct ieee80211_channel *channels[0];
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h
index d69ec9ac1..4c01b7cff 100644
--- a/include/uapi/linux/nl80211.h
+++ b/include/uapi/linux/nl80211.h
@@ -1518,7 +1518,10 @@ enum nl80211_commands {
*
* @NL80211_ATTR_IFACE_SOCKET_OWNER: flag attribute, if set during interface
* creation then the new interface will be owned by the netlink socket
- * that created it and will be destroyed when the socket is closed
+ * that created it and will be destroyed when the socket is closed.
+ * If set during scheduled scan start then the new scan req will be
+ * owned by the netlink socket that created it and the scheduled scan will
+ * be stopped when the socket is closed.
*
* @NL80211_ATTR_MAX: highest attribute number currently defined
* @__NL80211_ATTR_AFTER_LAST: internal use