modified privacy-privilege mapping due to the change of mapping table 49/69049/3 accepted/tizen/common/20160512.143813 accepted/tizen/mobile/20160512.051135 submit/tizen/20160512.001845
authorKyoungyong Lee <bluevox@naver.com>
Wed, 11 May 2016 08:39:30 +0000 (17:39 +0900)
committerKyoungyong Lee <bluevox@naver.com>
Wed, 11 May 2016 10:12:39 +0000 (19:12 +0900)
Change-Id: I1d1fc4929dc002d041356a711e144374fb67dcea

13 files changed:
client/CMakeLists.txt
client/src/PrivacyChecker.cpp
client/src/privacy_guard_client.cpp
common/inc/PrivacyGuardTypes.h
common/inc/PrivacyIdInfo.h
common/src/PrivacyIdInfo.cpp
include/privacy_guard_client_types.h
packaging/privacy-guard.spec
res/opt/dbspace/.privacy_guard_privacylist.db [deleted file]
server/CMakeLists.txt
server/inc/PrivacyGuardDb.h
server/src/PrivacyGuardDb.cpp
server/src/service/PrivacyInfoService.cpp

index ab2fabf..3453354 100755 (executable)
@@ -47,7 +47,7 @@ IF(PRIVACY_POPUP)
 ENDIF(PRIVACY_POPUP)
 
 ###################################################################################################
-## for libprivacy-guard-client (executable)
+## for libprivacy-guard-client
 INCLUDE_DIRECTORIES(${pkgs_INCLUDE_DIRS} ${client_include_dir} ${common_include_dir} ${extern_include_dir})
 SET(PRIVACY_GUARD_CLIENT_SOURCES
        ${common_src_dir}/SocketConnection.cpp
index 62f2ac8..b469858 100755 (executable)
@@ -127,7 +127,7 @@ PrivacyChecker::getMonitorPolicy(const int userId, const std::string packageId,
                monitorPolicy = 0;
                res = PRIV_GUARD_ERROR_NO_DATA;
        }
-       PG_LOGD("Here3");
+
        return res;
 }
 
