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

10875 Commits

Author SHA1 Message Date
Benjamin Valentin
0b925c2494 sys/shell: fix reserved addresses in i2c_scan
There are only 8 reserved addresses on the low end of the address space.
2024-01-18 15:08:14 +01:00
Benjamin Valentin
c650b38989 gcoap: move gcoap_fileserver to nanoCoAP 2024-01-17 19:21:47 +01:00
Marian Buschsieweke
0cffb7f365
Merge pull request #20257 from fzi-haxel/native64-part1
core, sys, drivers: 64-bit support preparations
2024-01-17 15:40:34 +00:00
Frederik Haxel
394cd0e3a8 sys: 64 bit compatibility
* priority_queue_t: Replaced `-1U` literal with PRIORITY_QUEUE_DATA_SIGNALING define
* architecture.h: Added 64-bit
* bloom.h: Fixed typedef for the hashfp_t function pointer
* vfs.h: Increased default vfs buffer sizes for 64 bit
* bytes.h: Check if socklen_t is already defined
* ztimer: Use PRIxPTR format specifier
2024-01-17 16:05:12 +01:00
mguetschow
084dedcca7
Merge pull request #20116 from bergzand/pr/sha256/no_static
hashes/sha2{24,56}: Remove static variables from sha256
2024-01-16 16:01:56 +00:00
benpicco
c1ae2ecb9f
Merge pull request #20259 from fabian18/pr/gnrc/ipv6/nib_rejoin_ip6_mcast
gnrc/ipv6/nib: rejoin ipv6_addr_all_nodes_link_local on interface up
2024-01-16 15:11:53 +00:00
434e5647d0
hashes/sha224: Remove static variables from sha224 2024-01-16 16:00:44 +01:00
bac3f48dc9
hashes/sha256: Remove static variables from sha256
This removes the static (thread-unsafe) variables from sha256 and
hmac_sha256 to remove a potential footgun. The static variable is only
used when the caller does not supply a pointer to store the digest and
it is returned via the (undocumented) return value.

