From 287beb44afd12665c387f2d1a3b1f5dbfdf0b1b9 Mon Sep 17 00:00:00 2001 From: Michael Straube Date: Mon, 30 Aug 2021 14:15:01 +0200 Subject: [PATCH] staging: r8188eu: use mac_pton() in rtw_macaddr_cfg() Instead of a custom approach use mac_pton() to convert the mac address string. With mac_pton() the driver also validates the input now. Signed-off-by: Michael Straube Link: https://lore.kernel.org/r/20210830121508.6411-2-straube.linux@gmail.com Signed-off-by: Greg Kroah-Hartman --- drivers/staging/r8188eu/core/rtw_ieee80211.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/staging/r8188eu/core/rtw_ieee80211.c b/drivers/staging/r8188eu/core/rtw_ieee80211.c index b3a74198596ac..205798b76cf99 100644 --- a/drivers/staging/r8188eu/core/rtw_ieee80211.c +++ b/drivers/staging/r8188eu/core/rtw_ieee80211.c @@ -1024,13 +1024,11 @@ void rtw_macaddr_cfg(u8 *mac_addr) if (!mac_addr) return; - if (rtw_initmac) { /* Users specify the mac address */ - int jj, kk; - - for (jj = 0, kk = 0; jj < ETH_ALEN; jj++, kk += 3) - mac[jj] = key_2char2num(rtw_initmac[kk], rtw_initmac[kk + 1]); + if (rtw_initmac && mac_pton(rtw_initmac, mac)) { + /* Users specify the mac address */ memcpy(mac_addr, mac, ETH_ALEN); - } else { /* Use the mac address stored in the Efuse */ + } else { + /* Use the mac address stored in the Efuse */ memcpy(mac, mac_addr, ETH_ALEN); } -- 2.30.2