Replace StepRegisterTrustAnchor into StepRecoverTrustAnchor
[platform/core/appfw/wgt-backend.git] / src / wgt / wgt_installer.cc
index b2988b0..bebc830 100755 (executable)
 #include <common/step/security/step_check_signature.h>
 #include <common/step/security/step_privacy_privilege.h>
 #include <common/step/security/step_privilege_compatibility.h>
+#include <common/step/security/step_recover_privilege_compatibility.h>
 #include <common/step/security/step_recover_security.h>
+#include <common/step/security/step_recover_trust_anchor.h>
 #include <common/step/security/step_register_security.h>
 #include <common/step/security/step_revoke_security.h>
-#include <common/step/security/step_rollback_deinstallation_security.h>
 #include <common/step/security/step_rollback_installation_security.h>
 #include <common/step/security/step_update_security.h>
 #include <common/step/security/step_register_trust_anchor.h>
+#include <common/step/security/step_revoke_trust_anchor.h>
+#include <common/step/security/step_save_signature.h>
 #include <common/step/security/step_unregister_trust_anchor.h>
 
 #include <wgt_manifest_handlers/widget_config_parser.h>
@@ -213,6 +216,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::pkgmgr::StepCheckRestriction>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckSettingsLevel>();
@@ -257,6 +261,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckSettingsLevel>();
@@ -275,6 +280,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::backup::StepBackupIcons>();
       AddStep<ci::filesystem::StepRemoveGlobalAppSymlinks>();
       AddStep<ci::filesystem::StepAcquireExternalStorage>(true);
+      AddStep<ci::security::StepRevokeTrustAnchor>();
       AddStep<ci::backup::StepCopyBackup>();
       AddStep<ci::filesystem::StepUpdateTep>();
       AddStep<ci::filesystem::StepUpdateStorageDirectories>();
@@ -315,7 +321,6 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
           ci::Plugin::ActionType::Uninstall);
       AddStep<ci::filesystem::StepRemovePerUserStorageDirectories>();
       AddStep<ci::pkgmgr::StepUnregisterApplication>();
-      AddStep<ci::security::StepRollbackDeinstallationSecurity>();
       AddStep<ci::filesystem::StepRemoveTep>();
       AddStep<ci::filesystem::StepRemoveFiles>();
       AddStep<ci::filesystem::StepRemoveZipImage>();
@@ -344,6 +349,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
           ci::configuration::StepParseManifest::StoreLocation::BACKUP);
       AddStep<ci::configuration::StepBlockCrossUpdate>();
       AddStep<ci::filesystem::StepRemoveGlobalAppSymlinks>();
+      AddStep<ci::security::StepRevokeTrustAnchor>();
       AddStep<ci::rds::StepRDSParse>();
       AddStep<ci::filesystem::StepUpdateTep>();
       AddStep<ci::rds::StepRDSModify>();
@@ -374,6 +380,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::filesystem::StepDisableExternalMount>();
       AddStep<wgt::configuration::StepCheckStartFiles>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckSettingsLevel>();
@@ -389,6 +396,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::backup::StepBackupIcons>();
       AddStep<ci::filesystem::StepRemoveGlobalAppSymlinks>();
       AddStep<ci::filesystem::StepAcquireExternalStorage>(true);
+      AddStep<ci::security::StepRevokeTrustAnchor>();
       AddStep<ci::backup::StepCopyBackup>();
       AddStep<ci::filesystem::StepUpdateTep>();
       AddStep<ci::filesystem::StepUpdateStorageDirectories>();
@@ -429,11 +437,12 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::filesystem::StepRecoverFiles>();
       AddStep<ci::mount::StepMountRecover>();
       AddStep<wgt::security::StepWgtRecoverSignature>();
-      AddStep<ci::security::StepPrivilegeCompatibility>(
+      AddStep<ci::security::StepRecoverPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<ci::filesystem::StepRecoverChangeOwner>();
       AddStep<ci::security::StepRecoverSecurity>();
       AddStep<ci::pkgmgr::StepRecoverApplication>();
+      AddStep<ci::security::StepRecoverTrustAnchor>();
   }
 
   void WgtInstaller::MountInstallSteps() {
@@ -447,6 +456,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::pkgmgr::StepCheckRestriction>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckSettingsLevel>();
@@ -490,6 +500,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckSettingsLevel>();
@@ -501,6 +512,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
           ci::configuration::StepParseManifest::StoreLocation::BACKUP);
       AddStep<ci::configuration::StepBlockCrossUpdate>();
+      AddStep<ci::security::StepRevokeTrustAnchor>();
       AddStep<ci::pkgmgr::StepKillApps>();
       AddStep<ci::backup::StepBackupManifest>();
       AddStep<ci::backup::StepBackupIcons>();
@@ -537,6 +549,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<wgt::security::StepDirectManifestCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckWgtNotificationCategory>();
@@ -567,6 +580,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<ci::configuration::StepCheckTizenVersion>();
       AddStep<wgt::security::StepDirectManifestCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckWgtNotificationCategory>();
@@ -653,6 +667,9 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<wgt::configuration::StepSetOldSignatureFilesLocation>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
+      AddStep<ci::security::StepPrivilegeCompatibility>(
+          ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<ci::configuration::StepSwitchReadonlyMode>();
       AddStep<ci::pkgmgr::StepKillApps>();
       AddStep<ci::filesystem::StepRemoveGlobalAppSymlinks>();
@@ -661,6 +678,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::filesystem::StepRemoveZipImage>();
       AddStep<ci::pkgmgr::StepUpdateApplication>();
       AddStep<ci::configuration::StepSwitchReadonlyMode>();
+      AddStep<ci::security::StepRevokeTrustAnchor>();
       AddStep<ci::security::StepRegisterTrustAnchor>(
           ci::security::StepRegisterTrustAnchor::RegisterType::UPDATE);
       AddStep<ci::security::StepPrivacyPrivilege>(
@@ -676,6 +694,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
           wgt::configuration::StepParse::ConfigLocation::INSTALLED, true);
       AddStep<ci::configuration::StepParsePreload>();
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckWgtBackgroundCategory>();
@@ -701,6 +720,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
           ci::configuration::StepParseManifest::StoreLocation::BACKUP);
       AddStep<ci::security::StepCheckSignature>();
+      AddStep<ci::security::StepSaveSignature>();
       AddStep<ci::security::StepPrivilegeCompatibility>(
           ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
       AddStep<wgt::security::StepCheckWgtBackgroundCategory>();