Search Linux Wireless

Re: [PATCH] drivers/net/wireless/iwlegacy: use strlcpy instead of strncpy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



  oh, sorry, it is my fault.

  according to fill_write_buffer in fs/sysfs/file.c,
    we can assume that 'const char *buf' must be '\0' based string.

  please skip original reply.


gchen.

于 2013年01月20日 17:31, Chen Gang 写道:
> Hello all:
> 
>   sorry, after checking the details:
>     I think this patch is incorrect.
>       we can not assume that the parameter "char *buf" is terminated by '\0'
>       so we should only use strlcpy instead of strncpy, without touching 'min(...'
> 
>   since it is already integrated into main branch (at least, in next-20130118).
>     I should send additional patch to fix it.
> 
>   please help to check, thanks.
> 
> 
> gchen.
> 
> 
> 于 2013年01月07日 12:42, Chen Gang 写道:
>>
>>   The fields must be null-terminated, or simple_strtoul will cause issue.
>>
>> Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx>
>> ---
>>  drivers/net/wireless/iwlegacy/3945-mac.c |    2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/wireless/iwlegacy/3945-mac.c b/drivers/net/wireless/iwlegacy/3945-mac.c
>> index d604b40..3726cd6 100644
>> --- a/drivers/net/wireless/iwlegacy/3945-mac.c
>> +++ b/drivers/net/wireless/iwlegacy/3945-mac.c
>> @@ -3273,7 +3273,7 @@ il3945_store_measurement(struct device *d, struct device_attribute *attr,
>>  
>>  	if (count) {
>>  		char *p = buffer;
>> -		strncpy(buffer, buf, min(sizeof(buffer), count));
>> +		strlcpy(buffer, buf, sizeof(buffer));
>>  		channel = simple_strtoul(p, NULL, 0);
>>  		if (channel)
>>  			params.channel = channel;
>>
> 
> 


-- 
Chen Gang

Flying Transformer
begin:vcard
fn:Chen Gang
n:;Chen Gang
version:2.1
end:vcard


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux