Skip to content
Snippets Groups Projects
Commit 23566166 authored by Martine Lenders's avatar Martine Lenders
Browse files

gnrc_ipv6_nib: always configure 802.15.4 long address

Our `gnrc_minimal` example configures the link-local address from the
IEEE 802.15.4 short address since it does not include 6Lo-ND.
This causes the application to be incompatible with our other GNRC
application that do include 6Lo-ND, since it [assumes][1] the link-local
address to be based on the EUI-64 for address resolution.

This enforces long addresses (aka EUI-64) for all IEEE 802.15.4 devices
when IPv6 is compiled in so `gnrc_minimal` is compatible again to the
rest.

Fixes #9910

[1]: https://tools.ietf.org/html/rfc6775#section-5.2
parent a7b83e92
No related branches found
No related tags found
No related merge requests found
...@@ -112,6 +112,7 @@ void gnrc_ipv6_nib_init_iface(gnrc_netif_t *netif) ...@@ -112,6 +112,7 @@ void gnrc_ipv6_nib_init_iface(gnrc_netif_t *netif)
_init_iface_router(netif); _init_iface_router(netif);
#if GNRC_IPV6_NIB_CONF_6LN #if GNRC_IPV6_NIB_CONF_6LN
netif->ipv6.rs_sent = 0; netif->ipv6.rs_sent = 0;
#endif /* GNRC_IPV6_NIB_CONF_6LN */
if (netif->device_type == NETDEV_TYPE_IEEE802154) { if (netif->device_type == NETDEV_TYPE_IEEE802154) {
/* see https://tools.ietf.org/html/rfc6775#section-5.2 */ /* see https://tools.ietf.org/html/rfc6775#section-5.2 */
uint16_t src_len = IEEE802154_LONG_ADDRESS_LEN; uint16_t src_len = IEEE802154_LONG_ADDRESS_LEN;
...@@ -123,7 +124,6 @@ void gnrc_ipv6_nib_init_iface(gnrc_netif_t *netif) ...@@ -123,7 +124,6 @@ void gnrc_ipv6_nib_init_iface(gnrc_netif_t *netif)
* directly everything else would deadlock anyway */ * directly everything else would deadlock anyway */
netif->ops->set(netif, &opt); netif->ops->set(netif, &opt);
} }
#endif /* GNRC_IPV6_NIB_CONF_6LN */
netif->ipv6.na_sent = 0; netif->ipv6.na_sent = 0;
if (gnrc_netif_ipv6_group_join_internal(netif, if (gnrc_netif_ipv6_group_join_internal(netif,
&ipv6_addr_all_nodes_link_local) < 0) { &ipv6_addr_all_nodes_link_local) < 0) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment