int pid;
mc_priv_type_e priv_type;
char *app_id;
- GList *s_data;
-} mc_list_data_set_t;
+ GList *cmds_to_send;
+} mc_app_data_set_t;
static int __mc_sys_get_uid(uid_t *uid)
{
}
}
-static void __mc_destroy_data_list(gpointer data)
+static void __mc_destroy_connected_apps(gpointer data)
{
- char *_ptr = (char *)data;
- MC_SAFE_FREE(_ptr);
-}
+ mc_app_data_set_t *_app_data = (mc_app_data_set_t *)data;
+ mc_retm_if(!_app_data, "invalid _app_data");
-static void __mc_destroy_connected_list(gpointer data)
-{
- mc_list_data_set_t *_ptr = (mc_list_data_set_t *)data;
- mc_retm_if(!data, "invalid data");
-
- if (_ptr->s_data != NULL) {
- g_list_free_full(_ptr->s_data, __mc_destroy_data_list);
- _ptr->s_data = NULL;
+ if (_app_data->cmds_to_send != NULL) {
+ g_list_free_full(_app_data->cmds_to_send, g_free);
+ _app_data->cmds_to_send = NULL;
}
- MC_SAFE_FREE(_ptr);
+ MC_SAFE_FREE(_app_data->app_id);
+ MC_SAFE_FREE(_app_data);
}
static int __mc_create_request_queue(mc_manage_queue_t **data)
MC_SAFE_FREE(data);
}
-static void __mc_set_data(gpointer data, gpointer user_data)
+static void __mc_add_cmd_to_send(gpointer data, gpointer user_data)
{
- mc_list_data_set_t *_data = (mc_list_data_set_t *)data;
+ mc_app_data_set_t *_app_data = (mc_app_data_set_t *)data;
mc_comm_msg_s *_user_data = (mc_comm_msg_s *)user_data;
- char *_set_data = NULL;
- if (_data->pid == _user_data->pid) {
- _set_data = strdup(_user_data->msg);
- _data->s_data = g_list_append(_data->s_data, _set_data);
- }
+ if (_app_data->pid == _user_data->pid)
+ _app_data->cmds_to_send = g_list_append(_app_data->cmds_to_send, g_strdup(_user_data->msg));
}
-static void __mc_get_data(gpointer data, gpointer user_data)
+static void __mc_remove_cmd_to_send(gpointer data, gpointer user_data)
{
- mc_list_data_set_t *_data = (mc_list_data_set_t *)data;
+ mc_app_data_set_t *_app_data = (mc_app_data_set_t *)data;
mc_list_user_data *_user_data = (mc_list_user_data *)user_data;
mc_comm_msg_s *_message = NULL;
unsigned int i = 0;
_message = (mc_comm_msg_s *)_user_data->message;
mc_retm_if(_message->msg_size == 0, "Invalid msg_size");
mc_retm_if(!MC_STRING_VALID(_message->msg), "Invalid msg");
+ mc_retm_if(!_app_data->cmds_to_send, "Nothing to remove");
- if (_data->s_data != NULL) {
+ length_of_list = g_list_length(_app_data->cmds_to_send);
- length_of_list = g_list_length(_data->s_data);
-
- for (i = 0; i < length_of_list; i++) {
-
- value = (char *)g_list_nth_data(_data->s_data, i);
+ for (i = 0; i < length_of_list; i++) {
+ value = (char *)g_list_nth_data(_app_data->cmds_to_send, i);
- if (g_strcmp0(value, _message->msg) == 0) {
- _data->s_data = g_list_remove(_data->s_data, value);
- MC_SAFE_FREE(value);
- _user_data->result++;
- break;
- }
+ if (g_strcmp0(value, _message->msg) == 0) {
+ _app_data->cmds_to_send = g_list_remove(_app_data->cmds_to_send, value);
+ MC_SAFE_FREE(value);
+ _user_data->result++;
+ break;
}
-
- if (g_list_length(_data->s_data) == 0)
- _data->s_data = NULL;
}
}
{
unsigned int length_of_list = 0;
unsigned int i;
- mc_list_data_set_t *ptr = NULL;
+ mc_app_data_set_t *_app_data = NULL;
mc_retvm_if(list == NULL, -1, "list is null");
length_of_list = (unsigned int)g_list_length(list);
for (i = 0; i < length_of_list; i++) {
- ptr = g_list_nth_data(list, i);
- if (ptr == NULL)
+ _app_data = g_list_nth_data(list, i);
+ if (_app_data == NULL)
continue;
- if (ptr->pid == pid) {
- if (ptr->priv_type == priv_type)
- return i;
+ if ((_app_data->pid == pid) && (_app_data->priv_type == priv_type)) {
+ return i;
}
}
return -1;
mc_secure_error("[No-error] index : %d", index);
- mc_list_data_set_t *app_data = g_list_nth_data(*list, index);
+ mc_app_data_set_t *app_data = g_list_nth_data(*list, index);
if (app_data != NULL) {
*list = g_list_remove(*list, app_data);
MC_SAFE_FREE(app_data->app_id);
- if (app_data->s_data != NULL) {
- mc_secure_error("[No-error] sub_data length [%u]", g_list_length(app_data->s_data));
- g_list_free_full(app_data->s_data, __mc_destroy_data_list);
+ if (app_data->cmds_to_send) {
+ mc_secure_error("[No-error] cmd_to_send length [%u]", g_list_length(app_data->cmds_to_send));
+ g_list_free_full(app_data->cmds_to_send, g_free);
}
MC_SAFE_FREE(app_data);
- mc_secure_error("[No-error] data has been removed");
+ mc_secure_error("[No-error] cmd_to_send has been removed");
}
return MEDIA_CONTROLLER_ERROR_NONE;
if (data != NULL) {
if (data->request != NULL)
__mc_destroy_request_queue(data->request);
- if (data->connected != NULL)
- g_list_free_full(data->connected, __mc_destroy_connected_list);
+ if (data->connected_apps != NULL)
+ g_list_free_full(data->connected_apps, __mc_destroy_connected_apps);
MC_SAFE_FREE(data);
}
}
{
mc_debug_fenter();
- mc_list_data_set_t *data = NULL;
+ mc_app_data_set_t *_app_data = NULL;
mc_retvm_if(request_msg == NULL, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "request_msg is NULL");
mc_retvm_if(((request_msg->priv_type != MC_PRIV_TYPE_SERVER) && (request_msg->priv_type != MC_PRIV_TYPE_CLIENT)), MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "invalid priv_type[%d]", request_msg->priv_type);
return MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER;
}
- data = (mc_list_data_set_t *)calloc(1, sizeof(mc_list_data_set_t));
- mc_retvm_if(!data, MEDIA_CONTROLLER_ERROR_OUT_OF_MEMORY, "memory allocation is failed");
+ _app_data = (mc_app_data_set_t *)calloc(1, sizeof(mc_app_data_set_t));
+ mc_retvm_if(!_app_data, MEDIA_CONTROLLER_ERROR_OUT_OF_MEMORY, "memory allocation is failed");
- data->uid = request_msg->uid;
- data->pid = request_msg->pid;
- data->priv_type = request_msg->priv_type;
- data->app_id = g_strdup(request_msg->msg);
+ _app_data->uid = request_msg->uid;
+ _app_data->pid = request_msg->pid;
+ _app_data->priv_type = request_msg->priv_type;
+ _app_data->app_id = g_strdup(request_msg->msg);
- *connected_list = g_list_append(*connected_list, data);
+ *connected_list = g_list_append(*connected_list, _app_data);
if (g_connection_cnt == -1)
g_connection_cnt = 1;
return MEDIA_CONTROLLER_ERROR_NONE;
}
-static int _mc_service_set_data(GList **connected_list, mc_comm_msg_s *request_msg)
+static int _mc_service_add_cmd_to_send(GList **connected_list, mc_comm_msg_s *request_msg)
{
- g_list_foreach(*connected_list, __mc_set_data, request_msg);
+ g_list_foreach(*connected_list, __mc_add_cmd_to_send, request_msg);
return MEDIA_CONTROLLER_ERROR_NONE;
}
-static int _mc_service_get_data(GList **connected_list, mc_comm_msg_s *request_msg)
+static int _mc_service_remove_cmd_to_send(GList **connected_list, mc_comm_msg_s *request_msg)
{
mc_list_user_data *user_data = calloc(1, sizeof(mc_list_user_data));
mc_retvm_if(!user_data, MEDIA_CONTROLLER_ERROR_OUT_OF_MEMORY, "memory allocation is failed");
user_data->message = request_msg;
user_data->result = 0;
- g_list_foreach(*connected_list, __mc_get_data, user_data);
+ g_list_foreach(*connected_list, __mc_remove_cmd_to_send, user_data);
mc_debug("user_data->result : %d", user_data->result);
if (user_data->result > 0) {
mc_secure_debug("Received app_dead signal (pid : %d)", pid);
mc_retvm_if((_service_data == NULL), AUL_R_ERROR, "data is null!");
- mc_retvm_if((_service_data->connected == NULL), AUL_R_OK, "No connected application!");
+ mc_retvm_if((_service_data->connected_apps == NULL), AUL_R_OK, "No connected application!");
- length_of_list = g_list_length(_service_data->connected);
+ length_of_list = g_list_length(_service_data->connected_apps);
for (i = (int)(length_of_list - 1); i >= 0; i--) {
- mc_list_data_set_t *app_data = NULL;
+ mc_app_data_set_t *_app_data = NULL;
- app_data = g_list_nth_data(_service_data->connected, i);
- if (app_data == NULL)
+ _app_data = g_list_nth_data(_service_data->connected_apps, i);
+ if (!_app_data)
continue;
- if (app_data->pid == pid) {
- mc_secure_debug("app_dead(appid) : %s", app_data->app_id);
+ if (_app_data->pid == pid) {
+ mc_secure_debug("app_dead(appid) : %s", _app_data->app_id);
/* Delete and update information of dead application on database */
- if (MEDIA_CONTROLLER_ERROR_NONE != mc_db_remove_application(app_data->uid, app_data->app_id, app_data->priv_type))
+ if (MEDIA_CONTROLLER_ERROR_NONE != mc_db_remove_application(_app_data->uid, _app_data->app_id, _app_data->priv_type))
mc_secure_error("Fail to remove dead application");
/* Sends notification for deactivated server via dbus */
- if (app_data->priv_type == MC_PRIV_TYPE_SERVER) {
- if (MEDIA_CONTROLLER_ERROR_NONE != __mc_notify_server_updated(app_data->app_id, MC_SERVER_STATE_DEACTIVATE))
+ if (_app_data->priv_type == MC_PRIV_TYPE_SERVER) {
+ if (MEDIA_CONTROLLER_ERROR_NONE != __mc_notify_server_updated(_app_data->app_id, MC_SERVER_STATE_DEACTIVATE))
mc_secure_error("Fail to notify deactivated server");
}
- if (MEDIA_CONTROLLER_ERROR_NONE == __mc_list_remove_item(&_service_data->connected, i)) {
+ if (MEDIA_CONTROLLER_ERROR_NONE == __mc_list_remove_item(&_service_data->connected_apps, i)) {
g_connection_cnt--;
mc_secure_error("[No-error] decreased connection count [%d]", g_connection_cnt);
}
goto ERROR;
}
- if (!_mc_service_is_valid_connection(_service_data->connected, request_msg)) {
+ if (!_mc_service_is_valid_connection(_service_data->connected_apps, request_msg)) {
mc_error("Wrong message");
send_msg = MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
goto ERROR;
}
}
} else if (request_msg->msg_type == MC_MSG_CLIENT_SET) {
- send_msg = _mc_service_set_data(&(_service_data->connected), request_msg);
+ send_msg = _mc_service_add_cmd_to_send(&(_service_data->connected_apps), request_msg);
} else if (request_msg->msg_type == MC_MSG_CLIENT_GET) {
- send_msg = _mc_service_get_data(&(_service_data->connected), request_msg);
+ send_msg = _mc_service_remove_cmd_to_send(&(_service_data->connected_apps), request_msg);
} else if (request_msg->msg_type == MC_MSG_SERVER_CONNECTION) {
if (MC_STRING_VALID(request_msg->msg)) {
- send_msg = _mc_service_add_connection(&(_service_data->connected), request_msg);
+ send_msg = _mc_service_add_connection(&(_service_data->connected_apps), request_msg);
if (send_msg == MEDIA_CONTROLLER_ERROR_NONE)
send_msg = mc_db_add_application(request_msg->uid, request_msg->msg, request_msg->priv_type);
} else {
}
} else if (request_msg->msg_type == MC_MSG_SERVER_DISCONNECTION) {
if (MC_STRING_VALID(request_msg->msg)) {
- send_msg = _mc_service_remove_connection(&(_service_data->connected), request_msg);
+ send_msg = _mc_service_remove_connection(&(_service_data->connected_apps), request_msg);
if (send_msg == MEDIA_CONTROLLER_ERROR_NONE)
send_msg = mc_db_remove_application(request_msg->uid, request_msg->msg, request_msg->priv_type);
} else {