1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

146 Commits

Author SHA1 Message Date
Fabian Hüßler
bc3dfd4fda gnrc/ndp: bugfix set O-flag on non anycast target 2022-03-22 13:03:28 +01:00
Martine Lenders
bec2868223
Merge pull request #17676 from benpicco/revert-gnrc_ipv6_nib-all_ifs
Revert "gnrc_ipv6_nib: consider all local interfaces when looking for…
2022-03-14 10:31:16 +01:00
Karl Fessel
d03175c2ae net/gnrc: avoid *timer creeping though header 2022-02-28 14:53:07 +01:00
Benjamin Valentin
32c89e72ef Revert "gnrc_ipv6_nib: consider all local interfaces when looking for address"
This reverts commit 8871b929ab.
2022-02-17 19:27:48 +01:00
Benjamin Valentin
0e7b8d09d5 gnrc_ipv6_nib: fix setting RIO flags
We have to use NDP_OPT_RI_FLAGS_MASK, not NDP_OPT_PI_FLAGS_MASK.
This fixes flags always being 0.
2021-10-15 15:49:13 +02:00
Martine Lenders
8492bd7b12
Merge pull request #16568 from benpicco/gnrc_ipv6_nib-rio
gnrc_ipv6_nib: handle route information option and add config to add to final RAs
2021-08-03 15:44:01 +02:00
Martine Lenders
c5a1012695
Merge pull request #16596 from JKRhb/aac-flags
sys/net/gnrc/netif: Make aac_mode a flag field
2021-06-30 13:29:44 +02:00
Jan Romann
672a86d58e
sys/net/gnrc/netif: Make aac_mode a flag field 2021-06-29 19:06:22 +02:00
Benjamin Valentin
8871b929ab gnrc_ipv6_nib: consider all local interfaces when looking for address
If a node has two interfaces A with 2001:16b8:45b5:9af8:5884:3bff:fe4f:a903
and B with 2001:16b8:45b5:9afa:5884:3bff:fe4f:a902 and receives a neighbor
solicitation on A for an address configured on interface B, answer the neighbor
solicitation instead of bailing out with