This commit removes this option and makes the digest argument mandatory.
2024-01-16 16:00:39 +01:00
Fabian Hüßler
ab3f77e673 gnrc/ipv6/nib: rejoin ipv6_addr_all_nodes_link_local on interface up 2024-01-16 12:34:37 +01:00
Frederik Haxel
291c89f1e7 sys/net/gnrc: Fixed wrong PRIuSIZE format specifier 2024-01-12 17:17:33 +01:00
benpicco
0c80553534
Merge pull request #20244 from benpicco/sys/shell/cmds-version
sys/shell: add firmware version to version cmd
2024-01-11 17:56:40 +00:00
Benjamin Valentin
f932552b99 sys/shell: add firmware version to version cmd 2024-01-11 14:38:15 +01:00
benpicco
714958ad3c
Merge pull request #20241 from benpicco/busy_wait
sys/busy_wait: add busy wait helper
2024-01-11 12:19:31 +00:00
benpicco
bb4c4ddf20
Merge pull request #20243 from benpicco/gnrc_ipv6_nib_pl_set-relax
gnrc/nib: allow prefix to be on-link without being used for address
2024-01-10 22:19:03 +00:00
Benjamin Valentin
433438c924 gnrc/nib: allow prefix to be on-link without being used for address 2024-01-10 14:49:03 +01:00
Benjamin Valentin
bfd29f0fa7 sys/busy_wait: add busy wait helper 2024-01-09 19:03:15 +01:00
Benjamin Valentin
7240f707a5 nanocoap_sock: implement FETCH methods 2024-01-09 12:40:10 +01:00
Benjamin Valentin
7c9345f53a sys/suit: introduce suit_worker_done_cb() 2024-01-08 20:39:12 +01:00
benpicco
1d3a7cdb5a
Merge pull request #20224 from benpicco/GNRC_IPV6_STATIC_LLADDR_FIXED
gnrc/ipv6/nib: allow for predictable static link-local addresses
2024-01-04 18:17:09 +00:00
Benjamin Valentin
4a5757b9af gnrc/ipv6/nib: add Kconfig for static link-local address 2024-01-04 17:45:23 +01:00
Benjamin Valentin
7196b0a2ae gnrc/ipv6/nib: allow for predictable static link-local addresses 2024-01-04 16:13:37 +01:00
Marian Buschsieweke
616b48d354
Merge pull request #20228 from benpicco/cc2538_get_eui64_primary
cpu/cc2538: fix EUI provider
2024-01-04 14:30:19 +00:00
Benjamin Valentin
ecb1e57b18 net/eui_provider: include board.h 2024-01-04 13:16:24 +01:00
benpicco
519f8251a4
Merge pull request #20220 from LP-HAW/fix-benchmark-overflow
sys/benchmark: fix integer overflow in benchmark_print_time()
2024-01-03 14:30:33 +00:00
benpicco
6d180c365c
Merge pull request #20210 from Enoch247/fix-riotboot
riotboot: fix build errors
2024-01-02 17:54:49 +00:00
benpicco
59eb017448
Merge pull request #20198 from Teufelchen1/chore/fmt_test
tests: Slightly increase coverage of fmt unittests
2024-01-02 14:02:59 +00:00
Mikolai Gütschow
aaf7064b51
sys/psa_crypto: fix compile bug for certain configuration 2024-01-02 13:59:36 +01:00
Joshua DeWeese
9f27a5a246 sys/riotboot/slot: fix failed build
When riotboot/slot.h is included, but riotboot is not enabled in the
build, a compiler error occures. This is because SLOT0_LEN is not
defined. This patch fixes this by surrounding the offending macrro with
a conditional compile. `riotboot_slot_size()` may still be called, in
which case it returns 0 for the size of any slot given.
2023-12-21 16:33:15 -05:00
Joshua DeWeese
edb419ab7c sys/shell: update doc
This patch updates shell.c's doc that undersells the shells complexity.
The comment seems to have been written prior to the shell's ability to
parse command args and handle quoting sequences.
2023-12-21 16:18:23 -05:00
Joshua DeWeese
5cd52885c1 sys/shell: fix missing NULL terminator
This patch adds the missing NULL terminator to the argv passed to shell
command handlers. Without it, Newlib's getop() was intermittently
causing hardfaults. Closer inspection of NewLib's code revealed that it
relies in this NULL termination. ANSI-C also requires it of the argv
passed to main().
2023-12-21 15:53:04 -05:00
Joshua DeWeese
8a9dd047be sys/shell: add details to doc
This patch adds details to the rationale behind the design of the
argv/argc handling for shell command handlers. It also fixes a
misspelling.
2023-12-21 15:53:04 -05:00
Joshua DeWeese
fcd3d0decf sys/shell: fix doc
Fixed broken Markdown code spans. Also added a code span around mention
of getopt.
2023-12-21 15:52:53 -05:00
Frederik Haxel
9272ad8d9a net/gnrc/rpl: Remove unused debug string 2023-12-21 12:06:47 +01:00
Frederik Haxel
64ba553d1f sys: Use size_t print format specifier
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
2023-12-21 12:02:19 +01:00
Frederik Haxel
b5a43801fb print: Added size_t print format specifier
- Added `PRIuSIZE`, `PRIxSIZE`, etc. to `architecure.h`
- Changed `CODING_CONVENTIONS.md` regarding `size_t` printing

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
2023-12-21 12:02:16 +01:00
Oleg Hahm
724e6e0098
Merge pull request #20167 from benpicco/gnrc_ipv6_classic
gnrc_ipv6_nib: fix config for mixed 6lo/classic setup
2023-12-20 12:12:40 +00:00
Benjamin Valentin
9ceb7cd30c gnrc/ipv6/nib: fix GNRC_IPV6_STATIC_LLADDR when link state changes 2023-12-19 18:33:59 +01:00
Teufelchen1
4a62b9ff31 tests: Slightly increase coverage of fmt unittests 2023-12-19 18:11:28 +01:00
Benjamin Valentin
a1c3d5a4ea nanocoap: rename coap_get_uri_query() -> coap_get_uri_query_string()
Free up the name for a function that will do something actually useful
2023-12-19 14:01:53 +01:00
Benjamin Valentin
f56edf5849 nanocoap: defuse footgun in coap_get_uri_query() 2023-12-19 14:00:04 +01:00
Benjamin Valentin
fa1f60f4ac gnrc_ipv6_nib: fix config for mixed 6lo/classic setup 2023-12-19 10:47:54 +01:00
Benjamin Valentin
2f9c68dabc sys/net/netif: constify netif access 2023-12-15 16:50:21 +01:00
Benjamin Valentin
8f7dad6c53 gnrc: introduce gnrc_ipv6_classic pseudo-module 2023-12-11 23:31:21 +01:00
benpicco
81b5cf2e94
Merge pull request #20139 from benpicco/gnrc_sixloenc-fix
net/gnrc/netif: set 6LN flag for ethernet if gnrc_sixloenc is used
2023-12-07 20:06:13 +00:00
Marian Buschsieweke
d160a78ecc
sys/net/gnrc_sock: assume timeout is feasible
When not implementing the timeout feature, add an `assume()` that there
is no timeout. Otherwise things break at runtime and are hard to debug.
2023-12-06 13:48:27 +01:00
Benjamin Valentin
bc2c95c833 net/gnrc/netif: set 6LN flag for ethernet if gnrc_sixloenc is used 2023-12-04 22:56:28 +01:00
Marian Buschsieweke
d252eb7395
Merge pull request #19998 from fabian18/gnrc_static_messge_queues
gnrc: make message queues static
2023-12-04 11:21:08 +00:00
Fabian Hüßler
0cc2bdaf5b sys/include/net/gnrc: reduce stack by previously allocated message queue 2023-12-03 17:53:44 +01:00
Lena Boeckmann
de09b2a0b4
sys/psa_crypto: Build PSA Crypto functions based on module selection 2023-11-30 21:02:42 +01:00
Mikolai Gütschow
6935ea21e7
sys/hashes: add SHA-512 support 2023-11-29 19:18:51 +01:00
benpicco
6eed92b1b7
Merge pull request #20114 from benpicco/gnrc_netif-error
sys/net/gnrc/netif: print which netif failed to init
2023-11-29 00:14:45 +00:00
Benjamin Valentin
c5b6a49b21 sys/net/gnrc/netif: print which netif failed to init 2023-11-28 23:01:21 +01:00
benpicco
db6d918c46
Merge pull request #19965 from benpicco/sock_udp_recv-ealry
sock/udp: work around gnrc_sock_recv() returning early timeout
2023-11-28 12:31:39 +00:00
Benjamin Valentin
e2e5e03439 nanocoap_sock: use coap_get_code_raw() 2023-11-28 13:11:11 +01:00
Benjamin Valentin
4bfd87ffa2 nanocoap: rename coap_get_code() -> coap_get_code_decimal() 2023-11-28 13:11:11 +01:00
chrysn
e9e1f9cce4 sys/random doc: Point to auto initialization and its caveats 2023-11-23 23:34:56 +01:00
chrysn
df70e00b92 sys/random doc: Make implementation list visible 2023-11-23 16:50:23 +01:00
Benjamin Valentin
e3d00682bc sock/udp: work around gnrc_sock_recv() returning early timeout
sock_udp_recv_buf_aux() sometimes will return -ETIMEDOUT before
the given timeout has expired (e.g. 28798µs instead of 160000µs).

