tlhc
aa68d5f7e3
feat: add openHiTLS backend support
...
- Add openHiTLS DTLS/TLS backend
- Integrate openHiTLS crypto into libcoap (D)TLS and OSCORE paths.
- Extend TLS tests and add interop validation script.
2026-06-27 11:18:22 +01:00
Jon Shallow
261dc9b58c
WebSockets: Handle large reads
2026-06-25 15:42:04 +01:00
Jon Shallow
d354a693a7
CMakeLists.txt: Better handle OSCORE only back-ends
2026-06-25 09:34:58 +01:00
Jon Shallow
92d58d1115
TLS: Compatability tidy up
2026-06-25 09:24:37 +01:00
Jon Shallow
f4a8fe1d12
Extended Tokens: Fix multicast responses
2026-06-24 13:32:30 +01:00
Jon Shallow
abde6a513a
Proxy: Cleanup proxy associations
...
Handles situation where the event handler is not defined.
2026-06-24 13:29:26 +01:00
Jon Shallow
2e995218f3
SendQueue: Match Mid and Token (if given) to remove entry from queue
...
For Empty ACK and RST do not do a token match.
2026-06-22 13:48:44 +01:00
Jon Shallow
c65dcb16df
coap_wolfssl.c: Fix Identity Hint, PEM_BUF and timeouts
2026-06-22 13:47:38 +01:00
Jon Shallow
83a71af102
coap-gnutls.c: Fix CN, establised state and timeouts
2026-06-22 13:45:53 +01:00
Dmytro Bagrii
77b4714604
examples: server: Fix const qualifier discard
...
Compiling with gcc-16.1.1 and glibc-2.43 yields warnings: "initialization
discards ‘const’ qualifier from pointer target type".
Indeed, pointer passed to strchr() is `const char *` and memory pointed by
return value of strchr() is never modified, so variable to assign return
value should be `const char *`.
2026-06-22 09:57:21 +01:00
Mario Kicherer
3891726e17
coap_openssl.c: unify tls_client_hello_call_back for PSK and PKI to fix simultaneous operation
2026-06-20 12:53:01 +01:00
Jon Shallow
0869dea655
coap_mbedtls.c: Fix checking PKI Common Name and Connected Event
2026-06-18 13:16:24 +01:00
Jon Shallow
3035cfd751
OSS-FUZZ: Add in i386 build for fuzzing
2026-06-13 20:12:26 +01:00
Jon Shallow
4c3f4af1c0
OSS-FUZZ: Support different architectures and engines
2026-06-12 21:08:45 +01:00
Jon Shallow
46e34175b8
RIOT: Fix build against latest version
2026-06-12 17:21:21 +01:00
Jon Shallow
888ba34ece
Q-Block: Better timing / recovering when rate limiting
...
Make use of an outstanding list of blocks to transmit to remove duplicates
and only send one at a time if rate-limiting.
2026-06-10 12:01:10 +01:00
Jon Shallow
46e505c430
OSCORE: Support using MbedTLS for OSCORE only (not (D)TLS)
...
New ./configure option
--with-mbedtls-oscore
If --disable-dtls is set, then MbedTLS is used as the OSCORE backend, otherwise
the MbedTLS library is used for both (D)TLS and OSCORE.
New cmake option
-DOSCORE_BACKEND=mbedtls
If -DENABLE_DTLS=OFF is set, then MbedTLS is used as the OSCORE backend, otherwise
the MbedTLS library is used for both (D)TLS and OSCORE.
New Zephyr option
config MBEDTLS_OSCORE
If set to y and CONFIG_LIBCOAP_OSCORE_SUPPORT is set to y, then the Zephyr MbedTLS
backend will get used for the OSCORE backend (no (D)TLS).
2026-06-10 11:56:44 +01:00
Jon Shallow
5ea8b7d5e9
OpenSSL: Support 4.0 and later buids
...
Remove all references to ENGINE_*() as support has been removed in 4.0.
There currently is no tested Provider support for PKCS11.
2026-06-05 15:51:01 +01:00
Jon Shallow
193ec26ead
Proxy: Check for non-safe options
...
Generally re-organize option handling, making use of enums etc.
This also updates critical options checks, and well as repeatable options.
2026-06-05 15:22:38 +01:00
Michiel De Witte
b4de71ee24
Fix data race in coap_resolve_address_info()
2026-06-02 09:57:30 +01:00
David Korczynski
bd47692407
Add proxy fuzz harness to be consumed by OSS-Fuzz
...
The goal is to increase code coverage of coap_proxy.c logic,
which currently stands at less than 2%:
https://storage.googleapis.com/oss-fuzz-coverage/libcoap/reports/20260518/linux/src/libcoap/src/report.html
Signed-off-by: David Korczynski <david@adalogics.com >
2026-06-01 16:05:55 +01:00
Jon Shallow
f669cf5e24
coap_openssl.c: Support clients alternating betweek PKI and PSK
2026-06-01 15:16:19 +01:00
Jon Shallow
c4e651ae70
LwIP: Allocate semaphores per context for NO_SYS == 0
...
Each LwIP coap_context_t must now periodically call coap_io_process().
2026-06-01 09:55:31 +01:00
Jon Shallow
d32d298333
coap_oscore.c: Fix replay protection
2026-06-01 09:18:10 +01:00
Jon Shallow
eb73b10e64
oss-fuzz: Further support for running with threading support
2026-05-30 14:15:54 +01:00
Jon Shallow
be107f0229
coap_proxy.c: Fix memory leak
2026-05-30 10:10:23 +01:00
David Korczynski
c28f8f5e7a
fix lint
...
Signed-off-by: David Korczynski <david@adalogics.com >
2026-05-30 09:47:56 +01:00
David Korczynski
0e03abc99c
Adds extended coap_cache fuzzer to be consumed by OSS-Fuzz
...
The goal is to extend code coverage of libcoap. Can confirm from local
runs this provides a significant boost to coap_cache.c coverage.
Signed-off-by: David Korczynski <david@adalogics.com >
2026-05-30 09:47:56 +01:00
Jon Shallow
7370fcf6ad
LwIP: Add in support for MEM_USE_POOLS for COAP_STRING malloc()s
...
If both MEMP_USE_CUSTOM_POOLS and MEM_USE_POOLS are defined in
lwipopts.h and there is a suitable
LWIP_MALLOC_MEMPOOL_START .. LWIP_MALLOC_MEMPOOL_END
definition in lwippools.h, then any coap_malloc_type(COAP_STRING, ..) will
make use of the defined pools.
A new src/coap_mem_lwip.c file has been added.
2026-05-27 06:32:11 +01:00
David Korczynski
e909ff5dd5
Adds extended uri fuzzer to be consumed by OSS-Fuzz
...
Extends on the code coverage of the coap_uri.c module, which currently
has the code coverage:
https://storage.googleapis.com/oss-fuzz-coverage/libcoap/reports/20260512/linux/src/libcoap/src/coap_uri.c.html
Signed-off-by: David Korczynski <david@adalogics.com >
2026-05-25 11:39:43 +01:00
David Korczynski
574332f6e3
Add ws_frame fuzzer to be consumed by OSS-Fuzz
...
Signed-off-by: David Korczynski <david@adalogics.com >
2026-05-20 14:26:02 +01:00
Lucien Zuercher
855d53ef10
oscore: enable external credential storage and safe recipient cleanup
...
Add reference counting to recipient contexts so they can be safely removed
while still in use by active sessions. Expose callback hooks for credential
lookup, echo, and sequence storage to allow custom backends.
Expand example server to demonstrate the external storage via a simple
file based database. Expand coap_oscore_rcp_conf_t to enable settings
preconfigured echo value, sequence counter and window value as uint64
Enable temporary credentials returned by the find function and are destroyed
after use.
2026-05-20 13:09:24 +01:00
Jon Shallow
48559f0016
RIOT: Add help documentation
...
General documentation tidy up.
2026-05-20 10:20:22 +01:00
Fabian Hüßler
db7b7e8207
coap_config.h.riot: add CONFIG_LIBCOAP_MAX_STRINGS
2026-05-19 14:53:42 +01:00
Jon Shallow
590570a465
oss-fuzz: Support testing with thread enabled builds
2026-05-18 12:06:58 +01:00
Jon Shallow
56ad791cc4
wolfssl.c: Update not needed assert()
2026-05-18 12:03:53 +01:00
David Korczynski
57370405c8
OSS-Fuzz: Add new dtls harness
...
The goal is to increase code coverage, which is currently around 25%:
https://storage.googleapis.com/oss-fuzz-coverage/libcoap/reports/20260318/linux/report.html
Signed-off-by: David Korczynski <david@adalogics.com >
2026-05-18 11:37:41 +01:00
Krisztian Szilvasi
12a4a494f5
fix(cmake): specify project to only use c
...
This makes installing cxx compiler unnecessary
Signed-off-by: Krisztian Szilvasi <34309983+kr-t@users.noreply.github.com >
2026-05-16 16:36:58 +01:00
Jon Shallow
3d6b603672
coap_pdu.c: Handle extended token checking with small PDUs
...
Handle errors reported by sanitize checks.
2026-05-16 16:32:23 +01:00
Jon Shallow
9f14450a7e
coap_subscribe.c: Fix issue found by oss-fuzz
2026-05-14 15:51:32 +01:00
Jon Shallow
c1147eb096
coap_pdu.c: Support checking for extended tokens when large pdu created
...
Picked up by oss-fuzz
2026-05-13 10:29:30 +01:00
Jon Shallow
13139e7be9
Options: Check Uri-Path and Location-Path options for . or ..
...
Check incoming Uri-Path and Location-Path options for just . or .. (or %2e
hex encoded variants) and treat as being invalid.
Stop insertion of Uri-Path and Location-Path options that contain just
. or .. (or %2e hex encoded variants).
2026-05-11 19:41:17 +01:00
Jon Shallow
df90dfd7b1
coap_subscribe.c: Sanity check persist startup logic
2026-05-11 18:08:55 +01:00
Arthur Chan
64e2a65ad0
OSS-Fuzz: Further fix block fuzzer on wellknown handling path
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-09 16:13:34 +01:00
Arthur Chan
2614649ecc
OSS-Fuzz: Add fuzzer for persist storing
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-09 16:11:08 +01:00
Arthur Chan
c99bf12801
OSS-Fuzz: Fix block fuzzer
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-08 09:33:36 +01:00
Arthur Chan
be60f46ff0
OSS-Fuzz: Fix async fuzzer
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-08 09:32:36 +01:00
Arthur Chan
60dad69e95
OSS-Fuzz: Fix observe fuzzer
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-08 09:31:43 +01:00
Arthur Chan
76a793be5c
OSS-Fuzz: Add a helper for fuzzing
...
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com >
2026-05-07 19:36:44 +01:00
Jon Shallow
382e16cc7f
coap_ws.c: Fix potential OOB on read headers
2026-05-07 17:09:22 +01:00