]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/plist_int.h
Merge pull request #7220 from idryzhov/fix-clear-isis
[mirror_frr.git] / lib / plist_int.h
index 6bc2d034d6996d21e65b16c9f9b1fe6bf34e14bc..5e0beabbc690b39929664eb06d90cabcdbcadd7a 100644 (file)
 #ifndef _QUAGGA_PLIST_INT_H
 #define _QUAGGA_PLIST_INT_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 enum prefix_name_type { PREFIX_TYPE_STRING, PREFIX_TYPE_NUMBER };
 
 struct pltrie_table;
@@ -55,17 +59,31 @@ struct prefix_list_entry {
 
        enum prefix_list_type type;
 
-       int any;
+       bool any;
        struct prefix prefix;
 
        unsigned long refcnt;
        unsigned long hitcnt;
 
+       struct prefix_list *pl;
+
        struct prefix_list_entry *next;
        struct prefix_list_entry *prev;
 
        /* up the chain for best match search */
        struct prefix_list_entry *next_best;
+
+       /* Flag to track trie/list installation status. */
+       bool installed;
 };
 
+extern void prefix_list_entry_free(struct prefix_list_entry *pentry);
+extern void prefix_list_entry_delete2(struct prefix_list_entry *ple);
+extern void prefix_list_entry_update_start(struct prefix_list_entry *ple);
+extern void prefix_list_entry_update_finish(struct prefix_list_entry *ple);
+
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* _QUAGGA_PLIST_INT_H */