int client_sock = -1;
int ret = 0;
int face_count = 0;
+ char msg_str[MAX_FILEPATH_LEN] = {0, };
memset((void *)&recv_msg, 0, sizeof(recv_msg));
+ memset(msg_str, 0, sizeof(msg_str));
sock = g_io_channel_unix_get_fd(src);
if (sock < 0) {
return TRUE;
}
- dcm_sec_info("msg_type[%d] uid[%d] msg[%.*s]", recv_msg.msg_type, recv_msg.uid, MAX_FILEPATH_LEN, recv_msg.msg);
+ DCM_SAFE_STRLCPY(msg_str, recv_msg.msg, sizeof(msg_str));
+
+ dcm_sec_info("msg_type[%d] uid[%d] msg[%.*s]", recv_msg.msg_type, recv_msg.uid, MAX_FILEPATH_LEN, msg_str);
if (recv_msg.msg_type == DCM_MSG_REQUEST_KILL_SERVER) {
dcm_warn("Receive DCM_MSG_REQUEST_KILL_SERVER");
__dcm_svc_kill_service();
} else if (recv_msg.msg_type == DCM_MSG_REQUEST_MEDIA) {
- ret = dcm_scan_single(recv_msg.msg, recv_msg.uid, &face_count);
+ ret = dcm_scan_single(msg_str, recv_msg.uid, &face_count);
dcm_debug("Scan single result: ret[%d] face_count[%d]", ret, face_count);
if (ret == MS_MEDIA_ERR_NONE)
- ret = dcm_ipc_send_client_message(client_sock, DCM_MSG_REQUEST_MEDIA, face_count, recv_msg.msg, DCM_IPC_PORT_MS_RECV);
+ ret = dcm_ipc_send_client_message(client_sock, DCM_MSG_REQUEST_MEDIA, face_count, msg_str, DCM_IPC_PORT_MS_RECV);
else
- ret = dcm_ipc_send_client_message(client_sock, DCM_MSG_REQUEST_MEDIA, ret, recv_msg.msg, DCM_IPC_PORT_MS_RECV);
+ ret = dcm_ipc_send_client_message(client_sock, DCM_MSG_REQUEST_MEDIA, ret, msg_str, DCM_IPC_PORT_MS_RECV);
if (ret != MS_MEDIA_ERR_NONE)
dcm_error("Failed to dcm_ipc_send_client_message(%d)", ret);