1# Copyright (c) 2025 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 14import("../../../../os_account.gni") 15 16#####################hydra-fuzz################### 17import("//build/config/features.gni") 18import("//build/ohos.gni") 19import("//build/test.gni") 20 21##############################fuzztest########################################## 22ohos_fuzztest("BindDomainAccountStubFuzzTest") { 23 module_out_path = fuzz_output_path 24 25 fuzz_config_file = "." 26 include_dirs = [ 27 "${services_path}/accountmgr/include/bundle_manager_adapter", 28 "${services_path}/accountmgr/include", 29 "${services_path}/accountmgr/include/osaccount", 30 "${os_account_innerkits_native_path}/include", 31 "${os_account_path}/test/fuzztest/osaccount_stub/common", 32 ] 33 cflags = [ 34 "-g", 35 "-O0", 36 "-Wno-unused-variable", 37 "-fno-omit-frame-pointer", 38 ] 39 if (use_libfuzzer) { 40 cflags += [ "-DFUZZ_TEST" ] 41 } 42 if (target_cpu == "arm") { 43 cflags += [ "-DBINDER_IPC_32BIT" ] 44 } 45 sources = [ 46 "${os_account_path}/services/accountmgr/src/osaccount/os_account_manager_service.cpp", 47 "binddomainaccountstub_fuzzer.cpp", 48 ] 49 50 deps = [ 51 "${domain_account_framework_path}:domain_account_innerkits", 52 "${os_account_path}/frameworks/common:libaccount_common", 53 "${os_account_path}/frameworks/osaccount/native:os_account_innerkits", 54 "${os_account_path}/services/accountmgr:accountmgr", 55 ] 56 57 external_deps = [ 58 "ability_base:want", 59 "ability_runtime:app_manager", 60 "ability_runtime:wantagent_innerkits", 61 "access_token:libaccesstoken_sdk", 62 "access_token:libnativetoken_shared", 63 "access_token:libtokenid_sdk", 64 "access_token:libtokensetproc_shared", 65 "bundle_framework:appexecfwk_base", 66 "cJSON:cjson", 67 "c_utils:utils", 68 "hilog:libhilog", 69 "ipc:ipc_single", 70 "kv_store:distributeddata_inner", 71 "safwk:system_ability_fwk", 72 "samgr:samgr_proxy", 73 ] 74 75 defines = [ 76 "ACCOUNT_LOG_TAG = \"OsAccountFuzzTest\"", 77 "LOG_DOMAIN = 0xD001B00", 78 ] 79 80 cflags_cc = [] 81 if (os_account_support_domain_accounts) { 82 cflags_cc += [ "-DSUPPORT_DOMAIN_ACCOUNTS" ] 83 } 84} 85