diff --git a/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp b/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp index 775f089b9d33def4a03347d35aac75b2250c330e..974f06437fd637d5ca16c81f19fa96b2b1c0b160 100644 --- a/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp +++ b/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp @@ -703,7 +703,7 @@ void AccessTokenManagerClient::InitProxy() if (serviceDeathObserver_ != nullptr) { accesstokenSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(accesstokenSa); + proxy_ = new AccessTokenManagerProxy(accesstokenSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/interfaces/innerkits/privacy/src/privacy_manager_client.cpp b/interfaces/innerkits/privacy/src/privacy_manager_client.cpp index da21a0d51599d9853dc92082c0ab8f3de0187a2c..3a60558efe0640deaac40e514277b8f7476234c9 100644 --- a/interfaces/innerkits/privacy/src/privacy_manager_client.cpp +++ b/interfaces/innerkits/privacy/src/privacy_manager_client.cpp @@ -405,7 +405,7 @@ void PrivacyManagerClient::InitProxy() if (serviceDeathObserver_ != nullptr) { privacySa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(privacySa); + proxy_ = new PrivacyManagerProxy(privacySa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_DEBUG(LABEL, "Iface_cast get null"); } diff --git a/interfaces/innerkits/privacy/test/unittest/app_manager_client/app_manager_access_client.cpp b/interfaces/innerkits/privacy/test/unittest/app_manager_client/app_manager_access_client.cpp index 4953e8dc9d9f863a8d62660bf21ff4a56ca20f6d..b3d15a925f752146e70946d47c3045f201d95f42 100644 --- a/interfaces/innerkits/privacy/test/unittest/app_manager_client/app_manager_access_client.cpp +++ b/interfaces/innerkits/privacy/test/unittest/app_manager_client/app_manager_access_client.cpp @@ -74,7 +74,7 @@ void AppManagerAccessClient::InitProxy() return; } - proxy_ = iface_cast(appManagerSa); + proxy_ = new AppManagerAccessProxy(appManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp b/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp index df0f344eeb8dc7e0d982c6d69e902da328ce3bdf..d3b426245632279eaac28e053e6c036baa1d732a 100644 --- a/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp +++ b/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp @@ -19,6 +19,7 @@ #include "hap_token_info_for_sync_parcel.h" #include "native_token_info_for_sync_parcel.h" #include "iservice_registry.h" +#include "token_sync_manager_proxy.h" namespace OHOS { namespace Security { @@ -96,7 +97,7 @@ sptr TokenSyncManagerClient::GetProxy() const return nullptr; } - auto proxy = iface_cast(tokensyncSa); + auto proxy = new TokenSyncManagerProxy(tokensyncSa); if (proxy == nullptr) { ACCESSTOKEN_LOG_WARN(LABEL, "Iface_cast get null"); return nullptr; diff --git a/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp b/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp index 0b315c218bdee5965abbbdaf28bd1f41b071b2da..7f45464045ee5221b8f146ec867c37201a527daf 100644 --- a/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp @@ -140,7 +140,7 @@ void CallbackManager::ExcuteAllCallback(std::vector>& list, for (auto it = list.begin(); it != list.end(); ++it) { #ifdef RESOURCESCHEDULE_FFRT_ENABLE auto callbackSingle = [it, tokenID, permName, changeType]() { - auto callback = iface_cast(*it); + sptr callback = new PermissionStateChangeCallbackProxy(*it); if (callback != nullptr) { ACCESSTOKEN_LOG_INFO(LABEL, "Callback execute"); PermStateChangeInfo resInfo; @@ -153,7 +153,7 @@ void CallbackManager::ExcuteAllCallback(std::vector>& list, }; ffrt::submit(callbackSingle, {}, {}, ffrt::task_attr().qos(ffrt::qos_default)); #else - auto callback = iface_cast(*it); + sptr callback = new PermissionStateChangeCallbackProxy(*it); if (callback != nullptr) { ACCESSTOKEN_LOG_INFO(LABEL, "Callback execute"); PermStateChangeInfo resInfo; diff --git a/services/accesstokenmanager/main/cpp/src/form_manager/form_manager_access_client.cpp b/services/accesstokenmanager/main/cpp/src/form_manager/form_manager_access_client.cpp index 8909f95b27bf9f18beba06131793a36f5dff7c00..2e361760282b61e511f370b539ae6e5a57abd87c 100644 --- a/services/accesstokenmanager/main/cpp/src/form_manager/form_manager_access_client.cpp +++ b/services/accesstokenmanager/main/cpp/src/form_manager/form_manager_access_client.cpp @@ -109,7 +109,7 @@ void FormManagerAccessClient::InitProxy() formManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(formManagerSa); + proxy_ = new FormManagerAccessProxy(formManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null."); } diff --git a/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp b/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp index 0990114cc1cb1f59af7fc35d682eda4943376969..b5f075e84e93f5e576529ab220919f3947998828 100644 --- a/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp +++ b/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp @@ -166,7 +166,7 @@ int32_t TokenModifyNotifier::GetRemoteHapTokenInfo(const std::string& deviceID, int32_t TokenModifyNotifier::RegisterTokenSyncCallback(const sptr& callback) { Utils::UniqueWriteGuard infoGuard(this->Notifylock_); - tokenSyncCallbackObject_ = iface_cast(callback); + tokenSyncCallbackObject_ = new TokenSyncCallbackProxy(callback); tokenSyncCallbackDeathRecipient_ = sptr::MakeSptr(); callback->AddDeathRecipient(tokenSyncCallbackDeathRecipient_); ACCESSTOKEN_LOG_INFO(LABEL, "Register token sync callback successful."); diff --git a/services/common/ability_manager/src/ability_manager_access_client.cpp b/services/common/ability_manager/src/ability_manager_access_client.cpp index a4b75d32ed8873418030e081fec1f87e302901e1..c61859ce529a31d00cea2a4e67d5432ca5cebfb5 100644 --- a/services/common/ability_manager/src/ability_manager_access_client.cpp +++ b/services/common/ability_manager/src/ability_manager_access_client.cpp @@ -90,7 +90,7 @@ void AbilityManagerAccessClient::InitProxy() return; } - proxy_ = iface_cast(abilityManagerSa); + proxy_ = new AbilityManagerAccessProxy(abilityManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/services/common/app_manager/src/app_manager_access_client.cpp b/services/common/app_manager/src/app_manager_access_client.cpp index 438bae7205da93d1902768b76dc378044e81cef8..766e49cef9f4591a4d801c421d39a16f29c8c6c2 100644 --- a/services/common/app_manager/src/app_manager_access_client.cpp +++ b/services/common/app_manager/src/app_manager_access_client.cpp @@ -123,7 +123,7 @@ void AppManagerAccessClient::InitProxy() appManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(appManagerSa); + proxy_ = new AppManagerAccessProxy(appManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/services/common/app_manager/src/app_manager_access_proxy.cpp b/services/common/app_manager/src/app_manager_access_proxy.cpp index 08749de44087fa1810a558ad6c36fef34674f17a..6ccb979d93e533c6eaa1942feb51387154089761 100644 --- a/services/common/app_manager/src/app_manager_access_proxy.cpp +++ b/services/common/app_manager/src/app_manager_access_proxy.cpp @@ -45,7 +45,7 @@ sptr AppManagerAccessProxy::GetAmsMgr() return nullptr; } sptr object = reply.ReadRemoteObject(); - sptr amsMgr = iface_cast(object); + sptr amsMgr = new AmsManagerAccessProxy(object); if (!amsMgr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Ability manager service instance is nullptr. "); return nullptr; diff --git a/services/common/background_task_manager/src/background_task_manager_access_client.cpp b/services/common/background_task_manager/src/background_task_manager_access_client.cpp index a9678e179c0d53d68ccfc729311e10d95b25b34a..031ff39890c2dc1bee3e368df249437801c36a36 100644 --- a/services/common/background_task_manager/src/background_task_manager_access_client.cpp +++ b/services/common/background_task_manager/src/background_task_manager_access_client.cpp @@ -108,7 +108,7 @@ void BackgourndTaskManagerAccessClient::InitProxy() backgroundTaskManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(backgroundTaskManagerSa); + proxy_ = new BackgroundTaskManagerAccessProxy(backgroundTaskManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/services/common/power_manager/src/power_manager_client.cpp b/services/common/power_manager/src/power_manager_client.cpp index 4b08b71a8cb7d733be5287934bdebaa6225f9453..361699fe8afb6550193dce1391a15d81979bc1c1 100644 --- a/services/common/power_manager/src/power_manager_client.cpp +++ b/services/common/power_manager/src/power_manager_client.cpp @@ -80,7 +80,7 @@ void PowerMgrClient::InitProxy() powerManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(powerManagerSa); + proxy_ = new PowerMgrProxy(powerManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/services/common/window_manager/src/privacy_window_manager_client.cpp b/services/common/window_manager/src/privacy_window_manager_client.cpp index 2851b983272b9e293a44677efcc3c78d7437efb3..de8783446c370ee4c96873dbae4d3d5c443663fb 100644 --- a/services/common/window_manager/src/privacy_window_manager_client.cpp +++ b/services/common/window_manager/src/privacy_window_manager_client.cpp @@ -135,7 +135,7 @@ void PrivacyWindowManagerClient::InitSessionManagerServiceProxy() ACCESSTOKEN_LOG_ERROR(LABEL, "Remote object is nullptr"); return; } - mockSessionManagerServiceProxy_ = iface_cast(remoteObject); + mockSessionManagerServiceProxy_ = new PrivacyMockSessionManagerProxy(remoteObject); if (!mockSessionManagerServiceProxy_) { ACCESSTOKEN_LOG_WARN(LABEL, "Get mock session manager service proxy failed, nullptr"); return; @@ -145,7 +145,7 @@ void PrivacyWindowManagerClient::InitSessionManagerServiceProxy() ACCESSTOKEN_LOG_ERROR(LABEL, "Remote object2 is nullptr"); return; } - sessionManagerServiceProxy_ = iface_cast(remoteObject2); + sessionManagerServiceProxy_ = new PrivacySessionManagerProxy(remoteObject2); if (!sessionManagerServiceProxy_) { ACCESSTOKEN_LOG_ERROR(LABEL, "SessionManagerServiceProxy_ is nullptr"); } @@ -166,7 +166,7 @@ void PrivacyWindowManagerClient::InitSceneSessionManagerProxy() ACCESSTOKEN_LOG_WARN(LABEL, "Get scene session manager proxy failed, scene session manager service is null"); return; } - sceneSessionManagerProxy_ = iface_cast(remoteObject); + sceneSessionManagerProxy_ = new PrivacySceneSessionManagerProxy(remoteObject); if (sceneSessionManagerProxy_ == nullptr) { ACCESSTOKEN_LOG_WARN(LABEL, "SceneSessionManagerProxy_ is null."); return; @@ -197,7 +197,7 @@ void PrivacyWindowManagerClient::InitSceneSessionManagerLiteProxy() ACCESSTOKEN_LOG_WARN(LABEL, "Get scene session manager proxy failed, scene session manager service is null"); return; } - sceneSessionManagerLiteProxy_ = iface_cast(remoteObject); + sceneSessionManagerLiteProxy_ = new PrivacySceneSessionManagerLiteProxy(remoteObject); if (sceneSessionManagerLiteProxy_ == nullptr) { ACCESSTOKEN_LOG_WARN(LABEL, "SceneSessionManagerLiteProxy_ is null."); return; @@ -250,7 +250,7 @@ void PrivacyWindowManagerClient::InitWMSProxy() windowManagerSa->AddDeathRecipient(serviceDeathObserver_); } - wmsProxy_ = iface_cast(windowManagerSa); + wmsProxy_ = new PrivacyWindowManagerProxy(windowManagerSa); if (wmsProxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "WmsProxy_ is null."); return; diff --git a/services/privacymanager/src/active/active_status_callback_manager.cpp b/services/privacymanager/src/active/active_status_callback_manager.cpp index b6a82c3082c3077fd693f4c8e53f1aafb328311d..191f5c6fddbf2ca026f8cd391d07f08e99c90f5a 100644 --- a/services/privacymanager/src/active/active_status_callback_manager.cpp +++ b/services/privacymanager/src/active/active_status_callback_manager.cpp @@ -140,7 +140,7 @@ void ActiveStatusCallbackManager::ActiveStatusChange( } } for (auto it = list.begin(); it != list.end(); ++it) { - auto callback = iface_cast(*it); + auto callback = new PermActiveStatusChangeCallbackProxy(*it); if (callback != nullptr) { ActiveChangeResponse resInfo; resInfo.type = changeType; diff --git a/services/privacymanager/src/sensitive/camera_manager/camera_manager_privacy_client.cpp b/services/privacymanager/src/sensitive/camera_manager/camera_manager_privacy_client.cpp index 1cf9401f3b117fff9c413f3e6420e05133e4b2ec..a590ca034db9e45007f51588601000ca36f10916 100644 --- a/services/privacymanager/src/sensitive/camera_manager/camera_manager_privacy_client.cpp +++ b/services/privacymanager/src/sensitive/camera_manager/camera_manager_privacy_client.cpp @@ -90,7 +90,7 @@ void CameraManagerPrivacyClient::InitProxy() cameraManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = iface_cast(cameraManagerSa); + proxy_ = new CameraManagerPrivacyProxy(cameraManagerSa); if (proxy_ == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Iface_cast get null"); } diff --git a/services/privacymanager/src/service/privacy_manager_stub.cpp b/services/privacymanager/src/service/privacy_manager_stub.cpp index 690b507e187348ca5b8299ed0d2ab9e2f8054328..1bba27f574179fdde8b59f8b7a58daa5fdb9cd37 100644 --- a/services/privacymanager/src/service/privacy_manager_stub.cpp +++ b/services/privacymanager/src/service/privacy_manager_stub.cpp @@ -19,6 +19,7 @@ #include "accesstoken_log.h" #include "ipc_skeleton.h" #include "memory_guard.h" +#include "on_permission_used_record_callback_proxy.h" #include "privacy_error.h" #include "string_ex.h" #include "tokenid_kit.h" @@ -232,7 +233,7 @@ void PrivacyManagerStub::GetPermissionUsedRecordsAsyncInner(MessageParcel& data, reply.WriteInt32(PrivacyError::ERR_READ_PARCEL_FAILED); return; } - sptr callback = iface_cast(data.ReadRemoteObject()); + sptr callback = new OnPermissionUsedRecordCallbackProxy(data.ReadRemoteObject()); if (callback == nullptr) { ACCESSTOKEN_LOG_ERROR(LABEL, "Callback is null"); reply.WriteInt32(PrivacyError::ERR_READ_PARCEL_FAILED);