aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-generic/odp_init.c
diff options
context:
space:
mode:
authorDmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org>2017-05-03 02:46:11 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2017-12-27 21:41:45 +0300
commit34bdbfe3d8c87f87a2da2078376fc47bf89e21fc (patch)
tree1cd69933011157aaf3a85ec60a7fecbaeaef2ee7 /platform/linux-generic/odp_init.c
parent32953251dbeb570a5c8797913d0b590c581d9ac9 (diff)
linux-generic: ipsec: implement IPsec SAD
Implement SA database and SA handling. - only IPv4 is supported for now Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'platform/linux-generic/odp_init.c')
-rw-r--r--platform/linux-generic/odp_init.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/platform/linux-generic/odp_init.c b/platform/linux-generic/odp_init.c
index e7e779e8c..b4b9311cf 100644
--- a/platform/linux-generic/odp_init.c
+++ b/platform/linux-generic/odp_init.c
@@ -144,6 +144,12 @@ int odp_init_global(odp_instance_t *instance,
}
stage = IPSEC_EVENTS_INIT;
+ if (_odp_ipsec_sad_init_global()) {
+ ODP_ERR("ODP IPsec SAD init failed.\n");
+ goto init_failed;
+ }
+ stage = IPSEC_SAD_INIT;
+
*instance = (odp_instance_t)odp_global_data.main_pid;
return 0;
@@ -168,6 +174,13 @@ int _odp_term_global(enum init_stage stage)
switch (stage) {
case ALL_INIT:
+ case IPSEC_SAD_INIT:
+ if (_odp_ipsec_sad_term_global()) {
+ ODP_ERR("ODP IPsec SAD term failed.\n");
+ rc = -1;
+ }
+ /* Fall through */
+
case IPSEC_EVENTS_INIT:
if (_odp_ipsec_events_term_global()) {
ODP_ERR("ODP IPsec events term failed.\n");