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

10244 Commits

Author SHA1 Message Date
Marian Buschsieweke
bec46c55bd
Merge pull request #18879 from benpicco/bf_popcnt
sys/bitfield: add bf_popcnt()
2022-11-11 11:35:14 +01:00
Marian Buschsieweke
4166e044b3
Merge pull request #18874 from maribu/sys/net/gnrc/pkt
sys/net/gnrc/pkt: fix gnrc_pkt_delete()
2022-11-11 09:21:25 +01:00
Benjamin Valentin
4dd0594d09 sys/bitfield: add bf_popcnt() 2022-11-10 23:44:50 +01:00
Ollrogge
0f9577df60 usbus/hid: fix buffer overflow in hid_io 2022-11-10 20:33:29 +01:00
Marian Buschsieweke
0d5bde0ce2
sys/net/gnrc/pkt: fix gnrc_pkt_delete()
The previous implementation used creative construct for impedance
mismatching between the core list API (which returns a ptr to the
removed element if found) and the GNRC pkt list API (which returns a
ptr to the new list head) that creates a temporary list head on the
stack.

I'm not entirely sure if the previous implementation is containing
undefined behavior that is used against us with GCC >= 12.x, or if this
is a compiler bug. In either case, not reusing the core list API here
and just having a textbook linked list delete function here is not much
less readable and fixes the issue for our users.
2022-11-10 17:25:34 +01:00
benpicco
e38e0b937c
Merge pull request #18835 from gschorcht/pkg/tinyusb_descriptors
pkg/tinyusb: add common USB descriptors implementation
2022-11-09 10:42:15 +01:00
Gunar Schorcht
5685718bcf sys/usb: enable common USB Kconfig for tinyUSB 2022-11-09 06:57:55 +01:00
Karl Fessel
c354ab6285
Merge pull request #18846 from kfessel/p-pm-layerd-speedup1
sys/pm_layered: align pm_blocker_t for speed
2022-11-08 10:50:16 +01:00
benpicco
f8964c0149
Merge pull request #18827 from benpicco/nanocoap_block-fix
nanocoap_sock: don't store entire sock in coap_block_request_t
2022-11-08 10:49:39 +01:00
Marian Buschsieweke
7e0af3cd22
Merge pull request #18833 from benpicco/bitfield-ops
sys/bitfield: add bf_find_first_{set, unset}()
2022-11-07 20:27:48 +01:00
Benjamin Valentin
5a3045117e gnrc_sock_udp: make 'remote match' condition more readable 2022-11-07 16:35:57 +01:00
Teufelchen1
64b4d433b9 gnrc: Fix unused function error when using LLVM 2022-11-06 15:39:39 +00:00
Karl Fessel
72a1e93eed sys/pm_layered: pm_get_blocker = instead of memcopy -ease readability 2022-11-04 16:59:48 +01:00
Karl Fessel
5447203921 sys/pm_layered: pm_(un)block add attribute optimize(3) -shortens hotpath 2022-11-04 16:59:02 +01:00
Karl Fessel
21973963c0 sys/pm_layered: align pm_blocker_t for speed 2022-11-04 16:50:52 +01:00
Benjamin Valentin
60ab2dbc95 sys/bitfield: add bf_set_all() 2022-11-04 16:48:48 +01:00
benpicco
f954a8bac7
Merge pull request #18842 from kfessel/p-pm-layerd-speedup
sys/pm_layered: move (un)block assert for minor speedup
2022-11-04 02:36:57 +01:00
benpicco
0284aa5146
Merge pull request #18819 from benpicco/nanocoap_sock-non-retrans
nanocoap_sock: only re-transmit CON messages
2022-11-03 23:10:25 +01:00
Karl Fessel
f3ed268ec6 sys/pm_layered: move (un)block assert for minor speedup 2022-11-03 16:20:56 +01:00
Jue
904dc0131f ztimer: don't interact with pm_layered if ztimer_ondemand is used 2022-11-02 22:36:54 +01:00
Juergen Fitschen
84c89f9dd7
Merge pull request #18783 from jue89/fix/ztimer_lptimer_kconfig
sys/ztimer: model ztimer_periph_lptimer for Kconfig
2022-11-02 13:56:05 +01:00
Benjamin Valentin
8da267de72 sys/bitfield: add bf_find_first_{set, unset}()
At functions to get the first (un)set bit in a bitfield.
2022-11-02 13:06:06 +01:00
Benjamin Valentin
63c9dde3a4 nanocoap_sock: don't store entire sock in coap_block_request_t 2022-11-01 00:17:11 +01:00
Benjamin Valentin
3877a92ca4 nanocoap_vfs: don't close socket in nanocoap_vfs_put() 2022-10-31 23:51:08 +01:00
Jue
4b802ad12e sys/pm_layered: add debugging outputs 2022-10-31 22:18:00 +01:00
Benjamin Valentin
782910ade4 nanocoap_sock: only re-transmit CON messages
If a NON confirmable message is sent with a callback function,
not receiving a response in time would lead to a retransmission.

