[PATCH] kdf: Avoid redundant memcpy()
Jussi Kivilinna
jussi.kivilinna at iki.fi
Thu Sep 25 08:28:22 CEST 2025
Hello,
Thanks for the patch. Before this can be applied, we'd need "DCO" from you.
Please check doc/HACKING for "License policy" and about sending "Libgcrypt Developer's Certificate of Origin".
-Jussi
On 02/09/2025 10:14, Gary Lin via Gcrypt-devel wrote:
> * cipher/kdf.c (fill_block): Xor 'ref_block' and 'prev_block' directly to
> avoid a redundant memcpy().
>
> Signed-off-by: Gary Lin <glin at suse.com>
> ---
> cipher/kdf.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/cipher/kdf.c b/cipher/kdf.c
> index 71156ea4..16cec4e4 100644
> --- a/cipher/kdf.c
> +++ b/cipher/kdf.c
> @@ -588,9 +588,14 @@ fill_block (const u64 *prev_block, const u64 *ref_block, u64 *curr_block,
> u64 block_tmp[ARGON2_WORDS_IN_BLOCK];
> int i;
>
> - memcpy (block_r, ref_block, 1024);
> if (prev_block)
> - xor_block (block_r, prev_block);
> + {
> + for (i = 0; i < ARGON2_WORDS_IN_BLOCK; i++)
> + block_r[i] = ref_block[i] ^ prev_block[i];
> + }
> + else
> + memcpy (block_r, ref_block, 1024);
> +
> memcpy (block_tmp, block_r, 1024);
>
> if (with_xor)
More information about the Gcrypt-devel
mailing list