diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-05-20 02:47:24 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-05-20 02:47:24 +0200 |
commit | c52ef59fedc4ce81afc842990980c8384d6dfce3 (patch) | |
tree | 116d33d4320e53fc8d96ee5b5893fd7b98c04c8f /lib/nexthop.h | |
parent | Fix aggregation issues found via ANVL (diff) | |
download | frr-c52ef59fedc4ce81afc842990980c8384d6dfce3.tar.xz frr-c52ef59fedc4ce81afc842990980c8384d6dfce3.zip |
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.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/nexthop.h b/lib/nexthop.h index b3a128a2a..b375c55b9 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. * |