Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mac80211: Convert compare_ether_addr to ether_addr_equal

Use the new bool function ether_addr_equal to add
some clarity and reduce the likelihood for misuse
of compare_ether_addr for sorting.

Done via cocci script:

$ cat compare_ether_addr.cocci
@@
expression a,b;
@@
- !compare_ether_addr(a, b)
+ ether_addr_equal(a, b)

@@
expression a,b;
@@
- compare_ether_addr(a, b)
+ !ether_addr_equal(a, b)

@@
expression a,b;
@@
- !ether_addr_equal(a, b) == 0
+ ether_addr_equal(a, b)

@@
expression a,b;
@@
- !ether_addr_equal(a, b) != 0
+ !ether_addr_equal(a, b)

@@
expression a,b;
@@
- ether_addr_equal(a, b) == 0
+ !ether_addr_equal(a, b)

@@
expression a,b;
@@
- ether_addr_equal(a, b) != 0
+ ether_addr_equal(a, b)

@@
expression a,b;
@@
- !!ether_addr_equal(a, b)
+ ether_addr_equal(a, b)

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Joe Perches and committed by
David S. Miller
b203ca39 c47fc981

+64 -71
+1 -1
net/mac80211/cfg.c
··· 919 919 } else 920 920 sdata = IEEE80211_DEV_TO_SUB_IF(dev); 921 921 922 - if (compare_ether_addr(mac, sdata->vif.addr) == 0) 922 + if (ether_addr_equal(mac, sdata->vif.addr)) 923 923 return -EINVAL; 924 924 925 925 if (is_multicast_ether_addr(mac))
+6 -6
net/mac80211/ibss.c
··· 66 66 skb_reset_tail_pointer(skb); 67 67 skb_reserve(skb, sdata->local->hw.extra_tx_headroom); 68 68 69 - if (compare_ether_addr(ifibss->bssid, bssid)) 69 + if (!ether_addr_equal(ifibss->bssid, bssid)) 70 70 sta_info_flush(sdata->local, sdata); 71 71 72 72 /* if merging, indicate to driver that we leave the old IBSS */ ··· 315 315 return NULL; 316 316 } 317 317 318 - if (compare_ether_addr(bssid, sdata->u.ibss.bssid)) { 318 + if (!ether_addr_equal(bssid, sdata->u.ibss.bssid)) { 319 319 rcu_read_lock(); 320 320 return NULL; 321 321 } ··· 401 401 return; 402 402 403 403 if (sdata->vif.type == NL80211_IFTYPE_ADHOC && 404 - compare_ether_addr(mgmt->bssid, sdata->u.ibss.bssid) == 0) { 404 + ether_addr_equal(mgmt->bssid, sdata->u.ibss.bssid)) { 405 405 406 406 rcu_read_lock(); 407 407 sta = sta_info_get(sdata, mgmt->sa); ··· 506 506 goto put_bss; 507 507 508 508 /* same BSSID */ 509 - if (compare_ether_addr(cbss->bssid, sdata->u.ibss.bssid) == 0) 509 + if (ether_addr_equal(cbss->bssid, sdata->u.ibss.bssid)) 510 510 goto put_bss; 511 511 512 512 if (rx_status->flag & RX_FLAG_MACTIME_MPDU) { ··· 591 591 if (ifibss->state == IEEE80211_IBSS_MLME_SEARCH) 592 592 return; 593 593 594 - if (compare_ether_addr(bssid, sdata->u.ibss.bssid)) 594 + if (!ether_addr_equal(bssid, sdata->u.ibss.bssid)) 595 595 return; 596 596 597 597 sta = sta_info_alloc(sdata, addr, GFP_ATOMIC); ··· 829 829 if (!tx_last_beacon && is_multicast_ether_addr(mgmt->da)) 830 830 return; 831 831 832 - if (compare_ether_addr(mgmt->bssid, ifibss->bssid) != 0 && 832 + if (!ether_addr_equal(mgmt->bssid, ifibss->bssid) && 833 833 !is_broadcast_ether_addr(mgmt->bssid)) 834 834 return; 835 835
+1 -1
net/mac80211/ieee80211_i.h
··· 1195 1195 1196 1196 static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) 1197 1197 { 1198 - return compare_ether_addr(raddr, addr) == 0 || 1198 + return ether_addr_equal(raddr, addr) || 1199 1199 is_broadcast_ether_addr(raddr); 1200 1200 } 1201 1201
+1 -1
net/mac80211/iface.c
··· 127 127 * The remaining checks are only performed for interfaces 128 128 * with the same MAC address. 129 129 */ 130 - if (compare_ether_addr(dev->dev_addr, ndev->dev_addr)) 130 + if (!ether_addr_equal(dev->dev_addr, ndev->dev_addr)) 131 131 continue; 132 132 133 133 /*
+2 -2
net/mac80211/mesh.c
··· 209 209 kmem_cache_free(rm_cache, p); 210 210 --entries; 211 211 } else if ((seqnum == p->seqnum) && 212 - (compare_ether_addr(sa, p->sa) == 0)) 212 + (ether_addr_equal(sa, p->sa))) 213 213 return -1; 214 214 } 215 215 ··· 639 639 640 640 /* ignore ProbeResp to foreign address */ 641 641 if (stype == IEEE80211_STYPE_PROBE_RESP && 642 - compare_ether_addr(mgmt->da, sdata->vif.addr)) 642 + !ether_addr_equal(mgmt->da, sdata->vif.addr)) 643 643 return; 644 644 645 645 baselen = (u8 *) mgmt->u.probe_resp.variable - (u8 *) mgmt;
+7 -7
net/mac80211/mesh_hwmp.c
··· 422 422 new_metric = MAX_METRIC; 423 423 exp_time = TU_TO_EXP_TIME(orig_lifetime); 424 424 425 - if (compare_ether_addr(orig_addr, sdata->vif.addr) == 0) { 425 + if (ether_addr_equal(orig_addr, sdata->vif.addr)) { 426 426 /* This MP is the originator, we are not interested in this 427 427 * frame, except for updating transmitter's path info. 428 428 */ ··· 472 472 473 473 /* Update and check transmitter routing info */ 474 474 ta = mgmt->sa; 475 - if (compare_ether_addr(orig_addr, ta) == 0) 475 + if (ether_addr_equal(orig_addr, ta)) 476 476 fresh_info = false; 477 477 else { 478 478 fresh_info = true; ··· 533 533 534 534 mhwmp_dbg("received PREQ from %pM", orig_addr); 535 535 536 - if (compare_ether_addr(target_addr, sdata->vif.addr) == 0) { 536 + if (ether_addr_equal(target_addr, sdata->vif.addr)) { 537 537 mhwmp_dbg("PREQ is for us"); 538 538 forward = false; 539 539 reply = true; ··· 631 631 mhwmp_dbg("received PREP from %pM", PREP_IE_ORIG_ADDR(prep_elem)); 632 632 633 633 orig_addr = PREP_IE_ORIG_ADDR(prep_elem); 634 - if (compare_ether_addr(orig_addr, sdata->vif.addr) == 0) 634 + if (ether_addr_equal(orig_addr, sdata->vif.addr)) 635 635 /* destination, no forwarding required */ 636 636 return; 637 637 ··· 709 709 spin_lock_bh(&mpath->state_lock); 710 710 sta = next_hop_deref_protected(mpath); 711 711 if (mpath->flags & MESH_PATH_ACTIVE && 712 - compare_ether_addr(ta, sta->sta.addr) == 0 && 712 + ether_addr_equal(ta, sta->sta.addr) && 713 713 (!(mpath->flags & MESH_PATH_SN_VALID) || 714 714 SN_GT(target_sn, mpath->sn))) { 715 715 mpath->flags &= ~MESH_PATH_ACTIVE; ··· 756 756 metric = le32_to_cpu(rann->rann_metric); 757 757 758 758 /* Ignore our own RANNs */ 759 - if (compare_ether_addr(orig_addr, sdata->vif.addr) == 0) 759 + if (ether_addr_equal(orig_addr, sdata->vif.addr)) 760 760 return; 761 761 762 762 mhwmp_dbg("received RANN from %pM via neighbour %pM (is_gate=%d)", ··· 1099 1099 if (time_after(jiffies, 1100 1100 mpath->exp_time - 1101 1101 msecs_to_jiffies(sdata->u.mesh.mshcfg.path_refresh_time)) && 1102 - !compare_ether_addr(sdata->vif.addr, hdr->addr4) && 1102 + ether_addr_equal(sdata->vif.addr, hdr->addr4) && 1103 1103 !(mpath->flags & MESH_PATH_RESOLVING) && 1104 1104 !(mpath->flags & MESH_PATH_FIXED)) 1105 1105 mesh_queue_preq(mpath, PREQ_Q_F_START | PREQ_Q_F_REFRESH);
+6 -6
net/mac80211/mesh_pathtbl.c
··· 348 348 hlist_for_each_entry_rcu(node, n, bucket, list) { 349 349 mpath = node->mpath; 350 350 if (mpath->sdata == sdata && 351 - compare_ether_addr(dst, mpath->dst) == 0) { 351 + ether_addr_equal(dst, mpath->dst)) { 352 352 if (MPATH_EXPIRED(mpath)) { 353 353 spin_lock_bh(&mpath->state_lock); 354 354 mpath->flags &= ~MESH_PATH_ACTIVE; ··· 517 517 int err = 0; 518 518 u32 hash_idx; 519 519 520 - if (compare_ether_addr(dst, sdata->vif.addr) == 0) 520 + if (ether_addr_equal(dst, sdata->vif.addr)) 521 521 /* never add ourselves as neighbours */ 522 522 return -ENOTSUPP; 523 523 ··· 561 561 hlist_for_each_entry(node, n, bucket, list) { 562 562 mpath = node->mpath; 563 563 if (mpath->sdata == sdata && 564 - compare_ether_addr(dst, mpath->dst) == 0) 564 + ether_addr_equal(dst, mpath->dst)) 565 565 goto err_exists; 566 566 } 567 567 ··· 652 652 int err = 0; 653 653 u32 hash_idx; 654 654 655 - if (compare_ether_addr(dst, sdata->vif.addr) == 0) 655 + if (ether_addr_equal(dst, sdata->vif.addr)) 656 656 /* never add ourselves as neighbours */ 657 657 return -ENOTSUPP; 658 658 ··· 690 690 hlist_for_each_entry(node, n, bucket, list) { 691 691 mpath = node->mpath; 692 692 if (mpath->sdata == sdata && 693 - compare_ether_addr(dst, mpath->dst) == 0) 693 + ether_addr_equal(dst, mpath->dst)) 694 694 goto err_exists; 695 695 } 696 696 ··· 884 884 hlist_for_each_entry(node, n, bucket, list) { 885 885 mpath = node->mpath; 886 886 if (mpath->sdata == sdata && 887 - compare_ether_addr(addr, mpath->dst) == 0) { 887 + ether_addr_equal(addr, mpath->dst)) { 888 888 __mesh_path_del(tbl, node); 889 889 goto enddel; 890 890 }
+13 -16
net/mac80211/mlme.c
··· 1776 1776 1777 1777 memcpy(bssid, ifmgd->auth_data->bss->bssid, ETH_ALEN); 1778 1778 1779 - if (compare_ether_addr(bssid, mgmt->bssid)) 1779 + if (!ether_addr_equal(bssid, mgmt->bssid)) 1780 1780 return RX_MGMT_NONE; 1781 1781 1782 1782 auth_alg = le16_to_cpu(mgmt->u.auth.auth_alg); ··· 1853 1853 return RX_MGMT_NONE; 1854 1854 1855 1855 if (!ifmgd->associated || 1856 - compare_ether_addr(mgmt->bssid, ifmgd->associated->bssid)) 1856 + !ether_addr_equal(mgmt->bssid, ifmgd->associated->bssid)) 1857 1857 return RX_MGMT_NONE; 1858 1858 1859 1859 bssid = ifmgd->associated->bssid; ··· 1886 1886 return RX_MGMT_NONE; 1887 1887 1888 1888 if (!ifmgd->associated || 1889 - compare_ether_addr(mgmt->bssid, ifmgd->associated->bssid)) 1889 + !ether_addr_equal(mgmt->bssid, ifmgd->associated->bssid)) 1890 1890 return RX_MGMT_NONE; 1891 1891 1892 1892 reason_code = le16_to_cpu(mgmt->u.disassoc.reason_code); ··· 2113 2113 2114 2114 if (!assoc_data) 2115 2115 return RX_MGMT_NONE; 2116 - if (compare_ether_addr(assoc_data->bss->bssid, mgmt->bssid)) 2116 + if (!ether_addr_equal(assoc_data->bss->bssid, mgmt->bssid)) 2117 2117 return RX_MGMT_NONE; 2118 2118 2119 2119 /* ··· 2193 2193 bool need_ps = false; 2194 2194 2195 2195 if (sdata->u.mgd.associated && 2196 - compare_ether_addr(mgmt->bssid, sdata->u.mgd.associated->bssid) 2197 - == 0) { 2196 + ether_addr_equal(mgmt->bssid, sdata->u.mgd.associated->bssid)) { 2198 2197 bss = (void *)sdata->u.mgd.associated->priv; 2199 2198 /* not previously set so we may need to recalc */ 2200 2199 need_ps = !bss->dtim_period; ··· 2248 2249 2249 2250 ASSERT_MGD_MTX(ifmgd); 2250 2251 2251 - if (compare_ether_addr(mgmt->da, sdata->vif.addr)) 2252 + if (!ether_addr_equal(mgmt->da, sdata->vif.addr)) 2252 2253 return; /* ignore ProbeResp to foreign address */ 2253 2254 2254 2255 baselen = (u8 *) mgmt->u.probe_resp.variable - (u8 *) mgmt; ··· 2261 2262 ieee80211_rx_bss_info(sdata, mgmt, len, rx_status, &elems, false); 2262 2263 2263 2264 if (ifmgd->associated && 2264 - compare_ether_addr(mgmt->bssid, ifmgd->associated->bssid) == 0) 2265 + ether_addr_equal(mgmt->bssid, ifmgd->associated->bssid)) 2265 2266 ieee80211_reset_ap_probe(sdata); 2266 2267 2267 2268 if (ifmgd->auth_data && !ifmgd->auth_data->bss->proberesp_ies && 2268 - compare_ether_addr(mgmt->bssid, ifmgd->auth_data->bss->bssid) 2269 - == 0) { 2269 + ether_addr_equal(mgmt->bssid, ifmgd->auth_data->bss->bssid)) { 2270 2270 /* got probe response, continue with auth */ 2271 2271 printk(KERN_DEBUG "%s: direct probe responded\n", sdata->name); 2272 2272 ifmgd->auth_data->tries = 0; ··· 2322 2324 return; 2323 2325 2324 2326 if (ifmgd->assoc_data && !ifmgd->assoc_data->have_beacon && 2325 - compare_ether_addr(mgmt->bssid, ifmgd->assoc_data->bss->bssid) 2326 - == 0) { 2327 + ether_addr_equal(mgmt->bssid, ifmgd->assoc_data->bss->bssid)) { 2327 2328 ieee802_11_parse_elems(mgmt->u.beacon.variable, 2328 2329 len - baselen, &elems); 2329 2330 ··· 2337 2340 } 2338 2341 2339 2342 if (!ifmgd->associated || 2340 - compare_ether_addr(mgmt->bssid, ifmgd->associated->bssid)) 2343 + !ether_addr_equal(mgmt->bssid, ifmgd->associated->bssid)) 2341 2344 return; 2342 2345 bssid = ifmgd->associated->bssid; 2343 2346 ··· 3163 3166 return err; 3164 3167 } 3165 3168 } else 3166 - WARN_ON_ONCE(compare_ether_addr(ifmgd->bssid, cbss->bssid)); 3169 + WARN_ON_ONCE(!ether_addr_equal(ifmgd->bssid, cbss->bssid)); 3167 3170 3168 3171 return 0; 3169 3172 } ··· 3303 3306 bool match; 3304 3307 3305 3308 /* keep sta info, bssid if matching */ 3306 - match = compare_ether_addr(ifmgd->bssid, req->bss->bssid) == 0; 3309 + match = ether_addr_equal(ifmgd->bssid, req->bss->bssid); 3307 3310 ieee80211_destroy_auth_data(sdata, match); 3308 3311 } 3309 3312 ··· 3463 3466 sdata->name, req->bssid, req->reason_code); 3464 3467 3465 3468 if (ifmgd->associated && 3466 - compare_ether_addr(ifmgd->associated->bssid, req->bssid) == 0) 3469 + ether_addr_equal(ifmgd->associated->bssid, req->bssid)) 3467 3470 ieee80211_set_disassoc(sdata, IEEE80211_STYPE_DEAUTH, 3468 3471 req->reason_code, true, frame_buf); 3469 3472 else
+16 -19
net/mac80211/rx.c
··· 492 492 if (ieee80211_has_tods(hdr->frame_control) || 493 493 !ieee80211_has_fromds(hdr->frame_control)) 494 494 return RX_DROP_MONITOR; 495 - if (compare_ether_addr(hdr->addr3, dev_addr) == 0) 495 + if (ether_addr_equal(hdr->addr3, dev_addr)) 496 496 return RX_DROP_MONITOR; 497 497 } else { 498 498 if (!ieee80211_has_a4(hdr->frame_control)) 499 499 return RX_DROP_MONITOR; 500 - if (compare_ether_addr(hdr->addr4, dev_addr) == 0) 500 + if (ether_addr_equal(hdr->addr4, dev_addr)) 501 501 return RX_DROP_MONITOR; 502 502 } 503 503 } ··· 1275 1275 if (rx->sdata->vif.type == NL80211_IFTYPE_ADHOC) { 1276 1276 u8 *bssid = ieee80211_get_bssid(hdr, rx->skb->len, 1277 1277 NL80211_IFTYPE_ADHOC); 1278 - if (compare_ether_addr(bssid, rx->sdata->u.ibss.bssid) == 0) { 1278 + if (ether_addr_equal(bssid, rx->sdata->u.ibss.bssid)) { 1279 1279 sta->last_rx = jiffies; 1280 1280 if (ieee80211_is_data(hdr->frame_control)) { 1281 1281 sta->last_rx_rate_idx = status->rate_idx; ··· 1438 1438 */ 1439 1439 if (((hdr->frame_control ^ f_hdr->frame_control) & 1440 1440 cpu_to_le16(IEEE80211_FCTL_FTYPE)) || 1441 - compare_ether_addr(hdr->addr1, f_hdr->addr1) != 0 || 1442 - compare_ether_addr(hdr->addr2, f_hdr->addr2) != 0) 1441 + !ether_addr_equal(hdr->addr1, f_hdr->addr1) || 1442 + !ether_addr_equal(hdr->addr2, f_hdr->addr2)) 1443 1443 continue; 1444 1444 1445 1445 if (time_after(jiffies, entry->first_frag_time + 2 * HZ)) { ··· 1925 1925 mpp_path_add(proxied_addr, mpp_addr, sdata); 1926 1926 } else { 1927 1927 spin_lock_bh(&mppath->state_lock); 1928 - if (compare_ether_addr(mppath->mpp, mpp_addr) != 0) 1928 + if (!ether_addr_equal(mppath->mpp, mpp_addr)) 1929 1929 memcpy(mppath->mpp, mpp_addr, ETH_ALEN); 1930 1930 spin_unlock_bh(&mppath->state_lock); 1931 1931 } ··· 1934 1934 1935 1935 /* Frame has reached destination. Don't forward */ 1936 1936 if (!is_multicast_ether_addr(hdr->addr1) && 1937 - compare_ether_addr(sdata->vif.addr, hdr->addr3) == 0) 1937 + ether_addr_equal(sdata->vif.addr, hdr->addr3)) 1938 1938 return RX_CONTINUE; 1939 1939 1940 1940 q = ieee80211_select_queue_80211(local, skb, hdr); ··· 2122 2122 struct sk_buff *skb; 2123 2123 struct ieee80211_mgmt *resp; 2124 2124 2125 - if (compare_ether_addr(mgmt->da, sdata->vif.addr) != 0) { 2125 + if (!ether_addr_equal(mgmt->da, sdata->vif.addr)) { 2126 2126 /* Not to own unicast address */ 2127 2127 return; 2128 2128 } 2129 2129 2130 - if (compare_ether_addr(mgmt->sa, sdata->u.mgd.bssid) != 0 || 2131 - compare_ether_addr(mgmt->bssid, sdata->u.mgd.bssid) != 0) { 2130 + if (!ether_addr_equal(mgmt->sa, sdata->u.mgd.bssid) || 2131 + !ether_addr_equal(mgmt->bssid, sdata->u.mgd.bssid)) { 2132 2132 /* Not from the current AP or not associated yet. */ 2133 2133 return; 2134 2134 } ··· 2338 2338 if (sdata->vif.type != NL80211_IFTYPE_STATION) 2339 2339 break; 2340 2340 2341 - if (compare_ether_addr(mgmt->bssid, sdata->u.mgd.bssid)) 2341 + if (!ether_addr_equal(mgmt->bssid, sdata->u.mgd.bssid)) 2342 2342 break; 2343 2343 2344 2344 goto queue; ··· 2772 2772 if (!bssid && !sdata->u.mgd.use_4addr) 2773 2773 return 0; 2774 2774 if (!multicast && 2775 - compare_ether_addr(sdata->vif.addr, hdr->addr1) != 0) { 2775 + !ether_addr_equal(sdata->vif.addr, hdr->addr1)) { 2776 2776 if (!(sdata->dev->flags & IFF_PROMISC) || 2777 2777 sdata->u.mgd.use_4addr) 2778 2778 return 0; ··· 2790 2790 return 0; 2791 2791 status->rx_flags &= ~IEEE80211_RX_RA_MATCH; 2792 2792 } else if (!multicast && 2793 - compare_ether_addr(sdata->vif.addr, 2794 - hdr->addr1) != 0) { 2793 + !ether_addr_equal(sdata->vif.addr, hdr->addr1)) { 2795 2794 if (!(sdata->dev->flags & IFF_PROMISC)) 2796 2795 return 0; 2797 2796 status->rx_flags &= ~IEEE80211_RX_RA_MATCH; ··· 2806 2807 break; 2807 2808 case NL80211_IFTYPE_MESH_POINT: 2808 2809 if (!multicast && 2809 - compare_ether_addr(sdata->vif.addr, 2810 - hdr->addr1) != 0) { 2810 + !ether_addr_equal(sdata->vif.addr, hdr->addr1)) { 2811 2811 if (!(sdata->dev->flags & IFF_PROMISC)) 2812 2812 return 0; 2813 2813 ··· 2816 2818 case NL80211_IFTYPE_AP_VLAN: 2817 2819 case NL80211_IFTYPE_AP: 2818 2820 if (!bssid) { 2819 - if (compare_ether_addr(sdata->vif.addr, 2820 - hdr->addr1)) 2821 + if (!ether_addr_equal(sdata->vif.addr, hdr->addr1)) 2821 2822 return 0; 2822 2823 } else if (!ieee80211_bssid_match(bssid, 2823 2824 sdata->vif.addr)) { ··· 2838 2841 case NL80211_IFTYPE_WDS: 2839 2842 if (bssid || !ieee80211_is_data(hdr->frame_control)) 2840 2843 return 0; 2841 - if (compare_ether_addr(sdata->u.wds.remote_addr, hdr->addr2)) 2844 + if (!ether_addr_equal(sdata->u.wds.remote_addr, hdr->addr2)) 2842 2845 return 0; 2843 2846 break; 2844 2847 default:
+1 -1
net/mac80211/scan.c
··· 194 194 presp = ieee80211_is_probe_resp(fc); 195 195 if (presp) { 196 196 /* ignore ProbeResp to foreign address */ 197 - if (compare_ether_addr(mgmt->da, sdata->vif.addr)) 197 + if (!ether_addr_equal(mgmt->da, sdata->vif.addr)) 198 198 return RX_DROP_MONITOR; 199 199 200 200 presp = true;
+4 -4
net/mac80211/sta_info.c
··· 102 102 lockdep_is_held(&local->sta_mtx)); 103 103 while (sta) { 104 104 if (sta->sdata == sdata && 105 - compare_ether_addr(sta->sta.addr, addr) == 0) 105 + ether_addr_equal(sta->sta.addr, addr)) 106 106 break; 107 107 sta = rcu_dereference_check(sta->hnext, 108 108 lockdep_is_held(&local->sta_mtx)); ··· 125 125 while (sta) { 126 126 if ((sta->sdata == sdata || 127 127 (sta->sdata->bss && sta->sdata->bss == sdata->bss)) && 128 - compare_ether_addr(sta->sta.addr, addr) == 0) 128 + ether_addr_equal(sta->sta.addr, addr)) 129 129 break; 130 130 sta = rcu_dereference_check(sta->hnext, 131 131 lockdep_is_held(&local->sta_mtx)); ··· 302 302 if (unlikely(!ieee80211_sdata_running(sdata))) 303 303 return -ENETDOWN; 304 304 305 - if (WARN_ON(compare_ether_addr(sta->sta.addr, sdata->vif.addr) == 0 || 305 + if (WARN_ON(ether_addr_equal(sta->sta.addr, sdata->vif.addr) || 306 306 is_multicast_ether_addr(sta->sta.addr))) 307 307 return -EINVAL; 308 308 ··· 912 912 */ 913 913 for_each_sta_info(hw_to_local(hw), addr, sta, nxt) { 914 914 if (localaddr && 915 - compare_ether_addr(sta->sdata->vif.addr, localaddr) != 0) 915 + !ether_addr_equal(sta->sdata->vif.addr, localaddr)) 916 916 continue; 917 917 if (!sta->uploaded) 918 918 return NULL;
+1 -1
net/mac80211/status.c
··· 384 384 385 385 for_each_sta_info(local, hdr->addr1, sta, tmp) { 386 386 /* skip wrong virtual interface */ 387 - if (compare_ether_addr(hdr->addr2, sta->sdata->vif.addr)) 387 + if (!ether_addr_equal(hdr->addr2, sta->sdata->vif.addr)) 388 388 continue; 389 389 390 390 if (info->flags & IEEE80211_TX_STATUS_EOSP)
+5 -6
net/mac80211/tx.c
··· 1665 1665 skb->len >= len_rthdr + hdrlen + sizeof(rfc1042_header) + 2) { 1666 1666 u8 *payload = (u8 *)hdr + hdrlen; 1667 1667 1668 - if (compare_ether_addr(payload, rfc1042_header) == 0) 1668 + if (ether_addr_equal(payload, rfc1042_header)) 1669 1669 skb->protocol = cpu_to_be16((payload[6] << 8) | 1670 1670 payload[7]); 1671 1671 } ··· 1698 1698 tmp_sdata->vif.type == NL80211_IFTYPE_AP_VLAN || 1699 1699 tmp_sdata->vif.type == NL80211_IFTYPE_WDS) 1700 1700 continue; 1701 - if (compare_ether_addr(tmp_sdata->vif.addr, hdr->addr2) == 0) { 1701 + if (ether_addr_equal(tmp_sdata->vif.addr, hdr->addr2)) { 1702 1702 sdata = tmp_sdata; 1703 1703 break; 1704 1704 } ··· 1815 1815 * is being proxied by a portal (i.e. portal address 1816 1816 * differs from proxied address) 1817 1817 */ 1818 - if (compare_ether_addr(sdata->vif.addr, 1819 - skb->data + ETH_ALEN) == 0 && 1820 - !(mppath && compare_ether_addr(mppath->mpp, skb->data))) { 1818 + if (ether_addr_equal(sdata->vif.addr, skb->data + ETH_ALEN) && 1819 + !(mppath && !ether_addr_equal(mppath->mpp, skb->data))) { 1821 1820 hdrlen = ieee80211_fill_mesh_addresses(&hdr, &fc, 1822 1821 skb->data, skb->data + ETH_ALEN); 1823 1822 rcu_read_unlock(); ··· 1963 1964 if (unlikely(!ieee80211_vif_is_mesh(&sdata->vif) && 1964 1965 !is_multicast_ether_addr(hdr.addr1) && !authorized && 1965 1966 (cpu_to_be16(ethertype) != sdata->control_port_protocol || 1966 - compare_ether_addr(sdata->vif.addr, skb->data + ETH_ALEN)))) { 1967 + !ether_addr_equal(sdata->vif.addr, skb->data + ETH_ALEN)))) { 1967 1968 #ifdef CONFIG_MAC80211_VERBOSE_DEBUG 1968 1969 if (net_ratelimit()) 1969 1970 printk(KERN_DEBUG "%s: dropped frame to %pM"