sync code with tizen_3.0 branch 94/100594/1 accepted/tizen/common/20161130.070809 accepted/tizen/ivi/20161130.232424 accepted/tizen/mobile/20161130.232332 accepted/tizen/wearable/20161130.232403 submit/tizen/20161129.100212 submit/tizen/20161130.051215
authorIckhee Woo <ickhee.woo@samsung.com>
Mon, 28 Nov 2016 12:52:35 +0000 (21:52 +0900)
committerIckhee Woo <ickhee.woo@samsung.com>
Mon, 28 Nov 2016 12:52:35 +0000 (21:52 +0900)
Change-Id: Ic7522fefa63f8ed28961233a1b78b1bd28b0edbf
Signed-off-by: Ickhee Woo <ickhee.woo@samsung.com>
packaging/account-manager.spec
scripts/account-manager-upgrade.sh
server/src/account-server-db.c
server/src/account-server.c

index 248c3e4..8648a58 100644 (file)
@@ -1,7 +1,6 @@
-
 Name:       account-manager
 Summary:    Account Manager
-Version:    0.1.7
+Version:    0.1.9
 Release:    1
 Group:      Social & Content/Other
 License:    Apache-2.0
@@ -22,9 +21,10 @@ BuildRequires:  pkgconfig(cynara-client)
 BuildRequires:  pkgconfig(cynara-session)
 BuildRequires:  pkgconfig(cynara-creds-gdbus)
 BuildRequires:  pkgconfig(account-common)
-#BuildRequires:  pkgconfig(libtzplatform-config)
+BuildRequires:  pkgconfig(libtzplatform-config)
 
 %define upgrade_script_path /usr/share/upgrade/scripts
+%define TZ_OWNER_DB %{TZ_SYS_DB}/5001
 
 Requires(post): /sbin/ldconfig
 Requires(post): /usr/bin/sqlite3
@@ -71,15 +71,17 @@ install -m 644 %SOURCE3 %{buildroot}%{_unitdir}/accounts-service.service
 mkdir -p %{buildroot}%{upgrade_script_path}
 cp -f scripts/%{name}-upgrade.sh %{buildroot}%{upgrade_script_path}
 
+
 %post
 /sbin/ldconfig
 #if [ ! -d /opt/usr/dbspace ]
 #then
 #        mkdir -p /opt/usr/dbspace
 #fi
-if [ ! -f %{TZ_SYS_DB}/.account.db ]
+mkdir -p %{TZ_OWNER_DB}
+if [ ! -f %{TZ_OWNER_DB}/.account.db ]
 then
-        sqlite3 %{TZ_SYS_DB}/.account.db 'PRAGMA journal_mode = PERSIST;
+        sqlite3 %{TZ_OWNER_DB}/.account.db 'PRAGMA journal_mode = PERSIST;
         CREATE TABLE if not exists label (AppId TEXT, Label TEXT, Locale TEXT);
         CREATE TABLE if not exists account_type (_id INTEGER PRIMARY KEY AUTOINCREMENT, AppId TEXT,
         ServiceProviderId TEXT, IconPath TEXT, SmallIconPath TEXT, MultipleAccountSupport INT);
@@ -94,11 +96,12 @@ then
 '
 fi
 
-chown service_fw:service_fw %{TZ_SYS_DB}/.account.db
-chown service_fw:service_fw %{TZ_SYS_DB}/.account.db-journal
+chown service_fw:service_fw %{TZ_OWNER_DB}
+chown service_fw:service_fw %{TZ_OWNER_DB}/.account.db
+chown service_fw:service_fw %{TZ_OWNER_DB}/.account.db-journal
 
-chmod 660 %{TZ_SYS_DB}/.account.db
-chmod 660 %{TZ_SYS_DB}/.account.db-journal
+chmod 644 %{TZ_OWNER_DB}/.account.db
+chmod 644 %{TZ_OWNER_DB}/.account.db-journal
 
 #smack labeling
 #chsmack -a 'System::Shared' %{TZ_SYS_DB}/.account.db-journal
index 6704d19..bfac6f0 100755 (executable)
@@ -10,46 +10,29 @@ PATH=/bin:/usr/bin:/sbin:/usr/sbin
 ACCOUNT_DB_DIR_24=/opt/usr/dbspace
 
 # 3.0
-ACCOUNT_GLOBAL_USER_DB_DIR_30=/opt/dbspace
-ACCOUNT_USER_DB_DIR_30=/opt/dbspace/5001
+ACCOUNT_GLOBAL_USER_DB_DIR_30=/opt/dbspace/5001
 
 ACCOUNT_DB_24=$ACCOUNT_DB_DIR_24/.account.db
 ACCOUNT_GLOBAL_USER_DB_30=$ACCOUNT_GLOBAL_USER_DB_DIR_30/.account.db
-ACCOUNT_USER_DB_30=$ACCOUNT_USER_DB_DIR_30/.account.db
 
 mkdir -p $ACCOUNT_GLOBAL_USER_DB_DIR_30
-mkdir -p $ACCOUNT_USER_DB_DIR_30
 
