lkml.org 
[lkml]   [2014]   [Jul]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] s390: scsi: zfcp_aux.c: Cleaning up missing null-terminate in conjunction with strncpy
2014-07-28 16:25 GMT+02:00 Steffen Maier <maier@linux.vnet.ibm.com>:
> On 07/26/2014 04:36 PM, Rickard Strandqvist wrote:
>>
>> Replacing strncpy with strlcpy to avoid strings that lacks null terminate.
>>
>> Signed-off-by: Rickard Strandqvist
>> <rickard_strandqvist@spectrumdigital.se>
>> ---
>> drivers/s390/scsi/zfcp_aux.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/s390/scsi/zfcp_aux.c b/drivers/s390/scsi/zfcp_aux.c
>> index 8004b07..a23ba76 100644
>> --- a/drivers/s390/scsi/zfcp_aux.c
>> +++ b/drivers/s390/scsi/zfcp_aux.c
>> @@ -101,7 +101,7 @@ static void __init zfcp_init_device_setup(char
>> *devstr)
>> token = strsep(&str, ",");
>> if (!token || strlen(token) >= ZFCP_BUS_ID_SIZE)
>> goto err_out;
>
>
> Due to the check for strlen(token) >= ZFCP_BUS_ID_SIZE we should be safe
> even with strlcpy because we would reject any user string that does not fit
> into busid including the trailing zero character.
>
> Since it works either way, we can change it though,
>
> Acked-by: Steffen Maier <maier@linux.vnet.ibm.com>
>
>
>> - strncpy(busid, token, ZFCP_BUS_ID_SIZE);
>> + strlcpy(busid, token, ZFCP_BUS_ID_SIZE);
>>
>> token = strsep(&str, ",");
>> if (!token || kstrtoull(token, 0, (unsigned long long *) &wwpn))
>>

Hi

Always fun to get a patch included :)

It would be possible to change it to:

if (!token || strlcpy(busid, token, ZFCP_BUS_ID_SIZE) >= ZFCP_BUS_ID_SIZE)
goto err_out;


But I doubt if this does not degrade the clarity quite a lot however :-/

But tell me otherwise if you want a patch like that instead :-)


Kind regards
Rickard Strandqvist


\
 
 \ /
  Last update: 2014-07-30 00:01    [W:0.034 / U:0.368 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site