From 0f4a78025c984deb13d79e1921d0a59f0a2ec3ae Mon Sep 17 00:00:00 2001 From: Arthur Chan Date: Thu, 29 Jan 2026 08:33:30 +0000 Subject: [PATCH 1/2] github: Add latest CIFuzz Signed-off-by: Arthur Chan --- .github/workflows/cifuzz.yml | 48 ++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/cifuzz.yml diff --git a/.github/workflows/cifuzz.yml b/.github/workflows/cifuzz.yml new file mode 100644 index 000000000..9e159e97f --- /dev/null +++ b/.github/workflows/cifuzz.yml @@ -0,0 +1,48 @@ +name: CIFuzz +on: [push, pull_request] +permissions: {} +jobs: + pre-check: + runs-on: ubuntu-latest + outputs: + should_skip: ${{ steps.skip-check.outputs.should_skip }} + steps: + - id: skip-check + uses: fkirc/skip-duplicate-actions@master + with: + concurrent_skipping: 'same_content_newer' + + fuzzing: + needs: pre-check + if: ${{ needs.pre-check.outputs.should_skip != 'true' }} + runs-on: ubuntu-latest + permissions: + security-events: write + steps: + - name: Build Fuzzers + id: build + uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master + with: + oss-fuzz-project-name: 'strongswan' + language: c + + - name: Run Fuzzers + uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master + with: + oss-fuzz-project-name: 'strongswan' + output-sarif: true + language: c + + - name: Upload Crash + uses: actions/upload-artifact@v4 + if: failure() && steps.build.outcome == 'success' + with: + name: artifacts + path: ./out/artifacts + + - name: Upload Sarif + if: always() && steps.build.outcome == 'success' + uses: github/codeql-action/upload-sarif@v4 + with: + sarif_file: cifuzz-sarif/results.sarif + checkout_path: cifuzz-sarif From 8a8d4640cf66865a6a72cc4e97659d689258bb15 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Fri, 30 Jan 2026 15:06:14 +0100 Subject: [PATCH 2/2] github: Also run UBSan with CIFuzz --- .github/workflows/cifuzz.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cifuzz.yml b/.github/workflows/cifuzz.yml index 9e159e97f..2857bb9b2 100644 --- a/.github/workflows/cifuzz.yml +++ b/.github/workflows/cifuzz.yml @@ -16,6 +16,10 @@ jobs: needs: pre-check if: ${{ needs.pre-check.outputs.should_skip != 'true' }} runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + sanitizer: [address, undefined] permissions: security-events: write steps: @@ -25,6 +29,7 @@ jobs: with: oss-fuzz-project-name: 'strongswan' language: c + sanitizer: ${{ matrix.sanitizer }} - name: Run Fuzzers uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master @@ -32,12 +37,13 @@ jobs: oss-fuzz-project-name: 'strongswan' output-sarif: true language: c + sanitizer: ${{ matrix.sanitizer }} - name: Upload Crash uses: actions/upload-artifact@v4 if: failure() && steps.build.outcome == 'success' with: - name: artifacts + name: ${{ matrix.sanitizer }}-artifacts path: ./out/artifacts - name: Upload Sarif