swadhinbiswas 📦 v2.0.8: security fixes, documentation, testing improvements · 7/28/2026
3e270a0
43 lines · 1.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
name: Fuzzing

on:
  schedule:
    - cron: '0 2 * * *' # Run at 2 AM every day
  workflow_dispatch:

jobs:
  fuzz:
    name: cargo-fuzz
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Install Rust nightly
        uses: dtolnay/rust-toolchain@nightly

      - name: Install cargo-fuzz
        run: cargo install cargo-fuzz

      # Run every declared fuzz target. `cargo-fuzz` fails the job on the first
      # crash it finds, so any regression in a protocol/parser surface blocks CI.
      - name: Run fuzz_router
        run: cargo +nightly fuzz run fuzz_router -- -max_total_time=300
      - name: Run fuzz_file_paths
        run: cargo +nightly fuzz run fuzz_file_paths -- -max_total_time=300
      - name: Run fuzz_multipart
        run: cargo +nightly fuzz run fuzz_multipart -- -max_total_time=300
      - name: Run fuzz_body
        run: cargo +nightly fuzz run fuzz_body -- -max_total_time=300
      - name: Run fuzz_query_params
        run: cargo +nightly fuzz run fuzz_query_params -- -max_total_time=300
      - name: Run fuzz_headers
        run: cargo +nightly fuzz run fuzz_headers -- -max_total_time=300
      - name: Run fuzz_jwt
        run: cargo +nightly fuzz run fuzz_jwt -- -max_total_time=300
      - name: Run fuzz_pipeline
        run: cargo +nightly fuzz run fuzz_pipeline -- -max_total_time=300
      - name: Run fuzz_websocket
        run: cargo +nightly fuzz run fuzz_websocket -- -max_total_time=300
      - name: Run fuzz_grpc
        run: cargo +nightly fuzz run fuzz_grpc -- -max_total_time=300