[NET]: Change memcmp(,,ETH_ALEN) to compare_ether_addr()
Kris Katterjohn [Tue, 10 Jan 2006 00:01:43 +0000 (16:01 -0800)]
This changes some memcmp(one,two,ETH_ALEN) to compare_ether_addr(one,two).

Signed-off-by: Kris Katterjohn <kjak@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>

net/8021q/vlan_dev.c
net/atm/br2684.c
net/atm/lec.c
net/atm/mpc.c
net/bluetooth/bnep/core.c
net/bridge/netfilter/ebt_stp.c
net/core/dv.c
net/core/wireless.c
net/ieee80211/ieee80211_rx.c
net/ipv4/netfilter/ipt_mac.c
net/ipv6/netfilter/ip6t_mac.c

index f2a8750..0f604d2 100644 (file)
@@ -214,7 +214,7 @@ int vlan_skb_recv(struct sk_buff *skb, struct net_device *dev,
                 * This allows the VLAN to have a different MAC than the underlying
                 * device, and still route correctly.
                 */
-               if (memcmp(eth_hdr(skb)->h_dest, skb->dev->dev_addr, ETH_ALEN) == 0) {
+               if (!compare_ether_addr(eth_hdr(skb)->h_dest, skb->dev->dev_addr)) {
                        /* It is for our (changed) MAC-address! */
                        skb->pkt_type = PACKET_HOST;
                }
index bdb4d89..1dafa9c 100644 (file)
@@ -296,13 +296,13 @@ static inline __be16 br_type_trans(struct sk_buff *skb, struct net_device *dev)
        eth = eth_hdr(skb);
 
        if (is_multicast_ether_addr(eth->h_dest)) {
-               if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0)
+               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)
index ad840b9..eea0513 100644 (file)
@@ -1321,7 +1321,7 @@ static int lane2_associate_req (struct net_device *dev, u8 *lan_dst,
         struct sk_buff *skb;
         struct lec_priv *priv = (struct lec_priv*)dev->priv;
 
-        if ( memcmp(lan_dst, dev->dev_addr, ETH_ALEN) != 0 )
+        if (compare_ether_addr(lan_dst, dev->dev_addr))
                 return (0);       /* not our mac address */
 
         kfree(priv->tlvs); /* NULL if there was no previous association */
@@ -1798,7 +1798,7 @@ lec_arp_find(struct lec_priv *priv,
   
         to_return = priv->lec_arp_tables[place];
         while(to_return) {
-                if (memcmp(mac_addr, to_return->mac_addr, ETH_ALEN) == 0) {
+                if (!compare_ether_addr(mac_addr, to_return->mac_addr)) {
                         return to_return;
                 }
                 to_return = to_return->next;
@@ -2002,7 +2002,7 @@ lec_arp_resolve(struct lec_priv *priv, unsigned char *mac_to_find,
                         return priv->mcast_vcc;
                         break;
                 case 2:  /* LANE2 wants arp for multicast addresses */
-                        if ( memcmp(mac_to_find, bus_mac, ETH_ALEN) == 0)
+                        if (!compare_ether_addr(mac_to_find, bus_mac))
                                 return priv->mcast_vcc;
                         break;
                 default:
index 526d953..36b7ae3 100644 (file)
@@ -552,7 +552,7 @@ static int mpc_send_packet(struct sk_buff *skb, struct net_device *dev)
                goto non_ip; /* Multi-Protocol Over ATM :-) */
 
        while (i < mpc->number_of_mps_macs) {
-               if (memcmp(eth->h_dest, (mpc->mps_macs + i*ETH_ALEN), ETH_ALEN) == 0)
+               if (!compare_ether_addr(eth->h_dest, (mpc->mps_macs + i*ETH_ALEN)))
                        if ( send_via_shortcut(skb, mpc) == 0 )           /* try shortcut */
                                return 0;                                 /* success!     */
                i++;
index 682bf20..cbb20c3 100644 (file)
@@ -75,7 +75,7 @@ static struct bnep_session *__bnep_get_session(u8 *dst)
 
        list_for_each(p, &bnep_session_list) {
                s = list_entry(p, struct bnep_session, list);   
-               if (!memcmp(dst, s->eh.h_source, ETH_ALEN))
+               if (!compare_ether_addr(dst, s->eh.h_source))
                        return s;
        }
        return NULL;
@@ -420,10 +420,10 @@ static inline int bnep_tx_frame(struct bnep_session *s, struct sk_buff *skb)
        iv[il++] = (struct kvec) { &type, 1 };
        len++;
 
-       if (!memcmp(eh->h_dest, s->eh.h_source, ETH_ALEN))
+       if (!compare_ether_addr(eh->h_dest, s->eh.h_source))
                type |= 0x01;
 
-       if (!memcmp(eh->h_source, s->eh.h_dest, ETH_ALEN))
+       if (!compare_ether_addr(eh->h_source, s->eh.h_dest))
                type |= 0x02;
 
        if (type)
index f8a8cde..9d2ef4f 100644 (file)
@@ -164,8 +164,8 @@ static int ebt_stp_check(const char *tablename, unsigned int hookmask,
        if (datalen != len)
                return -EINVAL;
        /* Make sure the match only receives stp frames */
-       if (memcmp(e->destmac, bridge_ula, ETH_ALEN) ||
-           memcmp(e->destmsk, msk, ETH_ALEN) || !(e->bitmask & EBT_DESTMAC))
+       if (compare_ether_addr(e->destmac, bridge_ula) ||
+           compare_ether_addr(e->destmsk, msk) || !(e->bitmask & EBT_DESTMAC))
                return -EINVAL;
 
        return 0;
index 3f25f4a..c5deb36 100644 (file)
@@ -457,7 +457,7 @@ void divert_frame(struct sk_buff *skb)
        unsigned char                   *skb_data_end = skb->data + skb->len;
 
        /* Packet is already aimed at us, return */
-       if (!memcmp(eth, skb->dev->dev_addr, ETH_ALEN))
+       if (!compare_ether_addr(eth, skb->dev->dev_addr))
                return;
        
        /* proto is not IP, do nothing */
index 271ddb3..f88b0af 100644 (file)
@@ -1506,7 +1506,7 @@ void wireless_spy_update(struct net_device *      dev,
 
        /* Update all records that match */
        for(i = 0; i < spydata->spy_number; i++)
-               if(!memcmp(address, spydata->spy_address[i], ETH_ALEN)) {
+               if(!compare_ether_addr(address, spydata->spy_address[i])) {
                        memcpy(&(spydata->spy_stat[i]), wstats,
                               sizeof(struct iw_quality));
                        match = i;
index 4cc6f41..5e33803 100644 (file)
@@ -76,8 +76,8 @@ static struct ieee80211_frag_entry *ieee80211_frag_cache_find(struct
 
                if (entry->skb != NULL && entry->seq == seq &&
                    (entry->last_frag + 1 == frag || frag == -1) &&
-                   memcmp(entry->src_addr, src, ETH_ALEN) == 0 &&
-                   memcmp(entry->dst_addr, dst, ETH_ALEN) == 0)
+                   !compare_ether_addr(entry->src_addr, src) &&
+                   !compare_ether_addr(entry->dst_addr, dst))
                        return entry;
        }
 
@@ -243,12 +243,12 @@ static int ieee80211_is_eapol_frame(struct ieee80211_device *ieee,
        /* check that the frame is unicast frame to us */
        if ((fc & (IEEE80211_FCTL_TODS | IEEE80211_FCTL_FROMDS)) ==
            IEEE80211_FCTL_TODS &&
-           memcmp(hdr->addr1, dev->dev_addr, ETH_ALEN) == 0 &&
-           memcmp(hdr->addr3, dev->dev_addr, ETH_ALEN) == 0) {
+           !compare_ether_addr(hdr->addr1, dev->dev_addr) &&
+           !compare_ether_addr(hdr->addr3, dev->dev_addr)) {
                /* ToDS frame with own addr BSSID and DA */
        } else if ((fc & (IEEE80211_FCTL_TODS | IEEE80211_FCTL_FROMDS)) ==
                   IEEE80211_FCTL_FROMDS &&
-                  memcmp(hdr->addr1, dev->dev_addr, ETH_ALEN) == 0) {
+                  !compare_ether_addr(hdr->addr1, dev->dev_addr)) {
                /* FromDS frame with own addr as DA */
        } else
                return 0;
@@ -505,7 +505,7 @@ int ieee80211_rx(struct ieee80211_device *ieee, struct sk_buff *skb,
        if (ieee->iw_mode == IW_MODE_MASTER && !wds &&
            (fc & (IEEE80211_FCTL_TODS | IEEE80211_FCTL_FROMDS)) ==
            IEEE80211_FCTL_FROMDS && ieee->stadev
-           && memcmp(hdr->addr2, ieee->assoc_ap_addr, ETH_ALEN) == 0) {
+           && !compare_ether_addr(hdr->addr2, ieee->assoc_ap_addr)) {
                /* Frame from BSSID of the AP for which we are a client */
                skb->dev = dev = ieee->stadev;
                stats = hostap_get_stats(dev);
@@ -1231,7 +1231,7 @@ static inline int is_same_network(struct ieee80211_network *src,
         * as one network */
        return ((src->ssid_len == dst->ssid_len) &&
                (src->channel == dst->channel) &&
-               !memcmp(src->bssid, dst->bssid, ETH_ALEN) &&
+               !compare_ether_addr(src->bssid, dst->bssid) &&
                !memcmp(src->ssid, dst->ssid, src->ssid_len));
 }
 
index 11a459e..1b9bb45 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/module.h>
 #include <linux/skbuff.h>
 #include <linux/if_ether.h>
+#include <linux/etherdevice.h>
 
 #include <linux/netfilter_ipv4/ipt_mac.h>
 #include <linux/netfilter_ipv4/ip_tables.h>
@@ -33,8 +34,8 @@ match(const struct sk_buff *skb,
     return (skb->mac.raw >= skb->head
            && (skb->mac.raw + ETH_HLEN) <= skb->data
            /* If so, compare... */
-           && ((memcmp(eth_hdr(skb)->h_source, info->srcaddr, ETH_ALEN)
-               == 0) ^ info->invert));
+           && ((!compare_ether_addr(eth_hdr(skb)->h_source, info->srcaddr))
+               ^ info->invert));
 }
 
 static int
index 526d43e..ae0b092 100644 (file)
@@ -34,8 +34,8 @@ match(const struct sk_buff *skb,
     return (skb->mac.raw >= skb->head
            && (skb->mac.raw + ETH_HLEN) <= skb->data
            /* If so, compare... */
-           && ((memcmp(eth_hdr(skb)->h_source, info->srcaddr, ETH_ALEN)
-               == 0) ^ info->invert));
+           && ((!compare_ether_addr(eth_hdr(skb)->h_source, info->srcaddr))
+               ^ info->invert));
 }
 
 static int