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

8461 Commits

Author SHA1 Message Date
José Alamos
093272c562
Merge pull request #16000 from jeandudey/2021_02_12-ieee802154-bitcaps
net/ieee802154/radio: use bitflags for capabilities
2021-02-17 16:56:25 +01:00
Jean Pierre Dudey
243de6e501 net/ieee802154/radio: use bitflags for capabilities
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2021-02-17 10:56:28 +01:00
Francisco Molina
3cd12d3e1b
sys/include/net/netstats: move xtimer header where it is needed 2021-02-16 18:18:21 +01:00
Leandro Lanzieri
4172066ab3
Merge pull request #15984 from MrKevinWeiss/pr/posix_sleep/kconfig
sys/posix_sleep: Add Kconfig support
2021-02-15 16:01:09 +01:00
Leandro Lanzieri
85da504d2d
Merge pull request #15947 from nmeum/pr/clif_get_attr_empty
clif: Don't access any data if input is empty
2021-02-15 13:53:40 +01:00
MrKevinWeiss
b8eb12d43b sys/posix_sleep: add module to Kconfig 2021-02-15 12:24:38 +01:00
Sören Tempel
178c9eb745 gnrc_pktbuf: use _free function with gnrc_pktbuf_malloc
Otherwise the local mallocs variable is not decremented correctly (if
TEST_SUITES is defined) and the fuzzing setup (i.e. when MODULE_FUZZING
is defined) does not terminate. This regression was introduced in
3970b667aa.
2021-02-12 18:15:40 +01:00
MrKevinWeiss
c84c34c005 sys/fmt: Add print_s64_dec to header 2021-02-10 13:32:54 +01:00
Marian Buschsieweke
d7f3e92c30
Merge pull request #15975 from maribu/ztimer-doc
sys/ztimer: clearify doc on clock ops
2021-02-10 12:23:55 +01:00
Leandro Lanzieri
609c9ada34
Merge pull request #15945 from nmeum/pr/clif_get_attr_bounds
clif: After incrementing pos, make sure it is still in bounds
2021-02-10 08:50:10 +01:00
Martine Lenders
1db480006c
Merge pull request #15939 from namib-project/dhcp-mud-fix
sys/net/dhcpv6: Fixes for MUD URL option
2021-02-10 08:30:06 +01:00
Marian Buschsieweke
e241b43d3f
sys/ztimer: clearify doc on clock ops 2021-02-09 22:34:04 +01:00
807b154fc4
Merge pull request #15956 from fjmolinas/pr_riotboot_uncrustify
sys/riotboot: uncrustify
2021-02-09 22:14:50 +01:00
Jan Romann
6a2aa7ad52 sys/net/dhcpv6: Fix MUD URL option 2021-02-09 19:47:47 +01:00
benpicco
5fba2c8387
Merge pull request #14448 from benpicco/l2-peerstats-rebased
net/netstats: L1/L2 per neighbor statistics
2021-02-09 14:54:53 +01:00
Francisco Molina
6a79d94f1a
sys/riotboot: uncrustify 2021-02-09 13:38:31 +01:00
Benjamin Valentin
75bb317eba l2util: add l2util_addr_equal() 2021-02-09 12:27:58 +01:00
Benjamin Valentin
37dbbd969b shell_commands: provide command for neighbor statistics 2021-02-09 12:27:58 +01:00
3b7e852773 net/gnrc/netif: hook up netstats_neighbor 2021-02-09 12:27:58 +01:00
f97267ba68 sys/net: add netstats_neighbor 2021-02-09 12:27:58 +01:00
Francisco Molina
6baadad152
sys/riotboot/flashwrite: when invalidating erase checksum as well 2021-02-09 11:11:47 +01:00
Martine Lenders
209b48e385
Merge pull request #15694 from maribu/gnrc_tx_sync
sys/net/gnrc/tx_sync: new module
2021-02-08 19:47:43 +01:00
Marian Buschsieweke
9895b840cd
sys/net: gnrc_tx_sync not implemented for gnrc_sixlowpand_frag_sfr
It is currently not possible to use both gnrc_tx_sync and
gnrc_sixlowpand_frag_sfr at the same time - this will be added in a follow
up PR.
2021-02-08 16:13:11 +01:00
Sören Tempel
0d141bf93a clif: Don't access any data if input is empty
This is relevant as clif_decode_link may invoke clif_get_attr with
input_len == 0.
2021-02-08 13:42:18 +01:00
Sören Tempel
767e700a5f clif: After incrementing pos, make sure it is still in bounds
While the for-loop condition does contain a bounds check, the pointer is
independently increment in the for-loop body. This increment therefore
requires a separate bounds check. Otherwise, the parsing loop may access
data outside the given buffer boundaries.
2021-02-08 11:29:44 +01:00
Martine Lenders
492000f232
Merge pull request #15909 from leandrolanzieri/pr/ieee802154_security_radio_hal
net/ieee802154_security: remove radio hal dependency and cleanup
2021-02-05 17:08:52 +01:00
Cenk Gündoğan
e399ef5d76
uri_parser: terminate, if nothing to consume after scheme 2021-02-05 13:32:49 +01:00
Cenk Gündoğan
6f13325a52
uri_parser: do not parse path if end-of-uri 2021-02-05 13:24:36 +01:00
Cenk Gündoğan
1040cf9862
uri_parser: allow empty host part even if userinfo and port exist 2021-02-05 13:24:36 +01:00
Cenk Gündoğan
f9b8fadd85
uri_parser: check boundaries if host is empty, but userinfo exists 2021-02-05 13:24:36 +01:00
Sören Tempel
333572e091 uri_parser: check if uri is long enough to even contain a ://
Before attempting to access these characters. This fixes an
out-of-bounds read on the provided URI buffer.
2021-02-04 20:08:26 +01:00
Leandro Lanzieri
8a29cf285d
sys/shell: fix menuconfig symbol name 2021-02-04 12:46:19 +01:00
Leandro Lanzieri
67f36d78a9
sys/shell: document configs and add to Kconfig 2021-02-04 09:19:43 +01:00
Marian Buschsieweke
89c69c5450
sys/net/gnrc/tx_sync: new module
The new `gnrc_tx_sync` module allows users of the GNRC network stack to
synchronize with the actual transmission of outgoing packets. This is directly
integrated into gnrc_sock. Hence, if `gnrc_tx_sync` is used, calls to e.g.
sock_udp_send() will block until the network stack has processed the message.

