From: Pablo de Lara Date: Mon, 17 Apr 2017 12:23:37 +0000 (+0100) Subject: examples/l2fwd-crypto: fix AEAD tests when AAD is zero X-Git-Tag: spdx-start~3462 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=18f421f65bb8dcfa77919c48edeb54c867ce89c8;p=dpdk.git examples/l2fwd-crypto: fix AEAD tests when AAD is zero For AEAD algorithms, additional authenticated data (AAD) can be passed, but it is optional, so its size can be zero. However, it is required to set this length to zero in the crypto operation to avoid undefined behaviour. Fixes: 617a7949c98a ("examples/l2fwd-crypto: parse AAD parameter") Cc: stable@dpdk.org Signed-off-by: Pablo de Lara --- diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c index 15fab102bf..2eb14c14c6 100644 --- a/examples/l2fwd-crypto/main.c +++ b/examples/l2fwd-crypto/main.c @@ -470,6 +470,10 @@ l2fwd_simple_crypto_enqueue(struct rte_mbuf *m, op->sym->auth.aad.data = cparams->aad.data; op->sym->auth.aad.phys_addr = cparams->aad.phys_addr; op->sym->auth.aad.length = cparams->aad.length; + } else { + op->sym->auth.aad.data = NULL; + op->sym->auth.aad.phys_addr = 0; + op->sym->auth.aad.length = 0; } } @@ -670,7 +674,8 @@ l2fwd_main_loop(struct l2fwd_crypto_options *options) generate_random_key(port_cparams[i].aad.data, port_cparams[i].aad.length); - } + } else + port_cparams[i].aad.length = 0; if (options->auth_xform.auth.op == RTE_CRYPTO_AUTH_OP_VERIFY) port_cparams[i].hash_verify = 1;