From 84b46623cb71a17e19c5d74fc65345dd6168a8d0 Mon Sep 17 00:00:00 2001 From: Alexander Komarov Date: Thu, 19 Oct 2017 09:11:49 +0200 Subject: Makefile change and new task structures for IPSec Prox task Change-Id: I389389e5317d1a9d0d79cc1762d6f15d8287e36a Signed-off-by: Alexander Komarov Signed-off-by: Alexander Komarov --- VNFs/DPPD-PROX/Makefile | 1 + VNFs/DPPD-PROX/prox_args.c | 3 +++ VNFs/DPPD-PROX/task_init.h | 3 ++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/VNFs/DPPD-PROX/Makefile b/VNFs/DPPD-PROX/Makefile index 0288181c..e9a4211b 100644 --- a/VNFs/DPPD-PROX/Makefile +++ b/VNFs/DPPD-PROX/Makefile @@ -161,6 +161,7 @@ SRCS-y += handle_mirror.c SRCS-y += handle_genl4.c SRCS-y += handle_ipv6_tunnel.c SRCS-y += handle_read.c +SRCS-$(call rte_ver_GE,17,2,0,16) += handle_esp.c SRCS-y += handle_cgnat.c SRCS-y += handle_nat.c SRCS-y += handle_dump.c diff --git a/VNFs/DPPD-PROX/prox_args.c b/VNFs/DPPD-PROX/prox_args.c index df9a2ca4..2703c228 100644 --- a/VNFs/DPPD-PROX/prox_args.c +++ b/VNFs/DPPD-PROX/prox_args.c @@ -1288,6 +1288,9 @@ static int get_core_cfg(unsigned sindex, char *str, void *data) if (STR_EQ(str, "local ipv4")) { /* source IP address to be used for packets */ return parse_ip(&targ->local_ipv4, pkey); } + if (STR_EQ(str, "remote ipv4")) { /* source IP address to be used for packets */ + return parse_ip(&targ->remote_ipv4, pkey); + } if (STR_EQ(str, "local ipv6")) { /* source IPv6 address to be used for packets */ return parse_ip6(&targ->local_ipv6, pkey); } diff --git a/VNFs/DPPD-PROX/task_init.h b/VNFs/DPPD-PROX/task_init.h index beb4de02..e1f5ce1c 100644 --- a/VNFs/DPPD-PROX/task_init.h +++ b/VNFs/DPPD-PROX/task_init.h @@ -56,7 +56,7 @@ struct qos_cfg { }; enum task_mode {NOT_SET, MASTER, QINQ_DECAP4, QINQ_DECAP6, - QINQ_ENCAP4, QINQ_ENCAP6, GRE_DECAP, GRE_ENCAP,CGNAT, + QINQ_ENCAP4, QINQ_ENCAP6, GRE_DECAP, GRE_ENCAP,CGNAT, ESP_ENC, ESP_DEC, }; struct task_args; @@ -126,6 +126,7 @@ struct task_args { uint32_t gateway_ipv4; uint32_t number_gen_ip; uint32_t local_ipv4; + uint32_t remote_ipv4; struct ipv6_addr local_ipv6; /* For IPv6 Tunnel, it's the local tunnel endpoint address */ struct rte_ring *rx_rings[MAX_RINGS_PER_TASK]; struct rte_ring *tx_rings[MAX_RINGS_PER_TASK]; -- cgit 1.2.3-korg