Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Jan 2005 20:45:20 GMT
From:      Sam Leffler <sam@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 68761 for review
Message-ID:  <200501112045.j0BKjKRm001375@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=68761

Change 68761 by sam@sam_ebb on 2005/01/11 20:45:04

	move fixed rate check to ieee80211_match_bss so we that we know
	the rate is ok by the time we go to do a join; this eliminates
	the need to possibility of an error when joining an ibss network

Affected files ...

.. //depot/projects/wifi/sys/net80211/ieee80211_node.c#37 edit

Differences ...

==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#37 (text+ko) ====

@@ -479,7 +479,8 @@
 		if (ni->ni_capinfo & IEEE80211_CAPINFO_PRIVACY)
 			fail |= 0x04;
 	}
-	rate = ieee80211_fix_rate(ic, ni, IEEE80211_F_DONEGO);
+	rate = ieee80211_fix_rate(ic, ni,
+			IEEE80211_F_DONEGO | IEEE80211_F_DOFRATE);
 	if (rate & IEEE80211_RATE_BASIC)
 		fail |= 0x08;
 	if (ic->ic_des_esslen != 0 &&
@@ -749,15 +750,10 @@
 
 	if (ic->ic_opmode == IEEE80211_M_IBSS) {
 		/*
-		 * Check rate set before committing to this node.
+		 * Delete unusable rates; we've already checked
+		 * that the negotiated rate set is acceptable.
 		 */
-		ieee80211_fix_rate(ic, selbs, IEEE80211_F_DOFRATE |
-		    IEEE80211_F_DONEGO | IEEE80211_F_DODEL);
-		if (selbs->ni_rates.rs_nrates == 0) {
-			selbs->ni_fails++;
-			ic->ic_stats.is_ibss_norate++;
-			return 0;
-		}
+		ieee80211_fix_rate(ic, selbs, IEEE80211_F_DODEL);
 		/*
 		 * Create the neighbor table; it will already
 		 * exist if we are simply switching mastership.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200501112045.j0BKjKRm001375>