]> git.proxmox.com Git - mirror_frr.git/blobdiff - isisd/isis_adjacency.c
Merge pull request #5625 from qlyoung/fix-zapi-ipset-name-nullterm
[mirror_frr.git] / isisd / isis_adjacency.c
index e1cdfc30ea0abbde1d51e4992f1e491cab498e27..1d70521e6812da2bb91157c5d59a51179a9fb542 100644 (file)
@@ -32,7 +32,6 @@
 #include "if.h"
 #include "stream.h"
 
-#include "isisd/dict.h"
 #include "isisd/isis_constants.h"
 #include "isisd/isis_common.h"
 #include "isisd/isis_flags.h"
@@ -49,6 +48,7 @@
 #include "isisd/isis_mt.h"
 #include "isisd/isis_tlvs.h"
 #include "isisd/fabricd.h"
+#include "isisd/isis_nb.h"
 
 extern struct isis *isis;
 
@@ -140,12 +140,9 @@ void isis_delete_adj(void *arg)
        /* remove from SPF trees */
        spftree_area_adj_del(adj->circuit->area, adj);
 
-       if (adj->area_addresses)
-               XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->area_addresses);
-       if (adj->ipv4_addresses)
-               XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->ipv4_addresses);
-       if (adj->ipv6_addresses)
-               XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->ipv6_addresses);
+       XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->area_addresses);
+       XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->ipv4_addresses);
+       XFREE(MTYPE_ISIS_ADJACENCY_INFO, adj->ipv6_addresses);
 
        adj_mt_finish(adj);
 
@@ -258,6 +255,7 @@ void isis_adj_state_change(struct isis_adjacency *adj,
                        reason ? reason : "unspecified");
        }
 
+       circuit->adj_state_changes++;
 #ifndef FABRICD
        /* send northbound notification */
        isis_notif_adj_state_change(adj, new_state, reason);
@@ -378,6 +376,20 @@ void isis_adj_print(struct isis_adjacency *adj)
        return;
 }
 
+const char *isis_adj_yang_state(enum isis_adj_state state)
+{
+       switch (state) {
+       case ISIS_ADJ_DOWN:
+               return "down";
+       case ISIS_ADJ_UP:
+               return "up";
+       case ISIS_ADJ_INITIALIZING:
+               return "init";
+       default:
+               return "failed";
+       }
+}
+
 int isis_adj_expire(struct thread *thread)
 {
        struct isis_adjacency *adj;