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

157 Commits

Author SHA1 Message Date
Martine Lenders
3edb52de0c gnrc_rpl_dodag: remove new_best assignment at initialization
The variable is without usage reassigned with `dodag->parent` below.
2019-06-20 16:18:23 +02:00
42c1da8171 gnrc_rpl: update OF API
- dodag->parents already points to the preferred parent, so give dodag to calc_rank directly
 - remove unused which_parent function
2019-05-29 15:11:18 +02:00
Martine Lenders
bef475e450 gnrc_rpl_auto_init: add workaround comments 2019-02-26 20:33:07 +01:00
Martine Lenders
983b60dbd4 gnrc_rpl: do not assert netif on auto-init
`gnrc_networking` is unusable when compiled for boards that do not have
any network devices on-board due to an assertion in RPL's auto-init. I
think this is pretty harsh. A friendly info message is enough, as it
might not even be an error. Also, if one expects RPL to work without
network interfaces they are a fool ;-).
2019-01-29 17:56:58 +01:00
Martine Lenders
0a5ef011e1 gnrc_ipv6_ext_rh: add ICMPv6 error message sending 2018-12-18 19:46:27 +01:00
Martine Lenders
d8317580df gnrc_rpl_srh: uncrustify code 2018-11-23 13:56:55 +01:00
Martine Lenders
0982ab4bd6 gnrc_rpl_srh: give variables more speaking names 2018-11-23 13:56:55 +01:00
Martine Lenders
eaacda0970 gnrc_rpl_srh: move address check to own function 2018-11-23 13:56:55 +01:00
Martine Lenders
c3b0e54d82 gnrc_rpl_srh: change routing header at latest possible point 2018-11-23 13:56:55 +01:00
Martine Lenders
29ed9a0937 gnrc_rpl_srh: use memcpy() instead for address assignment 2018-11-23 13:56:54 +01:00
Martine Lenders
caeebd2787 gnrc_rpl_srh: make seg_left > 0 a precondition
The generic routing header handler is already checking this case, so
don't redo the check again.
2018-11-23 13:56:54 +01:00
Martine Lenders
61b829b656 gnrc_rpl_srh: reorder variables for better memory usage 2018-11-23 13:56:54 +01:00
Martine Lenders
84a62da102 gnrc_ipv6_ext_rh: rename GNRC_IPV6_EXT_RH_OK for clarity 2018-10-25 11:11:50 +02:00
Martine Lenders
c54ba49e82 gnrc_ipv6_ext: move ipv6_ext_rh (partly) to GNRC 2018-10-25 11:10:25 +02:00
05b6af466c sys: add missig <string.h> includes 2018-09-20 23:47:40 +02:00
Martine Lenders
3d9aad2027
Merge pull request #9854 from bergzand/pr/rpl/pass_opt_len
gnrc_rpl: Pass options length to msg validator
2018-09-03 14:20:12 +02:00
af3232fb34
gnrc_rpl: Pass options length to msg validator
Currently the length of the full ICMPv6 packet is passed to the
validator function causing validation failures on valid packets. This
fixes that by passing the length of remaining RPL options of the packet.
2018-08-29 00:47:20 +02:00
0c790c6638
gnrc_rpl: fix zeroing of RPL DIS fields
The code originally assumed that the location of DIS struct is directly
after the ICMPv6 struct. This is not necessarily true when both structs
are individually allocated by pktbuf. This commit fixes this issue by
directly accessing the location of the DIS struct.
2018-08-29 00:33:27 +02:00
Martine Lenders
0c9d7aeedc gnrc_rpl: exit early if netif_hdr is NULL in send function
Without this fix RPL might crash when the packet buffer is full.
2018-06-21 14:51:47 +02:00
Cenk Gündoğan
0c428ecb2e gnrc_rpl: remove events from the queue before memset() 2018-06-21 10:41:13 +02:00
7d013eb2b6 sys: fix doxygen grouping 2018-06-11 19:12:02 +02:00
BytesGalore
0c034c9220 rpl: add DIS Solicited Information option 2018-06-04 18:10:22 +02:00
smlng
1011803867 net/gnrc/rpl: fix doxygen grouping 2018-05-24 14:38:27 +02:00
Cenk Gündoğan
441f11ea45 gnrc_rpl: shell: adapt to evtimer for RPL events 2018-05-23 09:42:12 +02:00
Cenk Gündoğan
b819ac8d35 gnrc_rpl: adapt to evtimer for RPL events 2018-05-23 09:42:12 +02:00
Cenk Gündoğan
4c9e947d43 gnrc_rpl: adjust author and copyright 2018-05-22 23:46:55 +02:00
Martine Lenders
3d821ee195 gnrc_rpl: remove route before updating it
The "new" forwarding table does not update an old route but just adds
another as long as it is not *exactly* the same. However, the RPL
adaptation missed to remove the old route so RPL got easily confused
about where it actually needed to send packets.
2018-05-04 17:46:02 +02:00
Martine Lenders
9c84cd90b8 gnrc_rpl: allow for non-router operation (as leaf) 2018-02-23 14:26:15 +01:00
fd884c2d05 gnrc: rpl: DEBUG fix 2018-01-15 14:37:05 +01:00
4dba9ee6ba sys: net: adapt to compile-checked debug messages 2018-01-15 14:37:04 +01:00
Martine Lenders
2ae30cf582 gnrc_netif: rename IPv6 address "setters"
This renames the following functions