This messes with many assumptions and breaks protocols that rely
on the timeout.

Until we have a proper fix, add this workaround.
2023-11-14 13:33:16 +01:00
benpicco
81fd126d3e
Merge pull request #20076 from bergzand/pr/gcoap_msec
gcoap: Use millisecond timer for observe option values
2023-11-14 10:26:18 +00:00
Marian Buschsieweke
978176a283
Merge pull request #20074 from maribu/sys/flash_utils/avr
sys/flash_utils: Minor bug fixes
2023-11-11 12:58:08 +00:00
benpicco
5d54e89a17
Merge pull request #20078 from benpicco/mtd_dev_get
drivers/mtd: rename mtd_default_get_dev() -> mtd_dev_get()
2023-11-10 21:36:19 +00:00
Benjamin Valentin
c2f93c05f1 treewide: mtd_default_get_dev() -> mtd_dev_get() 2023-11-10 19:53:48 +01:00
a6a8f6e1cd
gcoap: Separate out observe option generation in own function 2023-11-10 16:01:57 +01:00
6425fda812
gcoap: Use millisecond timer for observe option values 2023-11-10 16:00:00 +01:00
Benjamin Valentin
75f10a5725 gnrc/ipv6/nib: don't do multicast neighbor solicitation on 6LoWPAN 2023-11-10 12:11:49 +01:00
Marian Buschsieweke
d6797867fb
sys/flash_utils: Fix signature in documentation
The function signature in the Doxygen generated doc was incorrect.
Given that the implementation does have the correct signature, the
impact may not be that large. Still, incorrect doc is confusing, so
let's fix it.
2023-11-10 11:17:51 +01:00
Benjamin Valentin
f731ec7bff sys/malloc_tracing: fix calloc printouts 2023-11-09 20:15:53 +01:00
bors[bot]
c0ae75b339
Merge #20003 #20028 #20036 #20041
20003: coap: create typedef for CoAP methods r=benpicco a=benpicco



