Fix and cleanup RPL ext header handling

This commit is contained in:
Simon Duquennoy 2016-06-13 12:04:19 +02:00
parent e584a54608
commit d73b229624
3 changed files with 68 additions and 154 deletions

View file

@ -549,7 +549,12 @@ tcpip_ipv6_output(void)
}
#if UIP_CONF_IPV6_RPL
rpl_insert_header();
if(!rpl_update_header()) {
/* Packet can not be forwarded */
PRINTF("tcpip_ipv6_output: RPL header update error\n");
uip_clear_buf();
return;
}
#endif /* UIP_CONF_IPV6_RPL */
if(!uip_is_addr_mcast(&UIP_IP_BUF->destipaddr)) {
@ -655,12 +660,6 @@ tcpip_ipv6_output(void)
/* End of next hop determination */
#if UIP_CONF_IPV6_RPL
if(!rpl_finalize_header(nexthop)) {
uip_clear_buf();
return;
}
#endif /* UIP_CONF_IPV6_RPL */
nbr = uip_ds6_nbr_lookup(nexthop);
if(nbr == NULL) {
#if UIP_ND6_SEND_NA