1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-16 01:53:51 +01:00

5025 Commits

Author SHA1 Message Date
Carl Seifert
5e353a3967 net/unicoap: add documentation 2025-07-08 22:41:45 +02:00
Carl Seifert
63980bcf02 net/unicoap: add header for private API 2025-07-07 17:27:40 +02:00
Carl Seifert
d184a1af0f net/unicoap: implement option accessors 2025-07-07 17:27:39 +02:00
Carl Seifert
f666e1aa04 net/unicoap: implement RFC 7252 PDU framing 2025-07-07 17:27:39 +02:00
Carl Seifert
70350216ba net/unicoap: add base config 2025-07-07 17:27:39 +02:00
Carl Seifert
12c7e07839 net/unicoap: add CoAP constants 2025-07-07 17:27:39 +02:00
Carl Seifert
501822f560 net/unicoap: driver modules for CoAP transports 2025-07-07 17:27:39 +02:00
Carl Seifert
6b9e5433e6 net/unicoap: add module basics 2025-07-07 17:27:39 +02:00
Fabian Hüßler
3e38157196 submac: add TX power to retrievable netopts 2025-07-03 10:12:29 +02:00
Marian Buschsieweke
cac44edec7
tree-wide: replace multiple empty lines with one
For each C source/header `$file`: `sed -e '/^$/N;/^\n$/D' -i $file`.
2025-05-21 22:51:04 +02:00
KSKNico
e6b17fa5cb sys: replace header guards with #pragma once 2025-05-16 19:40:06 +02:00
benpicco
c937969224
Merge pull request #21419 from maribu/sys/net/sock_util
sys/net/sock_util: Do not depend on network stack
2025-05-05 17:18:46 +00:00
Marian Buschsieweke
62e553ad6c
sys/net/sock_util: Do not depend on network stack
This allows using and compiling the URL handling functions of sock_util
without a network stack used.

Co-authored-by: benpicco <benpicco@googlemail.com>
2025-05-05 18:09:22 +02:00
Benjamin Valentin
ba23c77a4d gnrc/ipv6/nib: add option to disable router solicitations 2025-04-25 00:23:00 +02:00
Marian Buschsieweke
4ce7ab2133
tree-wide: fix documentation issues
This should fix compilation with -Wdocumentation on LLVM.
2025-04-10 13:37:13 +02:00
Marian Buschsieweke
db0be36345
tree-wide: mixed back of documentation fixes
This fixes a number of documentation issues that LLVM/clang would flag
with `-Wdocumentation`.
2025-04-07 15:59:13 +02:00
Marian Buschsieweke
c1aee234ee
Merge pull request #21357 from maribu/tree-wide/dox-fixes
tree wide: various doc fixes
2025-04-05 17:57:43 +00:00
Teufelchen
3fd5c9afd9
Merge pull request #21363 from benpicco/gnrc_sock-fix-create
gnrc_sock/udp: zero-init sock struct on create
2025-04-04 17:41:42 +00:00
Benjamin Valentin
291c064ab5 gnrc_sock/udp: zero-init sock struct on create 2025-04-04 15:53:37 +02:00
Marian Buschsieweke
1ff982a664
tree wide: various doc fixes
This fixes a batch of incorrect Doxygen comments that building with
LLVM/clang and `-Wdocumentation` uncovered.
2025-04-04 11:44:53 +02:00
Benjamin Valentin
6cb40183a0 nanocoap_sock: implement observe client 2025-04-03 13:23:07 +02:00
fabian18
9e55e5611f
Merge pull request #21270 from fabian18/pr/nanocoap_static_buffers
nanocoap: avoid non `static` buffers of configurable size
2025-03-31 22:46:38 +00:00
Fabian Hüßler
49243a5ef2 nanocoap/sock: move request header buffer to socket 2025-03-31 19:12:19 +02:00
Fabian Hüßler
7e4afa4436 nanocoap: supply response buffer for nanocoap_link_format_get 2025-03-31 19:12:19 +02:00
Marian Buschsieweke
5869c2c271
Merge pull request #21180 from derMihai/mir/sock_udp/cancel_async_mainline
net_sock_async_event: cancel async event on sock_*_close()
2025-03-20 06:10:26 +00:00
Marian Buschsieweke
685acb9a35
Merge pull request #21293 from MrKevinWeiss/pr/fixsplling
Fix spelling found by codespell
2025-03-13 13:07:53 +00:00
MrKevinWeiss
f770f72202
treewide: Fix spelling mistakes 2025-03-13 13:59:07 +01:00
Benjamin Valentin
7a5cd93bf7 sys/net/telnet: align API with stdio API 2025-03-13 09:58:48 +01:00
Marian Buschsieweke
da0218323b
sys/net/nanocoap: improve coap_build_reply
- The responsibility for handling matching CoAP No-Response Options
  has been split:
    - `coap_build_reply()` only needs to report this and return
      `-ECANCLED`
    - `coap_handle_req()` does generate the empty ACK is needed.
  ==> As a result, writing CoAP request handlers correctly becomes a
      lost easier. Correct error handling to be present is now
      sufficient for correct handling of No-Response options.
  ==> This change is backward compatible with existing code.
- The API doc has been cleaned up and straightened

Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
2025-03-12 08:56:20 +01:00
Marian Buschsieweke
be27eafc4f
sys/net/nanocoap: fix API inconsistency
For in-band signalling that a content format is not valid / present,
the magic number `COAP_FORMAT_NONE` was introduced and the type
`uint16_t` was used. Some APIs however used different in-band signalling
values and types:

- coap_reply_simple(): No signal available, `unsigned int`
- coap_build_reply_header(): negative values, `int`
    (Using `int` would prevent using larger content format numbers on
    8-bit and 16-bit archs, where `int` and `int16_t` have the same
    range.)

