• Home
  • Raw
  • Download

Lines Matching full:routes

83 /*      re-sort the routes in quality order.    */
86 if (nr_node->routes[y].quality > nr_node->routes[x].quality) { in re_sort_routes()
92 swap(nr_node->routes[x], nr_node->routes[y]); in re_sort_routes()
109 if ((odev=nr_dev_get(nr)) != NULL) { /* Can't add routes to ourself */ in nr_add_node()
122 * routes now (and not wait for a node broadcast). in nr_add_node()
131 if (nr_nodet->routes[i].neighbour == nr_neigh) in nr_add_node()
202 nr_node->routes[0].quality = quality; in nr_add_node()
203 nr_node->routes[0].obs_count = obs_count; in nr_add_node()
204 nr_node->routes[0].neighbour = nr_neigh; in nr_add_node()
223 if (nr_node->routes[i].neighbour == nr_neigh) { in nr_add_node()
224 nr_node->routes[i].quality = quality; in nr_add_node()
225 nr_node->routes[i].obs_count = obs_count; in nr_add_node()
234 nr_node->routes[2] = nr_node->routes[1]; in nr_add_node()
235 nr_node->routes[1] = nr_node->routes[0]; in nr_add_node()
237 nr_node->routes[0].quality = quality; in nr_add_node()
238 nr_node->routes[0].obs_count = obs_count; in nr_add_node()
239 nr_node->routes[0].neighbour = nr_neigh; in nr_add_node()
247 if (quality > nr_node->routes[2].quality) { in nr_add_node()
248 nr_node->routes[2].neighbour->count--; in nr_add_node()
249 nr_neigh_put(nr_node->routes[2].neighbour); in nr_add_node()
251 if (nr_node->routes[2].neighbour->count == 0 && !nr_node->routes[2].neighbour->locked) in nr_add_node()
252 nr_remove_neigh(nr_node->routes[2].neighbour); in nr_add_node()
254 nr_node->routes[2].quality = quality; in nr_add_node()
255 nr_node->routes[2].obs_count = obs_count; in nr_add_node()
256 nr_node->routes[2].neighbour = nr_neigh; in nr_add_node()
264 /* Now re-sort the routes in quality order */ in nr_add_node()
277 if (nr_node->routes[i].neighbour == nr_neigh) { in nr_add_node()
324 * is only deleted if no routes are left to it.
346 if (nr_node->routes[i].neighbour == nr_neigh) { in nr_del_node()
361 nr_node->routes[0] = nr_node->routes[1]; in nr_del_node()
364 nr_node->routes[1] = nr_node->routes[2]; in nr_del_node()
467 switch (s->routes[i].obs_count) { in nr_dec_obs()
472 nr_neigh = s->routes[i].neighbour; in nr_dec_obs()
484 s->routes[0] = s->routes[1]; in nr_dec_obs()
487 s->routes[1] = s->routes[2]; in nr_dec_obs()
494 s->routes[i].obs_count--; in nr_dec_obs()
510 * A device has been removed. Remove its routes and neighbours.
526 if (t->routes[i].neighbour == s) { in nr_rt_device_down()
531 t->routes[0] = t->routes[1]; in nr_rt_device_down()
534 t->routes[1] = t->routes[2]; in nr_rt_device_down()
739 nr_node->routes[nr_node->which].neighbour == nr_neigh) in nr_link_failed()
802 nr_neigh = nr_node->routes[nr_node->which].neighbour; in nr_route_frame()
881 nr_node->routes[i].quality, in nr_node_show()
882 nr_node->routes[i].obs_count, in nr_node_show()
883 nr_node->routes[i].neighbour->number); in nr_node_show()
955 * Free all memory associated with the nodes and routes lists.