Fix Jira issue for smack api
[platform/framework/native/installer.git] / inc / InstallerDefs.h
index f9218a2..c2f4ded 100755 (executable)
@@ -23,7 +23,7 @@
 
 #include "InstallerUtil.h"
 
-#define OSP_INSTALLER_VERSION "version=[20130318.1]"
+#define OSP_INSTALLER_VERSION "version=[20130413.1]"
 
 #define DIR_BIN                                L"/bin"
 #define DIR_INFO                       L"/info"
@@ -36,7 +36,7 @@
 #define DIR_CONTENTS           L"/contents"
 #define DIR_SHARED_RES         L"/shared/res"
 #define DIR_SHARED_DATA                L"/shared/data"
-#define DIR_SHARED_TRUSTED             L"/shared/trusted"
+#define DIR_SHARED_TRUSTED     L"/shared/trusted"
 
 #define SLP_DIR_BIN                    L"/bin"
 #define SLP_DIR_RES                    L"/res"
@@ -69,7 +69,7 @@
 
 #define UISCALABILITY_INFO                     L"1 %ls %ls %ls"
 
-#define CONFIG_PATH                                                    L"/usr/etc/installer-config.ini"
+#define CONFIG_PATH                                    L"/usr/etc/installer-config.ini"
 
 #define UIAPP_LOADER_PATH                      "/usr/lib/osp/osp-ui-app-loader"                        // UiApp
 #define SERVICEAPP_LOADER_PATH         "/usr/lib/osp/osp-service-app-loader"           // ServiceApp
 #define PERM_EXECUTE                                                   (S_IXUSR | S_IXGRP | S_IXOTH)
 #define PERM_WRITE                                                             (S_IWUSR | S_IWGRP | S_IWOTH)
 
+#define PERM_OWNER_ROOT                                                        0
+#define PERM_OWNER_APP                                                 1
+
+#define PERM_SMACK_0                                                   0
+#define PERM_SMACK_1                                                   1
+#define PERM_SMACK_2                                                   2
+#define PERM_SMACK_3                                                   3
+
 #define TIZEN_PRIVILEGE_WEB_SERVICE                            "http://tizen.org/privilege/web.service"
 #define TIZEN_CATEGORY_IME                                             "http://tizen.org/category/ime"
 #define TIZEN_CATEGORY_HOMESCREEN                              "http://tizen.org/category/homescreen"
 #define TIZEN_CATEGORY_LOCKSCREEN                              "http://tizen.org/category/lockscreen"
 #define TIZEN_CATEGORY_MENUSCREEN                              "http://tizen.org/category/menuscreen"
 
+#define DIR_APPLICATIONS_TMP                                   "/opt/usr/apps/tmp"
+
+#define INSTALLER_RDS_FILE_NAME                                        ".rds_delta"
+#define INSTALLER_RDS_DELETE_STR                               "delete"
+#define INSTALLER_RDS_ADD_STR                                  "add"
+#define INSTALLER_RDS_MODIFY_STR                               "modify"
+
 static const int BLOCK_SIZE = 4096;
+static const int SIGNATURE_FILE_NUMBER_DISTRIBUTOR = 1;
 
 #define OSP_INSTALLER  "osp-installer"
 
@@ -170,6 +186,9 @@ enum InstallationStep
        INSTALLER_STEP_UNINSTALL,
        INSTALLER_STEP_END,
 
+       INSTALLER_STEP_RDS_INIT,
+       INSTALLER_STEP_RDS,
+
        INSTALLER_STEP_MAX,
 
 };
@@ -215,6 +234,7 @@ enum InstallerError
        INSTALLER_ERROR_CERTIFICATE_CHAIN_VERIFICATION_FAILED = 33,
        INSTALLER_ERROR_CERTIFICATE_EXPIRED = 34,
        INSTALLER_ERROR_PRIVILEGE_INVALID = 41,
+       INSTALLER_ERROR_PRIVILEGE_LEVEL_INVALID = 42,
        INSTALLER_ERROR_MENU_ICON_NOT_FOUND = 51,
        INSTALLER_ERROR_FATAL_ERROR = 61,
        INSTALLER_ERROR_OUT_OF_STORAGE = 62,
@@ -231,18 +251,33 @@ enum InstallerOperation
 {
        INSTALLER_OPERATION_INSTALL,
        INSTALLER_OPERATION_UNINSTALL,
+       INSTALLER_OPERATION_REINSTALL,
 
 };
 
 enum RootCertificateType
 {
-       ROOT_CERTIFICATE_NONE,
+       ROOT_CERTIFICATE_NONE = 0,
        ROOT_CERTIFICATE_DEVELOPER,
        ROOT_CERTIFICATE_PUBLIC,
        ROOT_CERTIFICATE_PARTNER,
        ROOT_CERTIFICATE_PARTNER_OPERATOR,
        ROOT_CERTIFICATE_PARTNER_MANUFACTURER,
 
+       ROOT_CERTIFICATE_CERT_SVC_PUBLIC = (1 << 6),
+       ROOT_CERTIFICATE_CERT_SVC_PARTNER = (1 << 7),
+       ROOT_CERTIFICATE_CERT_SVC_PARTNER_OPERATOR = (1 << 8),
+       ROOT_CERTIFICATE_CERT_SVC_PARTNER_MANUFACTURER = (1 << 9),
+       ROOT_CERTIFICATE_CERT_SVC_PLATFORM = (1 << 10),
+
+};
+
+enum SignatureFileType
+{
+       SIGNATURE_FILE_TYPE_NONE,
+       SIGNATURE_FILE_TYPE_AUTHOR,
+       SIGNATURE_FILE_TYPE_DISTRIBUTOR,
+
 };
 
 enum
@@ -250,6 +285,7 @@ enum
        INSTALLER_MODE_INSTALL = 1,
        INSTALLER_MODE_UNINSTALL = 2,
        INSTALLER_MODE_RECURSIVE_DIRECTORY_INSTALL = 3,
+       INSTALLER_MODE_REINSTALL = 4,
 };
 
 enum CategoryType
@@ -268,4 +304,46 @@ enum InstallationStorage
 
 };
 
+enum InstallerRdsState
+{
+       INSTALLER_RDS_STATE_NONE,
+       INSTALLER_RDS_STATE_DELETE,
+       INSTALLER_RDS_STATE_ADD,
+       INSTALLER_RDS_STATE_MODIFY,
+
+};
+
+typedef struct
+{
+       const char* pDir;
+       int dirType;
+       int ownerIndex;
+       int modeIndex;
+       int smackIndex;
+
+} RdsPermssions;
+
+enum PermDirType
+{
+       PERM_DIR_RES = 0,
+       PERM_DIR_DATA = 1,
+       PERM_DIR_BIN = 2,
+       PERM_DIR_INFO = 3,
+       PERM_DIR_LIB = 4,
+       PERM_DIR_SETTING = 5,
+       PERM_DIR_SHARED_RES = 6,
+       PERM_DIR_SHARED_DATA = 7,
+       PERM_DIR_SHARED_TRUSTED = 8,
+       PERM_DIR_SHARED = 9,
+       PERM_DIR_ROOT = 10,
+};
+
+enum PrivilegeLevel
+{
+       PRIVILEGE_LEVEL_PUBLIC,
+       PRIVILEGE_LEVEL_PARTNER,
+       PRIVILEGE_LEVEL_PLATFORM,
+
+};
+
 #endif // _INSTALLER_DEFS_H_