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 d8e6d31c03eac4b88d4a067535c3bb42177ca1f2..dc8215c9f8839c238fad466ed631ca30cd23135a 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 f9cd095b5c5edbe97cc8888d1d07d44e52784d30..b7d5cd85fa66d46a9e33c556e3b6b09366803ea2 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."); }