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
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
benpicco
6a15ad4df2
Merge pull request #18179 from maribu/sys/shell_commands
...
sys/shell/commands: add static qualifier where appropriate
2022-06-14 10:06:07 +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
Marian Buschsieweke
4f769c2f55
sys/shell/commands: add static qualifier where appropriate
...
Due to the conversion to XFA based SHELL_COMMAND() much fewer function
need to expose a symbol. Hence, spray `static` all over the place.
2022-06-11 14:38:58 +02:00
benpicco
593b5d376d
Merge pull request #18186 from maribu/sys/fmt
...
sys/fmt: fix output on native
2022-06-11 08:07:22 +02:00
Marian Buschsieweke
85cf4aef03
sys/net/ipv6: fix ipv6_addrs_print()
...
Fix incorrect printing of the separator after the last item.
2022-06-10 11:02:42 +02:00
Marian Buschsieweke
4f9e35254a
sys/fmt: fix print() for native
2022-06-10 11:02:40 +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
Benjamin Valentin
d8da1b631c
sys/shell: add 'ncput' shell command
2022-06-08 17:21:19 +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
d5d08e19fd
sys/shell_lock: add telnet support
2022-06-08 13:01:23 +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
4b694958a3
Merge pull request #18176 from fjmolinas/pr_ztimer_init_stdio_rtt_semihosting_log
...
sys/ztimer: no log for stdio_rtt/semihosting
2022-06-07 15:43:50 +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
Marian Buschsieweke
66a04926ca
sys/shell_commands: fix signature of _openwsn_ifconfig
2022-06-07 09:24:49 +02:00
Marian Buschsieweke
86e0ba3cdb
sys/shell/commands: remove stale reference to id cmds
...
The shell command `id` was dropped in
b3a061e0ab
but somehow the command entry
was left it. This cleans it up.
2022-06-07 09:24:49 +02:00
Francisco Molina
c9fc236576
sys/ztimer: no log for stdio_rtt/semihosting
...
Both modules use ztimer for stdio, so can't call stdio based functions
before the module is initialized
2022-06-07 08:51:10 +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
Marian Buschsieweke
ceeb28fb69
sys/fmt: uncrustify
2022-06-03 09:10:15 +02:00
Marian Buschsieweke
68dcf27eab
sys/fmt: fix interaction with stdio
...
Use fwrite instead of write to not bypass caching stdio. Other fmt's
print function are too much of a footgun to use.
2022-06-03 09:10:15 +02:00
Francisco Molina
f485e9b0d9
sys/storage/vfs: initial import
2022-06-03 08:49:44 +02:00
Francisco Molina
013838626e
sys/suit/storage: use XFA
2022-06-03 08:49:43 +02:00
benpicco
e1e2b7c5b6
Merge pull request #17601 from gschorcht/cpu/esp32/upgrade_esp-idf_v4.4
...
cpu/esp32: Upgrade to ESP-IDF v4.4
2022-06-02 10:18:07 +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
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
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
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