From 6977eb91c6432b8976c98cd283e9558a9facd492 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Thu, 5 Oct 2017 08:54:03 -0400 Subject: [PATCH] *: Add some documentation about how to handle new daemons Add some breadcrumbs for when we add a new routing daemon so things `just work`. Signed-off-by: Donald Sharp --- tools/frr | 6 ++++++ zebra/rt_netlink.h | 16 ++++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/tools/frr b/tools/frr index 8d67917be7..78190aadb0 100755 --- a/tools/frr +++ b/tools/frr @@ -544,6 +544,12 @@ case "$1" in if [ -z "$dmn" -o "$dmn" = "zebra" ]; then echo "Removing all routes made by FRR." + # Specific values for each proto can be found + # in /etc/iproute2/rt_protos as well as FRR + # specific ones in /etc/iproute2/rt_protos.d + # Additionally if a new protocol is added + # we need to add it here as well as + # in rt_netlink.h( follow the directions! ) ip route flush proto 186 ip route flush proto 188 ip route flush proto 4 diff --git a/zebra/rt_netlink.h b/zebra/rt_netlink.h index e607dda6f9..980ff915cc 100644 --- a/zebra/rt_netlink.h +++ b/zebra/rt_netlink.h @@ -27,14 +27,26 @@ #define NL_DEFAULT_ROUTE_METRIC 20 -/* Additional protocol strings to push into routes */ +/* + * Additional protocol strings to push into routes + * If we add anything new here please make sure + * to update: + * zebra2proto Function + * proto2zebra Function + * is_selfroute Function + * tools/frr To flush the route upon exit + * + * Finally update this file to allow iproute2 to + * know about this new route. + * tools/etc/iproute2/rt_protos.d + */ #define RTPROT_BGP 186 #define RTPROT_ISIS 187 #define RTPROT_OSPF 188 #define RTPROT_RIP 189 #define RTPROT_RIPNG 190 #if !defined(RTPROT_BABEL) -#define RTPROT_BABEL 42 +#define RTPROT_BABEL 42 #endif #define RTPROT_NHRP 191 #define RTPROT_EIGRP 192 -- 2.39.5