|
curl-fuzzer C++ reference
|
Pure interpretation and normalization of structured curl options. More...
Go to the source code of this file.
Classes | |
| struct | proto_fuzzer::OptionDescriptor |
| A generated option description. More... | |
Enumerations | |
| enum class | proto_fuzzer::OptionValueKind { kString , kUint , kBool } |
| Value family selected by the build-time-generated option manifest. More... | |
Functions | |
| const OptionDescriptor * | proto_fuzzer::LookupOptionDescriptor (curl::fuzzer::proto::CurlOptionId id) |
| Return the generated description, or nullptr for an unsupported option. | |
| std::uint64_t | proto_fuzzer::DecodeIntegralOptionValue (const curl::fuzzer::proto::SetOption &option) |
| Decode a recognized integral option. | |
| std::uint64_t | proto_fuzzer::DecodeIntegralOptionValue (const OptionDescriptor &descriptor, const curl::fuzzer::proto::SetOption &option) |
| Decode using an already-resolved descriptor, avoiding another lookup when the runtime has selected the option's application path. | |
| void | proto_fuzzer::CanonicalizeOptionValueCases (curl::fuzzer::proto::Scenario *scenario) |
| Restore each recognized option's consumed oneof member without calling libcurl. | |
| bool | proto_fuzzer::UsesInMemoryPublicKeyPin (const std::string &value) |
| Whether curl will interpret this pin as an in-memory digest expression. | |
| void | proto_fuzzer::ConstrainPinnedPublicKeyValue (std::string *value) |
| Prefix filename-like pins with in-memory digest syntax. | |
Pure interpretation and normalization of structured curl options.
Definition in file option_model.h.
|
strong |
Value family selected by the build-time-generated option manifest.
| Enumerator | |
|---|---|
| kString | string_value passed to a string or byte-data option. |
| kUint | uint_value passed to a long or curl_off_t option. |
| kBool | bool_value passed as a zero-or-one long flag. |
Definition at line 21 of file option_model.h.
| void proto_fuzzer::CanonicalizeOptionValueCases | ( | curl::fuzzer::proto::Scenario * | scenario | ) |
Restore each recognized option's consumed oneof member without calling libcurl.
Public-key pins are constrained to curl's in-memory digest syntax. Unknown ids remain available for later mutation into a supported option.
| scenario | Scenario to canonicalize in place; nullptr is harmless. |
Definition at line 83 of file option_model.cc.
| void proto_fuzzer::ConstrainPinnedPublicKeyValue | ( | std::string * | value | ) |
Prefix filename-like pins with in-memory digest syntax.
This helper does not trim bytes; fixed-target normalization applies its final budget after canonicalization, while compatibility execution preserves its input size.
| value | Pin expression to constrain in place; nullptr is harmless. |
Definition at line 64 of file option_model.cc.
| std::uint64_t proto_fuzzer::DecodeIntegralOptionValue | ( | const curl::fuzzer::proto::SetOption & | option | ) |
Decode a recognized integral option.
Numeric options preserve magnitude; boolean options use truthiness. Incompatible or unknown values yield zero.
| option | Structured option whose descriptor and value will be read. |
Definition at line 74 of file option_model.cc.
| std::uint64_t proto_fuzzer::DecodeIntegralOptionValue | ( | const OptionDescriptor & | descriptor, |
| const curl::fuzzer::proto::SetOption & | option ) |
Decode using an already-resolved descriptor, avoiding another lookup when the runtime has selected the option's application path.
| descriptor | Generated description of the option being decoded. |
| option | Structured option supplying the integral value. |
Definition at line 31 of file option_model.cc.
| const OptionDescriptor * proto_fuzzer::LookupOptionDescriptor | ( | curl::fuzzer::proto::CurlOptionId | id | ) |
Return the generated description, or nullptr for an unsupported option.
| id | Protobuf option identifier to look up. |
Definition at line 51 of file option_model.cc.
| bool proto_fuzzer::UsesInMemoryPublicKeyPin | ( | const std::string & | value | ) |
Whether curl will interpret this pin as an in-memory digest expression.
| value | Public-key pin expression to inspect. |
Definition at line 58 of file option_model.cc.