diff --git a/examples/ipv6/rpl-border-router/border-router.c b/examples/ipv6/rpl-border-router/border-router.c
index 3c3a60de5..9a40f84a1 100644
--- a/examples/ipv6/rpl-border-router/border-router.c
+++ b/examples/ipv6/rpl-border-router/border-router.c
@@ -57,7 +57,6 @@
uint16_t dag_id[] = {0x1111, 0x1100, 0, 0, 0, 0, 0, 0x0011};
extern uip_ds6_nbr_t uip_ds6_nbr_cache[];
-extern uip_ds6_route_t uip_ds6_routing_table[];
static uip_ipaddr_t prefix;
static uint8_t prefix_set;
@@ -149,6 +148,7 @@ static
PT_THREAD(generate_routes(struct httpd_state *s))
{
static int i;
+ static uip_ds6_route_t *r;
#if BUF_USES_STACK
char buf[256];
#endif
@@ -220,45 +220,45 @@ PT_THREAD(generate_routes(struct httpd_state *s))
#else
blen = 0;
#endif
- for(i = 0; i < UIP_DS6_ROUTE_NB; i++) {
- if(uip_ds6_routing_table[i].isused) {
+
+ for(r = uip_ds6_route_list_head(); r != NULL; r = list_item_next(r)) {
+
#if BUF_USES_STACK
#if WEBSERVER_CONF_ROUTE_LINKS
- ADD("");
- ipaddr_add(&uip_ds6_routing_table[i].ipaddr);
- ADD("");
+ ADD("ipaddr);
+ ADD("]/status.shtml>");
+ ipaddr_add(&r->ipaddr);
+ ADD("");
#else
- ipaddr_add(&uip_ds6_routing_table[i].ipaddr);
+ ipaddr_add(&r->ipaddr);
#endif
#else
#if WEBSERVER_CONF_ROUTE_LINKS
- ADD("");
- SEND_STRING(&s->sout, buf); //TODO: why tunslip6 needs an output here, wpcapslip does not
- blen = 0;
- ipaddr_add(&uip_ds6_routing_table[i].ipaddr);
- ADD("");
+ ADD("ipaddr);
+ ADD("]/status.shtml>");
+ SEND_STRING(&s->sout, buf); //TODO: why tunslip6 needs an output here, wpcapslip does not
+ blen = 0;
+ ipaddr_add(&r->ipaddr);
+ ADD("");
#else
- ipaddr_add(&uip_ds6_routing_table[i].ipaddr);
+ ipaddr_add(&r->ipaddr);
#endif
#endif
- ADD("/%u (via ", uip_ds6_routing_table[i].length);
- ipaddr_add(&uip_ds6_routing_table[i].nexthop);
- if(1 || (uip_ds6_routing_table[i].state.lifetime < 600)) {
- ADD(") %lus\n", uip_ds6_routing_table[i].state.lifetime);
- } else {
- ADD(")\n");
- }
- SEND_STRING(&s->sout, buf);
-#if BUF_USES_STACK
- bufptr = buf; bufend = bufptr + sizeof(buf);
-#else
- blen = 0;
-#endif
+ ADD("/%u (via ", r->length);
+ ipaddr_add(&r->nexthop);
+ if(1 || (r->state.lifetime < 600)) {
+ ADD(") %lus\n", r->state.lifetime);
+ } else {
+ ADD(")\n");
}
+ SEND_STRING(&s->sout, buf);
+#if BUF_USES_STACK
+ bufptr = buf; bufend = bufptr + sizeof(buf);
+#else
+ blen = 0;
+#endif
}
ADD("");