cryptodev: check if symmetric sessions are supported
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 <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
This commit is contained in:
parent
012c5076d4
commit
abd3c70525
@ -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;
|
||||
|
@ -891,7 +891,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.
|
||||
* - -ENOMEM if the private session could not be allocated.
|
||||
*/
|
||||
int
|
||||
@ -912,6 +913,7 @@ rte_cryptodev_sym_session_init(uint8_t dev_id,
|
||||
* @return
|
||||
* - 0 if successful.
|
||||
* - -EINVAL if device is invalid or session is NULL.
|
||||
* - -ENOTSUP if crypto device does not support symmetric operations.
|
||||
*/
|
||||
int
|
||||
rte_cryptodev_sym_session_clear(uint8_t dev_id,
|
||||
|
Loading…
Reference in New Issue
Block a user