Commit Graph
57 Commits
Author SHA1 Message Date
Jon Shallow cd9f19055b CI: Add in sanitizer runs for 32 and 64 bits 2026-10-05 10:30:56 +01:00
Jon Shallow 79e52246d6 Contiki-NG: Update to release/v5.2 2026-09-23 15:04:23 +01:00
Jon Shallow 1394e9833d CI: Cache Contiki/LwIP/Zephyr downloads 2026-08-06 09:55:09 +01:00
Jon Shallow 463fa7c533 CI: Update to action/cache@v5
Removes CI warnings. Also fix warning for Contiki MacOS build.
2026-07-25 14:31:17 +01:00
tlhc 2bea51aaf5 coap_openhitls.c: prefer SAN before CN for certificate names 2026-06-29 11:32:03 +01:00
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 3035cfd751 OSS-FUZZ: Add in i386 build for fuzzing 2026-06-13 20:12:26 +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 169eccbff8 CI: Update to use microsoft/setup-msbuild@v3 2026-05-04 20:43:07 +01:00
Jon Shallow ef97823845 main.yml: Use actions/checkout@v6
Fixes future Node.js 20 deprecation for github workflows.

There are still some other actions that continue to use Node.js 20 which will
need to be updated when they have also been ugraded to stop CI Action run warnings.
2026-03-16 14:49:02 +00:00
Jon Shallow 380ae87539 cifuzz.yml: Support running oss-fuzz on every PR push 2026-01-23 16:21:24 +00:00
Jon Shallow e59df82300 oss-fuzz: Fix CI oss-fuzz test compilation 2026-01-21 17:04:10 +00:00
Jon Shallow 5fa14f6a74 cmake: Fix multi-thread support building 2025-12-08 13:06:46 +00:00
Jon Shallow 5aee88f186 CI: Fix CI windows-2025 ms-build image build 2025-09-15 09:24:19 +01:00
Jon Shallow ea01661faf Zephyr: Support C++ builds
Some of the Zephyr include files need to be C++, not C based. The 'extern "C"'
wrapper in include/coap3/coap.h means that all #include are treated as being C.

Remove 'extern "C"' wrapper from include/coap3/coap.h and add wrapper to
include files after #include and before any function / structure definitions.

Add in a C++ build test for CI.
2025-08-21 12:17:41 +01:00
Jon Shallow 79a041414c Zephyr: Enable CI builds
Fix a Zephyr unexpected success response for ioctl FIONBIO.
2025-07-19 12:17:38 +01:00
Jon Shallow c9a162b610 MinGW: Add in more CI workflow builds 2025-07-09 14:55:18 +01:00
Jon Shallow e220c371be coap.h: Remove need for different coap.h files for different OS
./autogen.sh and ./configure no longer need to be run prior to running
make for Contiki, LwIP or RIOT from the appropriate examples sub-directory.

scripts/fix_version.sh now handles updating coap.h for the different
LIBCOAP_ and PACKAGE_ definitions.
2024-08-23 10:39:37 +01:00
Jon Shallow 79e6fcdb26 examples: Do CI pre-commit checks on man page examples 2024-08-16 13:16:11 +01:00
Jon Shallow 4851806c09 scan-build: CI Fail if scan-build warnings 2024-07-22 11:37:42 +01:00
Jon Shallow d58bd90238 checks: Check for missing file updates 2024-05-17 15:33:44 +01:00
Jon Shallow e599e25d6e oss-fuzz: Fix issue in coap_pdu_parse_opt() 2024-05-09 13:33:06 +01:00
Jon Shallow dae064c7e8 scan-build: Add scan-build into the workflow testing 2024-05-09 10:57:16 +01:00
Jon Shallow 65f2f408be Build Tests: Fix Contiki build on macOS
Add libtool to the brew setup.
2024-04-25 14:46:07 +01:00
Jon Shallow e3a662a934 wolfSSL: Set up initial port
Includes some porting ideas from qursa-uc3m libcoap-wolfssl work.

Some common ASN1 code moved from coap_gnutls.c to coap_asn1.c to support RPK.

WolfSSL build
$ ./configure --enable-all --enable-dtls13 CFLAGS="-DBUILD_TLS_PSK_WITH_AES_128_CCM -DHAVE_RPK"

Interoperability requirements

DTLS1.3 downgrade requires
https://github.com/eclipse/tinydtls/pull/230
https://github.com/wolfSSL/wolfssl/pull/7367

TLS1.3 downgrade requires
https://github.com/wolfSSL/wolfssl/pull/7367

(D)TLS1.2 use of RPK requires
https://github.com/wolfSSL/wolfssl/pull/7375

MbedTLS using TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256 requires
https://github.com/wolfSSL/wolfssl/pull/7132

GnuTLS using PSK and TLS1.3 requires
https://github.com/wolfSSL/wolfssl/pull/7407
2024-04-16 11:03:24 +01:00
Jon Shallow 04b239f55a main.yml: Fix node.js 16 warnings 2024-04-03 13:32:15 +01:00
Jon Shallow c01f29f23a workflows/main.yml: Run the pre-commit checks first 2023-10-13 14:12:33 +01:00
Jon Shallow 9fbce393d9 Windows: Fix workflows OpenSSL install 2023-10-04 22:03:49 +01:00
Jon Shallow f1f539485b workflows: Revert #1073 to add OpenSSL dev environment
OpenSSL dev environment is no longer included in windows-latest builds.