20028: nanocoap: fix incorrect uses of coap_get_code() r=benpicco a=benpicco



20036: boards/nucleo-l4r5zi : add PWM configuration r=benpicco a=krzysztof-cabaj

### Contribution description

This PR adds to the Nucleo-l4r5zi PWM configuration

### Testing procedure

Flash the board using `tests/periph/pwm` program. Check if you could, for example, change LED 
intensity using PWM. 

### Issues/PRs references

None.

20041: pkg/littlefs2: bump to v2.8.1 r=benpicco a=bergzand

### Contribution description

Minor version number bump.

### Testing procedure

- Check if I copied the correct commit hash.
- Run the tests.


### Issues/PRs references

None

Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: krzysztof-cabaj <kcabaj@gmail.com>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
2023-11-02 11:01:23 +00:00
Benjamin Valentin
a8fc0a25ed gcoap_fileserver: use coap_get_code_raw() 2023-10-27 19:18:37 +02:00
Benjamin Valentin
a5cc48ad45 nanocoap_sock: use coap_get_code_raw() 2023-10-27 19:18:37 +02:00
Benjamin Valentin
54362e2c2a nanocoap/cache: use coap_get_code_raw() 2023-10-27 19:18:00 +02:00
Benjamin Valentin
db3294a481 nanocoap_sock: make use of coap_method_t 2023-10-26 11:37:14 +02:00
Benjamin Valentin
1e854ec187 coap: create typedef for CoAP methods 2023-10-26 11:37:14 +02:00
Martine Lenders
63fd5643e4
coap: Set COAP_FORMAT_DNS_MESSAGE to 553
Set since draft-ietf-core-dns-over-coap-03
2023-10-25 11:00:56 +02:00
Martine Lenders
410be58f36
gcoap_dns: Update draft URL
The DoC draft is a working group draft since September 2022
2023-10-25 10:54:31 +02:00
bors[bot]
647a13c392
Merge #19999
19999: nib/_nib-6ln: bail out early if address is no longer assigned r=miri64 a=benpicco



Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2023-10-24 16:01:53 +00:00
Benjamin Valentin
8779b5edde nib/_nib-6ln: don't check twice if address is assigned 2023-10-24 16:47:47 +02:00
Benjamin Valentin
7c6b367035 nib/_nib-6ln: bail out early if address is no longer assigned 2023-10-24 16:44:25 +02:00
bors[bot]
61ae692ae9
Merge #19994
19994: nanocoap: prevent integer underflow in coap_opt_put_uri_pathquery() r=miri64 a=benpicco





Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2023-10-24 09:20:51 +00:00
bors[bot]
a1e19312a3
Merge #19990
19990: sys/psa_crypto: allow repeated initialization r=benpicco a=mguetschow

