fib: Decouple source from priority and behaviour 77/23777/4
authorNeale Ranns <nranns@cisco.com>
Wed, 4 Dec 2019 06:11:00 +0000 (06:11 +0000)
committerOle Trøan <otroan@employees.org>
Wed, 4 Dec 2019 22:47:12 +0000 (22:47 +0000)
commit3bab8f9c5396a7bf1115b93a9e0691a76a9ed14c
tree0212708b47f042ac393848e0471669f837788278
parent5f8f6173328f8d77feea5fd100e150c3094c11f0
fib: Decouple source from priority and behaviour

Type: feature

the fib_source_t enum alone no longer defines the priority and
behaviour, instead each source must be allocated these attributes.
This allows the creation of other sources by the plugins (and
soon over the API).

Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I890ee820fbc16079ee417ea1fbc163192806e853
40 files changed:
src/plugins/gbp/gbp_endpoint.c
src/plugins/gbp/gbp_route_domain.c
src/plugins/gbp/gbp_subnet.c
src/plugins/ila/ila.c
src/plugins/lb/lb.c
src/plugins/nat/dslite.c
src/plugins/nat/nat.c
src/plugins/nat/nat.h
src/plugins/nat/nat64.c
src/plugins/nat/nat64_cli.c
src/plugins/nat/nat66.c
src/plugins/pppoe/pppoe.c
src/plugins/svs/svs.c
src/plugins/unittest/fib_test.c
src/vnet/CMakeLists.txt
src/vnet/fib/fib.c
src/vnet/fib/fib_entry.c
src/vnet/fib/fib_entry.h
src/vnet/fib/fib_entry_src.c
src/vnet/fib/fib_entry_src.h
src/vnet/fib/fib_entry_src_adj.c
src/vnet/fib/fib_entry_src_api.c
src/vnet/fib/fib_entry_src_default.c
src/vnet/fib/fib_entry_src_drop.c [moved from src/vnet/fib/fib_entry_src_default_route.c with 68% similarity]
src/vnet/fib/fib_entry_src_interface.c
src/vnet/fib/fib_entry_src_interpose.c
src/vnet/fib/fib_entry_src_lisp.c
src/vnet/fib/fib_entry_src_mpls.c
src/vnet/fib/fib_entry_src_rr.c
src/vnet/fib/fib_entry_src_simple.c [new file with mode: 0644]
src/vnet/fib/fib_entry_src_special.c [deleted file]
src/vnet/fib/fib_source.c [new file with mode: 0644]
src/vnet/fib/fib_source.h [new file with mode: 0644]
src/vnet/fib/fib_table.c
src/vnet/fib/fib_table.h
src/vnet/fib/ip4_fib.c
src/vnet/fib/ip6_fib.c
src/vnet/fib/mpls_fib.c
src/vnet/ip/ip6_ll_table.c
test/test_fib.py