1# Copyright (c) 2024 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/test.gni") 17import("../../../../../distributedinput.gni") 18 19##############################fuzztest########################################## 20ohos_fuzztest("DistributedInputStubFuzzTest") { 21 module_out_path = fuzz_test_path 22 23 fuzz_config_file = "${ipc_path}/test/fuzztest/distributedinputstub_fuzzer" 24 25 include_dirs = [ 26 "${innerkits_path}/include", 27 "${innerkits_path}/ipc/include", 28 "${ipc_path}/include", 29 "${services_source_path}/sourcemanager/include", 30 "${frameworks_path}/include", 31 "${distributedinput_path}/inputdevicehandler/include", 32 "${common_path}/include", 33 "${services_state_path}/include", 34 "${service_common}/include", 35 "${services_source_path}/inputinject/include", 36 "${services_source_path}/transport/include", 37 "${dfx_utils_path}/include", 38 "${utils_path}/include", 39 "${common_path}/test/mock", 40 "${distributedinput_path}/services/transportbase/include", 41 "${distributedinput_path}/utils/include", 42 "${distributedinput_path}/services/state/include", 43 ] 44 45 cflags = [ 46 "-g", 47 "-O0", 48 "-Wno-unused-variable", 49 "-fno-omit-frame-pointer", 50 "-Dprivate=public", 51 "-Dprotected=public", 52 ] 53 sources = [ 54 "${common_path}/include/input_hub.cpp", 55 "${common_path}/test/mock/socket_mock.cpp", 56 "${common_path}/test/mock/softbus_bus_center_mock.cpp", 57 "${distributedinput_path}/services/transportbase/src/distributed_input_transport_base.cpp", 58 "${distributedinput_path}/services/transportbase/src/softbus_permission_check.cpp", 59 "${distributedinput_path}/utils/src/dinput_context.cpp", 60 "${distributedinput_path}/utils/src/dinput_utils_tool.cpp", 61 "${ipc_path}/src/add_white_list_infos_call_back_proxy.cpp", 62 "${ipc_path}/src/add_white_list_infos_call_back_stub.cpp", 63 "${ipc_path}/src/del_white_list_infos_call_back_proxy.cpp", 64 "${ipc_path}/src/del_white_list_infos_call_back_stub.cpp", 65 "${ipc_path}/src/distributed_input_sink_proxy.cpp", 66 "${ipc_path}/src/distributed_input_sink_stub.cpp", 67 "${ipc_path}/src/distributed_input_source_proxy.cpp", 68 "${ipc_path}/src/distributed_input_source_stub.cpp", 69 "${ipc_path}/src/get_sink_screen_infos_call_back_proxy.cpp", 70 "${ipc_path}/src/get_sink_screen_infos_call_back_stub.cpp", 71 "${ipc_path}/src/prepare_d_input_call_back_proxy.cpp", 72 "${ipc_path}/src/prepare_d_input_call_back_stub.cpp", 73 "${ipc_path}/src/register_d_input_call_back_proxy.cpp", 74 "${ipc_path}/src/register_d_input_call_back_stub.cpp", 75 "${ipc_path}/src/start_d_input_call_back_proxy.cpp", 76 "${ipc_path}/src/start_d_input_call_back_stub.cpp", 77 "${ipc_path}/src/stop_d_input_call_back_proxy.cpp", 78 "${ipc_path}/src/stop_d_input_call_back_stub.cpp", 79 "${ipc_path}/src/unprepare_d_input_call_back_proxy.cpp", 80 "${ipc_path}/src/unprepare_d_input_call_back_stub.cpp", 81 "${ipc_path}/src/unregister_d_input_call_back_proxy.cpp", 82 "${ipc_path}/src/unregister_d_input_call_back_stub.cpp", 83 "${services_source_path}/inputinject/src/distributed_input_inject.cpp", 84 "${services_source_path}/inputinject/src/distributed_input_node_manager.cpp", 85 "${services_source_path}/inputinject/src/virtual_device.cpp", 86 "${services_source_path}/sourcemanager/src/dinput_source_listener.cpp", 87 "${services_source_path}/sourcemanager/src/dinput_source_manager_event_handler.cpp", 88 "${services_source_path}/sourcemanager/src/distributed_input_source_event_handler.cpp", 89 "${services_source_path}/sourcemanager/src/distributed_input_source_manager.cpp", 90 "${services_source_path}/sourcemanager/src/distributed_input_source_sa_cli_mgr.cpp", 91 "${services_source_path}/transport/src/distributed_input_source_transport.cpp", 92 "distributedinputstub_fuzzer.cpp", 93 ] 94 95 deps = [ 96 "${dfx_utils_path}:libdinput_dfx_utils", 97 "${distributedinput_path}/services/state:libdinput_sink_state", 98 "${innerkits_path}:libdinput_sdk", 99 "${services_source_path}/transport:libdinput_source_trans", 100 "${utils_path}:libdinput_utils", 101 ] 102 103 external_deps = [ 104 "access_token:libaccesstoken_sdk", 105 "access_token:libnativetoken", 106 "access_token:libtoken_setproc", 107 "access_token:libtokenid_sdk", 108 "c_utils:utils", 109 "device_manager:devicemanagersdk", 110 "distributed_hardware_fwk:distributed_av_sender", 111 "distributed_hardware_fwk:distributedhardwareutils", 112 "distributed_hardware_fwk:libdhfwk_sdk", 113 "dsoftbus:softbus_client", 114 "eventhandler:libeventhandler", 115 "hicollie:libhicollie", 116 "hilog:libhilog", 117 "hisysevent:libhisysevent", 118 "hitrace:hitrace_meter", 119 "ipc:ipc_core", 120 "json:nlohmann_json_static", 121 "libevdev:libevdev", 122 "openssl:libcrypto_shared", 123 "os_account:libaccountkits", 124 "os_account:os_account_innerkits", 125 "safwk:system_ability_fwk", 126 "samgr:samgr_proxy", 127 ] 128 129 defines = [ 130 "HI_LOG_ENABLE", 131 "DH_LOG_TAG=\"DistributedInputStubFuzzTest\"", 132 "LOG_DOMAIN=0xD004120", 133 ] 134} 135 136############################################################################### 137group("fuzztest") { 138 testonly = true 139 140 deps = [ ":DistributedInputStubFuzzTest" ] 141} 142############################################################################### 143