diff options
author | Amitkumar Karwar <akarwar@marvell.com> | 2010-02-25 20:16:36 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-03-24 16:02:37 -0400 |
commit | 921ca03c8f8e982f27fc406bc301caf2196b99f7 (patch) | |
tree | 3ec4576e19f066a843a63e6eab1fd2ba90370937 /drivers/net/wireless/libertas/wext.c | |
parent | e1572c5eeca8ef87a250322364584458b2dadb35 (diff) |
libertas: add auto auth mode feature
Auto auth mode is enabled by default. If user doesn't specify the
auth mode, while association driver will first try with open mode
and then with shared key mode. If user specifies an auth mode,
auto auth is disabled and driver will not try association with
another auth mode.
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/wext.c')
-rw-r--r-- | drivers/net/wireless/libertas/wext.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/wext.c b/drivers/net/wireless/libertas/wext.c index 71f88a08e090..aad6263dee6d 100644 --- a/drivers/net/wireless/libertas/wext.c +++ b/drivers/net/wireless/libertas/wext.c | |||
@@ -1440,8 +1440,10 @@ static int lbs_set_encode(struct net_device *dev, | |||
1440 | set_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags); | 1440 | set_bit(ASSOC_FLAG_WEP_TX_KEYIDX, &assoc_req->flags); |
1441 | 1441 | ||
1442 | if (dwrq->flags & IW_ENCODE_RESTRICTED) { | 1442 | if (dwrq->flags & IW_ENCODE_RESTRICTED) { |
1443 | priv->authtype_auto = 0; | ||
1443 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY; | 1444 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY; |
1444 | } else if (dwrq->flags & IW_ENCODE_OPEN) { | 1445 | } else if (dwrq->flags & IW_ENCODE_OPEN) { |
1446 | priv->authtype_auto = 0; | ||
1445 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM; | 1447 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM; |
1446 | } | 1448 | } |
1447 | 1449 | ||
@@ -1620,8 +1622,10 @@ static int lbs_set_encodeext(struct net_device *dev, | |||
1620 | goto out; | 1622 | goto out; |
1621 | 1623 | ||
1622 | if (dwrq->flags & IW_ENCODE_RESTRICTED) { | 1624 | if (dwrq->flags & IW_ENCODE_RESTRICTED) { |
1625 | priv->authtype_auto = 0; | ||
1623 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY; | 1626 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_SHARED_KEY; |
1624 | } else if (dwrq->flags & IW_ENCODE_OPEN) { | 1627 | } else if (dwrq->flags & IW_ENCODE_OPEN) { |
1628 | priv->authtype_auto = 0; | ||
1625 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM; | 1629 | assoc_req->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM; |
1626 | } | 1630 | } |
1627 | 1631 | ||