X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=net%2Fethernet%2Feth.c;h=205a1c12f3c0475f4c15bd59064e21c3be7b93e9;hb=bf9ae5386bca8836c16e69ab8fdbe46767d7452a;hp=dd3db88f8f0a84659017d1c548b6729344a6da8a;hpb=f83d664eef180478c2dc0a0099e9d7bc1c8177ff;p=safe%2Fjmp%2Flinux-2.6 diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c index dd3db88..205a1c1 100644 --- a/net/ethernet/eth.c +++ b/net/ethernet/eth.c @@ -73,8 +73,8 @@ __setup("ether=", netdev_boot_setup); * @len: packet length (<= skb->len) * * - * Set the protocol type. For a packet of type ETH_P_802_3 we put the length - * in here instead. It is up to the 802.2 layer to carry protocol information. + * Set the protocol type. For a packet of type ETH_P_802_3/2 we put the length + * in here instead. */ int eth_header(struct sk_buff *skb, struct net_device *dev, unsigned short type, @@ -82,7 +82,7 @@ int eth_header(struct sk_buff *skb, struct net_device *dev, { struct ethhdr *eth = (struct ethhdr *)skb_push(skb, ETH_HLEN); - if (type != ETH_P_802_3) + if (type != ETH_P_802_3 && type != ETH_P_802_2) eth->h_proto = htons(type); else eth->h_proto = htons(len);