Loading media/libaaudio/fuzzer/libaaudio_fuzzer.cpp +11 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include "aaudio/AAudio.h" #include "aaudio/AAudioTesting.h" #include "system/aaudio/AAudio.h" #include <fuzzer/FuzzedDataProvider.h> #include <functional> Loading Loading @@ -183,6 +184,12 @@ void LibAaudioFuzzer::invokeAAudioSetAPIs(FuzzedDataProvider &fdp){ fdp.PickValueInArray({AAUDIO_UNSPECIFIED, fdp.ConsumeIntegral<int32_t>()}); AAudioStreamBuilder_setFramesPerDataCallback(mAaudioBuilder, framesPerDataCallback); const size_t tagsNumBytes = fdp.ConsumeIntegralInRange<size_t>( 0, AAUDIO_ATTRIBUTES_TAGS_MAX_SIZE + 10); AAudioStreamBuilder_setTags(mAaudioBuilder, (tagsNumBytes == 0 ? nullptr : fdp.ConsumeBytesAsString(tagsNumBytes).c_str())); aaudio_policy_t policy = fdp.PickValueInArray({fdp.PickValueInArray(kPolicies), fdp.ConsumeIntegral<int32_t>()}); AAudio_setMMapPolicy(policy); Loading @@ -193,6 +200,7 @@ void LibAaudioFuzzer::process(const uint8_t *data, size_t size) { int32_t maxFrames = 0; int32_t count = 0; aaudio_stream_state_t state = AAUDIO_STREAM_STATE_UNKNOWN; char tags[AAUDIO_ATTRIBUTES_TAGS_MAX_SIZE + 1]; invokeAAudioSetAPIs(fdp); Loading Loading @@ -311,6 +319,9 @@ void LibAaudioFuzzer::process(const uint8_t *data, size_t size) { [&]() { (void)AAudioStream_getBufferSizeInFrames(mAaudioStream); }, [&]() { (void)AAudioStream_getTags(mAaudioStream, tags); }, [&]() { (void)AAudioStream_isMMapUsed(mAaudioStream); }, Loading Loading
media/libaaudio/fuzzer/libaaudio_fuzzer.cpp +11 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ #include "aaudio/AAudio.h" #include "aaudio/AAudioTesting.h" #include "system/aaudio/AAudio.h" #include <fuzzer/FuzzedDataProvider.h> #include <functional> Loading Loading @@ -183,6 +184,12 @@ void LibAaudioFuzzer::invokeAAudioSetAPIs(FuzzedDataProvider &fdp){ fdp.PickValueInArray({AAUDIO_UNSPECIFIED, fdp.ConsumeIntegral<int32_t>()}); AAudioStreamBuilder_setFramesPerDataCallback(mAaudioBuilder, framesPerDataCallback); const size_t tagsNumBytes = fdp.ConsumeIntegralInRange<size_t>( 0, AAUDIO_ATTRIBUTES_TAGS_MAX_SIZE + 10); AAudioStreamBuilder_setTags(mAaudioBuilder, (tagsNumBytes == 0 ? nullptr : fdp.ConsumeBytesAsString(tagsNumBytes).c_str())); aaudio_policy_t policy = fdp.PickValueInArray({fdp.PickValueInArray(kPolicies), fdp.ConsumeIntegral<int32_t>()}); AAudio_setMMapPolicy(policy); Loading @@ -193,6 +200,7 @@ void LibAaudioFuzzer::process(const uint8_t *data, size_t size) { int32_t maxFrames = 0; int32_t count = 0; aaudio_stream_state_t state = AAUDIO_STREAM_STATE_UNKNOWN; char tags[AAUDIO_ATTRIBUTES_TAGS_MAX_SIZE + 1]; invokeAAudioSetAPIs(fdp); Loading Loading @@ -311,6 +319,9 @@ void LibAaudioFuzzer::process(const uint8_t *data, size_t size) { [&]() { (void)AAudioStream_getBufferSizeInFrames(mAaudioStream); }, [&]() { (void)AAudioStream_getTags(mAaudioStream, tags); }, [&]() { (void)AAudioStream_isMMapUsed(mAaudioStream); }, Loading