index 36ca07e..0b7c8cd 100755 (executable)
 
 int privacy_guard_client_add_privacy_access_log(const int user_id, const char *package_id, const char *privilege_id)
 {
-       if (user_id < 0 || package_id == NULL || privilege_id == NULL)
+       if (user_id < 0 || package_id == NULL || privilege_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        int monitor_policy = 0;
        std::string privacy_id;
@@ -46,15 +48,21 @@ int privacy_guard_client_add_privacy_access_log(const int user_id, const char *p
        PG_LOGD("user_id : %d, package_id : %s, privilege_id : %s", user_id, package_id, privilege_id);
 
        int retval = PrivacyChecker::checkMonitorPolicyWithPrivilege(user_id, std::string(package_id), std::string(privilege_id), privacy_id, monitor_policy);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyChecker::checkMonitorPolicyWithPrivilege() [%d]", retval);
+               return retval;
+       }
 
-       PG_LOGD("monitor policy : %d", monitor_policy);
-
-       if (retval == PRIV_GUARD_ERROR_SUCCESS && monitor_policy == MONITOR_POLICY_ON) {
+       if (monitor_policy == MONITOR_POLICY_ON) {
                PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
                retval = pInst->PgAddPrivacyAccessLog(user_id, std::string(package_id), std::string(privacy_id));
+               if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+                       PG_LOGE("Failed to do PrivacyChecker::checkMonitorPolicyWithPrivilege() [%d]", retval);
+                       return retval;
+               }
        }
-       PG_LOGD("retval : %d", retval);
-       return retval;
+
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_delete_all_logs_and_monitor_policy(void)
@@ -62,136 +70,164 @@ int privacy_guard_client_delete_all_logs_and_monitor_policy(void)
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
        int retval = pInst->PgDeleteAllLogsAndMonitorPolicy();
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgDeleteAllLogsAndMonitorPolicy() [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_delete_logs_by_package_id(const char *package_id)
 {
-       if (package_id == NULL)
+       if (package_id == NULL) {
+               PG_LOGE("Invalid parameters. (package_id)");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
        int retval = pInst->PgDeleteLogsByPackageId(std::string(package_id));
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgDeleteLogsByPackageId() [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_delete_monitor_policy_by_package_id(const char *package_id)
 {
-       if (package_id == NULL)
+       if (package_id == NULL) {
+               PG_LOGE("Invalid parameters. (package_id)");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
        int retval = pInst->PgDeleteMonitorPolicyByPackageId(std::string(package_id));
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgDeleteMonitorPolicyByPackageId() [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_total_privacy_count_of_package(const int user_id, const time_t start_date,
                const time_t end_date, privacy_guard_client_privacy_count_of_package_cb callback, void *user_data)
 {
-       if (user_id < 0 || start_date > end_date || start_date <= 0)
+       if (user_id < 0 || start_date > end_date || start_date <= 0) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
+
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
        std::list <std::pair<std::string, int>> list;
 
-       PG_LOGD("start_date : %d, end_date : %d", start_date, end_date);
        int retval = pInst->PgForeachTotalPrivacyCountOfPackage(user_id, start_date, end_date, list);
-
-       if (retval != PRIV_GUARD_ERROR_SUCCESS)
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachTotalPrivacyCountOfPackage() [%d]", retval);
                return retval;
+       }
+
        if (list.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
 
        for (std::list <std::pair <std::string, int>>::iterator iter = list.begin(); iter != list.end(); ++iter) {
-               PG_LOGD("result > package_id : %s, count : %d", iter->first.c_str(), iter->second);
+               //PG_LOGD("result > package_id : %s, count : %d", iter->first.c_str(), iter->second);
                bool ret = callback(iter->first.c_str(), iter->second, user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_total_privacy_count_of_privacy(const int user_id, const time_t start_date,
                const time_t end_date, privacy_guard_client_privacy_count_cb callback, void *user_data)
 {
-       if (user_id < 0 || start_date > end_date || start_date <= 0)
+       if (user_id < 0 || start_date > end_date || start_date <= 0) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
        std::list <std::pair<std::string, int>> list;
 
-       PG_LOGD("start_date : %d, end_date : %d", start_date, end_date);
        int retval = pInst->PgForeachTotalPrivacyCountOfPrivacy(user_id, start_date, end_date, list);
-
-       if (retval != PRIV_GUARD_ERROR_SUCCESS)
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachTotalPrivacyCountOfPrivacy() [%d]", retval);
                return retval;
+       }
+
        if (list.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
 
        for (std::list <std::pair <std::string, int>>::iterator iter = list.begin(); iter != list.end(); ++iter) {
-               PG_LOGD("result > privacy_id : %s, count : %d", iter->first.c_str(), iter->second);
+               PG_LOGD("privacy_id: %s, count: %d", iter->first.c_str(), iter->second);
                bool ret = callback(iter->first.c_str(), iter->second, user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_privacy_count_by_privacy_id(const int user_id, const time_t start_date,
                const time_t end_date, const char *privacy_id,
                privacy_guard_client_privacy_count_of_package_cb callback, void *user_data)
 {
-       if (user_id < 0 || start_date > end_date || start_date <= 0 || privacy_id == NULL)
+       if (user_id < 0 || start_date > end_date || start_date <= 0 || privacy_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
        std::list <std::pair<std::string, int>> list;
 
-       PG_LOGD("start_date : %d, end_date : %d", start_date, end_date);
        int retval = pInst->PgForeachPrivacyCountByPrivacyId(user_id, start_date, end_date, std::string(privacy_id), list);
-
-       if (retval != PRIV_GUARD_ERROR_SUCCESS)
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachPrivacyCountByPrivacyId() [%d]", retval);
                return retval;
+       }
+
        if (list.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
 
        for (std::list <std::pair <std::string, int>>::iterator iter = list.begin(); iter != list.end(); ++iter) {
-               PG_LOGD("result > package_id : %s, count : %d", iter->first.c_str(), iter->second);
+               PG_LOGD("package_id: %s, count: %d", iter->first.c_str(), iter->second);
                bool ret = callback(iter->first.c_str(), iter->second, user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
-
 int privacy_guard_client_foreach_privacy_count_by_package_id(const int user_id, const time_t start_date,
                const time_t end_date, const char *package_id,
                privacy_guard_client_privacy_count_cb callback, void *user_data)
 {
-       if (user_id < 0 || start_date > end_date || start_date <= 0 || package_id == NULL)
+       if (user_id < 0 || start_date > end_date || start_date <= 0 || package_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
        std::list <std::pair<std::string, int>> list;
 
-       PG_LOGD("start_date : %d, end_date : %d", start_date, end_date);
        int retval = pInst->PgForeachPrivacyCountByPackageId(user_id, start_date, end_date, std::string(package_id), list);
-
-       if (retval != PRIV_GUARD_ERROR_SUCCESS)
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachPrivacyCountByPackageId() [%d]", retval);
                return retval;
+       }
+
        if (list.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
 
        for (std::list <std::pair <std::string, int>>::iterator iter = list.begin(); iter != list.end(); ++iter) {
-               PG_LOGD("result > privacy_id : %s, count : %d", iter->first.c_str(), iter->second);
+               PG_LOGD("privacy_id: %s, count: %d", iter->first.c_str(), iter->second);
                bool ret = callback(iter->first.c_str(), iter->second, user_data);
                if (ret == false)
                        break;
@@ -202,87 +238,102 @@ int privacy_guard_client_foreach_privacy_count_by_package_id(const int user_id,
 
 int privacy_guard_client_add_monitor_policy(const int user_id, const char *package_id, const char **privilege_list, const int monitor_policy)
 {
-       if (user_id < 0 || package_id == NULL)
+       if (user_id < 0 || package_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
     PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
     std::list < std::string > privilegeList;
 
-    while (*privilege_list[0] != '\0')
-    {
-               PG_LOGD("privacyList : %s", *privilege_list);
+    while (*privilege_list[0] != '\0') {
+               PG_LOGD("Privilege in the list: %s", *privilege_list);
                privilegeList.push_back(std::string(*privilege_list++));
     }
 
     int retval = pInst->PgAddMonitorPolicy(user_id, std::string(package_id), privilegeList, monitor_policy);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgAddMonitorPolicy() [%d]", retval); 
+               return retval;
+       }
 
-    return retval;
+    return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_update_monitor_policy(const int user_id, const char *package_id, const char *privacy_id, const int monitor_policy)
 {
-       if (user_id < 0 || package_id == NULL || privacy_id == NULL)
+       if (user_id < 0 || package_id == NULL || privacy_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
     PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
     int retval = pInst->PgUpdateMonitorPolicy(user_id, std::string(package_id), std::string(privacy_id), monitor_policy);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgUpdateMonitorPolicy() [%d]", retval); 
+               return retval;
+       }
 
-    return retval;
+    return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_monitor_policy_by_package_id(const int user_id, const char *package_id,
                privacy_guard_client_monitor_policy_cb callback, void *user_data)
 {
-       if (user_id < 0 || package_id == NULL)
+       if (user_id < 0 || package_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
-
-       PG_LOGD("package_id : %s", package_id);
+       }
 
        std::list <privacy_data_s> privacyInfoList;
        int retval = -1;
 
        retval = PrivacyGuardClient::getInstance()->PgForeachMonitorPolicyByPackageId(user_id, std::string(package_id), privacyInfoList);
-
        if (retval != PRIV_GUARD_ERROR_SUCCESS) {
-               PG_LOGE("PgForeachMonitorPolicyByPackageId : fail");
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachMonitorPolicyByPackageId() [%d]", retval);
                return retval;
        }
 
-       if (privacyInfoList.size() == 0) {
-               PG_LOGE("PgForeachMonitorPolicyByPackageId (privacyList.size = 0): fail");
+       if (privacyInfoList.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
-       }
 
        for (std::list <privacy_data_s>::iterator iter = privacyInfoList.begin(); iter != privacyInfoList.end(); ++iter) {
-               PG_LOGD("result > privacy_id : %s, monitor_policy : %d",
-                                               iter->privacy_id, iter->monitor_policy);
+               PG_LOGD("privacy_id: %s, monitor_policy: %d", iter->privacy_id, iter->monitor_policy);
                bool ret = callback(iter->privacy_id, iter->monitor_policy, user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_check_privacy_package(const int user_id, const char *package_id, bool *is_privacy_package)
 {
-       if (user_id < 0 || package_id == NULL)
+       if (user_id < 0 || package_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient* pInst = PrivacyGuardClient::getInstance();
 
-       PG_LOGD("user_id : %d, package_id : %s", user_id, package_id);
+       PG_LOGD("user_id: %d, package_id: %s", user_id, package_id);
+
        int retval = pInst->PgCheckPrivacyPackage(user_id, std::string(package_id), *is_privacy_package);
-       PG_LOGD("result > is_privacy_package : %d", *is_privacy_package);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgCheckPrivacyPackage() [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_privacy_package_id(const int user_id, privacy_guard_client_package_id_cb callback, void *user_data)
 {
-       if (user_id < 0)
+       if (user_id < 0) {
+               PG_LOGE("Invalid parameters. (user_id: %d)", user_id);
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient* pInst = PrivacyGuardClient::getInstance();
 
@@ -290,29 +341,30 @@ int privacy_guard_client_foreach_privacy_package_id(const int user_id, privacy_g
 
        int retval = pInst->PgForeachPrivacyPackageId(user_id, packageList);
        if (retval != PRIV_GUARD_ERROR_SUCCESS) {
-               PG_LOGE("PgForeachPrivacyPackageId : fail");
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachPrivacyPackageId(). [%d]", retval);
                return retval;
        }
 
-       if (packageList.size() == 0) {
-               PG_LOGE("PgForeachPrivacyPackageId (packageList.size = 0): fail");
+
+       if (packageList.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
-       }
 
        for (std::list < std::string >::iterator iter = packageList.begin(); iter != packageList.end(); ++iter) {
-               PG_LOGD("package_id : %s", iter->c_str());
+               PG_LOGD("package_id: %s", iter->c_str());
                bool ret = callback(iter->c_str(), user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_foreach_package_by_privacy_id(const int user_id, const char *privacy_id, privacy_guard_client_package_id_cb callback, void *user_data)
 {
-       if (user_id < 0 || privacy_id == NULL)
+       if (user_id < 0 || privacy_id == NULL) {
+               PG_LOGE("Invalid parameters.");
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient* pInst = PrivacyGuardClient::getInstance();
 
@@ -320,59 +372,73 @@ int privacy_guard_client_foreach_package_by_privacy_id(const int user_id, const
 
        int retval = pInst->PgForeachPackageByPrivacyId(user_id, std::string(privacy_id), packageList);
        if (retval != PRIV_GUARD_ERROR_SUCCESS) {
-               PG_LOGE("PgForeachPackageByPrivacyId : fail");
+               PG_LOGE("Failed to do PrivacyGuardClient::PgForeachPackageByPrivacyId(). [%d]", retval);
                return retval;
        }
 
-       if (packageList.size() == 0) {
-               PG_LOGE("PgForeachPackageByPrivacyId (packageList.size = 0): fail");
+       if (packageList.size() == 0)
                return PRIV_GUARD_ERROR_NO_DATA;
-       }
 
        for (std::list < std::string >::iterator iter = packageList.begin(); iter != packageList.end(); ++iter) {
-               PG_LOGD("package_id : %s", iter->c_str());
+               PG_LOGD("package_id: %s", iter->c_str());
                bool ret = callback(iter->c_str(), user_data);
                if (ret == false)
                        break;
        }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_update_main_monitor_policy(const int user_id, const bool main_monitor_policy)
 {
-       if (user_id < 0)
+       if (user_id < 0) {
+               PG_LOGE("Invalid parameters. (user_id: %d)", user_id);
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
     PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
     int retval = pInst->PgUpdateMainMonitorPolicy(user_id, main_monitor_policy);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgUpdateMainMonitorPolicy() [%d]", retval);
+               return retval;
+       }
 
-    return retval;
+    return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_get_main_monitor_policy(const int user_id, bool *main_monitor_policy)
 {
-       if (user_id < 0)
+       if (user_id < 0) {
+               PG_LOGE("Invalid parameters. (user_id: %d)", user_id);
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient* pInst = PrivacyGuardClient::getInstance();
 
-       PG_LOGD("user_id : %d", user_id);
        int retval = pInst->PgGetMainMonitorPolicy(user_id, *main_monitor_policy);
-       PG_LOGD("result > main_monitor_policy : %d", *main_monitor_policy);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgGetMainMonitorPolicy(). [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
 
 int privacy_guard_client_delete_main_monitor_policy_by_user_id(const int user_id)
 {
-       if (user_id < 0)
+       if (user_id < 0) {
+               PG_LOGE("Invalid parameters. (user_id: %d)", user_id);
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+       }
 
        PrivacyGuardClient *pInst = PrivacyGuardClient::getInstance();
 
        int retval = pInst->PgDeleteMainMonitorPolicyByUserId(user_id);
+       if (retval != PRIV_GUARD_ERROR_SUCCESS) {
+               PG_LOGE("Failed to do PrivacyGuardClient::PgDeleteMainMonitorPolicyByUserId(). [%d]", retval);
+               return retval;
+       }
 
-       return retval;
+       return PRIV_GUARD_ERROR_SUCCESS;
 }
index 1fd3deb..d55e7fc 100755 (executable)
@@ -22,7 +22,6 @@
 #include "privacy_guard_client_types.h"
 
 #define PRIVACY_DB_PATH         tzplatform_mkpath(TZ_SYS_DB,".privacy_guard.db")
-#define PRIVACY_INFO_DB_PATH    tzplatform_mkpath(TZ_SYS_DB,".privacy_guard_privacylist.db")
 
 typedef struct _privacy_data_s {
        char* privacy_id;
index 3504f48..fe414e8 100755 (executable)
@@ -34,9 +34,9 @@ public:
        static int getPrivacyIdListFromPrivilegeList(const std::list< std::string > privilegeList, std::list< std::string >& privacyIdList);
        static bool isValidPrivacyId(const std::string privacyId);
        static int getAllPrivacyId(std::list< std::string >& privacyIdList);
-       static int getPrivaycDisplayName(const std::string privacyId, std::string& displayName);
-       static int getPrivaycDescription(const std::string privacyId, std::string& description);
-       static int isFeatureEnabled(const char* feature, bool& enabled);
+       //static int getPrivaycDisplayName(const std::string privacyId, std::string& displayName);
+       //static int getPrivaycDescription(const std::string privacyId, std::string& description);
+       //static int isFeatureEnabled(const char* feature, bool& enabled);
 };
 
 #endif //_PRIVACYIDINFO_H_
index c6a8262..d8cab99 100755 (executable)
@@ -17,6 +17,7 @@
 #include <set>
 #include <libintl.h>
 #include <system_info.h>
+#include <privilege_info.h>
 #include "PrivacyIdInfo.h"
 #include "privacy_guard_client_types.h"
 #include "PrivacyGuardTypes.h"
@@ -28,42 +29,36 @@ bool PrivacyIdInfo:: m_isInitialized;
 int
 PrivacyIdInfo::initialize(void)
 {
-       static const std::string sqlPrivilege("SELECT PRIVILEGE_ID, PRIVACY_ID from PrivilegeToPrivacyTable");
-       static const std::string sqlPrivacyInfo("SELECT FEATURE FROM PrivacyInfo where PRIVACY_ID=?");
+       GList *privacy_list = NULL, *privilege_list = NULL;
+       GList *l = NULL, *k = NULL;
 
-       openDb(PRIVACY_INFO_DB_PATH, pDbHandler, SQLITE_OPEN_READONLY);
-       prepareDb(pDbHandler, sqlPrivilege.c_str(), pStmtPrivilege);
-
-       int res;
-       while ((res = sqlite3_step(pStmtPrivilege.get())) == SQLITE_ROW)
-       {
-               const char* privilegeId =  reinterpret_cast < const char* > (sqlite3_column_text(pStmtPrivilege.get(), 0));
-               const char* privacyId =  reinterpret_cast < const char* > (sqlite3_column_text(pStmtPrivilege.get(), 1));
-
-               prepareDb(pDbHandler, sqlPrivacyInfo.c_str(), pStmtPrivacyInfo);
-               res = sqlite3_bind_text(pStmtPrivacyInfo.get(), 1, privacyId, -1, SQLITE_TRANSIENT);
-               TryReturn(res == SQLITE_OK, PRIV_GUARD_ERROR_DB_ERROR, , "sqlite3_bind_text : %d", res);
-               res = sqlite3_step(pStmtPrivacyInfo.get());
-               PG_LOGD("privacy id : %s", privacyId);
-               TryReturn(res == SQLITE_DONE || res == SQLITE_ROW, PRIV_GUARD_ERROR_DB_ERROR, , "sqlite3_step : %d", res);
-
-               const char* feature =  reinterpret_cast < const char* > (sqlite3_column_text(pStmtPrivacyInfo.get(), 0));
-               if (feature != NULL)
-               {
-                       bool isSupported = false;
+       int ret = privilege_info_get_privacy_list(&privacy_list);
+       if (ret != PRVMGR_ERR_NONE) {
+               PG_LOGE("Failed to get privacy list from security-privilege-manager [%d].", ret);
+               return PRIV_GUARD_ERROR_INTERNAL_ERROR;
+       }
 
-                       res = isFeatureEnabled(feature, isSupported);
-                       TryReturn(res == PRIV_GUARD_ERROR_SUCCESS, res, , "isFeatureEnabled : %d", res);
+       for (l = privacy_list; l != NULL; l = l->next) {
+               char *privacy_id = (char*)l->data;
+               PG_LOGD("privacy_id: %s", privacy_id);
 
-                       if (!isSupported)
-                       {
-                               continue;
-                       }
+               ret = privilege_info_get_privilege_list_by_privacy(privacy_id, &privilege_list);
+               if (ret != PRVMGR_ERR_NONE) {
+                       PG_LOGE("Failed to get privilege list from security-privilege-manager [%d] using privacy[%s].", ret, privacy_id);
+                       g_list_free(privacy_list);
+                       return PRIV_GUARD_ERROR_INTERNAL_ERROR;
                }
 
-               m_privilegeToPrivacyMap.insert(std::map< std::string, std::string >::value_type(std::string(privilegeId), std::string(privacyId)));
+               for (k = privilege_list; k != NULL; k = k->next) {
+                       char *privilege_id = (char*)k->data;
+                       PG_LOGD("(privacy, privilege): (%s, %s)", privacy_id, privilege_id);
+                       m_privilegeToPrivacyMap.insert(std::map< std::string, std::string >::value_type(std::string(privilege_id), std::string(privacy_id)));
+               }
        }
 
+       g_list_free(privacy_list);
+       g_list_free(privilege_list);
+
        m_isInitialized = true;
 
        return PRIV_GUARD_ERROR_SUCCESS;
@@ -72,16 +67,16 @@ PrivacyIdInfo::initialize(void)
 int
 PrivacyIdInfo::getPrivacyIdFromPrivilege(const std::string privilege, std::string& privacyId)
 {
-       if (!m_isInitialized)
-       {
+       if (!m_isInitialized) {
                initialize();
        }
 
        std::map< std::string, std::string >::iterator iter = m_privilegeToPrivacyMap.find(privilege);
-       if (iter == m_privilegeToPrivacyMap.end())
-       {
+       if (iter == m_privilegeToPrivacyMap.end()) {
+               PG_LOGE("There is no matching privacy to privilege [%s]", privilege.c_str());
                return PRIV_GUARD_ERROR_NO_DATA;
        }
+
        privacyId = iter->second;
 
        return PRIV_GUARD_ERROR_SUCCESS;
@@ -90,23 +85,20 @@ PrivacyIdInfo::getPrivacyIdFromPrivilege(const std::string privilege, std::strin
 int
 PrivacyIdInfo::getPrivilegeListFromPrivacyId(const std::string privacyId, std::list< std::string >& privilegeList)
 {
-       if (!m_isInitialized)
-       {
+       if (!m_isInitialized) {
                initialize();
        }
 
        privilegeList.clear();
-       for (std::map< std::string, std::string >::iterator iter = m_privilegeToPrivacyMap.begin(); iter != m_privilegeToPrivacyMap.end(); ++iter)
-       {
-               if (privacyId.compare((iter->second)) == 0)
-               {
+
+       for (std::map< std::string, std::string >::iterator iter = m_privilegeToPrivacyMap.begin(); iter != m_privilegeToPrivacyMap.end(); ++iter) {
+               if (privacyId.compare((iter->second)) == 0) {
                        privilegeList.push_back(iter->first);
                }
        }
 
-       if (privilegeList.size() == 0)
-       {
-               PG_LOGE("PrivilegeList of %s privacy is empty!", privacyId.c_str());
+       if (privilegeList.size() == 0) {
+               PG_LOGE("There is no matching privilege to privacy [%s].", privacyId.c_str());
                return PRIV_GUARD_ERROR_NO_DATA;
        }
 
@@ -116,8 +108,7 @@ PrivacyIdInfo::getPrivilegeListFromPrivacyId(const std::string privacyId, std::l
 int
 PrivacyIdInfo::getPrivacyIdListFromPrivilegeList(const std::list< std::string > privilegeList, std::list< std::string >& privacyIdList)
 {
-       if (!m_isInitialized)
-       {
+       if (!m_isInitialized) {
                initialize();
        }
 
@@ -125,19 +116,16 @@ PrivacyIdInfo::getPrivacyIdListFromPrivilegeList(const std::list< std::string >
 
        std::set< std::string > privacyIdSet;
 
-       for (std::list< std::string >::const_iterator iter = privilegeList.begin(); iter != privilegeList.end(); ++iter)
-       {
+       for (std::list< std::string >::const_iterator iter = privilegeList.begin(); iter != privilegeList.end(); ++iter) {
                std::string privacyId;
                int res = getPrivacyIdFromPrivilege(*iter, privacyId);
-               if (res == PRIV_GUARD_ERROR_SUCCESS)
-               {
+               if (res == PRIV_GUARD_ERROR_SUCCESS) {
                        PG_LOGD("Privacy[%s] from Privilege[%s]", privacyId.c_str(), iter->c_str());
                        privacyIdSet.insert(privacyId);
                }
        }
 
-       for (std::set< std::string >::iterator iter = privacyIdSet.begin(); iter != privacyIdSet.end(); ++iter)
-       {
+       for (std::set< std::string >::iterator iter = privacyIdSet.begin(); iter != privacyIdSet.end(); ++iter) {
                privacyIdList.push_back(*iter);
        }
 
@@ -163,41 +151,30 @@ PrivacyIdInfo::isValidPrivacyId(const std::string privacyId)
 int
 PrivacyIdInfo::getAllPrivacyId(std::list< std::string >& privacyIdList)
 {
-       static const std::string sql("SELECT PRIVACY_ID, FEATURE from PrivacyInfo");
-
        if (!m_isInitialized)
        {
                initialize();
        }
 
-       openDb(PRIVACY_INFO_DB_PATH, pDbHandler, SQLITE_OPEN_READONLY);
-       prepareDb(pDbHandler, sql.c_str(), pStmt);
-
-       int res;
-       while ((res = sqlite3_step(pStmt.get())) == SQLITE_ROW)
-       {
-               const char* privacyId = reinterpret_cast < const char* > (sqlite3_column_text(pStmt.get(), 0));
-               const char* feature = reinterpret_cast < const char* > (sqlite3_column_text(pStmt.get(), 1));
-               PG_LOGD("privacy: %s, feature: %s", privacyId, feature);
+       GList *privacy_list = NULL;
+       GList *l = NULL;
 
-               if  (feature != NULL)
-               {
-                       bool isSupported = false;
-                       res = isFeatureEnabled(feature, isSupported);
-                       TryReturn(res == PRIV_GUARD_ERROR_SUCCESS, res, , "isFeatureEnabled : %d", res);
-                       if (!isSupported)
-                       {
-                               continue;
-                       }
-               }
+       int ret = privilege_info_get_privacy_list(&privacy_list);
+       if (ret != PRVMGR_ERR_NONE) {
+               PG_LOGE("Failed to get privacy list from security-privilege-manager [%d].", ret);
+               return PRIV_GUARD_ERROR_INTERNAL_ERROR;
+       }
 
-               privacyIdList.push_back(std::string(privacyId));
-               PG_LOGD("privacy Id : %s", privacyId);
+       for (l = privacy_list; l != NULL; l = l->next) {
+               char *privacy_id = (char*)l->data;
+               PG_LOGD("[kylee] privacy_id: %s", privacy_id);
+               privacyIdList.push_back(std::string(privacy_id));
        }
 
        return PRIV_GUARD_ERROR_SUCCESS;
 }
 
+/*
 int
 PrivacyIdInfo::getPrivaycDisplayName(const std::string privacyId, std::string& displayName)
 {
@@ -236,7 +213,9 @@ PrivacyIdInfo::getPrivaycDisplayName(const std::string privacyId, std::string& d
 
        return PRIV_GUARD_ERROR_SUCCESS;
 }
+*/
 
+/*
 int
 PrivacyIdInfo::getPrivaycDescription(const std::string privacyId, std::string& displayName)
 {
@@ -268,8 +247,9 @@ PrivacyIdInfo::getPrivaycDescription(const std::string privacyId, std::string& d
 
        return PRIV_GUARD_ERROR_SUCCESS;
 }
+*/
 
-int
+/*int
 PrivacyIdInfo::isFeatureEnabled(const char* feature, bool& enabled)
 {
        int res = PRIV_GUARD_ERROR_SUCCESS;
@@ -285,3 +265,4 @@ PrivacyIdInfo::isFeatureEnabled(const char* feature, bool& enabled)
 
        return PRIV_GUARD_ERROR_SUCCESS;
 }
+*/
index d217082..afd8fcb 100755 (executable)
@@ -38,6 +38,7 @@ enum {
        PRIV_GUARD_ERROR_INVALID_STATE = -17,
        PRIV_GUARD_ERROR_SYSTEM_ERROR = -18,
        PRIV_GUARD_ERROR_USER_NOT_CONSENTED = -19,
+       PRIV_GUARD_ERROR_INTERNAL_ERROR = -20,
 
        PRIV_GUARD_ERROR_UNKNOWN = -(0x99),
 };
index 95ada4f..6ef1ab0 100755 (executable)
@@ -24,6 +24,7 @@ BuildRequires:  pkgconfig(pkgmgr-info)
 BuildRequires:  pkgconfig(sqlite3)
 BuildRequires: pkgconfig(capi-system-info)
 BuildRequires: pkgconfig(libtzplatform-config)
+BuildRequires: pkgconfig(security-privilege-manager)
 #BuildRequires:        pkgconfig(cynara-monitor)
 
 Requires(post):   /sbin/ldconfig
@@ -77,7 +78,6 @@ make %{?_smp_mflags}
 mkdir -p %{buildroot}%{_prefix}/bin
 cp res/usr/bin/* %{buildroot}%{_bindir}/
 mkdir -p %{buildroot}%{TZ_SYS_DB}
-cp res/opt/dbspace/.privacy_guard_privacylist.db /%{buildroot}%{TZ_SYS_DB}
 
 %make_install
 mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants
@@ -87,7 +87,6 @@ mkdir -p %{buildroot}%{_libdir}/systemd/system/socket.target.wants
 install -m 0644 %{SOURCE2} %{buildroot}%{_libdir}/systemd/system/privacy-guard-server.socket
 ln -sf /usr/lib/systemd/system/privacy-guard-server.socket %{buildroot}%{_libdir}/systemd/system/socket.target.wants/privacy-guard-server.socket
 
-
 %post -n privacy-guard-server
 /sbin/ldconfig
 
@@ -110,7 +109,7 @@ fi
 %defattr(-,root,root,-)
 %license  LICENSE.APLv2
 %manifest privacy-guard-server.manifest
-%{TZ_SYS_DB}/.privacy_guard_privacylist.db
+#%{TZ_SYS_DB}/.privacy_guard_privacylist.db
 %{_bindir}/*
 %{_libdir}/systemd/system/*
 
diff --git a/res/opt/dbspace/.privacy_guard_privacylist.db b/res/opt/dbspace/.privacy_guard_privacylist.db
deleted file mode 100755 (executable)
index 7b9b282..0000000
Binary files a/res/opt/dbspace/.privacy_guard_privacylist.db and /dev/null differ
index 3bdaac1..8e56308 100755 (executable)
@@ -7,8 +7,8 @@ SET(EXEC_PREFIX "\${prefix}")
 SET(INCLUDEDIR "\${prefix}/include")
 
 INCLUDE(FindPkgConfig)
-#pkg_check_modules(pkgs REQUIRED dlog sqlite3 dbus-1 dbus-glib-1 db-util pkgmgr-info capi-system-info libtzplatform-config cynara-monitor)
-pkg_check_modules(pkgs REQUIRED dlog sqlite3 dbus-1 dbus-glib-1 db-util pkgmgr-info capi-system-info libtzplatform-config)
+#pkg_check_modules(pkgs REQUIRED dlog sqlite3 dbus-1 dbus-glib-1 db-util pkgmgr-info capi-system-info libtzplatform-config security-privilege-manager cynara-monitor)
+pkg_check_modules(pkgs REQUIRED dlog sqlite3 dbus-1 dbus-glib-1 db-util pkgmgr-info capi-system-info libtzplatform-config security-privilege-manager)
 
 FOREACH(flag ${pkgs_CFLAGS})
        SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
index 250f088..e137bae 100755 (executable)
 #include <memory>
 #include <list>
 #include <mutex>
+#include <glib.h>
 #include "ICommonDb.h"
 #include "privacy_guard_client_types.h"
 #include "PrivacyGuardTypes.h"
 
-#ifdef __FILTER_LISTED_PKG
-#include <map>
-#endif
-
 class PrivacyGuardDb : public ICommonDb
 {
 private:
        static std::mutex m_singletonMutex;
        static PrivacyGuardDb* m_pInstance;
-#ifdef __FILTER_LISTED_PKG
-    const static std::string PRIVACY_FILTER_LIST_FILE;
-    const static std::string FILTER_KEY;
-    static std::map < std::string, bool > m_filteredPkgList;
-#endif
+       static GList *m_privacy_list;
+       bool m_bInitialized;
 
 private:
-       void createDB(void);
-
        PrivacyGuardDb(void);
-
+       void initialize(void);
        ~PrivacyGuardDb(void);
 
 public:
index 29573b3..f175698 100755 (executable)
 #include <sqlite3.h>
 #include <pkgmgr-info.h>
 #include <time.h>
+#include <privilege_info.h>
 #include "Utils.h"
 #include "PrivacyGuardDb.h"
 #include "PrivacyIdInfo.h"
+
 #if 0
 // [CYNARA]
 #include "CynaraService.h"
@@ -33,23 +35,18 @@ static cynara_monitor_entry **monitor_entries;
 
 std::mutex PrivacyGuardDb::m_singletonMutex;
 PrivacyGuardDb* PrivacyGuardDb::m_pInstance = NULL;
-
-static const char* privacy_list[5] = { "http://tizen.org/privacy/location",
-                                                                "http://tizen.org/privacy/contact",
-                                                                "http://tizen.org/privacy/calendar",
-                                                                "http://tizen.org/privacy/messaging",
-                                                                "http://tizen.org/privacy/callhistory" };
-
-#ifdef __FILTER_LISTED_PKG
-const std::string PrivacyGuardDb::PRIVACY_FILTER_LIST_FILE = std::string("/usr/share/privacy-guard/privacy-guard-list.ini");
-const std::string PrivacyGuardDb::FILTER_KEY = std::string("package_id");
-std::map < std::string, bool > PrivacyGuardDb::m_filteredPkgList;
-#endif
+GList *PrivacyGuardDb::m_privacy_list = NULL;
 
 void
-PrivacyGuardDb::createDB(void)
+PrivacyGuardDb::initialize(void)
 {
+       int res = privilege_info_get_privacy_list(&m_privacy_list);
+       if (res != PRVMGR_ERR_NONE) {
+               PG_LOGE("Failed to get privacy list from security-privilege-manager [%d].", res);
+               return;
+       }
 
+       m_bInitialized = true;
 }
 
 void
@@ -57,7 +54,7 @@ PrivacyGuardDb::openSqliteDB(void)
 {
        int res = -1;
        res = sqlite3_open_v2(PRIVACY_DB_PATH, &m_sqlHandler, SQLITE_OPEN_READWRITE, NULL);
-       if(res == SQLITE_OK)    {
+       if(res == SQLITE_OK) {
                PG_LOGI("monitor db is opened successfully");
 //             sqlite3_wal_autocheckpoint(m_sqlHandler, 1);
                m_bDBOpen = true;
@@ -72,11 +69,12 @@ PrivacyGuardDb::PgAddPrivacyAccessLog(const int userId, std::list < std::pair <
 {
        time_t current_date;
        struct tm tm;
+
        current_date = time(NULL);
        localtime_r(&current_date, &tm);
-
        if(current_date <= 0) {
-               return PRIV_GUARD_ERROR_INVALID_PARAMETER;
+               PG_LOGE("Failed to get current date. Date: [%d] So, return PRIV_GUARD_ERROR_SYSTEM_ERROR.", current_date);
+               return PRIV_GUARD_ERROR_SYSTEM_ERROR;
        }
 
        int res = -1;
@@ -84,20 +82,25 @@ PrivacyGuardDb::PgAddPrivacyAccessLog(const int userId, std::list < std::pair <
        static const std::string QUERY_INSERT = std::string("INSERT INTO StatisticsMonitorInfo(USER_ID, PKG_ID, PRIVACY_ID, USE_DATE) VALUES(?, ?, ?, ?)");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
        }
        TryCatchResLogReturn(m_bDBOpen == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_IO_ERROR, "openSqliteDB : %d", res);
 
-       PG_LOGD("addlogToDb m_sqlHandler : %p", m_sqlHandler);
-
        // prepare
        res = sqlite3_prepare_v2(m_sqlHandler, QUERY_INSERT.c_str(), -1, &m_stmt, NULL);
        TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_prepare_v2 : %d", res);
 
        for (std::list <std::pair <std::string, std::string>>::iterator iter = logInfoList.begin(); iter != logInfoList.end(); ++iter) {
-               PG_LOGD("packageID : %s, PrivacyID : %s", iter->first.c_str(), iter->second.c_str());
+               PG_LOGD("packageID: %s, PrivacyID: %s", iter->first.c_str(), iter->second.c_str());
 
                // bind
                res = sqlite3_bind_int(m_stmt, 1, userId);
@@ -125,7 +128,11 @@ PrivacyGuardDb::PgAddPrivacyAccessLog(const int userId, std::list < std::pair <
 int
 PrivacyGuardDb::PgAddPrivacyAccessLogForCynara(const int userId, const std::string packageId, const std::string privilege, const timespec* timestamp)
 {
+       ////////////////////////////////////////////////
+       // check userId, packageId, privilege here..
+       ////////////////////////////////////////////////
        if(timestamp->tv_sec <= 0) {
+               PG_LOGE("Invalid timestamp value: [%d]", timestamp->tv_sec);
                return PRIV_GUARD_ERROR_INVALID_PARAMETER;
        }
 
@@ -146,6 +153,13 @@ PrivacyGuardDb::PgAddPrivacyAccessLogForCynara(const int userId, const std::stri
        static const std::string QUERY_INSERT = std::string("INSERT INTO StatisticsMonitorInfo(USER_ID, PKG_ID, PRIVACY_ID, USE_DATE) VALUES(?, ?, ?, ?)");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -198,6 +212,13 @@ PrivacyGuardDb::PgAddPrivacyAccessLogTest(const int userId, const std::string pa
        static const std::string QUERY_INSERT = std::string("INSERT INTO StatisticsMonitorInfo(USER_ID, PKG_ID, PRIVACY_ID, USE_DATE) VALUES(?, ?, ?, ?)");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -242,14 +263,19 @@ PrivacyGuardDb::PgAddMonitorPolicy(const int userId, const std::string packageId
        static const std::string QUERY_INSERT = std::string("INSERT INTO MonitorPolicy(USER_ID, PKG_ID, PRIVACY_ID, MONITOR_POLICY) VALUES(?, ?, ?, ?)");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
        }
        TryCatchResLogReturn(m_bDBOpen == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_IO_ERROR, "openSqliteDB : %d", res);
 
-       PG_LOGD("addlogToDb m_sqlHandler : %p", m_sqlHandler);
-
        // prepare
        res = sqlite3_prepare_v2(m_sqlHandler, QUERY_INSERT.c_str(), -1, &m_stmt, NULL);
        TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_prepare_v2 : %d", res);
@@ -287,6 +313,13 @@ PrivacyGuardDb::PgCheckPrivacyPackage(const int userId, const std::string packag
        static const std::string query = std::string("SELECT COUNT(*) FROM MonitorPolicy WHERE USER_ID=? AND PKG_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -325,8 +358,6 @@ PrivacyGuardDb::PgCheckPrivacyPackage(const int userId, const std::string packag
 int
 PrivacyGuardDb::PgDeleteAllLogsAndMonitorPolicy(void)
 {
-       PG_LOGD("PgDeleteAllLogsAndMonitorPolicy");
-
        int res = -1;
 
        static const std::string LOG_DELETE = std::string("DELETE FROM StatisticsMonitorInfo");
@@ -334,6 +365,13 @@ PrivacyGuardDb::PgDeleteAllLogsAndMonitorPolicy(void)
        static const std::string MAIN_POLICY_DELETE = std::string("DELETE FROM MainMonitorPolicy");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -368,13 +406,18 @@ PrivacyGuardDb::PgDeleteAllLogsAndMonitorPolicy(void)
 int
 PrivacyGuardDb::PgDeleteLogsByPackageId(const std::string packageId)
 {
-       PG_LOGD("PrivacyGuardDb::PgDeleteLogsByPackageId packageid : %s", packageId.c_str());
-
        int res = -1;
 
        static const std::string QUERY_DELETE = std::string("DELETE FROM StatisticsMonitorInfo WHERE PKG_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -401,13 +444,18 @@ PrivacyGuardDb::PgDeleteLogsByPackageId(const std::string packageId)
 int
 PrivacyGuardDb::PgDeleteMonitorPolicyByPackageId(const std::string packageId)
 {
-       PG_LOGD("PrivacyGuardDb::PgDeleteMonitorPolicyByPackageId packageid : %s", packageId.c_str());
-
        int res = -1;
 
        static const std::string QUERY_DELETE = std::string("DELETE FROM MonitorPolicy WHERE PKG_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -465,6 +513,13 @@ PrivacyGuardDb::PgForeachTotalPrivacyCountOfPackage(const int userId, const int
        sqlite3_stmt* infoStmt;
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -550,16 +605,21 @@ PrivacyGuardDb::PgForeachTotalPrivacyCountOfPrivacy(const int userId, const int
        static const std::string PRIVACY_SELECT = std::string("SELECT COUNT(*) FROM StatisticsMonitorInfo WHERE USER_ID=? AND PRIVACY_ID=? AND USE_DATE>=? AND USE_DATE<=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
        }
        TryCatchResLogReturn(m_bDBOpen == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_IO_ERROR, "openSqliteDB : %d", res);
 
-       int i;
-       int cnt_privacy = sizeof(privacy_list) / sizeof(privacy_list[0]);
-
-       for (i = 0; i < cnt_privacy; i++) {
+       GList* l;
+       for (l = m_privacy_list; l != NULL; l = l->next) {
                // prepare
                res = sqlite3_prepare_v2(m_sqlHandler, PRIVACY_SELECT.c_str(), -1, &m_stmt, NULL);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_prepare_v2 : %d", res);
@@ -568,7 +628,8 @@ PrivacyGuardDb::PgForeachTotalPrivacyCountOfPrivacy(const int userId, const int
                res = sqlite3_bind_int(m_stmt, 1, userId);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_bind_int : %d", res);
 
-               res = sqlite3_bind_text(m_stmt, 2, privacy_list[i], -1, SQLITE_TRANSIENT);
+               //res = sqlite3_bind_text(m_stmt, 2, privacy_list[i], -1, SQLITE_TRANSIENT);
+               res = sqlite3_bind_text(m_stmt, 2, (char*)l->data, -1, SQLITE_TRANSIENT);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_bind_text : %d", res);
 
                res = sqlite3_bind_int(m_stmt, 3, startDate);
@@ -580,10 +641,9 @@ PrivacyGuardDb::PgForeachTotalPrivacyCountOfPrivacy(const int userId, const int
                // step
                if ((res = sqlite3_step(m_stmt)) == SQLITE_ROW) {
                        int count = sqlite3_column_int(m_stmt, 0);
-                       if (count == 0) {
+                       if (count == 0)
                                continue;
-                       }
-                       const char* privacyId = privacy_list[i];
+                       const char* privacyId = (char*)l->data;
                        privacyInfoList.push_back(std::pair <std::string, int> (std::string(privacyId), count));
                }
                sqlite3_reset(m_stmt);
@@ -628,6 +688,13 @@ PrivacyGuardDb::PgForeachPrivacyCountByPrivacyId(const int userId, const int sta
        sqlite3_stmt* infoStmt;
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -677,9 +744,8 @@ PrivacyGuardDb::PgForeachPrivacyCountByPrivacyId(const int userId, const int sta
 
                if ((res = sqlite3_step(infoStmt)) == SQLITE_ROW) {
                        int count = sqlite3_column_int(infoStmt, 0);
-                       if (count == 0) {
+                       if (count == 0)
                                continue;
-                       }
                        packageInfoList.push_back(std::pair <std::string, int> (std::string(packageId), count));
                }
                sqlite3_reset(infoStmt);
@@ -722,16 +788,21 @@ PrivacyGuardDb::PgForeachPrivacyCountByPackageId(const int userId, const int sta
        static const std::string PRIVACY_SELECT = std::string("SELECT COUNT(*) FROM StatisticsMonitorInfo WHERE USER_ID=? AND PKG_ID=? AND PRIVACY_ID=? AND USE_DATE>=? AND USE_DATE<=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
        }
        TryCatchResLogReturn(m_bDBOpen == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_IO_ERROR, "openSqliteDB : %d", res);
 
-       int i;
-       int cnt_privacy = sizeof(privacy_list) / sizeof(privacy_list[0]);
-
-       for (i = 0; i < cnt_privacy; i++) {
+       GList *l;
+       for (l = m_privacy_list; l != NULL; l = l->next) {
                // prepare
                res = sqlite3_prepare_v2(m_sqlHandler, PRIVACY_SELECT.c_str(), -1, &m_stmt, NULL);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_prepare_v2 : %d", res);
@@ -743,7 +814,7 @@ PrivacyGuardDb::PgForeachPrivacyCountByPackageId(const int userId, const int sta
                res = sqlite3_bind_text(m_stmt, 2, packageId.c_str(), -1, SQLITE_TRANSIENT);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_bind_text : %d", res);
 
-               res = sqlite3_bind_text(m_stmt, 3, privacy_list[i], -1, SQLITE_TRANSIENT);
+               res = sqlite3_bind_text(m_stmt, 3, (char*)l->data, -1, SQLITE_TRANSIENT);
                TryCatchResLogReturn(res == SQLITE_OK, m_dbMutex.unlock(), PRIV_GUARD_ERROR_DB_ERROR, "sqlite3_bind_text : %d", res);
 
                res = sqlite3_bind_int(m_stmt, 4, startDate);
@@ -757,7 +828,8 @@ PrivacyGuardDb::PgForeachPrivacyCountByPackageId(const int userId, const int sta
                        if (count == 0) {
                                continue;
                        }
-                       const char* privacyId = privacy_list[i];
+                       const char* privacyId = (char*)l->data;
+                       PG_LOGD("[kylee] privacy ID: %s", privacyId);
                        privacyInfoList.push_back(std::pair <std::string, int> (std::string(privacyId), count));
                }
                sqlite3_reset(m_stmt);
@@ -776,6 +848,13 @@ PrivacyGuardDb::PgGetMonitorPolicy(const int userId, const std::string packageId
        static const std::string query = std::string("SELECT MONITOR_POLICY FROM MonitorPolicy WHERE USER_ID=? AND PKG_ID=? AND PRIVACY_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -814,6 +893,13 @@ PrivacyGuardDb::PgGetAllMonitorPolicy(std::list < std::pair < std::string, int >
        static const std::string MONITOR_POLICY_SELECT = std::string("SELECT * FROM MonitorPolicy");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -858,6 +944,13 @@ PrivacyGuardDb::PgForeachMonitorPolicyByPackageId(const int userId, const std::s
        static const std::string query = std::string("SELECT DISTINCT PRIVACY_ID, MONITOR_POLICY FROM MonitorPolicy WHERE USER_ID=? AND PKG_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -900,6 +993,13 @@ PrivacyGuardDb::PgForeachPrivacyPackageId(const int userId, std::list < std::str
        static const std::string query = std::string("SELECT DISTINCT PKG_ID FROM MonitorPolicy WHERE USER_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -934,6 +1034,13 @@ PrivacyGuardDb::PgForeachPackageByPrivacyId(const int userId, const std::string
        static const std::string query = std::string("SELECT DISTINCT PKG_ID FROM MonitorPolicy WHERE USER_ID=? AND PRIVACY_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -971,6 +1078,13 @@ PrivacyGuardDb::PgUpdateMonitorPolicy(const int userId, const std::string packag
        static const std::string query = std::string("UPDATE MonitorPolicy SET MONITOR_POLICY=? WHERE USER_ID=? AND PKG_ID=? AND PRIVACY_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -1011,6 +1125,13 @@ PrivacyGuardDb::PgAddMainMonitorPolicy(const int userId)
        static const std::string QUERY_INSERT = std::string("INSERT INTO MainMonitorPolicy(USER_ID) VALUES(?)");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -1043,6 +1164,13 @@ PrivacyGuardDb::PgUpdateMainMonitorPolicy(const int userId, const bool mainMonit
        static const std::string query = std::string("UPDATE MainMonitorPolicy SET MAIN_MONITOR_POLICY=? WHERE USER_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -1082,6 +1210,13 @@ PrivacyGuardDb::PgGetMainMonitorPolicy(const int userId, bool &mainMonitorPolicy
        static const std::string query = std::string("SELECT MAIN_MONITOR_POLICY FROM MainMonitorPolicy WHERE USER_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -1119,6 +1254,13 @@ PrivacyGuardDb::PgDeleteMainMonitorPolicyByUserId(const int userId)
        static const std::string QUERY_DELETE = std::string("DELETE FROM MainMonitorPolicy WHERE USER_ID=?");
 
        m_dbMutex.lock();
+
+       // initialize
+       if (m_bInitialized == false) {
+               initialize();
+       }
+       TryCatchResLogReturn(m_bInitialized == true, m_dbMutex.unlock(), PRIV_GUARD_ERROR_NOT_INITIALIZED, "Failed to initialize", res);
+
        // open db
        if(m_bDBOpen == false) {
                openSqliteDB();
@@ -1144,11 +1286,11 @@ PrivacyGuardDb::PgDeleteMainMonitorPolicyByUserId(const int userId)
 
 PrivacyGuardDb::PrivacyGuardDb(void)
 {
-
        // open DB
        m_bDBOpen = false;
        m_sqlHandler = NULL;
        m_dbMutex.lock();
+       initialize();
        openSqliteDB();
        m_dbMutex.unlock();
        m_stmt = NULL;
@@ -1164,6 +1306,13 @@ PrivacyGuardDb::~PrivacyGuardDb(void)
                m_bDBOpen = false;
                m_dbMutex.unlock();
        }
+
+       if (m_bInitialized == true) {
+               m_dbMutex.lock();
+               g_list_free(m_privacy_list);
+               m_bInitialized = false;
+               m_dbMutex.unlock();
+       }
 }
 
 PrivacyGuardDb*
index ba64dd9..637cb13 100755 (executable)
 void
 PrivacyInfoService::PgAddPrivacyAccessLog(SocketConnection* pConnector)
 {
-       PG_LOGI("PRIVACY PrivacyInfoService PgAddPrivacyAccessLog");
-
        int userId = 0;
        std::list <std::pair<std::string, std::string>> logInfoList;
 
        pConnector->read(&userId, &logInfoList);
-       PG_LOGD("PrivacyInfoService PgAddPrivacyAccessLog userId : %d", userId);
 
        int result = PrivacyGuardDb::getInstance()->PgAddPrivacyAccessLog(userId, logInfoList);
 
@@ -37,14 +34,11 @@ PrivacyInfoService::PgAddPrivacyAccessLog(SocketConnection* pConnector)
 void
 PrivacyInfoService::PgAddPrivacyAccessLogTest(SocketConnection* pConnector)
 {
-       PG_LOGI("PRIVACY PrivacyInfoService PgAddPrivacyAccessLogTest");
-
        int userId = 0;
        std::string packageId;
        std::string privacyId;
 
        pConnector->read(&userId, &packageId, &privacyId);
-       PG_LOGD("PrivacyInfoService PgAddPrivacyAccessLogTest userId : %d", userId);
 
        int result = PrivacyGuardDb::getInstance()->PgAddPrivacyAccessLogTest(userId, packageId, privacyId);
 
@@ -58,6 +52,7 @@ PrivacyInfoService::PgAddMonitorPolicy(SocketConnection* pConnector)
        std::string pkgId;
        std::list < std::string > list;
        bool privacyPopupRequired = true;
+
        pConnector->read(&userId, &pkgId, &list, &privacyPopupRequired);
 
        int result = PrivacyGuardDb::getInstance()->PgAddMonitorPolicy(userId, pkgId, list, privacyPopupRequired);
@@ -77,6 +72,7 @@ void
 PrivacyInfoService::PgDeleteLogsByPackageId(SocketConnection* pConnector)
 {
        std::string packageId;
+
        pConnector->read(&packageId);
 
        int result = PrivacyGuardDb::getInstance()->PgDeleteLogsByPackageId(packageId);
@@ -88,6 +84,7 @@ void
 PrivacyInfoService::PgDeleteMonitorPolicyByPackageId(SocketConnection* pConnector)
 {
        std::string packageId;
+
        pConnector->read(&packageId);
 
        int result = PrivacyGuardDb::getInstance()->PgDeleteMonitorPolicyByPackageId(packageId);
@@ -102,11 +99,10 @@ PrivacyInfoService::PgForeachTotalPrivacyCountOfPackage(SocketConnection* pConne
        int startDate = -1;
        int endDate = -1;
        std::list < std::pair < std::string, int > > packageInfoList;
+
        pConnector->read(&userId, &startDate, &endDate);
 
-       PG_LOGD("requested > userId : %d, startDate : %d, endDate : %d", userId, startDate, endDate);
        int result = PrivacyGuardDb::getInstance()->PgForeachTotalPrivacyCountOfPackage(userId, startDate, endDate, packageInfoList);
-       PG_LOGD("response > packageInfoList size : %d", packageInfoList.size());
 
        pConnector->write(result);
        pConnector->write(packageInfoList);
@@ -119,11 +115,10 @@ PrivacyInfoService::PgForeachTotalPrivacyCountOfPrivacy(SocketConnection* pConne
        int startDate = -1;
        int endDate = -1;
        std::list < std::pair < std::string, int > > privacyInfoList;
+
        pConnector->read(&userId, &startDate, &endDate);
 
-       PG_LOGD("requested > startDate : %d, endDate : %d", startDate, endDate);
        int result = PrivacyGuardDb::getInstance()->PgForeachTotalPrivacyCountOfPrivacy(userId, startDate, endDate, privacyInfoList);
-       PG_LOGD("response > privacyInfoList size : %d", privacyInfoList.size());
 
        pConnector->write(result);
        pConnector->write(privacyInfoList);
@@ -137,13 +132,10 @@ PrivacyInfoService::PgForeachPrivacyCountByPrivacyId(SocketConnection* pConnecto
        int endDate = -1;
        std::string privacyId;
        std::list < std::pair < std::string, int > > packageInfoList;
+
        pConnector->read(&userId, &startDate, &endDate, &privacyId);
 
-       PG_LOGD("requested > startDate : %d, endDate : %d, privacyId : %s",
-                       startDate, endDate, privacyId.c_str());
-       int result = PrivacyGuardDb::getInstance()->PgForeachPrivacyCountByPrivacyId(userId, startDate, endDate,
-                                               privacyId, packageInfoList);
-       PG_LOGD("response > packageInfoList size : %d", packageInfoList.size());
+       int result = PrivacyGuardDb::getInstance()->PgForeachPrivacyCountByPrivacyId(userId, startDate, endDate, privacyId, packageInfoList);
 
        pConnector->write(result);
        pConnector->write(packageInfoList);
@@ -157,13 +149,10 @@ PrivacyInfoService::PgForeachPrivacyCountByPackageId(SocketConnection* pConnecto
        int endDate = -1;
        std::string packageId;
        std::list < std::pair < std::string, int > > privacyInfoList;
+
        pConnector->read(&userId, &startDate, &endDate, &packageId);
 
-       PG_LOGD("requested > startDate : %d, endDate : %d, packageId : %s",
-                       startDate, endDate, packageId.c_str());
-       int result = PrivacyGuardDb::getInstance()->PgForeachPrivacyCountByPackageId(userId, startDate, endDate,
-                                               packageId, privacyInfoList);
-       PG_LOGD("response > privacyInfoList size : %d", privacyInfoList.size());
+       int result = PrivacyGuardDb::getInstance()->PgForeachPrivacyCountByPackageId(userId, startDate, endDate, packageId, privacyInfoList);
 
        pConnector->write(result);
        pConnector->write(privacyInfoList);
@@ -176,10 +165,8 @@ PrivacyInfoService::PgForeachPrivacyPackageId(SocketConnection* pConnector)
        std::list < std::string > packageList;
 
        pConnector->read(&userId);
-       PG_LOGD("requested > userId : %d", userId);
 
        int result = PrivacyGuardDb::getInstance()->PgForeachPrivacyPackageId(userId, packageList);
-       PG_LOGD("response > packageList size : %d", packageList.size());
 
        pConnector->write(result);
        pConnector->write(packageList);
@@ -190,13 +177,11 @@ PrivacyInfoService::PgForeachMonitorPolicyByPackageId(SocketConnection* pConnect
 {
        int userId = 0;
        std::string packageId;
-       pConnector->read(&userId, &packageId);
-
        std::list <privacy_data_s> privacyInfoList;
-       int result = -1;
-       result = PrivacyGuardDb::getInstance()->PgForeachMonitorPolicyByPackageId(userId, packageId, privacyInfoList);
 
-       PG_LOGD("response > privacyInfoList size : %d", privacyInfoList.size());
+       pConnector->read(&userId, &packageId);
+
+       int result = PrivacyGuardDb::getInstance()->PgForeachMonitorPolicyByPackageId(userId, packageId, privacyInfoList);
 
        pConnector->write(result);
        pConnector->write(privacyInfoList);
@@ -208,14 +193,11 @@ PrivacyInfoService::PgGetMonitorPolicy(SocketConnection* pConnector)
        int userId = 0;
        std::string packageId;
        std::string privacyId;
-       pConnector->read(&userId, &packageId, &privacyId);
-
-       PG_LOGD("requested > packageId : %s, privacyId : %s", packageId.c_str(), privacyId.c_str());
        int monitorPolicy = 1;
-       int result = -1;
-       result = PrivacyGuardDb::getInstance()->PgGetMonitorPolicy(userId, packageId, privacyId, monitorPolicy);
 
-       PG_LOGD("response > monitorPolicy : %d", monitorPolicy);
+       pConnector->read(&userId, &packageId, &privacyId);
+
+       int result = PrivacyGuardDb::getInstance()->PgGetMonitorPolicy(userId, packageId, privacyId, monitorPolicy);
 
        pConnector->write(result);
        pConnector->write(monitorPolicy);
@@ -240,10 +222,8 @@ PrivacyInfoService::PgForeachPackageByPrivacyId(SocketConnection* pConnector)
        std::list < std::string > packageList;
 
        pConnector->read(&userId, &privacyId);
-       PG_LOGD("requested > userId : %d, privacyId : %s", userId, privacyId.c_str());
 
        int result = PrivacyGuardDb::getInstance()->PgForeachPackageByPrivacyId(userId, privacyId, packageList);
-       PG_LOGD("response > packageList size : %d", packageList.size());
 
        pConnector->write(result);
        pConnector->write(packageList);
@@ -255,9 +235,9 @@ PrivacyInfoService::PgCheckPrivacyPackage(SocketConnection* pConnector)
        int userId = 0;
        std::string packageId;
        bool isPrivacyPackage = false;
+
        pConnector->read(&userId, &packageId);
 
-       PG_LOGD("requested > packageId : %s", packageId.c_str());
        int result = PrivacyGuardDb::getInstance()->PgCheckPrivacyPackage(userId, packageId, isPrivacyPackage);
 
        pConnector->write(result);
@@ -271,10 +251,9 @@ PrivacyInfoService::PgUpdateMonitorPolicy(SocketConnection* pConnector)
        std::string packageId;
        std::string privacyId;
        int monitorPolicy = 1;
+
        pConnector->read(&userId, &packageId, &privacyId, &monitorPolicy);
 
-       PG_LOGD("requested > packageId : %s, privacyId : %s, monitorPolicy : %d",
-                               packageId.c_str(), privacyId.c_str(), monitorPolicy);
        int result = PrivacyGuardDb::getInstance()->PgUpdateMonitorPolicy(userId, packageId, privacyId, monitorPolicy);
 
        pConnector->write(result);
@@ -285,9 +264,9 @@ PrivacyInfoService::PgUpdateMainMonitorPolicy(SocketConnection* pConnector)
 {
        int userId = 0;
        bool mainMonitorPolicy = false;
+
        pConnector->read(&userId, &mainMonitorPolicy);
 
-       PG_LOGD("requested > mainMonitorPolicy : %d", mainMonitorPolicy);
        int result = PrivacyGuardDb::getInstance()->PgUpdateMainMonitorPolicy(userId, mainMonitorPolicy);
 
        pConnector->write(result);
@@ -297,15 +276,11 @@ void
 PrivacyInfoService::PgGetMainMonitorPolicy(SocketConnection* pConnector)
 {
        int userId = 0;
-       pConnector->read(&userId);
-
-       PG_LOGD("PgGetMainMonitorPolicy userId : %d", userId);
-
        bool mainMonitorPolicy = false;
-       int result = -1;
-       result = PrivacyGuardDb::getInstance()->PgGetMainMonitorPolicy(userId, mainMonitorPolicy);
 
-       PG_LOGD("response > mainMonitorPolicy : %d", mainMonitorPolicy);
+       pConnector->read(&userId);
+
+       int result = PrivacyGuardDb::getInstance()->PgGetMainMonitorPolicy(userId, mainMonitorPolicy);
 
        pConnector->write(result);
        pConnector->write(mainMonitorPolicy);
@@ -315,6 +290,7 @@ void
 PrivacyInfoService::PgDeleteMainMonitorPolicyByUserId(SocketConnection* pConnector)
 {
        int userId = 0;
+
        pConnector->read(&userId);
 
        int result = PrivacyGuardDb::getInstance()->PgDeleteMainMonitorPolicyByUserId(userId);