Disable Windows build OpenSSL 3 deprecation warnings
2023-10-04 22:03:22 +01:00
kkrentz 836ceec436 Contiki-NG: Fix two compilation errors on macOS
One compilation error was a redefinition of ntohs in coap_config.h.contiki.
Another compilation error was due to an unused function in coap_time.c.
2023-10-04 22:01:41 +01:00
Jon Shallow 9920d3e295 pre-commit: Add in initial support
Add in github workflow.

Add in .pre-commit-config.yaml.

Updated man directory using pre-commit.

Others to follow.
2023-07-03 08:57:09 +01:00
Jon Shallow 8d869fff04 RIOT: Update to support latest libcoap code
Add in examples and pkg/build information
2023-06-05 12:47:15 +01:00
Jon Shallow 964bd69481 MinGW: Initial compile environment support 2023-04-12 10:06:46 +01:00
Jon Shallow 59e9434518 workflows: Support Windows changed OpenSSL directory
No longer need choco to install install OpenSSL as it is in loaded image.
2023-04-07 14:51:11 +01:00
Jon Shallow 1db3683cef github workflows: Support Ubuntu 22.04 images
Fix issues thrown up with ubuntu-latest moving to ubuntu-22.04.

clang 14+ generates dwarf-5 code which valgrind does not currently support
so downgrade to output dwarf-4.

Use ./autogen.sh for tinydtls builds rather than 'autorecond --force --install'

Remove some spurios } in the workflow
2022-11-22 21:30:18 +00:00
Jon Shallow c56ac32c86 cifuzz.yml: Run when code is pushed to develop or main etc.
Matches main.yml on: statement for push.

on: pull_request removed so that it is not run for every PR, just the
develop, main and release branches.
2022-11-22 14:17:25 +00:00
David Korczynski 74f1858cfb github workflow: add CIFuzz Github action
Signed-off-by: David Korczynski <david@adalogics.com>
2022-11-22 08:52:22 +00:00
Jon Shallow 7b39908e82 LwIP: Add in TinyDTLS support
The dtls versions of the server and client are built as
server-dtls and client-dtls.

Add in flexible option support for server and client.  These are
a subset of the coap-server and coap-client options.
2022-10-29 13:26:43 +01:00
Jon Shallow bbf098a72a main.yml: Update actions/checkout to be v3 2022-10-19 17:24:03 +01:00
Jon Shallow 6a633e3d49 CMake: Force all Warnings to Errors when doing github actions
Add new option WARNING_TO_ERROR for CMakeLists.txt

Includes cmake builds for Windows and macOS
[Fix coap-client S_ISDIR() duplication bug]
2022-09-30 17:25:00 +02:00
Jon Shallow df72a53f2d coap_openssl.c: Support Microsoft VS builds
Correct reported errors

Update workflow for ms-build to include OpenSSL.
2022-02-21 12:37:44 +00:00
Jon Shallow 5b32d716fa github workflow: Support windows-2022
The provided host for windows-latest is migrating across from
windows-2019 to windows-2022 on github.  This allows things to be built on
a windows-2022 system.
2022-02-09 21:44:37 +00:00
Olaf Bergmann 27c7d2d4b6 [CI] rename stable branch to main
This change updates the name of the stable branch in .travis
and .github/main.yml to main.
2021-04-21 17:54:37 +02:00
Jon Shallow 4ac724334f build: Add in installation check 2021-04-09 18:55:01 +01:00
Jon Shallow a524b2341c build: Add in Visual Studio build
Update Windows build files to include a build that does not use OpenSSL
(called NoTLS).

Include this build in the github workflow.
2021-03-17 16:55:07 +00:00
Jon Shallow c8ab318e48 Ubuntu 20.4: Fix builds as Ubuntu 20.4 will be used by github workflows
.github/workflows/main.yml:

Build all the cmake TLS variants.

CMakeLists.txt:

Add in missing file.

examples/tiny.c:
include/coap2/encode.h:

Move COAP_PSEUDOFP_ENCODE_8_4 functions from encode.h to tiny.c.
Fix COAP_PSEUDOFP_ENCODE_8_4_DOWN 'ls' ordering complaint.

man/examples-code-check.c:

Fix compile warning, allow 'Unused but set variables' in examples and set
-Werror when compling the examples.

examples/lwip/Makefile:

Remove  compilation option -fpack-struct
2021-03-01 15:47:55 +00:00
Jon Shallow dc6c5e6b00 workflow: Add in distribution and CMake checks
.github/workflows/main.yml:

Do a 'make check' for matrix builds.
Move documentation into separate job to reduce matrix build times
Add in CMake job.
Add in distribution job.
Add in tinydtls job.
Add in contiki/lwip job.

scripts/github_dist.sh:

Do the distribution checks using a script.

examples/etsi_iot_01.c:
examples/tiny.c:

Fix include coap.h directory in old examples.

README.md:

Update status badges to get only the branch actions and remove CMake
status badge.
2021-02-24 18:15:25 +00:00
Olaf Bergmann 4185e6215f [CI] main.yml: Enable building on all relevant events and branches 2021-02-12 13:01:39 +01:00
Olaf Bergmann 961afc742e [CI] main.yml: Set -Werror in compile matrix 2021-02-12 12:44:50 +01:00
Olaf Bergmann 16ea2dca63 [CI] main.yml: Enable more checks 2021-02-12 12:44:47 +01:00