Re: [PATCH] tools lib api fs: fix gcc9 compilation error

From: Sergey Senozhatsky
Date: Tue Dec 17 2019 - 22:10:25 EST


On (19/12/11 08:01), Andrey Zhizhikin wrote:
[..]
> @@ -210,6 +210,7 @@ static bool fs__env_override(struct fs *fs)
> size_t name_len = strlen(fs->name);
> /* name + "_PATH" + '\0' */
> char upper_name[name_len + 5 + 1];
> +
> memcpy(upper_name, fs->name, name_len);
> mem_toupper(upper_name, name_len);
> strcpy(&upper_name[name_len], "_PATH");
> @@ -219,7 +220,8 @@ static bool fs__env_override(struct fs *fs)
> return false;
>
> fs->found = true;
> - strncpy(fs->path, override_path, sizeof(fs->path));
> + strncpy(fs->path, override_path, sizeof(fs->path) - 1);
> + fs->path[sizeof(fs->path) - 1] = '\0';

I think the trend these days is to prefer stracpy/strscpy over
strcpy/strlcpy/strncpy.

-ss