gnrc_ipv6_nib: make configurable via Kconfig again#18360
gnrc_ipv6_nib: make configurable via Kconfig again#18360maribu merged 1 commit intoRIOT-OS:masterfrom
Conversation
maribu
left a comment
There was a problem hiding this comment.
ACK, trusting your reasoning and testing
| (!CONFIG_GNRC_IPV6_NIB_6LR || CONFIG_GNRC_IPV6_NIB_6LBR) && \ | ||
| !(IS_USED(MODULE_GNRC_DHCPV6_CLIENT_IA_PD) || IS_USED(MODULE_GNRC_UHCPC) || \ | ||
| IS_USED(MODULE_GNRC_IPV6_AUTO_SUBNETS)) | ||
| #define CONFIG_GNRC_IPV6_NIB_ADV_ROUTER 1 |
There was a problem hiding this comment.
Does it ever make sense to send router advertisements before having a prefix to advertise?
There was a problem hiding this comment.
Yes, if you do not have any prefixes in your network or don't want to use SLAAC, e.g.
There was a problem hiding this comment.
Also just supplanting the CFLAGS from the Makefile.dep to the correct place...
There was a problem hiding this comment.
Not objecting the PR, just wondering - because this regularly bites me when I flash examples/gnrc_networking and wonder why it takes so long to get a prefix, only to remember that I have to manually set -rtr_adv so the node sends router solicitations.
There was a problem hiding this comment.
Not objecting the PR, just wondering - because this regularly bites me when I flash
examples/gnrc_networkingand wonder why it takes so long to get a prefix, only to remember that I have to manually set-rtr_advso the node sends router solicitations.
You could also just use a non-routing host application, such as examples/gcoap or remove the _router in gnrc_ipv6_router_default in the application's Makefile ;-). The problem here isn't that the router tries to advertise, it is that you are using a router when you really want a non-routing host ;-).
|
|
||
| config GNRC_IPV6_NIB_ADD_RIO_IN_LAST_RA | ||
| bool "Include a Route Information Option for subnets" | ||
| default y if USEMODULE_GNRC_IPV6_AUTO_SUBNETS |
There was a problem hiding this comment.
| default y if USEMODULE_GNRC_IPV6_AUTO_SUBNETS | |
| select MODULE_GNRC_IPV6_NIB_RIO | |
| default y if USEMODULE_GNRC_IPV6_AUTO_SUBNETS |
There was a problem hiding this comment.
Mhhh for that we would need dependency handling in Kconfig for GNRC ;-). We don't have that yet. Setting MODULE_GNRC_IPV6_NIB_RIO only would set the symbol MODULE_GNRC_IPV6_NIB_RIO to true AFAIK. Also, the right way to do it with Kconfig would be depends, otherwise you get cascading effects ;-).
There was a problem hiding this comment.
But maybe @leandrolanzieri can clear this up.
34aa471 to
fe3d620
Compare
|
Backport provided in #18362 |
Contribution description
Some CFLAGS snuck into the
Makefile.depof GNRC which makes it impossible to configuregnrc_ipv6_nibvia Kconfig. As an added bonus I added the symbolCONFIG_GNRC_IPV6_NIB_ADD_RIO_IN_LAST_RAwhich was also induced via CFLAGS in GNRC'sMakefile.depto the Kconfig configuration.Testing procedure
I noticed this by increasing the size of the forwarding table for the border router (e.g. to allow for large networks with RPL storing mode). I added
examples/gnrc_border_router/app.configwith contentTrying to
make -C examples/gnrc_border_routerwill get you a bunch of these error messages in current master:This PR fixes that.
Issues/PRs references
None