summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-01-12 17:20:23 +0100
committerChristian Breunig <christian@breunig.cc>2024-01-12 17:22:51 +0100
commit12e81dbb47b942b3d9a7a69189adefb5b176c4ef (patch)
tree9bca01583ca160963994658034df65591535738b
parentbc3cf0a0a18ad70448322f90bdb6bf8292b59ccf (diff)
downloadvyos-1x-12e81dbb47b942b3d9a7a69189adefb5b176c4ef.tar.gz
vyos-1x-12e81dbb47b942b3d9a7a69189adefb5b176c4ef.zip
bgp: T5306: fix verify_remote_as() to support v6only interface with peer-group
To test: set protocols bgp neighbor eth0 interface v6only peer-group 'fabric' set protocols bgp peer-group fabric address-family ipv4-unicast set protocols bgp peer-group fabric address-family ipv6-unicast set protocols bgp peer-group fabric capability extended-nexthop set protocols bgp peer-group fabric remote-as 'external' set protocols bgp system-as 64496
-rwxr-xr-xsrc/conf_mode/protocols_bgp.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/conf_mode/protocols_bgp.py b/src/conf_mode/protocols_bgp.py
index bf807fa5f..89e2aab8c 100755
--- a/src/conf_mode/protocols_bgp.py
+++ b/src/conf_mode/protocols_bgp.py
@@ -206,6 +206,10 @@ def verify_remote_as(peer_config, bgp_config):
if 'v6only' in peer_config['interface']:
if 'remote_as' in peer_config['interface']['v6only']:
return peer_config['interface']['v6only']['remote_as']
+ if 'peer_group' in peer_config['interface']['v6only']:
+ peer_group_name = peer_config['interface']['v6only']['peer_group']
+ tmp = dict_search(f'peer_group.{peer_group_name}.remote_as', bgp_config)
+ if tmp: return tmp
return None