diff options
| author | Louis Scalbert <louis.scalbert@6wind.com> | 2024-09-23 17:23:51 +0200 |
|---|---|---|
| committer | Louis Scalbert <louis.scalbert@6wind.com> | 2025-03-10 09:54:18 +0100 |
| commit | c6afe42455307f04e789c228df22a48ddc43e3b8 (patch) | |
| tree | 6f33592d7769c95d2bc42a41ed27effb04e36c64 /lib/zclient.h | |
| parent | 97c159e88278dfe10d4dc1015e5fd6c3eaf30a07 (diff) | |
lib, tests, zebra: keep table routes at vrf disabling
At VRF disabling, keep the route entries that was associated to its
table ID but not to the VRF itself. Kernel flushes these entries so we
need to reinstall them.
To do so, add a flag to mean that a route entry is owned by a table ID
and not by a VRF. If the VRF associated to the table ID is deleted, the
route entry must not be deleted.
Update to tests with new flag. 2057 is in hexa 0x809, meaning that the
new flag has been to some prefix.
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
Diffstat (limited to 'lib/zclient.h')
| -rw-r--r-- | lib/zclient.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/zclient.h b/lib/zclient.h index 43521d6e2e..8719af1d03 100644 --- a/lib/zclient.h +++ b/lib/zclient.h @@ -578,6 +578,12 @@ struct zapi_route { * kernel (NLM_F_APPEND at the very least ) */ #define ZEBRA_FLAG_OUTOFSYNC 0x400 +/* + * This flag lets us know that the route entry is + * associated to the table ID and must remain when the + * table ID is de-associated from a VRF. + */ +#define ZEBRA_FLAG_TABLEID 0x800 /* The older XXX_MESSAGE flags live here */ uint32_t message; |
