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