12ee81decSopenharmony_ci# Copyright (c) 2022 Huawei Device Co., Ltd.
22ee81decSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
32ee81decSopenharmony_ci# you may not use this file except in compliance with the License.
42ee81decSopenharmony_ci# You may obtain a copy of the License at
52ee81decSopenharmony_ci#
62ee81decSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
72ee81decSopenharmony_ci#
82ee81decSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
92ee81decSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
102ee81decSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
112ee81decSopenharmony_ci# See the License for the specific language governing permissions and
122ee81decSopenharmony_ci# limitations under the License.
132ee81decSopenharmony_ci
142ee81decSopenharmony_ciimport("//base/security/device_security_level/common/dslm.gni")
152ee81decSopenharmony_ciimport("//build/ohos.gni")
162ee81decSopenharmony_ci
172ee81decSopenharmony_cideclare_args() {
182ee81decSopenharmony_ci  device_security_level_feature_secondary_session_name = ""
192ee81decSopenharmony_ci}
202ee81decSopenharmony_ci
212ee81decSopenharmony_ci# service_msg object
222ee81decSopenharmony_ciohos_source_set("service_msg_obj") {
232ee81decSopenharmony_ci  sources = [ "dslm_messenger_wrapper.c" ]
242ee81decSopenharmony_ci
252ee81decSopenharmony_ci  include_dirs = [
262ee81decSopenharmony_ci    "../../interfaces/inner_api/include",
272ee81decSopenharmony_ci    "../include",
282ee81decSopenharmony_ci  ]
292ee81decSopenharmony_ci
302ee81decSopenharmony_ci  deps = [
312ee81decSopenharmony_ci    "../../baselib/msglib:messenger_static",
322ee81decSopenharmony_ci    "../../baselib/utils:utils_static",
332ee81decSopenharmony_ci  ]
342ee81decSopenharmony_ci
352ee81decSopenharmony_ci  if (defined(ohos_lite)) {
362ee81decSopenharmony_ci    if (ohos_kernel_type == "linux" || ohos_kernel_type == "liteos_a") {
372ee81decSopenharmony_ci      deps += [ "$dslm_hilog_path/featured:hilog_shared" ]
382ee81decSopenharmony_ci    } else if (ohos_kernel_type == "liteos_m") {
392ee81decSopenharmony_ci      deps += [ "$dslm_hilog_path/featured:hilog_static" ]
402ee81decSopenharmony_ci    }
412ee81decSopenharmony_ci  } else {
422ee81decSopenharmony_ci    sanitize = {
432ee81decSopenharmony_ci      integer_overflow = true
442ee81decSopenharmony_ci      ubsan = true
452ee81decSopenharmony_ci      boundary_sanitize = true
462ee81decSopenharmony_ci      cfi = true
472ee81decSopenharmony_ci      cfi_cross_dso = true
482ee81decSopenharmony_ci      blocklist = "../../cfi_blocklist.txt"
492ee81decSopenharmony_ci    }
502ee81decSopenharmony_ci    branch_protector_ret = "pac_ret"
512ee81decSopenharmony_ci
522ee81decSopenharmony_ci    external_deps = [
532ee81decSopenharmony_ci      "c_utils:utils",
542ee81decSopenharmony_ci      "hilog:libhilog",
552ee81decSopenharmony_ci    ]
562ee81decSopenharmony_ci  }
572ee81decSopenharmony_ci
582ee81decSopenharmony_ci  if (device_security_level_feature_secondary_session_name != "") {
592ee81decSopenharmony_ci    defines = [ "SECONDARY_SOCKET_NAME=\"${device_security_level_feature_secondary_session_name}\"" ]
602ee81decSopenharmony_ci  }
612ee81decSopenharmony_ci
622ee81decSopenharmony_ci  configs = [ "../../common:common_configs" ]
632ee81decSopenharmony_ci
642ee81decSopenharmony_ci  part_name = "device_security_level"
652ee81decSopenharmony_ci  subsystem_name = "security"
662ee81decSopenharmony_ci}
67