From 05da8875ba76696f8e114059c2ef30a27e71dd1d Mon Sep 17 00:00:00 2001 From: luowei Date: Thu, 13 Mar 2025 10:37:39 +0800 Subject: [PATCH 1/3] sa symbol opt sync 0313 Signed-off-by: luowei --- frameworks/accesstoken/BUILD.gn | 5 ++ .../accesstoken_communication_adapter_cxx.map | 85 +++++++++++++++++++ frameworks/common/BUILD.gn | 5 ++ frameworks/common/accesstoken_common_cxx.map | 67 +++++++++++++++ frameworks/js/napi/accesstoken/BUILD.gn | 6 ++ .../napi/accesstoken/libabilityaccessctrl.map | 20 +++++ frameworks/js/napi/el5filekeymanager/BUILD.gn | 5 ++ .../screenlockfilemanager.map | 20 +++++ frameworks/js/napi/privacy/BUILD.gn | 5 ++ .../js/napi/privacy/libprivacymanager.map | 20 +++++ frameworks/privacy/BUILD.gn | 5 ++ .../privacy_communication_adapter_cxx.map | 57 +++++++++++++ .../inner_api/el5filekeymanager/BUILD.gn | 5 ++ .../el5_filekey_manager_sdk.map | 42 +++++++++ interfaces/innerkits/accesstoken/BUILD.gn | 5 ++ .../accesstoken/libaccesstoken_sdk.map | 1 + .../innerkits/accesstoken/libtokenid_sdk.map | 28 ++++++ interfaces/innerkits/analysis_model/BUILD.gn | 6 ++ .../libcodesignature_analysis.map | 22 +++++ interfaces/innerkits/nativetoken/BUILD.gn | 6 ++ .../nativetoken/libnativetoken_shared.map | 43 ++++++++++ interfaces/innerkits/token_setproc/BUILD.gn | 5 ++ .../token_setproc/libtokensetproc_shared.map | 24 ++++++ interfaces/innerkits/tokensync/BUILD.gn | 6 ++ .../innerkits/tokensync/libtokensync_sdk.map | 24 ++++++ interfaces/kits/capi/accesstoken/BUILD.gn | 2 + interfaces/kits/cj/accesstoken/BUILD.gn | 6 ++ .../cj_ability_access_ctrl_ffi.map | 25 ++++++ .../kits/cj/screenlockfilemanager/BUILD.gn | 6 ++ .../cj_screen_lock_file_manager_ffi.map | 22 +++++ services/common/ability_manager/BUILD.gn | 3 + services/common/app_manager/BUILD.gn | 3 + services/common/json_parse/BUILD.gn | 9 ++ .../json_parse/accesstoken_cjson_utils.map | 39 +++++++++ services/common/screenlock_manager/BUILD.gn | 3 + 35 files changed, 635 insertions(+) create mode 100644 frameworks/accesstoken/accesstoken_communication_adapter_cxx.map create mode 100644 frameworks/common/accesstoken_common_cxx.map create mode 100644 frameworks/js/napi/accesstoken/libabilityaccessctrl.map create mode 100644 frameworks/js/napi/el5filekeymanager/screenlockfilemanager.map create mode 100644 frameworks/js/napi/privacy/libprivacymanager.map create mode 100644 frameworks/privacy/privacy_communication_adapter_cxx.map create mode 100644 interfaces/inner_api/el5filekeymanager/el5_filekey_manager_sdk.map create mode 100644 interfaces/innerkits/accesstoken/libtokenid_sdk.map create mode 100644 interfaces/innerkits/analysis_model/libcodesignature_analysis.map create mode 100644 interfaces/innerkits/nativetoken/libnativetoken_shared.map create mode 100644 interfaces/innerkits/token_setproc/libtokensetproc_shared.map create mode 100644 interfaces/innerkits/tokensync/libtokensync_sdk.map create mode 100644 interfaces/kits/cj/accesstoken/cj_ability_access_ctrl_ffi.map create mode 100644 interfaces/kits/cj/screenlockfilemanager/cj_screen_lock_file_manager_ffi.map create mode 100644 services/common/json_parse/accesstoken_cjson_utils.map diff --git a/frameworks/accesstoken/BUILD.gn b/frameworks/accesstoken/BUILD.gn index 905cf9753..707ed8a68 100644 --- a/frameworks/accesstoken/BUILD.gn +++ b/frameworks/accesstoken/BUILD.gn @@ -35,6 +35,11 @@ ohos_shared_library("accesstoken_communication_adapter_cxx") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "accesstoken_communication_adapter_cxx.map" + } + branch_protector_ret = "pac_ret" public_configs = [ ":accesstoken_communication_adapter_cxx_public_config" ] diff --git a/frameworks/accesstoken/accesstoken_communication_adapter_cxx.map b/frameworks/accesstoken/accesstoken_communication_adapter_cxx.map new file mode 100644 index 000000000..54379dff9 --- /dev/null +++ b/frameworks/accesstoken/accesstoken_communication_adapter_cxx.map @@ -0,0 +1,85 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "VTT for OHOS::Security::AccessToken::HapTokenInfoForSyncParcel"; + "vtable for OHOS::Security::AccessToken::HapTokenInfoForSyncParcel"; + "VTT for OHOS::Security::AccessToken::PermissionDefParcel"; + "vtable for OHOS::Security::AccessToken::PermissionDefParcel"; + "VTT for OHOS::Security::AccessToken::PermissionListStateParcel"; + "vtable for OHOS::Security::AccessToken::PermissionListStateParcel"; + "VTT for OHOS::Security::AccessToken::PermissionGrantInfoParcel"; + "vtable for OHOS::Security::AccessToken::PermissionGrantInfoParcel"; + "VTT for OHOS::Security::AccessToken::PermStateChangeScopeParcel"; + "vtable for OHOS::Security::AccessToken::PermStateChangeScopeParcel"; + "VTT for OHOS::Security::AccessToken::HapInfoParcel"; + "vtable for OHOS::Security::AccessToken::HapInfoParcel"; + "VTT for OHOS::Security::AccessToken::HapPolicyParcel"; + "vtable for OHOS::Security::AccessToken::HapPolicyParcel"; + "VTT for OHOS::Security::AccessToken::HapTokenInfoParcel"; + "vtable for OHOS::Security::AccessToken::HapTokenInfoParcel"; + "VTT for OHOS::Security::AccessToken::NativeTokenInfoParcel"; + "vtable for OHOS::Security::AccessToken::NativeTokenInfoParcel"; + "VTT for OHOS::Security::AccessToken::AtmToolsParamInfoParcel"; + "vtable for OHOS::Security::AccessToken::AtmToolsParamInfoParcel"; + "VTT for OHOS::Security::AccessToken::HapBaseInfoParcel"; + "vtable for OHOS::Security::AccessToken::HapBaseInfoParcel"; + "VTT for OHOS::Security::AccessToken::PermissionStatusParcel"; + "vtable for OHOS::Security::AccessToken::PermissionStatusParcel"; + "VTT for OHOS::Security::AccessToken::PermissionStateChangeInfoParcel"; + "vtable for OHOS::Security::AccessToken::PermissionStateChangeInfoParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedResultParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedResultParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedRequestParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedRequestParcel"; + "VTT for OHOS::Security::AccessToken::ActiveChangeResponseParcel"; + "vtable for OHOS::Security::AccessToken::ActiveChangeResponseParcel"; + "OHOS::Security::AccessToken::HapTokenInfoForSyncParcel"; + "OHOS::Security::AccessToken::PermissionDefParcel"; + "OHOS::Security::AccessToken::PermissionStateChangeInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapTokenInfoForSyncParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionGrantInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapTokenInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapTokenInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::NativeTokenInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::NativeTokenInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionListStateParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionStatusParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionDefParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionDefParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::HapInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapPolicyParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermStateChangeScopeParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapBaseInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::HapBaseInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::AtmToolsParamInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::AtmToolsParamInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionGrantInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionStatusParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::HapTokenInfoForSyncParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermStateChangeScopeParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionStateChangeInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::HapPolicyParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::HapInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedResultParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedResultParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedRequestParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedRequestParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::ActiveChangeResponseParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::ActiveChangeResponseParcel::Unmarshalling(OHOS::Parcel&)"; + }; + local: + *; +}; \ No newline at end of file diff --git a/frameworks/common/BUILD.gn b/frameworks/common/BUILD.gn index d8c90e817..af35f5d82 100644 --- a/frameworks/common/BUILD.gn +++ b/frameworks/common/BUILD.gn @@ -43,6 +43,11 @@ ohos_shared_library("accesstoken_common_cxx") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "accesstoken_common_cxx.map" + } + branch_protector_ret = "pac_ret" public_configs = [ ":accesstoken_common_cxx_public_config" ] diff --git a/frameworks/common/accesstoken_common_cxx.map b/frameworks/common/accesstoken_common_cxx.map new file mode 100644 index 000000000..87848fdfc --- /dev/null +++ b/frameworks/common/accesstoken_common_cxx.map @@ -0,0 +1,67 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "OHOS::Security::AccessToken::ConstantCommon::EncryptDevId(std::__h::basic_string, std::__h::allocator>)"; + "OHOS::Security::AccessToken::TimeUtil::GetCurrentTimestamp()"; + "OHOS::Security::AccessToken::FindAndInsertRecord(OHOS::Security::AccessToken::AddPermParamInfo const&)"; + "OHOS::Security::AccessToken::DataValidator::IsPermissionNameValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsPermissionUsedTypeValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsTokenIDValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsHapCaller(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsUserIdValid(int)"; + "OHOS::Security::AccessToken::DataValidator::IsPermissionUsedFlagValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsPolicyTypeValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsCallerTypeValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsAppIDDescValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsBundleNameValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsAplNumValid(int)"; + "OHOS::Security::AccessToken::DataValidator::IsDomainValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsDlpTypeValid(int)"; + "OHOS::Security::AccessToken::TransferPermissionToOpcode(std::__h::basic_string, std::__h::allocator> const&, unsigned int&)"; + "OHOS::Security::AccessToken::DataValidator::IsPermissionFlagValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsToggleStatusValid(unsigned int)"; + "OHOS::Security::AccessToken::DataValidator::IsProcessNameValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::JsonParser::IsDirExsit(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::JsonParser::GetStringFromJson(nlohmann::json_abi_v3_11_2::basic_json, std::__h::allocator>, bool, long, unsigned long, double, std::__h::allocator, nlohmann::json_abi_v3_11_2::adl_serializer, std::__h::vector>> const&, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::JsonParser::GetIntFromJson(nlohmann::json_abi_v3_11_2::basic_json, std::__h::allocator>, bool, long, unsigned long, double, std::__h::allocator, nlohmann::json_abi_v3_11_2::adl_serializer, std::__h::vector>> const&, std::__h::basic_string, std::__h::allocator> const&, int&)"; + "OHOS::Security::AccessToken::JsonParser::ReadCfgFile(std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::DataValidator::IsDeviceIdValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::ConstantCommon::GetLocalDeviceId()"; + "OHOS::Security::AccessToken::TransferOpcodeToPermission(unsigned int, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::ConstantCommon::GetFlagWithoutSpecifiedElement(unsigned int, unsigned int)"; + "OHOS::Security::AccessToken::ConstantCommon::IsPermOperatedByUser(int)"; + "OHOS::Security::AccessToken::ConstantCommon::IsPermOperatedBySystem(int)"; + "OHOS::Security::AccessToken::ConstantCommon::IsPermGrantedBySecComp(int)"; + "OHOS::Security::AccessToken::JsonParser::GetBoolFromJson(nlohmann::json_abi_v3_11_2::basic_json, std::__h::allocator>, bool, long, unsigned long, double, std::__h::allocator, nlohmann::json_abi_v3_11_2::adl_serializer, std::__h::vector>> const&, std::__h::basic_string, std::__h::allocator> const&, bool&)"; + "OHOS::Security::AccessToken::DataValidator::IsLabelValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsAvailableTypeValid(int)"; + "OHOS::Security::AccessToken::JsonParser::GetUnsignedIntFromJson(nlohmann::json_abi_v3_11_2::basic_json, std::__h::allocator>, bool, long, unsigned long, double, std::__h::allocator, nlohmann::json_abi_v3_11_2::adl_serializer, std::__h::vector>> const&, std::__h::basic_string, std::__h::allocator> const&, unsigned int&)"; + "OHOS::Security::AccessToken::DataValidator::IsDescValid(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::TimeUtil::IsTimeStampsSameMinute(long, long)"; + "OHOS::Security::AccessToken::TimeUtil::IsTimeStampsSameMinute(long long, long long)"; + "OHOS::Security::AccessToken::DataValidator::IsAclExtendedMapSizeValid(std::__h::map, std::__h::allocator>, std::__h::basic_string, std::__h::allocator>, std::__h::less, std::__h::allocator>>, std::__h::allocator, std::__h::allocator> const, std::__h::basic_string, std::__h::allocator>>>> const&)"; + "OHOS::Security::AccessToken::DataValidator::IsAclExtendedMapContentValid(std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::IsUserGrantPermission(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::IsDefinedPermission(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::GetPermissionBriefDef(std::__h::basic_string, std::__h::allocator> const&, OHOS::Security::AccessToken::PermissionBriefDef&)"; + "OHOS::Security::AccessToken::ConvertPermissionBriefToDef(OHOS::Security::AccessToken::PermissionBriefDef const&, OHOS::Security::AccessToken::PermissionDef&)"; + "OHOS::Security::AccessToken::GetPermissionBriefDef(unsigned int, OHOS::Security::AccessToken::PermissionBriefDef&)"; + "OHOS::Security::AccessToken::IsPermissionValidForHap(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::GetDefPermissionsSize()"; + }; + local: + *; +}; \ No newline at end of file diff --git a/frameworks/js/napi/accesstoken/BUILD.gn b/frameworks/js/napi/accesstoken/BUILD.gn index 6cebe5c4c..50d826964 100644 --- a/frameworks/js/napi/accesstoken/BUILD.gn +++ b/frameworks/js/napi/accesstoken/BUILD.gn @@ -20,6 +20,12 @@ ohos_shared_library("libabilityaccessctrl") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libabilityaccessctrl.map" + shlib_type = "sa" + } + branch_protector_ret = "pac_ret" include_dirs = [ "${access_token_path}/frameworks/common/include", diff --git a/frameworks/js/napi/accesstoken/libabilityaccessctrl.map b/frameworks/js/napi/accesstoken/libabilityaccessctrl.map new file mode 100644 index 000000000..ff09ec0f9 --- /dev/null +++ b/frameworks/js/napi/accesstoken/libabilityaccessctrl.map @@ -0,0 +1,20 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + }; + local: + *; +}; \ No newline at end of file diff --git a/frameworks/js/napi/el5filekeymanager/BUILD.gn b/frameworks/js/napi/el5filekeymanager/BUILD.gn index 7a42453e5..0c5a29467 100644 --- a/frameworks/js/napi/el5filekeymanager/BUILD.gn +++ b/frameworks/js/napi/el5filekeymanager/BUILD.gn @@ -22,6 +22,11 @@ ohos_shared_library("screenlockfilemanager") { } branch_protector_ret = "pac_ret" + if (!use_clang_coverage) { + version_script = "screenlockfilemanager.map" + shlib_type = "sa" + } + include_dirs = [ "${access_token_path}/frameworks/inner_api/el5filekeymanager/include", "${access_token_path}/interfaces/inner_api/el5filekeymanager/include", diff --git a/frameworks/js/napi/el5filekeymanager/screenlockfilemanager.map b/frameworks/js/napi/el5filekeymanager/screenlockfilemanager.map new file mode 100644 index 000000000..ff09ec0f9 --- /dev/null +++ b/frameworks/js/napi/el5filekeymanager/screenlockfilemanager.map @@ -0,0 +1,20 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + }; + local: + *; +}; \ No newline at end of file diff --git a/frameworks/js/napi/privacy/BUILD.gn b/frameworks/js/napi/privacy/BUILD.gn index 4621e4760..2ecf04e6e 100644 --- a/frameworks/js/napi/privacy/BUILD.gn +++ b/frameworks/js/napi/privacy/BUILD.gn @@ -20,6 +20,11 @@ ohos_shared_library("libprivacymanager") { cfi_cross_dso = true debug = false } + if (!use_clang_coverage) { + version_script = "libprivacymanager.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ "${access_token_path}/frameworks/common/include", diff --git a/frameworks/js/napi/privacy/libprivacymanager.map b/frameworks/js/napi/privacy/libprivacymanager.map new file mode 100644 index 000000000..ff09ec0f9 --- /dev/null +++ b/frameworks/js/napi/privacy/libprivacymanager.map @@ -0,0 +1,20 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + }; + local: + *; +}; \ No newline at end of file diff --git a/frameworks/privacy/BUILD.gn b/frameworks/privacy/BUILD.gn index b452f0cda..48afddee9 100644 --- a/frameworks/privacy/BUILD.gn +++ b/frameworks/privacy/BUILD.gn @@ -23,6 +23,11 @@ ohos_shared_library("privacy_communication_adapter_cxx") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "privacy_communication_adapter_cxx.map" + } + branch_protector_ret = "pac_ret" include_dirs = [ diff --git a/frameworks/privacy/privacy_communication_adapter_cxx.map b/frameworks/privacy/privacy_communication_adapter_cxx.map new file mode 100644 index 000000000..4e81eb810 --- /dev/null +++ b/frameworks/privacy/privacy_communication_adapter_cxx.map @@ -0,0 +1,57 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "VTT for OHOS::Security::AccessToken::AddPermParamInfoParcel"; + "vtable for OHOS::Security::AccessToken::AddPermParamInfoParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedTypeInfoParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedTypeInfoParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedResultParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedResultParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedRequestParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedRequestParcel"; + "VTT for OHOS::Security::AccessToken::SecCompEnhanceDataParcel"; + "vtable for OHOS::Security::AccessToken::SecCompEnhanceDataParcel"; + "VTT for OHOS::Security::AccessToken::ActiveChangeResponseParcel"; + "vtable for OHOS::Security::AccessToken::ActiveChangeResponseParcel"; + "VTT for OHOS::Security::AccessToken::PermissionUsedRecordParcel"; + "vtable for OHOS::Security::AccessToken::PermissionUsedRecordParcel"; + "VTT for OHOS::Security::AccessToken::UsedRecordDetailParcel"; + "vtable for OHOS::Security::AccessToken::UsedRecordDetailParcel"; + "VTT for OHOS::Security::AccessToken::BundleUsedRecordParcel"; + "vtable for OHOS::Security::AccessToken::BundleUsedRecordParcel"; + "OHOS::Security::AccessToken::AddPermParamInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedTypeInfoParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedResultParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedRequestParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::SecCompEnhanceDataParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::ActiveChangeResponseParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::AddPermParamInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedTypeInfoParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedResultParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedRequestParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::SecCompEnhanceDataParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::ActiveChangeResponseParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::PermissionUsedRecordParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::PermissionUsedRecordParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::UsedRecordDetailParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::UsedRecordDetailParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::BundleUsedRecordParcel::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::BundleUsedRecordParcel::Marshalling(OHOS::Parcel&) const"; + "OHOS::Security::AccessToken::TimeUtil::IsTimeStampsSameMinute(long long, long long)"; + }; + local: + *; +}; \ No newline at end of file diff --git a/interfaces/inner_api/el5filekeymanager/BUILD.gn b/interfaces/inner_api/el5filekeymanager/BUILD.gn index d4c36ca0d..4147e8cf1 100644 --- a/interfaces/inner_api/el5filekeymanager/BUILD.gn +++ b/interfaces/inner_api/el5filekeymanager/BUILD.gn @@ -28,6 +28,11 @@ ohos_shared_library("el5_filekey_manager_sdk") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "el5_filekey_manager_sdk.map" + } + branch_protector_ret = "pac_ret" cflags_cc = [ diff --git a/interfaces/inner_api/el5filekeymanager/el5_filekey_manager_sdk.map b/interfaces/inner_api/el5filekeymanager/el5_filekey_manager_sdk.map new file mode 100644 index 000000000..1e40d082c --- /dev/null +++ b/interfaces/inner_api/el5filekeymanager/el5_filekey_manager_sdk.map @@ -0,0 +1,42 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "OHOS::Security::AccessToken::El5FilekeyManagerKit::AcquireAccess(OHOS::Security::AccessToken::DataLockType)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::ReleaseAccess(OHOS::Security::AccessToken::DataLockType)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::QueryAppKeyState(OHOS::Security::AccessToken::DataLockType)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::GenerateAppKey(unsigned int, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::GenerateGroupIDKey(unsigned int, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::DeleteAppKey(std::__h::basic_string, std::__h::allocator> const&, int)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::DeleteGroupIDKey(unsigned int, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::GetUserAllAppKey(int, std::__h::vector, std::__h::allocator>>, std::__h::allocator, std::__h::allocator>>>>&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::ChangeUserAppkeysLoadInfo(int, std::__h::vector, std::__h::allocator>, bool>, std::__h::allocator, std::__h::allocator>, bool>>>&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::GetUserAppKey(int, std::__h::vector, std::__h::allocator>>, std::__h::allocator, std::__h::allocator>>>>&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::RegisterCallback(OHOS::sptr const&)"; + "OHOS::Security::AccessToken::El5FilekeyManagerKit::SetFilePathPolicy()"; + "OHOS::Security::AccessToken::El5FilekeyCallbackStub::El5FilekeyCallbackStub()"; + "OHOS::Security::AccessToken::El5FilekeyCallbackStub::~El5FilekeyCallbackStub()"; + "OHOS::Security::AccessToken::El5FilekeyCallbackStub::OnRemoteRequest(unsigned int, OHOS::MessageParcel&, OHOS::MessageParcel&, OHOS::MessageOption&)"; + "OHOS::Security::AccessToken::AppKeyInfo::Unmarshalling(OHOS::Parcel&)"; + "OHOS::Security::AccessToken::AppKeyInfo::Marshalling(OHOS::Parcel&) const"; + "non-virtual thunk to OHOS::Security::AccessToken::El5FilekeyCallbackStub::~El5FilekeyCallbackStub()"; + "virtual thunk to OHOS::Security::AccessToken::El5FilekeyCallbackStub::~El5FilekeyCallbackStub()"; + "VTT for OHOS::Security::AccessToken::AppKeyInfo"; + "vtable for OHOS::Security::AccessToken::AppKeyInfo"; + ""; + }; + local: + *; +}; \ No newline at end of file diff --git a/interfaces/innerkits/accesstoken/BUILD.gn b/interfaces/innerkits/accesstoken/BUILD.gn index 72f24f1d6..a9cb5e550 100644 --- a/interfaces/innerkits/accesstoken/BUILD.gn +++ b/interfaces/innerkits/accesstoken/BUILD.gn @@ -102,6 +102,11 @@ if (is_standard_system) { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libtokenid_sdk.map" + } + branch_protector_ret = "pac_ret" innerapi_tags = [ "platformsdk", diff --git a/interfaces/innerkits/accesstoken/libaccesstoken_sdk.map b/interfaces/innerkits/accesstoken/libaccesstoken_sdk.map index 19192e683..0c78aa073 100644 --- a/interfaces/innerkits/accesstoken/libaccesstoken_sdk.map +++ b/interfaces/innerkits/accesstoken/libaccesstoken_sdk.map @@ -45,6 +45,7 @@ "OHOS::Security::AccessToken::AccessTokenKit::DeleteRemoteDeviceTokens(std::__h::basic_string, std::__h::allocator> const&)"; "OHOS::Security::AccessToken::PermStateChangeCallbackCustomize::~PermStateChangeCallbackCustomize()"; "OHOS::Security::AccessToken::AccessTokenKit::GetDefPermission(std::__h::basic_string, std::__h::allocator> const&, OHOS::Security::AccessToken::PermissionDef&)"; + "OHOS::Security::AccessToken::AccessTokenKit::GetDefPermissions(unsigned int, std::__h::vector>&)"; "OHOS::Security::AccessToken::AccessTokenKit::GetReqPermissions(unsigned int, std::__h::vector>&, bool)"; "OHOS::Security::AccessToken::AccessTokenKit::VerifyAccessToken(unsigned int, std::__h::basic_string, std::__h::allocator> const&)"; "OHOS::Security::AccessToken::AccessTokenKit::VerifyAccessToken(unsigned int, std::__h::basic_string, std::__h::allocator> const&, bool)"; diff --git a/interfaces/innerkits/accesstoken/libtokenid_sdk.map b/interfaces/innerkits/accesstoken/libtokenid_sdk.map new file mode 100644 index 000000000..9d434949a --- /dev/null +++ b/interfaces/innerkits/accesstoken/libtokenid_sdk.map @@ -0,0 +1,28 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "OHOS::Security::AccessToken::TokenIdKit::IsSystemAppByFullTokenID(unsigned long long)"; + "OHOS::Security::AccessToken::TokenIdKit::IsSystemAppByFullTokenID(unsigned long)"; + "OHOS::Security::AccessToken::TokenIdKit::GetRenderTokenID(unsigned long long)"; + "OHOS::Security::AccessToken::TokenIdKit::GetRenderTokenID(unsigned long)"; + "GetSelfTokenID"; + "SetSelfTokenID"; + "SetFirstCallerTokenID"; + ""; + }; + local: + *; +}; diff --git a/interfaces/innerkits/analysis_model/BUILD.gn b/interfaces/innerkits/analysis_model/BUILD.gn index dd19cabba..ba437bcec 100644 --- a/interfaces/innerkits/analysis_model/BUILD.gn +++ b/interfaces/innerkits/analysis_model/BUILD.gn @@ -28,6 +28,12 @@ if (is_standard_system) { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libcodesignature_analysis.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" public_configs = [ ":accesstoken" ] diff --git a/interfaces/innerkits/analysis_model/libcodesignature_analysis.map b/interfaces/innerkits/analysis_model/libcodesignature_analysis.map new file mode 100644 index 000000000..584482d09 --- /dev/null +++ b/interfaces/innerkits/analysis_model/libcodesignature_analysis.map @@ -0,0 +1,22 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "GetModelApi"; + ""; + }; + local: + *; +}; diff --git a/interfaces/innerkits/nativetoken/BUILD.gn b/interfaces/innerkits/nativetoken/BUILD.gn index 1caeae894..c3c7cf9fa 100644 --- a/interfaces/innerkits/nativetoken/BUILD.gn +++ b/interfaces/innerkits/nativetoken/BUILD.gn @@ -63,6 +63,12 @@ if (is_standard_system) { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libnativetoken_shared.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" innerapi_tags = [ "platformsdk" ] public_configs = [ ":accesstokenlib" ] diff --git a/interfaces/innerkits/nativetoken/libnativetoken_shared.map b/interfaces/innerkits/nativetoken/libnativetoken_shared.map new file mode 100644 index 000000000..57b5d5275 --- /dev/null +++ b/interfaces/innerkits/nativetoken/libnativetoken_shared.map @@ -0,0 +1,43 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "g_isNativeTokenInited"; + "g_tokenListHead"; + "GetAccessTokenId"; + "GetFileBuff"; + "AtlibInit"; + "UpdateGoalItemFromRecord"; + "GetInfoArrFromJson"; + "GetAplFromJson"; + "GetTokenIdFromJson"; + "GetProcessNameFromJson"; + "FreeStrArray"; + "cJSON_GetObjectItemCaseSensitive"; + "cJSON_IsString"; + "cJSON_CreateArray"; + "cJSON_CreateString"; + "cJSON_AddItemToArray"; + "cJSON_CreateObject"; + "cJSON_HasObjectItem"; + "cJSON_GetStringValue"; + "cJSON_GetNumberValue"; + "cJSON_Parse"; + "cJSON_Delete"; + ""; + }; + local: + *; +}; \ No newline at end of file diff --git a/interfaces/innerkits/token_setproc/BUILD.gn b/interfaces/innerkits/token_setproc/BUILD.gn index 0b0d7d83a..bfa1d1727 100644 --- a/interfaces/innerkits/token_setproc/BUILD.gn +++ b/interfaces/innerkits/token_setproc/BUILD.gn @@ -43,6 +43,11 @@ if (is_standard_system) { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libtokensetproc_shared.map" + } + branch_protector_ret = "pac_ret" innerapi_tags = [ "platformsdk" ] public_configs = [ ":setproc_config" ] diff --git a/interfaces/innerkits/token_setproc/libtokensetproc_shared.map b/interfaces/innerkits/token_setproc/libtokensetproc_shared.map new file mode 100644 index 000000000..dcd17b599 --- /dev/null +++ b/interfaces/innerkits/token_setproc/libtokensetproc_shared.map @@ -0,0 +1,24 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "GetSelfTokenID"; + "SetSelfTokenID"; + "SetFirstCallerTokenID"; + "GetFirstCallerTokenID"; + }; + local: + *; +}; diff --git a/interfaces/innerkits/tokensync/BUILD.gn b/interfaces/innerkits/tokensync/BUILD.gn index 4053b2bf1..290678205 100644 --- a/interfaces/innerkits/tokensync/BUILD.gn +++ b/interfaces/innerkits/tokensync/BUILD.gn @@ -28,6 +28,12 @@ if (is_standard_system) { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "libtokensync_sdk.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" output_name = "libtokensync_sdk" diff --git a/interfaces/innerkits/tokensync/libtokensync_sdk.map b/interfaces/innerkits/tokensync/libtokensync_sdk.map new file mode 100644 index 000000000..c9dc8f6ac --- /dev/null +++ b/interfaces/innerkits/tokensync/libtokensync_sdk.map @@ -0,0 +1,24 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "OHOS::Security::AccessToken::TokenSyncManagerClient::GetInstance()"; + "OHOS::Security::AccessToken::TokenSyncManagerClient::DeleteRemoteHapTokenInfo(unsigned int) const"; + "OHOS::Security::AccessToken::TokenSyncManagerClient::GetRemoteHapTokenInfo(std::__h::basic_string, std::__h::allocator> const&, unsigned int) const"; + "OHOS::Security::AccessToken::TokenSyncManagerClient::UpdateRemoteHapTokenInfo(OHOS::Security::AccessToken::HapTokenInfoForSync const&) const"; + }; + local: + *; +}; diff --git a/interfaces/kits/capi/accesstoken/BUILD.gn b/interfaces/kits/capi/accesstoken/BUILD.gn index 11093e09e..481c0c4fc 100644 --- a/interfaces/kits/capi/accesstoken/BUILD.gn +++ b/interfaces/kits/capi/accesstoken/BUILD.gn @@ -34,6 +34,8 @@ ohos_shared_library("libability_access_control") { sources = [ "src/ability_access_control.cpp" ] + shlib_type = "sa" + deps = [ "${access_token_path}/interfaces/innerkits/accesstoken:libaccesstoken_sdk", "${access_token_path}/interfaces/innerkits/token_setproc:libtokensetproc_shared", diff --git a/interfaces/kits/cj/accesstoken/BUILD.gn b/interfaces/kits/cj/accesstoken/BUILD.gn index b2af68dca..d442e5512 100644 --- a/interfaces/kits/cj/accesstoken/BUILD.gn +++ b/interfaces/kits/cj/accesstoken/BUILD.gn @@ -24,6 +24,12 @@ ohos_shared_library("cj_ability_access_ctrl_ffi") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "cj_ability_access_ctrl_ffi.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ "${access_token_path}/frameworks/common/include", diff --git a/interfaces/kits/cj/accesstoken/cj_ability_access_ctrl_ffi.map b/interfaces/kits/cj/accesstoken/cj_ability_access_ctrl_ffi.map new file mode 100644 index 000000000..a69d7520b --- /dev/null +++ b/interfaces/kits/cj/accesstoken/cj_ability_access_ctrl_ffi.map @@ -0,0 +1,25 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "FfiOHOSAbilityAccessCtrlCheckAccessTokenSync"; + "FfiOHOSAbilityAccessCtrlRequestGlobalSwitch"; + "FfiOHOSAbilityAccessCtrlRequestPermissionOnSetting"; + "FfiOHOSAbilityAccessCtrlRequestPermissionsFromUser"; + "FfiOHOSAbilityAccessCtrlRequestPermissionsFromUserByStdFunc"; + }; + local: + *; +}; \ No newline at end of file diff --git a/interfaces/kits/cj/screenlockfilemanager/BUILD.gn b/interfaces/kits/cj/screenlockfilemanager/BUILD.gn index ff1dd353d..5d7607068 100644 --- a/interfaces/kits/cj/screenlockfilemanager/BUILD.gn +++ b/interfaces/kits/cj/screenlockfilemanager/BUILD.gn @@ -24,6 +24,12 @@ ohos_shared_library("cj_screen_lock_file_manager_ffi") { cfi_cross_dso = true debug = false } + + if (!use_clang_coverage) { + version_script = "cj_screen_lock_file_manager_ffi.map" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ "${access_token_path}/frameworks/inner_api/el5filekeymanager/include", diff --git a/interfaces/kits/cj/screenlockfilemanager/cj_screen_lock_file_manager_ffi.map b/interfaces/kits/cj/screenlockfilemanager/cj_screen_lock_file_manager_ffi.map new file mode 100644 index 000000000..f6e397a66 --- /dev/null +++ b/interfaces/kits/cj/screenlockfilemanager/cj_screen_lock_file_manager_ffi.map @@ -0,0 +1,22 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "FfiOHOSScreenLockFileManagerAcquireAccess"; + "FfiOHOSScreenLockFileManagerReleaseAccess"; + }; + local: + *; +}; \ No newline at end of file diff --git a/services/common/ability_manager/BUILD.gn b/services/common/ability_manager/BUILD.gn index ba8f9d65f..23c3bed94 100644 --- a/services/common/ability_manager/BUILD.gn +++ b/services/common/ability_manager/BUILD.gn @@ -29,6 +29,9 @@ ohos_shared_library("accesstoken_ability_manager_adapter") { cfi_cross_dso = true debug = false } + + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ diff --git a/services/common/app_manager/BUILD.gn b/services/common/app_manager/BUILD.gn index a6026e7f2..2b819f6f6 100644 --- a/services/common/app_manager/BUILD.gn +++ b/services/common/app_manager/BUILD.gn @@ -22,6 +22,9 @@ ohos_shared_library("accesstoken_app_manager") { cfi_cross_dso = true debug = false } + + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ diff --git a/services/common/json_parse/BUILD.gn b/services/common/json_parse/BUILD.gn index 6b340009f..5b8894711 100644 --- a/services/common/json_parse/BUILD.gn +++ b/services/common/json_parse/BUILD.gn @@ -28,6 +28,9 @@ ohos_shared_library("accesstoken_json_parse") { cfi_cross_dso = true debug = false } + + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ @@ -73,6 +76,12 @@ ohos_shared_library("accesstoken_cjson_utils") { cfi_cross_dso = true debug = false } + if (!use_clang_coverage) { + version_script = "accesstoken_cjson_utils.map" + shlib_type = "sa" + } + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ diff --git a/services/common/json_parse/accesstoken_cjson_utils.map b/services/common/json_parse/accesstoken_cjson_utils.map new file mode 100644 index 000000000..adae03dd9 --- /dev/null +++ b/services/common/json_parse/accesstoken_cjson_utils.map @@ -0,0 +1,39 @@ +# Copyright (c) 2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +1.0 { + global: + extern "C++" { + "OHOS::Security::AccessToken::GetStringFromJson(cJSON const*, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator>&)"; + "OHOS::Security::AccessToken::GetIntFromJson(cJSON const*, std::__h::basic_string, std::__h::allocator> const&, int&)"; + "OHOS::Security::AccessToken::CreateJson()"; + "OHOS::Security::AccessToken::AddStringToJson(std::__h::unique_ptr>&, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::AddIntToJson(std::__h::unique_ptr>&, std::__h::basic_string, std::__h::allocator> const&, int)"; + "OHOS::Security::AccessToken::AddStringToJson(cJSON*, std::__h::basic_string, std::__h::allocator> const&, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::AddIntToJson(cJSON*, std::__h::basic_string, std::__h::allocator> const&, int)"; + "OHOS::Security::AccessToken::AddUnsignedIntToJson(cJSON*, std::__h::basic_string, std::__h::allocator> const&, unsigned int)"; + "OHOS::Security::AccessToken::CreateJsonArray()"; + "OHOS::Security::AccessToken::AddObjToArray(std::__h::unique_ptr>&, std::__h::unique_ptr>&)"; + "OHOS::Security::AccessToken::AddUnsignedIntToJson(std::__h::unique_ptr>&, std::__h::basic_string, std::__h::allocator> const&, unsigned int)"; + "OHOS::Security::AccessToken::AddObjToJson(std::__h::unique_ptr>&, std::__h::basic_string, std::__h::allocator> const&, std::__h::unique_ptr>&)"; + "OHOS::Security::AccessToken::GetUnsignedIntFromJson(cJSON const*, std::__h::basic_string, std::__h::allocator> const&, unsigned int&)"; + "OHOS::Security::AccessToken::GetArrayFromJson(cJSON const*, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::PackJsonToString(std::__h::unique_ptr> const&)"; + "OHOS::Security::AccessToken::CreateJsonFromString(std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::GetUnsignedIntFromJson(std::__h::unique_ptr> const&, std::__h::basic_string, std::__h::allocator> const&, unsigned int&)"; + "OHOS::Security::AccessToken::GetObjFromJson(std::__h::unique_ptr>&, std::__h::basic_string, std::__h::allocator> const&)"; + "OHOS::Security::AccessToken::AddObjToArray(cJSON*, cJSON*)"; + }; + local: + *; +}; \ No newline at end of file diff --git a/services/common/screenlock_manager/BUILD.gn b/services/common/screenlock_manager/BUILD.gn index 8a03c4ba4..c51e92a88 100644 --- a/services/common/screenlock_manager/BUILD.gn +++ b/services/common/screenlock_manager/BUILD.gn @@ -28,6 +28,9 @@ ohos_shared_library("accesstoken_screenlock_manager") { cfi_cross_dso = true debug = false } + + shlib_type = "sa" + branch_protector_ret = "pac_ret" include_dirs = [ "include" ] -- Gitee From 4a003e638073c7e16b9ef863474cd03b6e3f4495 Mon Sep 17 00:00:00 2001 From: luowei Date: Thu, 13 Mar 2025 20:37:00 +0800 Subject: [PATCH 2/3] sa symbol opt Signed-off-by: luowei --- services/accesstokenmanager/BUILD.gn | 3 +++ services/accesstokenmanager/test/unittest/BUILD.gn | 2 ++ services/privacymanager/BUILD.gn | 3 +++ services/privacymanager/test/unittest/BUILD.gn | 1 + services/tokensyncmanager/BUILD.gn | 1 + 5 files changed, 10 insertions(+) diff --git a/services/accesstokenmanager/BUILD.gn b/services/accesstokenmanager/BUILD.gn index 9fa2fc93c..66603c07f 100644 --- a/services/accesstokenmanager/BUILD.gn +++ b/services/accesstokenmanager/BUILD.gn @@ -126,6 +126,9 @@ if (is_standard_system) { "${access_token_path}/services/accesstokenmanager:access_token.rc", "${access_token_path}/services/accesstokenmanager:permission_definition_config", "${access_token_path}/services/common:accesstoken_service_common", + "${access_token_path}/service/common/ability_manager:accesstoken_ability_manager_adapter", + "${access_token_path}/service/common/json_parse:accesstoken_json_parse", + "${access_token_path}/interfaces/innerkits/tokensync:libtokensync_sdk", ] deps += [ "etc:param_files" ] diff --git a/services/accesstokenmanager/test/unittest/BUILD.gn b/services/accesstokenmanager/test/unittest/BUILD.gn index 812c0a2a1..58119f0bc 100644 --- a/services/accesstokenmanager/test/unittest/BUILD.gn +++ b/services/accesstokenmanager/test/unittest/BUILD.gn @@ -114,6 +114,8 @@ ohos_unittest("libaccesstoken_manager_service_standard_test") { "${access_token_path}/interfaces/innerkits/token_setproc:libperm_setproc", "${access_token_path}/interfaces/innerkits/token_setproc:libtokensetproc_shared", "${access_token_path}/services/common:accesstoken_service_common", + "${access_token_path}/services/accesstokenmanager:accesstoken_manager_service", + "${access_token_path}/interfaces/innerkits/tokensync:libtokensync_sdk", ] external_deps = [ diff --git a/services/privacymanager/BUILD.gn b/services/privacymanager/BUILD.gn index 24f932dbd..191df560d 100644 --- a/services/privacymanager/BUILD.gn +++ b/services/privacymanager/BUILD.gn @@ -109,6 +109,9 @@ if (is_standard_system && ability_base_enable == true) { "${access_token_path}/services/common:accesstoken_service_common", "${access_token_path}/services/common/proxy_death:proxy_death_handler", "${access_token_path}/services/privacymanager:privacy.rc", + "${access_token_path}/services/common/screenlock_manager:accesstoken_screenlock_manager", + "${access_token_path}/service/common/ability_manager:accesstoken_ability_manager_adapter", + "${access_token_path}/service/common/json_parse:accesstoken_json_parse", ] external_deps = [ diff --git a/services/privacymanager/test/unittest/BUILD.gn b/services/privacymanager/test/unittest/BUILD.gn index 1520b904c..5ccc6d143 100644 --- a/services/privacymanager/test/unittest/BUILD.gn +++ b/services/privacymanager/test/unittest/BUILD.gn @@ -92,6 +92,7 @@ if (is_standard_system && ability_base_enable == true) { "${access_token_path}/services/common/proxy_death:proxy_death_handler", "${access_token_path}/services/common/proxy_death:proxy_death_stub", "${access_token_path}/services/privacymanager:privacy_manager_service", + "${access_token_path}/services/accesstokenmanager:accesstoken_manager_service", ] external_deps = [ diff --git a/services/tokensyncmanager/BUILD.gn b/services/tokensyncmanager/BUILD.gn index 74841d7b3..d266adb6a 100644 --- a/services/tokensyncmanager/BUILD.gn +++ b/services/tokensyncmanager/BUILD.gn @@ -105,6 +105,7 @@ if (token_sync_enable == true) { "${access_token_path}/services/common:accesstoken_service_common", "${access_token_path}/services/common/json_parse:accesstoken_cjson_utils", "${access_token_path}/services/tokensyncmanager:token_sync.rc", + "${access_token_path}/service/common/json_parse:accesstoken_json_parse", ] external_deps = [ -- Gitee From 7e7d991561b07cb0713a58ec12773a136921dadb Mon Sep 17 00:00:00 2001 From: luowei Date: Thu, 13 Mar 2025 20:49:39 +0800 Subject: [PATCH 3/3] sa symbol opt Signed-off-by: luowei --- services/accesstokenmanager/BUILD.gn | 4 ++-- services/privacymanager/BUILD.gn | 4 ++-- services/tokensyncmanager/BUILD.gn | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/services/accesstokenmanager/BUILD.gn b/services/accesstokenmanager/BUILD.gn index 66603c07f..21291cfea 100644 --- a/services/accesstokenmanager/BUILD.gn +++ b/services/accesstokenmanager/BUILD.gn @@ -126,8 +126,8 @@ if (is_standard_system) { "${access_token_path}/services/accesstokenmanager:access_token.rc", "${access_token_path}/services/accesstokenmanager:permission_definition_config", "${access_token_path}/services/common:accesstoken_service_common", - "${access_token_path}/service/common/ability_manager:accesstoken_ability_manager_adapter", - "${access_token_path}/service/common/json_parse:accesstoken_json_parse", + "${access_token_path}/services/common/ability_manager:accesstoken_ability_manager_adapter", + "${access_token_path}/services/common/json_parse:accesstoken_json_parse", "${access_token_path}/interfaces/innerkits/tokensync:libtokensync_sdk", ] diff --git a/services/privacymanager/BUILD.gn b/services/privacymanager/BUILD.gn index 191df560d..eecfde09e 100644 --- a/services/privacymanager/BUILD.gn +++ b/services/privacymanager/BUILD.gn @@ -110,8 +110,8 @@ if (is_standard_system && ability_base_enable == true) { "${access_token_path}/services/common/proxy_death:proxy_death_handler", "${access_token_path}/services/privacymanager:privacy.rc", "${access_token_path}/services/common/screenlock_manager:accesstoken_screenlock_manager", - "${access_token_path}/service/common/ability_manager:accesstoken_ability_manager_adapter", - "${access_token_path}/service/common/json_parse:accesstoken_json_parse", + "${access_token_path}/services/common/ability_manager:accesstoken_ability_manager_adapter", + "${access_token_path}/services/common/json_parse:accesstoken_json_parse", ] external_deps = [ diff --git a/services/tokensyncmanager/BUILD.gn b/services/tokensyncmanager/BUILD.gn index d266adb6a..5aff2af7a 100644 --- a/services/tokensyncmanager/BUILD.gn +++ b/services/tokensyncmanager/BUILD.gn @@ -105,7 +105,7 @@ if (token_sync_enable == true) { "${access_token_path}/services/common:accesstoken_service_common", "${access_token_path}/services/common/json_parse:accesstoken_cjson_utils", "${access_token_path}/services/tokensyncmanager:token_sync.rc", - "${access_token_path}/service/common/json_parse:accesstoken_json_parse", + "${access_token_path}/services/common/json_parse:accesstoken_json_parse", ] external_deps = [ -- Gitee