diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/mwifiex/sta_rx.c | 8 | ||||
-rw-r--r-- | drivers/net/wireless/mwifiex/uap_txrx.c | 8 |
2 files changed, 12 insertions, 4 deletions
diff --git a/drivers/net/wireless/mwifiex/sta_rx.c b/drivers/net/wireless/mwifiex/sta_rx.c index 241c0e5fc8ff..452389959520 100644 --- a/drivers/net/wireless/mwifiex/sta_rx.c +++ b/drivers/net/wireless/mwifiex/sta_rx.c | |||
@@ -94,8 +94,12 @@ int mwifiex_process_rx_packet(struct mwifiex_private *priv, | |||
94 | rx_pkt_hdr = (void *)local_rx_pd + | 94 | rx_pkt_hdr = (void *)local_rx_pd + |
95 | le16_to_cpu(local_rx_pd->rx_pkt_offset); | 95 | le16_to_cpu(local_rx_pd->rx_pkt_offset); |
96 | 96 | ||
97 | if (!memcmp(&rx_pkt_hdr->rfc1042_hdr, rfc1042_header, | 97 | if ((!memcmp(&rx_pkt_hdr->rfc1042_hdr, bridge_tunnel_header, |
98 | sizeof(rfc1042_header))) { | 98 | sizeof(bridge_tunnel_header))) || |
99 | (!memcmp(&rx_pkt_hdr->rfc1042_hdr, rfc1042_header, | ||
100 | sizeof(rfc1042_header)) && | ||
101 | ntohs(rx_pkt_hdr->rfc1042_hdr.snap_type) != ETH_P_AARP && | ||
102 | ntohs(rx_pkt_hdr->rfc1042_hdr.snap_type) != ETH_P_IPX)) { | ||
99 | /* | 103 | /* |
100 | * Replace the 803 header and rfc1042 header (llc/snap) with an | 104 | * Replace the 803 header and rfc1042 header (llc/snap) with an |
101 | * EthernetII header, keep the src/dst and snap_type | 105 | * EthernetII header, keep the src/dst and snap_type |
diff --git a/drivers/net/wireless/mwifiex/uap_txrx.c b/drivers/net/wireless/mwifiex/uap_txrx.c index 0d4b7d62ebcc..a0bd954b3ab2 100644 --- a/drivers/net/wireless/mwifiex/uap_txrx.c +++ b/drivers/net/wireless/mwifiex/uap_txrx.c | |||
@@ -111,8 +111,12 @@ static void mwifiex_uap_queue_bridged_pkt(struct mwifiex_private *priv, | |||
111 | return; | 111 | return; |
112 | } | 112 | } |
113 | 113 | ||
114 | if (!memcmp(&rx_pkt_hdr->rfc1042_hdr, rfc1042_header, | 114 | if ((!memcmp(&rx_pkt_hdr->rfc1042_hdr, bridge_tunnel_header, |
115 | sizeof(rfc1042_header))) { | 115 | sizeof(bridge_tunnel_header))) || |
116 | (!memcmp(&rx_pkt_hdr->rfc1042_hdr, rfc1042_header, | ||
117 | sizeof(rfc1042_header)) && | ||
118 | ntohs(rx_pkt_hdr->rfc1042_hdr.snap_type) != ETH_P_AARP && | ||
119 | ntohs(rx_pkt_hdr->rfc1042_hdr.snap_type) != ETH_P_IPX)) { | ||
116 | /* Replace the 803 header and rfc1042 header (llc/snap) with | 120 | /* Replace the 803 header and rfc1042 header (llc/snap) with |
117 | * an Ethernet II header, keep the src/dst and snap_type | 121 | * an Ethernet II header, keep the src/dst and snap_type |
118 | * (ethertype). | 122 | * (ethertype). |