From 7af944dc0ebd147bb139d1faec58adc1e8fa2f9d Mon Sep 17 00:00:00 2001 From: IWASE Yusuke Date: Mon, 5 Sep 2016 09:41:38 +0900 Subject: [PATCH] table_manager: Fix conversion of De Morgan's laws This patch fixes incorrect conversion of De Morgan's laws. e.g.) not (A and B) == not A or not B Original: if not (vpn_path.source is None and route_dist == vrf_table.vrf_conf.route_dist): Incorrect: if (vpn_path.source is not None and # !!! Should be "or" route_dist != vrf_table.vrf_conf.route_dist): Correct: if (vpn_path.source is not None or route_dist != vrf_table.vrf_conf.route_dist): Signed-off-by: IWASE Yusuke Signed-off-by: FUJITA Tomonori --- ryu/services/protocols/bgp/core_managers/table_manager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ryu/services/protocols/bgp/core_managers/table_manager.py b/ryu/services/protocols/bgp/core_managers/table_manager.py index 4b958537..aaa67cb5 100644 --- a/ryu/services/protocols/bgp/core_managers/table_manager.py +++ b/ryu/services/protocols/bgp/core_managers/table_manager.py @@ -470,7 +470,7 @@ class TableCoreManager(object): # of the given path and import this path into them. route_dist = vpn_path.nlri.route_dist for vrf_table in interested_tables: - if (vpn_path.source is not None and + if (vpn_path.source is not None or route_dist != vrf_table.vrf_conf.route_dist): update_vrf_dest = vrf_table.import_vpn_path(vpn_path) # Queue the destination for further processing.