add fuzzing to ci workflows (#1745)
allow fuzzing to be performed as part of the continuous integration. the timing of the fuzzing can be extended, and i aim to broaden the scope of the fuzz testing as well, since we currently only test the stun message parser.
This commit is contained in:
parent
439914716d
commit
d124014428
42
.github/workflows/cifuzz.yml
vendored
Normal file
42
.github/workflows/cifuzz.yml
vendored
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
name: CIFuzz
|
||||||
|
on:
|
||||||
|
[pull_request]
|
||||||
|
permissions: {}
|
||||||
|
jobs:
|
||||||
|
Fuzzing:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
security-events: write
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
sanitizer: [address, memory, undefined]
|
||||||
|
steps:
|
||||||
|
- name: checkout repository
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
- name: build fuzzers (${{ matrix.sanitizer }})
|
||||||
|
id: build
|
||||||
|
uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master
|
||||||
|
with:
|
||||||
|
oss-fuzz-project-name: 'coturn'
|
||||||
|
language: c
|
||||||
|
sanitizer: ${{ matrix.sanitizer }}
|
||||||
|
- name: run fuzzers (${{ matrix.sanitizer }})
|
||||||
|
uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master
|
||||||
|
with:
|
||||||
|
oss-fuzz-project-name: 'coturn'
|
||||||
|
language: c
|
||||||
|
sanitizer: ${{ matrix.sanitizer }}
|
||||||
|
fuzz-seconds: 600
|
||||||
|
output-sarif: true
|
||||||
|
- name: upload crash
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
if: failure() && steps.build.outcome == 'success'
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.sanitizer }}_artifacts
|
||||||
|
path: ./out/artifacts
|
||||||
|
- name: upload sarif
|
||||||
|
if: always() && steps.build.outcome == 'success'
|
||||||
|
uses: github/codeql-action/upload-sarif@v3
|
||||||
|
with:
|
||||||
|
sarif_file: cifuzz-sarif/results.sarif
|
||||||
@ -1,5 +1,6 @@
|
|||||||
[](https://github.com/coturn/coturn/actions/workflows/docker.yml)
|
[](https://github.com/coturn/coturn/actions/workflows/docker.yml)
|
||||||
[](https://hub.docker.com/r/coturn/coturn)
|
[](https://hub.docker.com/r/coturn/coturn)
|
||||||
|
[](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:coturn)
|
||||||
|
|
||||||
[Docker Hub](https://hub.docker.com/r/coturn/coturn)
|
[Docker Hub](https://hub.docker.com/r/coturn/coturn)
|
||||||
| [GitHub Container Registry](https://github.com/orgs/coturn/packages/container/package/coturn)
|
| [GitHub Container Registry](https://github.com/orgs/coturn/packages/container/package/coturn)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user