> Target address 2001:16b8:45b5:9afa:5884:3bff:fe4f:a902 is not assigned
> to the local interface
2021-06-22 15:05:09 +02:00
Benjamin Valentin
68afd9d900 gnrc_ndp: add route information option 2021-06-18 00:13:08 +02:00
Bas Stottelaar
a76cb4ea2f sys/*: ENABLE_DEBUG not needed for inttypes.h 2020-11-02 21:49:39 +01:00
Bas Stottelaar
a0979b10e7 sys/*: remove unneeded ENABLE_DEBUG 2020-10-23 11:29:57 +02:00
Bas Stottelaar
1b35d06a51 sys/*: realign ENABLE_DEBUG 2020-10-23 11:27:48 +02:00
Bas Stottelaar
80d9da90df sys/*: add missing include of assert.h 2020-10-22 11:13:09 +02:00
Bas Stottelaar
47d376c5c3 sys/*: add explicit include of timex.h 2020-10-21 21:47:31 +02:00
Martine Lenders
45144fb4a4
treewide: use new gnrc_pkt API functions instead of utlist.h macros 2020-10-13 13:32:53 +02:00
Leandro Lanzieri
e52b93cef0
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ARSM to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:07 +02:00
Leandro Lanzieri
49ec28867c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_ROUTER to 'CONFIG_' namespace
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +02:00
d4f3747705 sys/net: fix typos 2019-11-23 22:39:38 +01:00
Lasse Lueder
8a86ea4a4b use ndp_opt_rdnss_impl_t to access addresses 2019-09-26 22:08:49 +02:00
Martine S. Lenders
4231b7cd38 gnrc_ndp: use gnrc_netif_hdr_set_netif() 2019-07-25 15:48:14 +02:00
Martine Lenders
06e244c963 ndp: provide define for common hop-limit 2019-03-26 12:00:52 +01:00
Martine Lenders
cdfe8ad90c gnrc_ndp: make compilable for router without ARSM
While it is an edge case in our configuration it is technically
possible for a (6Lo) router not to maintain an address resolution state
machine. This fix allows for that with the `gnrc_ndp` module.
2018-11-26 15:53:21 +01:00
05b6af466c sys: add missig <string.h> includes 2018-09-20 23:47:40 +02:00
Martine Lenders
0ef62b9690 gnrc_ndp: add support for building RDNSS option 2018-07-05 11:01:22 +02:00
Martine Lenders
22ad3aa12e gnrc_ndp: only send RAs when VALID address is found
Otherwise, it may happen that `::` or a global address is chosen by
the IPv6 header fill function. Both types of addresses are
[not valid for RAs](https://tools.ietf.org/html/rfc4861#section-4.2)
2018-05-31 17:11:26 +02:00
4dba9ee6ba sys: net: adapt to compile-checked debug messages 2018-01-15 14:37:04 +01:00
Martine Lenders
f90a9a875f
gnrc_ndp2: rename to gnrc_ndp 2017-11-17 10:41:54 +01:00
Martine Lenders
636ef2a498
gnrc: remove legacy neighbor discovery code 2017-11-17 09:20:30 +01:00
Lucas Jenss
6998ffbb14 cppcheck: Provide consistent reason formatting for all cppcheck-suppresses 2017-10-10 10:25:20 -07:00
Cenk Gündoğan
6065be76e1 ndp: warn gcc-7 about intentional fall-through
Since gcc-7 `Wimplicit-fallthrough` is activated by using `-Wextra`.
This leads to the following problem when compiling `gnrc_networking`:

```
RIOT/sys/net/gnrc/network_layer/ndp/internal/gnrc_ndp_internal.c: In function ‘gnrc_ndp_internal_set_state’:
RIOT/sys/net/gnrc/network_layer/ndp/internal/gnrc_ndp_internal.c:106:15: error: this statement may fall through [-Werror=implicit-fallthrough=]
   t = ipv6_iface->reach_time;
  ~~^~~~~~~~~~~~~~~~~~~~~~~~
RIOT/sys/net/gnrc/network_layer/ndp/internal/gnrc_ndp_internal.c:109:9: note: here
case GNRC_IPV6_NC_STATE_DELAY:
         ^~~~
```

The fall-through in this code is intentional. There are several ways to
warn the comiler about such intentional fall-throughs, which include
e.g. attributed empty statements (`__attribute__ ((fallthrough));`).
I don't like tis approach however. The best way would probably be to
remove this fall-through from the code. However, to keep the diff
minimal, and since ndp will change in the future, I went for warning
the compiler using comments.

The compiler checks comments for several *fall through* regexs to
decide whether a fallthrough was intentional or not.

You can read more about this gcc option in [1]. A note about
fallthrough comment regexs is at the bottom of this article.

[1] https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/
2017-05-30 14:23:37 +02:00
Oleg Hahm
a9cc8babba gnrc: ndp: suppress wrong cppcheck warnings 2017-04-14 14:36:15 +02:00
Martine Lenders
2fd69653af gnrc_ndp: do not add new neighbors as TENTATIVE on 6LR 2017-01-23 14:02:26 +01:00
Oleg Hahm
4f4214235b timex: unambiguous time conversion macros 2017-01-19 13:18:08 +01:00
DipSwitch
6a484d19cb ndp: fix debug in message in gnrc_ndp_internal_send_nbr_sol 2016-10-03 11:56:22 +02:00
Martine Lenders
bd230d3b63 gnrc_ipv6: gnrc_icmpv6: use dispatch_receive helper function 2016-08-18 13:25:07 +02:00
7718f114cb all: remove pointer casts for msg.content.ptr 2016-06-02 23:13:42 +02:00
Cenk Gündoğan
1791ef5581 gnrc_ndp: check nc_entry before using it 2016-05-17 09:52:16 +02:00
Oleg Hahm
028c9d8029 Merge pull request #5139 from authmillenon/gnrc_ndp/fix/unset-isrouter-on-rtr-sol
gnrc_ndp: unset isRouter flag for neighbor sending RS
2016-03-28 19:29:33 +02:00
Martine Lenders
802136dd9a gnrc_ndp: unset isRouter flag for neighbor sending RS 2016-03-28 19:16:51 +02:00
Oleg Hahm
991c71cf27 gnrc ipv6: use ipv6_addr_t ptr for hdr_build 2016-03-23 15:20:12 +01:00
Oleg Hahm
360413a033 gnrc ipv6 hdr: remove len params from hdr_build 2016-03-23 15:20:11 +01:00
Michael Andersen
60f6aeaf70 ndp: change rtr adv src to link local 2016-03-08 21:33:35 -08:00
Michael Andersen
1082a93a42 ndp: fix neighbor advertisement byte ordering 2016-03-05 13:39:50 -08:00
Martine Lenders
0e32745b8a gnrc: replace static initializers with constants where sensible 2016-03-01 18:29:15 +01:00
ded39b461e sys: random: rename genrand_* to random_* 2016-02-29 21:33:17 +01:00
Cenk Gündoğan
0ac4ee705c ipv6: rpl: add source routing header for RPL 2016-02-27 20:39:12 +01:00
Oleg Hahm
fc398d857d ndp: fix NCE creation on RA reception
RFC4861 says: "If a Neighbor Cache entry is created for the router
[while processing route advertisements], its reachability state MUST be
set to STALE as specified in Section 7.3.3."
2016-02-18 19:53:39 +01:00
Martine Lenders
379703ae3a gnrc: use gnrc_pkt_search_type instead of LL_SEARCH_SCALAR 2016-02-11 01:05:02 +01:00
Cenk Gündoğan
d58e1385b2 ndp/internal: fix pio flags for rtr adv 2016-01-28 14:03:19 +01:00