Re: [PATCH] ecryptfs: use kasprintf in ecryptfs_crypto_api_algify_cipher_name

Thorsten Blum <[email protected]> Wed, 3 Jun 2026 00:37:42 +0200
Newsgroups org.kernel.vger.ecryptfs,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Gentle ping?

On Mon, May 18, 2026 at 09:38:45AM +0200, Thorsten Blum wrote:
> Use kasprintf() to simplify ecryptfs_crypto_api_algify_cipher_name().
> 
> Use const char * for the read-only cipher name and chaining modifier
> while at it.
> 
> Signed-off-by: Thorsten Blum <[email protected]>
> ---
>  fs/ecryptfs/crypto.c | 24 +++++++-----------------
>  1 file changed, 7 insertions(+), 17 deletions(-)
> 
> diff --git a/fs/ecryptfs/crypto.c b/fs/ecryptfs/crypto.c
> index 5ef67b2674ee..74b02b55e3f6 100644
> --- a/fs/ecryptfs/crypto.c
> +++ b/fs/ecryptfs/crypto.c
> @@ -49,25 +49,15 @@ void ecryptfs_from_hex(char *dst, char *src, int dst_size)
>  }
>  
>  static int ecryptfs_crypto_api_algify_cipher_name(char **algified_name,
> -						  char *cipher_name,
> -						  char *chaining_modifier)
> +						  const char *cipher_name,
> +						  const char *chaining_modifier)
>  {
> -	int cipher_name_len = strlen(cipher_name);
> -	int chaining_modifier_len = strlen(chaining_modifier);
> -	int algified_name_len;
> -	int rc;
> +	(*algified_name) = kasprintf(GFP_KERNEL, "%s(%s)", chaining_modifier,
> +				     cipher_name);
> +	if (!(*algified_name))
> +		return -ENOMEM;
>  
> -	algified_name_len = (chaining_modifier_len + cipher_name_len + 3);
> -	(*algified_name) = kmalloc(algified_name_len, GFP_KERNEL);
> -	if (!(*algified_name)) {
> -		rc = -ENOMEM;
> -		goto out;
> -	}
> -	snprintf((*algified_name), algified_name_len, "%s(%s)",
> -		 chaining_modifier, cipher_name);
> -	rc = 0;
> -out:
> -	return rc;
> +	return 0;
>  }
>  
>  /**