Skip to content

Commit

Permalink
Merge pull request #9732 from miri64/2018.07/gnrc_ipv6_nib/enh/emit-conf
Browse files Browse the repository at this point in the history
gnrc_ipv6_nib: make automatic NDP packet emission (NS/RS) configurable [backport 2018.07]
  • Loading branch information
cladmi authored Aug 7, 2018
2 parents 41eb47d + 434c635 commit 0ca6dce
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 1 deletion.
9 changes: 9 additions & 0 deletions sys/include/net/gnrc/ipv6/nib/conf.h
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,15 @@ extern "C" {
#define GNRC_IPV6_NIB_CONF_REACH_TIME_RESET (7200000U)
#endif

/**
* @brief Disable router solicitations
*
* @warning Only do this if you know what you're doing
*/
#ifndef GNRC_IPV6_NIB_CONF_NO_RTR_SOL
#define GNRC_IPV6_NIB_CONF_NO_RTR_SOL (0)
#endif

/**
* @brief Maximum link-layer address length (aligned)
*/
Expand Down
2 changes: 1 addition & 1 deletion sys/net/gnrc/network_layer/ipv6/nib/_nib-slaac.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@
#define ENABLE_DEBUG (0)
#include "debug.h"

#if GNRC_IPV6_NIB_CONF_6LN || GNRC_IPV6_NIB_CONF_SLAAC
static char addr_str[IPV6_ADDR_MAX_STR_LEN];

#if GNRC_IPV6_NIB_CONF_6LN || GNRC_IPV6_NIB_CONF_SLAAC
void _auto_configure_addr(gnrc_netif_t *netif, const ipv6_addr_t *pfx,
uint8_t pfx_len)
{
Expand Down
4 changes: 4 additions & 0 deletions sys/net/gnrc/network_layer/ipv6/nib/nib.c
Original file line number Diff line number Diff line change
Expand Up @@ -1227,6 +1227,7 @@ static void _handle_rtr_timeout(_nib_dr_entry_t *router)

void _handle_search_rtr(gnrc_netif_t *netif)
{
#if !GNRC_IPV6_NIB_CONF_NO_RTR_SOL
gnrc_netif_acquire(netif);
if (!(gnrc_netif_is_rtr_adv(netif)) || gnrc_netif_is_6ln(netif)) {
uint32_t next_rs = _evtimer_lookup(netif, GNRC_IPV6_NIB_SEARCH_RTR);
Expand All @@ -1249,6 +1250,9 @@ void _handle_search_rtr(gnrc_netif_t *netif)
}
}
gnrc_netif_release(netif);
#else
(void)netif;
#endif /* !GNRC_IPV6_NIB_CONF_NO_RTR_SOL */
}

#if GNRC_IPV6_NIB_CONF_DNS
Expand Down
4 changes: 4 additions & 0 deletions tests/gnrc_netif/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ USEMODULE += netdev_ieee802154
USEMODULE += netdev_test
USEMODULE += od

# deactivate automatically emitted packets from IPv6 neighbor discovery
CFLAGS += -DGNRC_IPV6_NIB_CONF_ARSM=0
CFLAGS += -DGNRC_IPV6_NIB_CONF_SLAAC=0
CFLAGS += -DGNRC_IPV6_NIB_CONF_NO_RTR_SOL=1
CFLAGS += -DGNRC_NETIF_NUMOF=4
CFLAGS += -DGNRC_NETIF_ADDRS_NUMOF=16
CFLAGS += -DGNRC_NETIF_GROUPS_NUMOF=8
Expand Down

0 comments on commit 0ca6dce

Please sign in to comment.