summaryrefslogtreecommitdiffstats
path: root/net/wireless/core.h
diff options
context:
space:
mode:
authorBen Greear2012-10-26 23:49:25 +0200
committerJohannes Berg2012-11-05 16:33:45 +0100
commit37c73b5f323c973c1db6857494a6685260440be1 (patch)
tree5f9e2b055552c6e5053f8a2ab2ebb686b3af5411 /net/wireless/core.h
parentmac80211: implement set_mcast_rate() callback (diff)
downloadkernel-qcow2-linux-37c73b5f323c973c1db6857494a6685260440be1.tar.gz
kernel-qcow2-linux-37c73b5f323c973c1db6857494a6685260440be1.tar.xz
kernel-qcow2-linux-37c73b5f323c973c1db6857494a6685260440be1.zip
cfg80211: allow registering more than one beacon listener
The commit: commit 5e760230e42cf759bd923457ca2753aacf2e656e Author: Johannes Berg <johannes.berg@intel.com> Date: Fri Nov 4 11:18:17 2011 +0100 cfg80211: allow registering to beacons allowed only a single process to register for beacon events per wiphy. This breaks cases where a user may want two or more VIFs on a wiphy and run a seperate hostapd process on each vif. This patch allows multiple beacon listeners, fixing the regression. Signed-off-by: Ben Greear <greearb@candelatech.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless/core.h')
-rw-r--r--net/wireless/core.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/net/wireless/core.h b/net/wireless/core.h
index b8eb743fe7da..e53831c876bb 100644
--- a/net/wireless/core.h
+++ b/net/wireless/core.h
@@ -55,7 +55,8 @@ struct cfg80211_registered_device {
int opencount; /* also protected by devlist_mtx */
wait_queue_head_t dev_wait;
- u32 ap_beacons_nlportid;
+ struct list_head beacon_registrations;
+ spinlock_t beacon_registrations_lock;
/* protected by RTNL only */
int num_running_ifaces;
@@ -260,6 +261,10 @@ enum cfg80211_chan_mode {
CHAN_MODE_EXCLUSIVE,
};
+struct cfg80211_beacon_registration {
+ struct list_head list;
+ u32 nlportid;
+};
/* free object */
extern void cfg80211_dev_free(struct cfg80211_registered_device *rdev);