RDMA/efa: Use strscpy instead of strlcpy
authorGal Pressman <galpress@amazon.com>
Mon, 29 Mar 2021 12:01:28 +0000 (15:01 +0300)
committerJason Gunthorpe <jgg@nvidia.com>
Tue, 30 Mar 2021 20:03:22 +0000 (17:03 -0300)
The strlcpy function doesn't limit the source length, use the preferred
strscpy function instead.

Link: https://lore.kernel.org/r/20210329120131.18793-1-galpress@amazon.com
Reviewed-by: Firas JahJah <firasj@amazon.com>
Reviewed-by: Yossi Leybovich <sleybo@amazon.com>
Signed-off-by: Gal Pressman <galpress@amazon.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/efa/efa_main.c

index 0f578734bddb60e34041c63081927ab9a388ba31..816cfd65b7ac8491d27925452c1564624f278bff 100644 (file)
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
 /*
- * Copyright 2018-2020 Amazon.com, Inc. or its affiliates. All rights reserved.
+ * Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All rights reserved.
  */
 
 #include <linux/module.h>
@@ -209,11 +209,11 @@ static void efa_set_host_info(struct efa_dev *dev)
        if (!hinf)
                return;
 
-       strlcpy(hinf->os_dist_str, utsname()->release,
-               min(sizeof(hinf->os_dist_str), sizeof(utsname()->release)));
+       strscpy(hinf->os_dist_str, utsname()->release,
+               sizeof(hinf->os_dist_str));
        hinf->os_type = EFA_ADMIN_OS_LINUX;
-       strlcpy(hinf->kernel_ver_str, utsname()->version,
-               min(sizeof(hinf->kernel_ver_str), sizeof(utsname()->version)));
+       strscpy(hinf->kernel_ver_str, utsname()->version,
+               sizeof(hinf->kernel_ver_str));
        hinf->kernel_ver = LINUX_VERSION_CODE;
        EFA_SET(&hinf->driver_ver, EFA_ADMIN_HOST_INFO_DRIVER_MAJOR, 0);
        EFA_SET(&hinf->driver_ver, EFA_ADMIN_HOST_INFO_DRIVER_MINOR, 0);