From 4ab9f730dd18026ad2d2b43bfa01a6c5f4e3d3a2 Mon Sep 17 00:00:00 2001 From: chennian Date: Sat, 1 Mar 2025 17:22:45 +0800 Subject: [PATCH] Add control of develop mode and add memoryGuard of OnStart Signed-off-by: chennian Change-Id: Ibb48a00f681eeb3b365feb938441641d0dca973e --- .../main/cpp/src/service/accesstoken_manager_service.cpp | 9 +++++++++ .../main/cpp/src/service/accesstoken_manager_stub.cpp | 5 +++++ 2 files changed, 14 insertions(+) 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 d8e6d31c0..dc8215c9f 100644 --- a/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp +++ b/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_service.cpp @@ -33,7 +33,9 @@ #include "ipc_skeleton.h" #include "json_parse_loader.h" #include "libraryloader.h" +#include "memory_guard.h" #include "parameter.h" +#include "parameters.h" #include "permission_list_state.h" #include "permission_manager.h" #include "short_grant_manager.h" @@ -55,6 +57,7 @@ const char* GRANT_ABILITY_ABILITY_NAME = "com.ohos.permissionmanager.GrantAbilit const char* PERMISSION_STATE_SHEET_ABILITY_NAME = "com.ohos.permissionmanager.PermissionStateSheetAbility"; const char* GLOBAL_SWITCH_SHEET_ABILITY_NAME = "com.ohos.permissionmanager.GlobalSwitchSheetAbility"; const char* APPLICATION_SETTING_ABILITY_NAME = "com.ohos.permissionmanager.MainAbility"; +const char* DEVELOPER_MODE_STATE = "const.security.developermode.state"; } const bool REGISTER_RESULT = @@ -555,6 +558,11 @@ int32_t AccessTokenManagerService::UnRegisterTokenSyncCallback() void AccessTokenManagerService::DumpTokenInfo(const AtmToolsParamInfoParcel& infoParcel, std::string& dumpInfo) { LOGI(ATM_DOMAIN, ATM_TAG, "Called"); + bool isDeveloperMode = OHOS::system::GetBoolParameter(DEVELOPER_MODE_STATE, false); + if (!isDeveloperMode) { + dumpInfo = "Developer mode not support."; + return; + } AccessTokenInfoManager::GetInstance().DumpTokenInfo(infoParcel.info, dumpInfo); } @@ -699,6 +707,7 @@ void AccessTokenManagerService::GetConfigValue() bool AccessTokenManagerService::Initialize() { + MemoryGuard guard; ReportSysEventPerformance(); AccessTokenInfoManager::GetInstance().Init(); diff --git a/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_stub.cpp b/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_stub.cpp index f9cd095b5..b7d5cd85f 100644 --- a/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_stub.cpp +++ b/services/accesstokenmanager/main/cpp/src/service/accesstoken_manager_stub.cpp @@ -97,6 +97,11 @@ void AccessTokenManagerStub::DeleteTokenInfoInner(MessageParcel& data, MessagePa return; } AccessTokenID tokenID = data.ReadUint32(); + if (this->GetTokenType(tokenID) != TOKEN_HAP) { + IF_FALSE_PRINT_LOG(ATM_DOMAIN, ATM_TAG, + reply.WriteInt32(AccessTokenError::ERR_PARAM_INVALID), "WriteInt32 failed."); + return; + } int result = this->DeleteToken(tokenID); IF_FALSE_PRINT_LOG(ATM_DOMAIN, ATM_TAG, reply.WriteInt32(result), "WriteInt32 failed."); } -- Gitee