]> git.puffer.fish Git - mirror/frr.git/commit
zebra: zebra-nht-routemap.patch
authorDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 20 May 2015 00:47:20 +0000 (17:47 -0700)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 20 May 2015 00:47:20 +0000 (17:47 -0700)
commit9f0ea7d4f23342b46876262493f87414f0a7fffb
tree5bc399370e62f21359ceeb276ce17cf66135800e
parent2e8142b2cc5739ac74d28cb707edddbc3ca4b33b
zebra: zebra-nht-routemap.patch
Zebra: Add route-map support for Next Hop Tracking

It is sometimes useful to restrict the resolution of recursive routes
to only specific via's. For example, in some configurations resolving
a route through a default route is not acceptable.

This patch adds a new route-map attach point, to zebra's next-hop-tracking
server. Whenever NHT is considering sending notification of a route
resolution, it applies a specified route-map and only if it passes, is the
NHT reachable message sent to the appropriate client protocol (BGP, OSPF etc.).
If the route-map filters the resolution, then a withdraw is sent to the
client protocol.

The route-map is sent the ip address of the route via which the resolution is
happening as well as the valid NHs associated with that route.

We also add support for matching on IP addr prefix len and source protocol
to ensure that resolution happens only via a very specific route.
lib/route_types.pl [changed mode: 0755->0644]
zebra/zebra_rib.c
zebra/zebra_rnh.c
zebra/zebra_rnh.h
zebra/zebra_rnh_null.c
zebra/zebra_routemap.c
zebra/zserv.c
zebra/zserv.h