diff options
author | Ben Greear <greearb@candelatech.com> | 2012-10-26 14:49:25 -0700 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2012-11-05 16:33:45 +0100 |
commit | 37c73b5f323c973c1db6857494a6685260440be1 (patch) | |
tree | 5f9e2b055552c6e5053f8a2ab2ebb686b3af5411 /net/wireless/core.h | |
parent | 391e53e33f0028f52ce5eedee1026830571f0d76 (diff) | |
download | op-kernel-dev-37c73b5f323c973c1db6857494a6685260440be1.zip op-kernel-dev-37c73b5f323c973c1db6857494a6685260440be1.tar.gz |
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.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/wireless/core.h b/net/wireless/core.h index b8eb743..e53831c 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); |