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

9956 Commits

Author SHA1 Message Date
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
Gregory Holder
ba1b12f3e6 net/iee802154: fix typo in docs 2022-08-04 15:09:20 +02:00
Benjamin Valentin
199e31ef43 gcoap/fileserver: ignore URI HOST option 2022-08-04 12:04:59 +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
70a8cf0d63 sys/shell/commands: add recursive unlink to sc_vfs 2022-08-03 22:09:21 +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
benpicco
df8d1f30c8
Merge pull request #18388 from chrysn-pull-requests/sync-cargo-lock-files
rust: Bring lock files in sync with toml files
2022-08-02 21:40:30 +02:00
Benjamin Valentin
3f0a6c8f9d sys/shell: improve 'ncget' command
Allow to specify destination directory and concat the filename
automatically.
2022-08-02 10:02:39 +02:00
chrysn
863a1c2ac1 rust: Update cstr dependency
A change in Rust nightly features broke version 0.2.5 of the `cstr`
crate, whose nightly-only features are enabled in some examples. The
breakage was quickly fixed upstream in the 0.2.6 version, this updates
the locks.
2022-08-01 16:36:43 +02:00
chrysn
86dc086379 rust: Bring lock files in sync with toml files
The riotmodules dependency was missed in bc8ec6d5, and while generally
it does not severly harm builds, it does harm builds riotdocker CI where
branches are switched, which is blocked by dirty files in the checkout.

The riot-wrappers version was missed when what is now 5e75f4bd was
rebased onto fdc4e11a.
2022-08-01 16:28:12 +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
Benjamin Valentin
0cb3746a97 sock_dns_mock: pull in DNS module 2022-07-31 17:39:04 +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
e128736014 net/util: make use of dns_query() 2022-07-29 17:48:26 +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
Martine Lenders
96b1d9c59e
tests/gnrc_sock_dodtls: provide DNS over DTLS test application 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
875411fd3a
gcoap_dns: fix block-wise transfer 2022-07-25 20:17:00 +02:00
Martine Lenders
349a89c9fa
gcoap_dns: replace printfs with DEBUG 2022-07-25 19:51:47 +02:00
Kevin "Tristate Tom" Weiss
aa268f0a0a
Merge pull request #17739 from leandrolanzieri/drivers/model_kconfig_eth
drivers: model kconfig for Ethernet drivers
2022-07-25 14:21:42 +02:00
Leandro Lanzieri
ec32e41f02
sys/net/netopt: model in Kconfig 2022-07-25 11:08:31 +02:00
Marian Buschsieweke
726a8bd5fe
Merge pull request #18360 from miri64/gnrc_nib/fix/config-deps
gnrc_ipv6_nib: make configurable via Kconfig again
2022-07-22 20:40:38 +02:00
Martine Lenders
fe3d620a63
gnrc_ipv6_nib: make configurable via Kconfig again 2022-07-22 17:51:57 +02:00
Leandro Lanzieri
96de3ce511
drivers/ethos: model in Kconfig 2022-07-22 16:06:36 +02:00
Leandro Lanzieri
e0bd45ef59
sys/test_utils/netdev_eth_minimal: model in Kconfig 2022-07-22 15:57:20 +02:00
Marian Buschsieweke
de064b7da0
Merge pull request #18349 from maribu/sys/shell/commands/sc_gnrc_icmpv6_echo
sys/shell/commands/ping: fix dependency & convert to ztimer
2022-07-21 17:37:59 +02:00
Marian Buschsieweke
cab761ba5d
sys/shell/commands/sc_gnrc_icmpv6_echo: use ztimer 2022-07-21 13:20:11 +02:00
Marian Buschsieweke
3a5e3636bb
sys/shell/commands/sc_gnrc_icmpv6_echo: fix dependency
Add missing dependency to xtimer so that the shell command `ping` is
again provided when requested.
2022-07-21 13:20:10 +02:00
Martine Lenders
2e5a66e7d2
gcoap_dns: Add DNS cache support 2022-07-20 10:45:08 +02:00
Martine Lenders
fe4deff522
dns_cache: synchronize access with mutex 2022-07-20 06:30:14 +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
1761726024
net/dns: provide Kconfig 2022-07-18 11:43:35 +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
a6c617a221 gcoap: make use of coap_request_ctx_t 2022-07-17 14:29:39 +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
Marian Buschsieweke
576f82732f
Merge pull request #18311 from benpicco/gnrc/ipv6_auto_subnets-wording
gnrc/ipv6_auto_subnets: improve wording in documentation, add to Doxygen
2022-07-16 13:49:20 +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
Benjamin Valentin
d09d29a581 tests/unittests: add tests sock_dns_cache 2022-07-15 00:03:49 +02:00
Benjamin Valentin
077a41a719 sock_dns: implement DNS cache 2022-07-13 23:23:52 +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
Martine Lenders
11dc836d61
Merge pull request #18307 from nmeum/pr/gnrc_dhcpv6_client_parse_reply
gnrc_dhcpv6_client: Fix out-of-bounds access during option parsing
2022-07-12 19:30:50 +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
Sören Tempel
f073dcdb3d gnrc_dhcpv6_client: Fix out-of-bounds access during option parsing
The _parse_reply function iterates over the DHCPv6 message options
twice but only performs sanity checks on the option length in the
first iteration. As such, both loop iterations need to be identical.
Unfortunately, there aren't without this commit as (1) they use
different maximum length values and (2) the first iteration stops
parsing as soon as it encounters a zero option while the second
doesn't. As such, it is possible for out-of-bounds read to be
performed by the second loop iteration. This commit fixes this.
2022-07-11 22:55:33 +02:00
MrKevinWeiss
3095afafd2
sys/test_utils: add netdev ieee802154 minimal processing 2022-07-11 09:25:01 +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
chrysn
d9879c96ca
Merge pull request #16833 from chrysn-pull-requests/rust-lib
Add some Rust library building infrastructure
2022-07-10 21:39:35 +02:00
chrysn
5e75f4bd13 rust_riotmodules_standalone: This needs its Cargo.lock checked in
Of all the library crates, this is the only root crate, and responsible
for pinning good versions.
2022-07-10 21:27:13 +02:00
chrysn
68985aa6be rust_riotmodules: pub use instead of extern crate
See-Also: https://github.com/RIOT-OS/RIOT/pull/16833#issuecomment-1071243210
2022-07-10 21:27:13 +02:00
chrysn
ebfa6f61d6 shell/democommands: Add example Rust module 2022-07-10 21:27:12 +02:00
chrysn
841e4deee5 lsm303agr: New sensor driver using external Rust crate
It is enabled by saul_default on microbit-v2.

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2022-07-10 21:27:12 +02:00
chrysn
ba76c6ee65 Rust: Add crates-to-module adapter 2022-07-09 21:15:29 +02:00
Martine Lenders
107a2a0753
gcoap_dns: initial import of a DNS over CoAP client 2022-07-01 18:44:02 +02:00
Sören Tempel
4dcb8edcc8 asymcute: Fix deadlocks in REGACK, SUBACK and UNSUBACK handler
The handlers for these MQTT message lock the connection mutex on
function entry. During automated testing of asymcute, I discovered
return paths for these function which do not unlock the connection
mutex. This results in a deadlock which prevents asymcute from
sending any further messages.
2022-07-01 00:55:07 +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
Jose Alamos
2c76dbf351
gnrc_netif: move option_tested to default init function 2022-06-29 17:48:27 +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
5b7d9be254 net/eui_provider: provide netif index to EUI provder function
An EUI provider can provide EUIs for multiple interfaces based on
their index.

