Use kmemdup_nul() to copy 'name' instead of using memcpy() followed by a
manual NUL termination. Remove the local return variable and the goto
label to simplify the code. No functional changes.
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Acked-by: Tyler Hicks <code@tyhicks.com>
Signed-off-by: Tyler Hicks <code@tyhicks.com>
static int ecryptfs_copy_filename(char **copied_name, size_t *copied_name_size,
const char *name, size_t name_size)
{
- int rc = 0;
-
- (*copied_name) = kmalloc((name_size + 1), GFP_KERNEL);
- if (!(*copied_name)) {
- rc = -ENOMEM;
- goto out;
- }
- memcpy((void *)(*copied_name), (void *)name, name_size);
- (*copied_name)[(name_size)] = '\0'; /* Only for convenience
- * in printing out the
- * string in debug
- * messages */
+ (*copied_name) = kmemdup_nul(name, name_size, GFP_KERNEL);
+ if (!(*copied_name))
+ return -ENOMEM;
(*copied_name_size) = name_size;
-out:
- return rc;
+ return 0;
}
/**