diff options
| author | Christian Poessinger <christian@poessinger.com> | 2021-02-26 22:49:44 +0100 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-26 22:49:44 +0100 | 
| commit | 6342735d51ee057a55d7fb9f2a53ff0dfaa1febf (patch) | |
| tree | d5c905c590ad6567c63d38124dca507fa1a7b15d | |
| parent | caf6e392f025139f962395d162b433a4d038eeee (diff) | |
| parent | 4bf55f9732dd44d2297d70c0587604df90a39757 (diff) | |
| download | vyos-1x-6342735d51ee057a55d7fb9f2a53ff0dfaa1febf.tar.gz vyos-1x-6342735d51ee057a55d7fb9f2a53ff0dfaa1febf.zip | |
Merge pull request #744 from Cheeze-It/current
bgp: T2100: Changing RFC8212 behavior and option toggle
| -rw-r--r-- | data/templates/frr/bgp.frr.tmpl | 6 | ||||
| -rw-r--r-- | interface-definitions/protocols-bgp.xml.in | 6 | ||||
| -rwxr-xr-x | smoketest/scripts/cli/test_protocols_bgp.py | 4 | 
3 files changed, 13 insertions, 3 deletions
| diff --git a/data/templates/frr/bgp.frr.tmpl b/data/templates/frr/bgp.frr.tmpl index 30741aa27..43e405222 100644 --- a/data/templates/frr/bgp.frr.tmpl +++ b/data/templates/frr/bgp.frr.tmpl @@ -186,9 +186,11 @@  {% endmacro %}  !  router bgp {{ asn }} -{# Disable eBGP policy by default until there is a CLI option #} -{# Workaround for T3183 until we have decided about a migration script #} +{% if parameters is defined and parameters.ebgp_requires_policy is defined %} + bgp ebgp-requires-policy +{% else %}   no bgp ebgp-requires-policy +{% endif %}  {# Workaround for T2100 until we have decided about a migration script #}   no bgp network import-check  {% if address_family is defined and address_family is not none %} diff --git a/interface-definitions/protocols-bgp.xml.in b/interface-definitions/protocols-bgp.xml.in index 69f4c2d52..46b913830 100644 --- a/interface-definitions/protocols-bgp.xml.in +++ b/interface-definitions/protocols-bgp.xml.in @@ -813,6 +813,12 @@                    </tagNode>                  </children>                </node> +              <leafNode name="ebgp-requires-policy"> +                <properties> +                  <help>Enable RFC8212 functionality</help> +                  <valueless/> +                </properties> +              </leafNode>                <node name="graceful-restart">                  <properties>                    <help>Graceful restart capability parameters</help> diff --git a/smoketest/scripts/cli/test_protocols_bgp.py b/smoketest/scripts/cli/test_protocols_bgp.py index b6a6a493c..607dfc116 100755 --- a/smoketest/scripts/cli/test_protocols_bgp.py +++ b/smoketest/scripts/cli/test_protocols_bgp.py @@ -221,12 +221,13 @@ class TestProtocolsBGP(unittest.TestCase):          self.session.set(base_path + ['parameters', 'router-id', router_id])          self.session.set(base_path + ['parameters', 'log-neighbor-changes']) -        # Default local preference (higher=more preferred) +        # Default local preference (higher = more preferred, default value is 100)          self.session.set(base_path + ['parameters', 'default', 'local-pref', local_pref])          # Deactivate IPv4 unicast for a peer by default          self.session.set(base_path + ['parameters', 'default', 'no-ipv4-unicast'])          self.session.set(base_path + ['parameters', 'graceful-restart', 'stalepath-time', stalepath_time])          self.session.set(base_path + ['parameters', 'graceful-shutdown']) +        self.session.set(base_path + ['parameters', 'ebgp-requires-policy'])          # commit changes          self.session.commit() @@ -240,6 +241,7 @@ class TestProtocolsBGP(unittest.TestCase):          self.assertIn(f' no bgp default ipv4-unicast', frrconfig)          self.assertIn(f' bgp graceful-restart stalepath-time {stalepath_time}', frrconfig)          self.assertIn(f' bgp graceful-shutdown', frrconfig) +        self.assertIn(f' bgp ebgp-requires-policy', frrconfig)      def test_bgp_02_neighbors(self): | 
