From: Srujana Challa Date: Tue, 13 Jul 2021 07:42:18 +0000 (+0530) Subject: examples/ipsec-secgw: support inline UDP encapsulation X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=6425d95ad1f507c3f4f039688d90051fee39ea22;p=dpdk.git examples/ipsec-secgw: support inline UDP encapsulation Adds support to allow udp-encap option for RTE_SECURITY_ACTION_TYPE_INLINE_PROTOCOL mode also. Signed-off-by: Srujana Challa Acked-by: Akhil Goyal Acked-by: Konstantin Ananyev --- diff --git a/examples/ipsec-secgw/sa.c b/examples/ipsec-secgw/sa.c index 7bb9ef36c2..17a28556c9 100644 --- a/examples/ipsec-secgw/sa.c +++ b/examples/ipsec-secgw/sa.c @@ -759,20 +759,25 @@ parse_sa_tokens(char **tokens, uint32_t n_tokens, continue; } if (strcmp(tokens[ti], "udp-encap") == 0) { - APP_CHECK(ips->type == - RTE_SECURITY_ACTION_TYPE_LOOKASIDE_PROTOCOL, - status, "UDP encapsulation is allowed if the " - "session is of type lookaside-protocol-offload " - "only."); - if (status->status < 0) - return; - APP_CHECK_PRESENCE(udp_encap_p, tokens[ti], status); - if (status->status < 0) - return; + switch (ips->type) { + case RTE_SECURITY_ACTION_TYPE_LOOKASIDE_PROTOCOL: + case RTE_SECURITY_ACTION_TYPE_INLINE_PROTOCOL: + APP_CHECK_PRESENCE(udp_encap_p, tokens[ti], + status); + if (status->status < 0) + return; - rule->udp_encap = 1; - app_sa_prm.udp_encap = 1; - udp_encap_p = 1; + rule->udp_encap = 1; + app_sa_prm.udp_encap = 1; + udp_encap_p = 1; + break; + default: + APP_CHECK(0, status, + "UDP encapsulation not supported for " + "security session type %d", + ips->type); + return; + } continue; }