From a2c562eb4046ce88c8c2f2d250b0079942e7f10a Mon Sep 17 00:00:00 2001 From: Yaniv Kaul Date: Tue, 21 Aug 2018 18:31:03 +0300 Subject: {mount-common|fusermount|mount_darwin|umountd}.c: strncpy()->sprintf(), reduce strlen()'s strncpy may not be very efficient for short strings copied into a large buffer: If the length of src is less than n, strncpy() writes additional null bytes to dest to ensure that a total of n bytes are written. Instead, use snprintf(). Also: - save the result of strlen() and re-use it when possible. - move from strlen to SLEN (sizeof() ) for const strings. Compile-tested only! Change-Id: I369209b36d8356c3fe00d32f8bf56e74cf9963db updates: bz#1193929 Signed-off-by: Yaniv Kaul --- contrib/umountd/umountd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'contrib/umountd/umountd.c') diff --git a/contrib/umountd/umountd.c b/contrib/umountd/umountd.c index c06dd54db6e..6b9e3c43031 100644 --- a/contrib/umountd/umountd.c +++ b/contrib/umountd/umountd.c @@ -66,7 +66,7 @@ sanity_check (char *path, dev_t *devp) if (*devp == -1 && ret == 0) *devp = st.st_dev; - strncpy (pathtmp, path, PATH_MAX); + snprintf (pathtmp, PATH_MAX, "%s", path); parent = dirname (pathtmp); if (stat (parent, &parent_st) != 0) { -- cgit