static bool _ms_register_socket_event_source(int fd, muse_module_callback connection_handler, gpointer module_idx);
static void _ms_register_all_sockets_event_source(void);
-static void _ms_assign_msg_data_fds(int fd[]);
static int _ms_new(muse_channel_e channel);
static int _ms_get_pid(int fd);
static void _ms_get_module_addr(int fd, intptr_t *module_addr);
{
LOGD("Enter");
- char err_msg[MUSE_MSG_LEN_MAX] = {'\0',};
-
- if (!_ms_register_socket_event_source(muse_server->msg_fd, _ms_connection_handler, GINT_TO_POINTER(MUSE_CHANNEL_MSG))) {
- snprintf(err_msg, sizeof(err_msg), "Fail to attach server fd %d", muse_server->msg_fd);
+ int idx = 0;
- LOGE("%s", err_msg);
- ms_terminate(SIGABRT);
- }
+ char err_msg[MUSE_MSG_LEN_MAX] = {'\0',};
- if (!_ms_register_socket_event_source(muse_server->data_fd, _ms_connection_handler, GINT_TO_POINTER(MUSE_CHANNEL_DATA))) {
- snprintf(err_msg, sizeof(err_msg), "Fail to attach server fd %d", muse_server->data_fd);
+ for (idx = 0; idx < MUSE_CHANNEL_MAX; idx++) {
+ if (!_ms_register_socket_event_source(muse_server->fd[idx], _ms_connection_handler, GINT_TO_POINTER(idx))) {
+ snprintf(err_msg, sizeof(err_msg), "Fail to attach server fd %d", muse_server->fd[idx]);
- LOGE("%s", err_msg);
- ms_terminate(SIGABRT);
+ LOGE("%s", err_msg);
+ ms_terminate(SIGABRT);
+ }
}
LOGD("Leave");
}
-static void _ms_assign_msg_data_fds(int fd[])
-{
- LOGD("Enter");
-
- muse_return_if_fail(muse_server);
-
- muse_server->msg_fd = fd[MUSE_CHANNEL_MSG];
- muse_server->data_fd = fd[MUSE_CHANNEL_DATA];
-
- LOGD("Leave");
-}
-
static int _ms_new(muse_channel_e channel)
{
int fd, errsv;
ms_remove_ready_file();
retval = muse_server->retval;
- muse_core_fd_close(muse_server->msg_fd);
- muse_core_fd_close(muse_server->data_fd);
for (idx = 0; idx < MUSE_CHANNEL_MAX; idx++) {
+ muse_core_fd_close(muse_server->fd[idx]);
if (remove(UDS_files[idx]) == MUSE_ERR)
LOGE("remove %s failed", UDS_files[idx]);
}
void ms_new(void)
{
- int fd[MUSE_CHANNEL_MAX];
int i, j;
for (i = 0; i < MUSE_CHANNEL_MAX; i++) {
if (ms_config_is_on_demand() && i == MUSE_CHANNEL_MSG)
- fd[i] = SD_LISTEN_FDS_START;
+ muse_server->fd[i] = SD_LISTEN_FDS_START;
else
- fd[i] = _ms_new(i);
+ muse_server->fd[i] = _ms_new(i);
- if (!muse_core_fd_is_valid(fd[i])) {
+ if (!muse_core_fd_is_valid(muse_server->fd[i])) {
LOGE("Failed to create socket server %d", i);
for (j = 0; j < i; j++)
- close(fd[j]);
+ close(muse_server->fd[j]);
return;
}
}
-
- _ms_assign_msg_data_fds(fd);
}
void ms_run(void)