Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

wireless: avoid some net/ieee80211.h vs. linux/ieee80211.h conflicts

There is quite a lot of overlap in definitions between these headers...

Signed-off-by: John W. Linville <linville@tuxdriver.com>

+19 -139
-13
drivers/net/wireless/hostap/hostap_common.h
··· 6 6 7 7 /* IEEE 802.11 defines */ 8 8 9 - /* Information Element IDs */ 10 - #define WLAN_EID_SSID 0 11 - #define WLAN_EID_SUPP_RATES 1 12 - #define WLAN_EID_FH_PARAMS 2 13 - #define WLAN_EID_DS_PARAMS 3 14 - #define WLAN_EID_CF_PARAMS 4 15 - #define WLAN_EID_TIM 5 16 - #define WLAN_EID_IBSS_PARAMS 6 17 - #define WLAN_EID_CHALLENGE 16 18 - #define WLAN_EID_RSN 48 19 - #define WLAN_EID_GENERIC 221 20 - 21 - 22 9 /* HFA384X Configuration RIDs */ 23 10 #define HFA384X_RID_CNFPORTTYPE 0xFC00 24 11 #define HFA384X_RID_CNFOWNMACADDR 0xFC01
+12 -12
drivers/net/wireless/ipw2200.c
··· 4446 4446 4447 4447 #ifdef CONFIG_IPW2200_QOS 4448 4448 #define IPW_GET_PACKET_STYPE(x) WLAN_FC_GET_STYPE( \ 4449 - le16_to_cpu(((struct ieee80211_hdr *)(x))->frame_ctl)) 4449 + le16_to_cpu(((struct ieee80211_hdr *)(x))->frame_control)) 4450 4450 if ((priv->status & STATUS_AUTH) && 4451 4451 (IPW_GET_PACKET_STYPE(&notif->u.raw) 4452 4452 == IEEE80211_STYPE_ASSOC_RESP)) { ··· 7665 7665 u16 fc; 7666 7666 7667 7667 hdr = (struct ieee80211_hdr *)skb->data; 7668 - fc = le16_to_cpu(hdr->frame_ctl); 7668 + fc = le16_to_cpu(hdr->frame_control); 7669 7669 if (!(fc & IEEE80211_FCTL_PROTECTED)) 7670 7670 return; 7671 7671 7672 7672 fc &= ~IEEE80211_FCTL_PROTECTED; 7673 - hdr->frame_ctl = cpu_to_le16(fc); 7673 + hdr->frame_control = cpu_to_le16(fc); 7674 7674 switch (priv->ieee->sec.level) { 7675 7675 case SEC_LEVEL_3: 7676 7676 /* Remove CCMP HDR */ ··· 7982 7982 } 7983 7983 7984 7984 hdr = (void *)rxb->skb->data + IPW_RX_FRAME_SIZE; 7985 - if (ieee80211_is_management(le16_to_cpu(hdr->frame_ctl))) { 7985 + if (ieee80211_is_management(le16_to_cpu(hdr->frame_control))) { 7986 7986 if (filter & IPW_PROM_NO_MGMT) 7987 7987 return; 7988 7988 if (filter & IPW_PROM_MGMT_HEADER_ONLY) 7989 7989 hdr_only = 1; 7990 - } else if (ieee80211_is_control(le16_to_cpu(hdr->frame_ctl))) { 7990 + } else if (ieee80211_is_control(le16_to_cpu(hdr->frame_control))) { 7991 7991 if (filter & IPW_PROM_NO_CTL) 7992 7992 return; 7993 7993 if (filter & IPW_PROM_CTL_HEADER_ONLY) 7994 7994 hdr_only = 1; 7995 - } else if (ieee80211_is_data(le16_to_cpu(hdr->frame_ctl))) { 7995 + } else if (ieee80211_is_data(le16_to_cpu(hdr->frame_control))) { 7996 7996 if (filter & IPW_PROM_NO_DATA) 7997 7997 return; 7998 7998 if (filter & IPW_PROM_DATA_HEADER_ONLY) ··· 8010 8010 ipw_rt = (void *)skb->data; 8011 8011 8012 8012 if (hdr_only) 8013 - len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl)); 8013 + len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_control)); 8014 8014 8015 8015 memcpy(ipw_rt->payload, hdr, len); 8016 8016 ··· 8230 8230 /* Comment this line now since we observed the card receives 8231 8231 * duplicate packets but the FCTL_RETRY bit is not set in the 8232 8232 * IBSS mode with fragmentation enabled. 8233 - BUG_ON(!(le16_to_cpu(header->frame_ctl) & IEEE80211_FCTL_RETRY)); */ 8233 + BUG_ON(!(le16_to_cpu(header->frame_control) & IEEE80211_FCTL_RETRY)); */ 8234 8234 return 1; 8235 8235 } 8236 8236 ··· 10381 10381 10382 10382 /* Filtering of fragment chains is done agains the first fragment */ 10383 10383 hdr = (void *)txb->fragments[0]->data; 10384 - if (ieee80211_is_management(le16_to_cpu(hdr->frame_ctl))) { 10384 + if (ieee80211_is_management(le16_to_cpu(hdr->frame_control))) { 10385 10385 if (filter & IPW_PROM_NO_MGMT) 10386 10386 return; 10387 10387 if (filter & IPW_PROM_MGMT_HEADER_ONLY) 10388 10388 hdr_only = 1; 10389 - } else if (ieee80211_is_control(le16_to_cpu(hdr->frame_ctl))) { 10389 + } else if (ieee80211_is_control(le16_to_cpu(hdr->frame_control))) { 10390 10390 if (filter & IPW_PROM_NO_CTL) 10391 10391 return; 10392 10392 if (filter & IPW_PROM_CTL_HEADER_ONLY) 10393 10393 hdr_only = 1; 10394 - } else if (ieee80211_is_data(le16_to_cpu(hdr->frame_ctl))) { 10394 + } else if (ieee80211_is_data(le16_to_cpu(hdr->frame_control))) { 10395 10395 if (filter & IPW_PROM_NO_DATA) 10396 10396 return; 10397 10397 if (filter & IPW_PROM_DATA_HEADER_ONLY) ··· 10406 10406 10407 10407 if (hdr_only) { 10408 10408 hdr = (void *)src->data; 10409 - len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl)); 10409 + len = ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_control)); 10410 10410 } else 10411 10411 len = src->len; 10412 10412
+1 -2
include/linux/ieee80211.h
··· 826 826 /* Authentication algorithms */ 827 827 #define WLAN_AUTH_OPEN 0 828 828 #define WLAN_AUTH_SHARED_KEY 1 829 - #define WLAN_AUTH_FAST_BSS_TRANSITION 2 830 - #define WLAN_AUTH_LEAP 128 829 + #define WLAN_AUTH_LEAP 2 831 830 832 831 #define WLAN_AUTH_CHALLENGE_LEN 128 833 832
+2 -110
include/net/ieee80211.h
··· 28 28 #include <linux/if_ether.h> /* ETH_ALEN */ 29 29 #include <linux/kernel.h> /* ARRAY_SIZE */ 30 30 #include <linux/wireless.h> 31 + #include <linux/ieee80211.h> 31 32 32 33 #define IEEE80211_VERSION "git-1.1.13" 33 34 ··· 214 213 215 214 #define WLAN_GET_SEQ_FRAG(seq) ((seq) & IEEE80211_SCTL_FRAG) 216 215 #define WLAN_GET_SEQ_SEQ(seq) (((seq) & IEEE80211_SCTL_SEQ) >> 4) 217 - 218 - /* Authentication algorithms */ 219 - #define WLAN_AUTH_OPEN 0 220 - #define WLAN_AUTH_SHARED_KEY 1 221 - #define WLAN_AUTH_LEAP 2 222 - 223 - #define WLAN_AUTH_CHALLENGE_LEN 128 224 - 225 - #define WLAN_CAPABILITY_ESS (1<<0) 226 - #define WLAN_CAPABILITY_IBSS (1<<1) 227 - #define WLAN_CAPABILITY_CF_POLLABLE (1<<2) 228 - #define WLAN_CAPABILITY_CF_POLL_REQUEST (1<<3) 229 - #define WLAN_CAPABILITY_PRIVACY (1<<4) 230 - #define WLAN_CAPABILITY_SHORT_PREAMBLE (1<<5) 231 - #define WLAN_CAPABILITY_PBCC (1<<6) 232 - #define WLAN_CAPABILITY_CHANNEL_AGILITY (1<<7) 233 - #define WLAN_CAPABILITY_SPECTRUM_MGMT (1<<8) 234 - #define WLAN_CAPABILITY_QOS (1<<9) 235 - #define WLAN_CAPABILITY_SHORT_SLOT_TIME (1<<10) 236 - #define WLAN_CAPABILITY_DSSS_OFDM (1<<13) 237 - 238 - /* 802.11g ERP information element */ 239 - #define WLAN_ERP_NON_ERP_PRESENT (1<<0) 240 - #define WLAN_ERP_USE_PROTECTION (1<<1) 241 - #define WLAN_ERP_BARKER_PREAMBLE (1<<2) 242 - 243 - /* Status codes */ 244 - enum ieee80211_statuscode { 245 - WLAN_STATUS_SUCCESS = 0, 246 - WLAN_STATUS_UNSPECIFIED_FAILURE = 1, 247 - WLAN_STATUS_CAPS_UNSUPPORTED = 10, 248 - WLAN_STATUS_REASSOC_NO_ASSOC = 11, 249 - WLAN_STATUS_ASSOC_DENIED_UNSPEC = 12, 250 - WLAN_STATUS_NOT_SUPPORTED_AUTH_ALG = 13, 251 - WLAN_STATUS_UNKNOWN_AUTH_TRANSACTION = 14, 252 - WLAN_STATUS_CHALLENGE_FAIL = 15, 253 - WLAN_STATUS_AUTH_TIMEOUT = 16, 254 - WLAN_STATUS_AP_UNABLE_TO_HANDLE_NEW_STA = 17, 255 - WLAN_STATUS_ASSOC_DENIED_RATES = 18, 256 - /* 802.11b */ 257 - WLAN_STATUS_ASSOC_DENIED_NOSHORTPREAMBLE = 19, 258 - WLAN_STATUS_ASSOC_DENIED_NOPBCC = 20, 259 - WLAN_STATUS_ASSOC_DENIED_NOAGILITY = 21, 260 - /* 802.11h */ 261 - WLAN_STATUS_ASSOC_DENIED_NOSPECTRUM = 22, 262 - WLAN_STATUS_ASSOC_REJECTED_BAD_POWER = 23, 263 - WLAN_STATUS_ASSOC_REJECTED_BAD_SUPP_CHAN = 24, 264 - /* 802.11g */ 265 - WLAN_STATUS_ASSOC_DENIED_NOSHORTTIME = 25, 266 - WLAN_STATUS_ASSOC_DENIED_NODSSSOFDM = 26, 267 - /* 802.11i */ 268 - WLAN_STATUS_INVALID_IE = 40, 269 - WLAN_STATUS_INVALID_GROUP_CIPHER = 41, 270 - WLAN_STATUS_INVALID_PAIRWISE_CIPHER = 42, 271 - WLAN_STATUS_INVALID_AKMP = 43, 272 - WLAN_STATUS_UNSUPP_RSN_VERSION = 44, 273 - WLAN_STATUS_INVALID_RSN_IE_CAP = 45, 274 - WLAN_STATUS_CIPHER_SUITE_REJECTED = 46, 275 - }; 276 - 277 - /* Reason codes */ 278 - enum ieee80211_reasoncode { 279 - WLAN_REASON_UNSPECIFIED = 1, 280 - WLAN_REASON_PREV_AUTH_NOT_VALID = 2, 281 - WLAN_REASON_DEAUTH_LEAVING = 3, 282 - WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY = 4, 283 - WLAN_REASON_DISASSOC_AP_BUSY = 5, 284 - WLAN_REASON_CLASS2_FRAME_FROM_NONAUTH_STA = 6, 285 - WLAN_REASON_CLASS3_FRAME_FROM_NONASSOC_STA = 7, 286 - WLAN_REASON_DISASSOC_STA_HAS_LEFT = 8, 287 - WLAN_REASON_STA_REQ_ASSOC_WITHOUT_AUTH = 9, 288 - /* 802.11h */ 289 - WLAN_REASON_DISASSOC_BAD_POWER = 10, 290 - WLAN_REASON_DISASSOC_BAD_SUPP_CHAN = 11, 291 - /* 802.11i */ 292 - WLAN_REASON_INVALID_IE = 13, 293 - WLAN_REASON_MIC_FAILURE = 14, 294 - WLAN_REASON_4WAY_HANDSHAKE_TIMEOUT = 15, 295 - WLAN_REASON_GROUP_KEY_HANDSHAKE_TIMEOUT = 16, 296 - WLAN_REASON_IE_DIFFERENT = 17, 297 - WLAN_REASON_INVALID_GROUP_CIPHER = 18, 298 - WLAN_REASON_INVALID_PAIRWISE_CIPHER = 19, 299 - WLAN_REASON_INVALID_AKMP = 20, 300 - WLAN_REASON_UNSUPP_RSN_VERSION = 21, 301 - WLAN_REASON_INVALID_RSN_IE_CAP = 22, 302 - WLAN_REASON_IEEE8021X_FAILED = 23, 303 - WLAN_REASON_CIPHER_SUITE_REJECTED = 24, 304 - }; 305 216 306 217 /* Action categories - 802.11h */ 307 218 enum ieee80211_actioncategories { ··· 443 530 MFIE_TYPE_QOS_PARAMETER = 222, 444 531 }; 445 532 446 - /* Minimal header; can be used for passing 802.11 frames with sufficient 447 - * information to determine what type of underlying data type is actually 448 - * stored in the data. */ 449 - struct ieee80211_hdr { 450 - __le16 frame_ctl; 451 - __le16 duration_id; 452 - u8 payload[0]; 453 - } __attribute__ ((packed)); 454 - 455 533 struct ieee80211_hdr_1addr { 456 534 __le16 frame_ctl; 457 535 __le16 duration_id; ··· 486 582 u8 addr2[ETH_ALEN]; 487 583 u8 addr3[ETH_ALEN]; 488 584 __le16 seq_ctl; 489 - u8 payload[0]; 490 - __le16 qos_ctl; 491 - } __attribute__ ((packed)); 492 - 493 - struct ieee80211_hdr_4addrqos { 494 - __le16 frame_ctl; 495 - __le16 duration_id; 496 - u8 addr1[ETH_ALEN]; 497 - u8 addr2[ETH_ALEN]; 498 - u8 addr3[ETH_ALEN]; 499 - __le16 seq_ctl; 500 - u8 addr4[ETH_ALEN]; 501 585 u8 payload[0]; 502 586 __le16 qos_ctl; 503 587 } __attribute__ ((packed)); ··· 1079 1187 1080 1188 static inline u8 *ieee80211_get_payload(struct ieee80211_hdr *hdr) 1081 1189 { 1082 - switch (ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_ctl))) { 1190 + switch (ieee80211_get_hdrlen(le16_to_cpu(hdr->frame_control))) { 1083 1191 case IEEE80211_1ADDR_LEN: 1084 1192 return ((struct ieee80211_hdr_1addr *)hdr)->payload; 1085 1193 case IEEE80211_2ADDR_LEN:
+3 -1
include/net/lib80211.h
··· 8 8 #ifndef LIB80211_H 9 9 #define LIB80211_H 10 10 11 + #include <linux/ieee80211.h> 12 + 11 13 /* print_ssid() is intended to be used in debug (and possibly error) 12 14 * messages. It should never be used for passing ssid to user space. */ 13 15 const char *print_ssid(char *buf, const char *ssid, u8 ssid_len); 14 - #define DECLARE_SSID_BUF(var) char var[32 * 4 + 1] __maybe_unused 16 + #define DECLARE_SSID_BUF(var) char var[IEEE80211_MAX_SSID_LEN * 4 + 1] __maybe_unused 15 17 16 18 #endif /* LIB80211_H */
+1 -1
net/ieee80211/ieee80211_rx.c
··· 40 40 struct ieee80211_rx_stats *rx_stats) 41 41 { 42 42 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; 43 - u16 fc = le16_to_cpu(hdr->frame_ctl); 43 + u16 fc = le16_to_cpu(hdr->frame_control); 44 44 45 45 skb->dev = ieee->dev; 46 46 skb_reset_mac_header(skb);