summaryrefslogtreecommitdiff
path: root/lib/nexthop.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2015-05-19 17:47:24 -0700
committerDonald Sharp <sharpd@cumulusnetworks.com>2015-05-19 17:47:24 -0700
commitc52ef59fedc4ce81afc842990980c8384d6dfce3 (patch)
tree116d33d4320e53fc8d96ee5b5893fd7b98c04c8f /lib/nexthop.h
parentb5d58c32bb74cf2fa0aa43a07396b06765d54ac0 (diff)
zebra-set-src-routemap.patch
Honor setting source via route map and pushing that to the kernel. With recursive routes, the ability to set the source IP address of a route via a routemap has been broken. This patch fixes that. To allow route map to set a source and then to unapply the route map and have the source be taken out, I've introduced a new field in the nexthop data structure called rmap_src. This field is zero'd before invoking the route map apply function. Today, no protocol daemon specifies the src in its route update to zebra. If that happens, I didn't want to stomp on it and so have left the src field intact instead of reusing that for the routemap to play with. Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com>
Diffstat (limited to 'lib/nexthop.h')
-rw-r--r--lib/nexthop.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/nexthop.h b/lib/nexthop.h
index b3a128a2a8..b375c55b95 100644
--- a/lib/nexthop.h
+++ b/lib/nexthop.h
@@ -68,6 +68,7 @@ struct nexthop
/* Nexthop address */
union g_addr gate;
union g_addr src;
+ union g_addr rmap_src; /* Src is set via routemap */
/* Nexthops obtained by recursive resolution.
*