* the driver just has the bssid information for PMKIDList searching.
         */
        if (pmlmepriv->assoc_by_bssid == false)
-               memcpy(&pmlmepriv->assoc_bssid[0],
-                       &pnetwork->network.MacAddress[0], ETH_ALEN);
+               ether_addr_copy(&pmlmepriv->assoc_bssid[0],
+                               &pnetwork->network.MacAddress[0]);
        psecnetwork->IELength = r8712_restruct_sec_ie(padapter,
                                                &pnetwork->network.IEs[0],
                                                &psecnetwork->IEs[0],
        init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey_CMD_);
        ph2c->rsp = (u8 *) psetstakey_rsp;
        ph2c->rspsz = sizeof(struct set_stakey_rsp);
-       memcpy(psetstakey_para->addr, sta->hwaddr, ETH_ALEN);
+       ether_addr_copy(psetstakey_para->addr, sta->hwaddr);
        if (check_fwstate(pmlmepriv, WIFI_STATION_STATE))
                psetstakey_para->algorithm = (unsigned char)
                                            psecuritypriv->PrivacyAlgrthm;
        }
        init_h2fwcmd_w_parm_no_rsp(ph2c, psetMacAddr_para,
                                   _SetMacAddress_CMD_);
-       memcpy(psetMacAddr_para->MacAddr, mac_addr, ETH_ALEN);
+       ether_addr_copy(psetMacAddr_para->MacAddr, mac_addr);
        r8712_enqueue_cmd(pcmdpriv, ph2c);
        return _SUCCESS;
 }
        init_h2fwcmd_w_parm_no_rsp(ph2c, psetassocsta_para, _SetAssocSta_CMD_);
        ph2c->rsp = (u8 *) psetassocsta_rsp;
        ph2c->rspsz = sizeof(struct set_assocsta_rsp);
-       memcpy(psetassocsta_para->addr, mac_addr, ETH_ALEN);
+       ether_addr_copy(psetassocsta_para->addr, mac_addr);
        r8712_enqueue_cmd(pcmdpriv, ph2c);
        return _SUCCESS;
 }