[dpdk-dev] [PATCH v2 3/3] test/crypto: check for rsa key type feature flag
Ayuj Verma
ayverma at marvell.com
Wed Feb 27 14:33:55 CET 2019
Check for RSA private key type feature flag in
private key operations
Signed-off-by: Ayuj Verma <ayverma at marvell.com>
Signed-off-by: Shally Verma <shallyv at marvell.com>
---
test/test/test_cryptodev_asym.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/test/test/test_cryptodev_asym.c b/test/test/test_cryptodev_asym.c
index 0f6fc5767..950a7bd00 100644
--- a/test/test/test_cryptodev_asym.c
+++ b/test/test/test_cryptodev_asym.c
@@ -49,6 +49,7 @@ test_rsa_sign_verify(void)
struct rte_mempool *op_mpool = ts_params->op_mpool;
struct rte_mempool *sess_mpool = ts_params->session_mpool;
uint8_t dev_id = ts_params->valid_devs[0];
+ struct rte_cryptodev_info dev_info;
struct rte_crypto_asym_op *asym_op = NULL;
struct rte_crypto_op *op = NULL, *result_op = NULL;
struct rte_cryptodev_asym_session *sess = NULL;
@@ -56,6 +57,18 @@ test_rsa_sign_verify(void)
uint8_t output_buf[TEST_DATA_SIZE] = {0};
uint8_t input_buf[TEST_DATA_SIZE] = {0};
+ /* test case supports op with exponent keyonly,
+ * so check for it in feature_flags
+ */
+ rte_cryptodev_info_get(dev_id, &dev_info);
+ if (!(dev_info.feature_flags &
+ RTE_CRYPTODEV_FF_RSA_PRIV_OP_KEY_EXP)) {
+ RTE_LOG(INFO, USER1,
+ "Device doesn't support sign op with "
+ "exponent key type. Test Skipped\n");
+ return TEST_SKIPPED;
+ }
+
sess = rte_cryptodev_asym_session_create(sess_mpool);
if (!sess) {
@@ -183,12 +196,25 @@ test_rsa_enc_dec(void)
struct rte_mempool *op_mpool = ts_params->op_mpool;
struct rte_mempool *sess_mpool = ts_params->session_mpool;
uint8_t dev_id = ts_params->valid_devs[0];
+ struct rte_cryptodev_info dev_info;
struct rte_crypto_asym_op *asym_op = NULL;
struct rte_crypto_op *op = NULL, *result_op = NULL;
struct rte_cryptodev_asym_session *sess = NULL;
int status = TEST_SUCCESS;
uint8_t input_buf[TEST_DATA_SIZE] = {0};
+ /* test case supports op with exponent keyonly,
+ * so check for it in feature_flags
+ */
+ rte_cryptodev_info_get(dev_id, &dev_info);
+ if (!(dev_info.feature_flags &
+ RTE_CRYPTODEV_FF_RSA_PRIV_OP_KEY_EXP)) {
+ RTE_LOG(INFO, USER1,
+ "Device doesn't support sign op with "
+ "exponent key type. Test Skipped\n");
+ return TEST_SKIPPED;
+ }
+
sess = rte_cryptodev_asym_session_create(sess_mpool);
if (!sess) {
--
2.20.0
More information about the dev
mailing list