From 06ac0f10bd91e30ba1ee6e90fe3256953502698c Mon Sep 17 00:00:00 2001 From: Constantin Papizh <p.const@bk.ru> Date: Tue, 8 Jun 2021 23:20:03 +0300 Subject: [PATCH] Project buildable under win os --- dap-sdk/net/core/dap_proc_thread.c | 2 +- dap-sdk/net/core/dap_server.c | 23 +++++++++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/dap-sdk/net/core/dap_proc_thread.c b/dap-sdk/net/core/dap_proc_thread.c index e64b8db9fd..9f5b326d27 100644 --- a/dap-sdk/net/core/dap_proc_thread.c +++ b/dap-sdk/net/core/dap_proc_thread.c @@ -210,7 +210,7 @@ int dap_proc_thread_assign_esocket_unsafe(dap_proc_thread_t * a_thread, dap_even if(a_esocket->flags & DAP_SOCK_READY_TO_WRITE ) a_esocket->ev.events |= EPOLLOUT; a_esocket->ev.data.ptr = a_esocket; - return epoll_ctl(a_worker->epoll_fd, EPOLL_CTL_ADD, a_esocket->socket, &a_esocket->ev); + return epoll_ctl(a_thread->epoll_ctl, EPOLL_CTL_ADD, a_esocket->socket, &a_esocket->ev); #elif defined (DAP_EVENTS_CAPS_POLL) if ( a_thread->poll_count == a_thread->poll_count_max ){ // realloc a_thread->poll_count_max *= 2; diff --git a/dap-sdk/net/core/dap_server.c b/dap-sdk/net/core/dap_server.c index 2fd5a294b3..34d807be41 100644 --- a/dap-sdk/net/core/dap_server.c +++ b/dap-sdk/net/core/dap_server.c @@ -239,12 +239,19 @@ static int s_server_run(dap_server_t * a_server, dap_events_socket_callbacks_t * { assert(a_server); - struct sockaddr * l_listener_addr = a_server->type == SERVER_LOCAL ? - (struct sockaddr *) &(a_server->listener_path) : - (struct sockaddr *) &(a_server->listener_addr); - socklen_t l_listener_addr_len = a_server->type == SERVER_LOCAL ? - sizeof(a_server->listener_path) : - sizeof(a_server->listener_addr); + struct sockaddr * l_listener_addr = +#ifndef DAP_OS_WINDOWS + a_server->type == SERVER_LOCAL ? + (struct sockaddr *) &(a_server->listener_path) : +#endif + (struct sockaddr *) &(a_server->listener_addr); + + socklen_t l_listener_addr_len = +#ifndef DAP_OS_WINDOWS + a_server->type == SERVER_LOCAL ? + sizeof(a_server->listener_path) : +#endif + sizeof(a_server->listener_addr); if(bind (a_server->socket_listener, l_listener_addr, l_listener_addr_len) < 0) { #ifdef DAP_OS_WINDOWS @@ -290,7 +297,7 @@ static int s_server_run(dap_server_t * a_server, dap_events_socket_callbacks_t * for(size_t l_worker_id = 0; l_worker_id < dap_events_worker_get_count() ; l_worker_id++){ dap_worker_t *l_w = dap_events_worker_get(l_worker_id); assert(l_w); - dap_events_socket_t * l_es = dap_events_socket_wrap2( a_server, a_events, a_server->socket_listener, &l_callbacks); + dap_events_socket_t * l_es = dap_events_socket_wrap2( a_server, a_server->events, a_server->socket_listener, &l_callbacks); a_server->es_listeners = dap_list_append(a_server->es_listeners, l_es); if (l_es) { @@ -306,7 +313,7 @@ static int s_server_run(dap_server_t * a_server, dap_events_socket_callbacks_t * pthread_cond_wait(&a_server->started_cond, &a_server->started_mutex); pthread_mutex_unlock(&a_server->started_mutex); } else{ - log_it(L_WARNING, "Can't wrap event socket for %s:%u server", a_addr, a_port); + log_it(L_WARNING, "Can't wrap event socket for %s:%u server", a_server->address, a_server->port); return -2; } } -- GitLab