diff options
author | Zhu Yi <yi.zhu@intel.com> | 2005-07-13 12:30:34 -0500 |
---|---|---|
committer | James Ketrenos <jketreno@linux.intel.com> | 2005-11-07 17:50:08 -0600 |
commit | e4cc28998724661c19cd979a78eaf9a424da52ef (patch) | |
tree | d39518bd2a881f40b649aa5326d08a2679a2567e | |
parent | f75459e6f64ca0632f23029e2ca47b424dd33373 (diff) |
Move code from ipw2100_wpa_enable to IPW2100_PARAM_DROP_UNENCRYPTED to
support wpa_supplicant with open AP. We need this to make driver_ipw
work.
driver_ext has already had the similar code with the WE-18 support
added.
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
-rw-r--r-- | drivers/net/wireless/ipw2100.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/drivers/net/wireless/ipw2100.c b/drivers/net/wireless/ipw2100.c index 73287ab7bff..eaf47078ee5 100644 --- a/drivers/net/wireless/ipw2100.c +++ b/drivers/net/wireless/ipw2100.c @@ -5880,9 +5880,27 @@ static int ipw2100_wpa_set_param(struct net_device *dev, u8 name, u32 value) break; - case IPW2100_PARAM_DROP_UNENCRYPTED: - priv->ieee->drop_unencrypted = value; - break; + case IPW2100_PARAM_DROP_UNENCRYPTED:{ + /* See IW_AUTH_DROP_UNENCRYPTED handling for details */ + struct ieee80211_security sec = { + .flags = SEC_ENABLED, + .enabled = value, + }; + priv->ieee->drop_unencrypted = value; + /* We only change SEC_LEVEL for open mode. Others + * are set by ipw_wpa_set_encryption. + */ + if (!value) { + sec.flags |= SEC_LEVEL; + sec.level = SEC_LEVEL_0; + } else { + sec.flags |= SEC_LEVEL; + sec.level = SEC_LEVEL_1; + } + if (priv->ieee->set_security) + priv->ieee->set_security(priv->ieee->dev, &sec); + break; + } case IPW2100_PARAM_PRIVACY_INVOKED: priv->ieee->privacy_invoked = value; |