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

2325 Commits

Author SHA1 Message Date
Benjamin Valentin
b7a5261508 sys/net/grnc/netreg: avoid creating an infinite loop 2023-02-02 17:56:19 +01:00
Gunar Schorcht
e7d0fbbc71 sys/net/gnrc/netif: add tinyUSB netdev to auto_init 2023-02-01 21:58:01 +01:00
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
Martine Lenders
914ca26bc7
gnrc_sixlowpan_frag_sfr_congure_sfr: initial import 2023-01-20 08:25:11 +01:00
bors[bot]
d11a358b1d
Merge #18472 #19175
18472: drivers/mrf24j40: add support for IEEE 802.15.4 Radio HAL r=benpicco a=jia200x



19175: drivers/periph_common/flashpage: fix silent error r=benpicco a=Enoch247

### Contribution description

This patch removes a test that silently hides failed writes to NULL. Instead, assert is used to ensure that the address is not NULL.


### Testing procedure

I am not certain how to update the tests to catch asserts. If this is possible, I will add a test, if someone will point me to a good example to learn from.


### Issues/PRs references

- none


Co-authored-by: Jose Alamos <jose@alamos.cc>
Co-authored-by: Joshua DeWeese <jdeweese@primecontrols.com>
2023-01-19 18:17:13 +00:00
Jose Alamos
91a299cb7d
drivers/mrf24j40: add support for IEEE 802.15.4 Radio HAL 2023-01-19 15:31:06 +01:00
Benjamin Valentin
f6c1ab35a3 gnrc_icmpv6_echo: implement gnrc_icmpv6_echo_{send, req_handle}() 2023-01-18 14:47:24 +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
bors[bot]
385569c7bf
Merge #17810 #18348 #19120
17810: drivers/slipdev: implement sleep states r=benpicco a=benpicco



18348: sys/net/gnrc/pktbuf_static: make use of alignas() r=maribu a=maribu

### Contribution description

Since we are now using C11, we can make use of `alignas()` provided by `<stdalign.h>` to make the alignment code easier to read.

### Testing procedure

I didn't expect this to change binaries, but is safes 4 bytes. `elf_diff` shows that the compiler (at least GCC 11.3.0) was not able to detect that `gnrc_pktbuf_static_buf` was just an alias for `_pktbuf_buf`. That makes sense since it would be hard without LTO to rule out external writes to `gnrc_pktbuf_static_buf`, unless one would have added a `const` (to the pointer, not to the data the pointer points to).