This is of course an error, as only CON messages are to be retransmitted.
2022-10-31 17:18:19 +01:00
Marian Buschsieweke
d704a1a805
Merge pull request #18822 from jue89/feature/at86rf2xx_ztimer
drivers/at86rf2xx: migrate to ztimer
2022-10-31 15:44:53 +01:00
Jue
0dc054cbda sys/net/gnrc_lwmac: add missing xtimer dependency 2022-10-29 21:04:28 +02:00
Martine Lenders
36a099e1ec
gnrc_sixlowpan_iphc.c: dereference ipv6_hdr in DEBUG() after assignment 2022-10-29 00:58:35 +02:00
Felix
aa27ed71fa
gnrc_sixlowpan_frag_vrb: Assert no usage of a vrb with src_len == 0 2022-10-29 00:58:35 +02:00
Felix
17c70f7ee0
gnrc_netif_ieee802154: Ignore packets without source address 2022-10-29 00:58:35 +02:00
Felix
0bec3e245e
ieee802154: Adjust parsing of IEEE 802.15.4 frame header 2022-10-29 00:58:35 +02:00
Martine Lenders
4a081f8661
gnrc_sixlowpan_iphc: fix packet type confusion in _iphc_encode() 2022-10-29 00:58:34 +02:00
Felix
639c04325d
gnrc_sixlowpan_iphc: fix null pointer dereference in _iphc_encode() 2022-10-29 00:58:34 +02:00
Martine Lenders
9728f727e7
gnrc_sixlowpan_frag_rb: fix integer underflow in _6lo_frag_size() 2022-10-29 00:58:34 +02:00
Martine Lenders
2709fbd827
gnrc_sixlowpan_iphc: fix integer underflow in gnrc_sixlowpan_iphc_recv() 2022-10-29 00:58:33 +02:00
Martine Lenders
73615161c0
gnrc_sixlowpan_iphc: fix buffer overflow in gnrc_sixlowpan_iphc_recv() 2022-10-29 00:58:14 +02:00
Benjamin Valentin
55e13a9d61 nanocoap: add coap_request_ctx_init() 2022-10-28 15:24:23 +02:00
Benjamin Valentin
c6f9654461 nanocoap: request context to coap_handle_req() 2022-10-28 14:21:52 +02:00
Martine Lenders
85cce1ec0d
Merge pull request #18709 from miri64/gnrc_udp/enh/use-smaller-stack
gnrc_udp: use small stack-size
2022-10-28 11:51:23 +02:00
benpicco
ed1d8e0a3d
Merge pull request #18785 from maribu/boards/blxxxpill/periph_conf
boards/common/blxxxpill: Fix pin conflicts in periph_conf
2022-10-27 21:22:10 +02:00
Jue
bd603249a5 sys/ztimer: build ztimer_periph_timer if ztimer_periph_lptimer is used
ztimer_periph_lptimer is uses the implementation of ztimer_periph_timer
2022-10-27 19:44:57 +02:00
Jue
159749e1f0 sys/ztimer: add defaults for ztimer_periph_lptimer 2022-10-27 19:44:57 +02:00
benpicco
1481df8a31
Merge pull request #18805 from MrKevinWeiss/pr/fix/nightlybpfail
Fix kconfig mismatch breaking nightlies
2022-10-27 18:18:17 +02:00
Martine Lenders
7b28794ee6
gnrc_udp: use small stack-size 2022-10-27 17:28:01 +02:00
Martine Lenders
9ae66beedf
Merge pull request #16156 from miri64/gnrc_sixlowpan_frag_sfr/feat/congure
gnrc_sixlowpan_frag_sfr: provide CongURE support
2022-10-27 15:01:07 +02:00
Marian Buschsieweke
16df27c51d
makefiles/cflags.inc.mk: Add -Wno-missing-field-initializers to CXXFLAGS
This allows including C headers from C++. It sadly reduced the
diagnostics on C++ code as well, were there warning may make sense as
unintended side effect. We may be able to drop that later on, when more
C APIs are properly wrapped in native C++ APIs, so that C headers do no
longer need to be compatible with C++ compilers.
2022-10-27 14:28:06 +02:00
MrKevinWeiss
6b5c75cad4
boards/blxxpill-128kib: Fix kconfig mismatch
Nightlies are failing due to kconfig mismatch.
It would seem this is a result of bringing in the USB stuff.
I assume that this uses ztimer periph_timer as a backend as periph_timer is already selected.
However, kconfig only resolves one and not recursively making it hard to match.
For not a hack is added to override for these boards.
2022-10-27 14:07:32 +02:00
benpicco
4ebece5d34
Merge pull request #18801 from benpicco/gnrc_nib_full-debug
gnrc_ipv6_nib: add debug output when nib is full on address resolution
2022-10-27 12:49:29 +02:00
Martine Lenders
d485598b3a
Merge pull request #18744 from Teufelchen1/fix/clif_0
sys/clif: Fixing out of bounds read under certain conditions
2022-10-26 23:38:43 +02:00
Juergen Fitschen
b8a4aa9ce1 sys/ztimer: model ztimer_periph_lptimer 2022-10-26 20:53:48 +02:00
Martine Lenders
ff884dd45f
Merge pull request #17429 from benpicco/gnrc/ipv6_auto_subnets-static
gnrc/ipv6_auto_subnets: add CONFIG_GNRC_IPV6_AUTO_SUBNETS_STATIC option
2022-10-26 14:57:40 +02:00
Teufelchen1
499b635ae9 sys/clif: Fixing out of bounds read under certain conditions 2022-10-26 13:44:01 +02:00
benpicco
aa11a9a0d7
Merge pull request #18799 from JKRhb/coap-opt-numbers
sys/net: add Size1 and Size2 option numbers
2022-10-25 23:27:26 +02:00
Benjamin Valentin
b068bd31c2 gnrc/ipv6_auto_subnets: add CONFIG_GNRC_IPV6_AUTO_SUBNETS_STATIC option
In situations with high packet loss, if all sync packets are lost, conflicting
subnets will be configured.

