lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-Id: <20171212092852.26361-1-andriy.shevchenko@linux.intel.com> Date: Tue, 12 Dec 2017 11:28:52 +0200 From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com> To: Will Deacon <will.deacon@....com>, Dave Martin <Dave.Martin@....com>, Philippe Ombredanne <pombredanne@...b.com>, linux-kernel@...r.kernel.org, Andrew Morton <akpm@...ux-foundation.org> Cc: Andy Shevchenko <andriy.shevchenko@...ux.intel.com> Subject: [PATCH v1] FIRMWARE: bcm47xx_nvram: Replace mac address parsing Replace sscanf() with mac_pton(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com> --- drivers/firmware/broadcom/bcm47xx_sprom.c | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/drivers/firmware/broadcom/bcm47xx_sprom.c b/drivers/firmware/broadcom/bcm47xx_sprom.c index 62aa3cf09b4d..2b18a1608c1c 100644 --- a/drivers/firmware/broadcom/bcm47xx_sprom.c +++ b/drivers/firmware/broadcom/bcm47xx_sprom.c @@ -137,20 +137,6 @@ static void nvram_read_leddc(const char *prefix, const char *name, *leddc_off_time = (val >> 16) & 0xff; } -static void bcm47xx_nvram_parse_macaddr(char *buf, u8 macaddr[6]) -{ - if (strchr(buf, ':')) - sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0], - &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], - &macaddr[5]); - else if (strchr(buf, '-')) - sscanf(buf, "%hhx-%hhx-%hhx-%hhx-%hhx-%hhx", &macaddr[0], - &macaddr[1], &macaddr[2], &macaddr[3], &macaddr[4], - &macaddr[5]); - else - pr_warn("Can not parse mac address: %s\n", buf); -} - static void nvram_read_macaddr(const char *prefix, const char *name, u8 val[6], bool fallback) { @@ -161,7 +147,11 @@ static void nvram_read_macaddr(const char *prefix, const char *name, if (err < 0) return; - bcm47xx_nvram_parse_macaddr(buf, val); + strreplace(buf, '-', ':'); + if (mac_pton(buf, val)) + return; + + pr_warn("Can not parse mac address: %s\n", buf); } static void nvram_read_alpha2(const char *prefix, const char *name, -- 2.15.0
Powered by blists - more mailing lists