crypto/qat: fix ccm null aad pointer segfault
Checks
Commit Message
This commit fixes a segfault, that occurs when NULL pointer
is being set to the aad pointer field.
Fixes: a815a04cea05 ("crypto/qat: support symmetric build op request")
Cc: stable@dpdk.org
Signed-off-by: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
---
drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
Comments
> -----Original Message-----
> From: Kusztal, ArkadiuszX <arkadiuszx.kusztal@intel.com>
> Sent: Friday, March 8, 2024 8:25 AM
> To: dev@dpdk.org
> Cc: gakhil@marvell.com; Power, Ciara <ciara.power@intel.com>; Kusztal,
> ArkadiuszX <arkadiuszx.kusztal@intel.com>; stable@dpdk.org
> Subject: [PATCH] crypto/qat: fix ccm null aad pointer segfault
>
> This commit fixes a segfault, that occurs when NULL pointer is being set to the
> aad pointer field.
>
> Fixes: a815a04cea05 ("crypto/qat: support symmetric build op request")
> Cc: stable@dpdk.org
>
> Signed-off-by: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
> ---
> drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
The CI fail looks to be unrelated to this patch:
70/112 DPDK:fast-tests / pcapng_autotest FAIL 6.39s (exit status 255 or signal 127 SIGinvalid)
Ok: 101
Expected Fail: 0
Fail: 1
Acked-by: Ciara Power <ciara.power@intel.com>
> > Subject: [PATCH] crypto/qat: fix ccm null aad pointer segfault
> >
> > This commit fixes a segfault, that occurs when NULL pointer is being set to the
> > aad pointer field.
> >
> > Fixes: a815a04cea05 ("crypto/qat: support symmetric build op request")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
> > ---
> > drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 10 ++++++----
> > 1 file changed, 6 insertions(+), 4 deletions(-)
> >
>
>
> The CI fail looks to be unrelated to this patch:
>
> 70/112 DPDK:fast-tests / pcapng_autotest FAIL 6.39s (exit status
> 255 or signal 127 SIGinvalid)
>
> Ok: 101
> Expected Fail: 0
> Fail: 1
>
>
> Acked-by: Ciara Power <ciara.power@intel.com>
Applied to dpdk-next-crypto
Thanks.
@@ -881,10 +881,12 @@ enqueue_one_aead_job_gen1(struct qat_sym_session *ctx,
*(uint8_t *)&cipher_param->u.cipher_IV_array[0] =
q - ICP_QAT_HW_CCM_NONCE_OFFSET;
- rte_memcpy((uint8_t *)aad->va +
- ICP_QAT_HW_CCM_NONCE_OFFSET,
- (uint8_t *)iv->va + ICP_QAT_HW_CCM_NONCE_OFFSET,
- ctx->cipher_iv.length);
+ if (ctx->aad_len > 0) {
+ rte_memcpy((uint8_t *)aad->va +
+ ICP_QAT_HW_CCM_NONCE_OFFSET,
+ (uint8_t *)iv->va + ICP_QAT_HW_CCM_NONCE_OFFSET,
+ ctx->cipher_iv.length);
+ }
break;
default:
break;