From c9a1ec6eed1d75f1e6ca91ca191947631eb97386 Mon Sep 17 00:00:00 2001 From: Emanuele Di Pascale Date: Wed, 11 Nov 2020 17:29:15 +0100 Subject: [PATCH] tools: fix frr-reload l2vpn delete when deleting a whole l2vpn context in ldpd which also had pseudowires in it, we were first deleting the l2vpn with a 'no l2vpn XXX' command, and then adding it again by running 'l2vpn XXX\n no member pseudowire YYY' which obviously was not needed. As a result the l2vpn would be reinstated. Signed-off-by: Emanuele Di Pascale --- tools/frr-reload.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/frr-reload.py b/tools/frr-reload.py index 88873da904..8b4472f787 100755 --- a/tools/frr-reload.py +++ b/tools/frr-reload.py @@ -1150,6 +1150,12 @@ def compare_context_objects(newconf, running): (running_ctx_keys[:2], None) in lines_to_del): continue + # same thing for a pseudowire sub-context inside an l2vpn context + elif (len(running_ctx_keys) > 1 and running_ctx_keys[0].startswith('l2vpn') and + running_ctx_keys[1].startswith('member pseudowire') and + (running_ctx_keys[:1], None) in lines_to_del): + continue + # Non-global context elif running_ctx_keys and not any("address-family" in key for key in running_ctx_keys): lines_to_del.append((running_ctx_keys, None)) -- 2.39.5