Martine Lenders
633d0f486d
Merge pull request #13669 from bergzand/pr/netif/async_events
...
gnrc_netif: Add support for internal event loop
2020-04-28 13:03:39 +02:00
Martine S. Lenders
cb8a6c36b0
gnrc_ipv6_nib: 6ln: use interface-specific DR for address registration
...
With multiple 6LoWPAN interfaces the router for the given interface
—the one the triggering RA came over—should be used to register the
address with.
Co-Authored-By: Benjamin Valentin <benpicco@googlemail.com>
2020-04-25 01:20:55 +02:00
Martine S. Lenders
245c04f368
gnrc_ipv6_nib: internal: add capability to search DR by interface
...
Co-Authored-By: Benjamin Valentin <benpicco@googlemail.com>
2020-04-24 17:57:09 +02:00
Martine Lenders
55a7010a0a
Merge pull request #13157 from nmeum/pr/fuzzing_tcp_only
...
Add AFL-based fuzzing setup for network modules
2020-04-18 10:54:14 +02:00
Sören Tempel
ac9c1f4a69
gnrc_tcp: disable checksum checks during fuzzing
2020-04-17 17:11:15 +02:00
Joakim Nohlgård
2013ac75f5
gnrc_netif: Add support for internal event loop
...
Enabled by the gnrc_netif_events pseudo module. Using an internal event
loop within the gnrc_netif thread eliminates the risk of lost interrupts
and lets ISR events always be handled before any send/receive requests
from other threads are processed.
The events in the event loop is also a potential hook for MAC layers and
other link layer modules which may need to inject and process events
before any external IPC messages are handled.
Co-Authored-By: Koen Zandberg <koen@bergzand.net>
2020-04-17 12:02:39 +02:00
Benjamin Valentin
f198d689be
gnrc_dhcpv6_client: fix for SLIP link-layer
...
In a point-to-point serial connection, we don't have L2 addresses.
Set the link type & packet length accordingly and we will get a
prefix from KEA.
2020-04-07 22:08:57 +02:00
Sören Tempel
65c7bbf76d
gnrc_sock: Implement termination condition for fuzzing
...
The termination condition implemented in gnrc_pktbuf_malloc does not
work when using the sock interface as sock copies packet data to a local
buffer and frees the packet afterwards. As such, the fuzzing application
would exit before performing any input processing.
For this reason, the termination condition in gnrc_pktbuf_malloc is
disabled when using sock. Instead, the application terminates if
gnrc_sock_recv previously returned the fuzzing packet. The underlying
assumption of this implementation is that gnrc_sock_recv is called in a
loop.
2020-04-07 17:48:39 +02:00
Sören Tempel
e0570181e4
gnrc_pktbuf_malloc: Terminate when fuzzing packet is freed
...
Since RIOT is an operating system the native binary will never terminate
[0]. The termination condition for fuzzing GNRC is that the packet was
handled by the network stack and therefore freed. If it is never freed
we will deadlock meaning a memory leak was found, afl should be able to
detect this through timeouts.
This is currently only supported for gnrc_pktbuf_malloc since this is
the pktbuf implementation I used for fuzzing. Implementing this in
pktbuf.h is not possible.
[0]: Except NATIVE_AUTO_EXIT is defined, however, even with that define
set RIOT will only terminate when all threads terminated. Unfortunately,
gnrc_udp and other network threads will never terminate.
2020-04-07 17:48:39 +02:00
Martine Lenders
76acde0984
Merge pull request #13779 from miri64/sock/enh/sock_buf_recv-iterate-chunks
...
sock: amend API to iterate over stack-internal buffer chunks
2020-04-01 16:59:03 +02:00
Martine S. Lenders
d934579817
gnrc_sock: adapt for *_recv_buf() API change
2020-04-01 15:50:51 +02:00
Leandro Lanzieri
461f40949d
gnrc/ipv6: Group IPv6 related Kconfig files
2020-04-01 14:34:13 +02:00
Leandro Lanzieri
4476e06814
gnrc/uhcpc: Fix lines lengths
2020-03-31 19:02:55 +02:00
Leandro Lanzieri
184bbd32e5
gnrc/netif: Fix lines lengths
2020-03-31 19:02:54 +02:00
Leandro Lanzieri
87ac1a652d
gnrc/nib: Expose configurations to Kconfig
2020-03-31 19:02:51 +02:00
Leandro Lanzieri
64dde8f317
gnrc/nib: Move GNRC_IPV6_NIB_ABR_NUMOF to 'CONFIG_' namespace
2020-03-31 18:07:13 +02:00
Leandro Lanzieri
a77d0dd9c5
gnrc/nib: Move GNRC_IPV6_NIB_OFFL_NUMOF to 'CONFIG_' namespace
2020-03-31 18:07:13 +02:00
Leandro Lanzieri
f6ee712e98
gnrc/nib: Move GNRC_IPV6_NIB_DEFAULT_ROUTER_NUMOF to 'CONFIG_' namespace
2020-03-31 18:07:12 +02:00
Leandro Lanzieri
f2ed8b06c0
gnrc/nib: Move GNRC_IPV6_NIB_L2ADDR_MAX_LEN to 'CONFIG_' namespace
2020-03-31 18:07:12 +02:00
Leandro Lanzieri
acd789bd87
gnrc/nib: Move GNRC_IPV6_NIB_CONF_REACH_TIME_RESET to 'CONFIG_'
2020-03-31 18:07:11 +02:00
Leandro Lanzieri
07771de08f
gnrc/nib: Move GNRC_IPV6_NIB_NUMOF to 'CONFIG_' namespace
2020-03-31 18:07:11 +02:00
Leandro Lanzieri
1f20ffc150
gnrc/nib: Move GNRC_IPV6_NIB_CONF_NO_RTR_SOL to 'CONFIG_' namespace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:10 +02:00
Leandro Lanzieri
53a522d642
gnrc/nib: Move GNRC_IPV6_NIB_CONF_MULTIHOP_P6C to 'CONFIG_' namespace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:10 +02:00
Leandro Lanzieri
22b4df9537
gnrc/nib: Move GNRC_IPV6_NIB_CONF_MULTIHOP_DAD to 'CONFIG_' namespace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:09 +02:00
Leandro Lanzieri
3ec296400d
gnrc/nib: Move GNRC_IPV6_NIB_CONF_DC to 'CONFIG_' namespace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:09 +02:00
Leandro Lanzieri
219d5a1de2
gnrc/nib: Move GNRC_IPV6_NIB_CONF_REDIRECT to 'CONFIG_' namspace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:08 +02:00
Leandro Lanzieri
bad9abd349
gnrc/nib: Move GNRC_IPV6_NIB_CONF_DNS to 'CONFIG_' namespace
...
Also evaluate using IS_ACTIVE macro.
2020-03-31 18:07:07 +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
f23267b67b
gnrc/nib: Move GNRC_IPV6_NIB_CONF_QUEUE_PKT to 'CONFIG_' namespace
...
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:06 +02:00
Leandro Lanzieri
ce931f179c
gnrc/nib: Move GNRC_IPV6_NIB_CONF_SLAAC to 'CONFIG_' namespace
...
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:05 +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
Leandro Lanzieri
1acfe7ae19
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LN to 'CONFIG_' namespace
...
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:04 +02:00
Leandro Lanzieri
398bb6d025
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LR to 'CONFIG_' namespace
...
Also evaluate it using IS_ACTIVE
2020-03-31 18:07:03 +02:00
Leandro Lanzieri
40c78f1c75
gnrc/nib: Move GNRC_IPV6_NIB_CONF_6LBR to 'CONFIG_' namespace
...
Also evaluate it using IS_ACTIVE macro.
2020-03-31 18:07:03 +02:00
Benjamin Valentin
a3adaa7ec0
gnrc_ipv6_nib: fix index calculation
...
We must divide the pointer difference (in bytes) by the size of
the individual elements to get the index of the element.
2020-03-28 00:00:16 +01:00
Benjamin Valentin
a835ad3e13
gnrc_ipv6_nib: append ext_opts when adding sixco
2020-03-27 22:52:31 +01:00
benpicco
8024380f7b
Merge pull request #13700 from miri64/gnrc_sock/enh/recv_buf
...
gnrc_sock: provide implementation for `sock_*_recv_buf()`
2020-03-27 16:34:57 +01:00
benpicco
15dc9fe0de
Merge pull request #13731 from benpicco/upstream_no_rtr_adv
...
gnrc_uhcp, gnrc_dhcpv6_client_6lbr: disable Router Advertisements on upstream interface
2020-03-27 10:32:59 +01:00
Benjamin Valentin
3f24eaefb9
gnrc_uhcp: disable router advertisements on upstream interface
2020-03-27 00:37:54 +01:00
Benjamin Valentin
fec156899c
gnrc_dhcpv6_client_6lbr: disable router advertisements on upstream interface
...
We don't want to advertise ourselves as a router to the upstream router.
This also leads to the border router ignoring advertisements from the upstream
router.
2020-03-27 00:37:54 +01:00
Martine Lenders
f39cfc7556
Merge pull request #13253 from nmeum/pr/random_ephemeral_port
...
gnrc_sock_udp: choose random ephemeral port
2020-03-26 15:00:14 +01:00
Martine Lenders
061eb88c05
Merge pull request #12994 from jia200x/pr/gnrc_netif_desc_alloc
...
gnrc_netif: implementation of dynamic GNRC_NETIF_NUMOF approach
2020-03-26 14:30:44 +01:00
Jose Alamos
44f7cb712c
gnrc_netif: add GNRC_NETIF_SINGLE macro
2020-03-26 14:19:02 +01:00
Martine Lenders
cba1a2da0c
Merge pull request #13666 from jue89/feature/evtimer_now_msec
...
net/gnrc/ipv6/nib: remove direct dependency to xtimer
2020-03-26 13:50:13 +01:00
Jose Alamos
e451570219
gnrc_netif: remove GNRC_NETIF_NUMOF macro
2020-03-26 11:12:23 +01:00
Jose Alamos
67ed9defbe
gnrc_netif_xxx_create: use external netif allocation
2020-03-26 11:12:23 +01:00
Martine Lenders
ab5deca3b0
Merge pull request #13712 from miri64/gnrc_uhcp/fix/prefix_len
...
gnrc_uhcp: use actually advertised prefix length
2020-03-25 18:46:00 +01:00
Martine S. Lenders
01d94f268a
gnrc_uhcp: use actually advertised prefix length
...
This makes the UHCP client to use the actually advertised prefix length
instead of assuming /64.
2020-03-25 16:55:01 +01:00
benpicco
6ae0fd7c82
Merge pull request #13485 from miri64/gnrc_dhcpv6/enh/configure-context
...
gnrc_dhcpv6_client: configure prefix as compression context on 6LBRs
2020-03-25 16:48:11 +01:00
benpicco
53790d1269
Merge pull request #13713 from miri64/gnrc_sixlowpan_iphc/bug/encode-zero-header
...
gnrc_sixlowpan_iphc: zero IPv6 header before decompressing into it
2020-03-25 16:43:17 +01:00