From 72e66d0e42f3bb6efd689ce33b1df407d94b3c60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Bollo?= Date: Mon, 16 Nov 2015 14:26:25 +0100 Subject: [PATCH] Removing tizen-platform-config Change-Id: Ic832a2b75229517b09faba969c27fb1a4b490121 --- policy/security-manager-policy-reload | 2 +- src/common/file-lock.cpp | 4 +--- src/common/include/file-lock.h | 1 - src/common/include/privilege_db.h | 3 +-- src/common/service_impl.cpp | 39 +++++++++++------------------------ src/common/smack-rules.cpp | 12 ++++------- 6 files changed, 19 insertions(+), 42 deletions(-) diff --git a/policy/security-manager-policy-reload b/policy/security-manager-policy-reload index 6f211c6..ed8047a 100755 --- a/policy/security-manager-policy-reload +++ b/policy/security-manager-policy-reload @@ -2,7 +2,7 @@ POLICY_PATH=/usr/share/security-manager/policy PRIVILEGE_GROUP_MAPPING=$POLICY_PATH/privilege-group.list -DB_FILE=`tzplatform-get TZ_SYS_DB | cut -d= -f2`/.security-manager.db +DB_FILE=/var/db/security-manager/.security-manager.db # Create default buckets while read bucket default_policy diff --git a/src/common/file-lock.cpp b/src/common/file-lock.cpp index 6f3996c..1dada17 100644 --- a/src/common/file-lock.cpp +++ b/src/common/file-lock.cpp @@ -30,9 +30,7 @@ namespace SecurityManager { -char const * const SERVICE_LOCK_FILE = tzplatform_mkpath3(TZ_SYS_RUN, - "lock", - "security-manager.lock"); +char const * const SERVICE_LOCK_FILE = "/var/run/lock/security-manager.lock"; FileLocker::FileLocker(const std::string &lockFile, bool blocking) { diff --git a/src/common/include/file-lock.h b/src/common/include/file-lock.h index 604b019..21a86a0 100644 --- a/src/common/include/file-lock.h +++ b/src/common/include/file-lock.h @@ -29,7 +29,6 @@ #include #include -#include namespace SecurityManager { diff --git a/src/common/include/privilege_db.h b/src/common/include/privilege_db.h index 4d73d90..03c6680 100644 --- a/src/common/include/privilege_db.h +++ b/src/common/include/privilege_db.h @@ -34,14 +34,13 @@ #include #include -#include #ifndef PRIVILEGE_DB_H_ #define PRIVILEGE_DB_H_ namespace SecurityManager { -const char *const PRIVILEGE_DB_PATH = tzplatform_mkpath(TZ_SYS_DB, ".security-manager.db"); +const char *const PRIVILEGE_DB_PATH = "/var/db/security-manager/.security-manager.db"; enum class QueryType { EGetPkgPrivileges, diff --git a/src/common/service_impl.cpp b/src/common/service_impl.cpp index ae305d3..65cc8b5 100644 --- a/src/common/service_impl.cpp +++ b/src/common/service_impl.cpp @@ -32,7 +32,6 @@ #include #include -#include #include "protocols.h" #include "privilege_db.h" @@ -131,7 +130,13 @@ static inline int validatePolicy(policy_entry &policyEntry, std::string uidStr, static uid_t getGlobalUserId(void) { - static uid_t globaluid = tzplatform_getuid(TZ_SYS_GLOBALAPP_USER); + static uid_t globaluid = 0; + if (!globaluid) { + struct passwd pw, *p; + char buf[4096]; + int rc = getpwnam_r("userapp", &pw, buf, sizeof buf, &p); + globaluid = (rc || p == NULL) ? 555 : p->pw_uid; + } return globaluid; } @@ -161,37 +166,17 @@ static inline bool isSubDir(const char *parent, const char *subdir) static bool getUserAppDir(const uid_t &uid, std::string &userAppDir) { - struct tzplatform_context *tz_ctx = nullptr; - - if (tzplatform_context_create(&tz_ctx)) - return false; - - if (tzplatform_context_set_user(tz_ctx, uid)) { - tzplatform_context_destroy(tz_ctx); - tz_ctx = nullptr; + struct passwd pw, *p; + char buf[4096]; + int rc = getpwuid_r(uid, &pw, buf, sizeof buf, &p); + if (rc || p == NULL) return false; - } - - enum tzplatform_variable id = - (uid == getGlobalUserId()) ? TZ_SYS_RW_APP : TZ_USER_APP; - const char *appDir = tzplatform_context_getenv(tz_ctx, id); - if (!appDir) { - tzplatform_context_destroy(tz_ctx); - tz_ctx = nullptr; - return false; - } - - userAppDir = appDir; - - tzplatform_context_destroy(tz_ctx); - tz_ctx = nullptr; - + userAppDir = p->pw_dir; return true; } static inline bool installRequestAuthCheck(const app_inst_req &req, uid_t uid, bool &isCorrectPath, std::string &appPath) { - std::string userHome; std::string userAppDir; std::stringstream correctPath; diff --git a/src/common/smack-rules.cpp b/src/common/smack-rules.cpp index d834e42..8b5728b 100644 --- a/src/common/smack-rules.cpp +++ b/src/common/smack-rules.cpp @@ -34,7 +34,6 @@ #include #include -#include #include "smack-labels.h" #include "smack-rules.h" @@ -43,7 +42,7 @@ namespace SecurityManager { const char *const SMACK_APP_LABEL_TEMPLATE = "~APP~"; const char *const SMACK_PKG_LABEL_TEMPLATE = "~PKG~"; -const char *const APP_RULES_TEMPLATE_FILE_PATH = tzplatform_mkpath4(TZ_SYS_SHARE, "security-manager", "policy", "app-rules-template.smack"); +const char *const APP_RULES_TEMPLATE_FILE_PATH = "/usr/share/security-manager/policy/app-rules-template.smack"; const char *const SMACK_APP_IN_PACKAGE_PERMS = "rwxat"; SmackRules::SmackRules() @@ -237,14 +236,12 @@ void SmackRules::generatePackageCrossDeps(const std::vector &pkgCon std::string SmackRules::getPackageRulesFilePath(const std::string &pkgId) { - std::string path(tzplatform_mkpath3(TZ_SYS_SMACK, "accesses.d", ("pkg_" + pkgId).c_str())); - return path; + return "/etc/smack/accesses.d/pkg_" + pkgId; } std::string SmackRules::getApplicationRulesFilePath(const std::string &appId) { - std::string path(tzplatform_mkpath3(TZ_SYS_SMACK, "accesses.d", ("app_" + appId).c_str())); - return path; + return "/etc/smack/accesses.d/app_" + appId; } void SmackRules::installApplicationPrivilegesRules(const std::string &appId, const std::string &pkgId, const std::vector &pkgContents, const std::vector &privileges) @@ -256,8 +253,7 @@ void SmackRules::installApplicationPrivilegesRules(const std::string &appId, con for (auto privilege : privileges) { if (privilege.empty()) continue; - std::string fprivilege ( privilege + "-template.smack"); - std::string path(tzplatform_mkpath4(TZ_SYS_SHARE, "security-manager", "policy", fprivilege.c_str())); + std::string path = "/usr/share/security-manager/policy/" + privilege + "-template.smack"; if( stat(path.c_str(), &buffer) == 0) smackRules.addFromTemplateFile(appId, pkgId, path); } -- 2.1.4