Skip to content

Commit

Permalink
workflow: update fuzz actions to use cmake targets
Browse files Browse the repository at this point in the history
  • Loading branch information
Richard Pospesel committed Mar 10, 2024
1 parent 0fc7de9 commit a82f132
Show file tree
Hide file tree
Showing 6 changed files with 29 additions and 21 deletions.
33 changes: 19 additions & 14 deletions .github/workflows/fuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,31 +18,36 @@ jobs:
- name: Install fuzzer
run: |
cargo install cargo-fuzz
- name: Init Project
run: |
mkdir build
cd build
cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DENABLE_FUZZ_TESTS=On -DFUZZ_TEST_MAX_TOTAL_TIME=1200
- name: Fuzz HonkRPC
run: |
cd source/gosling/crates/honk-rpc
cargo fuzz run fuzz_session -- -max_total_time=600
cd build
ctest -R honk_rpc_cargo_fuzz_test --verbose
- name: Fuzz Tor Crypto
run: |
cd source/gosling/crates/tor-interface
cargo fuzz run fuzz_crypto -- -max_total_time=600
cd build
ctest -R tor_interface_crypto_cargo_fuzz_test --verbose
- name: Fuzz Identity Server
run: |
cd source/gosling/crates/gosling
cargo fuzz run fuzz_identity_server -- -max_total_time=600
cd build
ctest -R gosling_identity_server_cargo_fuzz_test --verbose
- name: Fuzz Identity Client
run: |
cd source/gosling/crates/gosling
cargo fuzz run fuzz_identity_client -- -max_total_time=600
cd build
ctest -R gosling_identity_client_cargo_fuzz_test --verbose
- name: Fuzz Endpoint Server
run: |
cd source/gosling/crates/gosling
cargo fuzz run fuzz_endpoint_server -- -max_total_time=600
cd build
ctest -R gosling_endpoint_server_cargo_fuzz_test --verbose
- name: Fuzz Endpoint Client
run: |
cd source/gosling/crates/gosling
cargo fuzz run fuzz_endpoint_client -- -max_total_time=600
cd build
ctest -R gosling_endpoint_client_cargo_fuzz_test --verbose
- name: Fuzz C-Gosling
run: |
cd source/gosling/crates/cgosling
cargo fuzz run fuzz_cgosling -- -max_total_time=600
cd build
ctest -R cgosling_cargo_fuzz_test --verbose
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ endif()
option(ENABLE_FUZZ_TESTS "Enable fuzz tests" OFF)
if (ENABLE_FUZZ_TESTS)
set(ENABLE_TESTS ON)
if (NOT FUZZ_TEST_MAX_TOTAL_TIME)
set(FUZZ_TEST_MAX_TOTAL_TIME 600)
endif()
endif()

if (ENABLE_TESTS)
Expand Down
2 changes: 1 addition & 1 deletion source/gosling/crates/cgosling/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ if (ENABLE_TESTS)
#
if (ENABLE_FUZZ_TESTS)
add_test(NAME cgosling_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_cgosling ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_cgosling -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
endif()
endif()
8 changes: 4 additions & 4 deletions source/gosling/crates/gosling/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,22 +49,22 @@ if (ENABLE_TESTS)
#
if (ENABLE_FUZZ_TESTING)
add_test(NAME gosling_identity_server_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_identity_server ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_identity_server -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)

add_test(NAME gosling_identity_client_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_identity_client ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_identity_client -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)

add_test(NAME gosling_endpoint_server_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_endpoint_server ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_endpoint_server -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)

add_test(NAME gosling_endpoint_client_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_endpoint_client ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_endpoint_client -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
endif()
Expand Down
2 changes: 1 addition & 1 deletion source/gosling/crates/honk-rpc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ if (ENABLE_TESTS)
#
if (ENABLE_FUZZ_TESTS)
add_test(NAME honk_rpc_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_session ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_session -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
endif()
Expand Down
2 changes: 1 addition & 1 deletion source/gosling/crates/tor-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ if (ENABLE_TESTS)
#
if (ENABLE_FUZZ_TESTS)
add_test(NAME tor_interface_crypto_cargo_fuzz_test
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_crypto ${CARGO_FLAGS}
COMMAND env CARGO_TARGET_DIR=${CARGO_TARGET_DIR} RUSTFLAGS=${RUSTFLAGS} RUST_BACKTRACE=full cargo fuzz run fuzz_crypto -- -max_total_time=${FUZZ_TEST_MAX_TOTAL_TIME}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
endif()
Expand Down

0 comments on commit a82f132

Please sign in to comment.