int privilege_db_manager_get_privilege_list(const char* api_version, privilege_db_manager_package_type_e package_type, GList** privilege_list);
+
int privilege_db_manager_get_privilege_display(privilege_db_manager_package_type_e package_type, const char* privilege_name, const char* api_version, char** privilege_display);
int privilege_db_manager_get_privilege_description(privilege_db_manager_package_type_e package_type, const char* privilege_name, const char* api_version, char** privilege_description);
* @brief Called to get a privilege group once for specific package.
* @param[in] privilege_group The privilege group
* @param[in] user_data The user data passed from the foreach function
- * @return 0 if success, negative value(<0) if fail. Callback is not called if return value is negative.
+ * @return 0 if success, nonzero value(>0) if fail. Callback is not called if return value is nonzero.
* @pre privilege_info_foreach_privilege_group_list_by_pkgid() will invoke this callback.
* @see privilege_info_foreach_privilege_group_list_by_pkgid()
*/
* @brief Called to get a privilege in the privilege group once for specific package.
* @param[in] privilege The privilege
* @param[in] user_data The user data passed from the foreach function
- * @return 0 if success, negative value(<0) if fail. Callback is not called if return value is negative.
+ * @return 0 if success, nonzero value(>0) if fail. Callback is not called if return value is nonzero.
* @pre privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group() will invoke this callback.
* @see privilege_info_foreach_privilege_list_by_pkgid_and_privilege_group()
*/
* @param [in] package_id The package id
* @param [in] callback The callback function to invoke
* @param [in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
+ * @return 0 on success, otherwise a nonzero error value.
* @retval #PRVMGR_ERR_NONE Successful
* @retval #PRVMGR_ERR_INTERNAL_ERROR Internal error
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
* @param [in] package_id The package id
* @param [in] callback The callback function to invoke
* @param [in] user_data The user data to be passed to the callback function
- * @return 0 on success, otherwise a negative error value.
+ * @return 0 on success, otherwise a nonzero error value.
* @retval #PRVMGR_ERR_NONE Successful
* @retval #PRVMGR_ERR_INTERNAL_ERROR Internal error
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
* @remarks @a name must be released with free() by you.
* @param [in] privilege_group The privilege group
* @param [out] name The display name of the privilege group
- * @return 0 on success, otherwise a negative error value.
+ * @return 0 on success, otherwise a nonzero error value.
* @retval #PRVMGR_ERR_NONE Successful
* @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
* @remarks @a name must be released with free() by you.
* @param [in] privilege The privilege
* @param [out] name The display name of the privilege
- * @return 0 on success, otherwise a negative error value.
+ * @return 0 on success, otherwise a nonzero error value.
* @retval #PRVMGR_ERR_NONE Successful
* @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
* @remarks @a description must be released with free() by you.
* @param [in] privilege The privilege
* @param [out] description The description of the privilege
- * @return 0 on success, otherwise a negative error value.
+ * @return 0 on success, otherwise a nonzero error value.
* @retval #PRVMGR_ERR_NONE Successful
* @retval #PRVMGR_ERR_OUT_OF_MEMORY Out of memory
* @retval #PRVMGR_ERR_INVALID_PARAMETER Invalid parameter
sqlite3 $DB_NAME "CREATE TABLE PRIVILEGE_INFO (PROFILE_ID NUMERIC, PROFILE TEXT, PACKAGE_TYPE_ID NUMERIC, PACKAGE_TYPE TEXT, PRIVILEGE_LEVEL_ID NUMERIC, PRIVILEGE_LEVEL TEXT, API_VERSION_ISSUED TEXT, API_VERSION_EXPIRED TEXT, DOCUMENTED INTEGER, PRIVILEGE_NAME TEXT, PRIVILEGE_DISPLAY TEXT, PRIVILEGE_DESCRIPTION TEXT, PRIVILEGE_GROUP_ID NUMERIC, PRIVLEGE_GROUP TEXT, CHANGED_TO_2_3_1 TEXT, CHANGED_TO_2_4_0 TEXT);"
echo "Inserting data ..."
-LIST=`cat core_privilege_info.csv | sed 's/ //g'`
-for i in $LIST
+IFS=$'\n'
+for i in `cat core_privilege_info.csv`
do
temp=`echo $i | awk '/^#/'`
if [ ! "$temp" = "" ]
PACKAGE_TYPE_ID=1
else
- echo "Fail to create table : PACKAGE_TYPE must be osp, wrt or core"
+ echo "Fail to create table : PACKAGE_TYPE must be wrt or core"
exit
fi
sqlite3 $DB_NAME "CREATE TABLE PRIVILEGE_INFO (PROFILE_ID NUMERIC, PROFILE TEXT, PACKAGE_TYPE_ID NUMERIC, PACKAGE_TYPE TEXT, PRIVILEGE_LEVEL_ID NUMERIC, PRIVILEGE_LEVEL TEXT, API_VERSION_ISSUED TEXT, API_VERSION_EXPIRED TEXT, DOCUMENTED INTEGER, PRIVILEGE_NAME TEXT, PRIVILEGE_DISPLAY TEXT, PRIVILEGE_DESCRIPTION TEXT, PRIVILEGE_GROUP_ID NUMERIC, PRIVLEGE_GROUP TEXT, CHANGED_TO_2_4_0 TEXT);"
echo "Inserting data ..."
-LIST=`cat tv_core_privilege_info.csv | sed 's/ //g'`
-for i in $LIST
+IFS=$'\n'
+for i in `cat tv_core_privilege_info.csv`
do
temp=`echo $i | awk '/^#/'`
if [ ! "$temp" = "" ]
PACKAGE_TYPE_ID=1
else
- echo "Fail to create table : PACKAGE_TYPE must be osp, wrt or core"
+ echo "Fail to create table : PACKAGE_TYPE must be wrt or core"
exit
fi
sqlite3 $DB_NAME "CREATE TABLE PRIVILEGE_INFO (PROFILE_ID NUMERIC, PROFILE TEXT, PACKAGE_TYPE_ID NUMERIC, PACKAGE_TYPE TEXT, PRIVILEGE_LEVEL_ID NUMERIC, PRIVILEGE_LEVEL TEXT, API_VERSION_ISSUED TEXT, API_VERSION_EXPIRED TEXT, DOCUMENTED INTEGER, PRIVILEGE_NAME TEXT, PRIVILEGE_DISPLAY TEXT, PRIVILEGE_DESCRIPTION TEXT, PRIVILEGE_GROUP_ID NUMERIC, PRIVLEGE_GROUP TEXT, CHANGED_TO_2_4_0 TEXT);"
echo "Inserting data ..."
-LIST=`cat tv_wrt_privilege_info.csv | sed 's/ //g'`
-for i in $LIST
+IFS=$'\n'
+for i in `cat tv_wrt_privilege_info.csv`
do
temp=`echo $i | awk '/^#/'`
if [ ! "$temp" = "" ]
PACKAGE_TYPE_ID=1
else
- echo "Fail to create table : PACKAGE_TYPE must be osp, wrt or core"
+ echo "Fail to create table : PACKAGE_TYPE must be wrt or core"
exit
fi
sqlite3 $DB_NAME "CREATE TABLE PRIVILEGE_INFO (PROFILE_ID NUMERIC, PROFILE TEXT, PACKAGE_TYPE_ID NUMERIC, PACKAGE_TYPE TEXT, PRIVILEGE_LEVEL_ID NUMERIC, PRIVILEGE_LEVEL TEXT, API_VERSION_ISSUED TEXT, API_VERSION_EXPIRED TEXT, DOCUMENTED INTEGER, PRIVILEGE_NAME TEXT, PRIVILEGE_DISPLAY TEXT, PRIVILEGE_DESCRIPTION TEXT, PRIVILEGE_GROUP_ID NUMERIC, PRIVLEGE_GROUP TEXT, CHANGED_TO_2_3_1 TEXT,CHANGED_TO_2_4_0 TEXT);"
echo "Inserting data ..."
-LIST=`cat wrt_privilege_info.csv | sed 's/ //g'`
-for i in $LIST
+IFS=$'\n'
+for i in `cat wrt_privilege_info.csv`
do
temp=`echo $i | awk '/^#/'`
if [ ! "$temp" = "" ]
PACKAGE_TYPE_ID=1
else
- echo "Fail to create table : PACKAGE_TYPE must be osp, wrt or core"
+ echo "Fail to create table : PACKAGE_TYPE must be wrt or core"
exit
fi
if(ret != PRIVILEGE_DB_MANAGER_ERR_NONE)
return ret;
- char* sql = sqlite3_mprintf("select privilege_display from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q and api_version_issued<=%Q and api_version_expired>=%Q",
- PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name, api_version, api_version);
+ char* sql = NULL;
+
+ if (api_version == NULL) { // api_version == NULL then get display name regardless of api version
+ sql = sqlite3_mprintf("select privilege_display from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q",
+ PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name);
+ } else {
+ sql = sqlite3_mprintf("select privilege_display from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q and api_version_issued<=%Q and api_version_expired>=%Q",
+ PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name, api_version, api_version);
+ }
ret = sqlite3_prepare_v2(db, sql, strlen(sql), &stmt, NULL);
if(ret != SQLITE_OK)
if(ret != PRIVILEGE_DB_MANAGER_ERR_NONE)
return ret;
- char* sql = sqlite3_mprintf("select privilege_description from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q and api_version_issued<=%Q and api_version_expired>=%Q",
- PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name, api_version, api_version);
+ char* sql = NULL;
+
+ if (api_version == NULL) {
+ sql = sqlite3_mprintf("select privilege_description from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q",
+ PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name);;
+ } else {
+ sql = sqlite3_mprintf("select privilege_description from privilege_info where (profile_id=%d or profile_id=%d) and package_type_id=%d and privilege_name=%Q and api_version_issued<=%Q and api_version_expired>=%Q",
+ PRIVILEGE_DB_MANAGER_PROFILE_TYPE_COMMON, g_privilege_db_manager_profile_type, package_type, privilege_name, api_version, api_version);
+ }
ret = sqlite3_prepare_v2(db, sql, strlen(sql), &stmt, NULL);
if(ret != SQLITE_OK)
return PRIVILEGE_DB_NO_EXIST_RESULT;
}
+
int privilege_db_manager_get_privilege_group_display(privilege_db_manager_package_type_e package_type, const char* privilege_name, const char* api_version, int* privilege_group_number)
{
sqlite3* db = NULL;
#include "privilege_db_manager.h"
#include "privilege_info.h"
#include "privilege_info_types.h"
-#include "privilege_manager.h"
#ifdef LOG_TAG
#undef LOG_TAG
#define LOG_TAG "PRIVILEGE_INFO"
#endif
-#define TryReturn(condition, returnValue, ...) \
+#define TryReturn(condition, expr, returnValue, ...) \
if (!(condition)) { \
LOGE(__VA_ARGS__); \
- return returnValue; \
+ expr; \
+ return returnValue; \
} \
else {;}
LOGD("privilege name = %s", privilege_name);
int* groupTable = (int*)user_data;
- TryReturn(privilege_name != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
- TryReturn(user_data != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
+ TryReturn(privilege_name != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
+ TryReturn(user_data != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
int group_id = 6;
- //Native
- int ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege_name, "2.3", &group_id);
+ //core
+ int ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege_name, "9.9", &group_id);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
LOGD("group_id = %d", group_id);
{
return PRVMGR_ERR_INTERNAL_ERROR;
}
- //Web
- ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege_name, "2.3", &group_id);
+ //wrt
+ ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege_name, "9.9", &group_id);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
LOGD("group_id = %d", group_id);
int i = 0;
int res = PRVMGR_ERR_NONE;
- TryReturn(package_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
- TryReturn(callback != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
+ TryReturn(package_id != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
+ TryReturn(callback != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
pkgmgrinfo_pkginfo_h handle;
res = pkgmgrinfo_pkginfo_get_pkginfo(package_id, &handle);
- TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.");
+ TryReturn(res == PMINFO_R_OK, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.");
res = pkgmgrinfo_pkginfo_foreach_privilege(handle, privilege_info_privilege_list_by_pkgid_callback, &groupTable);
pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
- TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
+ TryReturn(res == PMINFO_R_OK, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
for (i = 0; i < MAX_PRV_GROUP; i++)
{
res = callback(privilege_group_info_table[i].privilege_group, user_data);
LOGD("group = %s", privilege_group_info_table[i].privilege_group);
- TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+ TryReturn(res >= 0, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
}
}
privilege_list_cb_data data = *((privilege_list_cb_data*)(user_data));
int group_id = 6;
- TryReturn(privilege_name != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
- TryReturn(user_data != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
+ TryReturn(privilege_name != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
+ TryReturn(user_data != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] user_data is NULL");
- //Native
- int ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege_name, "2.3", &group_id);
+ //core
+ int ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege_name, "9.9", &group_id);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
if(group_id == data.privilege_group){
LOGD("data.privilege_group = %d", data.privilege_group);
res = data.callback(privilege_name, data.user_data);
- TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+ TryReturn(res >= 0, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
return PRVMGR_ERR_NONE;
}
return PRVMGR_ERR_INTERNAL_ERROR;
}
- //Web
- ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege_name, "2.3", &group_id);
+ //wrt
+ ret = privilege_db_manager_get_privilege_group_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege_name, "9.9", &group_id);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
if(group_id == data.privilege_group){
LOGD("data.privilege_group = %d", data.privilege_group);
res = data.callback(privilege_name, data.user_data);
- TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+ TryReturn(res >= 0, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
return PRVMGR_ERR_NONE;
}
{
LOGD("data.privilege_group = %d", data.privilege_group);
res = data.callback(privilege_name, data.user_data);
- TryReturn(res >= 0, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
+ TryReturn(res >= 0, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] return value of callback function is negative.");
}
return PRVMGR_ERR_NONE;
int res = PRVMGR_ERR_NONE;
privilege_list_cb_data data;
- TryReturn(package_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
- TryReturn(privilege_group != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_group is NULL");
- TryReturn(callback != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
+ TryReturn(package_id != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] package_id is NULL");
+ TryReturn(privilege_group != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege_group is NULL");
+ TryReturn(callback != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] callback is NULL");
data.privilege_group = -1;
data.callback = callback;
{
pkgmgrinfo_pkginfo_h handle;
res = pkgmgrinfo_pkginfo_get_pkginfo(package_id, &handle);
- TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.")
+ TryReturn(res == PMINFO_R_OK, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_get_pkginfo is failed.")
res = pkgmgrinfo_pkginfo_foreach_privilege(handle, privilege_info_privilege_list_callback, &data);
pkgmgrinfo_pkginfo_destroy_pkginfo(handle);
- TryReturn(res == PMINFO_R_OK, PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
+ TryReturn(res == PMINFO_R_OK, , PRVMGR_ERR_INTERNAL_ERROR, "[PRVMGR_ERR_INTERNAL_ERROR] pkgmgrinfo_pkginfo_foreach_privilege is failed.")
}
return PRVMGR_ERR_NONE;
LOGD("privilege_group = %s", privilege_group);
int index = 0;
- TryReturn(privilege_group != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege_group != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
for (index = 0; index < MAX_PRV_GROUP; index++)
{
if (strcmp(privilege_group_info_table[index].privilege_group, privilege_group) == 0)
{
*group_string_id = (char*)calloc(strlen(privilege_group_info_table[index].name_string_id) + 1, sizeof(char));
- TryReturn(*group_string_id != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*group_string_id != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*group_string_id, privilege_group_info_table[index].name_string_id, strlen(privilege_group_info_table[index].name_string_id));
break;
char *temp = NULL;
- TryReturn(string_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
+ TryReturn(string_id != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
temp = dgettext("privilege", string_id);
*name = (char*)calloc(strlen(temp) + 1, sizeof(char));
- TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*name != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*name, temp, strlen(temp));
int ret = 0;
char* name_string_id = NULL;
- TryReturn(privilege_group != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege_group != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
ret = privilege_info_get_group_name_string_id(privilege_group, &name_string_id);
char tempPrivilegeGroup[256] = {0,};
char* temp = NULL;
char* buffer = NULL;
+ char* save = NULL;
memcpy(tempPrivilegeGroup, privilege_group, strlen(privilege_group));
- temp = strtok(tempPrivilegeGroup, "/");
+ temp = strtok_r(tempPrivilegeGroup, "/", &save);
while(temp)
{
buffer = temp;
- temp = strtok(NULL, "/");
+ temp = strtok_r(NULL, "/", &save);
}
*name = (char*)calloc(strlen(buffer) + 1, sizeof(char));
- TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*name != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*name, buffer, strlen(buffer));
}
{
ret = privilege_info_get_privilege_group_display_name_by_string_id(name_string_id, name);
free(name_string_id);
- TryReturn(ret == PRVMGR_ERR_NONE, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(ret == PRVMGR_ERR_NONE, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
}
return PRVMGR_ERR_NONE;
}
int privilege_info_get_name_string_id(const char *privilege, char **name_string_id)
{
- TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
char* temp = NULL;
// Check Native
- int ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege, "2.3", &temp);
+ int ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege, NULL, &temp);
LOGD("privilege = %s, string id = %s", privilege, temp);
}
else if(strcmp(temp,"") == 0)
{
- *name_string_id = NULL;
+ //*name_string_id = NULL;
+ *name_string_id = strdup("");
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
+ return PRVMGR_ERR_NONE;
}
else
{
*name_string_id = (char*)calloc(strlen(temp) + 1, sizeof(char));
- if(*name_string_id == NULL)
- {
- LOGE("[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
- free(temp);
- return PRVMGR_ERR_OUT_OF_MEMORY;
- }
+ TryReturn(*name_string_id != NULL, free(temp), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
memcpy(*name_string_id, temp, strlen(temp));
LOGD("display_name_string_id = %s", *name_string_id);
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_NONE;
}
}
else if(ret != PRIVILEGE_DB_NO_EXIST_RESULT)
{
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_INTERNAL_ERROR;
}
}
// Check WRT
- ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege, "2.3", &temp);
+ ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege, NULL, &temp);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
if(temp == NULL)
{
*name_string_id = NULL;
- free(temp);
- LOGE("There is no %s's string id in db", privilege);
- return PRVMGR_ERR_NONE;
}
- else if(strcmp(temp,"") == 0)
+ else if(strcmp(temp, "") == 0)
{
- *name_string_id = NULL;
- free(temp);
- LOGE("There is no %s's string id in db", privilege);
+ //*name_string_id = NULL;
+ *name_string_id = strdup("");
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_NONE;
}
else
{
*name_string_id = (char*)calloc(strlen(temp) + 1, sizeof(char));
- if(*name_string_id == NULL)
- {
- LOGE("[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
+ TryReturn(*name_string_id != NULL, free(temp), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
+ memcpy(*name_string_id, temp, strlen(temp));
+ LOGE("display_name_string_id = %s", *name_string_id);
+ if(temp != NULL){
free(temp);
- return PRVMGR_ERR_OUT_OF_MEMORY;
+ temp = NULL;
}
- memcpy(*name_string_id, temp, strlen(temp));
- LOGD("display_name_string_id = %s", *name_string_id);
- free(temp);
return PRVMGR_ERR_NONE;
}
}
- else if(ret == PRIVILEGE_DB_NO_EXIST_RESULT)
+ else if(ret != PRIVILEGE_DB_NO_EXIST_RESULT)
{
- *name_string_id = NULL;
- free(temp);
- LOGD("There is no %s in db", privilege);
- return PRVMGR_ERR_NONE;
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
+ return PRVMGR_ERR_INTERNAL_ERROR;
}
else
{
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_INTERNAL_ERROR;
}
- if(temp != NULL)
- {
- free(temp);
- temp = NULL;
- }
-
return PRVMGR_ERR_NONE;
}
{
char *temp = NULL;
- TryReturn(string_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
+ TryReturn(string_id != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
temp = dgettext("privilege", string_id);
*name = (char*)calloc(strlen(temp) + 1, sizeof(char));
- TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*name != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*name, temp, strlen(temp));
int ret = 0;
char* name_string_id = NULL;
- TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
ret = privilege_info_get_name_string_id(privilege, &name_string_id);
if (name_string_id == NULL)
{
+ /*
char tempPrivilege[256] = {0,};
char* temp = NULL;
char* buffer = NULL;
TryReturn(*name != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*name, buffer, strlen(buffer));
+ */
+ //*name = strdup("");
+ }
+ else if(strcmp(name_string_id,"") == 0){
+ *name = strdup("display string is not defined yet");
}
else
{
ret = privilege_info_get_privilege_display_name_by_string_id(name_string_id, name);
free(name_string_id);
- TryReturn(ret == PRVMGR_ERR_NONE, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ name_string_id = NULL;
+ TryReturn(ret == PRVMGR_ERR_NONE, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
}
+ if(name_string_id != NULL)
+ free(name_string_id);
+
return PRVMGR_ERR_NONE;
}
int privilege_info_get_description_string_id(const char *privilege, char **description_string_id)
{
- TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
char* temp = NULL;
// Check Native
- int ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege, "2.3", &temp);
+ int ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, privilege, NULL, &temp);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
}
else if(strcmp(temp, "") == 0)
{
- *description_string_id = NULL;
+ //*description_string_id = NULL;
+ *description_string_id = strdup("");
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
+ return PRVMGR_ERR_NONE;
}
else
{
*description_string_id = (char*)calloc(strlen(temp) + 1, sizeof(char));
- if(*description_string_id == NULL)
- {
- LOGE("[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
- free(temp);
- return PRVMGR_ERR_OUT_OF_MEMORY;
- }
+ TryReturn(*description_string_id != NULL, free(temp), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
memcpy(*description_string_id, temp, strlen(temp));
LOGD("description_string_id = %s", *description_string_id);
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_NONE;
}
}
else if(ret != PRIVILEGE_DB_NO_EXIST_RESULT)
{
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_INTERNAL_ERROR;
}
temp = NULL;
}
- // Check Web
- ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege, "2.3", &temp);
+ // Check WRT
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, privilege, NULL, &temp);
if(ret == PRIVILEGE_DB_MANAGER_ERR_NONE)
{
if(temp == NULL)
{
*description_string_id = NULL;
- free(temp);
- LOGE("There is no %s's string id in db", privilege);
- return PRVMGR_ERR_NONE;
}
- else if(strcmp(temp,"") == 0)
+ else if(strcmp(temp, "") == 0)
{
- *description_string_id = NULL;
- free(temp);
- LOGE("There is no %s's string id in db", privilege);
+ //*description_string_id = NULL;
+ *description_string_id = strdup("");
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_NONE;
}
else
{
*description_string_id = (char*)calloc(strlen(temp) + 1, sizeof(char));
- if(*description_string_id == NULL)
- {
- LOGE("[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
+ TryReturn(*description_string_id != NULL, free(temp), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation is failed.");
+ memcpy(*description_string_id, temp, strlen(temp));
+ LOGE("description_string_id = %s", *description_string_id);
+ if(temp != NULL){
free(temp);
- return PRVMGR_ERR_OUT_OF_MEMORY;
+ temp = NULL;
}
- memcpy(*description_string_id, temp, strlen(temp));
- LOGD("description_string_id = %s", *description_string_id);
- free(temp);
return PRVMGR_ERR_NONE;
}
}
- else if(ret == PRIVILEGE_DB_NO_EXIST_RESULT)
+ else if(ret != PRIVILEGE_DB_NO_EXIST_RESULT)
{
- *description_string_id = NULL;
- free(temp);
- LOGE("There is no %s in db", privilege);
- return PRVMGR_ERR_NONE;
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
+ return PRVMGR_ERR_INTERNAL_ERROR;
}
else
{
- free(temp);
+ if(temp != NULL){
+ free(temp);
+ temp = NULL;
+ }
return PRVMGR_ERR_INTERNAL_ERROR;
}
- if(temp != NULL)
- {
- free(temp);
- temp = NULL;
- }
-
return PRVMGR_ERR_NONE;
}
{
char *temp = NULL;
- TryReturn(string_id != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
+ TryReturn(string_id != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] string_id is NULL");
temp = dgettext("privilege", string_id);
*description = (char*)calloc(strlen(temp) + 1, sizeof(char));
- TryReturn(*description != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*description != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*description, temp, strlen(temp));
int ret = 0;
char* description_string_id = NULL;
- TryReturn(privilege != NULL, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
+ TryReturn(privilege != NULL, , PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
ret = privilege_info_get_description_string_id(privilege, &description_string_id);
if (description_string_id == NULL)
{
+ /*
char *temp = NULL;
temp = dgettext("privilege", "IDS_TPLATFORM_BODY_THIS_PRIVILEGE_IS_NOT_DEFINED");
*description = (char*)calloc(strlen(temp) + 1, sizeof(char));
- TryReturn(*description != NULL, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ TryReturn(*description != NULL, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
memcpy(*description, temp, strlen(temp));
+ */
+ //*description = strdup("");
+ }
+ else if(strcmp(description_string_id,"") == 0){
+
+ *description = strdup("description string is not defined yet");
}
else
{
ret = privilege_info_get_privilege_display_name_by_string_id(description_string_id, description);
free(description_string_id);
- TryReturn(ret == PRVMGR_ERR_NONE, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
+ description_string_id = NULL;
+ TryReturn(ret == PRVMGR_ERR_NONE, , PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] Memory allocation failed.");
}
+
+ if(description_string_id != NULL)
+ free(description_string_id);
+
return PRVMGR_ERR_NONE;
}
-
#include "privilege_db_manager.h"
#include "privilege_manager.h"
-#define MESSAGE_SIZE 512
-#define MESSAGE_LIST_SIZE 10000
-#define TOTAL_MESSAGE_LIST_SIZE 30000
+#define MESSAGE_SIZE 512
#ifdef LOG_TAG
#undef LOG_TAG
#define LOG_TAG "PRIVILEGE_MANAGER"
#endif
+#define API_VERSION_PADDING ".0"
+#define API_VERSION_PADDING_LEN strlen(API_VERSION_PADDING)
+#define MAX_API_VERSION_LEN 5
+
#define TryReturn(condition, expr, returnValue, ...) \
if (!(condition)) { \
- expr; \
LOGE(__VA_ARGS__); \
+ expr; \
return returnValue; \
} \
else {;}
+
static int __privilege_manager_check_privilege_list(const char* api_version, const char* privilege, GList* vaild_privilege_list, int* privilege_level, char** changed_to, char** valid_api_version)
{
TryReturn(privilege != NULL,, PRVMGR_ERR_INVALID_PARAMETER, "[PRVMGR_ERR_INVALID_PARAMETER] privilege is NULL");
free(tmp_expired_version);
tmp_expired_version = NULL;
}
- is_valid_version = 0;
+ is_valid_version = 0;
+
+ tmp_api_version = strdup(api_version);
+ TryReturn(tmp_api_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_api_version's strdup is failed.");
+ size_t new_size = snprintf(0, 0, "%s%s", tmp_api_version, API_VERSION_PADDING) + 1;
+ tmp_api_version = realloc(tmp_api_version, new_size*sizeof(char));
+ TryReturn(tmp_api_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_api_version's realloc is failed.");
+ strncat(tmp_api_version, API_VERSION_PADDING, API_VERSION_PADDING_LEN);
- tmp_api_version = strdup(api_version);
- TryReturn(tmp_api_version != NULL, free(tmp_api_version); free(tmp_expired_version); free(tmp_issued_version), PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_api_version's strdup is failed.");
- strncat(tmp_api_version, ".0", strlen(".0"));
tmp_expired_version = strdup(privilege_info_db_row->expired_version);
- TryReturn(tmp_expired_version != NULL, free(tmp_api_version); free(tmp_expired_version); free(tmp_issued_version), PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_expired_version's strdup is failed.");
- strncat(tmp_expired_version, ".0", strlen(".0"));
+ TryReturn(tmp_expired_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] tmp_expired_version's strdup is failed.");
+ new_size = snprintf(0, 0, "%s%s", tmp_expired_version, API_VERSION_PADDING) + 1;
+ tmp_expired_version = realloc(tmp_expired_version, new_size*sizeof(char));
+ TryReturn(tmp_expired_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_expired_version's realloc is failed.");
+ strncat(tmp_expired_version, API_VERSION_PADDING, API_VERSION_PADDING_LEN);
+
tmp_issued_version = strdup(privilege_info_db_row->issued_version);
- TryReturn(tmp_issued_version != NULL, free(tmp_api_version); free(tmp_expired_version); free(tmp_issued_version), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] tmp_issued_version's strdup is failed.");
- strncat(tmp_issued_version, ".0", strlen(".0"));
+ TryReturn(tmp_issued_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] tmp_issued_version's strdup is failed.");
+ new_size = snprintf(0, 0, "%s%s", tmp_issued_version, API_VERSION_PADDING) + 1;
+ tmp_issued_version = realloc(tmp_issued_version, new_size*sizeof(char));
+ TryReturn(tmp_issued_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] tmp_issued_version's realloc is failed.");
+ strncat(tmp_issued_version, API_VERSION_PADDING, API_VERSION_PADDING_LEN);
- for(i=0; i<5; i++)
+ for(i = 0; is_valid_version == 0 && i < MAX_API_VERSION_LEN; i++)
{
- if( !(tmp_api_version[i] <= tmp_expired_version[i]) )
- {
- if(i >= 2)
- {
- if( !(tmp_api_version[i-2] < tmp_expired_version[i-2]) )
- {
- is_valid_version = 1;
- }
- }
- else
- {
- is_valid_version = 1;
- }
+ if (tmp_api_version[i] > tmp_expired_version[i]) {
+ is_valid_version = 1;
+ } else if (tmp_api_version[i] < tmp_expired_version[i]) {
+ break;
}
- else if ( !(tmp_api_version[i] >= tmp_issued_version[i]))
- {
- if( i >= 2 )
- {
- if( !(tmp_api_version[i-2] > tmp_issued_version[i-2]) )
- {
- is_valid_version = 2;
- }
- }
- else
- {
- is_valid_version = 2;
- }
+ }
+
+ for(i = 0; is_valid_version == 0 && i < MAX_API_VERSION_LEN; i++)
+ {
+ if (tmp_api_version[i] < tmp_issued_version[i]) {
+ is_valid_version = 2;
+ } else if (tmp_api_version[i] > tmp_issued_version[i]) {
+ break;
}
}
if(is_valid_version == 0)
{
*privilege_level = privilege_info_db_row->privilege_level_id;
-
ret_val = PRVMGR_ERR_NONE;
goto FINISH;
}
else if(is_valid_version == 1)
{
LOGD("privilege deprecated version is lower than api version");
+ if (*valid_api_version != NULL) {
+ free(*valid_api_version);
+ *valid_api_version = NULL;
+ }
*valid_api_version = strdup(privilege_info_db_row->expired_version);
- TryReturn(valid_api_version != NULL, free(tmp_api_version); free(tmp_issued_version); free(tmp_expired_version), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] valid_api_version's strdup is failed.");
+ TryReturn(valid_api_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] valid_api_version's strdup is failed.");
if(privilege_info_db_row->changed_to != NULL && strcmp(privilege_info_db_row->changed_to, "") != 0 )
{
LOGD("%s was changed to %s.", privilege, privilege_info_db_row->changed_to);
+ if (*changed_to != NULL) {
+ free(*changed_to);
+ *changed_to = NULL;
+ }
*changed_to = strdup(privilege_info_db_row->changed_to);
- TryReturn(changed_to != NULL, free(tmp_api_version); free(tmp_issued_version); free(tmp_expired_version), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] changed_to's strdup is failed.");
+ TryReturn(changed_to != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] changed_to's strdup is failed.");
}
ret_val = PRVMGR_ERR_DEPRECATED_PRIVILEGE;
else if(is_valid_version == 2)
{
LOGD("privilege issued version is higher than api version");
+ if (*valid_api_version != NULL) {
+ free(*valid_api_version);
+ *valid_api_version = NULL;
+ }
*valid_api_version = strdup(privilege_info_db_row->issued_version);
- TryReturn(valid_api_version != NULL, free(tmp_api_version); free(tmp_issued_version); free(tmp_expired_version), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] valid_api_version's strdup is failed.");
+ TryReturn(valid_api_version != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] valid_api_version's strdup is failed.");
ret_val = PRVMGR_ERR_NO_EXIST_PRIVILEGE;
}
GList *l;
int ret;
int ret_val = PRVMGR_ERR_NONE;
- char message_list[TOTAL_MESSAGE_LIST_SIZE] = {0,};
- char noexist_message[MESSAGE_LIST_SIZE] = {0,};
- char deprecated_message[MESSAGE_LIST_SIZE] = {0,};
- char mismatched_message[MESSAGE_LIST_SIZE] = {0,};
+ char* message_list = NULL;
+ char* noexist_message = NULL;
+ char* deprecated_message = NULL;
+ char* mismatched_message = NULL;
char message[MESSAGE_SIZE] = {0,};
- char guide_message[MESSAGE_SIZE] = {0.};
+ char guide_message[MESSAGE_SIZE] = {0,};
char* changed_to = NULL;
char* valid_api_version = NULL;
GList* vaild_privilege_list;
int is_valid_wrt_version = 1;
char* pkg_type = NULL;
int i = 0;
+
//Check invaild parameters
if (api_version == NULL){
LOGE("[PRVMGR_ERR_INVALID_PARAMETER] api_version is NULL");
pkg_type = strdup("WRT");
TryReturn(pkg_type != NULL, free(tmp_api_version), PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] pkg_type's strdup is failed.");
LOGD("package type = %s, api version %s, is valid wrt version %d", pkg_type, api_version, is_valid_wrt_version);
- snprintf(guide_message, MESSAGE_SIZE, "Check config.xml| - Current required_version(=api version) = %s,| ", api_version);
+ snprintf(guide_message, MESSAGE_SIZE, "Check config.xml| - Current required_version(=api version) = %s,| ", api_version);
free(tmp_api_version);
}
else if(package_type == PRVMGR_PACKAGE_TYPE_CORE)
{
pkg_type = strdup("Native");
TryReturn(pkg_type != NULL,, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] pkg_type's strdup is failed.");
- snprintf(guide_message, MESSAGE_SIZE, "Check tizen-manifest.xml| - Current api-version = %s,| ", api_version);
+ snprintf(guide_message, MESSAGE_SIZE, "Check tizen-manifest.xml| - Current api-version = %s,| ", api_version);
}
if( (visibility & PRVMGR_PACKAGE_VISIBILITY_PUBLIC) != PRVMGR_PACKAGE_VISIBILITY_PUBLIC
return PRVMGR_ERR_INVALID_PARAMETER;
}
- if((visibility & PRVMGR_PACKAGE_VISIBILITY_PUBLIC) == PRVMGR_PACKAGE_VISIBILITY_PUBLIC)
- strncat(guide_message, "certificate signature level = public|", strlen("certificate signature level = public|"));
- else if((visibility & PRVMGR_PACKAGE_VISIBILITY_PARTNER) == PRVMGR_PACKAGE_VISIBILITY_PARTNER)
- strncat(guide_message, "certificate signature level = partner|", strlen("certificate signature level = partner|"));
- else
- strncat(guide_message, "certificate signature level = platform|", strlen("certificate signature level = platform|"));
+ if((visibility & PRVMGR_PACKAGE_VISIBILITY_PUBLIC) == PRVMGR_PACKAGE_VISIBILITY_PUBLIC)
+ strncat(guide_message, "certificate signature level = public||", strlen("certificate signature level = public||"));
+ else if((visibility & PRVMGR_PACKAGE_VISIBILITY_PARTNER) == PRVMGR_PACKAGE_VISIBILITY_PARTNER)
+ strncat(guide_message, "certificate signature level = partner||", strlen("certificate signature level = partner||"));
+ else
+ strncat(guide_message, "certificate signature level = platform||", strlen("certificate signature level = platform||"));
if(privilege_list == NULL){
LOGE("[PRVMGR_ERR_INVALID_PARAMETER] privilege_list is NULL");
char* privilege_name = (char*)l->data;
LOGD("Checking privilege = %s", privilege_name);
- if (valid_api_version != NULL) {
- free(valid_api_version);
- valid_api_version = NULL;
- }
- if (changed_to != NULL) {
- free(changed_to);
- changed_to = NULL;
- }
+ if (valid_api_version != NULL) {
+ free(valid_api_version);
+ valid_api_version = NULL;
+ }
+ if (changed_to != NULL) {
+ free(changed_to);
+ changed_to = NULL;
+ }
ret = __privilege_manager_check_privilege_list(api_version, privilege_name, vaild_privilege_list, &privilege_level_id, &changed_to, &valid_api_version);
if( is_valid_wrt_version == 0 )
memset(message, 0, MESSAGE_SIZE);
if(valid_api_version != NULL && strcmp(valid_api_version, "") != 0)
{
- LOGE("[NO_EXIST_PRIVILEGE]%s %s privilege is valid from Tizen version %s and your api version is %s. Use at least api version %s or remove the privilege.", pkg_type, privilege_name, valid_api_version, api_version, valid_api_version);
+ LOGE("[NO_EXIST_PRIVILEGE]%s %s privilege is valid from Tizen version %s and your api version is %s. Use at least api version %s or remove the privilege.", pkg_type, privilege_name, valid_api_version, api_version, valid_api_version);
snprintf(message, MESSAGE_SIZE, " - %s| >> Use at least api version %s or remove the privilege.|", privilege_name, valid_api_version);
}
else
{
- LOGE("[NO_EXIST_PRIVILEGE]%s %s is an invalid privilege. Check spelling or remove the privilege.", pkg_type, privilege_name);
+ LOGE("[NO_EXIST_PRIVILEGE]%s %s is an invalid privilege. Check spelling or remove the privilege.", pkg_type, privilege_name);
snprintf(message, MESSAGE_SIZE, " - %s| >> Check spelling or remove the privilege.|", privilege_name);
}
+
+ if(noexist_message == NULL) {
+ noexist_message = strdup("");
+ TryReturn(noexist_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] noexist_message's strdup is failed.");
+ }
+ size_t new_size = snprintf(0, 0, "%s%s", noexist_message, message) + 1;
+ noexist_message = realloc(noexist_message, new_size*sizeof(char));
+ TryReturn(noexist_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] noexist_message's realloc is failed.");
+
strncat(noexist_message, message, strlen(message));
ret_val = PRVMGR_ERR_INVALID_PRIVILEGE;
memset(message, 0, MESSAGE_SIZE);
if(changed_to != NULL && strcmp(changed_to, "") != 0)
{
- LOGE("[DEPRECATED_PRIVILEGE]%s %s is a deprecated after Tizen version %s and your api version is %s. Use %s instead or change api version to %s.", pkg_type, privilege_name, valid_api_version, api_version, changed_to, valid_api_version);
+ LOGE("[DEPRECATED_PRIVILEGE]%s %s is a deprecated after Tizen version %s and your api version is %s. Use %s instead or change api version to %s.", pkg_type, privilege_name, valid_api_version, api_version, changed_to, valid_api_version);
snprintf(message, MESSAGE_SIZE, " - %s| >> Use %s instead of it or change api version to %s.|", privilege_name, changed_to, valid_api_version);
}
else
{
- LOGE("[DEPRECATED_PRIVILEGE]%s %s is deprecated after Tizen version %s and your api version is %s. Remove the privilege.", pkg_type, privilege_name, valid_api_version, api_version);
+ LOGE("[DEPRECATED_PRIVILEGE]%s %s is deprecated after Tizen version %s and your api version is %s. Remove the privilege.", pkg_type, privilege_name, valid_api_version, api_version);
snprintf(message, MESSAGE_SIZE, " - %s| >> Remove the privilege.|", privilege_name);
}
+
+ if(deprecated_message == NULL) {
+ deprecated_message = strdup("");
+ TryReturn(deprecated_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] deprecated_message's strdup is failed.");
+ }
+ size_t new_size = snprintf(0, 0, "%s%s", deprecated_message, message) + 1;
+ deprecated_message = realloc(deprecated_message, new_size*sizeof(char));
+ TryReturn(deprecated_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] deprecated_message's realloc is failed.");
+
strncat(deprecated_message, message, strlen(message));
ret_val = PRVMGR_ERR_INVALID_PRIVILEGE;
memset(message, 0, MESSAGE_SIZE);
snprintf(message, MESSAGE_SIZE, " - %s| >> Use at least %s signatured certificate.|", privilege_name, __get_privilege_level_string(privilege_level_id));
+ if (mismatched_message == NULL) {
+ mismatched_message = strdup("");
+ TryReturn(mismatched_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] mismatched_message's strdup is failed.");
+ }
+ size_t new_size = snprintf(0, 0, "%s%s", mismatched_message, message) + 1;
+ mismatched_message = realloc(mismatched_message, new_size*sizeof(char));
+ TryReturn(mismatched_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] mismatched_message's realloc is failed.");
strncat(mismatched_message, message, strlen(message));
ret_val = PRVMGR_ERR_INVALID_PRIVILEGE;
memset(message, 0, MESSAGE_SIZE);
snprintf(message, MESSAGE_SIZE, " - %s| >> Use at least %s signatured certificate.|", privilege_name, __get_privilege_level_string(privilege_level_id));
+ if (mismatched_message == NULL) {
+ mismatched_message = strdup("");
+ TryReturn(mismatched_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY,"[PRVMGR_ERR_OUT_OF_MEMORY] mismatched_message's strdup is failed.");
+ }
+ size_t new_size = snprintf(0, 0, "%s%s", mismatched_message, message) + 1;
+ mismatched_message = realloc(mismatched_message, new_size*sizeof(char));
+ TryReturn(mismatched_message, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] mismatched_message's realloc is failed.");
strncat(mismatched_message, message, strlen(message));
-
ret_val = PRVMGR_ERR_INVALID_PRIVILEGE;
}
}
{
LOGE("[PRVMGR_ERR_INVALID_PARAMETER] privilege_name is NULL");
*error_message = strdup("[INVALID_PARAMETER] Invaild parameter was passed.|");
- TryReturn(error_message != NULL,, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
+ TryReturn(error_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
ret_val = PRVMGR_ERR_INVALID_PARAMETER;
goto FINISH;
{
LOGE("[PRVMGR_ERR_INVALID_PARAMETER] Unknown Error occured.");
*error_message = strdup("[INTERNAL_ERROR] Unknown Error occured.|");
- TryReturn(error_message != NULL,, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
+ TryReturn(error_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
ret_val = PRVMGR_ERR_INTERNAL_ERROR;
goto FINISH;
}
}
- char error_code[MESSAGE_SIZE] = {0,};
- char* newline = "|";
-
- if (strlen(noexist_message) > 0)
- strncat(error_code, "[NO_EXIST_PRIVILEGE] ", strlen("[NO_EXIST_PRIVILEGE]"));
-
- if (strlen(deprecated_message) > 0)
- strncat(error_code, "[PRVMGR_ERR_DEPRECATED_PRIVILEGE] ", strlen("[PRVMGR_ERR_DEPRECATED_PRIVILEGE]"));
-
- if (strlen(mismatched_message) > 0)
- strncat(error_code, "[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]", strlen("[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]"));
+ char* newline = "|";
if(ret_val != PRVMGR_ERR_NONE){
- strncat(message_list, guide_message, strlen(guide_message));
- strncat(message_list, newline, strlen(newline));
- if (strlen(noexist_message) > 0) {
- strncat(message_list, "[NO_EXIST_PRIVILEGE]|", strlen("[NO_EXIST_PRIVILEGE]|"));
- strncat(message_list, noexist_message, strlen(noexist_message));
- }
- if (strlen(deprecated_message) > 0) {
- strncat(message_list, "[PRVMGR_ERR_DEPRECATED_PRIVILEGE]|", strlen("[PRVMGR_ERR_DEPRECATED_PRIVILEGE]|"));
- strncat(message_list, deprecated_message, strlen(deprecated_message));
- }
- if (strlen(mismatched_message) > 0) {
- strncat(message_list, "[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]|", strlen("[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]|"));
- strncat(message_list, mismatched_message, strlen(mismatched_message));
- }
- strncat(message_list, newline, strlen(newline));
-
+ message_list = strdup(guide_message);
+ TryReturn(message_list != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] message_list's strdup is failed.");
+ if (noexist_message != NULL) {
+ size_t new_size = snprintf(0, 0, "%s[NO_EXIST_PRIVILEGE]|%s", message_list, noexist_message) + 1;
+ message_list = realloc(message_list, new_size);
+ TryReturn(message_list != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] message_list's realloc is failed.");
+ strncat(message_list, "[NO_EXIST_PRIVILEGE]|", strlen("[NO_EXIST_PRIVILEGE]|"));
+ strncat(message_list, noexist_message, strlen(noexist_message));
+ }
+ if (deprecated_message != NULL) {
+ size_t new_size = snprintf(0, 0, "%s[PRVMGR_ERR_DEPRECATED_PRIVILEGE]|%s", message_list, deprecated_message) + 1;
+ message_list = realloc(message_list, new_size);
+ TryReturn(message_list != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] message_list's realloc is failed.");
+ strncat(message_list, "[PRVMGR_ERR_DEPRECATED_PRIVILEGE]|", strlen("[PRVMGR_ERR_DEPRECATED_PRIVILEGE]|"));
+ strncat(message_list, deprecated_message, strlen(deprecated_message));
+ }
+ if (mismatched_message != NULL) {
+ size_t new_size = snprintf(0, 0, "%s[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]|%s", message_list, mismatched_message) + 1;
+ message_list = realloc(message_list, new_size);
+ TryReturn(message_list != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] message_list's realloc is failed.");
+ strncat(message_list, "[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]|", strlen("[PRVMGR_ERR_MISMATCHED_PRIVILEGE_LEVEL]|"));
+ strncat(message_list, mismatched_message, strlen(mismatched_message));
+ }
+ size_t total_size = snprintf(0, 0, "%s%s", message_list, newline) + 1;
+ message_list = realloc(message_list, total_size);
+ TryReturn(message_list != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] message_list's realloc is failed.");
+ strncat(message_list, newline, strlen(newline));
*error_message = strdup(message_list);
- TryReturn(error_message != NULL,, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
+ TryReturn(error_message != NULL, ret_val = PRVMGR_ERR_OUT_OF_MEMORY; goto FINISH, PRVMGR_ERR_OUT_OF_MEMORY, "[PRVMGR_ERR_OUT_OF_MEMORY] error_message's strdup is failed.");
}
FINISH:
+ if (message_list != NULL)
+ free(message_list);
+ if(deprecated_message != NULL)
+ free(deprecated_message);
+ if(mismatched_message != NULL)
+ free(mismatched_message);
+ if(mismatched_message != NULL)
+ free(noexist_message);
free(changed_to);
free(valid_api_version);
free(pkg_type);
return ret_val;
}
+
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(glib-2.0)
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
%description
Pakcage for Privilege Management
BuildRequires: gettext-tools
BuildRequires: pkgconfig(pkgmgr-info)
BuildRequires: pkgconfig(glib-2.0)
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
%description -n capi-security-privilege-manager
The Privilege Manager API provides functions to verify privilege information of packages to be installed.
%package -n capi-security-privilege-manager-devel
Summary: Privilege Manager API (Development)
-Group: TO_BE/FILLED_IN
Requires: capi-security-privilege-manager
%description -n capi-security-privilege-manager-devel
%package -n tc-privilege-checker
Summary: tc-privilege-checker
-Group: TO_BE/FILLED_IN
%description -n tc-privilege-checker
Testsuit for Privilege Manager APIs
%endif
%make_install
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%post -n capi-security-privilege-manager -p /sbin/ldconfig
+%postun -n capi-security-privilege-manager -p /sbin/ldconfig
+
%files -n privilege-checker
%{_datadir}/license/privilege-checker
%manifest packaging/privilege-checker.manifest
privilege_display = NULL;
ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/messasdfsfsdfsdfad", "2.3", &privilege_display);
__check_get_privilege_display_result(PRIVILEGE_DB_NO_EXIST_RESULT, ret, privilege_display);
- printf("-----------------------------------------------------------\n");
free(privilege_display);
-}
+ printf("-----------------------------------------------------------\n");
+ printf("api_version is NULL\n");
+ printf("privilege : http://tizen.org/privilege/power\n");
+ printf("privilege_type : wrt\n");
+ printf("expected result : PRIVILEGE_DB_MANAGER_ERR_NONE\n");
+ privilege_display = NULL;
+ ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, "http://tizen.org/privilege/power", NULL, &privilege_display);
+ __check_get_privilege_display_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_display);
+ free(privilege_display);
+
+ printf("-----------------------------------------------------------\n");
+ printf("api_version is NULL\n");
+ printf("privilege : http://tizen.org/privilege/messasdfsfsdfsdfad\n");
+ printf("expected result : PRIVILEGE_DB_NO_EXIST_RESULT\n");
+ privilege_display = NULL;
+ ret = privilege_db_manager_get_privilege_display(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/messasdfsfsdfsdfad", NULL, &privilege_display);
+ __check_get_privilege_display_result(PRIVILEGE_DB_NO_EXIST_RESULT, ret, privilege_display);
+ free(privilege_display);
+
+ printf("-----------------------------------------------------------\n");
+
+}
void __check_get_privilege_description_result(privilege_db_manager_error_e expected_result, privilege_db_manager_error_e result, char* privilege_description)
{
int ret;
- char* privilege_display = NULL;
+ char* privilege_description = NULL;
printf("-----------------------------------------------------------\n");
printf("privilege : http://tizen.org/privilege/location\n");
printf("privilege_type : core\n");
printf("expected result : PRIVILEGE_DB_MANAGER_ERR_NONE\n");
- ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/location", "2.3", &privilege_display);
- __check_get_privilege_description_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_display);
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/location", "2.3", &privilege_description);
+ __check_get_privilege_description_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_description);
- if(privilege_display != NULL){
- free(privilege_display);
- privilege_display = NULL;
+ if(privilege_description != NULL){
+ free(privilege_description);
+ privilege_description = NULL;
}
printf("-----------------------------------------------------------\n");
printf("privilege : http://tizen.org/privilege/power\n");
printf("privilege_type : wrt\n");
printf("expected result : PRIVILEGE_DB_MANAGER_ERR_NONE\n");
- ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, "http://tizen.org/privilege/power", "2.3", &privilege_display);
- __check_get_privilege_description_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_display);
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, "http://tizen.org/privilege/power", "2.3", &privilege_description);
+ __check_get_privilege_description_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_description);
- if(privilege_display != NULL){
- free(privilege_display);
- privilege_display = NULL;
+ if(privilege_description != NULL){
+ free(privilege_description);
+ privilege_description = NULL;
}
printf("-----------------------------------------------------------\n");
printf("privilege : http://tizen.org/privilege/messasdfsfsdfsdfad\n");
printf("expected result : PRIVILEGE_DB_NO_EXIST_RESULT\n");
- ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/messasdfsfsdfsdfad", "2.3", &privilege_display);
- __check_get_privilege_description_result(PRIVILEGE_DB_NO_EXIST_RESULT, ret, privilege_display);
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/messasdfsfsdfsdfad", "2.3", &privilege_description);
+ __check_get_privilege_description_result(PRIVILEGE_DB_NO_EXIST_RESULT, ret, privilege_description);
+
+ if(privilege_description != NULL){
+ free(privilege_description);
+ privilege_description = NULL;
+ }
+
printf("-----------------------------------------------------------\n");
+ printf("api_version is NULL\n");
+ printf("privilege : http://tizen.org/privilege/power\n");
+ printf("privilege_type : wrt\n");
+ printf("expected result : PRIVILEGE_DB_MANAGER_ERR_NONE\n");
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_WRT, "http://tizen.org/privilege/power", NULL, &privilege_description);
+ __check_get_privilege_description_result(PRIVILEGE_DB_MANAGER_ERR_NONE, ret, privilege_description);
- free(privilege_display);
+ if(privilege_description != NULL){
+ free(privilege_description);
+ privilege_description = NULL;
+ }
+
+ printf("-----------------------------------------------------------\n");
+ printf("api_version is NULL\n");
+ printf("privilege : http://tizen.org/privilege/messasdfsfsdfsdfad\n");
+ printf("expected result : PRIVILEGE_DB_NO_EXIST_RESULT\n");
+ ret = privilege_db_manager_get_privilege_description(PRIVILEGE_DB_MANAGER_PACKAGE_TYPE_CORE, "http://tizen.org/privilege/messasdfsfsdfsdfad", NULL, &privilege_description);
+ __check_get_privilege_description_result(PRIVILEGE_DB_NO_EXIST_RESULT, ret, privilege_description);
+ printf("-----------------------------------------------------------\n");
+
+ free(privilege_description);
}