### Contribution description

- simple unit test which calls `psa_crypto_init()` twice
- fix to no re-initialize key slots (which left them in a broken state)

### Testing procedure

- `make -C tests/sys/psa_crypto all test` succeeds
- `git checkout HEAD~1 && make -C tests/sys/psa_crypto all test` fails



Co-authored-by: Mikolai Gütschow <mikolai.guetschow@tu-dresden.de>
2023-10-23 16:32:14 +00:00
Benjamin Valentin
0fa04a3d57 nanocoap: prevent integer underflow in coap_opt_put_uri_pathquery()
If uri contains no path but only a query "?foo=bar" `len` would underflow.
Fix this by detecting if there is no path.

Reported by @Yu3H0
2023-10-20 12:59:42 +02:00
bors[bot]
03d3874e51
Merge #19465 #19981 #19995
19465: drivers/mtd: use XFA for pointers to defined MTDs r=benpicco a=gschorcht

### Contribution description

This PR provides the support to hold pointers to defined MTDs within a XFA. The XFA allows
- to access MTDs of different types (`mtd_flashpage`, `mtd_sdcard`, `mtd_emulated`, ...) by an index
- to determine the number of MTDs defined in the system.

### Testing procedure

To be defined once PR #19443 is merged because emulated MTDs will allow to test this PR on arbitrary boards.

### Porting Guide

For external boards:
 - remove the `MTD_NUMOF` definition from `board.h`
 - add `MTD_XFA_ADD(<mtd_dev>, <idx>);` to the definition of `<mtd_dev>`.
 - `MTD_0`, `MTD_1`, … defines are no longer needed.

### Issues/PRs references

 Related to PR #19443

19981: Fletcher32: Add incremental API r=benpicco a=bergzand

### Contribution description

This PR extends the current fletcher32 checksum with an incremental API mode. This way the bytes to be checksummed can be supplied via multiple successive calls and do not have to be provided in a single consecutive buffer.

I've also rephrased the warning with the original function a bit as that function uses an `unaligned_get_u16` to access the data. The data thus does not require alignment, but the length does need to be supplied as number of 16 bit words.

### Testing procedure

The test has been extended


### Issues/PRs references

None

19995: sys/psa_crypto: Fix macro for public key max size and SE example r=benpicco a=Einhornhool

### Contribution description
#### 1. Wrong public key size when using secure elements, introduced by  #19954
Fixed conditions for key size macros in `crypto_sizes.h`.

#### 2. EdDSA and ECDSA examples fail when using a secure element because of unsopported changes introduced by #19954
Updated `example/psa_crypto` to use only supported functions for secure elements.

### Testing procedure
Build `example/psa_crypto` for secure elements and run application

Output on master:
```
2023-10-19 14:33:24,372 # main(): This is RIOT! (Version: 2019.07-devel-22378-gb6772)
2023-10-19 14:33:24,372 # HMAC SHA256 took 56393 us
2023-10-19 14:33:24,372 # Cipher AES 128 took 68826 us
2023-10-19 14:33:24,372 # *** RIOT kernel panic:
2023-10-19 14:33:24,373 # HARD FAULT HANDLER
2023-10-19 14:33:24,373 # 
2023-10-19 14:33:24,373 # *** rebooting...

```
Output with fixes:
```
2023-10-19 13:35:24,715 # main(): This is RIOT! (Version: 2019.07-devel-22384-g8ef66-dev/psa-crypto-fixes)
2023-10-19 13:35:24,715 # HMAC SHA256 took 56374 us
2023-10-19 13:35:24,715 # Cipher AES 128 took 68805 us
2023-10-19 13:35:24,715 # ECDSA took 281164 us
2023-10-19 13:35:24,715 # All Done
```


