Commit e8fb5ec8 authored by Thorsten Blum's avatar Thorsten Blum Committed by Tyler Hicks
Browse files

ecryptfs: Replace memcpy + NUL termination in ecryptfs_new_file_context



Use strscpy() to copy the NUL-terminated '->global_default_cipher_name'
to the destination buffer instead of using memcpy() followed by a manual
NUL termination. Remove the now-unused local variable 'cipher_name_len'.

Signed-off-by: default avatarThorsten Blum <thorsten.blum@linux.dev>
Signed-off-by: default avatarTyler Hicks <code@tyhicks.com>
parent 0529a804
Loading
Loading
Loading
Loading
+2 −7
Original line number Diff line number Diff line
@@ -679,7 +679,6 @@ int ecryptfs_new_file_context(struct inode *ecryptfs_inode)
	struct ecryptfs_mount_crypt_stat *mount_crypt_stat =
	    &ecryptfs_superblock_to_private(
		    ecryptfs_inode->i_sb)->mount_crypt_stat;
	int cipher_name_len;
	int rc = 0;

	ecryptfs_set_default_crypt_stat_vals(crypt_stat, mount_crypt_stat);
@@ -693,12 +692,8 @@ int ecryptfs_new_file_context(struct inode *ecryptfs_inode)
		       "to the inode key sigs; rc = [%d]\n", rc);
		goto out;
	}
	cipher_name_len =
		strlen(mount_crypt_stat->global_default_cipher_name);
	memcpy(crypt_stat->cipher,
	       mount_crypt_stat->global_default_cipher_name,
	       cipher_name_len);
	crypt_stat->cipher[cipher_name_len] = '\0';
	strscpy(crypt_stat->cipher,
		mount_crypt_stat->global_default_cipher_name);
	crypt_stat->key_size =
		mount_crypt_stat->global_default_cipher_key_size;
	ecryptfs_generate_new_key(crypt_stat);