1b1b8bc3fSopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd. 2b1b8bc3fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3b1b8bc3fSopenharmony_ci# you may not use this file except in compliance with the License. 4b1b8bc3fSopenharmony_ci# You may obtain a copy of the License at 5b1b8bc3fSopenharmony_ci# 6b1b8bc3fSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7b1b8bc3fSopenharmony_ci# 8b1b8bc3fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9b1b8bc3fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10b1b8bc3fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11b1b8bc3fSopenharmony_ci# See the License for the specific language governing permissions and 12b1b8bc3fSopenharmony_ci# limitations under the License. 13b1b8bc3fSopenharmony_ci 14b1b8bc3fSopenharmony_ciimport("//build/ohos.gni") 15b1b8bc3fSopenharmony_ciimport("//foundation/communication/netmanager_base/netmanager_base_config.gni") 16b1b8bc3fSopenharmony_ci 17b1b8bc3fSopenharmony_ciconfig("net_policy_manager_config") { 18b1b8bc3fSopenharmony_ci include_dirs = [ 19b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/include", 20b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netpolicyclient/include", 21b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netpolicyclient/include/proxy", 22b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netconnclient/include", 23b1b8bc3fSopenharmony_ci "$NETCONNMANAGER_COMMON_DIR/include", 24b1b8bc3fSopenharmony_ci "$NETMANAGER_BASE_ROOT/utils/log/include", 25b1b8bc3fSopenharmony_ci "include", 26b1b8bc3fSopenharmony_ci "include/stub", 27b1b8bc3fSopenharmony_ci "$NETSYSCONTROLLER_ROOT_DIR/include", 28b1b8bc3fSopenharmony_ci "$NETSYSNATIVE_SOURCE_DIR/include/netsys", 29b1b8bc3fSopenharmony_ci ] 30b1b8bc3fSopenharmony_ci} 31b1b8bc3fSopenharmony_ci 32b1b8bc3fSopenharmony_ciohos_shared_library("net_policy_manager") { 33b1b8bc3fSopenharmony_ci sanitize = { 34b1b8bc3fSopenharmony_ci cfi = true 35b1b8bc3fSopenharmony_ci cfi_cross_dso = true 36b1b8bc3fSopenharmony_ci debug = false 37b1b8bc3fSopenharmony_ci } 38b1b8bc3fSopenharmony_ci 39b1b8bc3fSopenharmony_ci branch_protector_ret = "pac_ret" 40b1b8bc3fSopenharmony_ci 41b1b8bc3fSopenharmony_ci sources = [ 42b1b8bc3fSopenharmony_ci "src/common/net_policy_event_handler.cpp", 43b1b8bc3fSopenharmony_ci "src/common/net_policy_file_event_handler.cpp", 44b1b8bc3fSopenharmony_ci "src/common/net_policy_service_common.cpp", 45b1b8bc3fSopenharmony_ci "src/common/netsys_policy_wrapper.cpp", 46b1b8bc3fSopenharmony_ci "src/core/net_policy_base.cpp", 47b1b8bc3fSopenharmony_ci "src/core/net_policy_callback.cpp", 48b1b8bc3fSopenharmony_ci "src/core/net_policy_core.cpp", 49b1b8bc3fSopenharmony_ci "src/core/net_policy_file.cpp", 50b1b8bc3fSopenharmony_ci "src/core/net_policy_firewall.cpp", 51b1b8bc3fSopenharmony_ci "src/core/net_policy_rule.cpp", 52b1b8bc3fSopenharmony_ci "src/core/net_policy_traffic.cpp", 53b1b8bc3fSopenharmony_ci "src/firewall_rule/device_idle_firewall_rule.cpp", 54b1b8bc3fSopenharmony_ci "src/firewall_rule/firewall_rule.cpp", 55b1b8bc3fSopenharmony_ci "src/firewall_rule/power_save_firewall_rule.cpp", 56b1b8bc3fSopenharmony_ci "src/net_access_policy_database.cpp", 57b1b8bc3fSopenharmony_ci "src/net_policy_listener.cpp", 58b1b8bc3fSopenharmony_ci "src/net_policy_service.cpp", 59b1b8bc3fSopenharmony_ci "src/stub/net_policy_callback_proxy.cpp", 60b1b8bc3fSopenharmony_ci "src/stub/net_policy_service_stub.cpp", 61b1b8bc3fSopenharmony_ci ] 62b1b8bc3fSopenharmony_ci 63b1b8bc3fSopenharmony_ci configs = [ ":net_policy_manager_config" ] 64b1b8bc3fSopenharmony_ci 65b1b8bc3fSopenharmony_ci deps = [ 66b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netpolicyclient:net_policy_parcel", 67b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netstatsclient:net_stats_manager_if", 68b1b8bc3fSopenharmony_ci "$NETCONNMANAGER_COMMON_DIR:net_service_common", 69b1b8bc3fSopenharmony_ci "$NETMANAGER_BASE_ROOT/utils:net_manager_common", 70b1b8bc3fSopenharmony_ci "$NETSYSCONTROLLER_ROOT_DIR:netsys_controller", 71b1b8bc3fSopenharmony_ci ] 72b1b8bc3fSopenharmony_ci 73b1b8bc3fSopenharmony_ci cflags = [ 74b1b8bc3fSopenharmony_ci "-fvisibility=hidden", 75b1b8bc3fSopenharmony_ci "-fdata-sections", 76b1b8bc3fSopenharmony_ci "-ffunction-sections", 77b1b8bc3fSopenharmony_ci "-Os", 78b1b8bc3fSopenharmony_ci "-fstack-protector-strong", 79b1b8bc3fSopenharmony_ci "-D_FORTIFY_SOURCE=2", 80b1b8bc3fSopenharmony_ci "-O2", 81b1b8bc3fSopenharmony_ci ] 82b1b8bc3fSopenharmony_ci 83b1b8bc3fSopenharmony_ci cflags_cc = [ 84b1b8bc3fSopenharmony_ci "-fvisibility-inlines-hidden", 85b1b8bc3fSopenharmony_ci "-Os", 86b1b8bc3fSopenharmony_ci "-fstack-protector-strong", 87b1b8bc3fSopenharmony_ci "-D_FORTIFY_SOURCE=2", 88b1b8bc3fSopenharmony_ci "-O2", 89b1b8bc3fSopenharmony_ci ] 90b1b8bc3fSopenharmony_ci 91b1b8bc3fSopenharmony_ci ldflags = [ 92b1b8bc3fSopenharmony_ci "-Wl,--exclude-libs=ALL", 93b1b8bc3fSopenharmony_ci "-Wl,--gc-sections", 94b1b8bc3fSopenharmony_ci ] 95b1b8bc3fSopenharmony_ci 96b1b8bc3fSopenharmony_ci external_deps = [ 97b1b8bc3fSopenharmony_ci "ability_base:want", 98b1b8bc3fSopenharmony_ci "ability_runtime:app_manager", 99b1b8bc3fSopenharmony_ci "bundle_framework:appexecfwk_base", 100b1b8bc3fSopenharmony_ci "bundle_framework:appexecfwk_core", 101b1b8bc3fSopenharmony_ci "cJSON:cjson", 102b1b8bc3fSopenharmony_ci "c_utils:utils", 103b1b8bc3fSopenharmony_ci "common_event_service:cesfwk_innerkits", 104b1b8bc3fSopenharmony_ci "eventhandler:libeventhandler", 105b1b8bc3fSopenharmony_ci "ffrt:libffrt", 106b1b8bc3fSopenharmony_ci "hitrace:hitrace_meter", 107b1b8bc3fSopenharmony_ci "ipc:ipc_core", 108b1b8bc3fSopenharmony_ci "relational_store:native_rdb", 109b1b8bc3fSopenharmony_ci "safwk:system_ability_fwk", 110b1b8bc3fSopenharmony_ci "samgr:samgr_proxy", 111b1b8bc3fSopenharmony_ci ] 112b1b8bc3fSopenharmony_ci 113b1b8bc3fSopenharmony_ci defines = [ 114b1b8bc3fSopenharmony_ci "NETMGR_LOG_TAG = \"NetPolicyService\"", 115b1b8bc3fSopenharmony_ci "LOG_DOMAIN = 0xD0015B0", 116b1b8bc3fSopenharmony_ci ] 117b1b8bc3fSopenharmony_ci 118b1b8bc3fSopenharmony_ci if (enable_netmgr_debug) { 119b1b8bc3fSopenharmony_ci defines += [ "NETMGR_DEBUG" ] 120b1b8bc3fSopenharmony_ci } 121b1b8bc3fSopenharmony_ci 122b1b8bc3fSopenharmony_ci external_deps += [ "hilog:libhilog" ] 123b1b8bc3fSopenharmony_ci 124b1b8bc3fSopenharmony_ci part_name = "netmanager_base" 125b1b8bc3fSopenharmony_ci subsystem_name = "communication" 126b1b8bc3fSopenharmony_ci} 127b1b8bc3fSopenharmony_ci 128b1b8bc3fSopenharmony_ciohos_static_library("net_policy_manager_static") { 129b1b8bc3fSopenharmony_ci testonly = true 130b1b8bc3fSopenharmony_ci sanitize = { 131b1b8bc3fSopenharmony_ci cfi = true 132b1b8bc3fSopenharmony_ci cfi_cross_dso = true 133b1b8bc3fSopenharmony_ci debug = false 134b1b8bc3fSopenharmony_ci } 135b1b8bc3fSopenharmony_ci 136b1b8bc3fSopenharmony_ci branch_protector_ret = "pac_ret" 137b1b8bc3fSopenharmony_ci 138b1b8bc3fSopenharmony_ci sources = [ 139b1b8bc3fSopenharmony_ci "src/common/net_policy_event_handler.cpp", 140b1b8bc3fSopenharmony_ci "src/common/net_policy_file_event_handler.cpp", 141b1b8bc3fSopenharmony_ci "src/common/net_policy_service_common.cpp", 142b1b8bc3fSopenharmony_ci "src/common/netsys_policy_wrapper.cpp", 143b1b8bc3fSopenharmony_ci "src/core/net_policy_base.cpp", 144b1b8bc3fSopenharmony_ci "src/core/net_policy_callback.cpp", 145b1b8bc3fSopenharmony_ci "src/core/net_policy_core.cpp", 146b1b8bc3fSopenharmony_ci "src/core/net_policy_file.cpp", 147b1b8bc3fSopenharmony_ci "src/core/net_policy_firewall.cpp", 148b1b8bc3fSopenharmony_ci "src/core/net_policy_rule.cpp", 149b1b8bc3fSopenharmony_ci "src/core/net_policy_traffic.cpp", 150b1b8bc3fSopenharmony_ci "src/firewall_rule/device_idle_firewall_rule.cpp", 151b1b8bc3fSopenharmony_ci "src/firewall_rule/firewall_rule.cpp", 152b1b8bc3fSopenharmony_ci "src/firewall_rule/power_save_firewall_rule.cpp", 153b1b8bc3fSopenharmony_ci "src/net_access_policy_database.cpp", 154b1b8bc3fSopenharmony_ci "src/net_policy_listener.cpp", 155b1b8bc3fSopenharmony_ci "src/net_policy_service.cpp", 156b1b8bc3fSopenharmony_ci "src/stub/net_policy_callback_proxy.cpp", 157b1b8bc3fSopenharmony_ci "src/stub/net_policy_service_stub.cpp", 158b1b8bc3fSopenharmony_ci ] 159b1b8bc3fSopenharmony_ci 160b1b8bc3fSopenharmony_ci configs = [ ":net_policy_manager_config" ] 161b1b8bc3fSopenharmony_ci 162b1b8bc3fSopenharmony_ci deps = [ 163b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netpolicyclient:net_policy_parcel", 164b1b8bc3fSopenharmony_ci "$INNERKITS_ROOT/netstatsclient:net_stats_manager_if", 165b1b8bc3fSopenharmony_ci "$NETCONNMANAGER_COMMON_DIR:net_service_common", 166b1b8bc3fSopenharmony_ci "$NETMANAGER_BASE_ROOT/utils:net_manager_common", 167b1b8bc3fSopenharmony_ci "$NETSYSCONTROLLER_ROOT_DIR:netsys_controller", 168b1b8bc3fSopenharmony_ci ] 169b1b8bc3fSopenharmony_ci 170b1b8bc3fSopenharmony_ci external_deps = [ 171b1b8bc3fSopenharmony_ci "ability_base:want", 172b1b8bc3fSopenharmony_ci "ability_runtime:ability_connect_callback_stub", 173b1b8bc3fSopenharmony_ci "ability_runtime:app_manager", 174b1b8bc3fSopenharmony_ci "bundle_framework:appexecfwk_base", 175b1b8bc3fSopenharmony_ci "bundle_framework:appexecfwk_core", 176b1b8bc3fSopenharmony_ci "cJSON:cjson", 177b1b8bc3fSopenharmony_ci "c_utils:utils", 178b1b8bc3fSopenharmony_ci "common_event_service:cesfwk_innerkits", 179b1b8bc3fSopenharmony_ci "eventhandler:libeventhandler", 180b1b8bc3fSopenharmony_ci "ffrt:libffrt", 181b1b8bc3fSopenharmony_ci "hitrace:hitrace_meter", 182b1b8bc3fSopenharmony_ci "ipc:ipc_core", 183b1b8bc3fSopenharmony_ci "relational_store:native_rdb", 184b1b8bc3fSopenharmony_ci "safwk:system_ability_fwk", 185b1b8bc3fSopenharmony_ci "samgr:samgr_proxy", 186b1b8bc3fSopenharmony_ci ] 187b1b8bc3fSopenharmony_ci 188b1b8bc3fSopenharmony_ci defines = [ 189b1b8bc3fSopenharmony_ci "NETMGR_LOG_TAG = \"NetPolicyService\"", 190b1b8bc3fSopenharmony_ci "LOG_DOMAIN = 0xD0015B0", 191b1b8bc3fSopenharmony_ci ] 192b1b8bc3fSopenharmony_ci 193b1b8bc3fSopenharmony_ci if (enable_netmgr_debug) { 194b1b8bc3fSopenharmony_ci defines += [ "NETMGR_DEBUG" ] 195b1b8bc3fSopenharmony_ci } 196b1b8bc3fSopenharmony_ci 197b1b8bc3fSopenharmony_ci external_deps += [ "hilog:libhilog" ] 198b1b8bc3fSopenharmony_ci 199b1b8bc3fSopenharmony_ci part_name = "netmanager_base" 200b1b8bc3fSopenharmony_ci subsystem_name = "communication" 201b1b8bc3fSopenharmony_ci} 202b1b8bc3fSopenharmony_ci 203b1b8bc3fSopenharmony_ciohos_shared_library("net_access_policy_dialog") { 204b1b8bc3fSopenharmony_ci sanitize = { 205b1b8bc3fSopenharmony_ci cfi = true 206b1b8bc3fSopenharmony_ci cfi_cross_dso = true 207b1b8bc3fSopenharmony_ci debug = false 208b1b8bc3fSopenharmony_ci } 209b1b8bc3fSopenharmony_ci 210b1b8bc3fSopenharmony_ci include_dirs = [ 211b1b8bc3fSopenharmony_ci "$NETMANAGER_BASE_ROOT/utils/log/include", 212b1b8bc3fSopenharmony_ci "include", 213b1b8bc3fSopenharmony_ci "include/stub", 214b1b8bc3fSopenharmony_ci ] 215b1b8bc3fSopenharmony_ci 216b1b8bc3fSopenharmony_ci sources = [ "src/net_access_policy_dialog_impl.cpp" ] 217b1b8bc3fSopenharmony_ci 218b1b8bc3fSopenharmony_ci defines = [ 219b1b8bc3fSopenharmony_ci "NETMGR_LOG_TAG = \"NetPolicyService\"", 220b1b8bc3fSopenharmony_ci "LOG_DOMAIN = 0xD0015B0", 221b1b8bc3fSopenharmony_ci ] 222b1b8bc3fSopenharmony_ci 223b1b8bc3fSopenharmony_ci cflags = [ 224b1b8bc3fSopenharmony_ci "-fstack-protector-strong", 225b1b8bc3fSopenharmony_ci "-D_FORTIFY_SOURCE=2", 226b1b8bc3fSopenharmony_ci "-O2", 227b1b8bc3fSopenharmony_ci ] 228b1b8bc3fSopenharmony_ci 229b1b8bc3fSopenharmony_ci cflags_cc = [ 230b1b8bc3fSopenharmony_ci "-fstack-protector-strong", 231b1b8bc3fSopenharmony_ci "-D_FORTIFY_SOURCE=2", 232b1b8bc3fSopenharmony_ci "-O2", 233b1b8bc3fSopenharmony_ci ] 234b1b8bc3fSopenharmony_ci 235b1b8bc3fSopenharmony_ci if (enable_netmgr_debug) { 236b1b8bc3fSopenharmony_ci defines += [ "NETMGR_DEBUG" ] 237b1b8bc3fSopenharmony_ci } 238b1b8bc3fSopenharmony_ci 239b1b8bc3fSopenharmony_ci if (is_standard_system) { 240b1b8bc3fSopenharmony_ci defines += [ "STANDARD_SYSTEM_ENABLE" ] 241b1b8bc3fSopenharmony_ci } 242b1b8bc3fSopenharmony_ci 243b1b8bc3fSopenharmony_ci external_deps = [ 244b1b8bc3fSopenharmony_ci "ability_base:base", 245b1b8bc3fSopenharmony_ci "ability_base:session_info", 246b1b8bc3fSopenharmony_ci "ability_base:want", 247b1b8bc3fSopenharmony_ci "ability_runtime:ability_manager", 248b1b8bc3fSopenharmony_ci "ability_runtime:abilitykit_native", 249b1b8bc3fSopenharmony_ci "ability_runtime:wantagent_innerkits", 250b1b8bc3fSopenharmony_ci "c_utils:utils", 251b1b8bc3fSopenharmony_ci "hilog:libhilog", 252b1b8bc3fSopenharmony_ci "ipc:ipc_core", 253b1b8bc3fSopenharmony_ci ] 254b1b8bc3fSopenharmony_ci 255b1b8bc3fSopenharmony_ci part_name = "netmanager_base" 256b1b8bc3fSopenharmony_ci subsystem_name = "communication" 257b1b8bc3fSopenharmony_ci} 258