• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/config/features.gni")
15import("//build/test.gni")
16import("../../../../../access_token.gni")
17
18ohos_fuzztest("AllocLocalTokenIDStubFuzzTest") {
19  module_out_path = module_output_path_service_access_token
20  fuzz_config_file = "."
21
22  sources = [ "alloclocaltokenidstub_fuzzer.cpp" ]
23
24  cflags = [
25    "-g",
26    "-O0",
27    "-Wno-unused-variable",
28    "-fno-omit-frame-pointer",
29  ]
30
31  include_dirs = [
32    "${access_token_path}/frameworks/accesstoken/include",
33    "${access_token_path}/services/accesstokenmanager/main/cpp/include",
34  ]
35
36  deps = [
37    "${access_token_path}/interfaces/innerkits/accesstoken:libaccesstoken_sdk",
38    "${access_token_path}/interfaces/innerkits/token_setproc:libperm_setproc",
39    "${access_token_path}/interfaces/innerkits/token_setproc:libtoken_setproc",
40  ]
41
42  configs = [ "${access_token_path}/config:coverage_flags" ]
43
44  external_deps = [
45    "c_utils:utils",
46    "hilog:libhilog",
47    "ipc:ipc_core",
48    "safwk:system_ability_fwk",
49    "samgr:samgr_proxy",
50  ]
51
52  include_dirs += [
53    "${access_token_path}/services/accesstokenmanager/main/cpp/include/callback",
54    "${access_token_path}/services/accesstokenmanager/main/cpp/include/service",
55    "${access_token_path}/services/accesstokenmanager/main/cpp/include/token",
56    "${access_token_path}/services/accesstokenmanager/main/cpp/include/permission",
57    "${access_token_path}/services/accesstokenmanager/main/cpp/include/database",
58    "${access_token_path}/frameworks/common/include",
59    "${access_token_path}/frameworks/accesstoken/include",
60    "${access_token_path}/interfaces/innerkits/privacy/include",
61    "${access_token_path}/interfaces/innerkits/tokensync/src",
62    "${access_token_path}/services/common/app_manager/include",
63    "${access_token_path}/services/common/database/include",
64    "${access_token_path}/services/common/handler/include",
65    "//third_party/sqlite/include/",
66    "//third_party/sqlite:sqlite",
67    "//third_party/json/include/",
68  ]
69
70  include_dirs += access_token_impl_include_dirs
71
72  cflags_cc = [ "-DHILOG_ENABLE" ]
73
74  sources += [
75    "${access_token_path}/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp",
76    "${access_token_path}/services/accesstokenmanager/main/cpp/src/callback/perm_state_callback_death_recipient.cpp",
77    "${access_token_path}/services/accesstokenmanager/main/cpp/src/callback/permission_state_change_callback_proxy.cpp",
78    "${access_token_path}/services/accesstokenmanager/main/cpp/src/database/access_token_db.cpp",
79    "${access_token_path}/services/accesstokenmanager/main/cpp/src/database/data_translator.cpp",
80    "${access_token_path}/services/accesstokenmanager/main/cpp/src/database/token_field_const.cpp",
81    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/permission_definition_cache.cpp",
82    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/permission_grant_event.cpp",
83    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/permission_manager.cpp",
84    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/permission_policy_set.cpp",
85    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/permission_validator.cpp",
86    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/system_permission_definition_parser.cpp",
87    "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/temp_permission_observer.cpp",
88    "${access_token_path}/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp",
89    "${access_token_path}/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_stub.cpp",
90    "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/accesstoken_id_manager.cpp",
91    "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp",
92    "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/hap_token_info_inner.cpp",
93    "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/native_token_info_inner.cpp",
94    "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/native_token_receptor.cpp",
95  ]
96
97  sources += access_token_impl_sources
98
99  if (dlp_permission_enable == true) {
100    cflags_cc += [ "-DSUPPORT_SANDBOX_APP" ]
101    sources += [
102      "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_manager.cpp",
103      "${access_token_path}/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_parser.cpp",
104    ]
105  }
106
107  deps += [
108    "${access_token_path}/frameworks/accesstoken:accesstoken_communication_adapter_cxx",
109    "${access_token_path}/frameworks/common:accesstoken_common_cxx",
110    "${access_token_path}/interfaces/innerkits/accesstoken:libtokenid_sdk",
111    "${access_token_path}/interfaces/innerkits/privacy:libprivacy_sdk",
112    "${access_token_path}/services/accesstokenmanager:access_token.rc",
113    "${access_token_path}/services/common:accesstoken_service_common",
114  ]
115
116  deps += [ "${access_token_path}/services/accesstokenmanager/etc:param_files" ]
117
118  external_deps += [
119    "dsoftbus:softbus_client",
120    "hilog:libhilog",
121    "hisysevent:libhisysevent",
122    "hitrace:hitrace_meter",
123    "init:libbegetutil",
124    "ipc:ipc_core",
125    "safwk:system_ability_fwk",
126  ]
127
128  if (eventhandler_enable == true) {
129    cflags_cc += [ "-DEVENTHANDLER_ENABLE" ]
130    external_deps += [ "eventhandler:libeventhandler" ]
131  }
132
133  if (hicollie_enable == true) {
134    external_deps += [ "hicollie:libhicollie" ]
135    cflags_cc += [ "-DHICOLLIE_ENABLE" ]
136  }
137
138  if (token_sync_enable == true) {
139    cflags_cc += [ "-DTOKEN_SYNC_ENABLE" ]
140
141    sources += [
142      "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/accesstoken_remote_token_manager.cpp",
143      "${access_token_path}/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp",
144    ]
145
146    include_dirs +=
147        [ "${access_token_path}/interfaces/innerkits/tokensync/include" ]
148
149    deps += [
150      "${access_token_path}/interfaces/innerkits/tokensync:libtokensync_sdk",
151    ]
152  }
153}
154