• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-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")
15import("//foundation/communication/netmanager_base/netmanager_base_config.gni")
16
17config("net_conn_manager_config") {
18  include_dirs = [
19    "include",
20    "include/stub",
21    "$INNERKITS_ROOT/netconnclient/include/proxy",
22    "$INNERKITS_ROOT/netmanagernative/include",
23    "$NETCONNMANAGER_COMMON_DIR/include",
24    "$NETPOLICYMANAGER_SOURCE_DIR/include",
25    "$NETPOLICYMANAGER_SOURCE_DIR/include/stub",
26    "$NETSYSNATIVE_SOURCE_DIR/include/netsys",
27    "$NETSYSCONTROLLER_ROOT_DIR/include",
28    "$NETMANAGER_BASE_ROOT/services/netmanagernative/fwmarkclient/include",
29    "$INNERKITS_ROOT/netmanagernative/include",
30  ]
31}
32
33ohos_shared_library("net_conn_manager") {
34  sanitize = {
35    cfi = true
36    cfi_cross_dso = true
37    debug = false
38  }
39
40  branch_protector_ret = "pac_ret"
41
42  sources = [
43    "$NETCONNMANAGER_COMMON_DIR/src/route_utils.cpp",
44    "$NETMANAGER_BASE_ROOT/frameworks/js/napi/netpolicy/src/net_conn_service.cpp",
45    "$NETMANAGER_BASE_ROOT/frameworks/js/napi/netstats/src/net_factoryreset_callback.cpp",
46    "src/dns_result_call_back.cpp",
47    "src/nat464_service.cpp",
48    "src/net_activate.cpp",
49    "src/net_caps.cpp",
50    "src/net_conn_callback_proxy_wrapper.cpp",
51    "src/net_conn_event_handler.cpp",
52    "src/net_conn_service_iface.cpp",
53    "src/net_datashare_utils.cpp",
54    "src/net_http_probe.cpp",
55    "src/net_http_probe_result.cpp",
56    "src/net_http_proxy_tracker.cpp",
57    "src/net_monitor.cpp",
58    "src/net_proxy_userinfo.cpp",
59    "src/net_supplier.cpp",
60    "src/network.cpp",
61    "src/probe_thread.cpp",
62    "src/net_trace_route_probe.cpp",
63    "src/stub/net_conn_callback_proxy.cpp",
64    "src/stub/net_conn_service_stub.cpp",
65    "src/stub/net_detection_callback_proxy.cpp",
66    "src/stub/net_factoryreset_callback_proxy.cpp",
67    "src/stub/net_interface_callback_proxy.cpp",
68    "src/stub/net_supplier_callback_proxy.cpp",
69  ]
70  use_exceptions = true
71
72  configs = [ ":net_conn_manager_config" ]
73
74  deps = [
75    "$INNERKITS_ROOT/netpolicyclient:net_policy_manager_if",
76    "$INNERKITS_ROOT/netstatsclient:net_stats_manager_if",
77    "$NETCONNMANAGER_COMMON_DIR:net_service_common",
78    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager",
79    "$NETMANAGER_BASE_ROOT/services/netmanagernative/fwmarkclient:fwmark_client",
80    "$NETMANAGER_BASE_ROOT/utils:net_manager_common",
81    "$NETSYSCONTROLLER_ROOT_DIR:netsys_controller",
82  ]
83
84  cflags = common_cflags + [
85    "-fvisibility=hidden",
86  ]
87
88  cflags_cc = common_cflags + [
89    "-fvisibility=hidden",
90    "-fvisibility-inlines-hidden",
91  ]
92
93  ldflags = [
94    "-Wl,--exclude-libs=ALL",
95    "-Wl,--gc-sections",
96  ]
97
98  external_deps = [
99    "ability_base:want",
100    "ability_base:zuri",
101    "ability_runtime:ability_manager",
102    "cJSON:cjson",
103    "c_utils:utils",
104    "common_event_service:cesfwk_innerkits",
105    "curl:curl_shared",
106    "data_share:datashare_common",
107    "data_share:datashare_consumer",
108    "eventhandler:libeventhandler",
109    "ffrt:libffrt",
110    "hisysevent:libhisysevent",
111    "hitrace:hitrace_meter",
112    "init:libbegetutil",
113    "ipc:ipc_core",
114    "os_account:os_account_innerkits",
115    "relational_store:native_rdb",
116    "safwk:system_ability_fwk",
117    "samgr:samgr_proxy",
118    "jerryscript:jerryscript_shared_not_lite",
119  ]
120
121  defines = [
122    "NETMGR_LOG_TAG = \"NetConnManager\"",
123    "LOG_DOMAIN = 0xD0015B0",
124  ]
125
126  if (netmanager_base_enable_feature_sysvpn) {
127    defines += [ "SUPPORT_SYSVPN" ]
128  }
129
130  if(netmanager_base_enable_pac_proxy){
131      defines += [ "NETMANAGER_ENABLE_PAC_PROXY" ]
132      external_deps += [ "jerryscript:jerryscript_shared_not_lite" ]
133      sources += [ "src/pac_functions.cpp" ]
134      sources += [ "src/net_pac_local_proxy_server.cpp" ]
135      sources += [ "src/net_pac_manager.cpp" ]
136  }
137
138  if (enable_netmgr_debug) {
139    defines += [ "NETMGR_DEBUG" ]
140  }
141
142  if (enable_sys_func) {
143    defines += [ "SYS_FUNC" ]
144  }
145
146  if (netmanager_base_enable_feature_wearable_distributed_net) {
147    defines += [ "FEATURE_WEARABLE_DISTRIBUTED_NET_ENABLE" ]
148  }
149
150  if (netmanager_base_feature_support_powermanager) {
151    defines += [ "FEATURE_SUPPORT_POWERMANAGER" ]
152  }
153
154  if (netmanager_base_enable_set_app_frozened) {
155    defines += [ "ENABLE_SET_APP_FROZENED" ]
156  }
157
158  if (netmanager_base_enable_feature_net_firewall) {
159    defines += [ "FEATURE_NET_FIREWALL_ENABLE" ]
160  }
161
162  if (netmanager_base_feature_enterprise_route_custom) {
163    defines += [ "FEATURE_ENTERPRISE_ROUTE_CUSTOM" ]
164  }
165
166  external_deps += [ "hilog:libhilog" ]
167
168  part_name = "netmanager_base"
169  subsystem_name = "communication"
170}
171
172ohos_static_library("net_conn_manager_static") {
173  testonly = true
174  use_exceptions = true
175  sources = [
176    "$NETCONNMANAGER_COMMON_DIR/src/route_utils.cpp",
177    "$NETMANAGER_BASE_ROOT/frameworks/js/napi/netpolicy/src/net_conn_service.cpp",
178    "$NETMANAGER_BASE_ROOT/frameworks/js/napi/netstats/src/net_factoryreset_callback.cpp",
179    "src/dns_result_call_back.cpp",
180    "src/nat464_service.cpp",
181    "src/net_activate.cpp",
182    "src/net_caps.cpp",
183    "src/net_conn_callback_proxy_wrapper.cpp",
184    "src/net_conn_event_handler.cpp",
185    "src/net_conn_service_iface.cpp",
186    "src/net_datashare_utils.cpp",
187    "src/net_http_probe.cpp",
188    "src/net_http_probe_result.cpp",
189    "src/net_http_proxy_tracker.cpp",
190    "src/net_monitor.cpp",
191    "src/net_proxy_userinfo.cpp",
192    "src/net_supplier.cpp",
193    "src/network.cpp",
194    "src/probe_thread.cpp",
195    "src/net_trace_route_probe.cpp",
196    "src/stub/net_conn_callback_proxy.cpp",
197    "src/stub/net_conn_service_stub.cpp",
198    "src/stub/net_detection_callback_proxy.cpp",
199    "src/stub/net_factoryreset_callback_proxy.cpp",
200    "src/stub/net_interface_callback_proxy.cpp",
201    "src/stub/net_supplier_callback_proxy.cpp",
202  ]
203
204  configs = [ ":net_conn_manager_config" ]
205
206  deps = [
207    "$INNERKITS_ROOT/netpolicyclient:net_policy_manager_if",
208    "$INNERKITS_ROOT/netstatsclient:net_stats_manager_if",
209    "$NETCONNMANAGER_COMMON_DIR:net_service_common",
210    "$NETMANAGER_BASE_ROOT/services/netmanagernative:netsys_native_manager",
211    "$NETMANAGER_BASE_ROOT/services/netmanagernative/fwmarkclient:fwmark_client",
212    "$NETMANAGER_BASE_ROOT/utils:net_manager_common",
213    "$NETSYSCONTROLLER_ROOT_DIR:netsys_controller",
214  ]
215
216  external_deps = [
217    "ability_base:zuri",
218    "ability_runtime:ability_manager",
219    "cJSON:cjson",
220    "c_utils:utils",
221    "common_event_service:cesfwk_innerkits",
222    "curl:curl_shared",
223    "data_share:datashare_common",
224    "data_share:datashare_consumer",
225    "eventhandler:libeventhandler",
226    "ffrt:libffrt",
227    "hisysevent:libhisysevent",
228    "hitrace:hitrace_meter",
229    "init:libbegetutil",
230    "ipc:ipc_core",
231    "os_account:os_account_innerkits",
232    "relational_store:native_rdb",
233    "safwk:system_ability_fwk",
234    "samgr:samgr_proxy",
235    "jerryscript:jerryscript_shared_not_lite",
236  ]
237
238  defines = [
239    "NETMGR_LOG_TAG = \"NetConnManager\"",
240    "LOG_DOMAIN = 0xD0015B0",
241    "NETMANAGER_TEST",
242  ]
243
244  if (netmanager_base_enable_feature_sysvpn) {
245    defines += [ "SUPPORT_SYSVPN" ]
246  }
247
248  if(netmanager_base_enable_pac_proxy){
249      defines += [ "NETMANAGER_ENABLE_PAC_PROXY" ]
250      external_deps += [ "jerryscript:jerryscript_shared_not_lite" ]
251      sources += [ "src/pac_functions.cpp" ]
252      sources += [ "src/net_pac_local_proxy_server.cpp" ]
253      sources += [ "src/net_pac_manager.cpp" ]
254  }
255
256  if (enable_netmgr_debug) {
257    defines += [ "NETMGR_DEBUG" ]
258  }
259
260  if (enable_sys_func) {
261    defines += [ "SYS_FUNC" ]
262  }
263
264  external_deps += [ "hilog:libhilog" ]
265
266  part_name = "netmanager_base"
267  subsystem_name = "communication"
268}
269