For this is should get the index of the interface, not the index of
the EUI provider.
2022-06-23 22:30:24 +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
chrysn
5852167772
Merge pull request #18227 from benpicco/gnrc_pktbuf_static-use-after-free
sys/net/gnrc_pktbuf_static: add use-after-free detection
2022-06-22 21:28:28 +02:00
Benjamin Valentin
a165093b10 sys/net/gnrc_pktbuf_static: add use-after-free detection 2022-06-22 15:41:15 +02:00
benpicco
45aa420c42
Merge pull request #18241 from benpicco/fatfs_vfs_name_max
sys/vfs: FATFS_VFS_FILE_BUFFER_SIZE depends on VFS_NAME_MAX
2022-06-22 13:54:31 +02:00
Marian Buschsieweke
b2ff5b02bd
Merge pull request #18242 from benpicco/nanocoap-debug
nanocoap_sock: fix debug output
2022-06-22 13:54:24 +02:00
Martine Lenders
4ed3b1a43c
Merge pull request #17078 from yarrick/ifconfig_order
sys/shell/gnrc_netif: List netifs in registration order
2022-06-22 09:33:58 +02:00
Benjamin Valentin
8c4e5629d1 nanocoap_sock: fix debug output 2022-06-21 23:06:33 +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
Erik Ekman
aaa73b79ed sys/shell/gnrc_netif: List netifs in registration order
The netif list is used like a stack, so it needs to be
iterated in reverse to keep the registration order.

Time complexity in O(n^2), but the the list is normally very short
(1-2 items).

Before:
```
> ifconfig
Iface  10  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]

Iface  7  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]
```

Now they are in the increasing order:
```
> ifconfig
Iface  7  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]

Iface  10  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]
```

When lwIP is hacked to use the same shell command, it also
lists it interfaces in the expected order (was ET1,ET0 before):
```
> ifconfig
Iface  ET0  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]

Iface  ET1  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]
```
2022-06-21 11:54:08 +02:00
Benjamin Valentin
14afafa2d2 gnrc_pktbuf: fix gnrc_pktbuf_contains() 2022-06-17 19:58:01 +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
11e40a9d61 nanocoap_sock: fix wrong assertion
The assertion is a bit overeager.
In case of receiving a wrong message ID, we re-try receive without
entering the STATE_REQUEST_SEND state again, so it is expected that
we get a non-NULL ctx/response from sock_udp_recv_buf().

What this assert should actually check is that we don't get a non-NULL
ctx after calling sock_udp_recv_buf() with a non-NULL ctx.

So make this explicit to not falsely fail the assertion.
2022-06-16 18:54:16 +02:00
Benjamin Valentin
7bc1fea55a sys/tm: drop CONST 2022-06-16 15:26:27 +02:00
Marian Buschsieweke
dd6243f27f
Merge pull request #18213 from maribu/sys/shell/commands/sc_lwip_netif.c
sys/shell/commands/sc_lwip_netif.c: add address state
2022-06-16 13:38:55 +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
Marian Buschsieweke
3954217fdf
sys/shell/commands/sc_lwip_netif.c: add address state
Add information about the address state (e.g. if it is valid, preferred,
tentative, how many probes have been sent)
2022-06-16 08:40:42 +02:00