Re: [PATCH] nfs_sysfs_link_rpc_client(): Replace strcpy with strscpy
From: Benjamin Coddington
Date: Wed Nov 06 2024 - 15:40:35 EST
On 6 Nov 2024, at 15:20, Roland Mainz wrote:
> On Wed, Nov 6, 2024 at 3:49 AM Daniel Yang <danielyangkang@xxxxxxxxx> wrote:
>>
>> The function strcpy is deprecated due to lack of bounds checking. The
>> recommended replacement is strscpy.
>>
>> Signed-off-by: Daniel Yang <danielyangkang@xxxxxxxxx>
>> ---
>> fs/nfs/sysfs.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/nfs/sysfs.c b/fs/nfs/sysfs.c
>> index bf378ecd5..f3d0b2ef9 100644
>> --- a/fs/nfs/sysfs.c
>> +++ b/fs/nfs/sysfs.c
>> @@ -280,7 +280,7 @@ void nfs_sysfs_link_rpc_client(struct nfs_server *server,
>> char name[RPC_CLIENT_NAME_SIZE];
>> int ret;
>>
>> - strcpy(name, clnt->cl_program->name);
>> + strscpy(name, clnt->cl_program->name);
>
> How should the "bounds checking" work in this case if you only pass
> two arguments ?
The linux kernel strscpy() checks the sizeof the destination.
Ben