The application may want to store private data along with the rte_security that is transparent to the rte_security layer. For e.g., If an eventdev based application is submitting a rte_security_session operation and wants to indicate event information required to construct a new event that will be enqueued to eventdev after completion of the rte_security operation. This patch provides a mechanism for the application to associate this information with the rte_security session. The application can set the private data using rte_security_session_set_private_data() and retrieve it using rte_security_session_get_private_data()
Signed-off-by: Abhinandan Gujjar <abhinandan.guj...@intel.com> Signed-off-by: Nikhil Rao <nikhil....@intel.com> --- lib/librte_security/rte_security.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/lib/librte_security/rte_security.h b/lib/librte_security/rte_security.h index 653929b..5c58826 100644 --- a/lib/librte_security/rte_security.h +++ b/lib/librte_security/rte_security.h @@ -525,6 +525,34 @@ struct rte_security_capability_idx { rte_security_capability_get(struct rte_security_ctx *instance, struct rte_security_capability_idx *idx); +/** + * Set private data for a security session. + * + * @param sess security session + * @param data pointer to the private data. + * @param size size of the private data. + * + * @return + * - On success, zero. + * - On failure, a negative value. + */ +int rte_security_session_set_private_data( + struct rte_security_session *sess, + void *data, + uint16_t size); + +/** + * Get private data of a security session. + * + * @param sess security session + * + * @return + * - On success return pointer to private data. + * - On failure returns NULL. + */ +void *rte_security_session_get_private_data( + const struct rte_security_session *session); + #ifdef __cplusplus } #endif -- 1.9.1