From 4e5bcb0b4668821a3c6b7a190712a8e8461bd527 Mon Sep 17 00:00:00 2001 From: zhouyan Date: Thu, 12 Jun 2025 14:45:22 +0800 Subject: [PATCH] =?UTF-8?q?AI=E5=91=8A=E8=AD=A6=E6=B8=85=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyan Change-Id: I638cc22f0844629d53da903b1dc4b80c22a0a46b --- .../src/el5_filekey_manager_kit_unittest.cpp | 2 +- .../accesstoken/src/accesstoken_manager_client.cpp | 6 +++--- .../test/mock/src/iservice_registry.cpp | 2 +- .../tool/grant_short_term_write_imagevideo.cpp | 2 +- .../privacy/src/privacy_manager_client.cpp | 4 ++-- .../privacy/test/mock/src/iservice_registry.cpp | 2 +- .../test/tool/add_permission_used_record.cpp | 2 +- .../app_manager_access_client.cpp | 4 ++-- .../test/unittest/src/permission_deny_test.cpp | 2 +- .../tokensync/src/token_sync_manager_client.cpp | 4 ++-- .../main/cpp/include/token/token_modify_notifier.h | 2 +- .../main/cpp/src/callback/callback_manager.cpp | 4 ++-- .../main/cpp/src/database/access_token_db.cpp | 2 +- .../form_manager/form_manager_access_client.cpp | 4 ++-- .../src/permission/dlp_permission_set_manager.cpp | 2 +- .../cpp/src/permission/short_grant_manager.cpp | 2 +- .../src/permission/temp_permission_observer.cpp | 2 +- .../cpp/src/seccomp/sec_comp_enhance_agent.cpp | 2 +- .../main/cpp/src/seccomp/sec_comp_monitor.cpp | 2 +- .../src/service/accesstoken_manager_service.cpp | 3 ++- .../cpp/src/token/accesstoken_info_manager.cpp | 2 +- .../src/token/accesstoken_remote_token_manager.cpp | 2 +- .../main/cpp/src/token/token_modify_notifier.cpp | 10 ++++++---- .../test/mock/library_loader_mock.cpp | 2 +- .../src/background_task_manager_access_client.cpp | 4 ++-- .../src/privacy_window_manager_client.cpp | 12 ++++++------ .../src/active/active_status_callback_manager.cpp | 14 +++++++------- .../src/database/permission_used_record_db.cpp | 2 +- .../src/record/permission_record_manager.cpp | 2 +- .../permission_record_manager_coverage_test.cpp | 2 +- .../test/tool/camera_window_create.cpp | 4 ++-- .../unittest/permission_record_manager_test.cpp | 2 +- services/test/mock/aafwk/mock_service_registry.cpp | 6 +++--- .../src/device/device_info_manager.cpp | 2 +- .../src/device/device_info_repository.cpp | 2 +- .../src/remote/remote_command_factory.cpp | 2 +- .../src/remote/remote_command_manager.cpp | 2 +- .../src/remote/soft_bus_manager.cpp | 2 +- .../getpermissionsstatus_fuzzer.cpp | 8 ++++++-- .../getpermissionsstatusstub_fuzzer.cpp | 6 +++++- .../inituserpolicystub_fuzzer.cpp | 6 +++++- .../registerseccompenhancestub_fuzzer.cpp | 2 +- .../setpermdialogcap_fuzzer.cpp | 6 +++++- .../updateuserpolicystub_fuzzer.cpp | 6 +++++- .../getpermissionusedrecordsasyncstub_fuzzer.cpp | 2 +- .../sethapwithfgreminderstub_fuzzer.cpp | 6 +++++- .../setmutepolicystub_fuzzer.cpp | 8 ++++++-- 47 files changed, 105 insertions(+), 74 deletions(-) diff --git a/interfaces/inner_api/el5filekeymanager/test/unittest/src/el5_filekey_manager_kit_unittest.cpp b/interfaces/inner_api/el5filekeymanager/test/unittest/src/el5_filekey_manager_kit_unittest.cpp index 9dcf219fd..32fba8a11 100644 --- a/interfaces/inner_api/el5filekeymanager/test/unittest/src/el5_filekey_manager_kit_unittest.cpp +++ b/interfaces/inner_api/el5filekeymanager/test/unittest/src/el5_filekey_manager_kit_unittest.cpp @@ -191,7 +191,7 @@ HWTEST_F(El5FilekeyManagerKitTest, SetFilePathPolicy001, TestSize.Level1) */ HWTEST_F(El5FilekeyManagerKitTest, RegisterCallback001, TestSize.Level1) { - ASSERT_NE(El5FilekeyManagerKit::RegisterCallback((new TestEl5FilekeyCallback())), EFM_SUCCESS); + ASSERT_NE(El5FilekeyManagerKit::RegisterCallback((new (std::nothrow) TestEl5FilekeyCallback())), EFM_SUCCESS); } /** diff --git a/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp b/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp index 01c325b4d..1f35651ae 100644 --- a/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp +++ b/interfaces/innerkits/accesstoken/src/accesstoken_manager_client.cpp @@ -51,7 +51,7 @@ AccessTokenManagerClient& AccessTokenManagerClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - AccessTokenManagerClient* tmp = new AccessTokenManagerClient(); + AccessTokenManagerClient* tmp = new (std::nothrow) AccessTokenManagerClient(); instance = std::move(tmp); } } @@ -917,7 +917,7 @@ int32_t AccessTokenManagerClient::RegisterTokenSyncCallback( return AccessTokenError::ERR_PARAM_INVALID; } - sptr callback = sptr(new TokenSyncCallback(syncCallback)); + sptr callback = sptr(new (std::nothrow) TokenSyncCallback(syncCallback)); std::lock_guard lock(tokenSyncCallbackMutex_); int32_t res = proxy->RegisterTokenSyncCallback(callback->AsObject()); @@ -1006,7 +1006,7 @@ void AccessTokenManagerClient::InitProxy() if (serviceDeathObserver_ != nullptr) { accesstokenSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = new AccessTokenManagerProxy(accesstokenSa); + proxy_ = new (std::nothrow) AccessTokenManagerProxy(accesstokenSa); if (proxy_ == nullptr || proxy_->AsObject() == nullptr || proxy_->AsObject()->IsObjectDead()) { LOGE(ATM_DOMAIN, ATM_TAG, "Iface_cast get null"); } diff --git a/interfaces/innerkits/accesstoken/test/mock/src/iservice_registry.cpp b/interfaces/innerkits/accesstoken/test/mock/src/iservice_registry.cpp index 3cd3bac8e..35e2ff3b3 100644 --- a/interfaces/innerkits/accesstoken/test/mock/src/iservice_registry.cpp +++ b/interfaces/innerkits/accesstoken/test/mock/src/iservice_registry.cpp @@ -18,7 +18,7 @@ namespace OHOS { SystemAbilityManagerClient& SystemAbilityManagerClient::GetInstance() { - static auto instance = new SystemAbilityManagerClient(); + static auto instance = new (std::nothrow) SystemAbilityManagerClient(); return *instance; } diff --git a/interfaces/innerkits/accesstoken/test/tool/grant_short_term_write_imagevideo.cpp b/interfaces/innerkits/accesstoken/test/tool/grant_short_term_write_imagevideo.cpp index 134d617e6..67d7da3f2 100644 --- a/interfaces/innerkits/accesstoken/test/tool/grant_short_term_write_imagevideo.cpp +++ b/interfaces/innerkits/accesstoken/test/tool/grant_short_term_write_imagevideo.cpp @@ -28,7 +28,7 @@ using namespace OHOS::Security::AccessToken; static void NativeTokenGet() { uint64_t tokenID; - const char **perms = new const char *[1]; // size of array + const char **perms = new (std::nothrow) const char *[1]; // size of array perms[0] = "ohos.permission.GRANT_SHORT_TERM_WRITE_MEDIAVIDEO"; // 0: index NativeTokenInfoParams infoInstance = { diff --git a/interfaces/innerkits/privacy/src/privacy_manager_client.cpp b/interfaces/innerkits/privacy/src/privacy_manager_client.cpp index 2b59b1da1..252571abf 100644 --- a/interfaces/innerkits/privacy/src/privacy_manager_client.cpp +++ b/interfaces/innerkits/privacy/src/privacy_manager_client.cpp @@ -37,7 +37,7 @@ PrivacyManagerClient& PrivacyManagerClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - PrivacyManagerClient* tmp = new PrivacyManagerClient(); + PrivacyManagerClient* tmp = new (std::nothrow) PrivacyManagerClient(); instance = std::move(tmp); } } @@ -416,7 +416,7 @@ void PrivacyManagerClient::InitProxy() if (serviceDeathObserver_ != nullptr) { privacySa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = new PrivacyManagerProxy(privacySa); + proxy_ = new (std::nothrow) PrivacyManagerProxy(privacySa); if (proxy_ == nullptr || proxy_->AsObject() == nullptr || proxy_->AsObject()->IsObjectDead()) { LOGE(PRI_DOMAIN, PRI_TAG, "Iface_cast get null"); } diff --git a/interfaces/innerkits/privacy/test/mock/src/iservice_registry.cpp b/interfaces/innerkits/privacy/test/mock/src/iservice_registry.cpp index 3cd3bac8e..35e2ff3b3 100644 --- a/interfaces/innerkits/privacy/test/mock/src/iservice_registry.cpp +++ b/interfaces/innerkits/privacy/test/mock/src/iservice_registry.cpp @@ -18,7 +18,7 @@ namespace OHOS { SystemAbilityManagerClient& SystemAbilityManagerClient::GetInstance() { - static auto instance = new SystemAbilityManagerClient(); + static auto instance = new (std::nothrow) SystemAbilityManagerClient(); return *instance; } diff --git a/interfaces/innerkits/privacy/test/tool/add_permission_used_record.cpp b/interfaces/innerkits/privacy/test/tool/add_permission_used_record.cpp index a9129820c..4036b6579 100644 --- a/interfaces/innerkits/privacy/test/tool/add_permission_used_record.cpp +++ b/interfaces/innerkits/privacy/test/tool/add_permission_used_record.cpp @@ -28,7 +28,7 @@ using namespace OHOS::Security::AccessToken; static void NativeTokenGet() { uint64_t tokenID; - const char **perms = new const char *[1]; // size of array + const char **perms = new (std::nothrow) const char *[1]; // size of array perms[0] = "ohos.permission.PERMISSION_USED_STATS"; // 0: index NativeTokenInfoParams infoInstance = { 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 84a1a1f02..46e8a18fe 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 @@ -32,7 +32,7 @@ AppManagerAccessClient& AppManagerAccessClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - AppManagerAccessClient* tmp = new AppManagerAccessClient(); + AppManagerAccessClient* tmp = new (std::nothrow) AppManagerAccessClient(); instance = std::move(tmp); } } @@ -72,7 +72,7 @@ void AppManagerAccessClient::InitProxy() return; } - proxy_ = new AppManagerAccessProxy(appManagerSa); + proxy_ = new (std::nothrow) AppManagerAccessProxy(appManagerSa); if (proxy_ == nullptr) { LOGE(PRI_DOMAIN, PRI_TAG, "Iface_cast get null"); } diff --git a/interfaces/innerkits/privacy/test/unittest/src/permission_deny_test.cpp b/interfaces/innerkits/privacy/test/unittest/src/permission_deny_test.cpp index 65d5386c9..243bf63bc 100644 --- a/interfaces/innerkits/privacy/test/unittest/src/permission_deny_test.cpp +++ b/interfaces/innerkits/privacy/test/unittest/src/permission_deny_test.cpp @@ -151,7 +151,7 @@ HWTEST_F(PermDenyTest, GetPermissionUsedRecords001, TestSize.Level0) PermissionUsedResult result; ASSERT_EQ(PrivacyError::ERR_PERMISSION_DENIED, PrivacyKit::GetPermissionUsedRecords(request, result)); - OHOS::sptr callback(new TestCallBack()); + OHOS::sptr callback(new (std::nothrow) TestCallBack()); ASSERT_EQ(PrivacyError::ERR_PERMISSION_DENIED, PrivacyKit::GetPermissionUsedRecords(request, callback)); } diff --git a/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp b/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp index 3df4841c8..6ffd9f19f 100644 --- a/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp +++ b/interfaces/innerkits/tokensync/src/token_sync_manager_client.cpp @@ -33,7 +33,7 @@ TokenSyncManagerClient& TokenSyncManagerClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - TokenSyncManagerClient* tmp = new TokenSyncManagerClient(); + TokenSyncManagerClient* tmp = new (std::nothrow) TokenSyncManagerClient(); instance = std::move(tmp); } } @@ -96,7 +96,7 @@ sptr TokenSyncManagerClient::GetProxy() const return nullptr; } - auto proxy = new TokenSyncManagerProxy(tokensyncSa); + auto proxy = new (std::nothrow) TokenSyncManagerProxy(tokensyncSa); if (proxy == nullptr) { LOGW(ATM_DOMAIN, ATM_TAG, "Iface_cast get null"); return nullptr; diff --git a/services/accesstokenmanager/main/cpp/include/token/token_modify_notifier.h b/services/accesstokenmanager/main/cpp/include/token/token_modify_notifier.h index bff43d416..72303a377 100644 --- a/services/accesstokenmanager/main/cpp/include/token/token_modify_notifier.h +++ b/services/accesstokenmanager/main/cpp/include/token/token_modify_notifier.h @@ -41,7 +41,7 @@ public: void NotifyTokenSyncTask(); int32_t GetRemoteHapTokenInfo(const std::string& deviceID, AccessTokenID tokenID); int32_t RegisterTokenSyncCallback(const sptr& callback); - int32_t UnRegisterTokenSyncCallback(); + void UnRegisterTokenSyncCallback(); private: TokenModifyNotifier(); diff --git a/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp b/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp index a5bb52908..fdf1381ed 100644 --- a/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/callback/callback_manager.cpp @@ -40,7 +40,7 @@ CallbackManager& CallbackManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - CallbackManager* tmp = new CallbackManager(); + CallbackManager* tmp = new (std::nothrow) CallbackManager(); instance = std::move(tmp); } } @@ -130,7 +130,7 @@ void CallbackManager::ExecuteAllCallback(std::vector>& list, const std::string& permName, int32_t changeType) { for (auto it = list.begin(); it != list.end(); ++it) { - sptr callback = new PermissionStateChangeCallbackProxy(*it); + sptr callback = new (std::nothrow) PermissionStateChangeCallbackProxy(*it); if (callback != nullptr) { LOGI(ATM_DOMAIN, ATM_TAG, "Callback execute"); PermStateChangeInfo resInfo; diff --git a/services/accesstokenmanager/main/cpp/src/database/access_token_db.cpp b/services/accesstokenmanager/main/cpp/src/database/access_token_db.cpp index 73e2f2572..b7c17073d 100644 --- a/services/accesstokenmanager/main/cpp/src/database/access_token_db.cpp +++ b/services/accesstokenmanager/main/cpp/src/database/access_token_db.cpp @@ -42,7 +42,7 @@ AccessTokenDb& AccessTokenDb::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - AccessTokenDb* tmp = new AccessTokenDb(); + AccessTokenDb* tmp = new (std::nothrow) AccessTokenDb(); instance = std::move(tmp); } } 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 b7b263614..14b6f58da 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 @@ -32,7 +32,7 @@ FormManagerAccessClient& FormManagerAccessClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - FormManagerAccessClient* tmp = new FormManagerAccessClient(); + FormManagerAccessClient* tmp = new (std::nothrow) FormManagerAccessClient(); instance = std::move(tmp); } } @@ -107,7 +107,7 @@ void FormManagerAccessClient::InitProxy() formManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = new FormManagerAccessProxy(formManagerSa); + proxy_ = new (std::nothrow) FormManagerAccessProxy(formManagerSa); if (proxy_ == nullptr || proxy_->AsObject() == nullptr || proxy_->AsObject()->IsObjectDead()) { LOGE(ATM_DOMAIN, ATM_TAG, "Iface_cast get null."); } diff --git a/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_manager.cpp b/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_manager.cpp index a78ccefb4..a0f7a7a3e 100644 --- a/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/permission/dlp_permission_set_manager.cpp @@ -36,7 +36,7 @@ DlpPermissionSetManager& DlpPermissionSetManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - DlpPermissionSetManager* tmp = new DlpPermissionSetManager(); + DlpPermissionSetManager* tmp = new (std::nothrow) DlpPermissionSetManager(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/permission/short_grant_manager.cpp b/services/accesstokenmanager/main/cpp/src/permission/short_grant_manager.cpp index 0dcb9012b..66554b8e7 100644 --- a/services/accesstokenmanager/main/cpp/src/permission/short_grant_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/permission/short_grant_manager.cpp @@ -42,7 +42,7 @@ ShortGrantManager& ShortGrantManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - ShortGrantManager* tmp = new ShortGrantManager(); + ShortGrantManager* tmp = new (std::nothrow) ShortGrantManager(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/permission/temp_permission_observer.cpp b/services/accesstokenmanager/main/cpp/src/permission/temp_permission_observer.cpp index bcce7368d..a5fb9be59 100644 --- a/services/accesstokenmanager/main/cpp/src/permission/temp_permission_observer.cpp +++ b/services/accesstokenmanager/main/cpp/src/permission/temp_permission_observer.cpp @@ -59,7 +59,7 @@ TempPermissionObserver& TempPermissionObserver::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - TempPermissionObserver* tmp = new TempPermissionObserver(); + TempPermissionObserver* tmp = new (std::nothrow) TempPermissionObserver(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_enhance_agent.cpp b/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_enhance_agent.cpp index 5359bc3b4..077dc4735 100644 --- a/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_enhance_agent.cpp +++ b/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_enhance_agent.cpp @@ -35,7 +35,7 @@ SecCompEnhanceAgent& SecCompEnhanceAgent::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - SecCompEnhanceAgent* tmp = new SecCompEnhanceAgent(); + SecCompEnhanceAgent* tmp = new (std::nothrow) SecCompEnhanceAgent(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_monitor.cpp b/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_monitor.cpp index 1248b5f9b..9686930e6 100644 --- a/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_monitor.cpp +++ b/services/accesstokenmanager/main/cpp/src/seccomp/sec_comp_monitor.cpp @@ -102,7 +102,7 @@ SecCompMonitor& SecCompMonitor::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - SecCompMonitor* tmp = new SecCompMonitor(); + SecCompMonitor* tmp = new (std::nothrow) SecCompMonitor(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp b/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp index 75f4002ab..b4a333560 100644 --- a/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp +++ b/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp @@ -1125,7 +1125,8 @@ int32_t AccessTokenManagerService::UnRegisterTokenSyncCallback() LOGE(ATM_DOMAIN, ATM_TAG, "Permission denied, tokenID=%{public}d", IPCSkeleton::GetCallingTokenID()); return AccessTokenError::ERR_PERMISSION_DENIED; } - return TokenModifyNotifier::GetInstance().UnRegisterTokenSyncCallback(); + TokenModifyNotifier::GetInstance().UnRegisterTokenSyncCallback(); + return ERR_OK; } #endif diff --git a/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp b/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp index 3e4883d07..0355c17c3 100644 --- a/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/token/accesstoken_info_manager.cpp @@ -1019,7 +1019,7 @@ AccessTokenInfoManager& AccessTokenInfoManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - AccessTokenInfoManager* tmp = new AccessTokenInfoManager(); + AccessTokenInfoManager* tmp = new (std::nothrow) AccessTokenInfoManager(); instance = std::move(tmp); } } diff --git a/services/accesstokenmanager/main/cpp/src/token/accesstoken_remote_token_manager.cpp b/services/accesstokenmanager/main/cpp/src/token/accesstoken_remote_token_manager.cpp index 9f80281e0..855fd6335 100644 --- a/services/accesstokenmanager/main/cpp/src/token/accesstoken_remote_token_manager.cpp +++ b/services/accesstokenmanager/main/cpp/src/token/accesstoken_remote_token_manager.cpp @@ -39,7 +39,7 @@ AccessTokenRemoteTokenManager& AccessTokenRemoteTokenManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - AccessTokenRemoteTokenManager* tmp = new AccessTokenRemoteTokenManager(); + AccessTokenRemoteTokenManager* tmp = new (std::nothrow) AccessTokenRemoteTokenManager(); instance = std::move(tmp); } } 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 1592e423e..e4b74f2e7 100644 --- a/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp +++ b/services/accesstokenmanager/main/cpp/src/token/token_modify_notifier.cpp @@ -84,7 +84,7 @@ TokenModifyNotifier& TokenModifyNotifier::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - TokenModifyNotifier* tmp = new TokenModifyNotifier(); + TokenModifyNotifier* tmp = new (std::nothrow) TokenModifyNotifier(); instance = std::move(tmp); } } @@ -175,14 +175,17 @@ int32_t TokenModifyNotifier::GetRemoteHapTokenInfo(const std::string& deviceID, int32_t TokenModifyNotifier::RegisterTokenSyncCallback(const sptr& callback) { Utils::UniqueWriteGuard infoGuard(this->notifyLock_); - tokenSyncCallbackObject_ = new TokenSyncCallbackProxy(callback); + tokenSyncCallbackObject_ = new (std::nothrow) TokenSyncCallbackProxy(callback); tokenSyncCallbackDeathRecipient_ = sptr::MakeSptr(); + if (tokenSyncCallbackDeathRecipient_ == nullptr) { + return RET_FAILED; + } callback->AddDeathRecipient(tokenSyncCallbackDeathRecipient_); LOGI(ATM_DOMAIN, ATM_TAG, "Register token sync callback successful."); return ERR_OK; } -int32_t TokenModifyNotifier::UnRegisterTokenSyncCallback() +void TokenModifyNotifier::UnRegisterTokenSyncCallback() { Utils::UniqueWriteGuard infoGuard(this->notifyLock_); if (tokenSyncCallbackObject_ != nullptr && tokenSyncCallbackDeathRecipient_ != nullptr) { @@ -191,7 +194,6 @@ int32_t TokenModifyNotifier::UnRegisterTokenSyncCallback() tokenSyncCallbackObject_ = nullptr; tokenSyncCallbackDeathRecipient_ = nullptr; LOGI(ATM_DOMAIN, ATM_TAG, "Unregister token sync callback successful."); - return ERR_OK; } void TokenModifyNotifier::NotifyTokenChangedIfNeed() diff --git a/services/accesstokenmanager/test/mock/library_loader_mock.cpp b/services/accesstokenmanager/test/mock/library_loader_mock.cpp index 692d976d3..af81e6ef2 100644 --- a/services/accesstokenmanager/test/mock/library_loader_mock.cpp +++ b/services/accesstokenmanager/test/mock/library_loader_mock.cpp @@ -46,7 +46,7 @@ int32_t AbilityManagerAccessLoaderMock::KillProcessForPermissionUpdate(uint32_t LibraryLoader::LibraryLoader(const std::string& path) { - instance_ = new AbilityManagerAccessLoaderMock(); + instance_ = new (std::nothrow) AbilityManagerAccessLoaderMock(); handle_ = 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 7ae32486c..dde27eedc 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 @@ -32,7 +32,7 @@ BackgourndTaskManagerAccessClient& BackgourndTaskManagerAccessClient::GetInstanc if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - BackgourndTaskManagerAccessClient* tmp = new BackgourndTaskManagerAccessClient(); + BackgourndTaskManagerAccessClient* tmp = new (std::nothrow) BackgourndTaskManagerAccessClient(); instance = std::move(tmp); } } @@ -106,7 +106,7 @@ void BackgourndTaskManagerAccessClient::InitProxy() backgroundTaskManagerSa->AddDeathRecipient(serviceDeathObserver_); } - proxy_ = new BackgroundTaskManagerAccessProxy(backgroundTaskManagerSa); + proxy_ = new (std::nothrow) BackgroundTaskManagerAccessProxy(backgroundTaskManagerSa); if (proxy_ == nullptr || proxy_->AsObject() == nullptr || proxy_->AsObject()->IsObjectDead()) { LOGE(ATM_DOMAIN, ATM_TAG, "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 e005d9039..33f4784e0 100644 --- a/services/common/window_manager/src/privacy_window_manager_client.cpp +++ b/services/common/window_manager/src/privacy_window_manager_client.cpp @@ -41,7 +41,7 @@ PrivacyWindowManagerClient& PrivacyWindowManagerClient::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - PrivacyWindowManagerClient* tmp = new PrivacyWindowManagerClient(); + PrivacyWindowManagerClient* tmp = new (std::nothrow) PrivacyWindowManagerClient(); instance = std::move(tmp); } } @@ -134,7 +134,7 @@ void PrivacyWindowManagerClient::InitSessionManagerServiceProxy() LOGE(PRI_DOMAIN, PRI_TAG, "Remote object is nullptr"); return; } - mockSessionManagerServiceProxy_ = new PrivacyMockSessionManagerProxy(remoteObject); + mockSessionManagerServiceProxy_ = new (std::nothrow) PrivacyMockSessionManagerProxy(remoteObject); if (!mockSessionManagerServiceProxy_ || mockSessionManagerServiceProxy_->AsObject() == nullptr || mockSessionManagerServiceProxy_->AsObject()->IsObjectDead()) { LOGW(PRI_DOMAIN, PRI_TAG, "Get mock session manager service proxy failed, nullptr"); @@ -145,7 +145,7 @@ void PrivacyWindowManagerClient::InitSessionManagerServiceProxy() LOGE(PRI_DOMAIN, PRI_TAG, "Remote object2 is nullptr"); return; } - sessionManagerServiceProxy_ = new PrivacySessionManagerProxy(remoteObject2); + sessionManagerServiceProxy_ = new (std::nothrow) PrivacySessionManagerProxy(remoteObject2); if (!sessionManagerServiceProxy_ || sessionManagerServiceProxy_->AsObject() == nullptr || sessionManagerServiceProxy_->AsObject()->IsObjectDead()) { LOGE(PRI_DOMAIN, PRI_TAG, "SessionManagerServiceProxy_ is nullptr"); @@ -169,7 +169,7 @@ void PrivacyWindowManagerClient::InitSceneSessionManagerProxy() LOGW(PRI_DOMAIN, PRI_TAG, "Get scene session manager proxy failed, scene session manager service is null"); return; } - sceneSessionManagerProxy_ = new PrivacySceneSessionManagerProxy(remoteObject); + sceneSessionManagerProxy_ = new (std::nothrow) PrivacySceneSessionManagerProxy(remoteObject); if (sceneSessionManagerProxy_ == nullptr || sceneSessionManagerProxy_->AsObject() == nullptr || sceneSessionManagerProxy_->AsObject()->IsObjectDead()) { LOGW(PRI_DOMAIN, PRI_TAG, "SceneSessionManagerProxy_ is null."); @@ -202,7 +202,7 @@ void PrivacyWindowManagerClient::InitSceneSessionManagerLiteProxy() LOGW(PRI_DOMAIN, PRI_TAG, "Get scene session manager proxy failed, scene session manager service is null"); return; } - sceneSessionManagerLiteProxy_ = new PrivacySceneSessionManagerLiteProxy(remoteObject); + sceneSessionManagerLiteProxy_ = new (std::nothrow) PrivacySceneSessionManagerLiteProxy(remoteObject); if (sceneSessionManagerLiteProxy_ == nullptr || sceneSessionManagerLiteProxy_->AsObject() == nullptr || sceneSessionManagerLiteProxy_->AsObject()->IsObjectDead()) { LOGW(PRI_DOMAIN, PRI_TAG, "SceneSessionManagerLiteProxy_ is null."); @@ -256,7 +256,7 @@ void PrivacyWindowManagerClient::InitWMSProxy() windowManagerSa->AddDeathRecipient(serviceDeathObserver_); } - wmsProxy_ = new PrivacyWindowManagerProxy(windowManagerSa); + wmsProxy_ = new (std::nothrow) PrivacyWindowManagerProxy(windowManagerSa); if (wmsProxy_ == nullptr || wmsProxy_->AsObject() == nullptr || wmsProxy_->AsObject()->IsObjectDead()) { LOGE(PRI_DOMAIN, PRI_TAG, "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 c202535d6..214eba50f 100644 --- a/services/privacymanager/src/active/active_status_callback_manager.cpp +++ b/services/privacymanager/src/active/active_status_callback_manager.cpp @@ -39,7 +39,7 @@ ActiveStatusCallbackManager& ActiveStatusCallbackManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - ActiveStatusCallbackManager* tmp = new ActiveStatusCallbackManager(); + ActiveStatusCallbackManager* tmp = new (std::nothrow) ActiveStatusCallbackManager(); instance = std::move(tmp); } } @@ -64,7 +64,7 @@ void ActiveStatusCallbackManager::InitEventHandler(const std::shared_ptr& permList, const sptr& callback) + AccessTokenID registerTokenId, const std::vector& permList, const sptr& callback) { if (callback == nullptr) { LOGE(PRI_DOMAIN, PRI_TAG, "Input is nullptr"); @@ -82,7 +82,7 @@ int32_t ActiveStatusCallbackManager::AddCallback( } CallbackData recordInstance; - recordInstance.registerTokenId = regiterTokenId; + recordInstance.registerTokenId = registerTokenId; recordInstance.callbackObject_ = callback; recordInstance.permList_ = permList; @@ -142,11 +142,11 @@ void ActiveStatusCallbackManager::ActiveStatusChange(ActiveChangeResponse& info) } } for (auto it = list.begin(); it != list.end(); ++it) { - sptr callback = new PermActiveStatusChangeCallbackProxy(*it); + sptr callback = new (std::nothrow) PermActiveStatusChangeCallbackProxy(*it); if (callback != nullptr) { - LOGI(PRI_DOMAIN, PRI_TAG, "callback execute callingTokenId %{public}u, tokenId %{public}u, " - "permision %{public}s, changeType %{public}d, usedType %{public}d, pid %{public}d", info.callingTokenID, - info.tokenID, info.permissionName.c_str(), info.type, info.usedType, info.pid); + LOGI(PRI_DOMAIN, PRI_TAG, "Callback execute callingTokenId %{public}u, tokenId %{public}u, " + "permission %{public}s, changeType %{public}d, usedType %{public}d, pid %{public}d", + info.callingTokenID, info.tokenID, info.permissionName.c_str(), info.type, info.usedType, info.pid); callback->ActiveStatusChangeCallback(info); } } diff --git a/services/privacymanager/src/database/permission_used_record_db.cpp b/services/privacymanager/src/database/permission_used_record_db.cpp index ab67470a7..a5545f827 100644 --- a/services/privacymanager/src/database/permission_used_record_db.cpp +++ b/services/privacymanager/src/database/permission_used_record_db.cpp @@ -44,7 +44,7 @@ PermissionUsedRecordDb& PermissionUsedRecordDb::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - PermissionUsedRecordDb* tmp = new PermissionUsedRecordDb(); + PermissionUsedRecordDb* tmp = new (std::nothrow) PermissionUsedRecordDb(); instance = std::move(tmp); } } diff --git a/services/privacymanager/src/record/permission_record_manager.cpp b/services/privacymanager/src/record/permission_record_manager.cpp index 2e57a7ed5..92cd94d65 100644 --- a/services/privacymanager/src/record/permission_record_manager.cpp +++ b/services/privacymanager/src/record/permission_record_manager.cpp @@ -83,7 +83,7 @@ PermissionRecordManager& PermissionRecordManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - PermissionRecordManager* tmp = new PermissionRecordManager(); + PermissionRecordManager* tmp = new (std::nothrow) PermissionRecordManager(); instance = std::move(tmp); } } diff --git a/services/privacymanager/test/coverage/permission_record_manager_coverage_test.cpp b/services/privacymanager/test/coverage/permission_record_manager_coverage_test.cpp index 62ae2ea2a..bdcf99a3b 100644 --- a/services/privacymanager/test/coverage/permission_record_manager_coverage_test.cpp +++ b/services/privacymanager/test/coverage/permission_record_manager_coverage_test.cpp @@ -931,7 +931,7 @@ HWTEST_F(PermissionRecordManagerTest, GetPermissionUsedRecordsAsync001, TestSize request.isRemote = false; request.flag = PermissionUsageFlag::FLAG_PERMISSION_USAGE_SUMMARY_IN_SCREEN_LOCKED; - OHOS::sptr cb(new TestUsedRecordCallback()); + OHOS::sptr cb(new (std::nothrow) TestUsedRecordCallback()); EXPECT_EQ(Constant::SUCCESS, PermissionRecordManager::GetInstance().GetPermissionUsedRecordsAsync(request, cb)); } diff --git a/services/privacymanager/test/tool/camera_window_create.cpp b/services/privacymanager/test/tool/camera_window_create.cpp index ff01ea730..bd4861c3d 100644 --- a/services/privacymanager/test/tool/camera_window_create.cpp +++ b/services/privacymanager/test/tool/camera_window_create.cpp @@ -54,14 +54,14 @@ static sptr CreateWindowScene() sptr listener = nullptr; g_abilityContext_ = std::make_shared(); - sptr scene = new Rosen::WindowScene(); + sptr scene = new (std::nothrow) Rosen::WindowScene(); scene->Init(0, g_abilityContext_, listener); return scene; } static sptr CreateAppFloatingWindow(Rosen::WindowType type, Rosen::Rect rect, std::string name = "") { - sptr option = new Rosen::WindowOption(); + sptr option = new (std::nothrow) Rosen::WindowOption(); option->SetWindowType(type); option->SetWindowRect(rect); diff --git a/services/privacymanager/test/unittest/permission_record_manager_test.cpp b/services/privacymanager/test/unittest/permission_record_manager_test.cpp index 710a8d95a..27776ced7 100644 --- a/services/privacymanager/test/unittest/permission_record_manager_test.cpp +++ b/services/privacymanager/test/unittest/permission_record_manager_test.cpp @@ -1241,7 +1241,7 @@ public: void TestDie(int32_t callerPid) { auto map = handler_->proxyStubAndRecipientMap_; - auto param = reinterpret_cast(new PrivacyManagerProxyDeathParam(callerPid)); + auto param = reinterpret_cast(new (std::nothrow) PrivacyManagerProxyDeathParam(callerPid)); for (auto iter = map.begin(); iter != map.end(); ++iter) { if (iter->second.second->IsEqual(param)) { iter->second.first->OnRemoteDied(iter->first); diff --git a/services/test/mock/aafwk/mock_service_registry.cpp b/services/test/mock/aafwk/mock_service_registry.cpp index cbd4f9844..a8b3bc860 100644 --- a/services/test/mock/aafwk/mock_service_registry.cpp +++ b/services/test/mock/aafwk/mock_service_registry.cpp @@ -40,7 +40,7 @@ void SwitchForeOrBackGround(uint32_t tokenId, int32_t flag) SystemAbilityManagerClient& SystemAbilityManagerClient::GetInstance() { - static auto instance = new SystemAbilityManagerClient(); + static auto instance = new (std::nothrow) SystemAbilityManagerClient(); return *instance; } @@ -55,7 +55,7 @@ sptr SystemAbilityManagerClient::GetSystemAbilityManager( return systemAbilityManager_; } - systemAbilityManager_ = new SystemAbilityManagerProxy(nullptr); + systemAbilityManager_ = new (std::nothrow) SystemAbilityManagerProxy(nullptr); return systemAbilityManager_; } @@ -70,7 +70,7 @@ sptr SystemAbilityManagerProxy::GetSystemAbility(int32_t systemAb case APP_MGR_SERVICE_ID: if (!g_appMgrService) { GTEST_LOG_(INFO) << "GetSystemAbility(" << systemAbilityId << "): return MockAppMgrService"; - g_appMgrService = new AppExecFwk::MockAppMgrService(); + g_appMgrService = new (std::nothrow) AppExecFwk::MockAppMgrService(); } remote = g_appMgrService; break; diff --git a/services/tokensyncmanager/src/device/device_info_manager.cpp b/services/tokensyncmanager/src/device/device_info_manager.cpp index 70be2a192..cebf8c5a4 100644 --- a/services/tokensyncmanager/src/device/device_info_manager.cpp +++ b/services/tokensyncmanager/src/device/device_info_manager.cpp @@ -28,7 +28,7 @@ DeviceInfoManager &DeviceInfoManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - DeviceInfoManager* tmp = new DeviceInfoManager(); + DeviceInfoManager* tmp = new (std::nothrow) DeviceInfoManager(); instance = std::move(tmp); } } diff --git a/services/tokensyncmanager/src/device/device_info_repository.cpp b/services/tokensyncmanager/src/device/device_info_repository.cpp index e90690b03..abfefe4ed 100644 --- a/services/tokensyncmanager/src/device/device_info_repository.cpp +++ b/services/tokensyncmanager/src/device/device_info_repository.cpp @@ -27,7 +27,7 @@ DeviceInfoRepository &DeviceInfoRepository::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - DeviceInfoRepository* tmp = new DeviceInfoRepository(); + DeviceInfoRepository* tmp = new (std::nothrow) DeviceInfoRepository(); instance = std::move(tmp); } } diff --git a/services/tokensyncmanager/src/remote/remote_command_factory.cpp b/services/tokensyncmanager/src/remote/remote_command_factory.cpp index f485ed805..be0f6d57c 100644 --- a/services/tokensyncmanager/src/remote/remote_command_factory.cpp +++ b/services/tokensyncmanager/src/remote/remote_command_factory.cpp @@ -30,7 +30,7 @@ RemoteCommandFactory &RemoteCommandFactory::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - RemoteCommandFactory* tmp = new RemoteCommandFactory(); + RemoteCommandFactory* tmp = new (std::nothrow) RemoteCommandFactory(); instance = std::move(tmp); } } diff --git a/services/tokensyncmanager/src/remote/remote_command_manager.cpp b/services/tokensyncmanager/src/remote/remote_command_manager.cpp index e104068c0..2918876a5 100644 --- a/services/tokensyncmanager/src/remote/remote_command_manager.cpp +++ b/services/tokensyncmanager/src/remote/remote_command_manager.cpp @@ -46,7 +46,7 @@ RemoteCommandManager &RemoteCommandManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - RemoteCommandManager* tmp = new RemoteCommandManager(); + RemoteCommandManager* tmp = new (std::nothrow) RemoteCommandManager(); instance = std::move(tmp); } } diff --git a/services/tokensyncmanager/src/remote/soft_bus_manager.cpp b/services/tokensyncmanager/src/remote/soft_bus_manager.cpp index 82cf5470a..645909a98 100644 --- a/services/tokensyncmanager/src/remote/soft_bus_manager.cpp +++ b/services/tokensyncmanager/src/remote/soft_bus_manager.cpp @@ -75,7 +75,7 @@ SoftBusManager &SoftBusManager::GetInstance() if (instance == nullptr) { std::lock_guard lock(g_instanceMutex); if (instance == nullptr) { - SoftBusManager* tmp = new SoftBusManager(); + SoftBusManager* tmp = new (std::nothrow) SoftBusManager(); instance = std::move(tmp); } } diff --git a/test/fuzztest/innerkits/accesstoken/getpermissionsstatus_fuzzer/getpermissionsstatus_fuzzer.cpp b/test/fuzztest/innerkits/accesstoken/getpermissionsstatus_fuzzer/getpermissionsstatus_fuzzer.cpp index b139ea6fc..be3d1894b 100644 --- a/test/fuzztest/innerkits/accesstoken/getpermissionsstatus_fuzzer/getpermissionsstatus_fuzzer.cpp +++ b/test/fuzztest/innerkits/accesstoken/getpermissionsstatus_fuzzer/getpermissionsstatus_fuzzer.cpp @@ -30,14 +30,18 @@ using namespace std; using namespace OHOS::Security::AccessToken; namespace OHOS { -const uint8_t *g_baseFuzzData = nullptr; +const uint8_t* g_baseFuzzData = nullptr; size_t g_baseFuzzSize = 0; size_t g_baseFuzzPos = 0; void GetNativeToken() { uint64_t tokenId; - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.GET_SENSITIVE_PERMISSIONS"; // 3 means the third permission NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/accesstoken/getpermissionsstatusstub_fuzzer/getpermissionsstatusstub_fuzzer.cpp b/test/fuzztest/services/accesstoken/getpermissionsstatusstub_fuzzer/getpermissionsstatusstub_fuzzer.cpp index 3f61fc13f..f06378e58 100644 --- a/test/fuzztest/services/accesstoken/getpermissionsstatusstub_fuzzer/getpermissionsstatusstub_fuzzer.cpp +++ b/test/fuzztest/services/accesstoken/getpermissionsstatusstub_fuzzer/getpermissionsstatusstub_fuzzer.cpp @@ -42,7 +42,11 @@ size_t g_baseFuzzPos = 0; void GetNativeToken() { uint64_t tokenId; - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.GET_SENSITIVE_PERMISSIONS"; // 3 means the third permission NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/accesstoken/inituserpolicystub_fuzzer/inituserpolicystub_fuzzer.cpp b/test/fuzztest/services/accesstoken/inituserpolicystub_fuzzer/inituserpolicystub_fuzzer.cpp index f4b01a42c..1885cecac 100644 --- a/test/fuzztest/services/accesstoken/inituserpolicystub_fuzzer/inituserpolicystub_fuzzer.cpp +++ b/test/fuzztest/services/accesstoken/inituserpolicystub_fuzzer/inituserpolicystub_fuzzer.cpp @@ -40,7 +40,11 @@ namespace OHOS { SetSelfTokenID(g_mockTokenId); return; } - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.GET_SENSITIVE_PERMISSIONS"; NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/accesstoken/registerseccompenhancestub_fuzzer/registerseccompenhancestub_fuzzer.cpp b/test/fuzztest/services/accesstoken/registerseccompenhancestub_fuzzer/registerseccompenhancestub_fuzzer.cpp index fcc5821c9..84cedc885 100644 --- a/test/fuzztest/services/accesstoken/registerseccompenhancestub_fuzzer/registerseccompenhancestub_fuzzer.cpp +++ b/test/fuzztest/services/accesstoken/registerseccompenhancestub_fuzzer/registerseccompenhancestub_fuzzer.cpp @@ -64,7 +64,7 @@ public: } sptr callback = - sptr(new TokenSyncCallback(std::make_shared())); + sptr(new (std::nothrow) TokenSyncCallback(std::make_shared())); AccessTokenFuzzData fuzzData(data, size); diff --git a/test/fuzztest/services/accesstoken/setpermdialogcap_fuzzer/setpermdialogcap_fuzzer.cpp b/test/fuzztest/services/accesstoken/setpermdialogcap_fuzzer/setpermdialogcap_fuzzer.cpp index 994193a1a..ba4ad29f9 100644 --- a/test/fuzztest/services/accesstoken/setpermdialogcap_fuzzer/setpermdialogcap_fuzzer.cpp +++ b/test/fuzztest/services/accesstoken/setpermdialogcap_fuzzer/setpermdialogcap_fuzzer.cpp @@ -35,7 +35,11 @@ namespace OHOS { void GetNativeToken() { uint64_t tokenId; - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.DISABLE_PERMISSION_DIALOG"; // 3 means the third permission NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/accesstoken/updateuserpolicystub_fuzzer/updateuserpolicystub_fuzzer.cpp b/test/fuzztest/services/accesstoken/updateuserpolicystub_fuzzer/updateuserpolicystub_fuzzer.cpp index 0714eab49..bfc6d5626 100644 --- a/test/fuzztest/services/accesstoken/updateuserpolicystub_fuzzer/updateuserpolicystub_fuzzer.cpp +++ b/test/fuzztest/services/accesstoken/updateuserpolicystub_fuzzer/updateuserpolicystub_fuzzer.cpp @@ -40,7 +40,11 @@ namespace OHOS { SetSelfTokenID(g_mockTokenId); return; } - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.GET_SENSITIVE_PERMISSIONS"; NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/privacy/getpermissionusedrecordsasyncstub_fuzzer/getpermissionusedrecordsasyncstub_fuzzer.cpp b/test/fuzztest/services/privacy/getpermissionusedrecordsasyncstub_fuzzer/getpermissionusedrecordsasyncstub_fuzzer.cpp index 298f6418d..f60eac396 100644 --- a/test/fuzztest/services/privacy/getpermissionusedrecordsasyncstub_fuzzer/getpermissionusedrecordsasyncstub_fuzzer.cpp +++ b/test/fuzztest/services/privacy/getpermissionusedrecordsasyncstub_fuzzer/getpermissionusedrecordsasyncstub_fuzzer.cpp @@ -70,7 +70,7 @@ namespace OHOS { return false; } - sptr callback(new TestCallBack()); + sptr callback(new (std::nothrow) TestCallBack()); if (!datas.WriteRemoteObject(callback->AsObject())) { return false; } diff --git a/test/fuzztest/services/privacy/sethapwithfgreminderstub_fuzzer/sethapwithfgreminderstub_fuzzer.cpp b/test/fuzztest/services/privacy/sethapwithfgreminderstub_fuzzer/sethapwithfgreminderstub_fuzzer.cpp index 364077315..c78cdd96f 100644 --- a/test/fuzztest/services/privacy/sethapwithfgreminderstub_fuzzer/sethapwithfgreminderstub_fuzzer.cpp +++ b/test/fuzztest/services/privacy/sethapwithfgreminderstub_fuzzer/sethapwithfgreminderstub_fuzzer.cpp @@ -36,7 +36,11 @@ namespace OHOS { void GetNativeToken() { uint64_t tokenId; - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.SET_FOREGROUND_HAP_REMINDER"; // 3 means the third permission NativeTokenInfoParams infoInstance = { diff --git a/test/fuzztest/services/privacy/setmutepolicystub_fuzzer/setmutepolicystub_fuzzer.cpp b/test/fuzztest/services/privacy/setmutepolicystub_fuzzer/setmutepolicystub_fuzzer.cpp index 56b6b8760..ebf55518b 100644 --- a/test/fuzztest/services/privacy/setmutepolicystub_fuzzer/setmutepolicystub_fuzzer.cpp +++ b/test/fuzztest/services/privacy/setmutepolicystub_fuzzer/setmutepolicystub_fuzzer.cpp @@ -33,13 +33,17 @@ const int CONSTANTS_NUMBER_TWO = 2; static const int32_t ROOT_UID = 0; namespace OHOS { -const uint8_t *g_baseFuzzData = nullptr; +const uint8_t* g_baseFuzzData = nullptr; size_t g_baseFuzzSize = 0; size_t g_baseFuzzPos = 0; void GetNativeToken() { uint64_t tokenId; - const char **perms = new const char *[1]; + const char** perms = new (std::nothrow) const char *[1]; + if (perms == nullptr) { + return; + } + perms[0] = "ohos.permission.GET_SENSITIVE_PERMISSIONS"; // 3 means the third permission NativeTokenInfoParams infoInstance = { -- Gitee