On 05/07/2011 05:04 PM, Sergei Shtylyov wrote:
> Hello.
>
> Hauke Mehrtens wrote:
>
>> Some devices like the Netgear WGT634u are using minuses between the
>> blocks of the mac address and other devices are using colons to
>> separate them.
>
>> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
>> ---
>> arch/mips/include/asm/mach-bcm47xx/nvram.h | 11 +++++++++--
>> 1 files changed, 9 insertions(+), 2 deletions(-)
>
>> diff --git a/arch/mips/include/asm/mach-bcm47xx/nvram.h
>> b/arch/mips/include/asm/mach-bcm47xx/nvram.h
>> index 9759588..fcdeca7 100644
>> --- a/arch/mips/include/asm/mach-bcm47xx/nvram.h
>> +++ b/arch/mips/include/asm/mach-bcm47xx/nvram.h
>> @@ -39,8 +39,15 @@ extern int nvram_getenv(char *name, char *val,
>> size_t val_len);
>>
>> static inline void nvram_parse_macaddr(char *buf, u8 *macaddr)
>> {
>> - sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0],
>> &macaddr[1],
>> - &macaddr[2], &macaddr[3], &macaddr[4], &macaddr[5]);
>> + 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 {
>> + printk(KERN_WARNING "Can not parse mac address: %s\n", buf);
>> + }
>> }
>>
>> #endif
>
> checkcptach.pl says:
>
> WARNING: line over 80 characters
> #21: FILE: arch/mips/include/asm/mach-bcm47xx/nvram.h:43:
> + sscanf(buf, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &macaddr[0],
> &macaddr[1],
>
> WARNING: line over 80 characters
> #24: FILE: arch/mips/include/asm/mach-bcm47xx/nvram.h:46:
> + sscanf(buf, "%hhx-%hhx-%hhx-%hhx-%hhx-%hhx", &macaddr[0],
> &macaddr[1],
>
> total: 0 errors, 2 warnings, 17 lines checked
>
> patches/MIPS-BCM47xx-Fix-mac-address-parsing.patch has style problems,
> please review. If any of these errors
> are false positives report them to the maintainer, see
> CHECKPATCH in MAINTAINERS.
>
> Additionally, though the script doesn't warn about this, {} are not
> necessary -- every branch is really a single statement.
>
> WBR, Sergei
Hi Sergei,
I will fix this and send a new version. I checked it with checkpatch,
but changed some parts after that. ;-)
Hauke
|