Martine S. Lenders
1c251beb03
gnrc_nettype: indirect NETTYPE definition via pseudo-modules
...
Instead of making a NETTYPE definition dependent on an implementation
module, this change makes it dependent on a pseudo-module for each
specific NETTYPE and makes the respective implementation modules
dependent on it.
This has two advantages:
- one does not need include the whole implementation module to
subscribe to a NETTYPE for testing or to provide an alternative
implementation
- A lot of circular dependencies related to GNRC could be untangled.
E.g. the only reason `gnrc_icmpv6` needs the `gnrc_ipv6` is because it
uses `GNRC_NETTYPE_IPV6` to search for the IPv6 header in an ICMPv6
when demultiplexing an ICMPv6 header.
This change does not resolve these dependencies or include usages where
needed. The only dependency change is the addition of the
pseudo-modules to the implementation modules.
2020-05-05 19:16:06 +02:00
benpicco
96eadc00ad
Merge pull request #13987 from fjmolinas/pr_ztimer_xtimer_include_board.h
...
sys/include/xtimer.h: include board.h with ztimer
2020-05-05 14:21:43 +02:00
Leandro Lanzieri
8c88e4710a
Merge pull request #14020 from miri64/gnrc_netif/fix/doc-define
...
gnrc_netif: doxygen does not process IS_ACTIVE()
2020-05-05 13:38:31 +02:00
Francisco Molina
98a4e1bcf2
sys/include/xtimer.h: fix endif
2020-05-05 12:16:22 +02:00
MichelRottleuthner
50c7b1be8b
Merge pull request #11977 from JulianHolzwarth/pr/xtimer_rmutex_lock_timeout
...
xtimer/xtimer.c: xtimer_rmutex_lock_timeout
2020-05-05 11:54:03 +02:00
Martine S. Lenders
d141d0b13d
gnrc_netif: doxygen does not process IS_ACTIVE()
2020-05-05 10:17:30 +02:00
JulianHolzwarth
6c8b1f10b5
sys/include/c11_atomics_compat.hpp: fix for esp32
...
Fixes a problem with redefining ATOMIC_VAR_INIT for esp32
2020-05-04 17:56:09 +02:00
JulianHolzwarth
8ef9f0fc6e
sys/include/vfs.h: use c11_atomics_compat.hpp header wrapper
...
to solve a problem with c and c++ atomic
2020-05-04 17:56:09 +02:00
JulianHolzwarth
67e83c1e3e
sys/include/xtimer.h: new function xtimer_rmutex_lock_timeout()
2020-05-04 17:46:31 +02:00
fc68d9c3a3
sys/ztimer: properly initialize intermediate extension callback
2020-05-04 17:25:27 +02:00
Ken Bannister
595e8c631f
Merge pull request #13726 from benpicco/nanocoap-payload_helper
...
nanocoap: add payload helper functions
2020-05-03 08:56:30 -04:00
benpicco
f42b4b4d2f
Merge pull request #13722 from jue89/feature/ztimer_pm-layered
...
sys/ztimer: add power management for ztimer clocks
2020-05-01 14:12:45 +02:00
Benjamin Valentin
e5c20b143d
nanocoap: add coap_payload_put_char()
2020-05-01 13:58:22 +02:00
Benjamin Valentin
2751708341
nanocoap: add payload helper functions
...
This adds two functions `coap_payload_add()` and `coap_payload_advance()`.
- `coap_payload_add()` will add n bytes to the payload buffer and advance
payload pointer accordingly.
const char hello[] = "Hello CoAP!";
coap_payload_add(pkt, hello, sizeof(hello));
- `coap_payload_advance()` will advance the payload buffer after data
has been added to it.
int len = snprintf(pkt->payload, pkt->payload_len, "%s %s!", "Hello", "CoAP");
coap_payload_advance(pkt, len);
I considered adding an additional parameter to keep track of the total request size
(returned size from coap_opt_finish() incremented by each added payload fragment),
but decided against it to keep consistency with the existing API.
2020-05-01 13:58:22 +02:00
Francisco Molina
46a2d9b9ab
sys/include/xtimer.h: include board.h with ztimer
2020-04-30 11:46:11 +02:00
Benjamin Valentin
4065da8838
gnrc/netif: 6lo: use 16 bit for max_frag_size
...
Using 8 bit for `max_frag_size` limits that value to 255.
802.15.4g specifies a PDU of 2047 bytes which exceeds that limit.
Using a 16 bit value here allows to use the full L2 PDU.
Before:
12:02:16,300 # ping6 fe80::2068:3123:59f5:d238%8 -s 400
12:02:16,302 # sending 244 bytes
12:02:16,387 # sending 218 bytes
12:02:16,624 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=0 ttl=64 rssi=-49 dBm time=316.307 ms
12:02:17,302 # sending 244 bytes
12:02:17,387 # sending 218 bytes
12:02:17,624 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=1 ttl=64 rssi=-49 dBm time=316.307 ms
12:02:18,302 # sending 244 bytes
12:02:18,387 # sending 218 bytes
12:02:18,624 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=2 ttl=64 rssi=-50 dBm time=316.306 ms
12:02:18,625 #
12:02:18,629 # --- fe80::2068:3123:59f5:d238 PING statistics ---
With this patch:
12:09:44,276 # ping6 fe80::2068:3123:59f5:d238%8 -s 400
12:09:44,278 # sending 432 bytes
12:09:44,574 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=0 ttl=64 rssi=-52 dBm time=289.888 ms
12:09:45,279 # sending 432 bytes
12:09:45,574 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=1 ttl=64 rssi=-52 dBm time=289.885 ms
12:09:46,069 # sending 43 bytes
12:09:46,279 # sending 432 bytes
12:09:46,499 # sending 43 bytes
12:09:46,574 # 408 bytes from fe80::2068:3123:59f5:d238%8: icmp_seq=2 ttl=64 rssi=-47 dBm time=289.886 ms
12:09:46,574 #
12:09:46,578 # --- fe80::2068:3123:59f5:d238 PING statistics ---
2020-04-29 12:49:36 +02:00
Francisco
80b300289d
Merge pull request #13912 from benpicco/at86rf215-mr-qpsk
...
drivers/at86rf215: implement MR-O-QPSK
2020-04-29 12:44:00 +02:00
Marian Buschsieweke
f6873dbac3
sys/pm: Add pm_get_blocker()
...
Provide access to pm_blocker via a well-defined API rather than hacks.
2020-04-29 11:21:03 +02:00
Juergen Fitschen
73e22612e2
sys/ztimer: add power management for ztimer clocks
2020-04-29 10:55:10 +02:00
Benjamin Valentin
fac35644d0
ieee802154: add definitions & config options for MR-O-QPSK
...
Define options for IEEE 802.15.4g MR-O-QPSK as well as shell commands
to set them via ifconfig.
2020-04-29 10:41:37 +02:00
Thomas Stilwell
325ab426d4
sys/shell/commands: pm: add set mode block mode unblock mode
2020-04-28 16:56:34 +02:00
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
Leandro Lanzieri
9e427e1584
net/coap: Move COAP_MAX_RETRANSMIT to 'CONFIG' namespace
...
COAP_MAX_RETRANSMIT is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:43 +02:00
Leandro Lanzieri
afe4244ac9
net/coap: Move COAP_RANDOM_FACTOR_1000 to 'CONFIG' namespace
...
COAP_RANDOM_FACTOR_1000 is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:43 +02:00
Leandro Lanzieri
072a0d8563
net/coap: Move COAP_ACK_TIMEOUT to 'CONFIG' namespace
...
COAP_ACK_TIMEOUT is moved to the compile time configuration macro
namespace.
2020-04-24 10:06:40 +02:00
Cenk Gündoğan
4e05a66ca2
nanocoap: add proxy_uri parsing
2020-04-23 22:41:12 +02:00
Marian Buschsieweke
654b558343
sys/timex: Fix integer width issue
...
The macros US_PER_MS and friends are assumed to be 32 bit unsigned integers
by users. However, e.g. on AVR a `1000U` is only 16 bit long. Thus, e.g.
`xtimer_usleep(100 * US_PER_MS)` will wrap around and only sleep for ~34ms.
This commit declares them as unsigned long, which is on all currently supported
platforms 32 bit wide.
2020-04-23 21:16:04 +02:00
Cenk Gündoğan
ea616abfda
nanocoap: allow coap_opt_add_string() for zero-terminated strings
2020-04-22 12:28:48 +02:00
Leandro Lanzieri
46507ff247
Merge pull request #13894 from kb2ma/gcoap/ping
...
net/gcoap: add CoAP ping request
2020-04-21 12:23:54 +02:00
Koen Zandberg
5293e5400c
Merge pull request #13210 from kaspar030/add_xtimer_left
...
sys/xtimer: remove uses of xtimer internal struct members
2020-04-21 12:15:41 +02:00
c9c8c98a4b
sys/xtimer: introduce xtimer_left_usec()
2020-04-21 11:26:56 +02:00
Koen Zandberg
40cb065a45
Merge pull request #13839 from leandrolanzieri/pr/kconfig_migrate/sys/usbus_ecm
...
usbus/cdc/ecm: Expose configurations to Kconfig
2020-04-21 10:12:30 +02:00
Ken Bannister
cac350901f
Merge pull request #13893 from cgundogan/pr/nanocoap-get-opt-uint
...
nanocoap: export coap_opt_get_uint()
2020-04-18 10:00:27 -04: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
Cenk Gündoğan
6859de7855
nanocoap: export coap_opt_get_uint()
2020-04-17 22:39:44 +02:00
Martine S. Lenders
b8294f1ba0
netif: add functions to get and get by identifier
2020-04-17 16:59:21 +02:00
Ken Bannister
6eae4ded84
net/gcoap: create CoAP ping request
2020-04-17 08:15:20 -04: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
795cd165fd
ieee802154: add definitions for 802.15.4 PHY modes
...
This adds PHY modes for IEEE 802.15.4-2003 and IEEE 802.15.4g-2012.
2020-04-15 21:41:19 +02:00
benpicco
e499290f19
Merge pull request #13863 from yogo1212/rtc_iff
...
tm.h: fix typo
2020-04-14 23:02:25 +02:00
Francisco Molina
8372286591
sys/crypto/modes/ccm: accept input_len=0
...
CCM may be used on messages with no plaintext data.
2020-04-10 10:41:01 +02:00
Leandro Lanzieri
a06d9bbb66
Merge pull request #13315 from jia200x/pr/kconfig/ieee802154
...
ieee802154: Expose configurations to Kconfig
2020-04-08 19:34:55 +02:00
Jose Alamos
77325b4cde
ieee802154: add CONFIG_ prefix to config macros
2020-04-08 19:08:25 +02:00
Leandro Lanzieri
8b857844fc
usbus/cdc/ecm: Move USBUS_CDC_ECM_CONFIG_SPEED to 'CONFIG_'
2020-04-08 16:30:58 +02:00
Leandro Lanzieri
335b0ceb50
usbus/cdc/ecm: Move USBUS_CDC_ECM_CONFIG_SPEED_UPSTREAM to 'CONFIG_'
2020-04-08 16:27:04 +02:00
Leandro Lanzieri
88e50658f3
usbus/cdc/ecm: Move USBUS_CDC_ECM_CONFIG_SPEED_DOWNSTREAM to 'CONFIG_'
2020-04-08 16:24:59 +02:00
Koen Zandberg
14706d7423
Merge pull request #13243 from leandrolanzieri/pr/kconfig_migrate/net/nanocoap
...
net/nanocoap: Expose configurations to Kconfig
2020-04-08 10:51:54 +02:00
Martine Lenders
475048ab2f
Merge pull request #13833 from benpicco/dist/tools/sliptty-fix
...
gnrc_dhcpv6_client: fix for SLIP link-layer
2020-04-08 10:05:02 +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
Ken Bannister
1ff78879ff
net/nanocoap: remove obsolete functions to add Uri-Query option
2020-04-07 12:17:41 -04:00