main: add a command line option for dumping remote node data
[project/usteer.git] / local_node.c
index 31c33779bca1a0f0c32fab75b4da8bb9493895c8..985b37b068a711d8ffc787d08fdfe982d4459daf 100644 (file)
@@ -62,6 +62,7 @@ usteer_free_node(struct ubus_context *ctx, struct usteer_local_node *ln)
        uloop_timeout_cancel(&ln->update);
        avl_delete(&local_nodes, &ln->node.avl);
        ubus_unregister_subscriber(ctx, &ln->ev);
+       kvlist_free(&ln->node_info);
        free(ln);
 }
 
@@ -290,7 +291,7 @@ usteer_local_node_prepare_rrm_set(struct usteer_local_node *ln)
        c = blobmsg_open_array(&b, "list");
        for_each_local_node(node)
                usteer_add_rrm_data(ln, node);
-       avl_for_each_element(&remote_nodes, rn, avl)
+       for_each_remote_node(rn)
                usteer_add_rrm_data(ln, &rn->node);
        blobmsg_close_array(&b, c);
 }
@@ -374,6 +375,7 @@ usteer_get_node(struct ubus_context *ctx, const char *name)
        ln->req_timer.cb = usteer_local_node_state_next;
        ubus_register_subscriber(ctx, &ln->ev);
        avl_insert(&local_nodes, &node->avl);
+       kvlist_init(&ln->node_info, kvlist_blob_len);
        INIT_LIST_HEAD(&node->sta_info);
 
        return ln;