From 9331eac61c1b770e78740d7f421afa7c9ffc733c Mon Sep 17 00:00:00 2001 From: Tome Date: Wed, 3 Sep 2025 16:44:09 +0800 Subject: [PATCH] sync Signed-off-by: Tome --- .../inner_kits/native_cpp/test/sourcefuzztest/BUILD.gn | 1 + .../sourceserviceinitsource_fuzzer.cpp | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/interfaces/inner_kits/native_cpp/test/sourcefuzztest/BUILD.gn b/interfaces/inner_kits/native_cpp/test/sourcefuzztest/BUILD.gn index 16732bb5..15dff9b5 100644 --- a/interfaces/inner_kits/native_cpp/test/sourcefuzztest/BUILD.gn +++ b/interfaces/inner_kits/native_cpp/test/sourcefuzztest/BUILD.gn @@ -42,6 +42,7 @@ group("fuzztest") { "sourceservicedump_fuzzer:fuzztest", "sourceservicegetdumpinfo_fuzzer:fuzztest", "sourceservicecamdeverase_fuzzer:fuzztest", + "sourceserviceinitsource_fuzzer:fuzztest", "sourceserviceregisterdistributedhardware_fuzzer:fuzztest", "sourceservicereleasesource_fuzzer:fuzztest", "sourceserviceunregisterdistributedhardware_fuzzer:fuzztest", diff --git a/interfaces/inner_kits/native_cpp/test/sourcefuzztest/sourceserviceinitsource_fuzzer/sourceserviceinitsource_fuzzer.cpp b/interfaces/inner_kits/native_cpp/test/sourcefuzztest/sourceserviceinitsource_fuzzer/sourceserviceinitsource_fuzzer.cpp index da73169d..9a65e8ea 100644 --- a/interfaces/inner_kits/native_cpp/test/sourcefuzztest/sourceserviceinitsource_fuzzer/sourceserviceinitsource_fuzzer.cpp +++ b/interfaces/inner_kits/native_cpp/test/sourcefuzztest/sourceserviceinitsource_fuzzer/sourceserviceinitsource_fuzzer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -14,6 +14,7 @@ */ #include "sourceserviceinitsource_fuzzer.h" +#include #include "dcamera_source_callback.h" #include "distributed_camera_constants.h" @@ -25,10 +26,13 @@ namespace OHOS { namespace DistributedHardware { void SourceServiceInitSourceFuzzTest(const uint8_t* data, size_t size) { - if ((data == nullptr) || (size == 0)) { + if ((data == nullptr) || (size < sizeof(int32_t))) { return; } - std::string params(reinterpret_cast(data), size); + + FuzzedDataProvider fuzzedData(data, size); + int32_t tempLen = 32; + std::string params = fuzzedData.ConsumeRandomLengthString(tempLen); std::shared_ptr sourceService = std::make_shared(DISTRIBUTED_HARDWARE_CAMERA_SOURCE_SA_ID, true); -- Gitee