-chown service_fw:service_fw $ACCOUNT_USER_DB_DIR_30
-chmod 755 $ACCOUNT_USER_DB_DIR_30
+chown service_fw:service_fw $ACCOUNT_GLOBAL_USER_DB_DIR_30
+chmod 755 $ACCOUNT_GLOBAL_USER_DB_DIR_30
 
 # Copy DB
 cp -rf $ACCOUNT_DB_24 $ACCOUNT_GLOBAL_USER_DB_DIR_30
 cp -rf $ACCOUNT_DB_24-journal $ACCOUNT_GLOBAL_USER_DB_DIR_30
 
-cp -rf $ACCOUNT_DB_24 $ACCOUNT_USER_DB_DIR_30
-cp -rf $ACCOUNT_DB_24-journal $ACCOUNT_USER_DB_DIR_30
-
 chown service_fw:service_fw $ACCOUNT_GLOBAL_USER_DB_30
 chown service_fw:service_fw $ACCOUNT_GLOBAL_USER_DB_30-journal
-chown service_fw:service_fw $ACCOUNT_USER_DB_30
-chown service_fw:service_fw $ACCOUNT_USER_DB_30-journal
 
-chmod 660 $ACCOUNT_GLOBAL_USER_DB_30
-chmod 660 $ACCOUNT_GLOBAL_USER_DB_30-journal
-chmod 660 $ACCOUNT_USER_DB_30
-chmod 660 $ACCOUNT_USER_DB_30-journal
+chmod 644 $ACCOUNT_GLOBAL_USER_DB_30
+chmod 644 $ACCOUNT_GLOBAL_USER_DB_30-journal
 
 # Delete DB
 rm -rf $ACCOUNT_DB_24
 rm -rf $ACCOUNT_DB_24-journal
 
-# Update account DB
-sqlite3 $ACCOUNT_GLOBAL_USER_DB_30 'delete from account'
-sqlite3 $ACCOUNT_GLOBAL_USER_DB_30 'delete from capability'
-sqlite3 $ACCOUNT_USER_DB_30 'delete from account_type'
-sqlite3 $ACCOUNT_USER_DB_30 'delete from label'
-sqlite3 $ACCOUNT_USER_DB_30 'delete from provider_feature'
-
 exit 0
 
index 96ad729..a29cd5e 100644 (file)
@@ -234,7 +234,7 @@ int _account_global_db_open(void)
        _INFO( "start _account_global_db_open()");
 
        ACCOUNT_MEMSET(account_db_path, 0x00, sizeof(account_db_path));
-       ACCOUNT_GET_GLOBAL_DB_PATH(account_db_path, sizeof(account_db_path));
+       ACCOUNT_GET_OWNER_DB_PATH(account_db_path, sizeof(account_db_path), 5001);
 
        if( g_hAccountGlobalDB ) {
                _ERR( "Account database is using in another app. %x", g_hAccountDB );
@@ -245,14 +245,14 @@ int _account_global_db_open(void)
        if( ret != _ACCOUNT_ERROR_NONE )
                ACCOUNT_DEBUG( "db_util_close(g_hAccountGlobalDB2) fail ret = %d", ret);
 
-       ACCOUNT_DEBUG( "before db_util_open()");
+       ACCOUNT_DEBUG( "before _account_global_db_open()");
 //     if(mode == ACCOUNT_DB_OPEN_READWRITE)
 //             rc = db_util_open(account_db_path, &g_hAccountDB, DB_UTIL_REGISTER_HOOK_METHOD);
 //     else if(mode == ACCOUNT_DB_OPEN_READONLY)
        rc = db_util_open_with_options(account_db_path, &g_hAccountGlobalDB, SQLITE_OPEN_READONLY, NULL);
 //     else
 //             return _ACCOUNT_ERROR_DB_NOT_OPENED;
-       ACCOUNT_DEBUG( "after db_util_open() sqlite_rc = %d", rc);
+       ACCOUNT_DEBUG( "after _account_global_db_open() sqlite_rc = %d", rc);
 
        if( rc == SQLITE_PERM || _account_db_err_code(g_hAccountGlobalDB) == SQLITE_PERM ) {
                ACCOUNT_ERROR( "Account permission denied");
@@ -333,7 +333,7 @@ int _account_db_open(int mode, int pid, uid_t uid)
        char account_db_dir[256] = {0, };
        char account_db_path[256] = {0, };
 
-       _INFO( "start _account_db_open()");
+       _INFO( "start _account_db_open() pid [%d]. uid [%d]", pid, uid);
 
        ACCOUNT_MEMSET(account_db_dir, 0x00, sizeof(account_db_dir));
        ACCOUNT_MEMSET(account_db_path, 0x00, sizeof(account_db_path));
index 9bc9f52..14bc0a1 100644 (file)
@@ -514,7 +514,7 @@ gboolean account_manager_account_type_add(AccountManager *obj, GDBusMethodInvoca
        account_type_s* account_type = NULL;
 
        guint pid = _get_client_pid(invocation);
-       _INFO("client Id = [%u]", pid);
+       _INFO("client pid = [%u], uid = [%d]", pid, uid);
 
        int return_code = _check_priviliege_account_read(invocation);
        if (return_code != _ACCOUNT_ERROR_NONE)