Use cases:
1. Prevent packet drop when sending at high rate
    - If the application is sending faster than the stack can handle, the
      message queues will overflow and outgoing packets are lost
2. Passing auxiliary data about the transmission back the stack
    - When e.g. the number of required retransmissions, the transmission time
      stamp, etc. should be made available to a user of an UDP sock, a
      synchronization mechanism is needed
3. Simpler error reporting without footguns
    - The current approach of using `core/msg` for passing up error messages is
      difficult to use if other message come in. Currently, gnrc_sock is
      busy-waiting and fetching messages from the message queue until the number
      of expected status reports is received. It will enqueue all
      non-status-report messages again at the end of the queue. This has
      multiple issues:
        - Busy waiting is especially in lower power scenarios with time slotted
          MAC protocols harmful, as the CPU will remain active and consume
          power even though the it could sleep until the TX slot is reached
        - The status reports from the network stack are send to the user thread
          blocking. If the message queue of the user thread is full, the network
          stack would block until the user stack can fetch the messages. If
          another higher priority thread would start sending a message, it
          would busy wait for its status reports to completely come in. Hence,
          the first thread doesn't get CPU time to fetch messages and unblock
          the network stack. As a result, the system would lock up completely.
    - Just adding the error/status code to the gnrc_tx_sync_t would preallocate
      and reserve memory for the error reporting. That way gnrc_sock does not
      need to search through the message queue for status reports and the
      network stack does not need to block for the user thread fetching it.
2021-02-03 15:16:42 +01:00
Francisco
3b2a55a923
Merge pull request #15865 from benpicco/pm_layered-default
cpu: make pm_layered a DEFAULT_MODULE
2021-02-03 08:17:29 +01:00
Martine Lenders
6da60c933d
Merge pull request #15802 from miri64/treewide/cleanup/cppcheck-whitelisted
treewide: re-uncrustify whitelisted files
2021-02-03 07:59:27 +01:00
benpicco
2313cefbd3
Merge pull request #15910 from maribu/sys-arduino-spi-fix
sys/arduino: Bug and style fixes in SPI
2021-02-02 23:41:04 +01:00
Benjamin Valentin
118cf0e9e6 riotboot_usb_dfu: depend on periph_pm 2021-02-02 23:40:21 +01:00
Benjamin Valentin
32c30aaeaa pm_layered: depend on periph_pm 2021-02-02 23:40:21 +01:00
Martine Lenders
7e3846b6a4
ztimer: apply uncrustify patches 2021-02-02 22:21:15 +01:00
Marian Buschsieweke
e0f457663c
Merge pull request #15901 from OTAkeys/pr/ztimer_rmutex_lock_timeout
ztimer: add ztimer_rmutex_lock_timeout()
2021-02-02 20:47:53 +01:00
Vincent Dupont
751a366931 ztimer: fix uncrustify issue in util.c 2021-02-02 10:52:10 +01:00
Vincent Dupont
fb4d2e509a ztimer: add ztimer_rmutex_lock_timeout()
Similar to xtimer_rmutex_lock_timeout()
2021-02-02 10:51:50 +01:00
Marian Buschsieweke
45ed8bc330
sys/arduino: Bug and style fixes in SPI
- set is_transaction before releasing the SPI bus (and the mutex) to avoid
  data races
- adapt switch indent to coding convention
2021-02-02 09:45:46 +01:00
Leandro Lanzieri
2f28a91c4f
net/ieee802154/security: make default cipher_ops implementations private 2021-02-02 09:16:50 +01:00
Leandro Lanzieri
e31daf1583
net/ieee802154: remove dependency of radio HAL in security 2021-02-02 09:16:50 +01:00
5b0eaf7cd8
riotboot/flashwrite: Remove last dependencies on flashpage size 2021-02-01 16:14:07 +01:00
1bde5296fd
Merge pull request #14987 from bergzand/pr/riscv/semihosting
stdio_semihosting: Extend with RISC-V support
2021-01-27 18:49:35 +01:00
0a6c9c4ec0
stdio_semihosting: Extend with RISC-V support
RISC-V support semihosting in very similar way as the cortex-m
microcontrollers. The code calls a breakpoint instruction and the
attached debugger reads/writes registers and memory for stdio.

The RISC-V architecture doesn't support a call number with the EBREAK
instruction, to allow the debugger to detect a semihosting break point,
the EBREAK instruction is wrapped in a SLLI and SRAI instruction. These
use x0 as output register, making them NOP instructions.

One caveat when using this is that the RISC-V core traps the EBREAK
instruction with trap code 3 when no debugger is attached. Restarting
the application with the debugger attached avoids this.
2021-01-27 17:52:19 +01:00
Benjamin Valentin
9c1455d55f cpu: make pm_layered a DEFAULT_MODULE
Allow to disable pm_layered in the bootloader to save some ROM.
2021-01-27 13:21:20 +01:00