1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
Commit Graph

489 Commits

Author SHA1 Message Date
Benjamin Valentin
ff52d35584 gnrc_ipv6_nib: use static DNS server from auto_init_sock_dns if present 2023-01-27 19:15:13 +01:00
Benjamin Valentin
acf2074369 examples/gnrc_border_router: static: use router from advertisements by default 2023-01-27 18:01:00 +01:00
bors[bot]
211db05401
Merge #18477 #19101 #19155
18477: gnrc_static: add static network configuration r=miri64 a=benpicco



19101: CI: update check-labels-action r=miri64 a=kaspar030



19155: Revert "sys/pm_layered: pm_(un)block add attribute optimize(3)" r=maribu a=Teufelchen1

Revert "sys/pm_layered: pm_(un)block add attribute optimize(3) -shortens hotpath"

This reverts commit 5447203921.

### Contribution description

Compiling `examples/gnrc_networking_mac` using `TOOLCHAIN=llvm` yields the following error:
```
RIOT/sys/pm_layered/pm.c:77:16: error: unknown attribute 'optimize' ignored [-Werror,-Wunknown-attributes]
__attribute__((optimize(3)))
```
As indicated, this is because the attribute `optimize` is GCC only and not present in LLVM.
Compare the manpages of [GCC](https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html) and [LLVM](https://clang.llvm.org/docs/AttributeReference.html).


### Testing procedure

Since this should only affect performance and not behavior, no special testing is needed. I am not aware of any tests in RIOT which could verify that assumption.

### Issues/PRs references

Introduced in #18846

There is another instance of this attribute being used in[ shell_lock.c](6fb340d654/sys/shell_lock/shell_lock.c (L80)). Since the usage is security related, I omit it from this PR.


Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
Co-authored-by: Teufelchen1 <bennet.blischke@haw-hamburg.de>
2023-01-16 14:03:15 +00:00
Benjamin Valentin
64a2fbcebd gnrc_ipv6_nib: clean up _resolve_addr() 2023-01-09 14:04:47 +01:00
Benjamin Valentin
249901bc96 gnrc_static: add static network configuration 2022-12-11 23:34:09 +01:00
Benjamin Valentin
2e2414cef6 gnrc_ipv6_nib: factor out enqueue on resolve 2022-11-20 21:00:40 +01:00
Benjamin Valentin
0886ad4840 gnrc_ipv6_nib: factor out resolve from nc 2022-11-20 20:46:31 +01:00
Teufelchen1
64b4d433b9 gnrc: Fix unused function error when using LLVM 2022-11-06 15:39:39 +00:00
Benjamin Valentin
fa4fb8e3bf gnrc_ipv6_nib: add debug output when nib is full on address resolution 2022-10-25 18:21:57 +02:00
Martine Lenders
ab32ad5030
gnrc_ipv6_nib: auto-configure link-local address on UP event 2022-10-11 22:57:00 +02:00
Martine Lenders
47aaa94157
gnrc_ipv6_nib: handle iface_up/iface_down in IPv6 thread 2022-10-07 14:12:00 +02:00
Fabian Hüßler
23fa33774f nib/_nib-6ln: correct ABR timeout in ABRO 2022-09-29 10:48:49 +02:00
Benjamin Valentin
7211aa11af ipv6/nib: add gnrc_ipv6_nib_iface_{up, down}() 2022-09-16 22:57:06 +02:00
Karl Fessel
05f114d0af doc: fix unbalaced grouping
- most were trivial
    - missing group close or open
    - extra space
    - no doxygen comment
- name commad might open an implicit group
    this hould also be implicit cosed but does not happen somtimes
- crazy: internal declared groups have to be closed internal
2022-09-14 15:05:25 +02:00
Benjamin Valentin
f6cef270c2 gnrc_ipv6_nib: use correct DHCPv6 client module name
`MODULE_GNRC_DHCPV6_CLIENT_IA_PD` does not exist, the correct module name
is `MODULE_DHCPV6_CLIENT_IA_PD`.
2022-08-05 12:52:22 +02:00
Martine Lenders
fe3d620a63
gnrc_ipv6_nib: make configurable via Kconfig again 2022-07-22 17:51:57 +02:00
Marian Buschsieweke
973b6f69bf
sys/net/netopt: change NETOPT_STATS semantics
Instead of retrieving a pointer with NETOPT_STATS, retrieve the current
data. This avoids data corruptions when reading from one thread (e.g.
the thread running the shell (ifconfig command)) while another thread
is updating it (e.g. the netif thread).

The issue affects all boards, as users typically expect the count of
TX packets and the number of TX bytes to refer to the same state. For
16 bit and 8 bit platforms even a single netstat entry can read back
corrupted.

This fixes the issue by just copying the whole netstat_t struct over
without requiring explicit locking on the user side. A multi-threaded
network stack still needs to synchronize the thread responding to
netopt_get with the thread writing to the netstat_t structure, but that
is an implementation detail no relevant to the user of the API.
2022-06-28 16:57:43 +02:00
Martine Lenders
a5cc629fb8
Merge pull request #18127 from benpicco/gnrc/nib-no_default_router_from_wpan
gnrc/nib: don't add routers from WPAN as default router on the 6LBR
2022-05-24 00:38:43 +02:00
Benjamin Valentin
f544890056 gnrc/nib: don't add routers from WPAN as default router for 6LBR
This avoids a race condition where the default router slots for the 6LBR
are used up by router advertisements from the 6Lo network that arrived
before router advertisements from the upstream network.

The border router should ignore 'default routers' from the 6Lo network as
it consitutes the uplink for that network.
2022-05-23 16:44:58 +02:00
Martine Lenders
3398898e76
gnrc_ipv6_nib: fix inconsistent ABR valid lifetime representation 2022-05-23 14:21:25 +02:00
fabian18
5643b52879
Merge pull request #17814 from fabian18/bugfix_nib_sllao_in_NS_6LR
ipv6/nib: bugfix handle SLLAO on 6LR if ARO is not present
2022-04-18 17:54:04 +02:00
Fabian Hüßler
560e43ae56 ipv6/nib: bugfix handle SLLAO on 6LR if ARO is not present 2022-04-18 00:09:53 +02:00
benpicco
3e03fe669a
Merge pull request #17600 from benpicco/gnrc/nib-ra_on_ra
gnrc/nib: only enable RTR_ADV on RA if MULTIHOP_P6C is enabled
2022-04-13 18:44:10 +02:00
Fabian Hüßler
2139b51cb5 gnrc/nib: only enable RTR_ADV on RA if MULTIHOP_P6C is enabled
If multihop distribution is not done using RA messages, then the
routers follow [RFC4861], which states that they merely do some
consistency checks; in this case, nothing in Section 8.1 applies.

 - https://datatracker.ietf.org/doc/html/rfc6775#section-8.1
2022-04-13 00:20:52 +02:00
fabian18
c0f26fcaaa
Merge pull request #17803 from benpicco/gnrc/ipv6/nib-adv_address
gnrc/nib: don't advertise single address for auto-configuration
2022-03-29 10:49:54 +02:00
Fabian Hüßler
77cbe15b1d ipv6/nib: bugfix of 6CO length checking 2022-03-24 10:06:56 +01:00
Benjamin Valentin
15f210e4e4 gnrc/nib: don't advertise /128 prefix for auto-configuration
A single IP address will be added as a /128 prefix.
It makes sense to advertise it, as neighbors can then know that
the address/prefix is on-link.

It does however not make sense to advertise the prefix as suitable
for auto-configuration.

Co-authored-by: Fabian Hüßler <fabian.huessler@st.ovgu.de>
2022-03-22 20:52:38 +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
benpicco
a9456b6935
Merge pull request #17741 from fabian18/bugfix-NIB_handle_rtr_timeout
ipv6/nib: fix memcpy() bug in _handle_rtr_timeout()
2022-03-07 13:39:05 +01:00
Fabian Hüßler
6916f72419 ipv6/nib: fix memcpy() bug in _handle_rtr_timeout 2022-03-03 23:35:06 +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
Karl Fessel
505ce8481b gnrc/ipv6nib: remove the need for evtimer-minutes
gnrc/nib: add unitmarker to valid_untils that where min and are now ms
2022-01-13 15:17:24 +01:00
Gunar Schorcht
8c044c0163 gnrc/ipv6_ext_opt: fix compilation with NDEBUG 2021-12-09 16:44:19 +01:00
Martine Lenders
e804a738de
Merge pull request #16947 from miri64/gnrc_ipv6_nib/fix/queue-pkts-on-6lbr
gnrc_ipv6_nib: queue packets that trigger probing on border router
2021-10-05 14:01:17 +02:00
Martine Lenders
96eb2c5050
Merge pull request #16731 from JKRhb/dhcp-stateless
sys/net/dhcpv6: Add stateless DHCPv6
2021-10-05 10:13:22 +02:00
Jan Romann
c62d6eb834
sys/net/dhcpv6: Implement stateless DHCPv6 2021-10-04 17:40:56 +02:00
Martine Lenders
b8691842fb
gnrc_ipv6_nib: queue packets that trigger probing on border router 2021-10-04 17:25:36 +02:00
Benjamin Valentin
f4828cc7ae gnrc_ipv6_nib: add hook for Prefix Information Option 2021-09-02 15:35:14 +02:00
Martine Lenders
eace9495b4
Merge pull request #16729 from benpicco/_nib_offl_remove_prefix
gnrc/nib: consolidate prefix removal code in _nib_offl_remove_prefix()
2021-08-26 19:17:21 +02:00
Benjamin Valentin
10887ebb19 gnrc/nib: consolidate prefix removal code in _nib_offl_remove_prefix() 2021-08-25 17:23:21 +02:00
benpicco
3d0e5509dc
Merge pull request #16734 from benpicco/_handle_rio-ltime
gnrc_ipv6_nib: handle route information option with ltime = 0
2021-08-24 10:20:02 +02:00
Benjamin Valentin
0ead10e79a gnrc_ipv6_nib: handle route information option with ltime = 0 2021-08-13 21:35:48 +02:00
Jan Romann
4384795cb9
treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
Martine Lenders
f2f6700865
Merge pull request #16228 from JKRhb/dhcp-ia-na
sys/net/dhcpv6: Add IA_NA support to the DHCPv6 client
2021-08-11 20:50:01 +02:00
Jan Romann
234a71870a
sys/net/dhcpv6: Add IA_NA implementation 2021-08-11 19:15:35 +02:00
Martine Lenders
de3e5f964a
Merge pull request #16671 from benpicco/gnrc/nib-_nib_onl_get-fix
gnrc/nib: gnrc_ipv6_nib_get_next_hop_l2addr(): only assume neighbor cache entries to always be on-link
2021-08-11 12:17:38 +02:00
Martine Lenders
c86bd7454c
Merge pull request #16557 from benpicco/gnrc_ipv6_nib-fib_on-link
gnrc_ipv6_nib: consider largest prefix match when deciding if host on-link
2021-08-09 18:53:40 +02:00
Benjamin Valentin
452500b3eb gnrc_ipv6_nib: consider largest prefix match when deciding if host on-link
If the fib contains a route to a subnet via another host, it can not
be on-link.

Consider fib entries when deciding whether an address is on-link.
If a route via another host is a stronger match than an on-link
prefix, the address must be off-link.
2021-08-09 16:57:14 +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