[dpdk-dev] [EXT] [PATCH v2] cryptodev: extend api of asymmetric crypto by sessionless

Shally Verma shallyv at marvell.com
Sun Sep 8 08:18:52 CEST 2019


Hi Arek

Only these changes looks good to me but do you have working PMD to back this? Also, documentation updates?

Thanks
Shally

> -----Original Message-----
> From: Arek Kusztal <arkadiuszx.kusztal at intel.com>
> Sent: Friday, September 6, 2019 5:28 PM
> To: dev at dpdk.org
> Cc: akhil.goyal at nxp.com; fiona.trahe at intel.com; Shally Verma
> <shallyv at marvell.com>; Anoob Joseph <anoobj at marvell.com>; Arek
> Kusztal <arkadiuszx.kusztal at intel.com>
> Subject: [EXT] [PATCH v2] cryptodev: extend api of asymmetric crypto by
> sessionless
> 
> External Email
> 
> ----------------------------------------------------------------------
> This commit adds asymmetric session-less option to rte_crypto_asym_op.
> Feature flag for sessionless is added to rte_cryptodev.
> 
> Signed-off-by: Arek Kusztal <arkadiuszx.kusztal at intel.com>
> ---
>  lib/librte_cryptodev/rte_crypto_asym.h | 9 +++++++--
>  lib/librte_cryptodev/rte_cryptodev.h   | 2 ++
>  2 files changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/librte_cryptodev/rte_crypto_asym.h
> b/lib/librte_cryptodev/rte_crypto_asym.h
> index 4fbef2f..0d34ce8 100644
> --- a/lib/librte_cryptodev/rte_crypto_asym.h
> +++ b/lib/librte_cryptodev/rte_crypto_asym.h
> @@ -522,8 +522,13 @@ struct rte_crypto_dsa_op_param {
>   *
>   */
>  struct rte_crypto_asym_op {
> -	struct rte_cryptodev_asym_session *session;
> -	/**< Handle for the initialised session context */
> +	RTE_STD_C11
> +	union {
> +		struct rte_cryptodev_asym_session *session;
> +		/**< Handle for the initialised session context */
> +		struct rte_crypto_asym_xform *xform;
> +		/**< Session-less API crypto operation parameters */
> +	};
> 
>  	__extension__
>  	union {
> diff --git a/lib/librte_cryptodev/rte_cryptodev.h
> b/lib/librte_cryptodev/rte_cryptodev.h
> index e175b83..c6ffa3b 100644
> --- a/lib/librte_cryptodev/rte_cryptodev.h
> +++ b/lib/librte_cryptodev/rte_cryptodev.h
> @@ -448,6 +448,8 @@ rte_cryptodev_asym_get_xform_enum(enum
> rte_crypto_asym_xform_type *xform_enum,  /**< Support RSA Private Key
> OP with CRT (quintuple) Keys */
>  #define RTE_CRYPTODEV_FF_DIGEST_ENCRYPTED		(1ULL << 19)
>  /**< Support encrypted-digest operations where digest is appended to data
> */
> +#define RTE_CRYPTODEV_FF_ASYM_SESSIONLESS		(1ULL << 20)
> +/**< Support asymmetric session-less operations */
> 
> 
>  /**
> --
> 2.1.0



More information about the dev mailing list