summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-05-06 19:26:45 +0200
committerChristian Poessinger <christian@poessinger.com>2021-05-06 19:26:45 +0200
commit4f9aa30f86ae589ea6303700a25393048b1e66f3 (patch)
treed98dd43a59a7884589dafb27cec5a9cdaf931e02
parent144a2a9da0a7e5d30cb14227c2503f52793777da (diff)
downloadvyos-1x-4f9aa30f86ae589ea6303700a25393048b1e66f3.tar.gz
vyos-1x-4f9aa30f86ae589ea6303700a25393048b1e66f3.zip
vrf: bgp: T3523: add route-map support for kernel routes
-rw-r--r--data/templates/frr/bgp.frr.tmpl14
-rw-r--r--interface-definitions/include/bgp/protocol-common-config.xml.i1
-rw-r--r--interface-definitions/protocols-bgp.xml.in1
3 files changed, 11 insertions, 5 deletions
diff --git a/data/templates/frr/bgp.frr.tmpl b/data/templates/frr/bgp.frr.tmpl
index 8090e154d..0245c875e 100644
--- a/data/templates/frr/bgp.frr.tmpl
+++ b/data/templates/frr/bgp.frr.tmpl
@@ -214,6 +214,15 @@
{% endif %}
{% endmacro %}
!
+{% if vrf is defined and vrf is not none and route_map is defined and route_map is not none %}
+vrf {{ vrf }}
+ ip protocol bgp route-map {{ route_map }}
+ exit-vrf
+!
+{% elif route_map is defined and route_map is not none %}
+ip protocol bgp route-map {{ route_map }}
+{% endif %}
+!
router bgp {{ local_as }} {{ 'vrf ' ~ vrf if vrf is defined and vrf is not none }}
{% if parameters is defined and parameters.ebgp_requires_policy is defined %}
bgp ebgp-requires-policy
@@ -469,8 +478,5 @@ router bgp {{ local_as }} {{ 'vrf ' ~ vrf if vrf is defined and vrf is not none
{% if timers is defined and timers.keepalive is defined and timers.holdtime is defined %}
timers bgp {{ timers.keepalive }} {{ timers.holdtime }}
{% endif %}
-!
-{% if route_map is defined and route_map is not none %}
-ip protocol bgp route-map {{ route_map }}
-{% endif %}
+ end
! \ No newline at end of file
diff --git a/interface-definitions/include/bgp/protocol-common-config.xml.i b/interface-definitions/include/bgp/protocol-common-config.xml.i
index d85ca4b79..125a81b14 100644
--- a/interface-definitions/include/bgp/protocol-common-config.xml.i
+++ b/interface-definitions/include/bgp/protocol-common-config.xml.i
@@ -1448,6 +1448,7 @@
#include <include/bgp/neighbor-update-source.xml.i>
</children>
</tagNode>
+#include <include/route-map.xml.i>
<node name="timers">
<properties>
<help>BGP protocol timers</help>
diff --git a/interface-definitions/protocols-bgp.xml.in b/interface-definitions/protocols-bgp.xml.in
index 8589ffba5..e1a822999 100644
--- a/interface-definitions/protocols-bgp.xml.in
+++ b/interface-definitions/protocols-bgp.xml.in
@@ -9,7 +9,6 @@
</properties>
<children>
#include <include/bgp/protocol-common-config.xml.i>
- #include <include/route-map.xml.i>
</children>
</node>
</children>