Remove unnecessary permission check 24/211724/1
authorHwankyu Jhun <h.jhun@samsung.com>
Thu, 8 Aug 2019 09:43:59 +0000 (18:43 +0900)
committerHwankyu Jhun <h.jhun@samsung.com>
Thu, 8 Aug 2019 09:45:02 +0000 (18:45 +0900)
If a process doesn't have a permission, sqlite3_open_v2() returns an
error.

Change-Id: If035b484035a2c27059e8aabadcefc652349c204
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
include/aul_svc_db.h
src/service.c
src/service_db.c

index 2873172..0d6f163 100755 (executable)
@@ -35,7 +35,6 @@ extern "C"
 {
 #endif
 
-int _svc_db_check_perm(uid_t uid, bool readonly);
 int _svc_db_add_app(const char *op, const char *mime_type, const char *uri, const char *pkg_name, uid_t uid);
 int _svc_db_delete_with_pkgname(const char *pkg_name, uid_t uid);
 char* _svc_db_get_app(const char *op, const char *mime_type, const char *uri, uid_t uid);
index 6fd002c..9e05ccb 100755 (executable)
@@ -1008,13 +1008,6 @@ static int __resolution_pre(resolution_info_t *info)
                return AUL_SVC_RET_OK;
        }
 
-       ret = _svc_db_check_perm(info->uid, true);
-       if (ret < 0) {
-               _E("Permission denied. error(%d)", ret);
-               ret = AUL_SVC_RET_EILLACC;
-               goto err;
-       }
-
        return AUL_SVC_RET_OK;
 
 err:
@@ -1423,13 +1416,6 @@ API int aul_svc_get_all_defapps_for_uid(aul_svc_info_iter_fn iter_fn,
        GSList *pkg_list = NULL;
        GSList *iter = NULL;
 
-
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("permission error : %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_get_list_with_all_defapps(&pkg_list, uid);
        if (ret < 0)
                return ret;
@@ -1558,12 +1544,6 @@ API int aul_svc_set_defapp_for_uid(const char *op, const char *mime_type,
        if (op == NULL || defapp == NULL)
                return AUL_SVC_RET_EINVAL;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("permission error : %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_add_app(op, mime_type, uri, defapp, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1583,12 +1563,6 @@ API int aul_svc_unset_defapp_for_uid(const char *defapp, uid_t uid)
        if (defapp == NULL)
                return AUL_SVC_RET_EINVAL;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("permission error : %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_delete_with_pkgname(defapp, uid);
 
        if (ret < 0)
@@ -1606,12 +1580,6 @@ API int aul_svc_unset_all_defapps_for_uid(uid_t uid)
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("permission error : %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_delete_all(uid);
 
        if (ret < 0)
@@ -1628,14 +1596,6 @@ API int aul_svc_is_defapp(const char *pkg_name)
 
 API int aul_svc_is_defapp_for_uid(const char *pkg_name, uid_t uid)
 {
-       int ret;
-
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("permission error : %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        return _svc_db_is_defapp(pkg_name, uid);
 }
 
@@ -1779,12 +1739,6 @@ API int aul_svc_set_alias_appid_for_uid(const char *alias_appid,
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_add_alias_appid(alias_appid, appid, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1801,12 +1755,6 @@ API int aul_svc_unset_alias_appid_for_uid(const char *alias_appid, uid_t uid)
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_delete_alias_appid(alias_appid, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1832,12 +1780,6 @@ API int aul_svc_foreach_alias_info_for_uid(void (*callback)(
                return AUL_SVC_RET_EINVAL;
        }
 
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_foreach_alias_info(callback, uid, user_data);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1854,12 +1796,6 @@ API int aul_svc_enable_alias_info_for_uid(const char *appid, uid_t uid)
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_enable_alias_info(appid, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1876,12 +1812,6 @@ API int aul_svc_disable_alias_info_for_uid(const char *appid, uid_t uid)
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, false);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_disable_alias_info(appid, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1900,12 +1830,6 @@ API int aul_svc_get_appid_by_alias_appid_for_uid(const char *alias_appid,
 {
        int ret;
 
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_get_appid_from_alias_info(alias_appid, appid, uid);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1932,12 +1856,6 @@ API int aul_svc_foreach_alias_info_by_appid_for_uid(int (*callback)(
                return AUL_SVC_RET_EINVAL;
        }
 
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_foreach_alias_info_by_appid(callback, appid,
                        uid, user_data);
        if (ret < 0)
@@ -1964,12 +1882,6 @@ API int aul_svc_foreach_allowed_info_for_uid(int (*callback)(const char *appid,
                return AUL_SVC_RET_EINVAL;
        }
 
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_foreach_allowed_info(callback, uid, user_data);
        if (ret < 0)
                return AUL_SVC_RET_ERROR;
@@ -1996,12 +1908,6 @@ API int aul_svc_foreach_allowed_info_by_appid_for_uid(int (*callback)(
                return AUL_SVC_RET_EINVAL;
        }
 
-       ret = _svc_db_check_perm(uid, true);
-       if (ret < 0) {
-               _E("Permission error: %d", ret);
-               return AUL_SVC_RET_EILLACC;
-       }
-
        ret = _svc_db_foreach_allowed_info_by_appid(callback, appid,
                        uid, user_data);
        if (ret < 0)
index 5fa39f0..18a1aa2 100755 (executable)
@@ -292,27 +292,6 @@ static int __fini(sqlite3 **svc_db)
        return 0;
 }
 
-int _svc_db_check_perm(uid_t uid, bool readonly)
-{
-       int ret = 0;
-       char *db;
-       sqlite3 *svc_db = NULL;
-
-       if (__init(uid, readonly, &svc_db) < 0)
-               return -1;
-
-       db = __get_svc_db(uid);
-       if (db == NULL) {
-               __fini(&svc_db);
-               return -1;
-       }
-
-       ret = access(db, readonly ? R_OK : (R_OK | W_OK));
-       free(db);
-       __fini(&svc_db);
-       return ret;
-}
-
 static int __insert_info(sqlite3 *db, const char *op, const char *mime_type,
                const char *uri, const char *appid)
 {