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