On 12/12/2017 6:20 PM, Radu Nicolau wrote:
Signed-off-by: Radu Nicolau <radu.nico...@intel.com>
---
  lib/librte_security/rte_security.c           |  7 +++++++
  lib/librte_security/rte_security.h           | 12 ++++++++++++
  lib/librte_security/rte_security_driver.h    | 14 ++++++++++++++
  lib/librte_security/rte_security_version.map |  1 +
  4 files changed, 34 insertions(+)

diff --git a/lib/librte_security/rte_security.c 
b/lib/librte_security/rte_security.c
index 1227fca..56f2345 100644
--- a/lib/librte_security/rte_security.c
+++ b/lib/librte_security/rte_security.c
@@ -70,6 +70,13 @@ rte_security_session_update(struct rte_security_ctx 
*instance,
        return instance->ops->session_update(instance->device, sess, conf);
  }
+unsigned int
+rte_security_session_get_size(struct rte_security_ctx *instance)
+{
+       RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->session_get_size, 0);
+       return instance->ops->session_get_size(instance->device);
+}
+
  int
  rte_security_session_stats_get(struct rte_security_ctx *instance,
                               struct rte_security_session *sess,
diff --git a/lib/librte_security/rte_security.h 
b/lib/librte_security/rte_security.h
index 653929b..2c5429f 100644
--- a/lib/librte_security/rte_security.h
+++ b/lib/librte_security/rte_security.h
@@ -312,6 +312,18 @@ rte_security_session_update(struct rte_security_ctx 
*instance,
                            struct rte_security_session_conf *conf);
/**
+ * Get the size of the security session data for a device.
+ *
+ * @param   instance   security instance.
+ *
+ * @return
+ *   - Size of the private data, if successful
+ *   - 0 if device is invalid or does not support the operation.
+ */
+unsigned int
+rte_security_session_get_size(struct rte_security_ctx *instance);
+
+/**
   * Free security session header and the session private data and
   * return it to its original mempool.
   *
diff --git a/lib/librte_security/rte_security_driver.h 
b/lib/librte_security/rte_security_driver.h
index 997fbe7..3839d45 100644
--- a/lib/librte_security/rte_security_driver.h
+++ b/lib/librte_security/rte_security_driver.h
@@ -91,6 +91,18 @@ typedef int (*security_session_destroy_t)(void *device,
  typedef int (*security_session_update_t)(void *device,
                struct rte_security_session *sess,
                struct rte_security_session_conf *conf);
+
+/**
+ * Get the size of a security session
+ *
+ * @param      device          Crypto/eth device pointer
+ *
+ * @return
+ *  - On success returns the size of the session structure for device
+ *  - On failure returns 0
+ */
+typedef int (*security_session_get_size)(void *device);
I believe this should be unsigned int.

For rest of the patch Acked.

Reply via email to