Re: [Linaro-mm-sig] [PATCH] dma-buf/sync_file: use strscpy to replace strlcpy

From: Daniel Vetter
Date: Wed Aug 10 2022 - 07:51:33 EST


On Fri, Jul 01, 2022 at 07:26:07PM +0800, XueBing Chen wrote:
>
> The strlcpy should not be used because it doesn't limit the source
> length. Preferred is strscpy.
>
> Signed-off-by: XueBing Chen <chenxuebing@xxxxxxx>

I don't think there's an impact here since we don't check the error return
value, but also doesn't hurt.

Thanks for your patch, applied to drm-misc-next.
-Daniel

> ---
> drivers/dma-buf/sync_file.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/dma-buf/sync_file.c b/drivers/dma-buf/sync_file.c
> index 3ebec19a8e02..af57799c86ce 100644
> --- a/drivers/dma-buf/sync_file.c
> +++ b/drivers/dma-buf/sync_file.c
> @@ -132,7 +132,7 @@ EXPORT_SYMBOL(sync_file_get_fence);
> char *sync_file_get_name(struct sync_file *sync_file, char *buf, int len)
> {
> if (sync_file->user_name[0]) {
> - strlcpy(buf, sync_file->user_name, len);
> + strscpy(buf, sync_file->user_name, len);
> } else {
> struct dma_fence *fence = sync_file->fence;
>
> @@ -172,7 +172,7 @@ static struct sync_file *sync_file_merge(const char *name, struct sync_file *a,
> return NULL;
> }
> sync_file->fence = fence;
> - strlcpy(sync_file->user_name, name, sizeof(sync_file->user_name));
> + strscpy(sync_file->user_name, name, sizeof(sync_file->user_name));
> return sync_file;
> }
>
> @@ -262,9 +262,9 @@ static long sync_file_ioctl_merge(struct sync_file *sync_file,
> static int sync_fill_fence_info(struct dma_fence *fence,
> struct sync_fence_info *info)
> {
> - strlcpy(info->obj_name, fence->ops->get_timeline_name(fence),
> + strscpy(info->obj_name, fence->ops->get_timeline_name(fence),
> sizeof(info->obj_name));
> - strlcpy(info->driver_name, fence->ops->get_driver_name(fence),
> + strscpy(info->driver_name, fence->ops->get_driver_name(fence),
> sizeof(info->driver_name));
>
> info->status = dma_fence_get_status(fence);
> --
> 2.25.1
> _______________________________________________
> Linaro-mm-sig mailing list -- linaro-mm-sig@xxxxxxxxxxxxxxxx
> To unsubscribe send an email to linaro-mm-sig-leave@xxxxxxxxxxxxxxxx

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch