mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-01-18 12:52:44 +01:00
gnrc/nib: Expose configurations to Kconfig
This commit is contained in:
parent
64dde8f317
commit
87ac1a652d
@ -27,6 +27,9 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Apply configurations only if not using Kconfig for this module */
|
||||
#if !IS_ACTIVE(CONFIG_KCONFIG_MODULE_GNRC_IPV6_NIB) || defined(DOXYGEN)
|
||||
|
||||
/* some pseudo-module based configuration, doc: see below */
|
||||
#ifdef MODULE_GNRC_IPV6_NIB_6LBR
|
||||
#ifndef CONFIG_GNRC_IPV6_NIB_6LBR
|
||||
@ -277,6 +280,8 @@ extern "C" {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* !CONFIG_KCONFIG_MODULE_GNRC_IPV6_NIB || DOXYGEN */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -13,6 +13,7 @@ rsource "netif/Kconfig"
|
||||
rsource "network_layer/ipv6/Kconfig"
|
||||
rsource "network_layer/ipv6/blacklist/Kconfig"
|
||||
rsource "network_layer/ipv6/ext/frag/Kconfig"
|
||||
rsource "network_layer/ipv6/nib/Kconfig"
|
||||
rsource "network_layer/ipv6/whitelist/Kconfig"
|
||||
rsource "network_layer/sixlowpan/Kconfig"
|
||||
|
||||
|
121
sys/net/gnrc/network_layer/ipv6/nib/Kconfig
Normal file
121
sys/net/gnrc/network_layer/ipv6/nib/Kconfig
Normal file
@ -0,0 +1,121 @@
|
||||
# Copyright (c) 2020 HAW Hamburg
|
||||
#
|
||||
# This file is subject to the terms and conditions of the GNU Lesser
|
||||
# General Public License v2.1. See the file LICENSE in the top level
|
||||
# directory for more details.
|
||||
#
|
||||
menuconfig KCONFIG_MODULE_GNRC_IPV6_NIB
|
||||
bool "Configure GNRC IPv6 NIB"
|
||||
|
||||
if KCONFIG_MODULE_GNRC_IPV6_NIB
|
||||
|
||||
config GNRC_IPV6_NIB_6LBR
|
||||
bool "6LoWPAN border router features"
|
||||
default y if MODULE_GNRC_IPV6_NIB_6LBR
|
||||
help
|
||||
Enable 6LoWPAN Border Router (6LBR) features.
|
||||
@see https://tools.ietf.org/html/rfc6775#section-2
|
||||
|
||||
config GNRC_IPV6_NIB_6LR
|
||||
bool "6LoWPAN router features"
|
||||
default y if MODULE_GNRC_IPV6_NIB_6LR || GNRC_IPV6_NIB_6LBR
|
||||
help
|
||||
Enable 6LoWPAN Router (6LR) features.
|
||||
@see https://tools.ietf.org/html/rfc6775#section-2
|
||||
|
||||
config GNRC_IPV6_NIB_6LN
|
||||
bool "6LoWPAN node features"
|
||||
default y if MODULE_GNRC_IPV6_NIB_6LN || GNRC_IPV6_NIB_6LR
|
||||
help
|
||||
Enable 6LoWPAN Node (6LN) features.
|
||||
@see https://tools.ietf.org/html/rfc6775#section-2
|
||||
|
||||
config GNRC_IPV6_NIB_ROUTER
|
||||
bool "Router features"
|
||||
default y if MODULE_GNRC_IPV6_NIB_ROUTER || GNRC_IPV6_NIB_6LR
|
||||
|
||||
config GNRC_IPV6_NIB_SLAAC
|
||||
bool "Stateless address auto-configuration"
|
||||
default y if MODULE_GNRC_IPV6_NIB_6LBR
|
||||
default n if MODULE_GNRC_IPV6_NIB_6LR || MODULE_GNRC_IPV6_NIB_6LN
|
||||
default y
|
||||
|
||||
config GNRC_IPV6_NIB_QUEUE_PKT
|
||||
bool "Use packet queue with address resolution"
|
||||
default n if MODULE_GNRC_IPV6_NIB_6LN || GNRC_IPV6_NIB_6LN
|
||||
default y
|
||||
|
||||
config GNRC_IPV6_NIB_ARSM
|
||||
bool "Use classic NDP address resolution state-machine"
|
||||
default n if MODULE_GNRC_IPV6_NIB_6LN && !GNRC_IPV6_NIB_6LR
|
||||
default y
|
||||
|
||||
config GNRC_IPV6_NIB_DNS
|
||||
bool "Support for DNS configuration options"
|
||||
default y if MODULE_GNRC_IPV6_NIB_DNS
|
||||
|
||||
config GNRC_IPV6_NIB_ADV_ROUTER
|
||||
bool "Activate router advertising at interface start-up"
|
||||
default y if GNRC_IPV6_NIB_ROUTER && (!GNRC_IPV6_NIB_6LR || GNRC_IPV6_NIB_6LBR)
|
||||
|
||||
config GNRC_IPV6_NIB_DC
|
||||
bool "Destination cache"
|
||||
|
||||
config GNRC_IPV6_NIB_MULTIHOP_P6C
|
||||
bool "Multihop prefix and 6LoWPAN context distribution"
|
||||
default y if GNRC_IPV6_NIB_6LR
|
||||
|
||||
config GNRC_IPV6_NIB_NO_RTR_SOL
|
||||
bool "Disable router solicitations"
|
||||
help
|
||||
@warning Only set this if you know what you're doing.
|
||||
|
||||
if GNRC_IPV6_NIB_NO_RTR_SOL
|
||||
comment "Disabling router solicitations will make your host have to wait longer"
|
||||
comment "for router advertisements. This option is only meant for testing and"
|
||||
comment "experimentation and should not be activated in production."
|
||||
endif
|
||||
|
||||
config GNRC_IPV6_NIB_NUMOF
|
||||
int "Number of entries in NIB"
|
||||
default 16 if MODULE_GNRC_IPV6_NIB_6LBR
|
||||
default 1 if MODULE_GNRC_IPV6_NIB_6LN && !GNRC_IPV6_NIB_6LR
|
||||
default 4
|
||||
|
||||
config GNRC_IPV6_NIB_REACH_TIME_RESET
|
||||
int "Reset time for the reachability time (milliseconds)"
|
||||
default 7200000
|
||||
help
|
||||
@see [RFC 4861, section 6.3.4](https://tools.ietf.org/html/rfc4861#section-6.3.4).
|
||||
|
||||
config GNRC_IPV6_NIB_L2ADDR_MAX_LEN
|
||||
int "Maximum link-layer address length (aligned)"
|
||||
default 8
|
||||
|
||||
config GNRC_IPV6_NIB_DEFAULT_ROUTER_NUMOF
|
||||
int "Number of default routers in the default router list"
|
||||
default 1
|
||||
help
|
||||
@attention This number has direct influence on the maximum number of
|
||||
neighbors and duplicate address detection table entries.
|
||||
|
||||
config GNRC_IPV6_NIB_OFFL_NUMOF
|
||||
int "Number of off-link entries in NIB"
|
||||
default 8
|
||||
help
|
||||
@attention This number is equal to the maximum number of forwarding
|
||||
table and prefix list entries in NIB.
|
||||
|
||||
config GNRC_IPV6_NIB_ABR_NUMOF
|
||||
int "Number of authoritative border router entries in NIB"
|
||||
default 1
|
||||
depends on GNRC_IPV6_NIB_MULTIHOP_P6C
|
||||
help
|
||||
@warning Behavior for >2 currently not specified or tested.
|
||||
|
||||
if GNRC_IPV6_NIB_ABR_NUMOF > 2
|
||||
comment "Warning: Behavior for more than 2 Authoritative Border Router entries"
|
||||
comment "is currently not specified or tested."
|
||||
endif
|
||||
|
||||
endif # KCONFIG_MODULE_GNRC_IPV6_NIB
|
Loading…
Reference in New Issue
Block a user