crypto/armv8: remove algo lists end

Removed references to RTE_CRYPTO_CIPHER_LIST_END and
RTE_CRYPTO_AUTH_LIST_END to prevent ABI breakages
that may arise when adding new crypto algorithms.

Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Phil Yang <phil.yang@arm.com>
This commit is contained in:
Ruifeng Wang 2020-09-18 13:45:17 +08:00 committed by Akhil Goyal
parent 8f6187ecf8
commit 087ed97592
2 changed files with 8 additions and 7 deletions

View File

@ -70,11 +70,9 @@ enum armv8_crypto_auth_mode {
ARMV8_CRYPTO_AUTH_LIST_END = ARMV8_CRYPTO_AUTH_NOT_SUPPORTED
};
#define CRYPTO_ORDER_MAX ARMV8_CRYPTO_CHAIN_LIST_END
#define CRYPTO_CIPHER_OP_MAX ARMV8_CRYPTO_CIPHER_OP_LIST_END
#define CRYPTO_CIPHER_KEYLEN_MAX ARMV8_CRYPTO_CIPHER_KEYLEN_LIST_END
#define CRYPTO_CIPHER_MAX RTE_CRYPTO_CIPHER_LIST_END
#define CRYPTO_AUTH_MAX RTE_CRYPTO_AUTH_LIST_END
#define CRYPTO_CIPHER_MAX (RTE_CRYPTO_CIPHER_AES_ECB + 1)
#define CRYPTO_AUTH_MAX (RTE_CRYPTO_AUTH_SHA512_HMAC + 1)
#define HMAC_IPAD_VALUE (0x36)
#define HMAC_OPAD_VALUE (0x5C)

View File

@ -143,7 +143,8 @@ crypto_chain_order[] = {
crypto_func_tbl_t *func_tbl = \
(crypto_chain_order[(order)])[(cop)]; \
\
((*func_tbl)[(calg)][(aalg)][KEYL(keyl)]); \
((calg >= CRYPTO_CIPHER_MAX) || (aalg >= CRYPTO_AUTH_MAX)) ? \
NULL : ((*func_tbl)[(calg)][(aalg)][KEYL(keyl)]); \
})
/*----------------------------------------------------------------------------*/
@ -188,7 +189,8 @@ crypto_key_sched_dir[] = {
({ \
crypto_key_sched_tbl_t *ks_tbl = crypto_key_sched_dir[(cop)]; \
\
((*ks_tbl)[(calg)][KEYL(keyl)]); \
(calg >= CRYPTO_CIPHER_MAX) ? \
NULL : ((*ks_tbl)[(calg)][KEYL(keyl)]); \
})
/*----------------------------------------------------------------------------*/
@ -436,7 +438,8 @@ armv8_crypto_set_session_chained_parameters(struct armv8_crypto_session *sess,
return -ENOTSUP;
}
if (unlikely(sess->crypto_func == NULL)) {
if (unlikely(sess->crypto_func == NULL ||
sess->cipher.key_sched == NULL)) {
/*
* If we got here that means that there must be a bug
* in the algorithms selection above. Nevertheless keep