This changes the behavior to consistently use `COAP_FORMAT_NONE` as
"no content format" signal and `uint16_t` as type.
2025-02-24 12:05:35 +01:00
benpicco
f67055c3b2
Merge pull request #19668 from benpicco/ieee802154_symbol_time_on_demand
ieee802154/submac: calculate symbol time on demand
2025-02-20 12:04:10 +00:00
Benjamin Valentin
73e45dd6ca ieee802154/submac: implement MR-FSK timings 2025-02-20 12:00:00 +01:00
Marian Buschsieweke
546b87a2e8
sys/net/nanocoap: fix dereferencing a null pointer
`coap_request_ctx_get_local()` may return `NULL` depending on module
selection. If it does, we cannot pass `NULL` to
`sock_udp_ep_is_multicast()`.

This changes the code assume the request is not received via multicast
when module `sock_aux_local` is not in use.

When the user binds the CoAP server to multiple endpoints (as needed
for using multicast), it is required that `sock_aux_local` is in use
anyway, as otherwise the server may not respond using the endpoint it
received the request on. (That in turn would render the client unable to
correlate the response to the request.)
2025-02-19 11:05:46 +01:00
Mikolai Gütschow
ca5fe72bf8
treewide: fix example references in docs
adapt to folder structure from #21135
2025-02-14 19:14:22 +01:00
Mihai Renea
0f25aecceb sock/async: cancel sock async events when closing the socket 2025-02-12 16:41:59 +01:00
Benjamin Valentin
a886adf611 ieee802154/submac: implement MR-OFDM timings 2025-02-10 14:56:14 +01:00
mguetschow
57993ef263
Merge pull request #21159 from Vjorald/cord-doc
sys/cord/doc.txt: Update additional references to RFC 9176
2025-01-29 14:57:08 +00:00
Vjorald
d2658e21d0 sys/cord/doc: Update additional references to RFC 9176 2025-01-29 15:14:03 +01:00
Marian Buschsieweke
9fa2661621
sys/net/nanocoap: align request handling with spec
- Do not reply with a reset message to a reset or an ACK message
- Reply with a reset message when not able to process a CON/NON message
  (not even a suitable error reply)
2025-01-24 22:42:47 +01:00
Marian Buschsieweke
feeb68470f
sys/net/nanocoap: implement observe
This adds the new `nanocoap_server_observe` module that implements the
server side of the CoAP Observe option. It does require cooperation
from the resource handler to work, though.

Co-Authored-By: mguetschow <mikolai.guetschow@tu-dresden.de>
Co-authored-by: benpicco <benpicco@googlemail.com>
2025-01-23 14:25:39 +01:00
Marian Buschsieweke
1c7ba9e055
sys/net/nanocoap: improve separate response handling
This allows sending a separate response with CoAP Options and adds a
helper to detect duplicate requests, so that resource handlers can
repeat their empty ACK on duplicates.
2025-01-23 14:25:02 +01:00
Joshua DeWeese
9b2782d020
Merge pull request #21126 from maribu/sys/net/gnrc_sock/drop-timer-workaround
Revert "sock/udp: work around gnrc_sock_recv() returning early timeout"
2025-01-20 11:58:08 +00:00
Kevin "Tristate Tom" Weiss
8302223ba1
Merge pull request #21137 from benpicco/gnrc_netif_ipv6_wait_for_global_address-fix_timeout
gnrc_netif: fix timeout in `gnrc_netif_ipv6_wait_for_global_address()`
2025-01-20 10:03:17 +00:00
benpicco
cefa182d2b
Merge pull request #21080 from benpicco/gnrc_ipv6_auto_subnets_eui
gnrc/ipv6_auto_subnets: add option to derive subnet prefix from EUI
2025-01-16 17:19:54 +00:00
Benjamin Valentin
a95bd508a5 gnrc_netif: fix timeout in gnrc_netif_ipv6_wait_for_global_address() 2025-01-16 16:07:40 +01:00
benpicco
6547f144d9
Merge pull request #21125 from maribu/sys/net/gcoap/fix-api-abuse
sys/net/gcoap: get rid of API abuse
2025-01-13 18:43:16 +00:00
Benjamin Valentin
698d414733 gnrc/ipv6_auto_subnets: add gnrc_ipv6_auto_subnets_eui 2025-01-13 15:52:25 +01:00
Marian Buschsieweke
590ca5d7ff
sys/net/gcoap: get rid of API abuse
Calling `coap_get_token()` and `coap_get_token_length()` on an
(mostly) uninitialized `coap_pkt_t` did work so far due to
implementation details matching the expectations, but this is not
backed up by any API contract.

This fixes the API abuse by introducing and using a new API that does
read a token and token length from a CoAP over UDP packet out of a
buffer. This now provides the behavior expected by the caller and
commits to it via API contract.

Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
Co-authored-by: benpicco <benpicco@googlemail.com>
2025-01-10 21:31:08 +01:00
Marian Buschsieweke
c562b6cbe9
Revert "sock/udp: work around gnrc_sock_recv() returning early timeout"
This reverts commit e3d00682bcad2e0f26ee15b1c73d5da022b18786, which
added a work around for two bugs:

- ztimer triggering too early (fixed in
  https://github.com/RIOT-OS/RIOT/pull/20924)
- gnrc_sock_recv() returning when an old "timeout" message is still
  in the message queue (fixed in
  https://github.com/RIOT-OS/RIOT/pull/21113)

With those bugs fixed, the work around should not longer be needed.
2025-01-10 21:25:34 +01:00
Benjamin Valentin
64c10f33a1 gnrc/ipv6_auto_subnets: unicast RA if upstream is 6lo 2025-01-10 18:56:42 +01:00