summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Kilroy2010-12-05 16:45:58 +0100
committerJohn W. Linville2010-12-08 21:23:52 +0100
commitba34fcee476d11e7c9df95932787a22a96ff6e68 (patch)
treed0c15f9adb8a36f103d397c2d1b759418b8c5513
parentmac80211: Fix BUG in pskb_expand_head when transmitting shared skbs (diff)
downloadkernel-qcow2-linux-ba34fcee476d11e7c9df95932787a22a96ff6e68.tar.gz
kernel-qcow2-linux-ba34fcee476d11e7c9df95932787a22a96ff6e68.tar.xz
kernel-qcow2-linux-ba34fcee476d11e7c9df95932787a22a96ff6e68.zip
orinoco: clear countermeasure setting on commit
... and interface up. In these situations, you are usually trying to connect to a new AP, so keeping TKIP countermeasures active is confusing. This is already how the driver behaves (inadvertently). However, querying SIOCGIWAUTH may tell userspace that countermeasures are active when they aren't. Clear the setting so that the reporting matches what the driver has done.. Signed-off by: David Kilroy <kilroyd@googlemail.com> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/orinoco/main.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/orinoco/main.c b/drivers/net/wireless/orinoco/main.c
index fa0cf744958f..f3d396e7544b 100644
--- a/drivers/net/wireless/orinoco/main.c
+++ b/drivers/net/wireless/orinoco/main.c
@@ -1811,6 +1811,12 @@ static int __orinoco_commit(struct orinoco_private *priv)
struct net_device *dev = priv->ndev;
int err = 0;
+ /* If we've called commit, we are reconfiguring or bringing the
+ * interface up. Maintaining countermeasures across this would
+ * be confusing, so note that we've disabled them. The port will
+ * be enabled later in orinoco_commit or __orinoco_up. */
+ priv->tkip_cm_active = 0;
+
err = orinoco_hw_program_rids(priv);
/* FIXME: what about netif_tx_lock */