diff --git a/src/core/cntlr.c b/src/core/cntlr.c index d31231b7ca05387b82d4d5727dd92193941e2d42..fb345de911ce553a6946b1d9262ff3a0703850c9 100644 --- a/src/core/cntlr.c +++ b/src/core/cntlr.c @@ -1650,28 +1650,28 @@ static uint32_t ubus_get_topology_object(struct ubus_context *ctx) #endif -static void cntlr_signal_periodic_run(struct uloop_timeout *t) +static void cntlr_query_nodes(struct uloop_timeout *t) { struct controller *c = container_of(t, struct controller, query_nodes); struct node *n; - list_for_each_entry_safe(n, &c->nodelist, list) { + list_for_each_entry(n, &c->nodelist, list) { struct cmdu_buff *cmdu; cmdu = cntlr_gen_bk_caps_query(c, n->alid); - if (!cmdu) { + if (cmdu) { send_cmdu(c, cmdu); cmdu_free(cmdu); } cmdu = cntlr_gen_ap_capability_query(c, n->alid); - if (!cmdu) { + if (cmdu) { send_cmdu(c, cmdu); cmdu_free(cmdu); } cmdu = cntlr_gen_topology_query(c, n->alid); - if (!cmdu) { + if (cmdu) { send_cmdu(c, cmdu); cmdu_free(cmdu); } @@ -2070,7 +2070,6 @@ int start_controller(void) c->radar_timer.cb = cntlr_radar_exit; c->signal_handler.cb = cntlr_signal_periodic_run; c->query_nodes.cb = cntlr_query_nodes; - //c->bcn_metrics_timer.cb = cntlr_bcn_metrics_parse; uloop_timeout_set(&c->heartbeat, 5 * 1000); uloop_timeout_set(&c->discovery_timer, 0);