* `gnrc_netif_ipv6_addr_add()`
* `gnrc_netif_ipv6_addr_remove()`
* `gnrc_netif_ipv6_group_join()`
* `gnrc_netif_ipv6_group_leave()`

by appending the suffix `_internal`.

\## Reasoning

I'd like to provide a helper function for the *public* equivalent using
`gnrc_netapi_set()`, and those names are to nice to not be taken for
those.

\## Procedure
I used a combination of `git grep` and `sed` to do this and fixed the
alignment in the result of some cases by hand.

```sh
git grep --name-only "\<gnrc_netif_ipv6_\(addr\|group\)_\(add\|remove\|join\|leave\)\>" | \
        xargs sed -i 's/\<gnrc_netif_ipv6_\(addr\|group\)_\(add\|remove\|join\|leave\)/\0_internal/g'
```
2017-12-13 13:50:39 +01:00
Martine Lenders
63cc5f6751
gnrc_rpl: fix corner cases in sec/ms conversion in prefix lifetimes
Two edge cases were previously missed:

1. Infinite should stay infinite. Prefixes with infinite lifetimes
   should be advertised as such. Likewise, should prefixes with
   infinite lifetimes be added to the prefix list as such
2. Prefixes with lifetimes > (UINT32_MAX - 1) / 1000 should have the
   longest possible lifetime below infinite (UINT32_MAX - 1)

This fixes that.
2017-11-24 13:45:26 +01:00
Martine Lenders
97b0db61ca gnrc_rpl: remove redundant iface variable 2017-11-24 00:20:32 +01:00
Martine Lenders
423fc74bd2 gnrc_rpl: fix check if DODAG-ID is on interface 2017-11-24 00:20:32 +01:00
Martine Lenders
279e19fe8a gnrc_rpl: properly handle prefix list 2017-11-23 22:56:55 +01:00
3979ffcf1b gnrc_rpl: Exclude routes without next hop from DAO packets 2017-11-23 19:29:07 +01:00
Martine Lenders
ec02458c55
gnrc_rpl: fix abandoned packet bug in transit option build
Due to the transit option build function being passed a NULL pointer,
the previous transit and target options are dropped (and never freed).

This fixes #8098 and #8126.
2017-11-23 18:43:36 +01:00
Cenk Gündoğan
5b5c479043 rpl: replace fib with nib 2017-11-20 00:35:17 +01:00
Martine Lenders
31b1ceb440
gnrc_netif2: rename to gnrc_netif 2017-11-17 10:41:54 +01:00
Martine Lenders
01c21fa274
tests: make gnrc_ipv6_ext test compilable with gnrc_netif2
Test currently not working
2017-11-13 16:36:34 +01:00
Martine Lenders
861035f22d gnrc: integrate gnrc_netif2
Not link-able, since NDP and NC are missing (intentionally)
2017-11-07 19:08:44 +01:00
Lucas Jenss
6998ffbb14 cppcheck: Provide consistent reason formatting for all cppcheck-suppresses 2017-10-10 10:25:20 -07:00
426e978972 rpl: Sort list of parents 2017-08-22 16:03:16 +02:00
BytesGalore
89716729c8 Merge pull request #7161 from cgundogan/pr/trickle_enhancements
trickle: enhancements
2017-06-09 09:15:54 +02:00
Cenk Gündoğan
04d89d3381 rpl: adjust to trickle enhancements 2017-06-09 09:03:24 +02:00
Cenk Gündoğan
6add982d3f rpl: send dis near parent timeout 2017-06-08 21:46:06 +02:00
Cenk Gündoğan
3921fc86a7 Merge pull request #6901 from BytesGalore/rpl_drop_dao_ack_on_mc
rpl: drop DAO-ACK when received via multicast
2017-05-30 21:28:58 +02:00
BytesGalore
da38b77ba4 rpl: drop DAO-ACK when received on multicast 2017-05-30 18:05:00 +02:00
0fcc7d3834 cleanup: apply headerguard script output 2017-05-24 17:54:02 +02:00
smlng
41c43fd837 rpl: make parent lifetime consistent with other timers 2017-04-25 20:09:41 +02:00