Optimize OEMCrypto_ShrinkUsageTableHeader fuzzing

Merge from Widevine repo of http://go/wvgerrit/159057

Increase fuzzing efficiency by generating the header_buffer_length
parameter from the input data and pre-creating a usage table header.

Test: tested with http://go/ag/20420224

Change-Id: Idab4c3d0ae879854202e5ffd24bf031b946aeb6a
This commit is contained in:
Ian Benz
2022-11-08 13:53:09 -08:00
committed by Fred Gylys-Colwell
parent 2e9cbaf30f
commit e88bcf51c8
4 changed files with 14 additions and 10 deletions

View File

@@ -20,9 +20,10 @@ extern "C" size_t LLVMFuzzerMutate(uint8_t* Data, size_t Size, size_t MaxSize)
__attribute__((weak));
const size_t KB = 1024;
// Maximum signature length. If fuzzed signature length is greater that this,
// this value will be used for signature length.
const size_t MAX_FUZZ_SIGNATURE_LENGTH = 5 * KB;
// Default maximum length of fuzzing output parameters.
const size_t MAX_FUZZ_OUTPUT_LENGTH = 5 * KB;
// Initial setup to create a valid OEMCrypto state such as initializing crypto
// firmware/hardware, installing golden key box etc. in order to fuzz
// OEMCrypto APIs.