curl-fuzzer C++ reference
Loading...
Searching...
No Matches
target_policy.h
Go to the documentation of this file.
1/*
2 * Copyright (C) Max Dymond, <cmeister2@gmail.com>, et al.
3 *
4 * SPDX-License-Identifier: curl
5 */
6
10
11#ifndef PROTO_FUZZER_TARGET_POLICY_H_
12#define PROTO_FUZZER_TARGET_POLICY_H_
13
14#include "curl_fuzzer.pb.h"
16
17namespace proto_fuzzer {
18
20using ConditionalEligibilityPruner = void (*)(curl::fuzzer::proto::Scenario*, TargetProfile);
21
22void NormalizeScenarioForExecution(curl::fuzzer::proto::Scenario* scenario);
23void NormalizeScenarioForTarget(curl::fuzzer::proto::Scenario* scenario, TargetProfile profile,
24 ConditionalEligibilityPruner prune_conditional_eligibility = nullptr);
25
26} // namespace proto_fuzzer
27
28#endif // PROTO_FUZZER_TARGET_POLICY_H_
void NormalizeScenarioForExecution(curl::fuzzer::proto::Scenario *scenario)
Apply execution-only allocation-failure safety rules.
void NormalizeScenarioForTarget(curl::fuzzer::proto::Scenario *scenario, TargetProfile profile, ConditionalEligibilityPruner prune_conditional_eligibility)
Complete normalization for a loaded or mutated fixed-target Scenario.
void(*)(curl::fuzzer::proto::Scenario *, TargetProfile) ConditionalEligibilityPruner
Generated callback that removes conditionally ineligible fields and options.
Compile-time identities and execution modes for proto fuzz targets.
TargetProfile
Identifies one compiled proto-fuzzer lane.