From 70f42e308a6d5b671b78762048182e7e38fdb715 Mon Sep 17 00:00:00 2001 From: Viacheslav Hletenko Date: Tue, 12 Jul 2022 08:39:36 +0000 Subject: vrf: T4527: Prevent to create VRF with reserved names VRF names: "add, all, broadcast, default, delete, dev, get, inet, mtu, link, type, vrf" are reserved and cannot be used for vrf name (cherry picked from commit 52342f389af2da2995b858d026e6fbcad5c8bfaa) --- src/conf_mode/vrf.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/conf_mode/vrf.py b/src/conf_mode/vrf.py index fb2182fff..def4cc70d 100755 --- a/src/conf_mode/vrf.py +++ b/src/conf_mode/vrf.py @@ -108,8 +108,14 @@ def verify(vrf): f'static routes installed!') if 'name' in vrf: + reserved_names = ["add", "all", "broadcast", "default", "delete", "dev", "get", "inet", "mtu", "link", "type", + "vrf"] table_ids = [] for name, config in vrf['name'].items(): + # Reserved VRF names + if name in reserved_names: + raise ConfigError(f'VRF name "{name}" is reserved and connot be used!') + # table id is mandatory if 'table' not in config: raise ConfigError(f'VRF "{name}" table id is mandatory!') -- cgit v1.2.3