Hi Shally,

> -----Original Message-----
> From: Verma, Shally [mailto:[email protected]]
> Sent: Thursday, June 28, 2018 2:40 PM
> To: De Lara Guarch, Pablo <[email protected]>; Doherty, Declan
> <[email protected]>; [email protected]; [email protected];
> Jacob, Jerin <[email protected]>; Zhang, Roy Fan
> <[email protected]>; Trahe, Fiona <[email protected]>;
> [email protected]; [email protected]
> Cc: [email protected]
> Subject: RE: [PATCH v3 16/16] cryptodev: check if symmetric sessions are
> supported
> 
> 
> 
> >-----Original Message-----
> >From: Pablo de Lara [mailto:[email protected]]
> >Sent: 28 June 2018 06:23
> >To: [email protected]; [email protected]; Verma, Shally
> ><[email protected]>; [email protected]; Jacob, Jerin
> ><[email protected]>; [email protected];
> >[email protected]; [email protected]; [email protected]
> >Cc: [email protected]; Pablo de Lara <[email protected]>
> >Subject: [PATCH v3 16/16] cryptodev: check if symmetric sessions are
> >supported
> >
> >External Email
> >
> >Since asymmetric functionality will be implemented soon, not all PMDs
> >must support symmetric sessions.
> >Therefore, a check is added if a device does not implement the
> >symmetric functions, meaning that the device does not support symmetric
> >operations.
> >
> >Signed-off-by: Pablo de Lara <[email protected]>
> >---
> > lib/librte_cryptodev/rte_cryptodev.c | 4 ++++
> >lib/librte_cryptodev/rte_cryptodev.h | 4 +++-
> > 2 files changed, 7 insertions(+), 1 deletion(-)
> >
> >diff --git a/lib/librte_cryptodev/rte_cryptodev.c
> >b/lib/librte_cryptodev/rte_cryptodev.c
> >index 7af527075..58fb21056 100644
> >--- a/lib/librte_cryptodev/rte_cryptodev.c
> >+++ b/lib/librte_cryptodev/rte_cryptodev.c
> >@@ -1063,6 +1063,8 @@ rte_cryptodev_sym_session_init(uint8_t dev_id,
> >
> >        index = dev->driver_id;
> >
> >+       RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->sym_session_configure,
> >+ -ENOTSUP);
> >+
> >        if (sess->sess_private_data[index] == NULL) {
> >                ret = dev->dev_ops->sym_session_configure(dev, xforms,
> >                                                        sess, mp); @@
> >-1107,6 +1109,8 @@ rte_cryptodev_sym_session_clear(uint8_t dev_id,
> >        if (dev == NULL || sess == NULL)
> >                return -EINVAL;
> >
> >+       RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->sym_session_clear,
> >+ -ENOTSUP);
> >+
> >        dev->dev_ops->sym_session_clear(dev, sess);
> >
> >        return 0;
> >diff --git a/lib/librte_cryptodev/rte_cryptodev.h
> >b/lib/librte_cryptodev/rte_cryptodev.h
> >index 32a210b00..c1066d01e 100644
> >--- a/lib/librte_cryptodev/rte_cryptodev.h
> >+++ b/lib/librte_cryptodev/rte_cryptodev.h
> >@@ -896,7 +896,8 @@ rte_cryptodev_sym_session_free(struct
> >rte_cryptodev_sym_session *sess);
> >  * @return
> >  *  - On success, zero.
> >  *  - -EINVAL if input parameters are invalid.
> >- *  - -ENOTSUP if crypto device does not support the crypto transform.
> >+ *  - -ENOTSUP if crypto device does not support the crypto transform or
> >+ *    does not support symmetric operations.
> 
> Acked with just one comment here Isn't it sufficient to say if device does not
> support symmetric?

No, because the device could not support a specific algorithm or other 
parameters,
such as key size, IV size, etc.

Reply via email to