1# Copyright (c) 2023-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 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 "hicollie:libhicollie", 37 "hilog:libhilog", 38 ] 39 40 subsystem_name = "useriam" 41 part_name = "user_auth_framework" 42} 43 44ohos_source_set("dfx_fuzzer") { 45 branch_protector_ret = "pac_ret" 46 include_dirs = [ "../../../frameworks/native/common/dfx/inc" ] 47 48 sources = [ 49 "../../../frameworks/native/common/dfx/src/hisysevent_adapter.cpp", 50 "../../../frameworks/native/common/dfx/src/iam_hitrace_helper.cpp", 51 ] 52 53 configs = [ 54 "../../../common:iam_log_config", 55 "../../../common:iam_utils_config", 56 ] 57 58 public_configs = [ "../../../frameworks/native/common:dfx_config" ] 59 60 external_deps = [ 61 "c_utils:utils", 62 "hicollie:libhicollie", 63 "hilog:libhilog", 64 "hisysevent:libhisysevent", 65 "hitrace:hitrace_meter", 66 ] 67 68 subsystem_name = "useriam" 69 part_name = "user_auth_framework" 70} 71 72ohos_source_set("userauth_client_ipc_fuzzer") { 73 branch_protector_ret = "pac_ret" 74 include_dirs = [ 75 "../../../frameworks/native/ipc/inc", 76 "../../../frameworks/native/ipc/common_defines", 77 "../../../interfaces/inner_api", 78 ] 79 80 sources = [ 81 "../../../frameworks/native/ipc/src/co_auth_proxy.cpp", 82 "../../../frameworks/native/ipc/src/executor_callback_stub.cpp", 83 "../../../frameworks/native/ipc/src/executor_messenger_proxy.cpp", 84 "../../../frameworks/native/ipc/src/user_auth_callback_stub.cpp", 85 "../../../frameworks/native/ipc/src/user_auth_event_listener_stub.cpp", 86 "../../../frameworks/native/ipc/src/user_auth_proxy.cpp", 87 "../../../frameworks/native/ipc/src/user_idm_callback_stub.cpp", 88 "../../../frameworks/native/ipc/src/user_idm_proxy.cpp", 89 "../../../frameworks/native/ipc/src/widget_callback_stub.cpp", 90 ] 91 92 configs = [ 93 "../../../common:iam_log_config", 94 "../../../common:iam_utils_config", 95 ] 96 97 public_configs = 98 [ "../../../frameworks/native/ipc:userauth_client_ipc_config" ] 99 remove_configs = [ "//build/config/compiler:no_exceptions" ] 100 101 external_deps = [ 102 "c_utils:utils", 103 "hicollie:libhicollie", 104 "hilog:libhilog", 105 "ipc:ipc_single", 106 ] 107 108 subsystem_name = "useriam" 109 part_name = "user_auth_framework" 110} 111 112ohos_source_set("userauth_service_base_fuzzer") { 113 branch_protector_ret = "pac_ret" 114 include_dirs = [ "../../../services/base/inc" ] 115 116 remove_configs = [ "//build/config/compiler:no_exceptions" ] 117 118 sources = [ 119 "../../../services/base/src/finite_state_machine_builder.cpp", 120 "../../../services/base/src/finite_state_machine_impl.cpp", 121 "../../../services/base/src/relative_timer.cpp", 122 "../../../services/base/src/system_ability_listener.cpp", 123 "../../../services/base/src/thread_handler_impl.cpp", 124 "../../../services/base/src/thread_handler_manager.cpp", 125 "../../../services/base/src/thread_handler_singleton_impl.cpp", 126 "../dummy/mock_iuser_auth_interface.cpp", 127 ] 128 129 external_deps = [ 130 "c_utils:utils", 131 "drivers_interface_user_auth:libuser_auth_proxy_3.0", 132 "hicollie:libhicollie", 133 "hilog:libhilog", 134 "init:libbegetutil", 135 "ipc:ipc_core", 136 "safwk:system_ability_fwk", 137 ] 138 139 public_configs = [ "../../../services/base:userauth_service_base_config" ] 140 141 configs = [ 142 "../../../common:iam_log_config", 143 "../../../common:iam_utils_config", 144 ] 145 146 subsystem_name = "useriam" 147 part_name = "user_auth_framework" 148} 149 150ohos_source_set("userauth_service_core_fuzzer") { 151 branch_protector_ret = "pac_ret" 152 include_dirs = [ 153 "../../../services/core/inc", 154 "../../../services/core/src", 155 ] 156 157 remove_configs = [ "//build/config/compiler:no_exceptions" ] 158 159 sources = [ 160 "../../../services/core/src/auth_event_listener_manager.cpp", 161 "../../../services/core/src/authentication_impl.cpp", 162 "../../../services/core/src/credential_info_impl.cpp", 163 "../../../services/core/src/enrolled_info_impl.cpp", 164 "../../../services/core/src/enrollment_impl.cpp", 165 "../../../services/core/src/identification_impl.cpp", 166 "../../../services/core/src/publish_event_adapter_mock.cpp", 167 "../../../services/core/src/remote_executor_proxy.cpp", 168 "../../../services/core/src/remote_msg_util.cpp", 169 "../../../services/core/src/resource_node_impl.cpp", 170 "../../../services/core/src/resource_node_pool_impl.cpp", 171 "../../../services/core/src/resource_node_utils.cpp", 172 "../../../services/core/src/schedule_node_builder.cpp", 173 "../../../services/core/src/schedule_node_helper.cpp", 174 "../../../services/core/src/schedule_node_impl.cpp", 175 "../../../services/core/src/schedule_resource_node_listener.cpp", 176 "../../../services/core/src/secure_user_info_impl.cpp", 177 "../../../services/core/src/system_param_manager.cpp", 178 "../../../services/core/src/update_pin_param_impl.cpp", 179 "../../../services/core/src/user_idm_database_impl.cpp", 180 "../../../services/core/src/user_idm_session_controller_impl.cpp", 181 "../../../services/core/src/user_info_impl.cpp", 182 "../../../services/core/src/widget_schedule_node_impl.cpp", 183 ] 184 185 deps = [ 186 "../../../frameworks/native/client:userauth_client", 187 "../common_fuzzer:attributes_fuzzer", 188 "../common_fuzzer:dfx_fuzzer", 189 "../common_fuzzer:userauth_service_base_fuzzer", 190 ] 191 192 external_deps = [ 193 "ability_base:base", 194 "ability_base:want", 195 "ability_base:zuri", 196 "ability_runtime:ability_context_native", 197 "ability_runtime:abilitykit_native", 198 "ability_runtime:app_manager", 199 "ability_runtime:extension_manager", 200 "access_token:libaccesstoken_sdk", 201 "access_token:libtokenid_sdk", 202 "c_utils:utils", 203 "device_manager:devicemanagersdk", 204 "drivers_interface_user_auth:libuser_auth_proxy_3.0", 205 "hicollie:libhicollie", 206 "hilog:libhilog", 207 "hitrace:hitrace_meter", 208 "init:libbeget_proxy", 209 "init:libbegetutil", 210 "ipc:ipc_core", 211 "safwk:system_ability_fwk", 212 "samgr:samgr_proxy", 213 ] 214 215 if (has_os_account_part) { 216 cflags_cc = [ "-DHAS_OS_ACCOUNT_PART" ] 217 external_deps += [ "os_account:os_account_innerkits" ] 218 } 219 220 public_configs = [ "../../../services/core:userauth_service_core_config" ] 221 222 configs = [ 223 "../../../common:iam_log_config", 224 "../../../common:iam_utils_config", 225 "../../../frameworks/native/ipc:userauth_client_ipc_config", 226 "../../../services/remote_connect:userauth_service_remote_connect_config", 227 ] 228 229 subsystem_name = "useriam" 230 part_name = "user_auth_framework" 231} 232 233ohos_source_set("userauth_service_context_fuzzer") { 234 branch_protector_ret = "pac_ret" 235 include_dirs = [ 236 "inc", 237 "../../../frameworks/js/napi/user_auth/inc", 238 ] 239 240 remove_configs = [ "//build/config/compiler:no_exceptions" ] 241 242 sources = [ 243 "../../../services/context/src/auth_widget_helper.cpp", 244 "../../../services/context/src/base_context.cpp", 245 "../../../services/context/src/context_appstate_observer.cpp", 246 "../../../services/context/src/context_callback_impl.cpp", 247 "../../../services/context/src/context_death_recipient.cpp", 248 "../../../services/context/src/context_factory.cpp", 249 "../../../services/context/src/context_helper.cpp", 250 "../../../services/context/src/context_pool_impl.cpp", 251 "../../../services/context/src/enroll_context.cpp", 252 "../../../services/context/src/identify_context.cpp", 253 "../../../services/context/src/keyguard_status_listener.cpp", 254 "../../../services/context/src/remote_auth_context.cpp", 255 "../../../services/context/src/remote_auth_invoker_context.cpp", 256 "../../../services/context/src/remote_auth_service.cpp", 257 "../../../services/context/src/remote_executor_stub.cpp", 258 "../../../services/context/src/remote_iam_callback.cpp", 259 "../../../services/context/src/schedule_holder_context.cpp", 260 "../../../services/context/src/simple_auth_context.cpp", 261 "../../../services/context/src/trace.cpp", 262 "../../../services/context/src/ui_extension_ability_connection.cpp", 263 "../../../services/context/src/widget_client.cpp", 264 "../../../services/context/src/widget_context.cpp", 265 "../../../services/context/src/widget_context_callback_impl.cpp", 266 "../../../services/context/src/widget_json.cpp", 267 ] 268 269 deps = [ 270 "../common_fuzzer:attributes_fuzzer", 271 "../common_fuzzer:dfx_fuzzer", 272 "../common_fuzzer:userauth_service_core_fuzzer", 273 ] 274 275 external_deps = [ 276 "ability_base:base", 277 "ability_base:want", 278 "ability_base:zuri", 279 "ability_runtime:ability_context_native", 280 "ability_runtime:abilitykit_native", 281 "ability_runtime:app_manager", 282 "ability_runtime:extension_manager", 283 "access_token:libaccesstoken_sdk", 284 "c_utils:utils", 285 "common_event_service:cesfwk_innerkits", 286 "drivers_interface_user_auth:libuser_auth_proxy_3.0", 287 "hicollie:libhicollie", 288 "hilog:libhilog", 289 "hitrace:hitrace_meter", 290 "init:libbegetutil", 291 "napi:ace_napi", 292 ] 293 294 public_configs = 295 [ "../../../services/context:userauth_service_context_config" ] 296 297 configs = [ 298 "../../../services/base:userauth_service_base_config", 299 "../../../common:iam_log_config", 300 "../../../common:iam_utils_config", 301 "../../../frameworks/native/ipc:userauth_client_ipc_config", 302 "../../../services/remote_connect:userauth_service_remote_connect_config", 303 ] 304 305 subsystem_name = "useriam" 306 part_name = "user_auth_framework" 307} 308 309ohos_source_set("userauth_service_ipc_fuzzer") { 310 branch_protector_ret = "pac_ret" 311 include_dirs = [ 312 "../../../frameworks/native/ipc/inc", 313 "../../../frameworks/native/ipc/common_defines", 314 "../../../interfaces/inner_api", 315 ] 316 317 sources = [ 318 "../../../frameworks/native/ipc/src/co_auth_stub.cpp", 319 "../../../frameworks/native/ipc/src/executor_callback_proxy.cpp", 320 "../../../frameworks/native/ipc/src/executor_messenger_stub.cpp", 321 "../../../frameworks/native/ipc/src/user_auth_callback_proxy.cpp", 322 "../../../frameworks/native/ipc/src/user_auth_event_listener_proxy.cpp", 323 "../../../frameworks/native/ipc/src/user_auth_stub.cpp", 324 "../../../frameworks/native/ipc/src/user_idm_callback_proxy.cpp", 325 "../../../frameworks/native/ipc/src/user_idm_stub.cpp", 326 "../../../frameworks/native/ipc/src/widget_callback_proxy.cpp", 327 ] 328 329 configs = [ 330 "../../../common:iam_log_config", 331 "../../../common:iam_utils_config", 332 ] 333 334 public_configs = 335 [ "../../../frameworks/native/ipc:userauth_client_ipc_config" ] 336 remove_configs = [ "//build/config/compiler:no_exceptions" ] 337 338 external_deps = [ 339 "c_utils:utils", 340 "hicollie:libhicollie", 341 "hilog:libhilog", 342 "ipc:ipc_single", 343 ] 344 345 subsystem_name = "useriam" 346 part_name = "user_auth_framework" 347} 348 349ohos_source_set("userauth_service_remote_connect_fuzzer") { 350 include_dirs = [ "inc" ] 351 352 remove_configs = [ "//build/config/compiler:no_exceptions" ] 353 354 sources = [ 355 "../../../services/remote_connect/src/device_manager_util.cpp", 356 "../../../services/remote_connect/src/remote_connect_listener.cpp", 357 "../../../services/remote_connect/src/remote_connect_listener_manager.cpp", 358 "../../../services/remote_connect/src/remote_connect_manager.cpp", 359 "../../../services/remote_connect/src/socket_factory.cpp", 360 "../../../services/remote_connect/src/soft_bus_base_socket.cpp", 361 "../../../services/remote_connect/src/soft_bus_client_socket.cpp", 362 "../../../services/remote_connect/src/soft_bus_manager.cpp", 363 "../../../services/remote_connect/src/soft_bus_message.cpp", 364 "../../../services/remote_connect/src/soft_bus_server_socket.cpp", 365 "../../../services/remote_connect/src/soft_bus_socket_listener.cpp", 366 ] 367 368 deps = [ "../common_fuzzer:attributes_fuzzer" ] 369 370 external_deps = [ 371 "access_token:libtoken_setproc", 372 "c_utils:utils", 373 "device_manager:devicemanagersdk", 374 "dsoftbus:softbus_client", 375 "hicollie:libhicollie", 376 "hilog:libhilog", 377 "init:libbegetutil", 378 "safwk:system_ability_fwk", 379 "samgr:samgr_proxy", 380 ] 381 382 public_configs = [ 383 "../../../services/remote_connect:userauth_service_remote_connect_config", 384 ] 385 386 configs = [ 387 "../../../services/base:userauth_service_base_config", 388 "../../../common:iam_utils_config", 389 "../../../common:iam_log_config", 390 ] 391 392 subsystem_name = "useriam" 393 part_name = "user_auth_framework" 394} 395 396ohos_source_set("userauth_services_ipc_fuzzer") { 397 branch_protector_ret = "pac_ret" 398 include_dirs = [ 399 "../../../services/ipc/inc", 400 "../../../frameworks/js/napi/user_auth/inc", 401 ] 402 403 remove_configs = [ "//build/config/compiler:no_exceptions" ] 404 405 sources = [ 406 "../../../services/ipc/src/co_auth_service.cpp", 407 "../../../services/ipc/src/executor_messenger_service.cpp", 408 "../../../services/ipc/src/hdi_message_callback_service.cpp", 409 "../../../services/ipc/src/template_cache_manager.cpp", 410 "../../../services/ipc/src/user_auth_service.cpp", 411 "../../../services/ipc/src/user_idm_service.cpp", 412 "../dummy/mock_ipc_common.cpp", 413 ] 414 415 deps = [ 416 "../common_fuzzer:attributes_fuzzer", 417 "../common_fuzzer:dfx_fuzzer", 418 "../common_fuzzer:iam_utils_fuzzer", 419 "../common_fuzzer:userauth_service_context_fuzzer", 420 "../common_fuzzer:userauth_service_ipc_fuzzer", 421 "../common_fuzzer:userauth_service_remote_connect_fuzzer", 422 ] 423 424 external_deps = [ 425 "ability_runtime:app_manager", 426 "access_token:libaccesstoken_sdk", 427 "c_utils:utils", 428 "device_manager:devicemanagersdk", 429 "drivers_interface_user_auth:libuser_auth_proxy_3.0", 430 "hicollie:libhicollie", 431 "hilog:libhilog", 432 "hitrace:hitrace_meter", 433 "init:libbegetutil", 434 "ipc:ipc_single", 435 "napi:ace_napi", 436 "safwk:system_ability_fwk", 437 "samgr:samgr_proxy", 438 ] 439 440 if (has_os_account_part) { 441 cflags_cc = [ "-DHAS_OS_ACCOUNT_PART" ] 442 external_deps += [ "os_account:os_account_innerkits" ] 443 } 444 445 configs = [ 446 "../../../services/base:userauth_service_base_config", 447 "../../../common:iam_log_config", 448 "../../../services/core:userauth_service_core_config", 449 "../../../services/remote_connect:userauth_service_remote_connect_config", 450 ] 451 452 subsystem_name = "useriam" 453 part_name = "user_auth_framework" 454} 455 456ohos_source_set("iam_thread_pool_fuzzer") { 457 branch_protector_ret = "pac_ret" 458 include_dirs = [ 459 "thread_pool", 460 "../../../common/logs", 461 ] 462 463 sources = [ "thread_pool/thread_groups.cpp" ] 464 465 external_deps = [ 466 "c_utils:utils", 467 "hicollie:libhicollie", 468 "hilog:libhilog", 469 ] 470 471 public_configs = [ "../../../common:iam_thread_pool_config" ] 472 473 subsystem_name = "useriam" 474 part_name = "user_auth_framework" 475} 476 477ohos_source_set("iam_utils_fuzzer") { 478 branch_protector_ret = "pac_ret" 479 include_dirs = [ 480 "../../../common/utils", 481 "../../../common/logs", 482 ] 483 484 sources = [ 485 "../../../common/utils/iam_mem.cpp", 486 "../../../common/utils/iam_time.cpp", 487 "../../../common/utils/xcollie_helper.cpp", 488 ] 489 490 external_deps = [ 491 "c_utils:utils", 492 "hicollie:libhicollie", 493 "hilog:libhilog", 494 ] 495 496 public_configs = [ 497 "../../../common:iam_utils_config", 498 "../../../common:iam_log_config", 499 ] 500 501 subsystem_name = "useriam" 502 part_name = "user_auth_framework" 503} 504 505ohos_source_set("iam_test_fuzzer") { 506 testonly = true 507 include_dirs = [ "../../../common/logs" ] 508 509 external_deps = [ 510 "c_utils:utils", 511 "hicollie:libhicollie", 512 "hilog:libhilog", 513 ] 514 515 public_configs = [ "../../../common:iam_test_config" ] 516 517 sources = [ "../../../common/test/iam_fuzz_test.cpp" ] 518 519 subsystem_name = "useriam" 520 part_name = "user_auth_framework" 521} 522