staging: r8188eu: use ether_addr_equal for address comparison
authorMartin Kaiser <martin@kaiser.cx>
Mon, 31 Oct 2022 20:54:10 +0000 (21:54 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 2 Nov 2022 07:16:45 +0000 (08:16 +0100)
We can use ether_addr_equal instead of memcmp in
update_recvframe_phyinfo_88e for comparing the incoming frame's
destination address with our local address.

Both struct ieee80211_hdr and struct eeprom_priv's mac_addr component are
2-byte aligned.

Suggested-by: Joe Perches <joe@perches.com>
Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150
Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20221031205412.124871-2-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/r8188eu/hal/rtl8188e_rxdesc.c

index f01ae71..10bb2e6 100644 (file)
@@ -126,8 +126,8 @@ void update_recvframe_phyinfo_88e(struct recv_frame *precvframe, struct phy_stat
                 get_bssid(&padapter->mlmepriv), ETH_ALEN));
 
        pkt_info.bPacketToSelf = pkt_info.bPacketMatchBSSID &&
-                                (!memcmp(ieee80211_get_DA(hdr),
-                                 myid(&padapter->eeprompriv), ETH_ALEN));
+                                ether_addr_equal(ieee80211_get_DA(hdr),
+                                                 myid(&padapter->eeprompriv));
 
        pkt_info.bPacketBeacon = pkt_info.bPacketMatchBSSID && ieee80211_is_beacon(fc);
        if (pkt_info.bPacketBeacon) {