Changeset 2367
- Timestamp:
- 05/24/07 18:45:07 (2 years ago)
- Files:
-
- trunk/net80211/ieee80211.h (modified) (3 diffs)
- trunk/net80211/ieee80211_output.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/net80211/ieee80211.h
r2256 r2367 515 515 u_int8_t athAdvCap_len; /* length in bytes */ 516 516 u_int8_t athAdvCap_oui[3]; /* 0x00, 0x03, 0x7f */ 517 u_int8_t athAdvCap_type; /* OUI type */517 u_int8_t athAdvCap_type; /* OUI type */ 518 518 u_int8_t athAdvCap_subtype; /* OUI subtype */ 519 519 u_int8_t athAdvCap_version; /* spec revision */ … … 663 663 u_int16_t wpa_caps; /* 802.11i capabilities */ 664 664 u_int16_t wpa_pmkidcnt; /* 802.11i pmkid count */ 665 u_int16_t wpa_pmkids[8]; /* 802.11i pmkids */665 u_int16_t wpa_pmkids[8]; /* 802.11i pmkids */ 666 666 } __packed; 667 667 … … 747 747 #define ATH_OUI_TYPE 0x01 748 748 #define ATH_OUI_SUBTYPE 0x01 749 #define ATH_OUI_VERSION 0x00749 #define ATH_OUI_VERSION 0x00 750 750 #define ATH_OUI_TYPE_XR 0x03 751 #define ATH_OUI_VER_XR 0x01 751 #define ATH_OUI_SUBTYPE_XR 0x01 752 #define ATH_OUI_VER_XR 0x00 752 753 753 754 #define WPA_OUI 0xf25000 trunk/net80211/ieee80211_output.c
r2357 r2367 1588 1588 { 1589 1589 static const u_int8_t oui[6] = {(ATH_OUI & 0xff), ((ATH_OUI >>8) & 0xff), 1590 ((ATH_OUI >> 16) & 0xff), ATH_OUI_TYPE,1591 ATH_OUI_SUBTYPE, ATH_OUI_VERSION};1590 ((ATH_OUI >> 16) & 0xff), ATH_OUI_TYPE, 1591 ATH_OUI_SUBTYPE, ATH_OUI_VERSION}; 1592 1592 struct ieee80211_ie_athAdvCap *ie = (struct ieee80211_ie_athAdvCap *) frm; 1593 1593 … … 1613 1613 ieee80211_add_xr_param(u_int8_t *frm,struct ieee80211vap *vap) 1614 1614 { 1615 static const u_int8_t oui[3] = {(ATH_OUI & 0xff), ((ATH_OUI >>8) & 0xff), 1616 ((ATH_OUI >> 16) & 0xff)}; 1615 static const u_int8_t oui[6] = {(ATH_OUI & 0xff), ((ATH_OUI >>8) & 0xff), 1616 ((ATH_OUI >> 16) & 0xff), ATH_OUI_TYPE_XR, 1617 ATH_OUI_SUBTYPE_XR, ATH_OUI_VER_XR}; 1617 1618 struct ieee80211_xr_param *ie = (struct ieee80211_xr_param *) frm; 1618 1619 … … 1621 1622 memcpy(frm, oui, sizeof(oui)); /* Atheros OUI, type, subtype, and version for adv capabilities */ 1622 1623 frm += sizeof(oui); 1623 *frm++ = ATH_OUI_TYPE_XR; 1624 *frm++ = ATH_OUI_VER_XR; 1625 *frm++ = 0; 1626 *frm++ = 0; 1627 *frm++ = 0; 1624 *frm++ = 0; /* XR info */ 1628 1625 1629 1626 /* copy the BSSIDs */ 1630 1627 if (vap->iv_flags & IEEE80211_F_XR) { 1631 IEEE80211_ADDR_COPY(frm, vap->iv_xrvap->iv_bss->ni_bssid); 1628 IEEE80211_ADDR_COPY(frm, vap->iv_xrvap->iv_bss->ni_bssid); /* Base BSSID */ 1632 1629 frm += IEEE80211_ADDR_LEN; 1633 IEEE80211_ADDR_COPY(frm, vap->iv_bss->ni_bssid); 1630 IEEE80211_ADDR_COPY(frm, vap->iv_bss->ni_bssid); /* XR BSSID */ 1634 1631 frm += IEEE80211_ADDR_LEN; 1635 *(__le16 *)frm = htole16(vap->iv_ xrvap->iv_bss->ni_intval);1632 *(__le16 *)frm = htole16(vap->iv_bss->ni_intval); /* XR beacon interval */ 1636 1633 frm += 2; 1637 *(__le16 *)frm = htole16(vap->iv_bss->ni_intval); 1638 frm += 2; 1639 *frm++ = vap->iv_xrvap->iv_ath_cap; 1640 *frm++ = vap->iv_ath_cap; 1634 *frm++ = vap->iv_xrvap->iv_ath_cap; /* Base mode capability */ 1635 *frm++ = vap->iv_ath_cap; /* XR mode capability */ 1641 1636 } else { 1642 1637 IEEE80211_ADDR_COPY(frm, vap->iv_bss->ni_bssid); … … 1645 1640 frm += IEEE80211_ADDR_LEN; 1646 1641 *(__le16 *)frm = htole16(vap->iv_bss->ni_intval); 1647 frm += 2;1648 *(__le16 *)frm = htole16(vap->iv_xrvap->iv_bss->ni_intval);1649 1642 frm += 2; 1650 1643 *frm++ = vap->iv_ath_cap;
