From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ayuj Verma Subject: [PATCH 3/3] test/crypto: check for rsa capa for op-type Date: Wed, 6 Feb 2019 11:16:42 +0000 Message-ID: <20190206111405.30860-4-ayverma@marvell.com> References: <20190206111405.30860-1-ayverma@marvell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: "fiona.trahe@intel.com" , "dev@dpdk.org" , Shally Verma , Sunila Sahu , Kanaka Durga Kotamarthy , Arvind Desai , Ayuj Verma To: "pablo.de.lara.guarch@intel.com" Return-path: Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 7E3A91B427 for ; Wed, 6 Feb 2019 12:16:46 +0100 (CET) In-Reply-To: <20190206111405.30860-1-ayverma@marvell.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add a rsa xform capability check in test functions, to check for supported sign and decrypt op_types Signed-off-by: Ayuj Verma Signed-off-by: Shally Verma --- test/test/test_cryptodev_asym.c | 47 +++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/test/test/test_cryptodev_asym.c b/test/test/test_cryptodev_asy= m.c index 0f6fc5767..ae1c76db7 100644 --- a/test/test/test_cryptodev_asym.c +++ b/test/test/test_cryptodev_asym.c @@ -52,10 +52,33 @@ test_rsa_sign_verify(void) struct rte_crypto_asym_op *asym_op =3D NULL; struct rte_crypto_op *op =3D NULL, *result_op =3D NULL; struct rte_cryptodev_asym_session *sess =3D NULL; + struct rte_cryptodev_asym_capability_idx cap_idx; + const struct rte_cryptodev_asymmetric_xform_capability *capability; int status =3D TEST_SUCCESS; uint8_t output_buf[TEST_DATA_SIZE] =3D {0}; uint8_t input_buf[TEST_DATA_SIZE] =3D {0}; =20 + /* check for RSA capability */ + cap_idx.type =3D RTE_CRYPTO_ASYM_XFORM_RSA; + capability =3D rte_cryptodev_asym_capability_get(dev_id, &cap_idx); + + if (!capability) { + RTE_LOG(ERR, USER1, + "RSA xform not supported\n"); + return TEST_SKIPPED; + } + + /* test case supports non-crt sign op only, + * so check for it in capability + */ + if (!rte_cryptodev_asym_xform_capability_check_optype( + capability, RTE_CRYPTO_ASYM_OP_SIGN)) { + RTE_LOG(ERR, USER1, + "non-crt mode RTE_CRYPTO_ASYM_OP_SIGN " + "not supported\n"); + return TEST_SKIPPED; + } + sess =3D rte_cryptodev_asym_session_create(sess_mpool); =20 if (!sess) { @@ -186,9 +209,33 @@ test_rsa_enc_dec(void) struct rte_crypto_asym_op *asym_op =3D NULL; struct rte_crypto_op *op =3D NULL, *result_op =3D NULL; struct rte_cryptodev_asym_session *sess =3D NULL; + struct rte_cryptodev_asym_capability_idx cap_idx; + const struct rte_cryptodev_asymmetric_xform_capability *capability; int status =3D TEST_SUCCESS; uint8_t input_buf[TEST_DATA_SIZE] =3D {0}; =20 + /* check for RSA capability */ + cap_idx.type =3D RTE_CRYPTO_ASYM_XFORM_RSA; + capability =3D rte_cryptodev_asym_capability_get(dev_id, &cap_idx); + + if (!capability) { + RTE_LOG(ERR, USER1, + "RSA xform not supported\n"); + return TEST_SKIPPED; + } + + /* test case supports non-crt decrypt op only, + * so check for it in capability + */ + if (!rte_cryptodev_asym_xform_capability_check_optype( + capability, RTE_CRYPTO_ASYM_OP_DECRYPT)) { + RTE_LOG(ERR, USER1, + "non-crt mode RTE_CRYPTO_ASYM_OP_DECRYPT " + "not supported\n"); + return TEST_SKIPPED; + } + + sess =3D rte_cryptodev_asym_session_create(sess_mpool); =20 if (!sess) { --=20 2.20.0