m_pkgId = std::move(pkgId);
}
-void InstallRequest::addPrivilege(const std::string &privilege, lib_retcode expectedResult)
-{
- int result = security_manager_app_inst_req_add_privilege(m_req, privilege.c_str());
- RUNNER_ASSERT_MSG((lib_retcode)result == expectedResult,
- "adding privilege returned wrong value."
- << " Privilege: " << privilege << ";"
- << " Result: " << result << ";"
- << " Expected result: " << expectedResult);
- m_privileges.push_back(std::make_pair(privilege, std::string()));
-}
-
-void InstallRequest::addClientPrivilege(const std::pair<std::string, std::string> &privilege, lib_retcode expectedResult)
+void InstallRequest::addPrivilege(Privilege privilege, lib_retcode expectedResult)
{
int result = security_manager_app_inst_req_add_client_privilege(m_req,
- privilege.first.c_str(),
- privilege.second.c_str());
+ privilege,
+ privilege.getLicenseC());
RUNNER_ASSERT_MSG((lib_retcode)result == expectedResult,
"adding privilege returned wrong value."
- << " Privilege: " << privilege.first << ";"
+ << " Privilege: " << privilege.getName() << ";"
<< " Result: " << result << ";"
<< " Expected result: " << expectedResult);
- m_privileges.push_back(privilege);
+ m_privileges.push_back(std::move(privilege));
}
-void InstallRequest::addAppDefinedPrivilege(const AppDefinedPrivilege &privilege, lib_retcode expectedResult)
+void InstallRequest::addAppDefinedPrivilege(Privilege privilege, lib_retcode expectedResult)
{
- int result = security_manager_app_inst_req_add_app_defined_privilege(m_req,
- std::get<0>(privilege).c_str(),
- static_cast<app_defined_privilege_type>(std::get<1>(privilege)),
- std::get<2>(privilege).c_str());
+ int result = security_manager_app_inst_req_add_app_defined_privilege(
+ m_req,
+ privilege,
+ privilege.getSMType(),
+ privilege.getLicenseC());
+
RUNNER_ASSERT_MSG((lib_retcode)result == expectedResult,
"adding app defined privilege returned wrong value."
- << " Privilege: " << std::get<0>(privilege) << ";"
+ << " Privilege: " << privilege.getName() << ";"
<< " Result: " << result << ";"
<< " Expected result: " << expectedResult);
- m_appDefinedPrivileges.push_back(privilege);
+ m_appDefinedPrivileges.push_back(std::move(privilege));
}
void InstallRequest::addPath(std::string path, app_install_path_type pathType, lib_retcode expectedResult)
if (!request.m_pkgId.empty())
os << "pkg id: " << request.m_pkgId << "; ";
if (!request.m_privileges.empty()) {
- os << "privileges: [ " << "< " << request.m_privileges[0].first << "; "
- << request.m_privileges[0].second << " >";
+ os << "privileges: [ " << "< " << request.m_privileges[0].getName() << "; "
+ << request.m_privileges[0].getLicense() << " >";
for (size_t i = 1; i < request.m_privileges.size(); ++i) {
- os << "; <" << request.m_privileges[i].first << "; "
- << request.m_privileges[i].second << " >";
+ os << "; <" << request.m_privileges[i].getName() << "; "
+ << request.m_privileges[i].getLicense() << " >";
}
os << " ]";
}
if (!request.m_appDefinedPrivileges.empty()) {
- os << "app defined privileges: [ " << "< " << std::get<0>(request.m_appDefinedPrivileges[0]) << "; "
- << std::get<1>(request.m_appDefinedPrivileges[0]) << "; "
- << std::get<2>(request.m_appDefinedPrivileges[0]) << " >";
+ os << "app defined privileges: [ " << "< "
+ << request.m_appDefinedPrivileges[0].getName() << "; "
+ << request.m_appDefinedPrivileges[0].getType() << "; "
+ << request.m_appDefinedPrivileges[0].getLicense() << " >";
+
for (size_t i = 1; i < request.m_appDefinedPrivileges.size(); ++i) {
- os << "; <" << std::get<0>(request.m_appDefinedPrivileges[i]) << "; "
- << std::get<1>(request.m_appDefinedPrivileges[i]) << "; "
- << std::get<2>(request.m_appDefinedPrivileges[i]) << " >";
+ os << "; <" << request.m_appDefinedPrivileges[i].getName() << "; "
+ << request.m_appDefinedPrivileges[i].getType() << "; "
+ << request.m_appDefinedPrivileges[i].getLicense() << " >";
}
os << " ]";
}
RUNNER_CHILD_TEST(app_defined_01_global_install_untrusted)
{
- const std::string privilege = "http://tizen.org/applicationDefinedPrivilege/app_defined_01";
- const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED;
+ const Privilege privilege("http://tizen.org/applicationDefinedPrivilege/app_defined_01",
+ Privilege::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(std::make_tuple(privilege, type, ""));
- consumer.addClientPrivilege(std::make_pair(privilege, ""));
+ provider.addAppDefinedPrivilege(privilege);
+ consumer.addPrivilege(privilege);
ScopedInstaller req1(provider);
ScopedInstaller req2(consumer);
RUNNER_CHILD_TEST(app_defined_02_global_install_licensed)
{
- const std::string privilege = "http://tizen.org/licensedPrivilege/app_defined_02";
- const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED;
- const std::string license = "/opt/data/app_defined_02/res/license";
+ const Privilege privilege("http://tizen.org/licensedPrivilege/app_defined_02",
+ "/opt/data/app_defined_02/res/license");
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(std::make_tuple(privilege, type, license));
- consumer.addClientPrivilege(std::make_pair(privilege, license));
+ provider.addAppDefinedPrivilege(privilege);
+ consumer.addPrivilege(privilege);
ScopedInstaller req1(provider);
ScopedInstaller req2(consumer);
// Because of a bug in implementation during installation of
// providerB privileges of providerA were deleted from cynara
// database. This test should check if bug was fixed.
- const std::string privilegeA = "http://tizen.org/licensedPrivilege/app_defined_03a";
- const std::string privilegeB = "http://tizen.org/licensedPrivilege/app_defined_03b";
- const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED;
- const std::string licenseA = "/opt/data/app_defined_03a/res/license";
- const std::string licenseB = "/opt/data/app_defined_03b/res/license";
+ Privilege privilegeA("http://tizen.org/licensedPrivilege/app_defined_03a",
+ "/opt/data/app_defined_03a/res/license");
+ Privilege privilegeB("http://tizen.org/licensedPrivilege/app_defined_03b",
+ "/opt/data/app_defined_03b/res/license");
const std::string providerAppIdA = "app_def_03a_provider_appid";
const std::string providerAppIdB = "app_def_03b_provider_appid";
const std::string consumerAppId = "app_def_03_client_appid";
std::string consumerLabel = consumer.generateAppLabel();
- providerA.addAppDefinedPrivilege(std::make_tuple(privilegeA, type, licenseA));
- providerB.addAppDefinedPrivilege(std::make_tuple(privilegeB, type, licenseB));
- consumer.addClientPrivilege(std::make_pair(privilegeA, licenseA));
- consumer.addClientPrivilege(std::make_pair(privilegeB, licenseB));
+ providerA.addAppDefinedPrivilege(privilegeA);
+ providerB.addAppDefinedPrivilege(privilegeB);
+ consumer.addPrivilege(privilegeA);
+ consumer.addPrivilege(privilegeB);
ScopedInstaller req1(providerA);
ScopedInstaller req2(providerB);
RUNNER_CHILD_TEST(app_defined_04_app_update)
{
- const std::string privilegeA = "http://tizen.org/licensedPrivilege/app_defined_04a";
- const std::string privilegeB = "http://tizen.org/applicationDefinedPrivilege/app_defined_04b";
- const std::string privilegeC = "http://tizen.org/licensedPrivilege/app_defined_04c";
- const std::string licenseA = "/opt/data/app_defined_04a/res/license";
- const std::string licenseC = "/opt/data/app_defined_04c/res/license";
+ const Privilege privilegeA("http://tizen.org/licensedPrivilege/app_defined_04a",
+ "/opt/data/app_defined_04a/res/license");
+ const Privilege privilegeB("http://tizen.org/applicationDefinedPrivilege/app_defined_04b",
+ Privilege::UNTRUSTED);
+ const Privilege privilegeC("http://tizen.org/licensedPrivilege/app_defined_04c",
+ "/opt/data/app_defined_04c/res/license");
const std::string providerAppId = "app_def_04_provider_appid";
const std::string consumerAppId = "app_def_04_client_appid";
const std::string ownerId = "5001";
std::string consumerLabel = consumer.generateAppLabel();
- providerV1.addAppDefinedPrivilege(std::make_tuple(privilegeA,
- SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED,
- licenseA));
- providerV1.addAppDefinedPrivilege(std::make_tuple(privilegeB,
- SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED,
- ""));
- consumer.addClientPrivilege(std::make_pair(privilegeA, licenseA));
- consumer.addClientPrivilege(std::make_pair(privilegeB, ""));
- consumer.addClientPrivilege(std::make_pair(privilegeC, licenseC));
+ providerV1.addAppDefinedPrivilege(privilegeA);
+ providerV1.addAppDefinedPrivilege(privilegeB);
+ consumer.addPrivilege(privilegeA);
+ consumer.addPrivilege(privilegeB);
+ consumer.addPrivilege(privilegeC);
ScopedInstaller req1(providerV1);
ScopedInstaller req2(consumer);
cynara.check(consumerLabel, session, ownerId, privilegeC, CYNARA_API_ACCESS_DENIED);
// update provider version, remove privilegeA, add privilegeC
- providerV2.addAppDefinedPrivilege(std::make_tuple(privilegeB,
- SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED,
- ""));
- providerV2.addAppDefinedPrivilege(std::make_tuple(privilegeC,
- SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED,
- licenseC));
+ providerV2.addAppDefinedPrivilege(privilegeB);
+ providerV2.addAppDefinedPrivilege(privilegeC);
+
ScopedInstaller req3(providerV2);
cynara.check(consumerLabel, session, ownerId, privilegeA, CYNARA_API_ACCESS_DENIED);
RUNNER_CHILD_TEST(app_defined_05_global_local_install)
{
- const std::string privilegeA = "http://tizen.org/licensedPrivilege/app_defined_05a";
- const std::string privilegeB = "http://tizen.org/applicationDefinedPrivilege/app_defined_05b";
- const std::string privilegeC = "http://tizen.org/applicationDefinedPrivilege/app_defined_05c";
- const std::string licenseB = "/opt/data/app_defined_05b/res/license";
+ const Privilege privilegeA("http://tizen.org/licensedPrivilege/app_defined_05a",
+ Privilege::UNTRUSTED);
+ const Privilege privilegeB("http://tizen.org/applicationDefinedPrivilege/app_defined_05b",
+ "/opt/data/app_defined_05b/res/license");
+ const Privilege privilegeC("http://tizen.org/applicationDefinedPrivilege/app_defined_05c",
+ Privilege::UNTRUSTED);
const std::string providerAppId = "app_def_05_provider_appid";
const std::string consumerAppId = "app_def_05_client_appid";
const std::string ownerId = "5001";
std::string consumerGlobalLabel = consumerGlobal.generateAppLabel();
std::string consumerLocalLabel = consumerLocal.generateAppLabel();
- providerGlobal.addAppDefinedPrivilege(std::make_tuple(privilegeA,
- SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED,
- ""));
- providerGlobal.addAppDefinedPrivilege(std::make_tuple(privilegeC,
- SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED,
- ""));
-
- providerLocal.addAppDefinedPrivilege(std::make_tuple(privilegeA,
- SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED,
- ""));
- providerLocal.addAppDefinedPrivilege(std::make_tuple(privilegeB,
- SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED,
- licenseB));
+ providerGlobal.addAppDefinedPrivilege(privilegeA);
+ providerGlobal.addAppDefinedPrivilege(privilegeC);
+ providerLocal.addAppDefinedPrivilege(privilegeA);
+ providerLocal.addAppDefinedPrivilege(privilegeB);
- consumerGlobal.addClientPrivilege(std::make_pair(privilegeA, ""));
- consumerGlobal.addClientPrivilege(std::make_pair(privilegeB, licenseB));
- consumerGlobal.addClientPrivilege(std::make_pair(privilegeC, ""));
+ consumerGlobal.addPrivilege(privilegeA);
+ consumerGlobal.addPrivilege(privilegeB);
+ consumerGlobal.addPrivilege(privilegeC);
- consumerLocal.addClientPrivilege(std::make_pair(privilegeB, licenseB));
- consumerLocal.addClientPrivilege(std::make_pair(privilegeC, ""));
+ consumerLocal.addPrivilege(privilegeB);
+ consumerLocal.addPrivilege(privilegeC);
CynaraTestClient::Client cynara;
int result;
char *pkgId = nullptr;
char *appId = nullptr;
- const std::string privilegeA = "http://tizen.org/applicationDefinedPrivilege/app_defined_06a";
- const std::string privilegeB = "http://tizen.org/applicationDefinedPrivilege/app_defined_06b";
- const app_defined_privilege_type type = SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED;
+ const Privilege privilegeA("http://tizen.org/applicationDefinedPrivilege/app_defined_06a",
+ Privilege::UNTRUSTED);
+ const Privilege privilegeB("http://tizen.org/applicationDefinedPrivilege/app_defined_06b",
+ Privilege::UNTRUSTED);
const std::string providerId = "app_def_06_provider";
uid_t uid = 5001;
AppInstallHelper providerGlobal(providerId);
AppInstallHelper providerLocal(providerId, uid);
- providerGlobal.addAppDefinedPrivilege(std::make_tuple(privilegeB, type, ""));
- providerLocal.addAppDefinedPrivilege(std::make_tuple(privilegeA, type, ""));
+ providerGlobal.addAppDefinedPrivilege(privilegeB);
+ providerLocal.addAppDefinedPrivilege(privilegeA);
ScopedInstaller req1(providerGlobal);
ScopedInstaller req2(providerLocal);
RUNNER_ASSERT(appId == nullptr);
RUNNER_ASSERT(pkgId == nullptr);
- result = security_manager_get_app_defined_privilege_provider(privilegeA.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeA,
uid+1, &pkgId, &appId);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(appId == nullptr);
RUNNER_ASSERT(pkgId == nullptr);
- result = security_manager_get_app_defined_privilege_provider(privilegeA.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeA,
uid, nullptr, nullptr);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
- result = security_manager_get_app_defined_privilege_provider(privilegeA.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeA,
uid, &pkgId, nullptr);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider failed");
RUNNER_ASSERT(pkgId && std::string(pkgId) == providerLocal.getPkgId());
free(pkgId);
pkgId = nullptr;
- result = security_manager_get_app_defined_privilege_provider(privilegeA.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeA,
uid, nullptr, &appId);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider failed");
RUNNER_ASSERT(appId && std::string(appId) == providerLocal.getAppId());
free(appId);
appId = nullptr;
- result = security_manager_get_app_defined_privilege_provider(privilegeA.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeA,
uid, &pkgId, &appId);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider failed");
RUNNER_ASSERT(appId && std::string(appId) == providerLocal.getAppId());
appId = nullptr;
pkgId = nullptr;
- result = security_manager_get_app_defined_privilege_provider(privilegeB.c_str(),
+ result = security_manager_get_app_defined_privilege_provider(privilegeB,
uid, &pkgId, &appId);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider failed");
RUNNER_ASSERT(appId && std::string(appId) == providerGlobal.getAppId());
{
int result;
char *license = nullptr;
- const std::string privilegeA = "http://tizen.org/applicationDefinedPrivilege/app_defined_07a";
- const std::string privilegeB = "http://tizen.org/applicationDefinedPrivilege/app_defined_07b";
- const std::string privilegeC = "http://tizen.org/applicationDefinedPrivilege/app_defined_07c";
- const std::string licenseA = "/opt/data/app_defined_07a/res/license";
- const std::string licenseB = "/opt/data/app_defined_07b/res/license";
- const std::string licenseC = "/opt/data/app_defined_07c/res/license";
- const app_defined_privilege_type licensed = SM_APP_DEFINED_PRIVILEGE_TYPE_LICENSED;
- const app_defined_privilege_type untrusted = SM_APP_DEFINED_PRIVILEGE_TYPE_UNTRUSTED;
+ const Privilege privilegeA("http://tizen.org/applicationDefinedPrivilege/app_defined_07a",
+ "/opt/data/app_defined_07a/res/license");
+ const Privilege privilegeB("http://tizen.org/applicationDefinedPrivilege/app_defined_07b",
+ "/opt/data/app_defined_07b/res/license");
+ const Privilege privilegeC("http://tizen.org/applicationDefinedPrivilege/app_defined_07c",
+ "/opt/data/app_defined_07c/res/license");
+ const Privilege privilegeCuntrusted(privilegeC.getName(), Privilege::UNTRUSTED);
const std::string providerId = "app_def_07_provider";
uid_t uid = 5001;
AppInstallHelper providerGlobal(providerId);
AppInstallHelper providerLocal(providerId, uid);
- providerGlobal.addAppDefinedPrivilege(std::make_tuple(privilegeB, licensed, licenseB));
- providerGlobal.addAppDefinedPrivilege(std::make_tuple(privilegeC, licensed, licenseC));
- providerLocal.addAppDefinedPrivilege(std::make_tuple(privilegeA, licensed, licenseA));
- providerLocal.addAppDefinedPrivilege(std::make_tuple(privilegeC, untrusted, ""));
+ providerGlobal.addAppDefinedPrivilege(privilegeB);
+ providerGlobal.addAppDefinedPrivilege(privilegeC);
+ providerLocal.addAppDefinedPrivilege(privilegeA);
+ providerLocal.addAppDefinedPrivilege(privilegeCuntrusted);
+
ScopedInstaller req1(providerGlobal);
ScopedInstaller req2(providerLocal);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_app_defined_privilege_license(privilegeA.c_str(), uid, nullptr);
+ result = security_manager_get_app_defined_privilege_license(privilegeA, uid, nullptr);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
result = security_manager_get_app_defined_privilege_license("noExistingPrivilege", uid, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_app_defined_privilege_license(privilegeC.c_str(), uid, &license);
+ result = security_manager_get_app_defined_privilege_license(privilegeC, uid, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_app_defined_privilege_license(privilegeA.c_str(), uid+1, &license);
+ result = security_manager_get_app_defined_privilege_license(privilegeA, uid+1, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_app_defined_privilege_license(privilegeB.c_str(), uid, &license);
+ result = security_manager_get_app_defined_privilege_license(privilegeB, uid, &license);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider license failed");
- RUNNER_ASSERT(license && std::string(license) == licenseB);
+ RUNNER_ASSERT(license && privilegeB.getLicense() == license);
free(license);
license = nullptr;
- result = security_manager_get_app_defined_privilege_license(privilegeA.c_str(), uid, &license);
+ result = security_manager_get_app_defined_privilege_license(privilegeA, uid, &license);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider license failed");
- RUNNER_ASSERT(license && std::string(license) == licenseA);
+ RUNNER_ASSERT(license && privilegeA.getLicense() == license);
free(license);
license = nullptr;
req2.uninstallApp();
- result = security_manager_get_app_defined_privilege_license(privilegeC.c_str(), uid, &license);
+ result = security_manager_get_app_defined_privilege_license(privilegeC, uid, &license);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege provider license failed");
- RUNNER_ASSERT(license && std::string(license) == licenseC);
+ RUNNER_ASSERT(license && privilegeC.getLicense() == license);
free(license);
license = nullptr;
}
{
int result;
char *license = nullptr;
- const std::string privilegeA = "http://tizen.org/applicationDefinedPrivilege/app_defined_08a";
- const std::string privilegeB = "http://tizen.org/applicationDefinedPrivilege/app_defined_08b";
- const std::string privilegeC = "http://tizen.org/applicationDefinedPrivilege/app_defined_08c";
- const std::string licenseA = "/opt/data/app_defined_08a/res/license";
- const std::string licenseB = "/opt/data/app_defined_08b/res/license";
- const std::string licenseC = "/opt/data/app_defined_08c/res/license";
+
+ const Privilege privilegeA("http://tizen.org/applicationDefinedPrivilege/app_defined_08a",
+ "/opt/data/app_defined_08a/res/license");
+ const Privilege privilegeB("http://tizen.org/applicationDefinedPrivilege/app_defined_08b",
+ "/opt/data/app_defined_08b/res/license");
+ const Privilege privilegeC("http://tizen.org/applicationDefinedPrivilege/app_defined_08c",
+ "/opt/data/app_defined_08c/res/license");
+ const Privilege privilegeCunset(privilegeC.getName(), Privilege::UNTRUSTED);
+
const std::string clientId = "app_def_08_client";
uid_t uid = 5001;
AppInstallHelper clientGlobal(clientId);
AppInstallHelper clientLocal(clientId, uid);
- clientGlobal.addClientPrivilege(std::make_pair(privilegeB, licenseB));
- clientGlobal.addClientPrivilege(std::make_pair(privilegeC, licenseC));
- clientLocal.addClientPrivilege(std::make_pair(privilegeA, licenseA));
- clientLocal.addClientPrivilege(std::make_pair(privilegeC, ""));
+ clientGlobal.addPrivilege(privilegeB);
+ clientGlobal.addPrivilege(privilegeC);
+ clientLocal.addPrivilege(privilegeA);
+ clientLocal.addPrivilege(privilegeCunset);
ScopedInstaller req1(clientGlobal);
ScopedInstaller req2(clientLocal);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeA.c_str(), nullptr,
+ result = security_manager_get_client_privilege_license(privilegeA, nullptr,
uid, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeA.c_str(),
+ result = security_manager_get_client_privilege_license(privilegeA,
clientLocal.getAppId().c_str(),
uid, nullptr);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_INPUT_PARAM);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeA.c_str(), "noExistingApp",
+ result = security_manager_get_client_privilege_license(privilegeA, "noExistingApp",
uid, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeC.c_str(),
+ result = security_manager_get_client_privilege_license(privilegeC,
clientLocal.getAppId().c_str(),
uid, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeA.c_str(),
+ result = security_manager_get_client_privilege_license(privilegeA,
clientLocal.getAppId().c_str(),
uid+1, &license);
RUNNER_ASSERT(result == SECURITY_MANAGER_ERROR_NO_SUCH_OBJECT);
RUNNER_ASSERT(license == nullptr);
- result = security_manager_get_client_privilege_license(privilegeA.c_str(),
+ result = security_manager_get_client_privilege_license(privilegeA,
clientLocal.getAppId().c_str(),
uid, &license);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege license failed");
- RUNNER_ASSERT(license && std::string(license) == licenseA);
+ RUNNER_ASSERT(license && privilegeA.getLicense() == license);
free(license);
license = nullptr;
req2.uninstallApp();
- result = security_manager_get_client_privilege_license(privilegeB.c_str(),
+ result = security_manager_get_client_privilege_license(privilegeB,
clientGlobal.getAppId().c_str(),
uid, &license);
RUNNER_ASSERT_MSG(result == SECURITY_MANAGER_SUCCESS, "getting privilege license failed");
- RUNNER_ASSERT(license && std::string(license) == licenseB);
+ RUNNER_ASSERT(license && privilegeB.getLicense() == license);
free(license);
license = nullptr;
}