The [output of `elf_diff`](https://mari-bu.de/pr_18348_gnrc_pktbuf_static_elf_diff.html) looks otherwise quite unscary.

Also:

```
$ make BOARD=nucleo-f767zi -C tests/unittests/ tests-pktbuf flash test
make: Entering directory '/home/maribu/Repos/software/RIOT/tests/unittests'
Building application "tests_unittests" for "nucleo-f767zi" with MCU "stm32".
[...]
Welcome to pyterm!
Type '/exit' to exit.
READY
s
START
.............................................
OK (45 tests)

make: Leaving directory '/home/maribu/Repos/software/RIOT/tests/unittests'
```

### Issues/PRs references

None

19120: CI: seperate check-labels and check-commits workflows r=maribu a=kaspar030



Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2023-01-10 15:44:57 +00:00
bors[bot]
53176f7b9e
Merge #18134 #18738 #18939 #19118
18134: nanocoap_link_format: add helper function to parse Link Format r=kaspar030 a=benpicco



18738: nanocoap_sock: implement nanocoap_sock_delete() r=maribu a=benpicco



18939: gnrc_ipv6_nib: clean up _resolve_addr() r=maribu a=benpicco



19118: sys/ztimer: ztimer_mock: guard ztimer_ondemand static functions r=kaspar030 a=kaspar030



Co-authored-by: Benjamin Valentin <benpicco@beuth-hochschule.de>
Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Benjamin Valentin <benjamin.valentin@bht-berlin.de>
Co-authored-by: Kaspar Schleiser <kaspar@schleiser.de>
2023-01-10 11:25:32 +00:00
Benjamin Valentin
64a2fbcebd gnrc_ipv6_nib: clean up _resolve_addr() 2023-01-09 14:04:47 +01:00
Marian Buschsieweke
86fdbd7054
core/lib: Add macros/utils.h header
The macros CONCAT(), MIN(), and MAX() are defined over and over again in
RIOT's code base. This de-duplicates the code by moving the macros to a
common place.
2023-01-07 09:47:44 +01:00
Benjamin Valentin
249901bc96 gnrc_static: add static network configuration 2022-12-11 23:34:09 +01:00
Marian Buschsieweke
747ee9d56f
sys/net/grnc/netreg: avoid freeing wild pointers
When freeing any stale pktsnips from stale messages in the mbox, make
sure that the messages actually contains a pktsnip before freeing.
2022-11-22 17:57:44 +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
Benjamin Valentin
7e91d91cea gnrc_tcp: replace RIOT_FILE_RELATIVE with __FILE__ 2022-11-19 01:48:42 +01:00
Benjamin Valentin
442644ba93 gnrc_sock_udp: style fix in sock_udp_recv_buf_aux() 2022-11-15 20:35:20 +01:00
benpicco
e710b6f07c
Merge pull request #18854 from benpicco/gnrc_sock_udp-_remote_mismatch
gnrc_sock_udp: accept response from any address if remote is multicast
2022-11-15 20:33:58 +01:00
Benjamin Valentin
2b92e9ec59 gnrc_sock_udp: accept response from any address if remote is multicast 2022-11-15 11:26:31 +01:00
Benjamin Valentin
5a3045117e gnrc_sock_udp: make 'remote match' condition more readable 2022-11-07 16:35:57 +01:00
Teufelchen1
64b4d433b9 gnrc: Fix unused function error when using LLVM 2022-11-06 15:39:39 +00:00
Marian Buschsieweke
d704a1a805
Merge pull request #18822 from jue89/feature/at86rf2xx_ztimer
drivers/at86rf2xx: migrate to ztimer
2022-10-31 15:44:53 +01:00
Jue
0dc054cbda sys/net/gnrc_lwmac: add missing xtimer dependency 2022-10-29 21:04:28 +02:00
Martine Lenders
36a099e1ec
gnrc_sixlowpan_iphc.c: dereference ipv6_hdr in DEBUG() after assignment 2022-10-29 00:58:35 +02:00
Felix
aa27ed71fa
gnrc_sixlowpan_frag_vrb: Assert no usage of a vrb with src_len == 0 2022-10-29 00:58:35 +02:00
Felix
17c70f7ee0
gnrc_netif_ieee802154: Ignore packets without source address 2022-10-29 00:58:35 +02:00
Martine Lenders
4a081f8661
gnrc_sixlowpan_iphc: fix packet type confusion in _iphc_encode() 2022-10-29 00:58:34 +02:00
Felix
639c04325d
gnrc_sixlowpan_iphc: fix null pointer dereference in _iphc_encode() 2022-10-29 00:58:34 +02:00
Martine Lenders
9728f727e7
gnrc_sixlowpan_frag_rb: fix integer underflow in _6lo_frag_size() 2022-10-29 00:58:34 +02:00
Martine Lenders
2709fbd827
gnrc_sixlowpan_iphc: fix integer underflow in gnrc_sixlowpan_iphc_recv() 2022-10-29 00:58:33 +02:00
Martine Lenders
73615161c0
gnrc_sixlowpan_iphc: fix buffer overflow in gnrc_sixlowpan_iphc_recv() 2022-10-29 00:58:14 +02:00
Martine Lenders
9ae66beedf
Merge pull request #16156 from miri64/gnrc_sixlowpan_frag_sfr/feat/congure
gnrc_sixlowpan_frag_sfr: provide CongURE support
2022-10-27 15:01:07 +02:00
benpicco
4ebece5d34
Merge pull request #18801 from benpicco/gnrc_nib_full-debug
gnrc_ipv6_nib: add debug output when nib is full on address resolution
2022-10-27 12:49:29 +02:00
Benjamin Valentin
b068bd31c2 gnrc/ipv6_auto_subnets: add CONFIG_GNRC_IPV6_AUTO_SUBNETS_STATIC option
In situations with high packet loss, if all sync packets are lost, conflicting
subnets will be configured.

If the network is static, this can be prevented by always using the highest number
of subnets that has been observed.

This assumes no nodes are physically added / removed from the network.
2022-10-25 19:46:42 +02:00
Martine Lenders
b92e90f7b5
gnrc_sixlowpan_frag_sfr: make ARQ timer mockable 2022-10-25 18:38:37 +02:00
Martine Lenders
30f990f789
gnrc_sixlowpan_frag_sfr: provide CongURE support 2022-10-25 18:38:36 +02: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
53ed211fc9
Merge pull request #16175 from miri64/gnrc_sixlowpan_frag_sfr/enh/mark-ecn
gnrc_sixlowpan_frag_sfr: add support for queue-based ECN
2022-10-15 14:01:44 +02:00
Martine Lenders
c94c32dce4
Merge pull request #18727 from miri64/gnrc/enh/explicit-pseudomodules
gnrc: make pseudo-modules explicit + documentation improvements
2022-10-14 17:39:39 +02:00
chrysn
982ec4dcda
gnrc_netreg: Use locks around netreg
This eliminates race conditions around unregistering netdevs.

gnrc_netreg_lookup-style functions perform a DEVELHELP check on whether
that lock is held.
2022-10-14 03:35:15 +02:00
Marian Buschsieweke
b539d7ad6d
Merge pull request #17905 from benpicco/GNRC_NETIF_STACKSIZE_DEFAULT
gnrc_netif: don't allocate message queue on the stack
2022-10-13 17:10:43 +02:00
Martine Lenders
8dcc5d07ba
gnrc_sixlowpan_config: resolve ECN at the earliest convenience 2022-10-12 18:02:18 +02:00
Martine Lenders
653d08281b
gnrc_sixlowpan_frag_sfr: add support for queue-based ECN 2022-10-12 18:02:18 +02:00
Martine Lenders
774ca13563
gnrc_nettype: reorder gnrc_nettype_t to fit the grouping again 2022-10-12 11:23:16 +02:00
Martine Lenders
5f504ad70d
gnrc_netif_lorawan: add debug message for failed send 2022-10-11 22:57:00 +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
f34f296242
gnrc_netif_lorawan: add support for LINK_UP/_DOWN events 2022-10-11 12:29:11 +02:00
benpicco
988039b351
Merge pull request #18708 from miri64/gnrc_ipv6_nib/enh/handle-up-down-in-gnrc_ipv6
gnrc_ipv6_nib: handle iface_up/iface_down in IPv6 thread
2022-10-10 20:26:42 +02:00
Martine Lenders
47aaa94157
gnrc_ipv6_nib: handle iface_up/iface_down in IPv6 thread 2022-10-07 14:12:00 +02:00
Marian Buschsieweke
fd80c53a35
sys/shell/cmds: fix shell_cmd_netif LoRaWAN integration
Model the LoRaWAN integration to GNRC's netif command (ifconfig) as
submodule of it, namely `shell_cmd_gnrc_netif_lorawan`.

This should fix a regression introduced by
https://github.com/RIOT-OS/RIOT/pull/18355
2022-10-04 23:06:03 +02:00
José Alamos
f022ac3e23
Merge pull request #17884 from Ollrogge/gnrc_lorawan1.1
gnrc/lorawan: add basic LoRaWAN 1.1 features
2022-09-30 11:29:55 +02:00
benpicco
6257e328c0
Merge pull request #18661 from fabian18/nib-6ln_correct_abr_timeout
nib/_nib-6ln: correct ABR timeout in ABRO
2022-09-29 17:25:06 +02:00
Ollrogge
32cef708a7 gnrc/lorawan: uncrustify files 2022-09-29 11:26:04 +02:00
Ollrogge
12a4e1c1ec gnrc/lorawan: add support for GNRC LoRaWAN 1.1 2022-09-29 11:25:56 +02:00
Fabian Hüßler
23fa33774f nib/_nib-6ln: correct ABR timeout in ABRO 2022-09-29 10:48:49 +02:00
Marian Buschsieweke
77731c5f7b
treewide: s/gnrc_pktbuf_cmd/shell_cmd_gnrc_pktbuf/
Replace the deprecated module gnrc_pktbuf_cmd with the new
shell_cmd_gnrc_pktbuf module.
2022-09-24 14:50:43 +02:00
benpicco
f03f5384c1
Merge pull request #18355 from maribu/sys/shell/cmds
sys/shell: make cmds submodules and add KConfig modeling
2022-09-19 21:07:23 +02:00
Benjamin Valentin
b1ea963df4 gnrc_netif: introduce GNRC_NETIF_STACKSIZE_DEFAULT 2022-09-18 18:35:21 +02:00
Marian Buschsieweke
8457f09dde
Merge pull request #18139 from maribu/sys/net/gnrc/netif/confirm_send
sys/net/gnrc_netif: Make use of confirm send
2022-09-17 19:40:24 +02:00
Benjamin Valentin
4b0bfae4ca gnrc_netif: handle NETDEV_EVENT_LINK_UP/DOWN events 2022-09-16 22:57:06 +02:00
Benjamin Valentin
7211aa11af ipv6/nib: add gnrc_ipv6_nib_iface_{up, down}() 2022-09-16 22:57:06 +02:00
Benjamin Valentin
6e7d5ae2d3 codespell: fix remaining issues 2022-09-16 14:00:35 +02:00
Marian Buschsieweke
c06335b71b
sys/shell: make cmds submodules
Previously `shell_commands` was a "catch-all" module that included
shell commands for each and every used module that has a shell
companion. Instead, the new `shell_cmds` module is now used to provide
shell commands as individually selectable submodules, e.g.
`cmd_gnrc_icmpv6_echo` now provides the ICMPv6 echo command (a.k.a.
ping).

To still have a "catch all" module to pull in shell commands of modules
already used, `shell_cmds_default` was introduced. `shell_commands`
depends now on `shell_cmds_default` for backward compatibility, but
has been deprecated. New apps should use `shell_cmds_default`
instead.

For a handful of shell commands individual selection was already
possible. Those modules now depend on the corresponding `cmd_%` module
and they have been deprecated.
2022-09-16 13:15:45 +02:00
Marian Buschsieweke
581f35e577
sys/net/gnrc/netif: adapt to new API
For Ethernet, raw netifs, and IEEE 802.15.4 netifs only release outgoing
frame with legacy drivers, as gnrc_netif does so with new non-blocking
API.
2022-09-15 13:23:26 +02:00
Marian Buschsieweke
1cb6f9e11a
sys/net/gnrc/netif: provide support for confirm_send()
This adds support for netdevs implementing the new API that provides
`netdev_driver_t::confirm_send()`. This allows implementing netdevs
in an event based non-blocking fashion, making live of driver
developers a bit easier. In addition, `gnrc_tx_sync` will now throttle
users of `sock_udp_send()` so that they can only send datagrams as
fast as the network stack and hardware is able to send out.

Finally, this lays the groundwork to fetch TX statistics (such as
TX timestamps, reception of layer 2 ACKs/NACKs, etc.) from the network
devices.
2022-09-15 13:23:25 +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
Martine Lenders
84e3ace6e3
gnrc_lorawan_crypto: fix Vera++ errors 2022-08-31 10:43:25 +02:00
Martine Lenders
aead6d2010
gnrc_lorawan: use aes128_cmac_.* instead of cmac_.* 2022-08-31 10:43:25 +02:00
Jose Alamos
5fd601ae97
gnrc/init_devs/kw2xrf: use high priority queue for drivers 2022-08-22 18:00:15 +02:00
Jose Alamos
2c9f3072fb
net/gnrc_netif: add support for priority queues 2022-08-22 18:00:14 +02:00
benpicco
d1ce899188
Merge pull request #18398 from benpicco/gnrc_ipv6_auto_subnets-doc
gnrc/ipv6_auto_subnets: improve documentation about subnet generation and RIO
2022-08-16 17:00:52 +02:00
Benjamin Valentin
28ff28aee0 gnrc/ipv6_auto_subnets: document the role of the RIO 2022-08-16 11:31:23 +02:00
Benjamin Valentin
18e74ae8c0 gnrc/ipv6_auto_subnets: document subnet generation better 2022-08-16 11:31:23 +02:00
Jose Alamos
4ebcd7c055
drivers/kw2xrf: add IEEE 802.15.4 Radio HAL support
Co-authored-by: Michel Rottleuthner <michel.rottleuthner@haw-hamburg.de>
2022-08-15 12:11:03 +02:00
Jose Alamos
4ace2ed778
net/gnrc: add support for event based Bottom Half Processor 2022-08-12 11:12:13 +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
3a80878848
sys/net/gnrc_pktbuf: make static buffer internal 2022-07-21 16:25:14 +02:00
Marian Buschsieweke
32bb9743e4
sys/net/gnrc/pktbuf_static: make use of alignas()
Since we are now using C11, we can make use of `alignas()` provided by
`<stdalign.h>` to make the alignment code easier to read.
2022-07-20 17:52:15 +02:00
Benjamin Valentin
56fc7c375f gnrc_netif: move message queue to gnrc_netif_t 2022-07-18 23:28:38 +02:00
Benjamin Valentin
d4a3521501 doc/doxygen: add gnrc_ipv6_auto_subnets.c to INPUT 2022-07-15 11:47:01 +02:00
Benjamin Valentin
c7ac22c892 gnrc/ipv6_auto_subnets: improve wording in documentation 2022-07-15 01:50:15 +02:00
benpicco
2198eb84c0
Merge pull request #18284 from jia200x/pr/gnrc_netif_move_tested_options
gnrc_netif: move `option_tested` to default init function
2022-07-11 22:57:57 +02:00
Leandro Lanzieri
4a3231f763
drivers/kw2xrf: add setup function with global index
This index is used to register the network device.
2022-07-11 09:24:59 +02:00
Martine Lenders
fda230eb7c
Merge pull request #18275 from maribu/sys/net/rpl/netstats
sys/net/gnrc/rpl: sync access to netstats
2022-07-01 12:24:24 +02:00
Marian Buschsieweke
5a47d6a9b8
sys/net/gnrc/rpl: sync access to netstats
Synchronize the RPL thread updating the RPL netstats with the RPL
shell command reading it by disabling IRQs. This will prevent printing
corrupted data on non-32bit platforms as well as printing inconsistent
data (e.g. TX count of old state in conjunction with TX bytes of new
state) for all platforms.

Co-authored-by: Martine Lenders <mail@martine-lenders.eu>
2022-06-30 09:48:46 +02:00
Marian Buschsieweke
93d8bade8e
sys/net/gnrc/rpl: refactor netstats_rpl_t
There is a repeating pattern in the struct that is split out into a
subtype in this commit. This makes handling the data easier, as now
done in the print routine.
2022-06-30 09:48:45 +02:00
Jose Alamos
2c76dbf351
gnrc_netif: move option_tested to default init function 2022-06-29 17:48:27 +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
Benjamin Valentin
0b3f66f0db sys/net/gnrc_pktbuf_static: fix documentation of use-after-free detection 2022-06-23 00:31:32 +02:00
Benjamin Valentin
a165093b10 sys/net/gnrc_pktbuf_static: add use-after-free detection 2022-06-22 15:41:15 +02:00
Benjamin Valentin
14afafa2d2 gnrc_pktbuf: fix gnrc_pktbuf_contains() 2022-06-17 19:58:01 +02:00
Benjamin Valentin
d102bf90ea gnrc/ipv6_auto_subnets: always send RIO to upstream network
In a881af8b08 we would return early if the subnet did not change,
but we must still send the router advertisement with the route information
option to the upstream network, otherwise hosts in that network will not
consider the downstream subnet off-link.
2022-06-09 17:25:20 +02:00
Martine Lenders
18edd896c1
Merge pull request #18153 from benpicco/gnrc_netif_pktq-fix
gnrc_netif_pktq: protect against concurrent access
2022-06-01 22:00:29 +02:00
Benjamin Valentin
61cc168ce1 gnrc_netif_pktq: protect against concurrent access
fixes #17924
2022-06-01 12:13:31 +02:00
Martine Lenders
c4e202ae67
Merge pull request #17709 from benpicco/cpu/native-tap_wired
netdev_tap: make 'wired' property configurable
2022-06-01 02:24:43 +02:00
Martine Lenders
e22fb6ef07
gnrc_netif_pktq: create dedicated Kconfig
Reflects dependency change in e5f93f856d
2022-05-30 11:13:52 +02:00
Martine Lenders
e5f93f856d
gnrc: gnrc_netif etc. modules are not required by gnrc_netif_pktq 2022-05-30 10:39:06 +02:00
Benjamin Valentin
bf5926283b gnrc_netreg: drain mbox on unregister
If there are still messages in the mbox when gnrc_netreg_unregister()
is called, we must release the associated pktbuf snips, otherwise
they are leaked away forever.

E.g. `sock_udp_close()` was called without receiving all messages with
`sock_udp_recv()`.
2022-05-29 22:42:48 +02:00
Martine Lenders
3e531801e6
Merge pull request #17678 from miri64/gnrc_netif/enh/optional-comp-ctx
gnrc_netif: make auto-config of compression context optional
2022-05-25 00:51:36 +02:00
Martine Lenders
a2ca69ac91
Merge pull request #17691 from miri64/gnrc_sock/enh/warn-about-async-timeout
gnrc_sock: warn about non-zero receive timeouts with sock_async
2022-05-24 23:20:42 +02:00
Martine Lenders
a61c4b738c
Merge pull request #17547 from benpicco/gnrc_ipv6_auto_subnets-multi
gnrc/ipv6_auto_subnets: allow to join multiple subnets
2022-05-24 15:49:17 +02:00
Martine Lenders
4599c21b19
Merge pull request #18085 from benpicco/ipv6_auto_subnets-pio-flags
gnrc/ipv6_auto_subnets: only use prefixes meant for automatic address configuration
2022-05-24 14:23:53 +02:00
Martine Lenders
3d819ce707
gnrc_netif: make auto-config of compression context optional 2022-05-24 12:30:36 +02:00
Martine Lenders
4e88b7552b
gnrc_sock: warn about non-zero receive timeouts with sock_async 2022-05-24 12:29:13 +02:00
Martine Lenders
078bced8e1
Merge pull request #16090 from maribu/gnrc_tx_sync_frag_sfr
sys/net/gnrc: add gnrc_tx_sync for gnrc_sixlowpan_frag_sfr
2022-05-24 03:38:38 +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
Benjamin Valentin
fad65011b7 netdev_tap: make NETDEV_TAP_MAX an upper bound 2022-05-23 15:27:35 +02:00
Martine Lenders
3398898e76
gnrc_ipv6_nib: fix inconsistent ABR valid lifetime representation 2022-05-23 14:21:25 +02:00
Marian Buschsieweke
e4098d4b0d
sys/net/gnrc: add gnrc_tx_sync for gnrc_sixlowpan_frag_sfr
Implement TX synchronization for gnrc_sixlowpan_frag_sfr
2022-05-17 14:01:57 +02:00
benpicco
d28a45e939
Merge pull request #18089 from benpicco/NETOPT_RX_END_IRQ
net/netopt: drop NETOPT_RX_END_IRQ
2022-05-16 11:34:48 +02:00
Benjamin Valentin
b13b942e18 gnrc/ipv6_auto_subnets: allow to join multiple subnets 2022-05-12 00:44:18 +02:00
Benjamin Valentin
83d7d05885 gnrc/link_layer: don't set NETOPT_RX_END_IRQ 2022-05-11 13:58:06 +02:00
Benjamin Valentin
03a669c407 gnrc_netif: remove warning about NETOPT_RX_END_IRQ 2022-05-11 13:56:47 +02:00
Jose Alamos
869c5f37a7 link_layer/lwmac: use event queue for ISR offload 2022-05-10 17:48:43 +02:00
Jose Alamos
6040747f33 link_layer/gomach: use event queue for ISR offload 2022-05-10 17:48:43 +02:00
Jose Alamos
081dfe0e64 gnrc_netif: use event queue for ISR offload 2022-05-10 17:48:42 +02:00
Jose Alamos
38798cb877 gnrc_netif: use events instead of msg queue for ISR offload 2022-05-10 17:48:42 +02:00
Benjamin Valentin
1c1cb481da gnrc/ipv6_auto_subnets: only use prefix meant for address configuration 2022-05-10 16:41:20 +02:00
Marian Buschsieweke
eadd282cf4
Merge pull request #18026 from benpicco/gcoap_add_fix
gcoap: ensure response address is the same as request address
2022-05-10 10:49:56 +02:00
Benjamin Valentin
cc8b4f52aa grnc_sock_udp: implement SOCK_AUX_SET_LOCAL 2022-05-10 09:24:56 +02:00
Benjamin Valentin
2197f9c16a grnc_sock_ip: implement SOCK_AUX_SET_LOCAL 2022-05-10 09:24:56 +02:00
Benjamin Valentin
cbd48c23aa gnrc_sock: implicitly set netif if there is only a single one 2022-05-06 12:11:13 +02:00
Benjamin Valentin
e55f0f8831 sys/net/grnc: make use of iolist_to_buffer() 2022-05-02 23:23:52 +02:00
benpicco
1b92fb9858
Merge pull request #17350 from benpicco/gnrc_rpl/auto_init_on_prefix
gnrc/ipv6_auto_subnets: init RPL root when adding a prefix
2022-05-02 21:38:21 +02:00
Benjamin Valentin
a881af8b08 gnrc/ipv6_auto_subnets: bail out early if prefix stays the same 2022-05-01 21:37:32 +02:00
Benjamin Valentin
5785856fe7 gnrc/ipv6_auto_subnets: bail out early if adding prefix fails 2022-04-29 22:56:35 +02:00
Benjamin Valentin
3993fd75d0 gnrc/ipv6_auto_subnets: auto init RPL root 2022-04-29 22:56:35 +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
4bad5a10bc
Merge pull request #17944 from fjmolinas/pr_gcoap_deps_fixes
gcoap: small dependencies fixes
2022-04-14 18:34:45 +02:00
Francisco Molina
14b3659699 sys/net/gnrc: fix alignment 2022-04-14 09:04:44 +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
benpicco
e97ef479d6
Merge pull request #17778 from fabian18/bugfix_ndp_override_flag_for_non_anycast
gnrc/ndp: bugfix set O-flag if target is not anycast
2022-04-04 01:09:51 +02:00
Benjamin Valentin
d800cca1c3 drivers/atwinc15x0: register with netdev 2022-03-30 16:07:29 +02:00
benpicco
6849e33854
Merge pull request #17736 from benpicco/dhcpv6-tweaks
sys/net/dhcpv6: miscellaneous tweaks
2022-03-29 13:52:41 +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
Martine Lenders
ef7329f85c
Merge pull request #17855 from miri64/ztimer/fix/init-unitialized
treewide: initialize several stack-allocated, but uninitialized timer structs
2022-03-28 20:05:47 +02:00
benpicco
1133d04de1
Merge pull request #17813 from leandrolanzieri/pr/tests/eth_drivers_rework
tests: rework eth drivers
2022-03-28 18:15:27 +02:00
Marian Buschsieweke
a20d8f67f5
Merge pull request #17856 from miri64/gnrc_netif/fix/null-ptr
gnrc_netif: fix potential null pointer dereference
2022-03-26 20:49:48 +01:00
fabian18
09b98ea4fc
Merge pull request #17850 from fabian18/bugfix_nib_6LN_context_option_length
ipv6/nib: bugfix of 6CO length checking
2022-03-24 22:07:18 +01:00
Martine Lenders
624e8099ec
gnrc_netif: fix potential null pointer dereference 2022-03-24 15:53:23 +01:00
Martine Lenders
5aefb8d5dc
gnrc_sock: initialized un-initialized timer objects 2022-03-24 15:23:50 +01:00
Fabian Hüßler
77cbe15b1d ipv6/nib: bugfix of 6CO length checking 2022-03-24 10:06:56 +01:00
Leandro Lanzieri
a2e5934ec9
drivers/encx24j600: introduce setup function with index 2022-03-24 09:32:10 +01:00
Leandro Lanzieri
5f7a906b95
drivers/w5100: introduce setup with index 2022-03-24 09:30:42 +01:00