fs/fuse/dir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
As pointed out in [1], strcpy() is deprecated in favor of
strscpy().
Furthermore, the length of the name to be copied is well known at this
point since we are going to move the pointer by that much on the next
line. Hence, it's safe to assume 'namelen' for the length of the string
to be copied.
[1] KSPP#88
Signed-off-by: Miquel Sabaté Solà <mssola@mssola.com>
---
fs/fuse/dir.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
index 5c569c3cb53f..4982efa2c178 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -504,7 +504,7 @@ static int get_security_context(struct dentry *entry, umode_t mode,
fctx->size = lsmctx.len;
ptr += sizeof(*fctx);
- strcpy(ptr, name);
+ strscpy(ptr, name, namelen);
ptr += namelen;
memcpy(ptr, lsmctx.context, lsmctx.len);
--
2.51.0
On Wed, 17 Sept 2025 at 22:55, Miquel Sabaté Solà <mssola@mssola.com> wrote: > > As pointed out in [1], strcpy() is deprecated in favor of > strscpy(). > > Furthermore, the length of the name to be copied is well known at this > point since we are going to move the pointer by that much on the next > line. Hence, it's safe to assume 'namelen' for the length of the string > to be copied. By "length of a string" usually the number of non-null chars is meant (i.e. strlen(str)). So the variable 'namelen' is confusingly named, a better one would be namesize. > > [1] KSPP#88 I don't understand this notation. Patch itself looks good. Thanks, Miklos
Hello, Miklos Szeredi @ 2025-09-19 08:43 +02: > On Wed, 17 Sept 2025 at 22:55, Miquel Sabaté Solà <mssola@mssola.com> wrote: >> >> As pointed out in [1], strcpy() is deprecated in favor of >> strscpy(). >> >> Furthermore, the length of the name to be copied is well known at this >> point since we are going to move the pointer by that much on the next >> line. Hence, it's safe to assume 'namelen' for the length of the string >> to be copied. > > By "length of a string" usually the number of non-null chars is meant > (i.e. strlen(str)). > > So the variable 'namelen' is confusingly named, a better one would be namesize. That's a good point. If you want I can add a commit renaming this variable for v2. > >> >> [1] KSPP#88 > > I don't understand this notation. This is because it refers to an issue on Github that is tracking the effort to move away from strcpy in favor of strscpy. I've seen many commits tracked there that followed this notation and thus I thought that was the right thing. Anyways, if you want I can transform this into a Link tag: Link: https://github.com/KSPP/linux/issues/88 Or otherwise reference it in any other way you feel is more appropiate. > > Patch itself looks good. > > Thanks, > Miklos Thanks, Miquel
© 2016 - 2025 Red Hat, Inc.