From c625e4ab09a434c8f7b3784c03218102fab4ceba Mon Sep 17 00:00:00 2001 From: Manuel Stausberg Date: Tue, 28 Jan 2025 18:39:13 +0100 Subject: [PATCH] use plain dict in IOSDriver.get_bgp_neighbors_detail() --- napalm/ios/ios.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/napalm/ios/ios.py b/napalm/ios/ios.py index 92e40d6c7..a2d7bbca1 100644 --- a/napalm/ios/ios.py +++ b/napalm/ios/ios.py @@ -2076,7 +2076,7 @@ def get_bgp_neighbors(self): return bgp_neighbor_data def get_bgp_neighbors_detail(self, neighbor_address=""): - bgp_detail = defaultdict(lambda: defaultdict(lambda: [])) + bgp_detail = {} raw_bgp_sum = self._send_command("show ip bgp all sum").strip() @@ -2227,6 +2227,14 @@ def get_bgp_neighbors_detail(self, neighbor_address=""): "export_policy": bgp_neigh_afi["policy_out"], } ) + + vrf_name = details["routing_table"] + if vrf_name not in bgp_detail.keys(): + bgp_detail[vrf_name] = {} + remote_as = details["remote_as"] + if remote_as not in bgp_detail[vrf_name].keys(): + bgp_detail[vrf_name][remote_as] = [] + bgp_detail[details["routing_table"]][details["remote_as"]].append(details) return bgp_detail