Commit e2117cea authored by Frederic Leroy's avatar Frederic Leroy Committed by John W. Linville

staging: rtl8192su: fix compile error from wireless-testing commit

In wireless-testing, commit 7044cc56 added struct ieee80211_hdr_3addr
to include/linux/ieee80211.h. This definition collides with one that is
in the rtl8192su driver in staging.

The conflict is resolved by changing rtl8192su
to use the definition from include/linux/ieee80211.h.
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 5b9a919a
...@@ -609,16 +609,6 @@ struct ieee80211_hdr_2addr { ...@@ -609,16 +609,6 @@ struct ieee80211_hdr_2addr {
u8 payload[0]; u8 payload[0];
} __attribute__ ((packed)); } __attribute__ ((packed));
struct ieee80211_hdr_3addr {
__le16 frame_ctl;
__le16 duration_id;
u8 addr1[ETH_ALEN];
u8 addr2[ETH_ALEN];
u8 addr3[ETH_ALEN];
__le16 seq_ctl;
u8 payload[0];
} __attribute__ ((packed));
struct ieee80211_hdr_4addr { struct ieee80211_hdr_4addr {
__le16 frame_ctl; __le16 frame_ctl;
__le16 duration_id; __le16 duration_id;
...@@ -1672,7 +1662,7 @@ static inline u8 *ieee80211_get_payload(struct rtl_ieee80211_hdr *hdr) ...@@ -1672,7 +1662,7 @@ static inline u8 *ieee80211_get_payload(struct rtl_ieee80211_hdr *hdr)
case IEEE80211_2ADDR_LEN: case IEEE80211_2ADDR_LEN:
return ((struct ieee80211_hdr_2addr *)hdr)->payload; return ((struct ieee80211_hdr_2addr *)hdr)->payload;
case IEEE80211_3ADDR_LEN: case IEEE80211_3ADDR_LEN:
return ((struct ieee80211_hdr_3addr *)hdr)->payload; return (void *)hdr+sizeof(struct ieee80211_hdr_3addr);
case IEEE80211_4ADDR_LEN: case IEEE80211_4ADDR_LEN:
return ((struct ieee80211_hdr_4addr *)hdr)->payload; return ((struct ieee80211_hdr_4addr *)hdr)->payload;
} }
......
...@@ -201,7 +201,7 @@ typedef union _frameqos { ...@@ -201,7 +201,7 @@ typedef union _frameqos {
static inline u8 Frame_QoSTID(u8 *buf) static inline u8 Frame_QoSTID(u8 *buf)
{ {
struct ieee80211_hdr_3addr *hdr = (struct ieee80211_hdr_3addr *)buf; struct ieee80211_hdr_3addr *hdr = (struct ieee80211_hdr_3addr *)buf;
u16 fc = le16_to_cpu(hdr->frame_ctl); u16 fc = le16_to_cpu(hdr->frame_control);
return (u8)((frameqos *)(buf + return (u8)((frameqos *)(buf +
(((fc & IEEE80211_FCTL_TODS) && (((fc & IEEE80211_FCTL_TODS) &&
......
...@@ -745,7 +745,7 @@ u8 parse_subframe(struct sk_buff *skb, ...@@ -745,7 +745,7 @@ u8 parse_subframe(struct sk_buff *skb,
struct ieee80211_rxb *rxb,u8* src,u8* dst) struct ieee80211_rxb *rxb,u8* src,u8* dst)
{ {
struct ieee80211_hdr_3addr *hdr = (struct ieee80211_hdr_3addr* )skb->data; struct ieee80211_hdr_3addr *hdr = (struct ieee80211_hdr_3addr* )skb->data;
u16 fc = le16_to_cpu(hdr->frame_ctl); u16 fc = le16_to_cpu(hdr->frame_control);
u16 LLCOffset= sizeof(struct ieee80211_hdr_3addr); u16 LLCOffset= sizeof(struct ieee80211_hdr_3addr);
u16 ChkLength; u16 ChkLength;
...@@ -757,7 +757,7 @@ u8 parse_subframe(struct sk_buff *skb, ...@@ -757,7 +757,7 @@ u8 parse_subframe(struct sk_buff *skb,
struct sk_buff *sub_skb; struct sk_buff *sub_skb;
u8 *data_ptr; u8 *data_ptr;
/* just for debug purpose */ /* just for debug purpose */
SeqNum = WLAN_GET_SEQ_SEQ(le16_to_cpu(hdr->seq_ctl)); SeqNum = WLAN_GET_SEQ_SEQ(le16_to_cpu(hdr->seq_ctrl));
if((IEEE80211_QOS_HAS_SEQ(fc))&&\ if((IEEE80211_QOS_HAS_SEQ(fc))&&\
(((frameqos *)(skb->data + IEEE80211_3ADDR_LEN))->field.reserved)) { (((frameqos *)(skb->data + IEEE80211_3ADDR_LEN))->field.reserved)) {
...@@ -2371,7 +2371,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2371,7 +2371,7 @@ static inline void ieee80211_process_probe_response(
escape_essid(info_element->data, escape_essid(info_element->data,
info_element->len), info_element->len),
MAC_ARG(beacon->header.addr3), MAC_ARG(beacon->header.addr3),
WLAN_FC_GET_STYPE(beacon->header.frame_ctl) == WLAN_FC_GET_STYPE(beacon->header.frame_control) ==
IEEE80211_STYPE_PROBE_RESP ? IEEE80211_STYPE_PROBE_RESP ?
"PROBE RESPONSE" : "BEACON"); "PROBE RESPONSE" : "BEACON");
return; return;
...@@ -2388,7 +2388,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2388,7 +2388,7 @@ static inline void ieee80211_process_probe_response(
return; return;
if(ieee->bGlobalDomain) if(ieee->bGlobalDomain)
{ {
if (WLAN_FC_GET_STYPE(beacon->header.frame_ctl) == IEEE80211_STYPE_PROBE_RESP) if (WLAN_FC_GET_STYPE(beacon->header.frame_control) == IEEE80211_STYPE_PROBE_RESP)
{ {
// Case 1: Country code // Case 1: Country code
if(IS_COUNTRY_IE_VALID(ieee) ) if(IS_COUNTRY_IE_VALID(ieee) )
...@@ -2455,7 +2455,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2455,7 +2455,7 @@ static inline void ieee80211_process_probe_response(
else else
ieee->current_network.buseprotection = false; ieee->current_network.buseprotection = false;
} }
if(is_beacon(beacon->header.frame_ctl)) if(is_beacon(beacon->header.frame_control))
{ {
if(ieee->state == IEEE80211_LINKED) if(ieee->state == IEEE80211_LINKED)
ieee->LinkDetectInfo.NumRecvBcnInPeriod++; ieee->LinkDetectInfo.NumRecvBcnInPeriod++;
...@@ -2497,7 +2497,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2497,7 +2497,7 @@ static inline void ieee80211_process_probe_response(
escape_essid(network.ssid, escape_essid(network.ssid,
network.ssid_len), network.ssid_len),
MAC_ARG(network.bssid), MAC_ARG(network.bssid),
WLAN_FC_GET_STYPE(beacon->header.frame_ctl) == WLAN_FC_GET_STYPE(beacon->header.frame_control) ==
IEEE80211_STYPE_PROBE_RESP ? IEEE80211_STYPE_PROBE_RESP ?
"PROBE RESPONSE" : "BEACON"); "PROBE RESPONSE" : "BEACON");
#endif #endif
...@@ -2510,7 +2510,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2510,7 +2510,7 @@ static inline void ieee80211_process_probe_response(
escape_essid(target->ssid, escape_essid(target->ssid,
target->ssid_len), target->ssid_len),
MAC_ARG(target->bssid), MAC_ARG(target->bssid),
WLAN_FC_GET_STYPE(beacon->header.frame_ctl) == WLAN_FC_GET_STYPE(beacon->header.frame_control) ==
IEEE80211_STYPE_PROBE_RESP ? IEEE80211_STYPE_PROBE_RESP ?
"PROBE RESPONSE" : "BEACON"); "PROBE RESPONSE" : "BEACON");
...@@ -2520,7 +2520,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2520,7 +2520,7 @@ static inline void ieee80211_process_probe_response(
*/ */
renew = !time_after(target->last_scanned + ieee->scan_age, jiffies); renew = !time_after(target->last_scanned + ieee->scan_age, jiffies);
//YJ,add,080819,for hidden ap //YJ,add,080819,for hidden ap
if(is_beacon(beacon->header.frame_ctl) == 0) if(is_beacon(beacon->header.frame_control) == 0)
network.flags = (~NETWORK_EMPTY_ESSID & network.flags)|(NETWORK_EMPTY_ESSID & target->flags); network.flags = (~NETWORK_EMPTY_ESSID & network.flags)|(NETWORK_EMPTY_ESSID & target->flags);
//if(strncmp(network.ssid, "linksys-c",9) == 0) //if(strncmp(network.ssid, "linksys-c",9) == 0)
// printk("====>2 network.ssid=%s FLAG=%d target.ssid=%s FLAG=%d\n", network.ssid, network.flags, target->ssid, target->flags); // printk("====>2 network.ssid=%s FLAG=%d target.ssid=%s FLAG=%d\n", network.ssid, network.flags, target->ssid, target->flags);
...@@ -2536,7 +2536,7 @@ static inline void ieee80211_process_probe_response( ...@@ -2536,7 +2536,7 @@ static inline void ieee80211_process_probe_response(
} }
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
if (is_beacon(beacon->header.frame_ctl)&&is_same_network(&ieee->current_network, &network, ieee)&&\ if (is_beacon(beacon->header.frame_control)&&is_same_network(&ieee->current_network, &network, ieee)&&\
(ieee->state == IEEE80211_LINKED)) { (ieee->state == IEEE80211_LINKED)) {
if(ieee->handle_beacon != NULL) { if(ieee->handle_beacon != NULL) {
ieee->handle_beacon(ieee->dev,beacon,&ieee->current_network); ieee->handle_beacon(ieee->dev,beacon,&ieee->current_network);
......
...@@ -242,7 +242,7 @@ inline void softmac_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *ieee ...@@ -242,7 +242,7 @@ inline void softmac_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *ieee
if(ieee->queue_stop){ if(ieee->queue_stop){
enqueue_mgmt(ieee,skb); enqueue_mgmt(ieee,skb);
}else{ }else{
header->seq_ctl = cpu_to_le16(ieee->seq_ctrl[0]<<4); header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0]<<4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -260,7 +260,7 @@ inline void softmac_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *ieee ...@@ -260,7 +260,7 @@ inline void softmac_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *ieee
spin_unlock_irqrestore(&ieee->lock, flags); spin_unlock_irqrestore(&ieee->lock, flags);
spin_lock_irqsave(&ieee->mgmt_tx_lock, flags); spin_lock_irqsave(&ieee->mgmt_tx_lock, flags);
header->seq_ctl = cpu_to_le16(ieee->seq_ctrl[0] << 4); header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -302,7 +302,7 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i ...@@ -302,7 +302,7 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i
//printk("=============>%s()\n", __FUNCTION__); //printk("=============>%s()\n", __FUNCTION__);
if(single){ if(single){
header->seq_ctl = cpu_to_le16(ieee->seq_ctrl[0] << 4); header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -315,7 +315,7 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i ...@@ -315,7 +315,7 @@ inline void softmac_ps_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *i
}else{ }else{
header->seq_ctl = cpu_to_le16(ieee->seq_ctrl[0] << 4); header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -347,7 +347,7 @@ inline struct sk_buff *ieee80211_probe_req(struct ieee80211_device *ieee) ...@@ -347,7 +347,7 @@ inline struct sk_buff *ieee80211_probe_req(struct ieee80211_device *ieee)
skb_reserve(skb, ieee->tx_headroom); skb_reserve(skb, ieee->tx_headroom);
req = (struct ieee80211_probe_request *) skb_put(skb,sizeof(struct ieee80211_probe_request)); req = (struct ieee80211_probe_request *) skb_put(skb,sizeof(struct ieee80211_probe_request));
req->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_PROBE_REQ); req->header.frame_control = cpu_to_le16(IEEE80211_STYPE_PROBE_REQ);
req->header.duration_id = 0; //FIXME: is this OK ? req->header.duration_id = 0; //FIXME: is this OK ?
memset(req->header.addr1, 0xff, ETH_ALEN); memset(req->header.addr1, 0xff, ETH_ALEN);
...@@ -662,8 +662,8 @@ inline struct sk_buff *ieee80211_authentication_req(struct ieee80211_network *be ...@@ -662,8 +662,8 @@ inline struct sk_buff *ieee80211_authentication_req(struct ieee80211_network *be
auth = (struct ieee80211_authentication *) auth = (struct ieee80211_authentication *)
skb_put(skb, sizeof(struct ieee80211_authentication)); skb_put(skb, sizeof(struct ieee80211_authentication));
auth->header.frame_ctl = IEEE80211_STYPE_AUTH; auth->header.frame_control = IEEE80211_STYPE_AUTH;
if (challengelen) auth->header.frame_ctl |= IEEE80211_FCTL_WEP; if (challengelen) auth->header.frame_control |= IEEE80211_FCTL_WEP;
auth->header.duration_id = 0x013a; //FIXME auth->header.duration_id = 0x013a; //FIXME
...@@ -801,7 +801,7 @@ static struct sk_buff* ieee80211_probe_resp(struct ieee80211_device *ieee, u8 *d ...@@ -801,7 +801,7 @@ static struct sk_buff* ieee80211_probe_resp(struct ieee80211_device *ieee, u8 *d
beacon_buf->capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); beacon_buf->capability |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY);
beacon_buf->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_PROBE_RESP); beacon_buf->header.frame_control = cpu_to_le16(IEEE80211_STYPE_PROBE_RESP);
beacon_buf->info_element[0].id = MFIE_TYPE_SSID; beacon_buf->info_element[0].id = MFIE_TYPE_SSID;
beacon_buf->info_element[0].len = ssid_len; beacon_buf->info_element[0].len = ssid_len;
...@@ -880,7 +880,7 @@ struct sk_buff* ieee80211_assoc_resp(struct ieee80211_device *ieee, u8 *dest) ...@@ -880,7 +880,7 @@ struct sk_buff* ieee80211_assoc_resp(struct ieee80211_device *ieee, u8 *dest)
assoc = (struct ieee80211_assoc_response_frame *) assoc = (struct ieee80211_assoc_response_frame *)
skb_put(skb,sizeof(struct ieee80211_assoc_response_frame)); skb_put(skb,sizeof(struct ieee80211_assoc_response_frame));
assoc->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_ASSOC_RESP); assoc->header.frame_control = cpu_to_le16(IEEE80211_STYPE_ASSOC_RESP);
memcpy(assoc->header.addr1, dest,ETH_ALEN); memcpy(assoc->header.addr1, dest,ETH_ALEN);
memcpy(assoc->header.addr3, ieee->dev->dev_addr, ETH_ALEN); memcpy(assoc->header.addr3, ieee->dev->dev_addr, ETH_ALEN);
memcpy(assoc->header.addr2, ieee->dev->dev_addr, ETH_ALEN); memcpy(assoc->header.addr2, ieee->dev->dev_addr, ETH_ALEN);
...@@ -935,7 +935,7 @@ struct sk_buff* ieee80211_auth_resp(struct ieee80211_device *ieee,int status, u8 ...@@ -935,7 +935,7 @@ struct sk_buff* ieee80211_auth_resp(struct ieee80211_device *ieee,int status, u8
memcpy(auth->header.addr3, ieee->dev->dev_addr, ETH_ALEN); memcpy(auth->header.addr3, ieee->dev->dev_addr, ETH_ALEN);
memcpy(auth->header.addr2, ieee->dev->dev_addr, ETH_ALEN); memcpy(auth->header.addr2, ieee->dev->dev_addr, ETH_ALEN);
memcpy(auth->header.addr1, dest, ETH_ALEN); memcpy(auth->header.addr1, dest, ETH_ALEN);
auth->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_AUTH); auth->header.frame_control = cpu_to_le16(IEEE80211_STYPE_AUTH);
return skb; return skb;
...@@ -957,7 +957,7 @@ struct sk_buff* ieee80211_null_func(struct ieee80211_device *ieee,short pwr) ...@@ -957,7 +957,7 @@ struct sk_buff* ieee80211_null_func(struct ieee80211_device *ieee,short pwr)
memcpy(hdr->addr2, ieee->dev->dev_addr, ETH_ALEN); memcpy(hdr->addr2, ieee->dev->dev_addr, ETH_ALEN);
memcpy(hdr->addr3, ieee->current_network.bssid, ETH_ALEN); memcpy(hdr->addr3, ieee->current_network.bssid, ETH_ALEN);
hdr->frame_ctl = cpu_to_le16(IEEE80211_FTYPE_DATA | hdr->frame_control = cpu_to_le16(IEEE80211_FTYPE_DATA |
IEEE80211_STYPE_NULLFUNC | IEEE80211_FCTL_TODS | IEEE80211_STYPE_NULLFUNC | IEEE80211_FCTL_TODS |
(pwr ? IEEE80211_FCTL_PM:0)); (pwr ? IEEE80211_FCTL_PM:0));
...@@ -1083,7 +1083,7 @@ inline struct sk_buff *ieee80211_association_req(struct ieee80211_network *beaco ...@@ -1083,7 +1083,7 @@ inline struct sk_buff *ieee80211_association_req(struct ieee80211_network *beaco
skb_put(skb, sizeof(struct ieee80211_assoc_request_frame)+2); skb_put(skb, sizeof(struct ieee80211_assoc_request_frame)+2);
hdr->header.frame_ctl = IEEE80211_STYPE_ASSOC_REQ; hdr->header.frame_control = IEEE80211_STYPE_ASSOC_REQ;
hdr->header.duration_id= 37; //FIXME hdr->header.duration_id= 37; //FIXME
memcpy(hdr->header.addr1, beacon->bssid, ETH_ALEN); memcpy(hdr->header.addr1, beacon->bssid, ETH_ALEN);
memcpy(hdr->header.addr2, ieee->dev->dev_addr, ETH_ALEN); memcpy(hdr->header.addr2, ieee->dev->dev_addr, ETH_ALEN);
...@@ -1940,13 +1940,13 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, ...@@ -1940,13 +1940,13 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
if(!ieee->proto_started) if(!ieee->proto_started)
return 0; return 0;
switch (WLAN_FC_GET_STYPE(header->frame_ctl)) { switch (WLAN_FC_GET_STYPE(header->frame_control)) {
case IEEE80211_STYPE_ASSOC_RESP: case IEEE80211_STYPE_ASSOC_RESP:
case IEEE80211_STYPE_REASSOC_RESP: case IEEE80211_STYPE_REASSOC_RESP:
IEEE80211_DEBUG_MGMT("received [RE]ASSOCIATION RESPONSE (%d)\n", IEEE80211_DEBUG_MGMT("received [RE]ASSOCIATION RESPONSE (%d)\n",
WLAN_FC_GET_STYPE(header->frame_ctl)); WLAN_FC_GET_STYPE(header->frame_control));
if ((ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE) && if ((ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE) &&
ieee->state == IEEE80211_ASSOCIATING_AUTHENTICATED && ieee->state == IEEE80211_ASSOCIATING_AUTHENTICATED &&
ieee->iw_mode == IW_MODE_INFRA){ ieee->iw_mode == IW_MODE_INFRA){
...@@ -2088,7 +2088,7 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb, ...@@ -2088,7 +2088,7 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
if ((ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE) && if ((ieee->softmac_features & IEEE_SOFTMAC_ASSOCIATE) &&
ieee->state == IEEE80211_LINKED && ieee->state == IEEE80211_LINKED &&
ieee->iw_mode == IW_MODE_INFRA){ ieee->iw_mode == IW_MODE_INFRA){
printk("==========>received disassoc/deauth(%x) frame, reason code:%x\n",WLAN_FC_GET_STYPE(header->frame_ctl), ((struct ieee80211_disassoc*)skb->data)->reason); printk("==========>received disassoc/deauth(%x) frame, reason code:%x\n",WLAN_FC_GET_STYPE(header->frame_control), ((struct ieee80211_disassoc*)skb->data)->reason);
ieee->state = IEEE80211_ASSOCIATING; ieee->state = IEEE80211_ASSOCIATING;
ieee->softmac_stats.reassoc++; ieee->softmac_stats.reassoc++;
ieee->is_roaming = true; ieee->is_roaming = true;
...@@ -2239,7 +2239,7 @@ void ieee80211_wake_queue(struct ieee80211_device *ieee) ...@@ -2239,7 +2239,7 @@ void ieee80211_wake_queue(struct ieee80211_device *ieee)
header = (struct ieee80211_hdr_3addr *) skb->data; header = (struct ieee80211_hdr_3addr *) skb->data;
header->seq_ctl = cpu_to_le16(ieee->seq_ctrl[0] << 4); header->seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -2574,7 +2574,7 @@ struct sk_buff *ieee80211_get_beacon_(struct ieee80211_device *ieee) ...@@ -2574,7 +2574,7 @@ struct sk_buff *ieee80211_get_beacon_(struct ieee80211_device *ieee)
return NULL; return NULL;
b = (struct ieee80211_probe_response *) skb->data; b = (struct ieee80211_probe_response *) skb->data;
b->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_BEACON); b->header.frame_control = cpu_to_le16(IEEE80211_STYPE_BEACON);
return skb; return skb;
...@@ -2590,7 +2590,7 @@ struct sk_buff *ieee80211_get_beacon(struct ieee80211_device *ieee) ...@@ -2590,7 +2590,7 @@ struct sk_buff *ieee80211_get_beacon(struct ieee80211_device *ieee)
return NULL; return NULL;
b = (struct ieee80211_probe_response *) skb->data; b = (struct ieee80211_probe_response *) skb->data;
b->header.seq_ctl = cpu_to_le16(ieee->seq_ctrl[0] << 4); b->header.seq_ctrl = cpu_to_le16(ieee->seq_ctrl[0] << 4);
if (ieee->seq_ctrl[0] == 0xFFF) if (ieee->seq_ctrl[0] == 0xFFF)
ieee->seq_ctrl[0] = 0; ieee->seq_ctrl[0] = 0;
...@@ -3139,7 +3139,7 @@ inline struct sk_buff *ieee80211_disassociate_skb( ...@@ -3139,7 +3139,7 @@ inline struct sk_buff *ieee80211_disassociate_skb(
return NULL; return NULL;
disass = (struct ieee80211_disassoc *) skb_put(skb,sizeof(struct ieee80211_disassoc)); disass = (struct ieee80211_disassoc *) skb_put(skb,sizeof(struct ieee80211_disassoc));
disass->header.frame_ctl = cpu_to_le16(IEEE80211_STYPE_DISASSOC); disass->header.frame_control = cpu_to_le16(IEEE80211_STYPE_DISASSOC);
disass->header.duration_id = 0; disass->header.duration_id = 0;
memcpy(disass->header.addr1, beacon->bssid, ETH_ALEN); memcpy(disass->header.addr1, beacon->bssid, ETH_ALEN);
......
...@@ -136,7 +136,7 @@ static struct sk_buff* ieee80211_ADDBA(struct ieee80211_device* ieee, u8* Dst, P ...@@ -136,7 +136,7 @@ static struct sk_buff* ieee80211_ADDBA(struct ieee80211_device* ieee, u8* Dst, P
memcpy(BAReq->addr3, ieee->current_network.bssid, ETH_ALEN); memcpy(BAReq->addr3, ieee->current_network.bssid, ETH_ALEN);
BAReq->frame_ctl = cpu_to_le16(IEEE80211_STYPE_MANAGE_ACT); //action frame BAReq->frame_control = cpu_to_le16(IEEE80211_STYPE_MANAGE_ACT); //action frame
//tag += sizeof( struct ieee80211_hdr_3addr); //move to action field //tag += sizeof( struct ieee80211_hdr_3addr); //move to action field
tag = (u8*)skb_put(skb, 9); tag = (u8*)skb_put(skb, 9);
...@@ -221,7 +221,7 @@ static struct sk_buff* ieee80211_DELBA( ...@@ -221,7 +221,7 @@ static struct sk_buff* ieee80211_DELBA(
memcpy(Delba->addr1, dst, ETH_ALEN); memcpy(Delba->addr1, dst, ETH_ALEN);
memcpy(Delba->addr2, ieee->dev->dev_addr, ETH_ALEN); memcpy(Delba->addr2, ieee->dev->dev_addr, ETH_ALEN);
memcpy(Delba->addr3, ieee->current_network.bssid, ETH_ALEN); memcpy(Delba->addr3, ieee->current_network.bssid, ETH_ALEN);
Delba->frame_ctl = cpu_to_le16(IEEE80211_STYPE_MANAGE_ACT); //action frame Delba->frame_control = cpu_to_le16(IEEE80211_STYPE_MANAGE_ACT); //action frame
tag = (u8*)skb_put(skb, 6); tag = (u8*)skb_put(skb, 6);
......
...@@ -6166,7 +6166,7 @@ void rtl8192_process_phyinfo(struct r8192_priv * priv,u8* buffer, struct ieee802 ...@@ -6166,7 +6166,7 @@ void rtl8192_process_phyinfo(struct r8192_priv * priv,u8* buffer, struct ieee802
u16 sc ; u16 sc ;
unsigned int frag,seq; unsigned int frag,seq;
hdr = (struct ieee80211_hdr_3addr *)buffer; hdr = (struct ieee80211_hdr_3addr *)buffer;
sc = le16_to_cpu(hdr->seq_ctl); sc = le16_to_cpu(hdr->seq_ctrl);
frag = WLAN_GET_SEQ_FRAG(sc); frag = WLAN_GET_SEQ_FRAG(sc);
seq = WLAN_GET_SEQ_SEQ(sc); seq = WLAN_GET_SEQ_SEQ(sc);
//cosa add 04292008 to record the sequence number //cosa add 04292008 to record the sequence number
...@@ -6825,7 +6825,7 @@ void rtl8192SU_TranslateRxSignalStuff(struct sk_buff *skb, ...@@ -6825,7 +6825,7 @@ void rtl8192SU_TranslateRxSignalStuff(struct sk_buff *skb,
tmp_buf = (u8*)skb->data;// + get_rxpacket_shiftbytes_819xusb(pstats); tmp_buf = (u8*)skb->data;// + get_rxpacket_shiftbytes_819xusb(pstats);
hdr = (struct ieee80211_hdr_3addr *)tmp_buf; hdr = (struct ieee80211_hdr_3addr *)tmp_buf;
fc = le16_to_cpu(hdr->frame_ctl); fc = le16_to_cpu(hdr->frame_control);
type = WLAN_FC_GET_TYPE(fc); type = WLAN_FC_GET_TYPE(fc);
praddr = hdr->addr1; praddr = hdr->addr1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment