New upstream version 18.02
[deb_dpdk.git] / lib / librte_security / rte_security.c
index 1227fca..1e559c9 100644 (file)
 
 #include <rte_malloc.h>
 #include <rte_dev.h>
-
+#include "rte_compat.h"
 #include "rte_security.h"
 #include "rte_security_driver.h"
 
 struct rte_security_session *
-rte_security_session_create(struct rte_security_ctx *instance,
+__rte_experimental rte_security_session_create(struct rte_security_ctx *instance,
                            struct rte_security_session_conf *conf,
                            struct rte_mempool *mp)
 {
@@ -49,7 +49,7 @@ rte_security_session_create(struct rte_security_ctx *instance,
 
        RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->session_create, NULL);
 
-       if (rte_mempool_get(mp, (void *)&sess))
+       if (rte_mempool_get(mp, (void **)&sess))
                return NULL;
 
        if (instance->ops->session_create(instance->device, conf, sess, mp)) {
@@ -61,7 +61,7 @@ rte_security_session_create(struct rte_security_ctx *instance,
        return sess;
 }
 
-int
+int __rte_experimental
 rte_security_session_update(struct rte_security_ctx *instance,
                            struct rte_security_session *sess,
                            struct rte_security_session_conf *conf)
@@ -70,7 +70,14 @@ rte_security_session_update(struct rte_security_ctx *instance,
        return instance->ops->session_update(instance->device, sess, conf);
 }
 
-int
+unsigned int __rte_experimental
+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_experimental
 rte_security_session_stats_get(struct rte_security_ctx *instance,
                               struct rte_security_session *sess,
                               struct rte_security_stats *stats)
@@ -79,7 +86,7 @@ rte_security_session_stats_get(struct rte_security_ctx *instance,
        return instance->ops->session_stats_get(instance->device, sess, stats);
 }
 
-int
+int __rte_experimental
 rte_security_session_destroy(struct rte_security_ctx *instance,
                             struct rte_security_session *sess)
 {
@@ -98,7 +105,7 @@ rte_security_session_destroy(struct rte_security_ctx *instance,
        return ret;
 }
 
-int
+int __rte_experimental
 rte_security_set_pkt_metadata(struct rte_security_ctx *instance,
                              struct rte_security_session *sess,
                              struct rte_mbuf *m, void *params)
@@ -108,14 +115,26 @@ rte_security_set_pkt_metadata(struct rte_security_ctx *instance,
                                               sess, m, params);
 }
 
-const struct rte_security_capability *
+void * __rte_experimental
+rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md)
+{
+       void *userdata = NULL;
+
+       RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->get_userdata, NULL);
+       if (instance->ops->get_userdata(instance->device, md, &userdata))
+               return NULL;
+
+       return userdata;
+}
+
+const struct rte_security_capability * __rte_experimental
 rte_security_capabilities_get(struct rte_security_ctx *instance)
 {
        RTE_FUNC_PTR_OR_ERR_RET(*instance->ops->capabilities_get, NULL);
        return instance->ops->capabilities_get(instance->device);
 }
 
-const struct rte_security_capability *
+const struct rte_security_capability * __rte_experimental
 rte_security_capability_get(struct rte_security_ctx *instance,
                            struct rte_security_capability_idx *idx)
 {