curl-fuzzer C++ reference
Loading...
Searching...
No Matches
profile_fuzzer.h File Reference

Type-safe libprotobuf-mutator hooks for one generated target profile. More...

Go to the source code of this file.

Classes

struct  proto_fuzzer::ProfileFuzzerTraits
 Ordinary runtime binding for one generated protobuf profile. More...
class  proto_fuzzer::ProfileFuzzerHooks< Traits >
 Bind all LPM operations for one process to one protobuf message type. More...

Functions

template<typename Traits>
bool proto_fuzzer::LoadProfileInput (const std::uint8_t *data, std::size_t size, curl::fuzzer::proto::Scenario *runtime)
 Load one generated profile message and lower it into runtime state.
template<typename Traits>
void proto_fuzzer::ProbeTimingMutationHelpers ()
 Exercise the typed mutation ABI once for the profiling timing target.
template<typename Traits>
constexpr ProfileFuzzerTraits proto_fuzzer::BindProfileFuzzer ()
 Bind one generated adapter to the ordinary entrypoint helper interface.

Detailed Description

Type-safe libprotobuf-mutator hooks for one generated target profile.

Definition in file profile_fuzzer.h.

Function Documentation

◆ BindProfileFuzzer()

template<typename Traits>
ProfileFuzzerTraits proto_fuzzer::BindProfileFuzzer ( )
constexpr

Bind one generated adapter to the ordinary entrypoint helper interface.

Template Parameters
TraitsGenerated adapter defining the concrete message type.
Returns
Immutable runtime descriptor binding all callbacks to Traits.

Definition at line 217 of file profile_fuzzer.h.

◆ LoadProfileInput()

template<typename Traits>
bool proto_fuzzer::LoadProfileInput ( const std::uint8_t * data,
std::size_t size,
curl::fuzzer::proto::Scenario * runtime )

Load one generated profile message and lower it into runtime state.

Template Parameters
TraitsGenerated adapter defining the concrete message type.
Parameters
dataSerialized generated-profile bytes.
sizeNumber of bytes available at data.
runtimeDestination for the owned runtime Scenario.
Returns
Whether parsing and lowering succeeded.

Definition at line 176 of file profile_fuzzer.h.

◆ ProbeTimingMutationHelpers()

template<typename Traits>
void proto_fuzzer::ProbeTimingMutationHelpers ( )

Exercise the typed mutation ABI once for the profiling timing target.

Template Parameters
TraitsGenerated adapter defining the concrete message type.

Definition at line 183 of file profile_fuzzer.h.