ecryptfs: main: use strscpy() to instead of strncpy()
PATCH 1/1 ecryptfs: main: use strscpy() to instead of strncpy()
From: Xu Panda <[email protected]>
The implementation of strscpy() is more robust and safer. That's now the recommended way to copy NUL-terminated strings.
Signed-off-by Xu Panda <[email protected]>
Signed-off-by Yang Yang <[email protected]>
--- fs/ecryptfs/main.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)
fs/ecryptfs/main.c +5 -10
@@ -296,9 +296,8 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, cipher_name_dst = mount_crypt_stat-> global_default_cipher_name; -strncpy (cipher_name_dst, cipher_name_src, -ECRYPTFS_MAX_CIPHER_NAME_SIZE ); - cipher_name_dst[ECRYPTFS_MAX_CIPHER_NAME_SIZE ] ='\0' ; +strscpy (cipher_name_dst, cipher_name_src, +ECRYPTFS_MAX_CIPHER_NAME_SIZE +1 ); cipher_name_set =1 ;break ;case ecryptfs_opt_ecryptfs_key_bytes:
@@ -328,9 +327,7 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, fnek_src = args[0 ].from; fnek_dst = mount_crypt_stat->global_default_fnek_sig; -strncpy (fnek_dst, fnek_src,ECRYPTFS_SIG_SIZE_HEX ); - mount_crypt_stat->global_default_fnek_sig[ -ECRYPTFS_SIG_SIZE_HEX ] ='\0' ; +strscpy (fnek_dst, fnek_src,ECRYPTFS_SIG_SIZE_HEX +1 ); rc = ecryptfs_add_global_auth_tok( mount_crypt_stat, mount_crypt_stat->global_default_fnek_sig,
@@ -350,10 +347,8 @@ static int ecryptfs_parse_options(struct ecryptfs_sb_info *sbi, char *options, fn_cipher_name_src = args[0 ].from; fn_cipher_name_dst = mount_crypt_stat->global_default_fn_cipher_name; -strncpy (fn_cipher_name_dst, fn_cipher_name_src, -ECRYPTFS_MAX_CIPHER_NAME_SIZE ); - mount_crypt_stat->global_default_fn_cipher_name[ -ECRYPTFS_MAX_CIPHER_NAME_SIZE ] ='\0' ; +strscpy (fn_cipher_name_dst, fn_cipher_name_src, +ECRYPTFS_MAX_CIPHER_NAME_SIZE +1 ); fn_cipher_name_set =1 ;break ;case ecryptfs_opt_fn_cipher_key_bytes:
Signature · 1 line
2.15.2