cryptodev: add auth IV
authorPablo de Lara <pablo.de.lara.guarch@intel.com>
Sun, 2 Jul 2017 05:41:15 +0000 (06:41 +0100)
committerPablo de Lara <pablo.de.lara.guarch@intel.com>
Thu, 6 Jul 2017 20:26:48 +0000 (22:26 +0200)
commitacf8616901b54af120758360488f72718f651768
tree1f87454c658d6e8f6ece657302535134fbecd8cb
parent0fbd75a99fc9d2c8c7618d677d3f50fb9872b80c
cryptodev: add auth IV

Authentication algorithms, such as AES-GMAC or the wireless
algorithms (like SNOW3G) use IV, like cipher algorithms.
So far, AES-GMAC has used the IV from the cipher structure,
and the wireless algorithms have used the AAD field,
which is not technically correct.

Therefore, authentication IV parameters have been added,
so API is more correct. Like cipher IV, auth IV is expected
to be copied after the crypto operation.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
31 files changed:
app/test-crypto-perf/cperf_ops.c
app/test-crypto-perf/cperf_options.h
app/test-crypto-perf/cperf_options_parsing.c
app/test-crypto-perf/cperf_test_latency.c
app/test-crypto-perf/cperf_test_throughput.c
app/test-crypto-perf/cperf_test_vector_parsing.c
app/test-crypto-perf/cperf_test_vectors.c
app/test-crypto-perf/cperf_test_vectors.h
app/test-crypto-perf/cperf_test_verify.c
app/test-crypto-perf/data/aes_cbc_128_sha.data
app/test-crypto-perf/data/aes_cbc_192_sha.data
app/test-crypto-perf/data/aes_cbc_256_sha.data
app/test-crypto-perf/main.c
doc/guides/prog_guide/cryptodev_lib.rst
doc/guides/rel_notes/release_17_08.rst
doc/guides/sample_app_ug/l2_forward_crypto.rst
doc/guides/tools/cryptoperf.rst
drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c
drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
drivers/crypto/armv8/rte_armv8_pmd_ops.c
drivers/crypto/dpaa2_sec/dpaa2_sec_priv.h
drivers/crypto/kasumi/rte_kasumi_pmd_ops.c
drivers/crypto/null/null_crypto_pmd_ops.c
drivers/crypto/openssl/rte_openssl_pmd_ops.c
drivers/crypto/qat/qat_crypto_capabilities.h
drivers/crypto/snow3g/rte_snow3g_pmd_ops.c
drivers/crypto/zuc/rte_zuc_pmd_ops.c
examples/l2fwd-crypto/main.c
lib/librte_cryptodev/rte_crypto_sym.h
lib/librte_cryptodev/rte_cryptodev.c
lib/librte_cryptodev/rte_cryptodev.h