Co-authored-by: Gunar Schorcht <gunar@schorcht.net>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
Co-authored-by: Lena Boeckmann <lena.boeckmann@haw-hamburg.de>
2023-10-19 19:01:12 +00:00
Fabian Hüßler
5aa3baac8c gnrc/udp: make message queue static 2023-10-19 17:52:30 +02:00
Fabian Hüßler
c741fa5fbe gnrc/pktdump: make message queue static 2023-10-19 17:49:25 +02:00
Fabian Hüßler
662f1be5d5 gnrc/sixlowpan: make message queue static 2023-10-19 17:47:24 +02:00
Fabian Hüßler
975f8959ce gnrc/ipv6: make message queue static 2023-10-19 17:45:08 +02:00
Lena Boeckmann
130420258c sys/psa_crypto: Fix conditions for public key max export size 2023-10-19 14:12:14 +02:00
Mikolai Gütschow
25aa2167f6
sys/psa_crypto: allow repeated calls to psa_crypto_init()
as defined per https://armmbed.github.io/mbed-crypto/html/api/library/library.html?highlight=psa_crypto_init#c.psa_crypto_init
2023-10-19 11:21:08 +02:00
Mikolai Gütschow
6ad2f052c5
sys/psa_crypto: remove unused variable 2023-10-19 11:21:03 +02:00
a00702ee65
Fletcher32: Rephrase note on 16 bit word operations 2023-10-18 13:22:44 +02:00
31df2ba0aa
Fletcher32: Add incremental API 2023-10-18 13:22:44 +02:00
bors[bot]
b6772c85fd
Merge #19968
19968: gcoap: fix underflow when correcting ETag from cache r=miri64 a=miri64



Co-authored-by: Martine Lenders <m.lenders@fu-berlin.de>
2023-10-17 14:20:41 +00:00
bors[bot]
910e0e28ed
Merge #19963 #19971 #19974 #19975 #19976
19963: sys/event/timeout: add event_timeout_is_pending() r=benpicco a=benpicco



19971: sys/shell/gnrc_netif: Fix a few blockers for sharing ifconfig shell r=benpicco a=yarrick



19974: gnrc_ipv6_ext_frag: _completed: Add comment why list head is not checked for NULL pointer dereference r=benpicco a=miri64

 


19975: pkg/nanocbor: Bump to latest commit r=benpicco a=bergzand

### Contribution description

Not much to see here

Important changes:
- Add stream-like interface for encoder
- Separate functions for number of items left in arrays and maps

### Testing procedure

The usual test should still work

### Issues/PRs references

None

19976: core: Express -1 as ~0 in thread_status_t cast r=benpicco a=SimonIT



Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: Erik Ekman <eekman@google.com>
Co-authored-by: Martine Lenders <m.lenders@fu-berlin.de>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
Co-authored-by: SimonIT <simonit.orig@gmail.com>
2023-10-16 15:31:25 +00:00
Marian Buschsieweke
edc43201db
tree-wide: fix typos in doc and comments
This should not change any generated binary
2023-10-16 12:17:48 +02:00
LP-HAW
568cbc0cde sys/benchmark: fix integer overflow in benchmark_print_time() 2023-10-13 18:19:41 +02:00
bors[bot]
3a4ec8d21e
Merge #19972
19972: RFC: Support enabling/disabling lwIP netifs from gnrc_netif shell r=miri64 a=yarrick



Co-authored-by: Erik Ekman <eekman@google.com>
2023-10-12 14:27:46 +00:00
Martine Lenders
988db6923d
gnrc_ipv6_ext_frag: _completed: Add comment why list head is not checked
... for NULL pointer dereference.
2023-10-12 16:24:18 +02:00
Erik Ekman
ee6ca2b6ce sys/shell/gnrc_netif: Use l2util versions of link addr helpers
To avoid dependency on gnrc files.
As suggested in #16965
2023-10-12 10:23:24 +02:00
bors[bot]
715da20ad6
Merge #19973
19973: sys/shell/gnrc_txtsnd: Move to separate module r=yarrick a=yarrick



Co-authored-by: Erik Ekman <eekman@google.com>
2023-10-12 08:20:25 +00:00
Erik Ekman
ea545d2028 sys/shell/gnrc_txtsnd: Move to separate module 2023-10-11 22:55:37 +02:00