diff --git a/services/audiomanager/test/fuzztest/sinkservicedaudionotify_fuzzer/sinkservicedaudionotify_fuzzer.cpp b/services/audiomanager/test/fuzztest/sinkservicedaudionotify_fuzzer/sinkservicedaudionotify_fuzzer.cpp index 11a1e7b14cfae463132f83c0b2d43d371aeb0885..640145e263993f2e7a00dfb3f855b1d3b0375a53 100644 --- a/services/audiomanager/test/fuzztest/sinkservicedaudionotify_fuzzer/sinkservicedaudionotify_fuzzer.cpp +++ b/services/audiomanager/test/fuzztest/sinkservicedaudionotify_fuzzer/sinkservicedaudionotify_fuzzer.cpp @@ -17,6 +17,7 @@ #include #include +#include #include "daudio_sink_service.h" #include "if_system_ability_manager.h" @@ -30,12 +31,13 @@ void SinkServiceDAudioNotifyFuzzTest(const uint8_t* data, size_t size) return; } - std::string dhId(reinterpret_cast(data), size); - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); - int32_t eventType = *(reinterpret_cast(data)); - std::string eventContent(reinterpret_cast(data), size); - std::string devId(reinterpret_cast(data), size); + FuzzedDataProvider fdp(data, size); + std::string dhId = fdp.ConsumeRandomLengthString(); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); + int32_t eventType = fdp.ConsumeIntegral(); + std::string eventContent = fdp.ConsumeRandomLengthString(); + std::string devId = fdp.ConsumeRandomLengthString(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); diff --git a/services/audiomanager/test/fuzztest/sinkstubdaudiosinkstub_fuzzer/sinkstubdaudiosinkstub_fuzzer.cpp b/services/audiomanager/test/fuzztest/sinkstubdaudiosinkstub_fuzzer/sinkstubdaudiosinkstub_fuzzer.cpp index d10e6e6c73b0712b731286b9bd74cffbaa057652..cc87dd160dbd9be7dba7c55b35ac01c046b33d6d 100644 --- a/services/audiomanager/test/fuzztest/sinkstubdaudiosinkstub_fuzzer/sinkstubdaudiosinkstub_fuzzer.cpp +++ b/services/audiomanager/test/fuzztest/sinkstubdaudiosinkstub_fuzzer/sinkstubdaudiosinkstub_fuzzer.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include "daudio_sink_stub.h" #include "daudio_sink_service.h" @@ -33,8 +34,9 @@ void SinkStubDaudioSinkStubFuzzTest(const uint8_t* data, size_t size) if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -43,8 +45,8 @@ void SinkStubDaudioSinkStubFuzzTest(const uint8_t* data, size_t size) std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -66,7 +68,7 @@ void SinkStubDaudioSinkStubFuzzTest(const uint8_t* data, size_t size) &DAudioSinkStub::ResumeDistributedHardwareInner; dAudioSinkService->memberFuncMap_[static_cast(IDAudioSinkInterfaceCode::STOP_DISTRIBUTED_HARDWARE)] = &DAudioSinkStub::StopDistributedHardwareInner; - const uint32_t code = *(reinterpret_cast(data)); + const uint32_t code = fdp.ConsumeIntegral(); dAudioSinkService->OnRemoteRequest(code, pdata, reply, option); } @@ -75,8 +77,9 @@ void SinkStubSubscribeLocalHardwareInnerFuzzTest(const uint8_t* data, size_t siz if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -85,8 +88,8 @@ void SinkStubSubscribeLocalHardwareInnerFuzzTest(const uint8_t* data, size_t siz std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -100,8 +103,9 @@ void SinkStubUnsubscribeLocalHardwareInnerFuzzTest(const uint8_t* data, size_t s if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -110,8 +114,8 @@ void SinkStubUnsubscribeLocalHardwareInnerFuzzTest(const uint8_t* data, size_t s std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -125,8 +129,9 @@ void SinkStubDAudioNotifyInnerFuzzTest(const uint8_t* data, size_t size) if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -135,8 +140,8 @@ void SinkStubDAudioNotifyInnerFuzzTest(const uint8_t* data, size_t size) std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -150,8 +155,9 @@ void SinkStubPauseDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t s if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -160,8 +166,8 @@ void SinkStubPauseDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t s std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -175,8 +181,9 @@ void SinkStubResumeDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -185,8 +192,8 @@ void SinkStubResumeDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -200,8 +207,9 @@ void SinkStubStopDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t si if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -210,8 +218,8 @@ void SinkStubStopDistributedHardwareInnerFuzzTest(const uint8_t* data, size_t si std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); diff --git a/services/audiomanager/test/fuzztest/sinkstubonremoterequest_fuzzer/sinkstubonremoterequest_fuzzer.cpp b/services/audiomanager/test/fuzztest/sinkstubonremoterequest_fuzzer/sinkstubonremoterequest_fuzzer.cpp index 53ff7bfb5fe1bf7947d8f3585fdf0ddb59fbc3b2..03f6f42d7be8f72292404a97fbc284c642d8ccac 100644 --- a/services/audiomanager/test/fuzztest/sinkstubonremoterequest_fuzzer/sinkstubonremoterequest_fuzzer.cpp +++ b/services/audiomanager/test/fuzztest/sinkstubonremoterequest_fuzzer/sinkstubonremoterequest_fuzzer.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include "daudio_sink_stub.h" #include "daudio_sink_service.h" @@ -33,9 +34,9 @@ void SinkStubOnRemoteRequestFuzzTest(const uint8_t* data, size_t size) if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); + FuzzedDataProvider fdp(data, size); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); auto dAudioSinkService = std::make_shared(saId, runOnCreate); std::random_device rd; MessageParcel pdata; @@ -44,8 +45,8 @@ void SinkStubOnRemoteRequestFuzzTest(const uint8_t* data, size_t size) std::string devId = "1"; std::string dhId = "2"; std::string reqId = "3"; - int32_t status = *(reinterpret_cast(data)); - std::string resultData(reinterpret_cast(data), size); + int32_t status = fdp.ConsumeIntegral(); + std::string resultData = fdp.ConsumeRandomLengthString(); pdata.WriteString(devId); pdata.WriteString(dhId); pdata.WriteString(reqId); @@ -67,7 +68,7 @@ void SinkStubOnRemoteRequestFuzzTest(const uint8_t* data, size_t size) &DAudioSinkStub::ResumeDistributedHardwareInner; dAudioSinkService->memberFuncMap_[static_cast(IDAudioSinkInterfaceCode::STOP_DISTRIBUTED_HARDWARE)] = &DAudioSinkStub::StopDistributedHardwareInner; - const uint32_t code = *(reinterpret_cast(data)); + const uint32_t code = fdp.ConsumeIntegral(); dAudioSinkService->OnRemoteRequest(code, pdata, reply, option); } } diff --git a/services/audiomanager/test/fuzztest/sourceservicedaudionotify_fuzzer/sourceservicedaudionotify_fuzzer.cpp b/services/audiomanager/test/fuzztest/sourceservicedaudionotify_fuzzer/sourceservicedaudionotify_fuzzer.cpp index 6d472bdadad8f076f1beb33873c61ddd3ec182da..4500a3c5ef2acfbe65e73176d91f34716b016538 100644 --- a/services/audiomanager/test/fuzztest/sourceservicedaudionotify_fuzzer/sourceservicedaudionotify_fuzzer.cpp +++ b/services/audiomanager/test/fuzztest/sourceservicedaudionotify_fuzzer/sourceservicedaudionotify_fuzzer.cpp @@ -17,6 +17,7 @@ #include #include +#include #include "daudio_source_service.h" #include "if_system_ability_manager.h" @@ -29,13 +30,14 @@ void SourceServiceDAudioNotifyFuzzTest(const uint8_t* data, size_t size) if ((data == nullptr) || (size < (sizeof(int32_t)))) { return; } - - std::string dhId(reinterpret_cast(data), size); - int32_t saId = *(reinterpret_cast(data)); - bool runOnCreate = *(reinterpret_cast(data)); - int32_t eventType = *(reinterpret_cast(data)); - std::string eventContent(reinterpret_cast(data), size); - std::string devId(reinterpret_cast(data), size); + FuzzedDataProvider fdp(data, size); + + std::string dhId = fdp.ConsumeRandomLengthString(); + int32_t saId = fdp.ConsumeIntegral(); + bool runOnCreate = fdp.ConsumeBool(); + int32_t eventType = fdp.ConsumeIntegral(); + std::string eventContent = fdp.ConsumeRandomLengthString(); + std::string devId = fdp.ConsumeRandomLengthString(); auto dAudioSourceService = std::make_shared(saId, runOnCreate);