aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/hostap/hostap_main.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-07-21 05:02:45 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-21 05:02:45 -0400
commite27772b48df91a954a74b1411b57d83b945a58c7 (patch)
treeebd4a434d9e3cbd0844109e4469f91daac581b59 /drivers/net/wireless/hostap/hostap_main.c
parentd092633bff3b19faffc480fe9810805e7792a029 (diff)
parent14b395e35d1afdd8019d11b92e28041fad591b71 (diff)
Merge branch 'linus' into x86/urgent
Diffstat (limited to 'drivers/net/wireless/hostap/hostap_main.c')
-rw-r--r--drivers/net/wireless/hostap/hostap_main.c20
1 files changed, 1 insertions, 19 deletions
diff --git a/drivers/net/wireless/hostap/hostap_main.c b/drivers/net/wireless/hostap/hostap_main.c
index a38e85f334df..756ab56c1f40 100644
--- a/drivers/net/wireless/hostap/hostap_main.c
+++ b/drivers/net/wireless/hostap/hostap_main.c
@@ -597,25 +597,7 @@ void hostap_dump_tx_header(const char *name, const struct hfa384x_tx_frame *tx)
597static int hostap_80211_header_parse(const struct sk_buff *skb, 597static int hostap_80211_header_parse(const struct sk_buff *skb,
598 unsigned char *haddr) 598 unsigned char *haddr)
599{ 599{
600 struct hostap_interface *iface = netdev_priv(skb->dev); 600 memcpy(haddr, skb_mac_header(skb) + 10, ETH_ALEN); /* addr2 */
601 local_info_t *local = iface->local;
602
603 if (local->monitor_type == PRISM2_MONITOR_PRISM ||
604 local->monitor_type == PRISM2_MONITOR_CAPHDR) {
605 const unsigned char *mac = skb_mac_header(skb);
606
607 if (*(u32 *)mac == LWNG_CAP_DID_BASE) {
608 memcpy(haddr,
609 mac + sizeof(struct linux_wlan_ng_prism_hdr) + 10,
610 ETH_ALEN); /* addr2 */
611 } else { /* (*(u32 *)mac == htonl(LWNG_CAPHDR_VERSION)) */
612 memcpy(haddr,
613 mac + sizeof(struct linux_wlan_ng_cap_hdr) + 10,
614 ETH_ALEN); /* addr2 */
615 }
616 } else
617 memcpy(haddr, skb_mac_header(skb) + 10, ETH_ALEN); /* addr2 */
618
619 return ETH_ALEN; 601 return ETH_ALEN;
620} 602}
621 603