FIRMWARE: bcm47xx_nvram: Replace mac address parsing
PATCH 1/1 FIRMWARE: bcm47xx_nvram: Replace mac address parsing
Replace sscanf() with mac_pton().
Signed-off-by Andy Shevchenko <[email protected]>
--- drivers/firmware/broadcom/bcm47xx_sprom.c | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-)
drivers/firmware/broadcom/bcm47xx_sprom.c +5 -15
@@ -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,
Signature · 1 line
2.15.0
Quoted 1 line · Andy Shevchenko
Replace
sscanf()withmac_pton().
Oops, wrong patch to you guys, though, if you wish to apply...
I just send the intended one.
Sorry for noise.
Quoted 51 lines
Signed-off-by Andy Shevchenko <[email protected]>--- drivers/firmware/broadcom/bcm47xx_sprom.c | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-)drivers/firmware/broadcom/bcm47xx_sprom.c +0
-8@@ -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],
drivers/firmware/broadcom/bcm47xx_sprom.c +0
-1- &macaddr[1], &macaddr[2], &macaddr[3],&macaddr[4],
drivers/firmware/broadcom/bcm47xx_sprom.c +5
-6- &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,
Signature · 2 lines
Andy Shevchenko <[email protected]> Intel Finland Oy