PERFORCE change 133310 for review

Sam Leffler sam at FreeBSD.org
Mon Jan 14 21:25:41 PST 2008


http://perforce.freebsd.org/chv.cgi?CH=133310

Change 133310 by sam at sam_ebb on 2008/01/15 05:24:57

	revert use of iv_txseq for now; need to be more careful doing this

Affected files ...

.. //depot/projects/vap/sys/net80211/ieee80211_output.c#23 edit

Differences ...

==== //depot/projects/vap/sys/net80211/ieee80211_output.c#23 (text+ko) ====

@@ -392,13 +392,11 @@
 	const uint8_t bssid[IEEE80211_ADDR_LEN])
 {
 #define	WH4(wh)	((struct ieee80211_frame_addr4 *)wh)
-#define	PROBE_RESP \
-	((IEEE80211_FC0_TYPE_MGT << IEEE80211_FC0_TYPE_SHIFT) | \
-	 (IEEE80211_FC0_SUBTYPE_PROBE_RESP << IEEE80211_FC0_SUBTYPE_SHIFT))
-	struct ieee80211vap *vap = ni->ni_vap;
 
 	wh->i_fc[0] = IEEE80211_FC0_VERSION_0 | type;
 	if ((type & IEEE80211_FC0_TYPE_MASK) == IEEE80211_FC0_TYPE_DATA) {
+		struct ieee80211vap *vap = ni->ni_vap;
+
 		switch (vap->iv_opmode) {
 		case IEEE80211_M_STA:
 			wh->i_fc[1] = IEEE80211_FC1_DIR_TODS;
@@ -436,19 +434,11 @@
 		IEEE80211_ADDR_COPY(wh->i_addr3, bssid);
 	}
 	*(uint16_t *)&wh->i_dur[0] = 0;
-	if (type == PROBE_RESP) {
-		/* NB: use per-vap seq# space */
-		*(uint16_t *)&wh->i_seq[0] =
-		    htole16(vap->iv_txseq << IEEE80211_SEQ_SEQ_SHIFT);
-		vap->iv_txseq++;
-	} else {
-		/* NB: use non-QoS tid */
-		*(uint16_t *)&wh->i_seq[0] =
-		    htole16(ni->ni_txseqs[IEEE80211_NONQOS_TID] <<
-			IEEE80211_SEQ_SEQ_SHIFT);
-		ni->ni_txseqs[IEEE80211_NONQOS_TID]++;
-	}
-#undef PROBE_RESP
+	/* XXX probe response use per-vap seq#? */
+	/* NB: use non-QoS tid */
+	*(uint16_t *)&wh->i_seq[0] =
+	    htole16(ni->ni_txseqs[IEEE80211_NONQOS_TID] << IEEE80211_SEQ_SEQ_SHIFT);
+	ni->ni_txseqs[IEEE80211_NONQOS_TID]++;
 #undef WH4
 }
 
@@ -2423,9 +2413,6 @@
 	uint16_t capinfo;
 
 	IEEE80211_LOCK(ic);
-	*(uint16_t *)&mtod(m, struct ieee80211_frame *)->i_seq[0] =
-	    htole16(vap->iv_txseq << IEEE80211_SEQ_SEQ_SHIFT);
-	vap->iv_txseq++;
 	/*
 	 * Handle 11h channel change when we've reached the count.
 	 * We must recalculate the beacon frame contents to account


More information about the p4-projects mailing list