svn commit: r188210 - head/tools/tools/net80211/wlanstats
Sam Leffler
sam at FreeBSD.org
Thu Feb 5 15:15:41 PST 2009
Author: sam
Date: Thu Feb 5 23:15:39 2009
New Revision: 188210
URL: http://svn.freebsd.org/changeset/base/188210
Log:
for adhoc and ahdemo modes try to find the "bss node": use the bssid
unless it's not setup or zero's; this may not work as the bssid of
the ibss isn't certain to the "right mac address" but for many cases
it is
Modified:
head/tools/tools/net80211/wlanstats/wlanstats.c
Modified: head/tools/tools/net80211/wlanstats/wlanstats.c
==============================================================================
--- head/tools/tools/net80211/wlanstats/wlanstats.c Thu Feb 5 23:01:36 2009 (r188209)
+++ head/tools/tools/net80211/wlanstats/wlanstats.c Thu Feb 5 23:15:39 2009 (r188210)
@@ -437,15 +437,24 @@ getbssid(struct wlanstatfoo_p *wf)
static void
wlan_setstamac(struct wlanstatfoo *wf0, const uint8_t *mac)
{
+ static const uint8_t zeromac[IEEE80211_ADDR_LEN];
struct wlanstatfoo_p *wf = (struct wlanstatfoo_p *) wf0;
if (mac == NULL) {
switch (wlan_getopmode(wf0)) {
case IEEE80211_M_HOSTAP:
case IEEE80211_M_MONITOR:
+ getlladdr(wf);
+ break;
case IEEE80211_M_IBSS:
case IEEE80211_M_AHDEMO:
- getlladdr(wf);
+ /*
+ * NB: this may not work in which case the
+ * mac must be specified on the command line
+ */
+ if (getbssid(wf) < 0 ||
+ IEEE80211_ADDR_EQ(wf->mac, zeromac))
+ getlladdr(wf);
break;
case IEEE80211_M_STA:
if (getbssid(wf) < 0)
More information about the svn-src-all
mailing list