diff options
Diffstat (limited to 'VNFs')
-rw-r--r-- | VNFs/DPPD-PROX/Makefile | 1 | ||||
-rw-r--r-- | VNFs/DPPD-PROX/prox_args.c | 3 | ||||
-rw-r--r-- | VNFs/DPPD-PROX/task_init.h | 3 |
3 files changed, 6 insertions, 1 deletions
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]; |