nat: remove nat44-ed relation between SM and addr 85/34485/10
authorFilip Varga <fivarga@cisco.com>
Fri, 12 Nov 2021 16:22:11 +0000 (17:22 +0100)
committerOle Tr�an <otroan@employees.org>
Tue, 4 Jan 2022 12:06:00 +0000 (12:06 +0000)
commit67cc0a6922d41b34d251e08ce0ba0c9c58525e4f
tree1288bb88cfe9f30fa63500bfba334fca1cd1d640
parentaed42948510a94922566fa1a4bfb6eec281e5dee
nat: remove nat44-ed relation between SM and addr

Change [1] put static mappings in flow hash. This change also broke
relationship between nat pool addresses and static mappings. Port and
address are no longer reserved in nat pool address records for a new
static mapping.

Because of this change both nat objects and their configuration can
function independently. This change also removed already broken logic of
having static-mapping-only configuration.

In this patch i have cleaned up and removed unnecessary logic for static
mapping configuration functions, address configuration functions,
interface configuraiton functions and all callback functions used for
resolving interface address bound records.

No more viable configuration option static-mapping-only is also removed
because there is no more option to run traffic through vpp for static
mappings without having flow hash table allocated. Instead user is now
able to create static mapping records without using nat pool addresses.

Fixed and improved management of required fib entries (ensuring VPP will
reply to ARP for all external addresses on outside interfaces) through
holding a refcount for their creation and removal.

[1] https://gerrit.fd.io/r/c/vpp/+/34077

Type: improvement

Change-Id: Ic16deefbede833d574c2a5972155c9afa5bc62ce
Signed-off-by: Filip Varga <fivarga@cisco.com>
src/plugins/nat/nat44-ed/nat44_ed.c
src/plugins/nat/nat44-ed/nat44_ed.h
src/plugins/nat/nat44-ed/nat44_ed_api.c
src/plugins/nat/nat44-ed/nat44_ed_cli.c
src/plugins/nat/nat44-ed/nat44_ed_format.c
src/plugins/nat/nat44-ed/nat44_ed_in2out.c