Whamcloud - gitweb
LU-12447 utils: specify correct size for lfs project buffer 57/35257/2
authorWang Shilong <wshilong@ddn.com>
Tue, 18 Jun 2019 00:38:17 +0000 (20:38 -0400)
committerOleg Drokin <green@whamcloud.com>
Fri, 21 Jun 2019 04:36:57 +0000 (04:36 +0000)
Enviorment:
Fedora release 28 (Twenty Eight)

gcc (GCC) 8.0.1 20180324 (Red Hat 8.0.1-0.20)
Copyright (C) 2018 Free Software Foundation, Inc.

Hit build failure:
lfs_project.c: In function ‘lfs_project_item_alloc’:
lfs_project.c:72:2: error: ‘strncpy’ specified bound 4096
equals destination size [-Werror=stringop-truncation]
  strncpy(lpi->lpi_pathname, pathname, sizeof(lpi->lpi_pathname));
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Test-Parameters: trivial testlist=sanity-quota
Change-Id: Ia6429c47391bf503546609ec6a262fe24664bdd4
Signed-off-by: Wang Shilong <wshilong@ddn.com>
Reviewed-on: https://review.whamcloud.com/35257
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Gu Zheng <gzheng@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/utils/lfs_project.c

index 55caae5..f16d825 100644 (file)
@@ -69,7 +69,7 @@ lfs_project_item_alloc(struct list_head *head, const char *pathname)
                return -ENOMEM;
        }
 
                return -ENOMEM;
        }
 
-       strncpy(lpi->lpi_pathname, pathname, sizeof(lpi->lpi_pathname));
+       strncpy(lpi->lpi_pathname, pathname, sizeof(lpi->lpi_pathname) - 1);
        list_add_tail(&lpi->lpi_list, head);
 
        return 0;
        list_add_tail(&lpi->lpi_list, head);
 
        return 0;