name: Fuzz on: schedule: - cron: "17 3 * * *" workflow_dispatch: permissions: contents: read jobs: fuzz: name: Fuzz (${{ matrix.target }}) runs-on: ubuntu-22.04 strategy: fail-fast: false matrix: target: [telnet, irc, vnc, sshconfig, updater] defaults: run: working-directory: rust/fuzz steps: - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0 with: persist-credentials: false - run: sudo apt-get update && sudo apt-get install -y libasound2-dev - run: rustup toolchain install nightly --profile minimal - run: cargo +nightly install cargo-fuzz --locked - run: cargo +nightly fuzz run ${{ matrix.target }} -- -max_total_time=120 -rss_limit_mb=2048 -timeout=10 - name: Upload crashing inputs if: failure() uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 with: name: fuzz-${{ matrix.target }} path: rust/fuzz/artifacts