From d2f39a954a6924d0f2d8974157c7c8e9ba8bc2bd Mon Sep 17 00:00:00 2001 From: "Sabera Djelti (sdi2)" Date: Thu, 4 Sep 2014 11:21:02 +0200 Subject: [PATCH] Remove chsmack + fix surplus directories Change-Id: Iccd5e65ccdbfa89656653adeea63a804fce9a757 Signed-off-by: Sabera Djelti (sdi2) --- src/ail_db.c | 44 +++++++++++--------------------------------- 1 file changed, 11 insertions(+), 33 deletions(-) diff --git a/src/ail_db.c b/src/ail_db.c index 69eea1c..474f453 100755 --- a/src/ail_db.c +++ b/src/ail_db.c @@ -41,8 +41,6 @@ #define QUERY_CREATE_VIEW_LOCAL "CREATE temp VIEW localname as select distinct * from (select * from main.localname m union select * from Global.localname g)" -#define SMACK_LABEL "_" - #define retv_with_dbmsg_if(expr, val) do { \ if (expr) { \ _E("db_info.dbUserro: %s", sqlite3_errmsg(db_info.dbUserro)); \ @@ -148,12 +146,6 @@ char* ail_get_icon_path(uid_t uid) _E("UID [%d] does not belong to 'root' group!", uid); return NULL; } - /* chsmack */ - if (smack_setlabel(result, SMACK_LABEL, SMACK_LABEL_ACCESS)) { - _E("failed chsmack -a \"%s\" %s", SMACK_LABEL, result); - } else { - _D("chsmack -a \"%s\" %s", SMACK_LABEL, result); - } } int ret; mkdir(result, S_IRWXU | S_IRGRP | S_IXGRP | S_IXOTH); @@ -204,27 +196,18 @@ static char* ail_get_app_DB(uid_t uid) } result = strdup(APP_INFO_DB_FILE); journal = strdup(APP_INFO_DB_FILE_JOURNAL); - /* chsmack */ - /*Check if we have permission to do it*/ - if (geteuid() == 0) { - if (smack_setlabel(result, SMACK_LABEL, SMACK_LABEL_ACCESS)) { - _E("failed chsmack -a \"%s\" %s", SMACK_LABEL, result); - } else { - _D("chsmack -a \"%s\" %s", SMACK_LABEL, result); - } - if (smack_setlabel(journal, SMACK_LABEL, SMACK_LABEL_ACCESS)) { - _E("failed chsmack -a \"%s\" %s", SMACK_LABEL, journal); - } else { - _D("chsmack -a \"%s\" %s", SMACK_LABEL, journal); - } - } } - dir = strrchr(result, '/'); + char *temp = strdup(result); + dir = strrchr(temp, '/'); if(!dir) + { + free(temp); return result; + } + *dir = 0; if ((uid != GLOBAL_USER)||((uid == GLOBAL_USER)&& (geteuid() == 0 ))) { int ret; - mkdir(dir + 1, S_IRWXU | S_IRGRP | S_IXGRP | S_IXOTH); + mkdir(temp, S_IRWXU | S_IRGRP | S_IXGRP | S_IXOTH); ret = chown(dir + 1, uid, grpinfo->gr_gid); if (ret == -1) { char buf[BUFSIZE]; @@ -232,6 +215,7 @@ static char* ail_get_app_DB(uid_t uid) _E("FAIL : chown %s %d.%d, because %s", dir + 1, uid, grpinfo->gr_gid, buf); } } + free(temp); return result; } @@ -270,12 +254,6 @@ char* al_get_desktop_path(uid_t uid) return NULL; } result = tzplatform_mkpath(TZ_SYS_RW_DESKTOP_APP, "/"); - /* chsmack */ - if (smack_setlabel(result, SMACK_LABEL, SMACK_LABEL_ACCESS)) { - _E("failed chsmack -a \"%s\" %s", SMACK_LABEL, result); - } else { - _D("chsmack -a \"%s\" %s", SMACK_LABEL, result); - } } if ((uid != GLOBAL_USER)||((uid == GLOBAL_USER)&& (geteuid() == 0 ))) { int ret; @@ -380,19 +358,19 @@ ail_error_e db_open(db_open_mode mode, uid_t uid) char query_view_app[AIL_SQL_QUERY_MAX_LEN]; char query_view_local[AIL_SQL_QUERY_MAX_LEN]; snprintf(query_attach, AIL_SQL_QUERY_MAX_LEN, QUERY_ATTACH, ail_get_app_DB(GLOBAL_USER)); - _D("info : execute query_attach : %s", query_attach ); if (db_exec_usr_ro(query_attach) < 0) { + _D("executing query_attach : %s", query_attach ); return AIL_ERROR_DB_FAILED; } snprintf(query_view_app, AIL_SQL_QUERY_MAX_LEN, QUERY_CREATE_VIEW_APP); - _D("info : execute query_attach : %s", query_view_app ); if (db_exec_usr_ro(query_view_app) < 0) { + _D("executing query_attach : %s", query_view_app ); return AIL_ERROR_DB_FAILED; } snprintf(query_view_local, AIL_SQL_QUERY_MAX_LEN, QUERY_CREATE_VIEW_LOCAL); - _D("info : execute query_attach : %s", query_view_local ); if (db_exec_usr_ro(query_view_local) < 0) { + _D("executing query_attach : %s", query_view_local ); return AIL_ERROR_DB_FAILED; } } -- 2.7.4