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 14import("//build/ohos.gni") 15 16if (!defined(global_parts_info) || 17 defined(global_parts_info.account_os_account)) { 18 has_os_account_part = true 19} else { 20 has_os_account_part = false 21} 22 23ohos_source_set("attributes_fuzzer") { 24 branch_protector_ret = "pac_ret" 25 include_dirs = [ "../../../interfaces/inner_api" ] 26 27 sources = 28 [ "../../../frameworks/native/common/attributes/src/attributes.cpp" ] 29 30 configs = [ "../../../common:iam_log_config" ] 31 32 public_configs = [ "../../../frameworks/native/common:attributes_config" ] 33 34 external_deps = [ 35 "c_utils:utils", 36 "hilog:libhilog", 37 ] 38 39 subsystem_name = "useriam" 40 part_name = "user_auth_framework" 41} 42 43ohos_source_set("dfx_fuzzer") { 44 branch_protector_ret = "pac_ret" 45 include_dirs = [ "../../../frameworks/native/common/dfx/inc" ] 46 47 sources = [ 48 "../../../frameworks/native/common/dfx/src/hisysevent_adapter.cpp", 49 "../../../frameworks/native/common/dfx/src/iam_hitrace_helper.cpp", 50 ] 51 52 configs = [ 53 "../../../common:iam_log_config", 54 "../../../common:iam_utils_config", 55 ] 56 57 public_configs = [ "../../../frameworks/native/common:dfx_config" ] 58 59 external_deps = [ 60 "c_utils:utils", 61 "hilog:libhilog", 62 "hisysevent:libhisysevent", 63 "hitrace:hitrace_meter", 64 ] 65 66 subsystem_name = "useriam" 67 part_name = "user_auth_framework" 68} 69 70ohos_source_set("userauth_client_ipc_fuzzer") { 71 branch_protector_ret = "pac_ret" 72 include_dirs = [ 73 "../../../frameworks/native/ipc/inc", 74 "../../../frameworks/native/ipc/common_defines", 75 "../../../interfaces/inner_api", 76 ] 77 78 sources = [ 79 "../../../frameworks/native/ipc/src/co_auth_proxy.cpp", 80 "../../../frameworks/native/ipc/src/executor_callback_stub.cpp", 81 "../../../frameworks/native/ipc/src/executor_messenger_proxy.cpp", 82 "../../../frameworks/native/ipc/src/user_auth_callback_stub.cpp", 83 "../../../frameworks/native/ipc/src/user_auth_proxy.cpp", 84 "../../../frameworks/native/ipc/src/user_idm_callback_stub.cpp", 85 "../../../frameworks/native/ipc/src/user_idm_proxy.cpp", 86 "../../../frameworks/native/ipc/src/widget_callback_stub.cpp", 87 ] 88 89 configs = [ 90 "../../../common:iam_log_config", 91 "../../../common:iam_utils_config", 92 ] 93 94 public_configs = 95 [ "../../../frameworks/native/ipc:userauth_client_ipc_config" ] 96 remove_configs = [ "//build/config/compiler:no_exceptions" ] 97 98 external_deps = [ 99 "c_utils:utils", 100 "hilog:libhilog", 101 "ipc:ipc_single", 102 ] 103 104 subsystem_name = "useriam" 105 part_name = "user_auth_framework" 106} 107 108ohos_source_set("userauth_service_base_fuzzer") { 109 branch_protector_ret = "pac_ret" 110 include_dirs = [ "../../../services/base/inc" ] 111 112 remove_configs = [ "//build/config/compiler:no_exceptions" ] 113 114 sources = [ 115 "../../../services/base/src/finite_state_machine_builder.cpp", 116 "../../../services/base/src/finite_state_machine_impl.cpp", 117 "../../../services/base/src/hdi_wrapper.cpp", 118 "../../../services/base/src/relative_timer.cpp", 119 "../../../services/base/src/thread_handler_impl.cpp", 120 ] 121 122 external_deps = [ 123 "c_utils:utils", 124 "drivers_interface_user_auth:libuser_auth_proxy_1.2", 125 "hilog:libhilog", 126 "init:libbegetutil", 127 "ipc:ipc_core", 128 "safwk:system_ability_fwk", 129 ] 130 131 public_configs = [ "../../../services/base:userauth_service_base_config" ] 132 133 configs = [ 134 "../../../common:iam_log_config", 135 "../../../common:iam_utils_config", 136 ] 137 138 subsystem_name = "useriam" 139 part_name = "user_auth_framework" 140} 141 142ohos_source_set("userauth_service_core_fuzzer") { 143 branch_protector_ret = "pac_ret" 144 include_dirs = [ 145 "../../../services/core/inc", 146 "../../../services/core/src", 147 ] 148 149 remove_configs = [ "//build/config/compiler:no_exceptions" ] 150 151 sources = [ 152 "../../../services/core/src/auth_widget_helper.cpp", 153 "../../../services/core/src/authentication_impl.cpp", 154 "../../../services/core/src/credential_info_impl.cpp", 155 "../../../services/core/src/enrolled_info_impl.cpp", 156 "../../../services/core/src/enrollment_impl.cpp", 157 "../../../services/core/src/identification_impl.cpp", 158 "../../../services/core/src/resource_node_impl.cpp", 159 "../../../services/core/src/resource_node_pool_impl.cpp", 160 "../../../services/core/src/resource_node_utils.cpp", 161 "../../../services/core/src/schedule_node_builder.cpp", 162 "../../../services/core/src/schedule_node_helper.cpp", 163 "../../../services/core/src/schedule_node_impl.cpp", 164 "../../../services/core/src/secure_user_info_impl.cpp", 165 "../../../services/core/src/system_param_manager.cpp", 166 "../../../services/core/src/template_cache_manager.cpp", 167 "../../../services/core/src/user_idm_database_impl.cpp", 168 "../../../services/core/src/user_idm_session_controller_impl.cpp", 169 "../../../services/core/src/user_info_impl.cpp", 170 "../../../services/core/src/widget_schedule_node_impl.cpp", 171 ] 172 173 deps = [ 174 "../common_fuzzer:attributes_fuzzer", 175 "../common_fuzzer:dfx_fuzzer", 176 "../common_fuzzer:userauth_service_base_fuzzer", 177 ] 178 179 external_deps = [ 180 "c_utils:utils", 181 "drivers_interface_user_auth:libuser_auth_proxy_1.2", 182 "hilog:libhilog", 183 "hitrace:hitrace_meter", 184 "init:libbeget_proxy", 185 "init:libbegetutil", 186 "ipc:ipc_core", 187 "safwk:system_ability_fwk", 188 "samgr:samgr_proxy", 189 ] 190 191 if (has_os_account_part) { 192 cflags_cc = [ "-DHAS_OS_ACCOUNT_PART" ] 193 external_deps += [ "os_account:os_account_innerkits" ] 194 } 195 196 public_configs = [ "../../../services/core:userauth_service_core_config" ] 197 198 configs = [ 199 "../../../common:iam_log_config", 200 "../../../common:iam_utils_config", 201 "../../../frameworks/native/ipc:userauth_client_ipc_config", 202 ] 203 204 subsystem_name = "useriam" 205 part_name = "user_auth_framework" 206} 207 208ohos_source_set("userauth_service_context_fuzzer") { 209 branch_protector_ret = "pac_ret" 210 include_dirs = [ 211 "inc", 212 "../../../frameworks/js/napi/user_auth/inc", 213 ] 214 215 remove_configs = [ "//build/config/compiler:no_exceptions" ] 216 217 sources = [ 218 "../../../services/context/src/base_context.cpp", 219 "../../../services/context/src/context_callback_impl.cpp", 220 "../../../services/context/src/context_factory.cpp", 221 "../../../services/context/src/context_helper.cpp", 222 "../../../services/context/src/context_pool_impl.cpp", 223 "../../../services/context/src/enroll_context.cpp", 224 "../../../services/context/src/identify_context.cpp", 225 "../../../services/context/src/simple_auth_context.cpp", 226 "../../../services/context/src/trace.cpp", 227 "../../../services/context/src/ui_extension_ability_connection.cpp", 228 "../../../services/context/src/widget_client.cpp", 229 "../../../services/context/src/widget_context.cpp", 230 "../../../services/context/src/widget_context_callback_impl.cpp", 231 "../../../services/context/src/widget_json.cpp", 232 ] 233 234 deps = [ 235 "../common_fuzzer:attributes_fuzzer", 236 "../common_fuzzer:dfx_fuzzer", 237 "../common_fuzzer:userauth_service_core_fuzzer", 238 "//third_party/openssl:libcrypto_shared", 239 ] 240 241 external_deps = [ 242 "ability_base:base", 243 "ability_base:want", 244 "ability_base:zuri", 245 "ability_runtime:ability_context_native", 246 "ability_runtime:abilitykit_native", 247 "ability_runtime:extension_manager", 248 "c_utils:utils", 249 "hilog:libhilog", 250 "hitrace:hitrace_meter", 251 "init:libbegetutil", 252 "napi:ace_napi", 253 ] 254 255 public_configs = 256 [ "../../../services/context:userauth_service_context_config" ] 257 258 configs = [ 259 "../../../services/base:userauth_service_base_config", 260 "../../../common:iam_log_config", 261 "../../../common:iam_utils_config", 262 "../../../frameworks/native/ipc:userauth_client_ipc_config", 263 ] 264 265 subsystem_name = "useriam" 266 part_name = "user_auth_framework" 267} 268 269ohos_source_set("userauth_service_ipc_fuzzer") { 270 branch_protector_ret = "pac_ret" 271 include_dirs = [ 272 "../../../frameworks/native/ipc/inc", 273 "../../../frameworks/native/ipc/common_defines", 274 "../../../interfaces/inner_api", 275 ] 276 277 sources = [ 278 "../../../frameworks/native/ipc/src/co_auth_stub.cpp", 279 "../../../frameworks/native/ipc/src/executor_callback_proxy.cpp", 280 "../../../frameworks/native/ipc/src/executor_messenger_stub.cpp", 281 "../../../frameworks/native/ipc/src/user_auth_callback_proxy.cpp", 282 "../../../frameworks/native/ipc/src/user_auth_stub.cpp", 283 "../../../frameworks/native/ipc/src/user_idm_callback_proxy.cpp", 284 "../../../frameworks/native/ipc/src/user_idm_stub.cpp", 285 "../../../frameworks/native/ipc/src/widget_callback_proxy.cpp", 286 ] 287 288 configs = [ 289 "../../../common:iam_log_config", 290 "../../../common:iam_utils_config", 291 ] 292 293 public_configs = 294 [ "../../../frameworks/native/ipc:userauth_client_ipc_config" ] 295 remove_configs = [ "//build/config/compiler:no_exceptions" ] 296 297 external_deps = [ 298 "c_utils:utils", 299 "hilog:libhilog", 300 "ipc:ipc_single", 301 ] 302 303 subsystem_name = "useriam" 304 part_name = "user_auth_framework" 305} 306 307ohos_source_set("userauth_services_ipc_fuzzer") { 308 branch_protector_ret = "pac_ret" 309 include_dirs = [ 310 "../../../services/ipc/inc", 311 "../../../frameworks/js/napi/user_auth/inc", 312 ] 313 314 remove_configs = [ "//build/config/compiler:no_exceptions" ] 315 316 sources = [ 317 "../../../services/ipc/src/co_auth_service.cpp", 318 "../../../services/ipc/src/executor_messenger_service.cpp", 319 "../../../services/ipc/src/ipc_common.cpp", 320 "../../../services/ipc/src/publish_event_adapter_mock.cpp", 321 "../../../services/ipc/src/user_auth_service.cpp", 322 "../../../services/ipc/src/user_idm_service.cpp", 323 ] 324 325 deps = [ 326 "../common_fuzzer:attributes_fuzzer", 327 "../common_fuzzer:dfx_fuzzer", 328 "../common_fuzzer:iam_utils_fuzzer", 329 "../common_fuzzer:userauth_service_context_fuzzer", 330 "../common_fuzzer:userauth_service_ipc_fuzzer", 331 ] 332 333 external_deps = [ 334 "ability_runtime:app_manager", 335 "access_token:libaccesstoken_sdk", 336 "access_token:libtokenid_sdk", 337 "c_utils:utils", 338 "drivers_interface_user_auth:libuser_auth_proxy_1.2", 339 "hilog:libhilog", 340 "hitrace:hitrace_meter", 341 "init:libbegetutil", 342 "ipc:ipc_single", 343 "napi:ace_napi", 344 "safwk:system_ability_fwk", 345 "samgr:samgr_proxy", 346 ] 347 348 if (has_os_account_part) { 349 cflags_cc = [ "-DHAS_OS_ACCOUNT_PART" ] 350 external_deps += [ "os_account:os_account_innerkits" ] 351 } 352 353 configs = [ 354 "../../../services/base:userauth_service_base_config", 355 "../../../common:iam_log_config", 356 "../../../services/core:userauth_service_core_config", 357 ] 358 359 subsystem_name = "useriam" 360 part_name = "user_auth_framework" 361} 362 363ohos_source_set("iam_thread_pool_fuzzer") { 364 branch_protector_ret = "pac_ret" 365 include_dirs = [ 366 "thread_pool", 367 "../../../common/logs", 368 ] 369 370 sources = [ "thread_pool/thread_groups.cpp" ] 371 372 external_deps = [ 373 "c_utils:utils", 374 "hilog:libhilog", 375 ] 376 377 public_configs = [ "../../../common:iam_thread_pool_config" ] 378 379 subsystem_name = "useriam" 380 part_name = "user_auth_framework" 381} 382 383ohos_source_set("iam_utils_fuzzer") { 384 branch_protector_ret = "pac_ret" 385 include_dirs = [ 386 "../../../common/utils", 387 "../../../common/logs", 388 ] 389 390 sources = [ 391 "../../../common/utils/iam_mem.cpp", 392 "../../../common/utils/iam_time.cpp", 393 ] 394 395 external_deps = [ 396 "c_utils:utils", 397 "hilog:libhilog", 398 ] 399 400 public_configs = [ 401 "../../../common:iam_utils_config", 402 "../../../common:iam_log_config", 403 ] 404 405 subsystem_name = "useriam" 406 part_name = "user_auth_framework" 407} 408 409ohos_source_set("iam_test_fuzzer") { 410 testonly = true 411 include_dirs = [ "../../../common/logs" ] 412 413 external_deps = [ 414 "c_utils:utils", 415 "hilog:libhilog", 416 ] 417 418 public_configs = [ "../../../common:iam_test_config" ] 419 420 sources = [ "../../../common/test/iam_fuzz_test.cpp" ] 421 422 subsystem_name = "useriam" 423 part_name = "user_auth_framework" 424} 425