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 |