* @brief verify privilege in the privilege list by checking its name and level at given api version.
* @remarks @a privilege_list must be released with g_list_free() by you.
* @remarks @a error_message must be released with g_list_free() by you.
+ * @param [in] uid The uid of the user who's trying to install the application.
* @param [in] api_version The api version of the application
* @param [in] privilege_manager_package_type_e The privilege_manager_package_type_e
* @param [in] privilege_list The privilege_list
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
* @retval #PRVMGR_ERR_INTERNAL_ERROR Internal error
*/
-EXPORT_API int privilege_manager_verify_privilege(const char* api_version, privilege_manager_package_type_e package_type, GList* privilege_list, privilege_manager_visibility_e visibility, char **error_message);
+EXPORT_API int privilege_manager_verify_privilege(uid_t uid, const char* api_version, privilege_manager_package_type_e package_type, GList* privilege_list, privilege_manager_visibility_e visibility, char **error_message);
/**
* @brief get mapped privilege list of input privilege list according to the given package type, api version, and profile.
return "not defined privilege";
}
-int privilege_manager_verify_privilege(const char *api_version, privilege_manager_package_type_e package_type, GList * privilege_list, privilege_manager_visibility_e visibility, char **error_message)
+int privilege_manager_verify_privilege(uid_t uid, const char *api_version, privilege_manager_package_type_e package_type, GList * privilege_list, privilege_manager_visibility_e visibility, char **error_message)
{
_LOGD("privilege_manager_verify_privilege called");
GList *l;
}
/* Check black list */
- int uid = getuid();
ret = privilege_db_manager_check_black_list(uid, package_type, privilege_list);
if (ret == PRIVILEGE_DB_MANAGER_ERR_DB_NOENTRY) {
_LOGE("[FAIL TO CALL FUNCTION] black list policy db cannot be found");
int privilege_manager_verify_metadata(const char* api_version, GList *metadata_list, privilege_manager_visibility_e visibility, char **error_message)
{
- return privilege_manager_verify_privilege(api_version, PRVMGR_PACKAGE_TYPE_METADATA, metadata_list, visibility, error_message);
+ return privilege_manager_verify_privilege(0, api_version, PRVMGR_PACKAGE_TYPE_METADATA, metadata_list, visibility, error_message);
}
__privinfo("http://tizen.org/privilege/package.info", NULL, NULL);
__privinfo("http://tizen.org/privilege/telephony", NULL, NULL);
__tcinfo(expect, PRVMGR_ERR_USING_BANNED_PRIVILEGE);
- ret = privilege_manager_verify_privilege("2.4", PRVMGR_PACKAGE_TYPE_WRT, privilege_list, PRVMGR_PACKAGE_VISIBILITY_PUBLIC, &error_message);
+ ret = privilege_manager_verify_privilege(0, "2.4", PRVMGR_PACKAGE_TYPE_WRT, privilege_list, PRVMGR_PACKAGE_VISIBILITY_PUBLIC, &error_message);
ShowErrorMsg(error_message != NULL, error_message, ret);
__print_result('m', ret);
__print_line();
__privinfo("http://tizen.org/privilege/package.info", NULL, NULL);
__privinfo("http://tizen.org/privilege/telephony", NULL, NULL);
__tcinfo(expect, PRVMGR_ERR_NONE);
- ret = privilege_manager_verify_privilege("2.4", PRVMGR_PACKAGE_TYPE_WRT, privilege_list, PRVMGR_PACKAGE_VISIBILITY_PUBLIC, &error_message);
+ ret = privilege_manager_verify_privilege(0, "2.4", PRVMGR_PACKAGE_TYPE_WRT, privilege_list, PRVMGR_PACKAGE_VISIBILITY_PUBLIC, &error_message);
ShowErrorMsg(error_message != NULL, error_message, ret);
__print_result('m', ret);
__print_line();
{
char* error_message = NULL;
int ret = 0;
- ret = privilege_manager_verify_privilege(api_version, pkg_type, privilege_list, visibility, &error_message);
+ ret = privilege_manager_verify_privilege(0, api_version, pkg_type, privilege_list, visibility, &error_message);
__print_result('m', ret);
ShowErrorMsg(error_message != NULL, error_message, ret);
__print_line();
exit(1);
}
- privilege_manager_verify_privilege(api_version, package_type, privilege_list, visibility, &error_message);
+ privilege_manager_verify_privilege(0, api_version, package_type, privilege_list, visibility, &error_message);
if (error_message)
printf("%s\n", error_message);