Commit b5c41651 authored by Dan Williams's avatar Dan Williams Committed by John W. Linville

[PATCH] prism54: correct assignment of DOT1XENABLE in WE-19 codepaths

Correct assignment of DOT1XENABLE in WE-19 codepaths.
RX_UNENCRYPTED_EAPOL = 1 really means setting DOT1XENABLE _off_, and
vice versa.  The original WE-19 patch erroneously reversed that.  This
patch fixes association with unencrypted and WEP networks when using
wpa_supplicant.

It also adds two missing break statements that, left out, could result
in incorrect card configuration.
Signed-off-by: default avatarDan Williams <dcbw@redhat.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 44956855
...@@ -1395,11 +1395,16 @@ static int prism54_set_auth(struct net_device *ndev, ...@@ -1395,11 +1395,16 @@ static int prism54_set_auth(struct net_device *ndev,
break; break;
case IW_AUTH_RX_UNENCRYPTED_EAPOL: case IW_AUTH_RX_UNENCRYPTED_EAPOL:
dot1x = param->value ? 1 : 0; /* dot1x should be the opposite of RX_UNENCRYPTED_EAPOL;
* turn off dot1x when allowing receipt of unencrypted EAPOL
* frames, turn on dot1x when receipt should be disallowed
*/
dot1x = param->value ? 0 : 0x01;
break; break;
case IW_AUTH_PRIVACY_INVOKED: case IW_AUTH_PRIVACY_INVOKED:
privinvoked = param->value ? 1 : 0; privinvoked = param->value ? 1 : 0;
break;
case IW_AUTH_DROP_UNENCRYPTED: case IW_AUTH_DROP_UNENCRYPTED:
exunencrypt = param->value ? 1 : 0; exunencrypt = param->value ? 1 : 0;
...@@ -1589,6 +1594,7 @@ static int prism54_set_encodeext(struct net_device *ndev, ...@@ -1589,6 +1594,7 @@ static int prism54_set_encodeext(struct net_device *ndev,
} }
key.type = DOT11_PRIV_TKIP; key.type = DOT11_PRIV_TKIP;
key.length = KEY_SIZE_TKIP; key.length = KEY_SIZE_TKIP;
break;
default: default:
return -EINVAL; return -EINVAL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment