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

4196 Commits

Author SHA1 Message Date
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
Benjamin Valentin
1cfcb307f2 nanocoap_sock: add nanocoap_sock_{put, post}_non() 2022-10-13 19:04:09 +02:00
Benjamin Valentin
56f36c09a0 nanocoap: add support for no-response option
See https://datatracker.ietf.org/doc/rfc7967/
2022-10-13 19:04:09 +02:00
Benjamin Valentin
c656df9c3a nanocoap_sock: implement nanocoap_sock_delete() 2022-10-13 18:56:28 +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
Jim Paris
d797c990d6
sys/stdio_uart: add stdio_uart_onlcr (pseudo-) module
Add USE_MODULE += "stdio_uart_onlcr" to enable it.
This is named after the "onlcr" stty flag, which does the same thing.

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2022-10-13 12:08:34 +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
chrysn
798dedd4d1
gcoap_forward_proxy: send empty ACK when response takes too long
Co-Authored-By: Martine S. Lenders <m.lenders@fu-berlin.de>
Signed-off-by: Martine Lenders <m.lenders@fu-berlin.de>
2022-10-12 17:33:55 +02:00
Martine Lenders
f7510cfb9d
gnrc_nettype: improve documentation on modules made explicit 2022-10-12 11:27:27 +02:00
Martine Lenders
153f42d524
gnrc_dhcpv6: improve documentation on modules made explicit 2022-10-12 11:27:15 +02:00
Martine Lenders
a1794c0cb3
gnrc_nettype: various doc enhancements and fixes 2022-10-12 11:23:56 +02:00
Martine Lenders
774ca13563
gnrc_nettype: reorder gnrc_nettype_t to fit the grouping again 2022-10-12 11:23:16 +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
Benjamin Valentin
f78fa2c632 sys/checksum: update CRC-16 documentation 2022-10-07 13:01:38 +02:00
benpicco
24f7d2011a
Merge pull request #18701 from benpicco/sys/checksum-crc16_fast
sys/checksum: add CRC-16 implementation without lookup table
2022-10-07 12:31:23 +02:00
Martine Lenders
a49863e95c
Merge pull request #18698 from miri64/doc/enh/deprecated-modules
doc: add deprecation notice on deprecated pseudo-modules
2022-10-07 01:56:49 +02:00
Benjamin Valentin
e313c56e94 sys/checksum: add CRC-16 implementation without lookup table 2022-10-06 17:43:20 +02:00
benpicco
4493afb582
Merge pull request #18639 from benpicco/nanocoap_sock_put_url
sys/shell: ncput: add option to read from stdin
2022-10-06 12:05:39 +02:00
Martine Lenders
bb92b2b281
doc: add deprecation notice on deprecated pseudo-modules 2022-10-06 10:53:10 +02:00
Karl Fessel
b575f0cdf8 net/nanocoap: remove coap_pkt token ptr 2022-10-06 00:20:10 +02:00
Hendrik van Essen
6c98a5b3b7 sys/net/network_layer/ipv4/addr: add ipv4_addr_print function 2022-10-05 15:16:37 +02:00
Marian Buschsieweke
f02bc5791a
Merge pull request #18571 from maribu/sys/tiny_strerror
sys/tiny_strerror: add tiny `strerror()` implementation
2022-10-05 09:24:40 +02:00
Marian Buschsieweke
6ced6dfde7
Merge pull request #18686 from benpicco/checksum/crc32
sys/checksum: add CRC-32 checksum
2022-10-04 23:06:04 +02:00
benpicco
161172c678
Merge pull request #18656 from benpicco/event_periodic_callback_get_arg
event_periodic_callback: add getter for user context, one-shot event
2022-10-04 20:47:26 +02:00
Benjamin Valentin
49a85f4633 sys/checksum: add CRC-32 checksum
based on https://github.com/aeldidi/crc32
2022-10-04 15:40:53 +02:00
Benjamin Valentin
49e1720d5c vfs: allow filesystem to request absolute paths 2022-10-02 00:16:01 +02:00
benpicco
1935b626d5
Merge pull request #18672 from benpicco/vfs-abs_path
vfs: drop unused abs_path parameter
2022-09-30 16:42:57 +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
Benjamin Valentin
85dd564f87 vfs: drop unused abs_path parameter 2022-09-29 22:01:37 +02:00
benpicco
0e181e9ec3
Merge pull request #18668 from miri64/coap/enh/coap_v1
coap: provide definition for version field value
2022-09-29 20:41:53 +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
Martine Lenders
b9d7028a8f
coap: provide definition for version field value 2022-09-29 11:26:03 +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
benpicco
c35a4ba577
Merge pull request #18621 from benpicco/strscpy
sys/string_utils: add strscpy()
2022-09-28 19:11:42 +02:00
Benjamin Valentin
16491eaca7 sys/string_utils: fix check for native 2022-09-28 09:58:43 +02:00
Benjamin Valentin
6563ce2fb7 event_callback: add event_callback_oneshot() 2022-09-27 15:45:19 +02:00
Benjamin Valentin
e20b966109 event_periodic_callback: add getter for user context 2022-09-27 13:15:26 +02:00
Benjamin Valentin
da1f161c3c gcoap: accept resources in any order 2022-09-26 20:20:14 +02:00
Benjamin Valentin
cdaf715a84 sys/string_utils: add strscpy() 2022-09-26 19:06:46 +02:00
Benjamin Valentin
42a8a587c4 nanocoap_sock: add nanocoap_sock_{put, post}_url() 2022-09-23 19:47:02 +02:00
Ollrogge
aa22771bd9 fido2/ctap: uncrustify files 2022-09-23 16:42:52 +02:00
Ollrogge
37c35112e2 fido2/ctap: simplify flash handling 2022-09-23 16:40:30 +02:00
Marian Buschsieweke
34c61b58a6
sys/string_utils : new (header-only) module for string utilities
This header-only module provides a `string_utils.h` that currently
only provides the non-standard function `explicit_bzero()` to securely
wipe memory. It may be extended with other utility functions in the
future.
2022-09-20 17:44:24 +02:00
Marian Buschsieweke
1bdc1a5967
sys/tiny_strerror: add tiny strerror() implementation
`tiny_strerror()` is a drop-in replacement for `strerror()`, but
instead of a long help message it returns the much shorter macro name
matching the given number.

The (pseudo-)module `tiny_strerror_as_strerror` can be used to
replace all calls to `strerror()` with calls to `tiny_strerror()`.
2022-09-20 15:51:11 +02:00
Martine Lenders
0079b0c52f
event_periodic_callback: remove unnecessary dependency 2022-09-20 09:49:30 +02:00
Marian Buschsieweke
4b87a300c0
Merge pull request #18598 from benpicco/event_periodic_callback
event_periodic_callback: add convenience wrapper for periodic callbacks
2022-09-19 20:45:52 +02:00
Martine Lenders
d5e63a5e46
Merge pull request #18096 from Teufelchen1/feat/port_parsing
sys/uri_parser: Adding the port as uint16_t
2022-09-19 13:40:53 +02:00
Karl Fessel
e43a75d293
Merge pull request #18431 from kfessel/p-doccheck-fix
doccheck: make the file pattern more match riot.doxyfile
2022-09-19 11:07:57 +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
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
6790167a18
Merge pull request #18226 from benpicco/cpu_get_last_instruction
cpu: cpu_print_last_instruction() -> cpu_get_caller_pc()
2022-09-15 20:06:10 +02:00
Benjamin Valentin
00c11c3f9d event_periodic_callback: add convenience wrapper for periodic callbacks 2022-09-15 18:36:41 +02:00
Marian Buschsieweke
2dd185448f
Merge pull request #18587 from Ziesie1/master
sys/net: include misplacement inside linkage-specification
2022-09-15 14:06:06 +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
benpicco
b5bf5da38d
Merge pull request #18444 from kfessel/p-fix-doc-grp
doc: fix unbalaced grouping
2022-09-14 22:19:28 +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
Ziesie
be10ffe74e sys/net: include misplacement inside linkage-specification
An include should be outside of the linkage-specification.
2022-09-14 10:47:18 +02:00
Benjamin Valentin
b6fac2b2c7 nanocoap_sock: consitfy remote 2022-09-14 10:29:57 +02:00
benpicco
b117171fcf
Merge pull request #18519 from benpicco/coap_request_ctx_get_remote
gcoap: add remote sock_udp_ep_t to coap_request_ctx_t
2022-09-12 20:30:19 +02:00
Benjamin Valentin
02aeab750a gcoap_forward_proxy: const arg to gcoap_forward_proxy_request_process() 2022-09-12 17:52:54 +02:00
Benjamin Valentin
2376343547 gcoap: add remote sock_udp_ep_t to coap_request_ctx_t 2022-09-12 17:51:26 +02:00
Teufelchen1
df8fe4476d sys/uri_parser: Adding the port as uint16 2022-09-08 11:32:49 +02:00
Benjamin Valentin
15a43f28f2 suit: start worker thread on demand 2022-09-05 07:46:56 +02:00
Benjamin Valentin
db701de094 suit: clean up worker thread, make suit_handle_url() public 2022-09-05 07:46:56 +02:00
Benjamin Valentin
37dceb6c80 nanocoap_sock: use correct error code in nanocoap_get_blockwise_url_to_buf()
It should return -ENOBUFS like the other nanocoap_…() functions, not -1
2022-09-05 07:40:59 +02:00
Benjamin Valentin
0b6e344d4f suit: rename worker thread functions (they are not CoAP only) 2022-09-03 23:25:01 +02:00
fcf3e01eb7
Merge pull request #18315 from miri64/fmt/doc/wording
fmt: unify and align wording regarding characters, digits, and bytes
2022-09-01 21:46:22 +02:00
Marian Buschsieweke
754ad23de5
Merge pull request #18539 from miri64/hashes_cmac/cleanup/rename
hashes_cmac: rename to hashes_aes128_cmac
2022-08-31 19:06:21 +02:00
Martine Lenders
803ff1f69e
Merge pull request #18516 from Teufelchen1/feat/crc_fixup
sys/checksum: Adding three new crc16 variations
2022-08-31 12:58:04 +02:00
Martine Lenders
5e59649fda
hashes_cmac: rename to hashes_aes128_cmac 2022-08-31 10:43:25 +02:00
Teufelchen1
a25934ca16 sys/checksum: Adding four crc16 variations: ccitt-aug/false/kermit/mcrf4xx 2022-08-30 15:37:04 +02:00
benpicco
346c7336eb
Merge pull request #18514 from benpicco/nanocoap_sock_put
nanocoap_sock: add nanocoap_sock_put()
2022-08-30 14:00:42 +02:00
Marian Buschsieweke
eaace28804
sys/usb: Set USB model to $(BOARD) by default 2022-08-29 16:39:05 +02:00
Benjamin Valentin
514f039c30 nanocoap_sock: add nanocoap_sock_{put, post}() 2022-08-25 17:52:43 +02:00
José Alamos
39987817ce
Merge pull request #18496 from jia200x/pr/gnrc_netif_multi_queue
net/gnrc_netif: add support for priority queues
2022-08-22 22:54:55 +02:00
Jose Alamos
2c9f3072fb
net/gnrc_netif: add support for priority queues 2022-08-22 18:00:14 +02:00
benpicco
ed3d680aa2
Merge pull request #18482 from benpicco/coap_timeout_avr
nanocoap: fix type of CONFIG_COAP_ACK_TIMEOUT_MS (for AVR)
2022-08-20 18:37:15 +02:00
Benjamin Valentin
071ae2ccc0 nanocoap: fix type of CONFIG_COAP_ACK_TIMEOUT_MS 2022-08-20 16:32:20 +02:00
benpicco
0b5f270b15
Merge pull request #18464 from jia200x/pr/bhp_msg
sys/bhp_msg: add IPC based implementation of Bottom Half Processor
2022-08-19 14:28:15 +02:00
Jose Alamos
8cf53fc8ab
sys/bhp_msg: add IPC based Bottom Half Processor 2022-08-19 12:01:30 +02:00
Marian Buschsieweke
ca4afc4053
pkg/littlefs2: fix unaligned memory access
Previously `tests/pkg_littlefs2` crashed on the `samr21-xpro`. This
now aligns the buffers in `littlefs2_desc_t` to the alignment
requirement of `uint32_t`.

Specifically the issue causing the crash at hand was that
`struct lfs_free::buffer` is of type `uint32_t *`, so access are
expected to be aligned to `uint32_t`. After this commit, this
assumption is fulfilled.
2022-08-18 18:54:37 +02:00
Marian Buschsieweke
f87a401c87
pkg/littlefs: fix unaligned memory access
Previously `tests/pkg_littlefs` crashed on the `samr21-xpro`. This
now aligns the buffers in `littlefs_desc_t` to the alignment
requirement of `uint32_t`.

Specifically the issue causing the crash at hand was that
`lfs_free_t::buffer` is of type `uint32_t *`, so access are expected
to be aligned to `uint32_t`. After this commit, this assumption is
fulfilled.
2022-08-18 18:53:59 +02:00
benpicco
0713e0d9a1
Merge pull request #18313 from benpicco/coap_request_ctx_get_tl_type
gcoap: move tl_type to coap_request_ctx_t
2022-08-17 16:51:50 +02:00
benpicco
2321841ccc
Merge pull request #18426 from maribu/sys/net/gnrc/netif/api_check
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
2022-08-17 16:50:16 +02:00
Marian Buschsieweke
276ad5716a
sys/net/gnrc/netif: allow checking if a netdev is legacy or new API
A if `netdev_driver_t::confirm_send()` is provided, it provides the
new netdev API. However, detecting the API at runtime and handling
both API styles comes at a cost. This can be optimized in case only
new or only old style netdevs are in use.

To do so, this adds the pseudo modules `netdev_legacy_api` and
`netdev_new_api`. As right now no netdev actually implements the new
API, all netdevs pull in `netdev_legacy_api`. If `netdev_legacy_api` is
in used but `netdev_new_api` is not, we can safely assume at compile
time that only legacy netdevs are in use. Similar, if only
`netdev_new_api` is used, only support for the new API is needed. Only
when both are in use, run time checks are needed.

This provides two helper function to check for a netif if the
corresponding netdev implements the old or the new API. (With one
being the inverse of the other.) They are suitable for constant folding
when only new or only legacy devices are in use. Consequently, dead
branches should be eliminated by the optimizer.
2022-08-17 12:56:07 +02:00
benpicco
dffac04069
Merge pull request #18447 from benpicco/vfs_formaat_by_path
vfs: introduce vfs_format_by_path()
2022-08-17 12:04:09 +02:00
Benjamin Valentin
855a359058 vfs: introduce vfs_format_by_path() 2022-08-12 15:36:29 +02:00
Jose Alamos
ef80302cca
ieee802154: add ACK timeout in symbols to header 2022-08-12 10:17:33 +02:00
José Alamos
50e4498c84
Merge pull request #18435 from jia200x/pr/bhp
sys/bhp_*: add initial support for generic Bottom Half Processor
2022-08-12 09:58:18 +02:00
Jose Alamos
0a3f58158b
sys/bhp_event: add Event based implementation for Bottom Half Processor 2022-08-11 10:57:54 +02:00
Jose Alamos
4c09846426
sys/bhp: add initial support for generic Bottom Half Processor 2022-08-11 10:57:53 +02:00
Karl Fessel
5093153468 ztimer(64): make xtimer_compat documetation visible (defgroup) 2022-08-09 14:26:49 +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
benpicco
c125e3d98a
Merge pull request #18133 from fabian18/gcoap_fileserver_file_and_directory_creation
gcoap/fileserver: add file and directory creation and deletion
2022-08-04 16:14:29 +02:00
Fabian Hüßler
9333970b77 gcoap/fileserver: make PUT and DELETE pseudomodules 2022-08-03 22:10:30 +02:00
Fabian Hüßler
f357d99396 gcoap/fileserver: recursive directory deletion as default 2022-08-03 22:10:30 +02:00
Fabian Hüßler
2e587973eb sys/vfs_util: add recursive unlink 2022-08-03 22:09:21 +02:00
Fabian Hüßler
2327bef57f gcoap/fileserver: update documentation 2022-08-03 22:09:21 +02:00
Fabian Hüßler
688acff5bc gcoap/fileserver: implement PUT/POST/DELETE functionality 2022-08-03 22:09:21 +02:00
Martine Lenders
24ff493d04
Merge pull request #18378 from benpicco/dns_query
dns: provide generic dns_query() function
2022-08-01 11:27:54 +02:00
Martine Lenders
141ec6fb94
Merge pull request #18363 from benpicco/sock_dtls_sendv_aux
net/sock/dtls: introduce sock_dtls_sendv_aux()
2022-08-01 09:59:55 +02:00
benpicco
f375856a7e
Merge pull request #18141 from fabian18/filesystems_configure_block_size
littlefs: make block size configurable at compile time
2022-07-31 22:53:46 +02:00
Fabian Hüßler
a29d5c24cd pkg/littlefs2: make block size configurable 2022-07-31 10:57:13 +02:00
Fabian Hüßler
41c0b1e7f0 pkg/littlefs: make block size configurable 2022-07-31 10:57:12 +02:00
Benjamin Valentin
9a9abb4f58 dns: add generic dns_query() function 2022-07-29 17:48:26 +02:00
Martine Lenders
cc55a4475d
sock_dtls: make sock_dtls-header includeable without sock_dtls module 2022-07-28 14:57:29 +02:00
Benjamin Valentin
3af06a1c3d net/sock/dtls: introduce sock_dtls_sendv_aux() 2022-07-28 13:21:07 +02:00
Martine Lenders
8ad68dbb21
Merge pull request #16861 from miri64/sock_dodtls/feat/initial
sock_dodtls: Initial import of a DNS over DTLS client
2022-07-27 13:17:23 +02:00
Marian Buschsieweke
e1ef2a0635
Merge pull request #18372 from benpicco/random_bytes-void
random: use void * in random_bytes()
2022-07-27 10:29:51 +02:00
Martine Lenders
1b6c9a8334
sock_dodtls: provide getters for sock and session
To be able to implement the DNS message exchange outside the module.
2022-07-27 00:46:43 +02:00
Benjamin Valentin
1e69740d18 random: use void * in random_bytes() 2022-07-26 19:46:14 +02:00
Martine Lenders
f575292e20
sock_dodtls: Initial import of a DNS over DTLS client 2022-07-26 19:37:12 +02:00
Martine Lenders
2aee54e495
gnrc_netif_conf: fix auto-6ctx switch 2022-07-26 16:06:51 +02:00
Martine Lenders
fe3d620a63
gnrc_ipv6_nib: make configurable via Kconfig again 2022-07-22 17:51:57 +02:00
Benjamin Valentin
56fc7c375f gnrc_netif: move message queue to gnrc_netif_t 2022-07-18 23:28:38 +02:00
Martine Lenders
8bec9c1115
sock_dns_cache: move to dns_cache
Also piggy-back some fixes to the unittests and submodule handling
2022-07-18 15:27:58 +02:00
Martine Lenders
635488616f
fmt: unify and align wording regarding characters, digits, and bytes 2022-07-18 10:38:59 +02:00
Benjamin Valentin
d7bb42296a gcoap: move tl_type to coap_request_ctx_t 2022-07-17 18:05:07 +02:00
Benjamin Valentin
3806f7d532 nanocoap: make coap_request_ctx_t members internal 2022-07-17 14:32:16 +02:00
Benjamin Valentin
e8829d5591 gcoap_fileserver: make use of coap_request_ctx_t 2022-07-17 14:32:16 +02:00
Benjamin Valentin
2daad4f5ff nanocoap: document coap_handler_t 2022-07-17 14:32:16 +02:00
Benjamin Valentin
acfab72296 nanocoap: make use of coap_request_ctx_t 2022-07-17 14:29:39 +02:00
Benjamin Valentin
0898e499fc nanocoap: define coap_request_ctx_t for request handlers 2022-07-17 14:29:39 +02:00
Benjamin Valentin
077a41a719 sock_dns: implement DNS cache 2022-07-13 23:23:52 +02:00
Benjamin Valentin
34e11bf2bc sys/architecture: introduce uinttxtptr_t 2022-07-13 23:19:33 +02:00
benpicco
54544c0a36
Merge pull request #18131 from firas-hamdi/feat/apply_filters_to_target_mailbox
drivers/mcp2515: apply filters to target mailbox
2022-07-13 09:40:06 +02:00
Martine Lenders
a8254d52b8
Merge pull request #16705 from miri64/gcoap_dns/feat/initial
gcoap_dns: initial import of a DNS over CoAP (DoC) client
2022-07-13 02:27:17 +02:00
MrKevinWeiss
3095afafd2
sys/test_utils: add netdev ieee802154 minimal processing 2022-07-11 09:25:01 +02:00
Martine Lenders
107a2a0753
gcoap_dns: initial import of a DNS over CoAP client 2022-07-01 18:44:02 +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
Firas Hamdi
bc0d3f9de3 drivers/mcp2515: apply the filter to a target mailbox
sys/include/can: add the mailbox target as a member to the filter structure

drivers/mcp2515: cleanup defines
2022-06-30 10:07: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
Martine Lenders
d9846e414f
Merge pull request #18269 from maribu/sys/net/netstats
sys/net/netopt: change NETOPT_STATS semantics
2022-06-29 15:52:03 +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
benpicco
5bb12f3e57
Merge pull request #18264 from jia200x/pr/submac_use_ieee802154_retrans_config
ieee802154: add default max frame retransmissions config
2022-06-28 16:00:51 +02:00
Jose Alamos
88e14f01a1
ieee802154/submac: use default config for max frame retransmissions 2022-06-27 14:51:16 +02:00
Jose Alamos
0a76a88dc8
ieee802154: add default max frame retransmissions config 2022-06-27 14:50:54 +02:00
Benjamin Valentin
de91fc4b3a sys/vfs: FATFS_VFS_FILE_BUFFER_SIZE depends on VFS_NAME_MAX
e.g. try CFLAGS += -DVFS_NAME_MAX=39
2022-06-21 18:02:54 +02:00
Martine Lenders
03dfad899b
Merge pull request #17834 from haukepetersen/opt_skald_advitvlconfig
net/ble/skald: make advertising interval configurable per context
2022-06-21 13:31:57 +02:00
Gunar Schorcht
934c65fb2e
Merge pull request #18212 from benpicco/kernel_defines-CONST
core/kernel_defines: drop CONST definition
2022-06-17 17:45:46 +02:00
Benjamin Valentin
7bc1fea55a sys/tm: drop CONST 2022-06-16 15:26:27 +02:00
benpicco
0a16f8266a
Merge pull request #17962 from benpicco/nanocoap_vfs-put
nanocoap_vfs: add nanocoap_vfs_put()
2022-06-16 11:53:36 +02:00
Benjamin Valentin
148651a94d sys/fs/constfs: allow to host arbitrary data
Don't require data to be a uint8_t array to to be casted into one.
2022-06-12 19:39:27 +02:00
benpicco
d797b74b0b
Merge pull request #18196 from gschorcht/sys/rtc_utils_doc_fix
sys/rtc_utils: small doc fix of rtc_mktime
2022-06-12 17:14:21 +02:00
Gunar Schorcht
8a5e632b2f sys/rtc_utils: small doc fix of rtc_mktime 2022-06-12 15:49:01 +02:00
Benjamin Valentin
bb42f6a2f4 nanocoap_vfs: add nanocoap_vfs_put() 2022-06-08 17:19:03 +02:00
Benjamin Valentin
3adda46cec nanocoap: add coap_size2szx() 2022-06-08 17:19:03 +02:00
Benjamin Valentin
7029572ca7 sys/net/telnet: add telnet_server_disconnect() 2022-06-08 13:01:23 +02:00
Hendrik van Essen
ccc795133f sys/shell: add pseudomodule shell_lock_auto_locking
Module to lock the shell after a given timeout of time x. When the
shell did not receive any input within time x, then the shell is
locked automatically.
2022-06-08 12:53:48 +02:00
Hendrik van Essen
2284f87fdb sys/shell: add module shell_lock
Module to lock the running shell with a password. Shell is proceeded only
when the valid password was entered by the user. After 3 failed attempts,
the input is blocked for a few seconds to slow down brute force attacks.
Does not make use of any cryptographic features yet.
2022-06-08 12:53:48 +02:00
Marian Buschsieweke
20d3304077
Merge pull request #18152 from maribu/sys/shell_commands
sys/shell_commands: convert to SHELL_COMMAND()
2022-06-08 06:40:46 +02:00
benpicco
6019925c75
Merge pull request #17943 from fjmolinas/pr_suit_vfs_storage
sys/suit/storage/vfs: initial import
2022-06-07 09:33:37 +02:00
Marian Buschsieweke
5ea582b3dd
sys/shell_commands: convert to SHELL_COMMAND()
Make use of XFA for shell commands
2022-06-07 09:25:04 +02:00
Francisco
f6d5a54c3e
Merge pull request #18045 from benpicco/suit/transport-vfs
suit/transport/vfs: add VFS as source for firmware updates
2022-06-07 08:32:15 +02:00
Marian Buschsieweke
bfb8a55764
sys/net/netif: add helpers for IPv6 addresses
- add `netif_get_ipv6()` to query IPv6 (as a slim convenience wrapper
  for `netif_get_opt()`)
- add `netifs_get_ipv6()` to query IPv6 addresses of all netifs
- add `netif_print_ipv6()` to print the IPv6 address(es) of a single
  netif
- add `netifs_print_ipv6()` to print the IPv6 address(es) of all netifs
2022-06-06 20:46:48 +02:00
Marian Buschsieweke
a4d00df586
sys/net: add ipv6_addrs_print()
Also use `IS_USED(MODULE_FMT)` rather than the preprocessor and rely
on the optimizer to eliminate the dead branch.
2022-06-06 20:46:48 +02:00
Francisco Molina
f485e9b0d9 sys/storage/vfs: initial import 2022-06-03 08:49:44 +02:00
Benjamin Valentin
d9114f81c4 suit: replace SUIT_URL_MAX with CONFIG_SOCK_URLPATH_MAXLEN 2022-06-01 13:00:51 +02:00
Benjamin Valentin
8e5812d218 suit/transport: move common code to new file 2022-06-01 13:00:51 +02:00
Benjamin Valentin
dd4a578ef3 suit/transport/vfs: add VFS as source for firmware updates 2022-06-01 13:00:50 +02:00
benpicco
4b6da5c8e4
Merge pull request #17863 from benpicco/sam0_sdhc
cpu/samd5x: add SD Host Controller implementation
2022-05-31 15:33:24 +02:00
Benjamin Valentin
babee877ce cpu/sam0_common: add SD Host Controller implementation 2022-05-31 11:07:20 +02:00
Benjamin Valentin
01eba05ca1 sys/net/sock: add a word of warning to sock_udp_create()
If a socket is created we must also call sock_udp_recv() on it as
otherwise messages will get stuck in it's queue until the socket is
closed (which might be never).

If applications only want to send without receiving, they must use
sock_udp_send().
2022-05-30 20:21:13 +02:00
Martine Lenders
2d67eaf7ef
Merge pull request #18105 from kfessel/p-deprecate-ztimer-now64-2
ztimer: add module removal information to doxygen and date it
2022-05-25 18:54:09 +02:00
benpicco
31b8518d20
Merge pull request #17965 from benpicco/coap_get_blockopt-uint8
nanocoap: use uint8_t for szx value
2022-05-25 14:00:04 +02:00
Benjamin Valentin
1662f0fa46 sys/suit: move suit_storage_helper() to handlers_command_seq.c 2022-05-25 12:17: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
Hauke Petersen
f10a28a7f7 net/ble/skald: let itvl be configured per context 2022-05-24 13:02:10 +02:00
Martine Lenders
3d819ce707
gnrc_netif: make auto-config of compression context optional 2022-05-24 12:30:36 +02:00
Benjamin Valentin
87359bb70a nanocoap_vfs: add nanocoap_vfs_get() 2022-05-24 09:32:57 +02:00
Benjamin Valentin
ad7d974183 nanocoap: define default block size 2022-05-24 09:32:09 +02:00
Benjamin Valentin
00221818b6 nanocoap: use uint8_t for szx value
The value is an exponent, 8 bits totally suffice here
2022-05-23 23:41:21 +02:00
benpicco
08e430bee7
Merge pull request #17956 from benpicco/coapfileserver
gcoap: Add file server
2022-05-23 22:10:49 +02:00
Marian Buschsieweke
16f859dafd
drivers/saul: use const qualifier for data to write
This makes life easier when calling e.g. `saul_reg_write()` with data
stored in flash.

As now the signatures for reading and writing differ (in that `const`
qualifier only), `saul_notsup()` is split into `saul_write_notsup()`
and `saul_read_notsup()`. However, one is implemented as a symbol alias
of the other, so that ROM consumption remains unchanged.
2022-05-23 08:35:27 +02:00
chrysn
185dfea07f gcoap_fileserver: New module to serve VFS via CoAP 2022-05-22 16:36:21 +02:00
chrysn
bb56b34c3a
Merge pull request #18117 from LP-HAW/fix-phydat_to_json
sys/phydat: fix phydat_to_json precondition
2022-05-19 23:24:25 +02:00
Karl Fessel
b7fef93f9c ztimer: add module removal information to doxygen 2022-05-19 11:39:00 +02:00
benpicco
82fd89fa89
Merge pull request #18040 from benpicco/vfs_util-hash
sys/vfs_util: add vfs_file_<hash>() functions and md5sum, sha1sum and sha256sum shell commands
2022-05-19 09:08:23 +02:00
Lars Pfau
7a94b36430 sys/phydat: fix phydat_to_json dim precondition 2022-05-19 07:29:51 +02:00
Francisco
37da85f047
Merge pull request #18033 from thingsat/pr/sx1280_v2
drivers/sx1280: add driver for SX1280 transceiver v2
2022-05-18 22:10:38 +02:00
benpicco
7c62c8983d
Merge pull request #17958 from benpicco/nanocoap-blockwise_put
nanocoap_sock: add nanocoap_sock_block_request()
2022-05-18 10:40:24 +02:00
Benjamin Valentin
c20a1d04c8 net/nanocoap: improve documentation of coap_pkt_t 2022-05-17 23:07:23 +02:00
Benjamin Valentin
b99d4b58bd nanocoap_sock: add nanocoap_sock_block_request() 2022-05-17 23:07:23 +02:00
Benjamin Valentin
f2279e43ae nanocoap_sock: support sending CoAP packet with payload snips 2022-05-17 23:07:23 +02:00
benpicco
cabb0b7398
Merge pull request #18109 from benpicco/vfs_unmount_by_path
sys/vfs: add vfs_unmount_by_path()
2022-05-17 20:25:18 +02:00
Aymeric Brochier
8e86382e29 sys/include/net/lora: add 2.4Ghz BW definitions 2022-05-17 15:30:01 +02:00
Benjamin Valentin
427d06c987 sys/vfs_util: add vfs_file_sha256() 2022-05-17 11:30:51 +02:00
Benjamin Valentin
846adfc0cc sys/vfs_util: add vfs_file_sha1() 2022-05-17 11:30:51 +02:00
Benjamin Valentin
65578269fc sys/vfs_util: add vfs_file_md5() 2022-05-17 11:30:51 +02:00
benpicco
1c97eea8b9
Merge pull request #18038 from benpicco/vfs_util
sys/vfs_util: add VFS helper functions
2022-05-17 02:17:38 +02:00
chrysn
ee346fe628 sys/vfs: Point user to simplified functions 2022-05-16 13:52:29 +02:00
Benjamin Valentin
c15e87475b sys/vfs_util: add VFS helper functions 2022-05-16 13:52:29 +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
ff4c738e2d sys/vfs: add vfs_unmount_by_path() 2022-05-16 11:11:11 +02:00
benpicco
1e315c7308
Merge pull request #16748 from jia200x/pr/gnrc_netif/remove_netdev_event_isr_msg
gnrc_netif: use event loops by default to process ISR
2022-05-13 18:49:01 +02:00
Martine Lenders
dbed2b48ea
nanocoap_cache: add helper function to check if entry is stale 2022-05-13 12:14:55 +02:00
Martine Lenders
310ed649ae
gcoap: reflect truncation with caching 2022-05-13 12:14:55 +02:00
Martine Lenders
728c7d6088
gcoap: add nanocoap_cache support for clients 2022-05-13 12:14:54 +02:00
Martine Lenders
cbbde07cc6
gcoap: add helper function to get request header from a request memo 2022-05-12 15:22:05 +02:00
Martine Lenders
73bcd83543
nanocoap_cache, forward_proxy: add ETag validation support 2022-05-12 13:22:41 +02:00
Benjamin Valentin
aae9bb0a91 net/netopt: remove NETOPT_RX_END_IRQ 2022-05-11 23:44:24 +02:00
Cenk Gündoğan
8750605d26
nanocoap: add cache for response messages 2022-05-10 18:43:56 +02:00
Jose Alamos
38798cb877 gnrc_netif: use events instead of msg queue for ISR offload 2022-05-10 17:48:42 +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
Marian Buschsieweke
3dad6740da
Merge pull request #17990 from benpicco/nanocoap-void
nanocoap: use void * for payload bytes
2022-05-10 10:49:05 +02:00
Benjamin Valentin
6e1fb4c3aa sys/net/sock: introduce SOCK_AUX_SET_LOCAL 2022-05-10 09:24:56 +02:00
Benjamin Valentin
f11899f6bb sys/net: add local to sock_udp_aux_tx_t 2022-05-10 09:24:56 +02:00
Benjamin Valentin
bcd58bfd10 sys/net: add local to sock_ip_aux_tx_t 2022-05-10 09:24:56 +02:00
Benjamin Valentin
79987483e4 net/gnrc_netif: clarify documentation of gnrc_netif_ipv6_addrs_get()
Reformulate the documentation to make it clear that this returns the
*size* of the addresses, not the number of addresses.
2022-05-09 21:46:01 +02:00
benpicco
de23ba0d04
Merge pull request #18046 from benpicco/nanocoap-minor
nanocoap: minor fixes
2022-05-05 14:56:47 +02:00
Marian Buschsieweke
08ae9bd771
sys/include/time_units.h: add more constants
Added all sensible conversion factors up to days and ordered them.
2022-05-05 11:31:45 +02:00
Karl Fessel
3680198619 ztimer: deprecate ztimer_now64 and ztimer_now_t 2022-05-04 15:57:57 +02:00
Benjamin Valentin
0847c18a18 nanocoap: use size_t for payload_len 2022-05-03 11:32:20 +02:00
Benjamin Valentin
cabb2c912d nanocoap: use void * for payload bytes 2022-05-03 11:32:20 +02:00
Benjamin Valentin
76090d98d4 nanocoap: fix doc of coap_blockwise_cb_t return code
see 04a8a36734
2022-05-03 03:54:17 +02:00
Benjamin Valentin
42e5d0d402 sys/vfs: add vfs_write_iol() 2022-05-02 23:23:52 +02:00
Benjamin Valentin
501ca7e34d sys/iolist: introduce 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
878596d393 gnrc_netif: improve documentation of gnrc_netif_ipv6_add_prefix() 2022-04-29 22:56:35 +02:00
Teufelchen1
4f60140014 net/gnrc: Fixing whitespace in the documentation 2022-04-29 14:19:25 +02:00
Laurin Wolf
2d9a7e27c3 /net/sock/udp: designated iolist_t intializer 2022-04-28 23:47:45 +02:00
benpicco
42f0d0d24c
Merge pull request #18013 from kfessel/p-coap_pkt-token-deprecate
net/nanocoap: deprecate coap_pkt token ptr
2022-04-28 11:25:47 +02:00
Karl Fessel
dcac22eebb net/nanocoap: deprecate coap_pkt token ptr 2022-04-27 12:31:28 +02:00
cdf1d43e15
Merge pull request #17984 from fjmolinas/pr_suit_install_once
sys/suit: avoid installing payload twice
2022-04-27 09:44:58 +02:00
chrysn
0a72fc9255
Merge pull request #16812 from chrysn-pull-requests/cord-doc-discoverability
net/cord doc: Usability fixes
2022-04-26 21:10:52 +02:00
Alexandre Moguilevski
17afe9cb1f sys/include/ztimer64: fix for xtimer_msg_receive_timeout64 in xtimer_compat.h 2022-04-25 17:12:11 +02:00
Francisco Molina
e66ad95c4c sys/suit: avoid installing payload twice 2022-04-25 15:21:22 +02:00
677871d717 suit/transport/coap: Use generic subtree handler
The SUIT CoAP code can make use of the generic subtree handler. This
commit removes the obsolete code to make use of the more generic
nanocoap subtree handlers.
2022-04-23 10:21:37 +02:00
eecac6945b nanocoap: Add handler for resource-based subtrees
This adds a coap_handler_t function that can be used to parse new
subtrees. The subtree information is included in the context pointer of
the call and must be of type coap_resource_subtree_t. This object then
contains the pointer and length of a different coap_resource_t instance.
2022-04-23 10:12:18 +02:00
Benjamin Valentin
6113b79bdb ztimer64_xtimer_compat: fix ztimer_msleep() 2022-04-22 18:12:45 +02:00
benpicco
c032e40fba
Merge pull request #17976 from benpicco/coap_get_token
nanocoap: add coap_get_token()
2022-04-22 10:08:30 +02:00
Francisco
7307923703
Merge pull request #17960 from benpicco/sock_urlpath
nanocoap_sock: add nanocoap_sock_url_connect()
2022-04-22 08:26:12 +02:00
Benjamin Valentin
e627d25752 nanocoap: constify get functions 2022-04-21 15:39:25 +02:00
Benjamin Valentin
328d46277d nanocoap: add coap_get_token() 2022-04-21 15:34:31 +02:00
56fdc90ef4
Merge pull request #17952 from leandrolanzieri/pr/sys/event/add_doc_and_assert
sys/event: Add documentation and enforce waiter on wait
2022-04-19 09:24:53 +02:00
Benjamin Valentin
2ea6c81217 nanocoap_sock: add nanocoap_sock_url_connect() 2022-04-18 01:53:23 +02:00
Benjamin Valentin
f6be7d6ffe sys/net/sock_util: add sock_urlpath() 2022-04-18 01:36:50 +02:00
benpicco
c610b1fa2f
Merge pull request #17939 from fjmolinas/pr_suit_manifest_ram_seq_no
sys/suit: save seq_number when parsing manifest
2022-04-15 14:22:57 +02:00
Leandro Lanzieri
b3b76bf6f3
sys/event: ensure that a queue has a waiter before waiting for flags
Document and enforce that a queue has a waiter (i.e. it is claimed)
before waiting for thread flags.
2022-04-14 17:10:24 +02:00
Leandro Lanzieri
d3ee32fe97
sys/event: add queue initialization pre-cond to event_post
Document that a queue should have been initialized before posting events
to it.
2022-04-14 17:08:42 +02:00
benpicco
2790e361d8
Merge pull request #17946 from fjmolinas/pr_net_af_cleanup_doc
sys/include/net/af: fix doc comment
2022-04-14 13:46:29 +02:00
Francisco Molina
7e520b1194 sys/include/net/af: fix doc comment 2022-04-14 09:23:27 +02:00
Francisco Molina
6a1b472a06 sys/suit: save seq_number when parsing manifest 2022-04-14 08:27:30 +02:00
benpicco
32790eb8f2
Merge pull request #17509 from benpicco/nanocoap-rework
sys/net/nanocoap: refactor to remove work-buffer requirement
2022-04-14 01:17:30 +02:00
Benjamin Valentin
dbbb602522 net/coap: refactor nanocoap_request for zero-copy operation
This removes the need for a user provied work buffer from nanocoap.
Instead we let the user operate directly on network stack internal
memory and provide a callback mechanism to make sure the memory is
properly freed again.
2022-04-13 19:33:00 +02:00