From c495190a91e3c201943c3cc90552d82e9aef0bb1 Mon Sep 17 00:00:00 2001 From: Taejeong Lee Date: Fri, 1 Feb 2013 21:35:07 +0900 Subject: [PATCH] Signature path bug fix when install by directory mode. * Wrong signature path was used. [Issue#] N/A [Problem] widget's signature policy identification fail. [Cause] Wrong signature path was used. [Solution] Fixed. Change-Id: Ic5f2d85e2deb3750aa8aa973f3354e2e3354a153 --- src/jobs/widget_install/task_certify.cpp | 26 ++++++++++++++++++-------- src/misc/widget_location.cpp | 2 +- 2 files changed, 19 insertions(+), 9 deletions(-) mode change 100755 => 100644 src/jobs/widget_install/task_certify.cpp diff --git a/src/jobs/widget_install/task_certify.cpp b/src/jobs/widget_install/task_certify.cpp old mode 100755 new mode 100644 index 40a17cd..4d22aca --- a/src/jobs/widget_install/task_certify.cpp +++ b/src/jobs/widget_install/task_certify.cpp @@ -222,14 +222,24 @@ void TaskCertify::stepSignature() appType = WrtSignatureValidator::TIZEN; } - WrtSignatureValidator validator( - appType, - !GlobalSettings::OCSPTestModeEnabled(), - !GlobalSettings::CrlTestModeEnabled(), - complianceMode); - - WrtSignatureValidator::Result result = - validator.check(data, widgetPath); + WrtSignatureValidator::Result result; + + if (m_contextData.widgetConfig.packagingType + == WrtDB::PKG_TYPE_DIRECTORY_WEB_APP) + { + // In directory installation mode, the validation is skipped. + + result = WrtSignatureValidator::SIGNATURE_VERIFIED; + } + else + { + WrtSignatureValidator validator(appType, + !GlobalSettings::OCSPTestModeEnabled(), + !GlobalSettings::CrlTestModeEnabled(), + complianceMode); + + result = validator.check(data, widgetPath); + } if (result == WrtSignatureValidator::SIGNATURE_REVOKED) { LogWarning("Certificate is REVOKED"); diff --git a/src/misc/widget_location.cpp b/src/misc/widget_location.cpp index e4bd94e..cefdb31 100644 --- a/src/misc/widget_location.cpp +++ b/src/misc/widget_location.cpp @@ -173,7 +173,7 @@ std::string WidgetLocation::getTemporaryPackageDir() const std::string WidgetLocation::getTemporaryRootDir() const { if (m_type == WrtDB::PKG_TYPE_DIRECTORY_WEB_APP) { - return getWidgetSource(); + return getWidgetSource() + WrtDB::GlobalConfig::GetWidgetSrcPath(); } if(m_type == WrtDB::PKG_TYPE_HYBRID_WEB_APP) { -- 2.7.4