Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Jan 2008 08:30:18 GMT
From:      Sepherosa Ziehau <sephe@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 133644 for review
Message-ID:  <200801190830.m0J8UI6b097055@repoman.freebsd.org>

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

Change 133644 by sephe@sephe_zealot:sam_wifi on 2008/01/19 08:30:06

	Capabilities information is 2bytes long.  Deprecate isi_capinfo and
	isr_capinfo, which are 1byte long.  Add isi_capinfo2 and isr_capinfo2.
	This makes 'ifconfig iface list scan' list complete BSS capabilities,
	noticablely "short slot time"
	
	Obtained from: DragonFly

Affected files ...

.. //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#71 edit
.. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#85 edit
.. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.h#46 edit
.. //depot/projects/wifi/usr.sbin/wpa/wpa_supplicant/driver_freebsd.c#10 edit

Differences ...

==== //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#71 (text+ko) ====

@@ -1965,7 +1965,7 @@
 			, getmaxrate(sr->isr_rates, sr->isr_nrates)
 			, (sr->isr_rssi/2)+sr->isr_noise, sr->isr_noise
 			, sr->isr_intval
-			, getcaps(sr->isr_capinfo)
+			, getcaps(sr->isr_capinfo2)
 		);
 		printies(vp + sr->isr_ssid_len, sr->isr_ie_len, 24);
 		printf("\n");
@@ -2121,7 +2121,7 @@
 			, si->isi_inact
 			, gettxseq(si)
 			, getrxseq(si)
-			, getcaps(si->isi_capinfo)
+			, getcaps(si->isi_capinfo2)
 			, getflags(si->isi_state)
 		);
 		printies(cp + si->isi_ie_off, si->isi_ie_len, 24);

==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#85 (text+ko) ====

@@ -438,7 +438,8 @@
 	sr->isr_rssi = se->se_rssi;
 	sr->isr_noise = se->se_noise;
 	sr->isr_intval = se->se_intval;
-	sr->isr_capinfo = se->se_capinfo;
+	sr->isr_capinfo = se->se_capinfo;	/* deprecated */
+	sr->isr_capinfo2 = se->se_capinfo;
 	sr->isr_erp = se->se_erp;
 	IEEE80211_ADDR_COPY(sr->isr_bssid, se->se_bssid);
 	nr = min(se->se_rates[1], IEEE80211_RATE_MAXSIZE);
@@ -560,7 +561,8 @@
 	si->isi_authmode = ni->ni_authmode;
 	ic->ic_node_getsignal(ni, &si->isi_rssi, &si->isi_noise);
 	si->isi_noise = 0;		/* XXX */
-	si->isi_capinfo = ni->ni_capinfo;
+	si->isi_capinfo = ni->ni_capinfo;	/* deprecated */
+	si->isi_capinfo2 = ni->ni_capinfo;
 	si->isi_erp = ni->ni_erp;
 	IEEE80211_ADDR_COPY(si->isi_macaddr, ni->ni_macaddr);
 	si->isi_nrates = ni->ni_rates.rs_nrates;

==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.h#46 (text+ko) ====

@@ -344,7 +344,7 @@
 	uint8_t		isi_authmode;		/* authentication algorithm */
 	int8_t		isi_rssi;		/* receive signal strength */
 	int8_t		isi_noise;		/* noise floor */
-	uint8_t		isi_capinfo;		/* capabilities */
+	uint8_t		isi_capinfo;		/* deprecated */
 	uint8_t		isi_erp;		/* ERP element */
 	uint8_t		isi_macaddr[IEEE80211_ADDR_LEN];
 	uint8_t		isi_nrates;
@@ -358,6 +358,7 @@
 	uint16_t	isi_txseqs[IEEE80211_TID_SIZE];/* tx seq #/TID */
 	uint16_t	isi_rxseqs[IEEE80211_TID_SIZE];/* rx seq#/TID */
 	uint16_t	isi_inact;		/* inactivity timer */
+	uint16_t	isi_capinfo2;		/* capabilities */
 	/* XXX frag state? */
 	/* variable length IE data */
 };
@@ -531,12 +532,13 @@
 	int8_t		isr_noise;
 	int8_t		isr_rssi;
 	uint8_t		isr_intval;		/* beacon interval */
-	uint8_t		isr_capinfo;		/* capabilities */
+	uint8_t		isr_capinfo;		/* deprecated */
 	uint8_t		isr_erp;		/* ERP element */
 	uint8_t		isr_bssid[IEEE80211_ADDR_LEN];
 	uint8_t		isr_nrates;
 	uint8_t		isr_rates[IEEE80211_RATE_MAXSIZE];
 	uint8_t		isr_ssid_len;		/* SSID length */
+	uint16_t	isr_capinfo2;		/* capabilities */
 	/* variable length SSID followed by IE data */
 };
 

==== //depot/projects/wifi/usr.sbin/wpa/wpa_supplicant/driver_freebsd.c#10 (text+ko) ====

@@ -641,7 +641,7 @@
 		wsr->noise = sr->isr_noise;
 		wsr->qual = sr->isr_rssi;
 		wsr->level = 0;		/* XXX? */
-		wsr->caps = sr->isr_capinfo;
+		wsr->caps = sr->isr_capinfo2;
 		wsr->maxrate = getmaxrate(sr->isr_rates, sr->isr_nrates);
 		vp = ((u_int8_t *)sr) + sr->isr_ie_off;
 		memcpy(wsr->ssid, vp, sr->isr_ssid_len);



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