Lines 1135-1142
Link Here
|
1135 |
} |
1135 |
} |
1136 |
if (skb1 != NULL) { |
1136 |
if (skb1 != NULL) { |
1137 |
skb1->dev = dev; |
1137 |
skb1->dev = dev; |
1138 |
skb1->mac.raw = skb1->data; |
1138 |
skb1->mac_header = skb1->data; |
1139 |
skb1->nh.raw = skb1->data + sizeof(struct ether_header); |
1139 |
skb1->network_header = skb1->data + sizeof(struct ether_header); |
1140 |
skb1->protocol = __constant_htons(ETH_P_802_2); |
1140 |
skb1->protocol = __constant_htons(ETH_P_802_2); |
1141 |
/* XXX insert vlan tag before queue it? */ |
1141 |
/* XXX insert vlan tag before queue it? */ |
1142 |
dev_queue_xmit(skb1); |
1142 |
dev_queue_xmit(skb1); |
Lines 2262-2268
Link Here
|
2262 |
if (skb1 == NULL) |
2262 |
if (skb1 == NULL) |
2263 |
return; |
2263 |
return; |
2264 |
skb1->dev = dev; |
2264 |
skb1->dev = dev; |
2265 |
skb1->mac.raw = skb1->data; |
2265 |
skb1->mac_header = skb1->data; |
2266 |
skb1->ip_summed = CHECKSUM_NONE; |
2266 |
skb1->ip_summed = CHECKSUM_NONE; |
2267 |
skb1->pkt_type = PACKET_OTHERHOST; |
2267 |
skb1->pkt_type = PACKET_OTHERHOST; |
2268 |
skb1->protocol = __constant_htons(0x0019); /* ETH_P_80211_RAW */ |
2268 |
skb1->protocol = __constant_htons(0x0019); /* ETH_P_80211_RAW */ |
Lines 2540-2546
Link Here
|
2540 |
* constants instead. We know the packet type anyway. */ |
2540 |
* constants instead. We know the packet type anyway. */ |
2541 |
skb->pkt_type = PACKET_BROADCAST; |
2541 |
skb->pkt_type = PACKET_BROADCAST; |
2542 |
skb->protocol = htons(ETH_P_802_2); |
2542 |
skb->protocol = htons(ETH_P_802_2); |
2543 |
skb->mac.raw = skb->data; |
2543 |
skb->mac_header = skb->data; |
2544 |
ieee80211_deliver_data(ni, skb); |
2544 |
ieee80211_deliver_data(ni, skb); |
2545 |
return; |
2545 |
return; |
2546 |
} |
2546 |
} |
Lines 3711-3724
Link Here
|
3711 |
{ |
3711 |
{ |
3712 |
struct ethhdr *eth; |
3712 |
struct ethhdr *eth; |
3713 |
|
3713 |
|
3714 |
skb->mac.raw=skb->data; |
3714 |
skb->mac_header=skb->data; |
3715 |
skb_pull(skb, ETH_HLEN); |
3715 |
skb_pull(skb, ETH_HLEN); |
3716 |
/* |
3716 |
/* |
3717 |
* NB: mac.ethernet is replaced in 2.6.9 by eth_hdr but |
3717 |
* NB: mac.ethernet is replaced in 2.6.9 by eth_hdr but |
3718 |
* since that's an inline and not a define there's |
3718 |
* since that's an inline and not a define there's |
3719 |
* no easy way to do this cleanly. |
3719 |
* no easy way to do this cleanly. |
3720 |
*/ |
3720 |
*/ |
3721 |
eth = (struct ethhdr *)skb->mac.raw; |
3721 |
eth = (struct ethhdr *)skb->mac_header; |
3722 |
|
3722 |
|
3723 |
if (*eth->h_dest & 1) |
3723 |
if (*eth->h_dest & 1) |
3724 |
if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0) |
3724 |
if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0) |