--- a/net80211/ieee80211_input.c +++ b/net80211/ieee80211_input.c @@ -4443,7 +4443,9 @@ ath_eth_type_trans(struct sk_buff *skb, if (memcmp(eth->h_dest, dev->dev_addr, ETH_ALEN)) skb->pkt_type = PACKET_OTHERHOST; - return eth->h_proto; + if ((ntohs(eth->h_proto) >= 1536) || (ntohs(eth->h_proto) < 38)) + return eth->h_proto; + return htons(ETH_P_802_2); } #endif