diff --git a/interfaces/innerkits/appverify/BUILD.gn b/interfaces/innerkits/appverify/BUILD.gn index c93351cfde465ce7265982e91e543c9f269bc2fe..613eea9db32c9babe95493535a89dea7a1a7a359 100644 --- a/interfaces/innerkits/appverify/BUILD.gn +++ b/interfaces/innerkits/appverify/BUILD.gn @@ -84,6 +84,10 @@ if (os_level == "standard") { subsystem_name = "security" defines += [ "OPENSSL_SUPPRESS_DEPRECATED" ] + + if (is_emulator) { + defines += [ "X86_EMULATOR_MODE" ] + } } } else { group("libhapverify") { diff --git a/interfaces/innerkits/appverify/src/provision/provision_verify.cpp b/interfaces/innerkits/appverify/src/provision/provision_verify.cpp index 8f1cd826f53a77aafb5070ffbf197ab7ef31a091..74b7a6dc564660804dd2d7ef9bd1ab77f31ccb88 100644 --- a/interfaces/innerkits/appverify/src/provision/provision_verify.cpp +++ b/interfaces/innerkits/appverify/src/provision/provision_verify.cpp @@ -80,7 +80,9 @@ const string VALUE_DEVELOPMENT_MODE = "1"; const int32_t MAXIMUM_NUM_DEVICES = 100; const int32_t VERSION_CODE_TWO = 2; +#ifndef X86_EMULATOR_MODE const int32_t DEVELOPMENT_MODE_LENGTH = 2; +#endif inline void GetStringIfExist(const json& obj, const string& key, string& out) { @@ -349,6 +351,7 @@ AppProvisionVerifyResult ParseAndVerify(const string& appProvision, ProvisionInf if (ret != PROVISION_OK) { return ret; } +#ifndef X86_EMULATOR_MODE const char *key = KEY_DEVELOPMENT_MODE.data(); char developmentMode[DEVELOPMENT_MODE_LENGTH] = {0}; GetParameter(key, nullptr, developmentMode, sizeof(developmentMode)); @@ -362,6 +365,7 @@ AppProvisionVerifyResult ParseAndVerify(const string& appProvision, ProvisionInf return ret; } } +#endif HAPVERIFY_LOG_DEBUG(LABEL, "Leave HarmonyAppProvision Verify"); return PROVISION_OK; } diff --git a/interfaces/innerkits/appverify/src/util/hap_cert_verify_openssl_utils.cpp b/interfaces/innerkits/appverify/src/util/hap_cert_verify_openssl_utils.cpp index b62faec78a1484795ea85f02247744a2f1571aa1..4600aebb79cad7acab142d3786e5187edad6691c 100644 --- a/interfaces/innerkits/appverify/src/util/hap_cert_verify_openssl_utils.cpp +++ b/interfaces/innerkits/appverify/src/util/hap_cert_verify_openssl_utils.cpp @@ -174,8 +174,7 @@ bool HapCertVerifyOpensslUtils::GetPublickeyBase64(const X509* cert, std::string */ int32_t HapCertVerifyOpensslUtils::CalculateLenAfterBase64Encode(int32_t len) { - return static_cast(ceil(static_cast(len) / BASE64_ENCODE_PACKET_LEN) * - BASE64_ENCODE_LEN_OF_EACH_GROUP_DATA + 1); + return (len + BASE64_ENCODE_PACKET_LEN - 1) / BASE64_ENCODE_PACKET_LEN * BASE64_ENCODE_LEN_OF_EACH_GROUP_DATA + 1; } bool HapCertVerifyOpensslUtils::CompareX509Cert(const X509* certA, const std::string& base64Cert)