Using is_zero_ether_addr() instead of directly use
memcmp() to determine if the ethernet address is all
zeros.
spatch with a semantic match is used to found this problem.
(http://coccinelle.lip6.fr/)
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
 #include <linux/sched.h>
 #include <linux/slab.h>
 #include <linux/export.h>
+#include <linux/etherdevice.h>
 #include "hostap_wlan.h"
 #include "hostap.h"
 #include "hostap_ap.h"
                prism2_host_roaming(local);
 
        if (local->host_roaming == 2 && local->iw_mode == IW_MODE_INFRA &&
-           memcmp(local->preferred_ap, "\x00\x00\x00\x00\x00\x00",
-                  ETH_ALEN) != 0) {
+           !is_zero_ether_addr(local->preferred_ap)) {
                /*
                 * Firmware seems to be getting into odd state in host_roaming
                 * mode 2 when hostscan is used without join command, so try
 
        __le16 val = cpu_to_le16(reason);
 
        if (local->iw_mode != IW_MODE_INFRA ||
-           memcmp(local->bssid, "\x00\x00\x00\x00\x00\x00", ETH_ALEN) == 0 ||
+           is_zero_ether_addr(local->bssid) ||
            memcmp(local->bssid, "\x44\x44\x44\x44\x44\x44", ETH_ALEN) == 0)
                return 0;