diff --git a/interfaces/inner_api/dlp_parse/include/dlp_file_kits.h b/interfaces/inner_api/dlp_parse/include/dlp_file_kits.h index 2eb4ca420d4a4ca365e5d95858dc8d8abd55d841..b88d75d86e8e2c125424712407ec048da31a895c 100644 --- a/interfaces/inner_api/dlp_parse/include/dlp_file_kits.h +++ b/interfaces/inner_api/dlp_parse/include/dlp_file_kits.h @@ -44,6 +44,7 @@ public: static bool IsDlpFile(int32_t dlpFd); static void ConvertAbilityInfoWithSupportDlp(const AAFwk::Want& want, std::vector &abilityInfos); + static bool IsDlpFileBySuffix(const std::string &fileSuffix); }; } // namespace DlpPermission } // namespace Security diff --git a/interfaces/inner_api/dlp_parse/src/dlp_file_kits.cpp b/interfaces/inner_api/dlp_parse/src/dlp_file_kits.cpp index 50461cc0825e714ec4f0017a9c86079b2c01b685..7ac677a491078b9193f7b709a2007fd61ac97272 100644 --- a/interfaces/inner_api/dlp_parse/src/dlp_file_kits.cpp +++ b/interfaces/inner_api/dlp_parse/src/dlp_file_kits.cpp @@ -78,7 +78,8 @@ static bool IsDlpFileName(const std::string& dlpFileName) return false; } - if (dlpFileName.substr(fileNameLen - dlpSuffixLen, dlpSuffixLen) != DLP_FILE_SUFFIX) { + std::string fileSuffix = dlpFileName.substr(fileNameLen - dlpSuffixLen, dlpSuffixLen); + if (DlpUtils::ToLowerString(fileSuffix) != DLP_FILE_SUFFIX) { return false; } return true; @@ -281,6 +282,16 @@ void DlpFileKits::ConvertAbilityInfoWithSupportDlp(const AAFwk::Want &want, DLP_LOG_ERROR(LABEL, "Query ability info with bundleName error."); } } + +bool DlpFileKits::IsDlpFileBySuffix(const std::string &fileSuffix) +{ + std::string lowerFileSuffix = DlpUtils::ToLowerString(fileSuffix); + if (lowerFileSuffix != DLP_FILE_SUFFIX) { + DLP_LOG_DEBUG(LABEL, "%{public}s is not dlp file suffix", lowerFileSuffix.c_str()); + return false; + } + return true; +} } // namespace DlpPermission } // namespace Security } // namespace OHOS