]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/northbound.h
zebra, lib: fix the ZEBRA_INTERFACE_VRF_UPDATE zapi message
[mirror_frr.git] / lib / northbound.h
index e26a2f861723e1a3b6d9899d508678012136866f..9d35a4e64a09daf0739ab1a034859353f086c60c 100644 (file)
@@ -20,6 +20,7 @@
 #ifndef _FRR_NORTHBOUND_H_
 #define _FRR_NORTHBOUND_H_
 
+#include "thread.h"
 #include "hook.h"
 #include "linklist.h"
 #include "openbsd-tree.h"
@@ -253,7 +254,8 @@ struct nb_callbacks {
         * Operational data callback for YANG lists.
         *
         * The callback function should fill the 'keys' parameter based on the
-        * given list_entry.
+        * given list_entry. Keyless lists don't need to implement this
+        * callback.
         *
         * list_entry
         *    Pointer to list entry.
@@ -271,7 +273,8 @@ struct nb_callbacks {
         * Operational data callback for YANG lists.
         *
         * The callback function should return a list entry based on the list
-        * keys given as a parameter.
+        * keys given as a parameter. Keyless lists don't need to implement this
+        * callback.
         *
         * parent_list_entry
         *    Pointer to parent list entry.
@@ -366,6 +369,8 @@ struct nb_node {
 };
 /* The YANG container or list contains only config data. */
 #define F_NB_NODE_CONFIG_ONLY 0x01
+/* The YANG list doesn't contain key leafs. */
+#define F_NB_NODE_KEYLESS_LIST 0x02
 
 struct frr_yang_module_info {
        /* YANG module name. */
@@ -825,7 +830,7 @@ extern const char *nb_client_name(enum nb_client client);
  * nmodules
  *    Size of the modules array.
  */
-extern void nb_init(const struct frr_yang_module_info *modules[],
+extern void nb_init(struct thread_master *tm, const struct frr_yang_module_info *modules[],
                    size_t nmodules);
 
 /*