-# Copyright (c) 2011 - 2019 Samsung Electronics Co., Ltd All Rights Reserved
+# Copyright (c) 2011-2020 Samsung Electronics Co., Ltd. All rights reserved
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
############################# cmake packages ##################################
INCLUDE(FindPkgConfig)
+INCLUDE(GNUInstallDirs)
######################### let's setup directories #############################
-SET(LOCAL_STATE_DIR
- "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LOCALSTATEDIR}"
+SET(LOCAL_STATE_INSTALL_PREFIX
+ "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}"
CACHE PATH
- "Modifiable single-machine data directory")
+ "Modifiable single-machine data directory (var)")
-SET(DATA_ROOT_DIR
+SET(DB_INSTALL_DIR
+ "${LOCAL_STATE_INSTALL_PREFIX}/${PROJECT_NAME}"
+ CACHE PATH
+ "Modifiable database directory")
+
+SET(LOCAL_STATE_INSTALL_DIR
+ "${LOCAL_STATE_INSTALL_PREFIX}/${PROJECT_NAME}"
+ CACHE PATH
+ "Modifiable data directory")
+
+SET(SHARE_INSTALL_PREFIX
"${CMAKE_INSTALL_FULL_DATAROOTDIR}"
CACHE PATH
- "Read-only data root directory")
+ "Read-only architecture-independent data root (share)")
+
+SET(DATA_INSTALL_DIR
+ "${SHARE_INSTALL_PREFIX}/${PROJECT_NAME}"
+ CACHE PATH
+ "Read-only data directory")
+
+SET(POLICY_INSTALL_DIR
+ "${DATA_INSTALL_DIR}/policy"
+ CACHE PATH
+ "Read-only policy directory")
-SET(POLICY_DIR
- "${DATA_ROOT_DIR}/security-manager/policy"
+SET(DB_TEST_INSTALL_DIR
+ "${DATA_INSTALL_DIR}/db-test"
CACHE PATH
- "Read-only data root directory")
+ "Read-only test database directory")
-ADD_DEFINITIONS("-DLOCAL_STATE_DIR=\"${LOCAL_STATE_DIR}\"")
-ADD_DEFINITIONS("-DDATA_ROOT_DIR=\"${DATA_ROOT_DIR}\"")
-ADD_DEFINITIONS("-DPOLICY_DIR=\"${POLICY_DIR}\"")
+ADD_DEFINITIONS("-DDB_INSTALL_DIR=\"${DB_INSTALL_DIR}\"")
+ADD_DEFINITIONS("-DLOCAL_STATE_INSTALL_DIR=\"${LOCAL_STATE_INSTALL_DIR}\"")
+ADD_DEFINITIONS("-DDATA_INSTALL_DIR=\"${DATA_INSTALL_DIR}\"")
+ADD_DEFINITIONS("-DPOLICY_INSTALL_DIR=\"${POLICY_INSTALL_DIR}\"")
+ADD_DEFINITIONS("-DDB_TEST_INSTALL_DIR=\"${DB_TEST_INSTALL_DIR}\"")
############################# compiler flags ##################################
BuildRequires: boost-devel
%{?systemd_requires}
-%global db_test_dir %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE/sm-db-test}%{!?TZ_SYS_RO_SHARE:%_datadir/sm-db-test}
-
%description
Tizen security manager and utilities
export LDFLAGS+="-Wl,--rpath=%{_libdir}"
-%cmake . -DVERSION=%{version} \
- -DBIN_INSTALL_DIR=%{_bindir} \
- -DDB_INSTALL_DIR=%{TZ_SYS_DB} \
- -DLOCAL_STATE_DIR=%{TZ_SYS_VAR} \
- -DSYSTEMD_INSTALL_DIR=%{_unitdir} \
- -DDATA_ROOT_DIR=%{_datadir} \
- -DDB_LOGS=OFF \
- -DDB_TEST_DIR=%{db_test_dir} \
- -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
- -DCMAKE_VERBOSE_MAKEFILE=ON
+%global db_test_dir %{_datadir}/sm-db-test
+
+%cmake . \
+ -DVERSION=%{version} \
+ -DBIN_INSTALL_DIR=%{_bindir} \
+ -DSYSTEMD_INSTALL_DIR=%{_unitdir} \
+ -DLOCAL_STATE_INSTALL_PREFIX=%{TZ_SYS_VAR} \
+ -DDB_INSTALL_DIR=%{TZ_SYS_DB} \
+ -DDB_TEST_INSTALL_DIR=%{db_test_dir} \
+ -DDB_LOGS=OFF \
+ -DCMAKE_BUILD_TYPE=%{?build_type:%build_type}%{!?build_type:RELEASE} \
+ -DCMAKE_VERBOSE_MAKEFILE=ON
make %{?jobs:-j%jobs}
%install
touch %{buildroot}/%{TZ_SYS_DB}/.security-manager.db
touch %{buildroot}/%{TZ_SYS_DB}/.security-manager.db-journal
-install -m 0755 -d %{buildroot}%{TZ_SYS_VAR}/security-manager
-install -m 0444 /dev/null %{buildroot}%{TZ_SYS_VAR}/security-manager/apps-labels
-install -m 0444 /dev/null %{buildroot}%{TZ_SYS_VAR}/security-manager/policy-version
+install -m 0755 -d %{buildroot}%{TZ_SYS_VAR}/%{name}
+install -m 0444 /dev/null %{buildroot}%{TZ_SYS_VAR}/%{name}/apps-labels
+install -m 0444 /dev/null %{buildroot}%{TZ_SYS_VAR}/%{name}/policy-version
mkdir -p %{buildroot}/%{db_test_dir}
sqlite3 %{buildroot}/%{db_test_dir}/.security-manager-test.db < db/db.sql
chsmack -a System %{TZ_SYS_DB}/.security-manager.db
chsmack -a System %{TZ_SYS_DB}/.security-manager.db-journal
-chsmack -r -a _ %{TZ_SYS_VAR}/security-manager/
+chsmack -r -a _ %{TZ_SYS_VAR}/%{name}/
%preun
if [ $1 = 0 ]; then
%pre
### Workaround for invalid policy versioning mechanism
-if [ -e %{TZ_SYS_VAR}/security-manager/policy-version ] && [ x`cat %{TZ_SYS_VAR}/security-manager/policy-version` = x"1" ]
+if [ -e %{TZ_SYS_VAR}/%{name}/policy-version ] && [ x`cat %{TZ_SYS_VAR}/%{name}/policy-version` = x"1" ]
then
### Restart versioning, let the update scripts do their work
- echo 0 >%{TZ_SYS_VAR}/security-manager/policy-version
+ echo 0 >%{TZ_SYS_VAR}/%{name}/policy-version
fi
%post policy
-%{_datadir}/security-manager/policy/update.sh
+%{_datadir}/%{name}/policy/update.sh
%{_bindir}/security-manager-policy-reload
%post -n security-manager-tests
%attr(755,root,root) %{_bindir}/security-manager-rules-loader
%attr(755,root,root) %{_sysconfdir}/gumd/useradd.d/50_security-manager-add.post
%attr(755,root,root) %{_sysconfdir}/gumd/userdel.d/50_security-manager-remove.pre
-%config(noreplace) %attr(444,root,root) %{TZ_SYS_VAR}/security-manager/apps-labels
-%dir %attr(711,root,root) %{TZ_SYS_VAR}/security-manager/
+%config(noreplace) %attr(444,root,root) %{TZ_SYS_VAR}/%{name}/apps-labels
+%dir %attr(711,root,root) %{TZ_SYS_VAR}/%{name}/
%{_libdir}/libsecurity-manager-commons.so.*
%attr(-,root,root) %{_unitdir}/security-manager.*
%files -n security-manager-policy
%manifest %{_datadir}/security-manager-policy.manifest
%license LICENSE
-%config(noreplace) %{TZ_SYS_VAR}/security-manager/policy-version
-%{_datadir}/security-manager/policy
+%config(noreplace) %{TZ_SYS_VAR}/%{name}/policy-version
+%{_datadir}/%{name}/policy
%attr(755,root,root) %{_bindir}/security-manager-policy-reload
%attr(755,root,root) %{_sysconfdir}/opt/upgrade/241.security-manager.policy-update.sh
CONFIGURE_FILE(security-manager-policy-reload.in security-manager-policy-reload @ONLY)
-INSTALL(FILES ${USERTYPE_POLICY_FILES} DESTINATION ${POLICY_DIR})
-INSTALL(FILES "app-rules-template.smack" DESTINATION ${POLICY_DIR})
-INSTALL(FILES "pkg-rules-template.smack" DESTINATION ${POLICY_DIR})
-INSTALL(FILES "author-rules-template.smack" DESTINATION ${POLICY_DIR})
-INSTALL(FILES "privilege-group.list" DESTINATION ${POLICY_DIR})
-INSTALL(FILES "privilege-mount.list" DESTINATION ${POLICY_DIR})
-INSTALL(FILES "privilege-managed-by-systemd-for-daemons.list" DESTINATION ${POLICY_DIR})
-INSTALL(PROGRAMS "update.sh" DESTINATION ${POLICY_DIR})
-INSTALL(DIRECTORY "updates" USE_SOURCE_PERMISSIONS DESTINATION ${POLICY_DIR})
+INSTALL(FILES ${USERTYPE_POLICY_FILES} DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "app-rules-template.smack" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "pkg-rules-template.smack" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "author-rules-template.smack" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "privilege-group.list" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "privilege-mount.list" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(FILES "privilege-managed-by-systemd-for-daemons.list" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(PROGRAMS "update.sh" DESTINATION ${POLICY_INSTALL_DIR})
+INSTALL(DIRECTORY "updates" USE_SOURCE_PERMISSIONS DESTINATION ${POLICY_INSTALL_DIR})
INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/security-manager-policy-reload DESTINATION ${BIN_INSTALL_DIR})
# FOTA updater
#!/bin/sh -e
PATH=/bin:/usr/bin:/sbin:/usr/sbin
-POLICY_PATH=@POLICY_DIR@
+POLICY_PATH=@POLICY_INSTALL_DIR@
PRIVILEGE_GROUP_MAPPING=$POLICY_PATH/privilege-group.list
PRIVILEGE_SYSTEMD_LIST=$POLICY_PATH/privilege-managed-by-systemd-for-daemons.list
/*
- * Copyright (c) 2000 - 2019 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2000-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Contact: Rafal Krypa <r.krypa@samsung.com>
*
parsePrivilegeOptions(argc, argv, *req, vm);
return managePrivilegeOperation(*req, policy_update, operation);
} else if (vm.count("backup")) {
- if (SECURITY_MANAGER_SUCCESS == FS::overwriteFile(Config::getPrivilegeDbPath(),
- Config::getPrivilegeDbFallbackPath()))
+ if (SECURITY_MANAGER_SUCCESS == FS::overwriteFile(DB_PATH, DB_FALLBACK_PATH))
return EXIT_SUCCESS;
} else {
std::cout << "No command argument was given." << std::endl;
${COMMON_PATH}/connection.cpp
${COMMON_PATH}/credentials.cpp
${COMMON_PATH}/cynara.cpp
- ${COMMON_PATH}/db-config.cpp
${COMMON_PATH}/filesystem.cpp
${COMMON_PATH}/file-lock.cpp
${COMMON_PATH}/permissible-set.cpp
)
INSTALL(TARGETS ${TARGET_COMMON} DESTINATION ${LIB_INSTALL_DIR})
-INSTALL(DIRECTORY DESTINATION ${DATA_ROOT_DIR}/${PROJECT_NAME}/dummy)
+INSTALL(DIRECTORY DESTINATION ${DATA_INSTALL_DIR}/dummy)
+++ /dev/null
-/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Contact: Tomasz Swierczek <t.swierczek@samsung.com>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-/*
- * @file db-config.cpp
- * @author Tomasz Swierczek <t.swierczek@samsung.com>
- * @version 1.0
- * @brief Configuration options for DB - implementation
- */
-
-#include <db-config.h>
-#include <tzplatform-config.h>
-
-namespace SecurityManager {
-
-namespace Config {
-
-std::string getPrivilegeDbPath() {
- return TizenPlatformConfig::makePath(TZ_SYS_DB, ".security-manager.db");
-}
-
-std::string getPrivilegeDbFallbackPath() {
- return TizenPlatformConfig::makePath(TZ_SYS_RO_SHARE,
- "security-manager",
- ".security-manager.db");
-}
-
-};
-
-} /* namespace SecurityManager */
/*
- * Copyright (c) 2015 - 2020 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2015-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Contact: Rafal Krypa <r.krypa@samsung.com>
*
#define APPS_LABELS_FILE "apps-labels"
/* Policy files */
-#define PRIVILEGE_GROUP_LIST_FILE POLICY_DIR "/privilege-group.list"
-#define PRIVILEGE_MOUNT_LIST_FILE POLICY_DIR "/privilege-mount.list"
-#define PRIVILEGE_SYSTEMD_LIST_FILE POLICY_DIR "/privilege-managed-by-systemd-for-daemons.list"
+#define PRIVILEGE_GROUP_LIST_FILE POLICY_INSTALL_DIR "/privilege-group.list"
+#define PRIVILEGE_MOUNT_LIST_FILE POLICY_INSTALL_DIR "/privilege-mount.list"
+#define PRIVILEGE_SYSTEMD_LIST_FILE POLICY_INSTALL_DIR "/privilege-managed-by-systemd-for-daemons.list"
#define SKEL_DIR "/etc/skel"
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2019-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Contact: Tomasz Swierczek <t.swierczek@samsung.com>
*
#include <string>
-namespace SecurityManager {
+#define DB_FILE ".security-manager.db"
-namespace Config {
+#define DB_PATH DB_INSTALL_DIR "/" DB_FILE
+#define DB_FALLBACK_PATH DATA_INSTALL_DIR "/" DB_FILE
-std::string getPrivilegeDbPath();
-std::string getPrivilegeDbFallbackPath();
-
-};
-
-} /* namespace SecurityManager */
// If database initialization fails, restoration to a fallback snapshot is
// attempted. If the restoration succeeds, a file flag is created to notify
StatementWrapper getStatement(StmtType queryType);
struct DbStandard {
- static auto path() { return Config::getPrivilegeDbPath(); }
+ static auto path() { return DB_PATH; }
static auto okMarkerPath() { return DB_OK_MARKER; }
static auto loaderCmd() { return "/usr/bin/security-manager-rules-loader"; }
};
/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2016-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Contact: Rafal Krypa <r.krypa@samsung.com>
*
TizenPlatformConfig tpc(uid);
if ((installationType == SM_APP_INSTALL_GLOBAL)
|| (installationType == SM_APP_INSTALL_PRELOADED))
- return tpc.ctxMakePath(TZ_SYS_VAR, SERVICE_NAME,
- APPS_LABELS_FILE);
+ return std::string(LOCAL_STATE_INSTALL_DIR) + "/" + APPS_LABELS_FILE;
else
- return tpc.ctxMakePath(TZ_SYS_VAR, SERVICE_NAME,
- std::to_string(uid), APPS_LABELS_FILE);
+ return std::string(LOCAL_STATE_INSTALL_DIR) + "/" + std::to_string(uid)
+ + "/" + APPS_LABELS_FILE;
}
static void markPermissibleFileValid(int fd, const std::string &nameFile, bool valid)
/*
- * Copyright (c) 2014-2020 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2014-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Contact: Rafal Krypa <r.krypa@samsung.com>
*
#include <sys/smack.h>
#include <cstring>
#include <string>
+#include <map>
#include <memory>
#include <algorithm>
const std::string SMACK_PATH_RO_LABEL_TEMPLATE = "~PATH_RO~";
const std::string SMACK_PATH_TRUSTED_LABEL_TEMPLATE = "~PATH_TRUSTED~";
-std::string getAppRulesTemplateFilePath()
-{
- static std::string path = TizenPlatformConfig::makePath(
- TZ_SYS_RO_SHARE,
- "security-manager",
- "policy",
- "app-rules-template.smack");
- return path;
-}
+enum POLICY_FILE {
+ APP_RULES_TEMPLATE,
+ PKG_RULES_TEMPLATE,
+ AUTHOR_RULES_TEMPLATE
+};
-std::string getPkgRulesTemplateFilePath()
-{
- static std::string path = TizenPlatformConfig::makePath(
- TZ_SYS_RO_SHARE,
- "security-manager",
- "policy",
- "pkg-rules-template.smack");
- return path;
-}
+const std::string POLICY_DIR_STR = POLICY_INSTALL_DIR;
-std::string getAuthorRulesTemplateFilePath()
-{
- static std::string path = TizenPlatformConfig::makePath(
- TZ_SYS_RO_SHARE,
- "security-manager",
- "policy",
- "author-rules-template.smack");
- return path;
+std::map<POLICY_FILE, std::string> POLICY_FILE_PATH_MAP = {
+ {POLICY_FILE::APP_RULES_TEMPLATE, POLICY_DIR_STR + "/app-rules-template.smack"},
+ {POLICY_FILE::PKG_RULES_TEMPLATE, POLICY_DIR_STR + "/pkg-rules-template.smack"},
+ {POLICY_FILE::AUTHOR_RULES_TEMPLATE, POLICY_DIR_STR + "/author-rules-template.smack"}
+};
+
+std::string getPolicyFile(enum POLICY_FILE policyFile) {
+ return POLICY_FILE_PATH_MAP[policyFile];
}
const std::string SMACK_APP_IN_PACKAGE_PERMS = "rwxat";
const int authorId,
const Labels &pkgLabels)
{
- useTemplate(getAppRulesTemplateFilePath(), appProcessLabel, pkgName, authorId);
+ useTemplate(getPolicyFile(POLICY_FILE::APP_RULES_TEMPLATE), appProcessLabel, pkgName, authorId);
if (authorId >= 0)
- useTemplate(getAuthorRulesTemplateFilePath(), appProcessLabel, pkgName, authorId);
+ useTemplate(getPolicyFile(POLICY_FILE::AUTHOR_RULES_TEMPLATE),
+ appProcessLabel, pkgName, authorId);
updatePackageRules(pkgName, pkgLabels);
}
{
SmackRules smackRules;
smackRules.addFromTemplateFile(
- getPkgRulesTemplateFilePath(),
+ getPolicyFile(POLICY_FILE::PKG_RULES_TEMPLATE),
std::string(),
pkgName,
-1);
void SmackRules::uninstallPackageRules(const std::string &pkgName, const Labels &pkgLabels)
{
SmackRules smackRules;
- smackRules.addFromTemplateFile(getPkgRulesTemplateFilePath(), {}, pkgName, -1);
+ smackRules.addFromTemplateFile(getPolicyFile(POLICY_FILE::PKG_RULES_TEMPLATE), {}, pkgName, -1);
smackRules.generatePackageCrossDeps(pkgLabels);
smackRules.clear();
}
void SmackRules::uninstallApplicationRules(const std::string &appLabel, const std::string &pkgName, const int authorId)
{
SmackRules smackRules;
- smackRules.addFromTemplateFile(getAppRulesTemplateFilePath(), appLabel, pkgName, authorId);
+ smackRules.addFromTemplateFile(getPolicyFile(POLICY_FILE::APP_RULES_TEMPLATE),
+ appLabel, pkgName, authorId);
smackRules.clear();
revokeAppSubject(appLabel);
}
void SmackRules::uninstallAuthorRules(const int authorId)
{
SmackRules smackRules;
- smackRules.addFromTemplateFile(getAuthorRulesTemplateFilePath(), {}, {}, authorId);
+ smackRules.addFromTemplateFile(getPolicyFile(POLICY_FILE::AUTHOR_RULES_TEMPLATE), {}, {}, authorId);
smackRules.clear();
}
/*
- * Copyright (c) 2018-2019 Samsung Electronics Co., Ltd. All rights reserved
+ * Copyright (c) 2018-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
if (likely(!cachedFallbackPath)) {
cachedFallbackPath = testLoader
? TEST_PRIVILEGE_FALLBACK_DB_PATH
- : tzplatform_mkpath3(TZ_SYS_RO_SHARE, "security-manager", ".security-manager.db");
- if (unlikely(!cachedFallbackPath))
- fail("tzplatform_mkpath(fallback) failed");
+ : DB_FALLBACK_PATH;
}
return cachedFallbackPath;
}
int main(int argc, char *argv[]) {
// test loader uses hardcoded database paths but otherwise strives to stay as faithful to the stock loader as feasible
- dbPath = testLoader
- ? TEST_DB_PATH
- : tzplatform_mkpath(TZ_SYS_DB, ".security-manager.db");
- if (unlikely(!dbPath))
- fail("tzplatform_mkpath(.security-manager.db) failed");
+ dbPath = testLoader ? TEST_DB_PATH : DB_PATH;
const auto dbPathLen = strlen(dbPath);
if (unlikely(creat(pkgsInfo.t, 0644) < 0))
fail("creat(.security-manager.db" DB_RECOVERED_SUFFIX ") failed");
- // try to sync TZ_SYS_DB dir
- const int dbdirfd = open(tzplatform_getenv(TZ_SYS_DB), O_RDONLY);
+ // try to sync DB_INSTALL_DIR dir
+ const int dbdirfd = open(DB_INSTALL_DIR, O_RDONLY);
if (unlikely(dbdirfd < 0))
- fail("open TZ_SYS_DB failed");
+ fail("open DB_INSTALL_DIR failed");
if (fsync(dbdirfd) == -1)
- fail("sync TZ_SYS_DB failed");
+ fail("sync DB_INSTALL_DIR failed");
if (unlikely(close(dbdirfd)))
- fail("close TZ_SYS_DB failed");
+ fail("close DB_INSTALL_DIR failed");
}
// database bringup successful, stop now if not going to write rules
ENDIF(DPL_WITH_DLOG)
ADD_DEFINITIONS( "-DBOOST_TEST_DYN_LINK" )
-ADD_DEFINITIONS("-DDB_TEST_DIR=\"${DB_TEST_DIR}\"")
-
################################################################################
${DPL_PATH}/log/src/log.cpp
${DPL_PATH}/log/src/old_style_log_provider.cpp
${PROJECT_SOURCE_DIR}/src/common/config-file.cpp
- ${PROJECT_SOURCE_DIR}/src/common/db-config.cpp
${PROJECT_SOURCE_DIR}/src/common/file-lock.cpp
${PROJECT_SOURCE_DIR}/src/common/privilege_db.cpp
${PROJECT_SOURCE_DIR}/src/common/service_impl_utils.cpp
${DPL_PATH}/log/src/abstract_log_provider.cpp
${DPL_PATH}/log/src/log.cpp
${DPL_PATH}/log/src/old_style_log_provider.cpp
- ${PROJECT_SOURCE_DIR}/src/common/db-config.cpp
${PROJECT_SOURCE_DIR}/src/common/config-file.cpp
#${PROJECT_SOURCE_DIR}/src/common/file-lock.cpp
${PROJECT_SOURCE_DIR}/src/common/privilege_db.cpp
/*
- * Copyright (c) 2016 - 2018 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2016-2020 Samsung Electronics Co., Ltd. All rights reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include "config.h"
#include "privilege_db.h"
-#define PRIVILEGE_DB_TEMPLATE DB_TEST_DIR"/.security-manager-test.db"
-#define PRIVILEGE_DB_EXAMPLE_V0 DB_TEST_DIR"/.security-manager-test-v0.db"
-#define PRIVILEGE_DB_CORRUPTED DB_TEST_DIR"/.security-manager-test-corrupted.db"
-#define PRIVILEGE_DB_EMPTY DB_TEST_DIR"/.security-manager-test-empty.db"
-#define PRIVILEGE_DB_WRONG_SCHEMA DB_TEST_DIR"/.security-manager-test-wrong-schema.db"
+#define PRIVILEGE_DB_TEMPLATE DB_TEST_INSTALL_DIR "/.security-manager-test.db"
+#define PRIVILEGE_DB_EXAMPLE_V0 DB_TEST_INSTALL_DIR "/.security-manager-test-v0.db"
+#define PRIVILEGE_DB_CORRUPTED DB_TEST_INSTALL_DIR "/.security-manager-test-corrupted.db"
+#define PRIVILEGE_DB_EMPTY DB_TEST_INSTALL_DIR "/.security-manager-test-empty.db"
+#define PRIVILEGE_DB_WRONG_SCHEMA DB_TEST_INSTALL_DIR "/.security-manager-test-wrong-schema.db"
-#define PRIVILEGE_DB_EXAMPLE_RULES DB_TEST_DIR"/.security-manager-test-rules.db"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT DB_TEST_DIR"/.security-manager-test-rules.txt"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT DB_TEST_DIR"/.security-manager-test-rules-default.txt"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_PACKAGES DB_TEST_DIR"/.security-manager-test-rules-packages.txt"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_EXCLUDE DB_TEST_DIR"/.security-manager-test-rules-exclude.txt"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT_PACKAGES DB_TEST_DIR"/.security-manager-test-rules-default-packages.txt"
-#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT_EXCLUDE DB_TEST_DIR"/.security-manager-test-rules-default-exclude.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES DB_TEST_INSTALL_DIR "/.security-manager-test-rules.db"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT DB_TEST_INSTALL_DIR "/.security-manager-test-rules.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT DB_TEST_INSTALL_DIR "/.security-manager-test-rules-default.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_PACKAGES DB_TEST_INSTALL_DIR "/.security-manager-test-rules-packages.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_EXCLUDE DB_TEST_INSTALL_DIR "/.security-manager-test-rules-exclude.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT_PACKAGES DB_TEST_INSTALL_DIR "/.security-manager-test-rules-default-packages.txt"
+#define PRIVILEGE_DB_EXAMPLE_RULES_OUTPUT_OPTION_DEFAULT_EXCLUDE DB_TEST_INSTALL_DIR "/.security-manager-test-rules-default-exclude.txt"
#define PKGS_WHITELIST "wifi-efl-ug attach-panel-camera pkg97 cert-svc-ui org.tizen.setting-location pkg22 \
smartreply-service pkg78 org.tizen.gallery ise-engine-anthy"