|
@@ -4,6 +4,7 @@
|
|
|
#include "osdep_service.h"
|
|
|
#include "drv_types.h"
|
|
|
#include "wifi.h"
|
|
|
+#include <linux/compiler.h>
|
|
|
#include <linux/wireless.h>
|
|
|
|
|
|
#define MGMT_QUEUE_NUM 5
|
|
@@ -123,7 +124,7 @@ struct ieee80211_hdr {
|
|
|
u8 addr3[ETH_ALEN];
|
|
|
u16 seq_ctl;
|
|
|
u8 addr4[ETH_ALEN];
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_hdr_3addr {
|
|
|
u16 frame_ctl;
|
|
@@ -132,7 +133,7 @@ struct ieee80211_hdr_3addr {
|
|
|
u8 addr2[ETH_ALEN];
|
|
|
u8 addr3[ETH_ALEN];
|
|
|
u16 seq_ctl;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
|
|
|
struct ieee80211_hdr_qos {
|
|
@@ -144,7 +145,7 @@ struct ieee80211_hdr_qos {
|
|
|
u16 seq_ctl;
|
|
|
u8 addr4[ETH_ALEN];
|
|
|
u16 qc;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_hdr_3addr_qos {
|
|
|
u16 frame_ctl;
|
|
@@ -154,7 +155,7 @@ struct ieee80211_hdr_3addr_qos {
|
|
|
u8 addr3[ETH_ALEN];
|
|
|
u16 seq_ctl;
|
|
|
u16 qc;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct eapol {
|
|
|
u8 snap[6];
|
|
@@ -162,7 +163,7 @@ struct eapol {
|
|
|
u8 version;
|
|
|
u8 type;
|
|
|
u16 length;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
|
|
|
enum eap_type {
|
|
@@ -260,7 +261,7 @@ struct ieee80211_snap_hdr {
|
|
|
u8 ssap; /* always 0xAA */
|
|
|
u8 ctrl; /* always 0x03 */
|
|
|
u8 oui[P80211_OUI_LEN]; /* organizational universal id */
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
#define SNAP_SIZE sizeof(struct ieee80211_snap_hdr)
|
|
|
|
|
@@ -510,7 +511,7 @@ struct ieee80211_security {
|
|
|
u8 keys[WEP_KEYS][WEP_KEY_LEN];
|
|
|
u8 level;
|
|
|
u16 flags;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
/*
|
|
|
|
|
@@ -555,13 +556,13 @@ struct ieee80211_header_data {
|
|
|
struct ieee80211_info_element_hdr {
|
|
|
u8 id;
|
|
|
u8 len;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_info_element {
|
|
|
u8 id;
|
|
|
u8 len;
|
|
|
u8 data[0];
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
/*
|
|
|
* These are the data types that can make up management packets
|
|
@@ -574,7 +575,7 @@ struct ieee80211_info_element {
|
|
|
u16 listen_interval;
|
|
|
struct {
|
|
|
u16 association_id:14, reserved:2;
|
|
|
- } __attribute__ ((packed));
|
|
|
+ } __packed;
|
|
|
u32 time_stamp[2];
|
|
|
u16 reason;
|
|
|
u16 status;
|
|
@@ -588,7 +589,7 @@ struct ieee80211_authentication {
|
|
|
u16 algorithm;
|
|
|
u16 transaction;
|
|
|
u16 status;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_probe_response {
|
|
|
struct ieee80211_header_data header;
|
|
@@ -596,25 +597,25 @@ struct ieee80211_probe_response {
|
|
|
u16 beacon_interval;
|
|
|
u16 capability;
|
|
|
struct ieee80211_info_element info_element;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_probe_request {
|
|
|
struct ieee80211_header_data header;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_assoc_request_frame {
|
|
|
struct ieee80211_hdr_3addr header;
|
|
|
u16 capability;
|
|
|
u16 listen_interval;
|
|
|
struct ieee80211_info_element_hdr info_element;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_assoc_response_frame {
|
|
|
struct ieee80211_hdr_3addr header;
|
|
|
u16 capability;
|
|
|
u16 status;
|
|
|
u16 aid;
|
|
|
-} __attribute__ ((packed));
|
|
|
+} __packed;
|
|
|
|
|
|
struct ieee80211_txb {
|
|
|
u8 nr_frags;
|