summaryrefslogtreecommitdiffstats
path: root/isisd/isis_nb.c
diff options
context:
space:
mode:
authorlynne <lynne@voltanet.io>2020-12-24 19:29:42 +0100
committerlynne <lynne@voltanet.io>2021-01-20 15:24:35 +0100
commitf3abc412a56a9cd3b6efbf16637231d157c73e7d (patch)
tree8b4c1435b6f354600290ad64ea56ca24ddc471d2 /isisd/isis_nb.c
parentMerge pull request #7832 from pjdruddy/snmp-test-infra (diff)
downloadfrr-f3abc412a56a9cd3b6efbf16637231d157c73e7d.tar.xz
frr-f3abc412a56a9cd3b6efbf16637231d157c73e7d.zip
isisd: Fix Attach-bit processing
The purpose of the Attach-bit is to accomplish inter-area routing. In other venders, the Attached-bit is automatically set when a router is configured as a L1|L2 router and has two adjacencies. When a L1 router receives a LSP with the Attached-bit set it is supposed to create a default route pointing toward the neighbor to provide a default path out of the L1 area. ISIS implementation has been fixed to support the above definition: Setting the Attach-bit is now the default behavior and we allow the user to turn it off. We will only set the Default Attach-bit when creating a L1 LSP, if we are a L1|L2 router and have a L2 adjacency up. When a L1 router receives a LSP with the Attach-bit set, we will create a default route pointing to the L1|L2 router as the nexthop. The default route will be removed if the LSP is received with the Attach-bit cleared. Signed-off-by: Lynne Morrison <lynne@voltanet.io>
Diffstat (limited to 'isisd/isis_nb.c')
-rw-r--r--isisd/isis_nb.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/isisd/isis_nb.c b/isisd/isis_nb.c
index a02e6a45b..6d46e6b67 100644
--- a/isisd/isis_nb.c
+++ b/isisd/isis_nb.c
@@ -60,9 +60,22 @@ const struct frr_yang_module_info frr_isisd_info = {
},
},
{
+ .xpath = "/frr-isisd:isis/instance/attach-send",
+ .cbs = {
+ .cli_show = cli_show_isis_attached_send,
+ .modify = isis_instance_attached_send_modify,
+ },
+ },
+ {
+ .xpath = "/frr-isisd:isis/instance/attach-receive-ignore",
+ .cbs = {
+ .cli_show = cli_show_isis_attached_receive,
+ .modify = isis_instance_attached_receive_modify,
+ },
+ },
+ {
.xpath = "/frr-isisd:isis/instance/attached",
.cbs = {
- .cli_show = cli_show_isis_attached,
.modify = isis_instance_attached_modify,
},
},