X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fnat%2Fnat.c;h=363c1c02c450a2a509958bb322b1c4fdedc3327b;hb=16ad61735efbf3f9933fdb9ef7987606ef060cfc;hp=9eb0384a95bf39cddb5ac64e7257acb41d77e515;hpb=cab4733a7fceb4ead38fe442ffe682ad533dfa28;p=vpp.git diff --git a/src/plugins/nat/nat.c b/src/plugins/nat/nat.c index 9eb0384a95b..363c1c02c45 100755 --- a/src/plugins/nat/nat.c +++ b/src/plugins/nat/nat.c @@ -2178,6 +2178,7 @@ snat_update_outside_fib (u32 sw_if_index, u32 new_fib_index, nat_outside_fib_t *outside_fib; snat_interface_t *i; u8 is_add = 1; + u8 match = 0; if (new_fib_index == old_fib_index) return; @@ -2185,14 +2186,21 @@ snat_update_outside_fib (u32 sw_if_index, u32 new_fib_index, if (!vec_len (sm->outside_fibs)) return; - pool_foreach (i, sm->interfaces, ( - { - if (i->sw_if_index == sw_if_index) - { - if (!(nat_interface_is_outside (i))) - return;} - } - )); + /* *INDENT-OFF* */ + pool_foreach (i, sm->interfaces, + ({ + if (i->sw_if_index == sw_if_index) + { + if (!(nat_interface_is_outside (i))) + return; + match = 1; + } + })); + /* *INDENT-ON* */ + + if (!match) + return; + vec_foreach (outside_fib, sm->outside_fibs) { if (outside_fib->fib_index == old_fib_index)