All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] d80211: fix authentication issues
@ 2007-02-08 19:48 Michael Wu
  2007-02-09 14:25 ` Jiri Benc
  2007-02-15 21:27 ` Jiri Benc
  0 siblings, 2 replies; 4+ messages in thread
From: Michael Wu @ 2007-02-08 19:48 UTC (permalink / raw)
  To: Jiri Benc; +Cc: linux-wireless

[-- Attachment #1: Type: text/plain, Size: 1629 bytes --]

d80211: fix authentication issues

This patch prevents the MLME in d80211 from getting stuck when there is no
reply to authentication frames. It also allows the bssid to be correctly
set during IEEE80211_AUTHENTICATE.

Signed-off-by: Michael Wu <flamingice@sourmilk.net>
---

 net/d80211/ieee80211_sta.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/net/d80211/ieee80211_sta.c b/net/d80211/ieee80211_sta.c
index feba62b..64dbc79 100644
--- a/net/d80211/ieee80211_sta.c
+++ b/net/d80211/ieee80211_sta.c
@@ -453,6 +453,7 @@ static void ieee80211_authenticate(struc
 		printk(KERN_DEBUG "%s: authentication with AP " MAC_FMT
 		       " timed out\n",
 		       dev->name, MAC_ARG(ifsta->bssid));
+		ifsta->state = IEEE80211_DISABLED;
 		return;
 	}
 
@@ -668,6 +669,7 @@ static void ieee80211_associate(struct n
 		printk(KERN_DEBUG "%s: association with AP " MAC_FMT
 		       " timed out\n",
 		       dev->name, MAC_ARG(ifsta->bssid));
+		ifsta->state = IEEE80211_DISABLED;
 		return;
 	}
 
@@ -677,6 +679,7 @@ static void ieee80211_associate(struct n
 	if (ieee80211_privacy_mismatch(dev, ifsta)) {
 		printk(KERN_DEBUG "%s: mismatch in privacy configuration and "
 		       "mixed-cell disabled - abort association\n", dev->name);
+		ifsta->state = IEEE80211_DISABLED;
 		return;
 	}
 
@@ -2355,7 +2358,7 @@ int ieee80211_sta_set_bssid(struct net_d
 		ifsta->bssid_set = 0;
 	else
 		ifsta->bssid_set = 1;
-	if (ifsta->ssid_set && ifsta->state != IEEE80211_AUTHENTICATE)
+	if (ifsta->ssid_set)
 		ieee80211_sta_new_auth(dev, ifsta);
 
 	return 0;

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] d80211: fix authentication issues
  2007-02-08 19:48 [PATCH] d80211: fix authentication issues Michael Wu
@ 2007-02-09 14:25 ` Jiri Benc
  2007-02-09 14:26   ` Jiri Benc
  2007-02-15 21:27 ` Jiri Benc
  1 sibling, 1 reply; 4+ messages in thread
From: Jiri Benc @ 2007-02-09 14:25 UTC (permalink / raw)
  To: Michael Wu; +Cc: linux-wireless

On Thu, 8 Feb 2007 14:48:15 -0500, Michael Wu wrote:
> @@ -2355,7 +2358,7 @@ int ieee80211_sta_set_bssid(struct net_d
>  		ifsta->bssid_set = 0;
>  	else
>  		ifsta->bssid_set = 1;
> -	if (ifsta->ssid_set && ifsta->state != IEEE80211_AUTHENTICATE)
> +	if (ifsta->ssid_set)
>  		ieee80211_sta_new_auth(dev, ifsta);

How do you protect against already running ieee80211_associate (called
from ieee80211_sta_work)?

Thanks,

 Jiri

-- 
Jiri Benc
SUSE Labs

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] d80211: fix authentication issues
  2007-02-09 14:25 ` Jiri Benc
@ 2007-02-09 14:26   ` Jiri Benc
  0 siblings, 0 replies; 4+ messages in thread
From: Jiri Benc @ 2007-02-09 14:26 UTC (permalink / raw)
  To: Michael Wu; +Cc: linux-wireless

On Fri, 9 Feb 2007 15:25:40 +0100, Jiri Benc wrote:
> On Thu, 8 Feb 2007 14:48:15 -0500, Michael Wu wrote:
> > @@ -2355,7 +2358,7 @@ int ieee80211_sta_set_bssid(struct net_d
> >  		ifsta->bssid_set = 0;
> >  	else
> >  		ifsta->bssid_set = 1;
> > -	if (ifsta->ssid_set && ifsta->state != IEEE80211_AUTHENTICATE)
> > +	if (ifsta->ssid_set)
> >  		ieee80211_sta_new_auth(dev, ifsta);
> 
> How do you protect against already running ieee80211_associate (called

Sorry, should be ieee80211_authenticate, of course.

 Jiri

-- 
Jiri Benc
SUSE Labs

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] d80211: fix authentication issues
  2007-02-08 19:48 [PATCH] d80211: fix authentication issues Michael Wu
  2007-02-09 14:25 ` Jiri Benc
@ 2007-02-15 21:27 ` Jiri Benc
  1 sibling, 0 replies; 4+ messages in thread
From: Jiri Benc @ 2007-02-15 21:27 UTC (permalink / raw)
  To: Michael Wu; +Cc: linux-wireless

On Thu, 8 Feb 2007 14:48:15 -0500, Michael Wu wrote:
> This patch prevents the MLME in d80211 from getting stuck when there is no
> reply to authentication frames. It also allows the bssid to be correctly
> set during IEEE80211_AUTHENTICATE.

Applied to my tree, thanks for the patch!

 Jiri

-- 
Jiri Benc
SUSE Labs

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2007-02-15 21:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-08 19:48 [PATCH] d80211: fix authentication issues Michael Wu
2007-02-09 14:25 ` Jiri Benc
2007-02-09 14:26   ` Jiri Benc
2007-02-15 21:27 ` Jiri Benc

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.