From: Jaemin Ryu Date: Thu, 27 Dec 2018 09:58:21 +0000 (+0900) Subject: Add fail-safe code for key migration X-Git-Tag: submit/tizen_4.0/20181227.115209~1^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F44%2F196344%2F1;p=platform%2Fcore%2Fsecurity%2Fode.git Add fail-safe code for key migration Change-Id: Ibed92f38d5dfd3de1ecc7faff5f1ffdb9ff68c02 Signed-off-by: Jaemin Ryu --- diff --git a/server/internal-encryption.cpp b/server/internal-encryption.cpp index bcf0487..75c39b7 100644 --- a/server/internal-encryption.cpp +++ b/server/internal-encryption.cpp @@ -48,6 +48,7 @@ #include "internal-encryption.h" #include "internal-encryption-common.h" #include "upgrade-support.h" +#include "file-footer.h" namespace ode { @@ -380,6 +381,14 @@ InternalEncryptionServer::InternalEncryptionServer(ServerContext& srv, std::string source = findDevPath(); + if (getState() == State::Encrypted) { + //"error_partially_encrypted" + if (!FileFooter::exist(source) && !UpgradeSupport::checkUpgradeFlag()) { + // Trigger key migration process + UpgradeSupport::createUpgradeFlag(); + } + } + engine.reset(new INTERNAL_ENGINE( source, INTERNAL_PATH, ProgressBar([](int v) {