]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
fanotify: replace deprecated strcpy in fanotify_info_copy_{name,name2}
authorThorsten Blum <thorsten.blum@linux.dev>
Sat, 21 Mar 2026 21:05:47 +0000 (22:05 +0100)
committerJan Kara <jack@suse.cz>
Mon, 23 Mar 2026 09:10:59 +0000 (10:10 +0100)
strcpy() has been deprecated [1] because it performs no bounds checking
on the destination buffer, which can lead to buffer overflows. Replace
it with the safer strscpy().

Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Link: https://patch.msgid.link/20260321210544.519259-4-thorsten.blum@linux.dev
Signed-off-by: Jan Kara <jack@suse.cz>
fs/notify/fanotify/fanotify.h

index 39e60218df7ce46c6c592e5406b5472bbfb3cf6d..a0619e7694d571eb8c6a6745c60c91f6c85a1b1b 100644 (file)
@@ -2,6 +2,7 @@
 #include <linux/fsnotify_backend.h>
 #include <linux/path.h>
 #include <linux/slab.h>
+#include <linux/string.h>
 #include <linux/exportfs.h>
 #include <linux/hashtable.h>
 
@@ -218,7 +219,7 @@ static inline void fanotify_info_copy_name(struct fanotify_info *info,
                return;
 
        info->name_len = name->len;
-       strcpy(fanotify_info_name(info), name->name);
+       strscpy(fanotify_info_name(info), name->name, name->len + 1);
 }
 
 static inline void fanotify_info_copy_name2(struct fanotify_info *info,
@@ -228,7 +229,7 @@ static inline void fanotify_info_copy_name2(struct fanotify_info *info,
                return;
 
        info->name2_len = name->len;
-       strcpy(fanotify_info_name2(info), name->name);
+       strscpy(fanotify_info_name2(info), name->name, name->len + 1);
 }
 
 /*