diff options
author | Christian Poessinger <christian@poessinger.com> | 2021-12-25 12:19:33 +0100 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2021-12-25 12:19:33 +0100 |
commit | 4abca54698edb09b76e7d059dd35cdcef3512ec4 (patch) | |
tree | b7ed643cf492423078a69b065dcfc583e1390f4c /src/conf_mode/protocols_ospfv3.py | |
parent | 8449ee5f95ffbf1901202e04ee6e1216f54d8ff8 (diff) | |
download | vyos-1x-4abca54698edb09b76e7d059dd35cdcef3512ec4.tar.gz vyos-1x-4abca54698edb09b76e7d059dd35cdcef3512ec4.zip |
ospfv3: T4102: add support for NSSA area-type
Diffstat (limited to 'src/conf_mode/protocols_ospfv3.py')
-rwxr-xr-x | src/conf_mode/protocols_ospfv3.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/conf_mode/protocols_ospfv3.py b/src/conf_mode/protocols_ospfv3.py index d0460b830..c338c98b3 100755 --- a/src/conf_mode/protocols_ospfv3.py +++ b/src/conf_mode/protocols_ospfv3.py @@ -83,6 +83,16 @@ def verify(ospfv3): verify_common_route_maps(ospfv3) + if 'area' in ospfv3: + for area, area_config in ospfv3['area'].items(): + if 'area_type' in area_config: + if len(area_config['area_type']) > 1: + raise ConfigError(f'Can only configure one area-type for OSPFv3 area "{area}"!') + for area_type, area_type_config in area_config['area_type'].items(): + if {'default_information_originate', 'no_summary'} <= set(area_type_config): + raise ConfigError(f'Can either set "default-information-originate" '\ + f'or "no-summary", but not both!') + if 'interface' in ospfv3: for interface, interface_config in ospfv3['interface'].items(): if 'ifmtu' in interface_config: |