Don't hardcode path to /etc/smack 01/23501/2
authorRafal Krypa <r.krypa@samsung.com>
Thu, 26 Jun 2014 16:31:54 +0000 (18:31 +0200)
committerRafal Krypa <r.krypa@samsung.com>
Tue, 1 Jul 2014 09:14:57 +0000 (02:14 -0700)
Use libtizen-platform-config for getting path of Smack configuration.

Change-Id: I214594931705cd3dafa27a64e7800e82b96c0ced
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
packaging/security-manager.spec
src/server/CMakeLists.txt
src/server/service/smack-rules.cpp

index f339a15..5a26ef0 100644 (file)
@@ -15,6 +15,7 @@ BuildRequires: libcap-devel
 BuildRequires: pkgconfig(libsmack)
 BuildRequires: pkgconfig(libprivilege-control)
 BuildRequires: pkgconfig(libsystemd-daemon)
+BuildRequires: pkgconfig(libtzplatform-config)
 BuildRequires: pkgconfig(sqlite3)
 BuildRequires: pkgconfig(db-util)
 BuildRequires: boost-devel
@@ -66,8 +67,8 @@ rm -rf %{buildroot}
 mkdir -p %{buildroot}/usr/share/license
 cp LICENSE %{buildroot}/usr/share/license/%{name}
 cp LICENSE %{buildroot}/usr/share/license/libsecurity-manager-client
-mkdir -p %{buildroot}/etc/smack/
-cp app-rules-template.smack %{buildroot}/etc/smack/
+mkdir -p %{buildroot}/%{TZ_SYS_SMACK}
+cp app-rules-template.smack %{buildroot}/%{TZ_SYS_SMACK}
 %make_install
 
 mkdir -p %{buildroot}/%{_unitdir}/multi-user.target.wants
@@ -116,7 +117,7 @@ fi
 %attr(-,root,root) %{_unitdir}/security-manager.target
 %attr(-,root,root) %{_unitdir}/sockets.target.wants/security-manager-installer.socket
 %attr(-,root,root) %{_unitdir}/security-manager-installer.socket
-%attr(-,root,root) /etc/smack/app-rules-template.smack
+%attr(-,root,root) %{TZ_SYS_SMACK}/app-rules-template.smack
 %{_datadir}/license/%{name}
 
 %files -n libsecurity-manager-client
index 128b318..0005118 100644 (file)
@@ -4,6 +4,7 @@ PKG_CHECK_MODULES(SERVER_DEP
     libsmack
     libprivilege-control
     libsystemd-daemon
+    libtzplatform-config
     sqlite3
     db-util
     )
index 21089b7..32b83c9 100644 (file)
 #include <sstream>
 
 #include <dpl/log/log.h>
+#include <tzplatform_config.h>
 
 #include "smack-rules.h"
 
 namespace SecurityManager {
 
 const char *const SMACK_APP_LABEL_TEMPLATE     = "~APP~";
-const char *const APP_RULES_TEMPLATE_FILE_PATH = "/etc/smack/app-rules-template.smack";
-const char *const APP_RULES_DIRECTORY          = "/etc/smack/accesses.d/";
+const char *const APP_RULES_TEMPLATE_FILE_PATH = tzplatform_mkpath(TZ_SYS_SMACK, "app-rules-template.smack");
 
 bool SmackRules::generateAppLabel(const std::string &appPkgId, std::string &label)
 {
@@ -206,9 +206,7 @@ bool SmackRules::addFromTemplate(const std::vector<std::string> &templateRules,
 
 std::string SmackRules::getPackageRulesFilePath(const std::string &pkgId)
 {
-    std::string path(APP_RULES_DIRECTORY);
-    path.append(pkgId);
-    path.append(".smack");
+    std::string path(tzplatform_mkpath3(TZ_SYS_SMACK, "accesses.d", pkgId.c_str()));
     return path;
 }