summaryrefslogtreecommitdiffstats
path: root/zebra/rt.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2019-02-08 21:01:41 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2019-03-27 21:19:28 +0100
commit3cdba47a82b21daf90816bcd31fe4ab005367079 (patch)
tree80c1efaa22c950821e9298ace592ad98db18cd4d /zebra/rt.h
parentzebra: On route install/update failure correctly indicate in rib (diff)
downloadfrr-3cdba47a82b21daf90816bcd31fe4ab005367079.tar.xz
frr-3cdba47a82b21daf90816bcd31fe4ab005367079.zip
zebra: Modify code so that dplane is responsible for indicating success/fail of install
We have several route types KERNEL and CONNECT that are handled via special case in the code. This was causing a lot of work keeping the two different classes of route types as special(SYSTEM OR NOT). Put the dplane in charge of the code that sets the bits for signalling route install/failure. This greatly simplifies the code calling path and makes all route types be handled exactly the same. Additionaly code that we want to run post data plane install can just work as per normal then, instead of having to know we need to run it when we have a special type of route. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com.
Diffstat (limited to 'zebra/rt.h')
-rw-r--r--zebra/rt.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/zebra/rt.h b/zebra/rt.h
index bc91edd80..2c77af2aa 100644
--- a/zebra/rt.h
+++ b/zebra/rt.h
@@ -35,6 +35,9 @@
extern "C" {
#endif
+#define RSYSTEM_ROUTE(type) \
+ ((type) == ZEBRA_ROUTE_KERNEL || (type) == ZEBRA_ROUTE_CONNECT)
+
/*
* Update or delete a route, LSP, or pseudowire from the kernel,
* using info from a dataplane context.