diff --git a/services/distributeddataservice/service/test/mock/preprocess_utils_mock.cpp b/services/distributeddataservice/service/test/mock/preprocess_utils_mock.cpp index c1d117ddafee12231f90979be7ac0f49b16ddd33..37238e41c4b1bcea9cc11f95e6abbdda68cfde60 100644 --- a/services/distributeddataservice/service/test/mock/preprocess_utils_mock.cpp +++ b/services/distributeddataservice/service/test/mock/preprocess_utils_mock.cpp @@ -82,13 +82,13 @@ int32_t PreProcessUtils::GetHapUidByToken(uint32_t tokenId, int &userId) return E_OK; } -bool PreProcessUtils::GetHapBundleNameByToken(int tokenId, std::string &bundleName) +bool PreProcessUtils::GetHapBundleNameByToken(uint32_t tokenId, std::string &bundleName) { bundleName = "processName"; return true; } -bool PreProcessUtils::GetNativeProcessNameByToken(int tokenId, std::string &processName) +bool PreProcessUtils::GetNativeProcessNameByToken(uint32_t tokenId, std::string &processName) { processName = "processName"; return true; diff --git a/services/distributeddataservice/service/test/mock/preprocess_utils_mock.h b/services/distributeddataservice/service/test/mock/preprocess_utils_mock.h index 92af6e73e34043d5b05cc21bfb9ed75439cb3c8a..d71695fdbcad14b19e7f5d164e078c442949f84b 100644 --- a/services/distributeddataservice/service/test/mock/preprocess_utils_mock.h +++ b/services/distributeddataservice/service/test/mock/preprocess_utils_mock.h @@ -26,8 +26,8 @@ public: static std::string GenerateId(); static time_t GetTimestamp(); static int32_t GetHapUidByToken(uint32_t tokenId, int &userId); - static bool GetHapBundleNameByToken(int tokenId, std::string &bundleName); - static bool GetNativeProcessNameByToken(int tokenId, std::string &processName); + static bool GetHapBundleNameByToken(uint32_t tokenId, std::string &bundleName); + static bool GetNativeProcessNameByToken(uint32_t tokenId, std::string &processName); static std::string GetLocalDeviceId(); static void SetRemoteData(UnifiedData &data); static int32_t SetRemoteUri(uint32_t tokenId, UnifiedData &data); diff --git a/services/distributeddataservice/service/test/udmf_preprocess_utils_mock_test.cpp b/services/distributeddataservice/service/test/udmf_preprocess_utils_mock_test.cpp index 437bca9d49fd69cbf7016b05dfc09aec30d9ed00..0ca8e3b2d4ec6e87c4fab2f08264fea705af809b 100644 --- a/services/distributeddataservice/service/test/udmf_preprocess_utils_mock_test.cpp +++ b/services/distributeddataservice/service/test/udmf_preprocess_utils_mock_test.cpp @@ -55,7 +55,7 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetHapUidByToken001, TestSize.Level1) uint32_t tokenId = 0; int userId = 0; PreProcessUtils preProcessUtils; - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_SUCCESS)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_SUCCESS)); int32_t ret = preProcessUtils.GetHapUidByToken(tokenId, userId); EXPECT_EQ(ret, E_OK); } @@ -71,8 +71,8 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetInstIndex001, TestSize.Level1) uint32_t tokenId = 0; int32_t instIndex = 0; PreProcessUtils preProcessUtils; - EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillOnce(Return(TOKEN_HAP)); - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_SUCCESS)); + EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillRepeatedly(Return(TOKEN_HAP)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_SUCCESS)); bool ret = preProcessUtils.GetInstIndex(tokenId, instIndex); EXPECT_EQ(ret, true); } @@ -86,8 +86,8 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetInstIndex001, TestSize.Level1) HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId001, TestSize.Level1) { uint32_t tokenId = 0; - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_FAILED)); - EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillOnce(Return(TOKEN_SHELL)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_FAILED)); + EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillRepeatedly(Return(TOKEN_SHELL)); std::string bundleName = ""; std::string specificBundleName = ""; PreProcessUtils preProcessUtils; @@ -104,9 +104,9 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId001, TestSi HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId002, TestSize.Level1) { uint32_t tokenId = 999; - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_FAILED)); - EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillOnce(Return(TOKEN_NATIVE)); - EXPECT_CALL(*accessTokenKitMock, GetNativeTokenInfo(_, _)).WillOnce(Return(RET_SUCCESS)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_FAILED)); + EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillRepeatedly(Return(TOKEN_NATIVE)); + EXPECT_CALL(*accessTokenKitMock, GetNativeTokenInfo(_, _)).WillRepeatedly(Return(RET_SUCCESS)); std::string bundleName = ""; std::string specificBundleName = ""; PreProcessUtils preProcessUtils; @@ -123,7 +123,7 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId002, TestSi HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId003, TestSize.Level1) { uint32_t tokenId = 9999; - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_SUCCESS)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_SUCCESS)); std::string bundleName = ""; std::string specificBundleName = ""; PreProcessUtils preProcessUtils; @@ -140,9 +140,9 @@ HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId003, TestSi HWTEST_F(UdmfPreProcessUtilsMockTest, GetAlterableBundleNameByTokenId004, TestSize.Level1) { uint32_t tokenId = 999; - EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillOnce(Return(RET_FAILED)); - EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillOnce(Return(TOKEN_NATIVE)); - EXPECT_CALL(*accessTokenKitMock, GetNativeTokenInfo(_, _)).WillOnce(Return(RET_FAILED)); + EXPECT_CALL(*accessTokenKitMock, GetHapTokenInfo(_, _)).WillRepeatedly(Return(RET_FAILED)); + EXPECT_CALL(*accessTokenKitMock, GetTokenTypeFlag(_)).WillRepeatedly(Return(TOKEN_NATIVE)); + EXPECT_CALL(*accessTokenKitMock, GetNativeTokenInfo(_, _)).WillRepeatedly(Return(RET_FAILED)); std::string bundleName = ""; std::string specificBundleName = ""; PreProcessUtils preProcessUtils; diff --git a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp index 5a8f2e14600fbf7ecb81a90de86886fb23a8444a..9e7c45d1563629e1f42b2ae3522e045a5bc218af 100644 --- a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp +++ b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp @@ -111,6 +111,10 @@ time_t PreProcessUtils::GetTimestamp() int32_t PreProcessUtils::GetHapUidByToken(uint32_t tokenId, int &userId) { + if (AccessTokenKit::GetTokenTypeFlag(tokenId) != TOKEN_HAP) { + ZLOGE("TokenType is not TOKEN_HAP"); + return E_ERROR; + } Security::AccessToken::HapTokenInfo tokenInfo; auto result = Security::AccessToken::AccessTokenKit::GetHapTokenInfo(tokenId, tokenInfo); if (result != Security::AccessToken::AccessTokenKitRet::RET_SUCCESS) { @@ -121,14 +125,8 @@ int32_t PreProcessUtils::GetHapUidByToken(uint32_t tokenId, int &userId) return E_OK; } -bool PreProcessUtils::GetHapBundleNameByToken(int tokenId, std::string &bundleName) +bool PreProcessUtils::GetHapBundleNameByToken(uint32_t tokenId, std::string &bundleName) { - Security::AccessToken::HapTokenInfo hapInfo; - if (Security::AccessToken::AccessTokenKit::GetHapTokenInfo(tokenId, hapInfo) - == Security::AccessToken::AccessTokenKitRet::RET_SUCCESS) { - bundleName = hapInfo.bundleName; - return true; - } if (UTILS::IsTokenNative()) { ZLOGD("TypeATokenTypeEnum is TOKEN_HAP"); std::string processName; @@ -137,11 +135,17 @@ bool PreProcessUtils::GetHapBundleNameByToken(int tokenId, std::string &bundleNa return true; } } + Security::AccessToken::HapTokenInfo hapInfo; + if (Security::AccessToken::AccessTokenKit::GetHapTokenInfo(tokenId, hapInfo) + == Security::AccessToken::AccessTokenKitRet::RET_SUCCESS) { + bundleName = hapInfo.bundleName; + return true; + } ZLOGE("Get bundle name faild"); return false; } -bool PreProcessUtils::GetNativeProcessNameByToken(int tokenId, std::string &processName) +bool PreProcessUtils::GetNativeProcessNameByToken(uint32_t tokenId, std::string &processName) { Security::AccessToken::NativeTokenInfo nativeInfo; if (Security::AccessToken::AccessTokenKit::GetNativeTokenInfo(tokenId, nativeInfo) @@ -503,12 +507,6 @@ std::string PreProcessUtils::GetSdkVersionByToken(uint32_t tokenId) bool PreProcessUtils::GetSpecificBundleNameByTokenId(uint32_t tokenId, std::string &specificBundleName, std::string &bundleName) { - Security::AccessToken::HapTokenInfo hapInfo; - if (Security::AccessToken::AccessTokenKit::GetHapTokenInfo(tokenId, hapInfo) - == Security::AccessToken::AccessTokenKitRet::RET_SUCCESS) { - bundleName = hapInfo.bundleName; - return GetSpecificBundleName(hapInfo.bundleName, hapInfo.instIndex, specificBundleName); - } if (UTILS::IsTokenNative()) { ZLOGI("TypeATokenTypeEnum is TOKEN_NATIVE"); std::string processName; @@ -518,6 +516,12 @@ bool PreProcessUtils::GetSpecificBundleNameByTokenId(uint32_t tokenId, std::stri return true; } } + Security::AccessToken::HapTokenInfo hapInfo; + if (Security::AccessToken::AccessTokenKit::GetHapTokenInfo(tokenId, hapInfo) + == Security::AccessToken::AccessTokenKitRet::RET_SUCCESS) { + bundleName = hapInfo.bundleName; + return GetSpecificBundleName(hapInfo.bundleName, hapInfo.instIndex, specificBundleName); + } ZLOGE("Get bundle name faild, tokenid:%{public}u", tokenId); return false; } diff --git a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.h b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.h index e378592c8d9685eea64fe07acf61687200fb5008..1ebe94d0ba5fc618572df0b3aecd894e1b81960d 100644 --- a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.h +++ b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.h @@ -26,8 +26,8 @@ public: static std::string GenerateId(); static time_t GetTimestamp(); static int32_t GetHapUidByToken(uint32_t tokenId, int &userId); - static bool GetHapBundleNameByToken(int tokenId, std::string &bundleName); - static bool GetNativeProcessNameByToken(int tokenId, std::string &processName); + static bool GetHapBundleNameByToken(uint32_t tokenId, std::string &bundleName); + static bool GetNativeProcessNameByToken(uint32_t tokenId, std::string &processName); static std::string GetLocalDeviceId(); static void SetRemoteData(UnifiedData &data); static int32_t SetRemoteUri(uint32_t tokenId, UnifiedData &data);