X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=net%2Fatm%2Fbr2684.c;h=680ccb12aae8652d194735c0645c78a040d1f8e9;hb=d42510a0f58c2583c37c8e9b7548e3a68545863a;hp=289956c4dd3e8c1bc1501e9ed429a3f2de272ce8;hpb=9f02d6b7b43d46a74dd385f06090104ecd0fb807;p=powerpc.git diff --git a/net/atm/br2684.c b/net/atm/br2684.c index 289956c4dd..680ccb12aa 100644 --- a/net/atm/br2684.c +++ b/net/atm/br2684.c @@ -18,6 +18,7 @@ Author: Marcell GAL, 2000, XDSL Ltd, Hungary #include #include #include +#include #include #include @@ -220,7 +221,7 @@ static int br2684_start_xmit(struct sk_buff *skb, struct net_device *dev) /* netif_stop_queue(dev); */ dev_kfree_skb(skb); read_unlock(&devs_lock); - return -EUNATCH; + return 0; } if (!br2684_xmit_vcc(skb, brdev, brvcc)) { /* @@ -295,14 +296,14 @@ static inline __be16 br_type_trans(struct sk_buff *skb, struct net_device *dev) unsigned char *rawp; eth = eth_hdr(skb); - if (*eth->h_dest & 1) { - if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0) + if (is_multicast_ether_addr(eth->h_dest)) { + if (!compare_ether_addr(eth->h_dest, dev->broadcast)) skb->pkt_type = PACKET_BROADCAST; else skb->pkt_type = PACKET_MULTICAST; } - else if (memcmp(eth->h_dest, dev->dev_addr, ETH_ALEN)) + else if (compare_ether_addr(eth->h_dest, dev->dev_addr)) skb->pkt_type = PACKET_OTHERHOST; if (ntohs(eth->h_proto) >= 1536)