aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/nat/nat64_out2in.c
diff options
context:
space:
mode:
authorKlement Sekera <ksekera@cisco.com>2020-05-11 08:58:05 +0000
committerOle Trøan <otroan@employees.org>2020-05-13 11:36:42 +0000
commitbc752e432ff3e252f6e1a3f0372c9532f14909cd (patch)
tree5399347c1e469d21529a0bc20ffd2d0783434e40 /src/plugins/nat/nat64_out2in.c
parent1d61c2194d21df2003ff07ff5feae4130de6277e (diff)
nat: perf improvement - replace branchy code
Use a lookup table instead. Type: improvement Signed-off-by: Klement Sekera <ksekera@cisco.com> Change-Id: Ia8461099828bb8824bf016201f135e6b69c444d1
Diffstat (limited to 'src/plugins/nat/nat64_out2in.c')
-rw-r--r--src/plugins/nat/nat64_out2in.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/plugins/nat/nat64_out2in.c b/src/plugins/nat/nat64_out2in.c
index 6c0075102a1..ef0f8214ddd 100644
--- a/src/plugins/nat/nat64_out2in.c
+++ b/src/plugins/nat/nat64_out2in.c
@@ -575,9 +575,9 @@ VLIB_NODE_FN (nat64_out2in_node) (vlib_main_t * vm,
next0 = NAT64_OUT2IN_NEXT_IP6_LOOKUP;
- proto0 = ip_proto_to_snat_proto (ip40->protocol);
+ proto0 = ip_proto_to_nat_proto (ip40->protocol);
- if (PREDICT_FALSE (proto0 == ~0))
+ if (PREDICT_FALSE (proto0 == NAT_PROTOCOL_OTHER))
{
if (nat64_out2in_unk_proto (vm, b0, &ctx0))
{
@@ -588,7 +588,7 @@ VLIB_NODE_FN (nat64_out2in_node) (vlib_main_t * vm,
goto trace0;
}
- if (proto0 == SNAT_PROTOCOL_ICMP)
+ if (proto0 == NAT_PROTOCOL_ICMP)
{
icmp_packets++;
if (icmp_to_icmp6
@@ -602,7 +602,7 @@ VLIB_NODE_FN (nat64_out2in_node) (vlib_main_t * vm,
}
else
{
- if (proto0 == SNAT_PROTOCOL_TCP)
+ if (proto0 == NAT_PROTOCOL_TCP)
tcp_packets++;
else
udp_packets++;
@@ -614,7 +614,7 @@ VLIB_NODE_FN (nat64_out2in_node) (vlib_main_t * vm,
* Send DHCP packets to the ipv4 stack, or we won't
* be able to use dhcp client on the outside interface
*/
- if ((proto0 == SNAT_PROTOCOL_UDP)
+ if ((proto0 == NAT_PROTOCOL_UDP)
&& (udp0->dst_port ==
clib_host_to_net_u16 (UDP_DST_PORT_dhcp_to_client)))
{