If the network is static, this can be prevented by always using the highest number
of subnets that has been observed.

This assumes no nodes are physically added / removed from the network.
2022-10-25 19:46:42 +02:00
Martine Lenders
b92e90f7b5
gnrc_sixlowpan_frag_sfr: make ARQ timer mockable 2022-10-25 18:38:37 +02:00
Martine Lenders
30f990f789
gnrc_sixlowpan_frag_sfr: provide CongURE support 2022-10-25 18:38:36 +02:00
Benjamin Valentin
fa4fb8e3bf gnrc_ipv6_nib: add debug output when nib is full on address resolution 2022-10-25 18:21:57 +02:00
Jan Romann
7c3c466bd4
sys/coap: add Size1 option number 2022-10-25 14:09:26 +02:00
Jan Romann
4ea42c0a3c
sys/coap: add Size2 option number 2022-10-25 14:07:39 +02:00
Martine Lenders
149aadc841
shell_cmd_gnrc_udp: add missing netutils dependency
The `gnrc_udp` shell command uses the function `netutils_get_ipv6()` but
does not include the corresponding module `netutils`. The only reason
most applications that use `shell_cmd_gnrc_udp` link is because they
also include the `shell_cmd_gnrc_icmpv6_echo` module (e.g. implicit via
`gnrc_ipcmpv6_echo`), which includes this dependency.
2022-10-25 12:37:33 +02:00
benpicco
af84b09dce
Merge pull request #18774 from maribu/sys/stdio_uart/undef_behavior
sys/stdio_uart: fix undefined behavior
2022-10-24 23:38:10 +02:00
Marian Buschsieweke
82e3d1d1f3
sys/stdio_uart: fix undefined behavior
Also drop the `-Wno-cast-function-type` hack that allowed the bug to
sneak past Murdock.
2022-10-24 09:06:11 +02:00
Martine Lenders
d759d2d18b
Merge pull request #18772 from namib-project/accept-helper
sys/net/nanocoap: introduce Accept option helper
2022-10-20 04:13:33 +02:00
Jan Romann
d916b33bc6 sys/net/nanocoap: introduce Accept option helper 2022-10-19 16:44:13 +02:00
benpicco
49d6604bc3
Merge pull request #17763 from HendrikVE/pr/examples_gcoap_ipv4_support
examples/gcoap: add IPv4 support
2022-10-19 16:05:30 +02:00
Benjamin Valentin
8553c8ff55 sys/tiny_strerror: add tiny_strerror_minimal 2022-10-18 23:30:15 +02:00
Martine Lenders
07c04bc0e3
Merge pull request #15968 from miri64/congure/feat/congure_abe
congure_abe: initial import of TCP Alternative Backoff with ECN for CongURE
2022-10-18 15:50:06 +02:00
Hendrik van Essen
226dce01bf examples/gcoap: add IPv4 support 2022-10-18 10:59:43 +02:00
Hendrik van Essen
e77aa7b65e net/ipv4/addr.h: add ipv4_addr_is_multicast 2022-10-18 10:57:50 +02:00
benpicco
0b2fbce906
Merge pull request #18299 from fabian18/preprocessor_successor
sys: preprocessor successor module
2022-10-17 22:42:27 +02:00
Martine Lenders
463317391b
congure_abe: initial import of TCP ABE congestion control 2022-10-17 16:44:39 +02:00
Martine Lenders
68b9637295
Merge pull request #15952 from miri64/congure/feat/congure_quic
congure_quic: initial import of QUIC congestion control
2022-10-17 14:35:18 +02:00
Fabian Hüßler
fefd8baef6 sys/preprocessor: add Kconfig file 2022-10-17 10:38:14 +02:00
Fabian Hüßler
77bce9d758 sys: define AUTO_INIT_PRIORITY_AFTER using preprocessor successor 2022-10-17 10:38:14 +02:00
Francisco Molina
faa0e05f4b sys: add auto_init includes treewide 2022-10-17 10:38:14 +02:00
Fabian Hüßler
b4dcbba26d sys/preprocessor: add preprocessor module 2022-10-17 10:38:14 +02:00
Martine Lenders
fc57bfb511
congure_quic: initial import of QUIC congestion control 2022-10-17 10:27:44 +02:00
benpicco
72d16e152a
Merge pull request #17983 from kfessel/p-remove-coap_pkt-token
net/nanocoap: remove coap_pkt token ptr
2022-10-16 04:21:47 +02:00
benpicco
5c9715ae74
Merge pull request #18731 from maribu/sys/stdio_uart/onlcr
sys/stdio_uart: add stdio_uart_onlcr (pseudo-) module
2022-10-15 23:36:48 +02:00
benpicco
4d0c533260
Merge pull request #18154 from benpicco/nanocoap_no-response
nanocoap: add support for no-response option
2022-10-15 21:16:00 +02:00
Martine Lenders
53ed211fc9
Merge pull request #16175 from miri64/gnrc_sixlowpan_frag_sfr/enh/mark-ecn
gnrc_sixlowpan_frag_sfr: add support for queue-based ECN
2022-10-15 14:01:44 +02:00
Martine Lenders
c94c32dce4
Merge pull request #18727 from miri64/gnrc/enh/explicit-pseudomodules
gnrc: make pseudo-modules explicit + documentation improvements
2022-10-14 17:39:39 +02:00
Marian Buschsieweke
5d5e8d6163
Merge pull request #18740 from maribu/chrysn-pull-requests/gnrc-netreg-lock
gnrc_netreg: Use locks around netreg
2022-10-14 15:10:35 +02:00
Leandro Lanzieri
70acefaa55
Merge pull request #18386 from miri64/gcoap_forward_proxy/enh/empty-ack
gcoap_forward_proxy: send empty ACK when response takes too long
2022-10-14 11:23:48 +02:00
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
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
Leandro Lanzieri
fa96d469da
Merge pull request #18425 from kfessel/p-modular-log
sys/log_*: modularize log into log_color and log_printfnoformat
2022-10-13 09:47:03 +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
Martine Lenders
63c4fe5770
gcoap: fix "line is longer than 100 characters" pointed out by Vera++ 2022-10-12 17:33:55 +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
benpicco
913bf3748c
Merge pull request #18699 from miri64/gnrc_netif_lorawan/enh/up-down-support
gnrc_netif_lorawan: add support for LINK_UP/_DOWN events
2022-10-12 17:11:51 +02:00
Karl Fessel
e89063e1cf sys/log_color: guard from compiling for esp 2022-10-12 13:45:29 +02:00
Karl Fessel
bac70c5e47 sys/test_utils/print_stack_usage: include stdio if printf is used 2022-10-12 12:21:33 +02:00
Karl Fessel
514325b8b3 sys/log: modularize log into log_color and log_printfnoformat
- log_color: make log_write nonstatic
 - log_printfnoformat
 - apply module split to Kconfig
2022-10-12 12:21:29 +02:00
Martine Lenders
f7510cfb9d
gnrc_nettype: improve documentation on modules made explicit 2022-10-12 11:27:27 +02:00