return m_privileges;
}
-void AppInstallHelper::addAppDefinedPrivilege(const std::string &privilege) {
+void AppInstallHelper::addAppDefinedPrivilege(const std::pair<std::string, int> &privilege) {
m_appDefinedPrivileges.push_back(privilege);
}
-std::vector<std::string> AppInstallHelper::getAppDefinedPrivileges() const {
+std::vector<std::pair<std::string, int>> AppInstallHelper::getAppDefinedPrivileges() const {
return m_appDefinedPrivileges;
}
void addPrivileges(const std::vector<std::string> &privileges);
std::vector<std::string> getPrivileges() const;
- void addAppDefinedPrivilege(const std::string &privilege);
- std::vector<std::string> getAppDefinedPrivileges() const;
+ void addAppDefinedPrivilege(const std::pair<std::string, int> &privilege);
+ std::vector<std::pair<std::string, int>> getAppDefinedPrivileges() const;
// Smack
std::string generateAppLabel() const;
TypePathsMap m_dirTypeMap;
TypePathsMap m_fileTypeMap;
std::vector<std::string> m_privileges;
- std::vector<std::string> m_appDefinedPrivileges;
+ std::vector<std::pair<std::string, int>> m_appDefinedPrivileges;
std::string m_author;
pid_t m_creatorPid;
m_privileges.push_back(privilege);
}
-void InstallRequest::addAppDefinedPrivilege(const std::string &privilege, lib_retcode expectedResult)
+void InstallRequest::addAppDefinedPrivilege(const std::pair<std::string, int> &privilege, lib_retcode expectedResult)
{
- int result = security_manager_app_inst_req_add_app_defined_privilege(m_req, privilege.c_str());
+ int result = security_manager_app_inst_req_add_app_defined_privilege(m_req, privilege.first.c_str(),
+ static_cast<app_defined_privilege_type>(privilege.second));
RUNNER_ASSERT_MSG((lib_retcode)result == expectedResult,
"adding app defined privilege returned wrong value."
- << " Privilege: " << privilege << ";"
+ << " Privilege: " << privilege.first << ";"
<< " Result: " << result << ";"
<< " Expected result: " << expectedResult);
m_appDefinedPrivileges.push_back(privilege);
os << " ]";
}
if (!request.m_appDefinedPrivileges.empty()) {
- os << "app defined privileges: [ " << request.m_appDefinedPrivileges[0];
- for (size_t i = 1; i < request.m_appDefinedPrivileges.size(); ++i)
- os << "; " << request.m_appDefinedPrivileges[i];
+ os << "app defined privileges: [ " << "< " << request.m_appDefinedPrivileges[0].first << "; "
+ << request.m_appDefinedPrivileges[0].second << " >";
+ for (size_t i = 1; i < request.m_appDefinedPrivileges.size(); ++i) {
+ os << "; <" << request.m_appDefinedPrivileges[i].first << "; "
+ << request.m_appDefinedPrivileges[i].second << " >";
+ }
os << " ]";
}
void setAppId(std::string appId, lib_retcode expectedresult = SECURITY_MANAGER_SUCCESS);
void setPkgId(std::string pkgId, lib_retcode expectedresult = SECURITY_MANAGER_SUCCESS);
void addPrivilege(const std::string &privilege, lib_retcode expectedresult = SECURITY_MANAGER_SUCCESS);
- void addAppDefinedPrivilege(const std::string &privilege, lib_retcode expectedResult = SECURITY_MANAGER_SUCCESS);
+ void addAppDefinedPrivilege(const std::pair<std::string, int> &privilege, lib_retcode expectedResult = SECURITY_MANAGER_SUCCESS);
void addPath(std::string path, app_install_path_type pathType,
lib_retcode expectedResult = SECURITY_MANAGER_SUCCESS);
void setUid(const uid_t uid, lib_retcode expectedresult = SECURITY_MANAGER_SUCCESS);
std::string m_pkgId;
std::string m_authorId;
std::vector<std::string> m_privileges;
- std::vector<std::string> m_appDefinedPrivileges;
+ std::vector<std::pair<std::string, int>> m_appDefinedPrivileges;
std::vector<std::pair<std::string, app_install_path_type> > m_paths;
std::pair<bool, uid_t> m_uid;
};
RUNNER_CHILD_TEST(app_define_01_global_install)
{
const std::string privilege = "http://tizen.org/applicationDefinedPrivilege/alamakota";
+ const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED;
const std::string providerAppId = "app_def_01_provider_appid";
const std::string consumerAppId = "app_def_01_client_appid";
const std::string ownerId = "5001";
std::string consumerLabel = consumer.generateAppLabel();
- provider.addAppDefinedPrivilege(privilege);
+ provider.addAppDefinedPrivilege(std::make_pair(privilege, type));
consumer.addPrivilege(privilege);
ScopedInstaller req1(provider);
RUNNER_CHILD_TEST(app_define_02_global_install)
{
const std::string privilege = "http://tizen.org/licensedPrivilege/alamakota";
+ const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED;
const std::string providerAppId = "app_def_02_provider_appid";
const std::string consumerAppId = "app_def_02_client_appid";
const std::string ownerId = "5001";
std::string consumerLabel = consumer.generateAppLabel();
- provider.addAppDefinedPrivilege(privilege);
+ provider.addAppDefinedPrivilege(std::make_pair(privilege, type));
consumer.addPrivilege(privilege);
ScopedInstaller req1(provider);