diff options
author | Luis Carlos Cobo <luisca@cozybit.com> | 2008-02-23 09:17:04 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-03-06 15:30:40 -0500 |
commit | 37c5798968d0ce4d479f114f1d5785551b57bfa5 (patch) | |
tree | 9cbd8038c8e747a15534768206e149ec8c6c1572 | |
parent | f59d43899e279c77924a7ada4bec8c70e5aeca06 (diff) |
wireless: various definitions for mesh networking
Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | include/linux/ieee80211.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h index f577c8f1c66d..f27d11ab418b 100644 --- a/include/linux/ieee80211.h +++ b/include/linux/ieee80211.h | |||
@@ -97,6 +97,7 @@ | |||
97 | #define IEEE80211_MAX_FRAME_LEN 2352 | 97 | #define IEEE80211_MAX_FRAME_LEN 2352 |
98 | 98 | ||
99 | #define IEEE80211_MAX_SSID_LEN 32 | 99 | #define IEEE80211_MAX_SSID_LEN 32 |
100 | #define IEEE80211_MAX_MESH_ID_LEN 32 | ||
100 | 101 | ||
101 | struct ieee80211_hdr { | 102 | struct ieee80211_hdr { |
102 | __le16 frame_control; | 103 | __le16 frame_control; |
@@ -109,6 +110,16 @@ struct ieee80211_hdr { | |||
109 | } __attribute__ ((packed)); | 110 | } __attribute__ ((packed)); |
110 | 111 | ||
111 | 112 | ||
113 | struct ieee80211s_hdr { | ||
114 | u8 flags; | ||
115 | u8 ttl; | ||
116 | u8 seqnum[3]; | ||
117 | u8 eaddr1[6]; | ||
118 | u8 eaddr2[6]; | ||
119 | u8 eaddr3[6]; | ||
120 | } __attribute__ ((packed)); | ||
121 | |||
122 | |||
112 | struct ieee80211_mgmt { | 123 | struct ieee80211_mgmt { |
113 | __le16 frame_control; | 124 | __le16 frame_control; |
114 | __le16 duration; | 125 | __le16 duration; |
@@ -206,6 +217,23 @@ struct ieee80211_mgmt { | |||
206 | __le16 params; | 217 | __le16 params; |
207 | __le16 reason_code; | 218 | __le16 reason_code; |
208 | } __attribute__((packed)) delba; | 219 | } __attribute__((packed)) delba; |
220 | struct{ | ||
221 | u8 action_code; | ||
222 | /* capab_info for open and confirm, | ||
223 | * reason for close | ||
224 | */ | ||
225 | __le16 aux; | ||
226 | /* Followed in plink_confirm by status | ||
227 | * code, AID and supported rates, | ||
228 | * and directly by supported rates in | ||
229 | * plink_open and plink_close | ||
230 | */ | ||
231 | u8 variable[0]; | ||
232 | } __attribute__((packed)) plink_action; | ||
233 | struct{ | ||
234 | u8 action_code; | ||
235 | u8 variable[0]; | ||
236 | } __attribute__((packed)) mesh_action; | ||
209 | } u; | 237 | } u; |
210 | } __attribute__ ((packed)) action; | 238 | } __attribute__ ((packed)) action; |
211 | } u; | 239 | } u; |
@@ -437,6 +465,13 @@ enum ieee80211_eid { | |||
437 | WLAN_EID_TS_DELAY = 43, | 465 | WLAN_EID_TS_DELAY = 43, |
438 | WLAN_EID_TCLAS_PROCESSING = 44, | 466 | WLAN_EID_TCLAS_PROCESSING = 44, |
439 | WLAN_EID_QOS_CAPA = 46, | 467 | WLAN_EID_QOS_CAPA = 46, |
468 | /* 802.11s */ | ||
469 | WLAN_EID_MESH_CONFIG = 36, /* Pending IEEE 802.11 ANA approval */ | ||
470 | WLAN_EID_MESH_ID = 37, /* Pending IEEE 802.11 ANA approval */ | ||
471 | WLAN_EID_PEER_LINK = 40, /* Pending IEEE 802.11 ANA approval */ | ||
472 | WLAN_EID_PREQ = 53, /* Pending IEEE 802.11 ANA approval */ | ||
473 | WLAN_EID_PREP = 54, /* Pending IEEE 802.11 ANA approval */ | ||
474 | WLAN_EID_PERR = 55, /* Pending IEEE 802.11 ANA approval */ | ||
440 | /* 802.11h */ | 475 | /* 802.11h */ |
441 | WLAN_EID_PWR_CONSTRAINT = 32, | 476 | WLAN_EID_PWR_CONSTRAINT = 32, |
442 | WLAN_EID_PWR_CAPABILITY = 33, | 477 | WLAN_EID_PWR_CAPABILITY = 33, |