X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=net%2F802%2Ffc.c;h=2a27e37bc4cb263869b0e5a20643997064067713;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=16702377958e7efe60a224790dddfd6862820b50;hpb=6a77f38946aaee1cd85eeec6cf4229b204c15071;p=linux-2.6.git diff --git a/net/802/fc.c b/net/802/fc.c index 167023779..2a27e37bc 100644 --- a/net/802/fc.c +++ b/net/802/fc.c @@ -10,7 +10,6 @@ * v 1.0 03/22/99 */ -#include #include #include #include @@ -87,7 +86,7 @@ static int fc_rebuild_header(struct sk_buff *skb) struct fch_hdr *fch=(struct fch_hdr *)skb->data; struct fcllc *fcllc=(struct fcllc *)(skb->data+sizeof(struct fch_hdr)); if(fcllc->ethertype != htons(ETH_P_IP)) { - printk("fc_rebuild_header: Don't know how to resolve type %04X addresses ?\n",(unsigned int)htons(fcllc->ethertype)); + printk("fc_rebuild_header: Don't know how to resolve type %04X addresses ?\n", ntohs(fcllc->ethertype)); return 0; } #ifdef CONFIG_INET @@ -97,40 +96,6 @@ static int fc_rebuild_header(struct sk_buff *skb) #endif } -unsigned short -fc_type_trans(struct sk_buff *skb, struct net_device *dev) -{ - struct fch_hdr *fch = (struct fch_hdr *)skb->data; - struct fcllc *fcllc; - - skb->mac.raw = skb->data; - fcllc = (struct fcllc *)(skb->data + sizeof (struct fch_hdr) + 2); - skb_pull(skb, sizeof (struct fch_hdr) + 2); - - if (*fch->daddr & 1) { - if (!memcmp(fch->daddr, dev->broadcast, FC_ALEN)) - skb->pkt_type = PACKET_BROADCAST; - else - skb->pkt_type = PACKET_MULTICAST; - } else if (dev->flags & IFF_PROMISC) { - if (memcmp(fch->daddr, dev->dev_addr, FC_ALEN)) - skb->pkt_type = PACKET_OTHERHOST; - } - - /* - * Strip the SNAP header from ARP packets since we don't pass - * them through to the 802.2/SNAP layers. - */ - if (fcllc->dsap == EXTENDED_SAP && - (fcllc->ethertype == ntohs(ETH_P_IP) || - fcllc->ethertype == ntohs(ETH_P_ARP))) { - skb_pull(skb, sizeof (struct fcllc)); - return fcllc->ethertype; - } - - return ntohs(ETH_P_802_2); -} - static void fc_setup(struct net_device *dev) { dev->hard_header = fc_header;