aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/cfg80211.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-11-04 06:18:17 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-11-09 16:13:51 -0500
commit5e760230e42cf759bd923457ca2753aacf2e656e (patch)
treec5fd969b75460a915f604fa10bf635999d09989f /include/net/cfg80211.h
parent06500736c5d26bff93a4f358713689073e66d0f5 (diff)
cfg80211: allow registering to beacons
Add the ability to register to received beacon frames to allow implementing OLBC logic in userspace. The registration is per wiphy since there's no point in receiving the same frame multiple times. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/cfg80211.h')
-rw-r--r--include/net/cfg80211.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index 389e85e8c03d..d01307f54faa 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -1686,6 +1686,9 @@ struct cfg80211_ops {
1686 * command. When this flag is not set, @NL80211_CMD_TDLS_OPER should be 1686 * command. When this flag is not set, @NL80211_CMD_TDLS_OPER should be
1687 * used for asking the driver/firmware to perform a TDLS operation. 1687 * used for asking the driver/firmware to perform a TDLS operation.
1688 * @WIPHY_FLAG_HAVE_AP_SME: device integrates AP SME 1688 * @WIPHY_FLAG_HAVE_AP_SME: device integrates AP SME
1689 * @WIPHY_FLAG_REPORTS_OBSS: the device will report beacons from other BSSes
1690 * when there are virtual interfaces in AP mode by calling
1691 * cfg80211_report_obss_beacon().
1689 */ 1692 */
1690enum wiphy_flags { 1693enum wiphy_flags {
1691 WIPHY_FLAG_CUSTOM_REGULATORY = BIT(0), 1694 WIPHY_FLAG_CUSTOM_REGULATORY = BIT(0),
@@ -1705,6 +1708,7 @@ enum wiphy_flags {
1705 WIPHY_FLAG_SUPPORTS_TDLS = BIT(15), 1708 WIPHY_FLAG_SUPPORTS_TDLS = BIT(15),
1706 WIPHY_FLAG_TDLS_EXTERNAL_SETUP = BIT(16), 1709 WIPHY_FLAG_TDLS_EXTERNAL_SETUP = BIT(16),
1707 WIPHY_FLAG_HAVE_AP_SME = BIT(17), 1710 WIPHY_FLAG_HAVE_AP_SME = BIT(17),
1711 WIPHY_FLAG_REPORTS_OBSS = BIT(18),
1708}; 1712};
1709 1713
1710/** 1714/**
@@ -3233,6 +3237,22 @@ bool cfg80211_rx_spurious_frame(struct net_device *dev,
3233void cfg80211_probe_status(struct net_device *dev, const u8 *addr, 3237void cfg80211_probe_status(struct net_device *dev, const u8 *addr,
3234 u64 cookie, bool acked, gfp_t gfp); 3238 u64 cookie, bool acked, gfp_t gfp);
3235 3239
3240/**
3241 * cfg80211_report_obss_beacon - report beacon from other APs
3242 * @wiphy: The wiphy that received the beacon
3243 * @frame: the frame
3244 * @len: length of the frame
3245 * @freq: frequency the frame was received on
3246 * @gfp: allocation flags
3247 *
3248 * Use this function to report to userspace when a beacon was
3249 * received. It is not useful to call this when there is no
3250 * netdev that is in AP/GO mode.
3251 */
3252void cfg80211_report_obss_beacon(struct wiphy *wiphy,
3253 const u8 *frame, size_t len,
3254 int freq, gfp_t gfp);
3255
3236/* Logging, debugging and troubleshooting/diagnostic helpers. */ 3256/* Logging, debugging and troubleshooting/diagnostic helpers. */
3237 3257
3238/* wiphy_printk helpers, similar to dev_printk */ 3258/* wiphy_printk helpers, similar to dev_printk */