diff options
Diffstat (limited to 'include/linux/ieee80211.h')
| -rw-r--r-- | include/linux/ieee80211.h | 45 |
1 files changed, 43 insertions, 2 deletions
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index 52e15e079c61..d9724a28c0c2 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h | |||
| @@ -115,7 +115,6 @@ | |||
| 115 | #define IEEE80211_MAX_SSID_LEN 32 | 115 | #define IEEE80211_MAX_SSID_LEN 32 |
| 116 | 116 | ||
| 117 | #define IEEE80211_MAX_MESH_ID_LEN 32 | 117 | #define IEEE80211_MAX_MESH_ID_LEN 32 |
| 118 | #define IEEE80211_MESH_CONFIG_LEN 24 | ||
| 119 | 118 | ||
| 120 | #define IEEE80211_QOS_CTL_LEN 2 | 119 | #define IEEE80211_QOS_CTL_LEN 2 |
| 121 | #define IEEE80211_QOS_CTL_TID_MASK 0x000F | 120 | #define IEEE80211_QOS_CTL_TID_MASK 0x000F |
| @@ -472,7 +471,7 @@ static inline int ieee80211_is_cfendack(__le16 fc) | |||
| 472 | } | 471 | } |
| 473 | 472 | ||
| 474 | /** | 473 | /** |
| 475 | * ieee80211_is_nullfunc - check if FTYPE=IEEE80211_FTYPE_DATA and STYPE=IEEE80211_STYPE_NULLFUNC | 474 | * ieee80211_is_nullfunc - check if frame is a regular (non-QoS) nullfunc frame |
| 476 | * @fc: frame control bytes in little-endian byteorder | 475 | * @fc: frame control bytes in little-endian byteorder |
| 477 | */ | 476 | */ |
| 478 | static inline int ieee80211_is_nullfunc(__le16 fc) | 477 | static inline int ieee80211_is_nullfunc(__le16 fc) |
| @@ -481,6 +480,16 @@ static inline int ieee80211_is_nullfunc(__le16 fc) | |||
| 481 | cpu_to_le16(IEEE80211_FTYPE_DATA | IEEE80211_STYPE_NULLFUNC); | 480 | cpu_to_le16(IEEE80211_FTYPE_DATA | IEEE80211_STYPE_NULLFUNC); |
| 482 | } | 481 | } |
| 483 | 482 | ||
| 483 | /** | ||
| 484 | * ieee80211_is_qos_nullfunc - check if frame is a QoS nullfunc frame | ||
| 485 | * @fc: frame control bytes in little-endian byteorder | ||
| 486 | */ | ||
| 487 | static inline int ieee80211_is_qos_nullfunc(__le16 fc) | ||
| 488 | { | ||
| 489 | return (fc & cpu_to_le16(IEEE80211_FCTL_FTYPE | IEEE80211_FCTL_STYPE)) == | ||
| 490 | cpu_to_le16(IEEE80211_FTYPE_DATA | IEEE80211_STYPE_QOS_NULLFUNC); | ||
| 491 | } | ||
| 492 | |||
| 484 | struct ieee80211s_hdr { | 493 | struct ieee80211s_hdr { |
| 485 | u8 flags; | 494 | u8 flags; |
| 486 | u8 ttl; | 495 | u8 ttl; |
| @@ -544,6 +553,35 @@ struct ieee80211_tim_ie { | |||
| 544 | u8 virtual_map[1]; | 553 | u8 virtual_map[1]; |
| 545 | } __attribute__ ((packed)); | 554 | } __attribute__ ((packed)); |
| 546 | 555 | ||
| 556 | /** | ||
| 557 | * struct ieee80211_meshconf_ie | ||
| 558 | * | ||
| 559 | * This structure refers to "Mesh Configuration information element" | ||
| 560 | */ | ||
| 561 | struct ieee80211_meshconf_ie { | ||
| 562 | u8 meshconf_psel; | ||
| 563 | u8 meshconf_pmetric; | ||
| 564 | u8 meshconf_congest; | ||
| 565 | u8 meshconf_synch; | ||
| 566 | u8 meshconf_auth; | ||
| 567 | u8 meshconf_form; | ||
| 568 | u8 meshconf_cap; | ||
| 569 | } __attribute__ ((packed)); | ||
| 570 | |||
| 571 | /** | ||
| 572 | * struct ieee80211_rann_ie | ||
| 573 | * | ||
| 574 | * This structure refers to "Root Announcement information element" | ||
| 575 | */ | ||
| 576 | struct ieee80211_rann_ie { | ||
| 577 | u8 rann_flags; | ||
| 578 | u8 rann_hopcount; | ||
| 579 | u8 rann_ttl; | ||
| 580 | u8 rann_addr[6]; | ||
| 581 | u32 rann_seq; | ||
| 582 | u32 rann_metric; | ||
| 583 | } __attribute__ ((packed)); | ||
| 584 | |||
| 547 | #define WLAN_SA_QUERY_TR_ID_LEN 2 | 585 | #define WLAN_SA_QUERY_TR_ID_LEN 2 |
| 548 | 586 | ||
| 549 | struct ieee80211_mgmt { | 587 | struct ieee80211_mgmt { |
| @@ -1060,6 +1098,7 @@ enum ieee80211_eid { | |||
| 1060 | WLAN_EID_PREQ = 68, | 1098 | WLAN_EID_PREQ = 68, |
| 1061 | WLAN_EID_PREP = 69, | 1099 | WLAN_EID_PREP = 69, |
| 1062 | WLAN_EID_PERR = 70, | 1100 | WLAN_EID_PERR = 70, |
| 1101 | WLAN_EID_RANN = 49, /* compatible with FreeBSD */ | ||
| 1063 | /* 802.11h */ | 1102 | /* 802.11h */ |
| 1064 | WLAN_EID_PWR_CONSTRAINT = 32, | 1103 | WLAN_EID_PWR_CONSTRAINT = 32, |
| 1065 | WLAN_EID_PWR_CAPABILITY = 33, | 1104 | WLAN_EID_PWR_CAPABILITY = 33, |
| @@ -1227,6 +1266,8 @@ enum ieee80211_sa_query_action { | |||
| 1227 | 1266 | ||
| 1228 | #define WLAN_MAX_KEY_LEN 32 | 1267 | #define WLAN_MAX_KEY_LEN 32 |
| 1229 | 1268 | ||
| 1269 | #define WLAN_PMKID_LEN 16 | ||
| 1270 | |||
| 1230 | /** | 1271 | /** |
| 1231 | * ieee80211_get_qos_ctl - get pointer to qos control bytes | 1272 | * ieee80211_get_qos_ctl - get pointer to qos control bytes |
| 1232 | * @hdr: the frame | 1273 | * @hdr: the frame |
