1# Copyright (c) 2023 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14#####################hydra-fuzz################### 15import("//build/config/features.gni") 16import("//build/ohos.gni") 17import("//build/test.gni") 18import("../../../../appexecfwk.gni") 19module_output_path = fuzz_test_path 20 21##############################fuzztest########################################## 22ohos_fuzztest("ZipFuzzTest") { 23 include_dirs = [ "${kits_path}/js/zip/include" ] 24 module_out_path = module_output_path 25 fuzz_config_file = "../../../fuzztest/fuzztest_others/zip_fuzzer" 26 27 cflags = [ 28 "-g", 29 "-O0", 30 "-Wno-unused-variable", 31 "-fno-omit-frame-pointer", 32 ] 33 sources = [ 34 "${kits_path}/js/zip/napi/zlib_callback_info.cpp", 35 "${kits_path}/js/zip/src/file_path.cpp", 36 "${kits_path}/js/zip/src/zip.cpp", 37 "${kits_path}/js/zip/src/zip_internal.cpp", 38 "${kits_path}/js/zip/src/zip_reader.cpp", 39 "${kits_path}/js/zip/src/zip_utils.cpp", 40 "${kits_path}/js/zip/src/zip_writer.cpp", 41 ] 42 sources += [ "zip_fuzzer.cpp" ] 43 44 deps = [ 45 "${base_path}:appexecfwk_base", 46 "${common_path}:libappexecfwk_common", 47 "${core_path}:appexecfwk_core", 48 "${kits_path}/js/common:bundle_napi_common", 49 "${kits_path}/js/zip:zlib", 50 "//third_party/zlib:libz", 51 ] 52 external_deps = [ 53 "c_utils:utils", 54 "eventhandler:libeventhandler", 55 "hilog:libhilog", 56 "ipc:ipc_core", 57 "napi:ace_napi", 58 ] 59} 60