Inserts missing IPv6 Hop-By-Hop RPL Option at first hop
This commit is contained in:
parent
a07d332339
commit
78e807403c
|
@ -343,4 +343,16 @@ rpl_invert_header(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
rpl_insert_header(void)
|
||||||
|
{
|
||||||
|
uint8_t uip_ext_opt_offset;
|
||||||
|
if(default_instance != NULL) {
|
||||||
|
uip_ext_opt_offset = 2;
|
||||||
|
if(UIP_EXT_HDR_OPT_BUF->type == UIP_EXT_HDR_OPT_RPL) {
|
||||||
|
rpl_update_header_empty();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
#endif /* UIP_CONF_IPV6 */
|
#endif /* UIP_CONF_IPV6 */
|
||||||
|
|
|
@ -240,6 +240,7 @@ rpl_instance_t *rpl_get_instance(uint8_t instance_id);
|
||||||
void rpl_update_header_empty(void);
|
void rpl_update_header_empty(void);
|
||||||
int rpl_update_header_final(uip_ipaddr_t *addr);
|
int rpl_update_header_final(uip_ipaddr_t *addr);
|
||||||
int rpl_verify_header(int);
|
int rpl_verify_header(int);
|
||||||
|
void rpl_insert_header(void);
|
||||||
void rpl_remove_header(void);
|
void rpl_remove_header(void);
|
||||||
uint8_t rpl_invert_header(void);
|
uint8_t rpl_invert_header(void);
|
||||||
uip_ipaddr_t *rpl_get_parent_ipaddr(rpl_parent_t *nbr);
|
uip_ipaddr_t *rpl_get_parent_ipaddr(rpl_parent_t *nbr);
|
||||||
|
|
|
@ -1557,6 +1557,10 @@ uip_process(uint8_t flag)
|
||||||
|
|
||||||
uip_appdata = &uip_buf[UIP_LLH_LEN + UIP_IPTCPH_LEN];
|
uip_appdata = &uip_buf[UIP_LLH_LEN + UIP_IPTCPH_LEN];
|
||||||
|
|
||||||
|
#if UIP_CONF_IPV6_RPL
|
||||||
|
rpl_insert_header();
|
||||||
|
#endif /* UIP_CONF_IPV6_RPL */
|
||||||
|
|
||||||
#if UIP_UDP_CHECKSUMS
|
#if UIP_UDP_CHECKSUMS
|
||||||
/* Calculate UDP checksum. */
|
/* Calculate UDP checksum. */
|
||||||
UIP_UDP_BUF->udpchksum = ~(uip_udpchksum());
|
UIP_UDP_BUF->udpchksum = ~(uip_udpchksum());
|
||||||
|
|
Loading…
Reference in a new issue