diff options
author | Luis R. Rodriguez <lrodriguez@atheros.com> | 2009-04-02 14:08:07 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-04-22 16:54:40 -0400 |
commit | a4ed90d60c39c5aef9a170d7693f61175acb22e0 (patch) | |
tree | b479bdf90ed142b8ccb02235668204ab03f5663d /net/wireless/reg.c | |
parent | 3eb9296970e70902593b15ed3080e389954cf5f5 (diff) | |
download | linux-a4ed90d60c39c5aef9a170d7693f61175acb22e0.tar.bz2 |
cfg80211: respect API on orig_flags on channel for beacon hint
As part of our documented API we always respect the orig_flag
settings on a channel. We forgot to follow this for the beacon
hints.
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless/reg.c')
-rw-r--r-- | net/wireless/reg.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c index 6c1993d99902..4af4304cec3e 100644 --- a/net/wireless/reg.c +++ b/net/wireless/reg.c @@ -1070,12 +1070,14 @@ static void handle_reg_beacon(struct wiphy *wiphy, if (likely(chan->center_freq != reg_beacon->chan.center_freq)) return; - if (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) { + if ((chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) && + !(chan->orig_flags & IEEE80211_CHAN_PASSIVE_SCAN)) { chan->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; REG_DEBUG_BEACON_FLAG("active scanning"); } - if (chan->flags & IEEE80211_CHAN_NO_IBSS) { + if ((chan->flags & IEEE80211_CHAN_NO_IBSS) && + !(chan->orig_flags & IEEE80211_CHAN_NO_IBSS)) { chan->flags &= ~IEEE80211_CHAN_NO_IBSS; REG_DEBUG_BEACON_FLAG("beaconing"); } |