diff --git a/CMakeLists.txt b/CMakeLists.txt
index d7aab33ca5dc85c7b9b6b9a1da87c2d7f44b6037..485fcabbfc1aa39987cb74fb6e9ba35d292c0372 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,7 +32,6 @@ endif()
 add_subdirectory(dap-sdk)
 add_subdirectory(3rdparty/monero_crypto)
 add_subdirectory(3rdparty/cuttdb)
-add_subdirectory(3rdparty/libmdbx)
 if (ANDROID)
     add_subdirectory(3rdparty/libmagic)
     add_subdirectory(3rdparty/json-c)
diff --git a/dap-sdk/net/client/dap_client_http.c b/dap-sdk/net/client/dap_client_http.c
index b989d58697cc1d1b2161fb5df54466995412568c..bd91894a6b1dc7cc823a9e75ab7e531f3f26b1e9 100644
--- a/dap-sdk/net/client/dap_client_http.c
+++ b/dap-sdk/net/client/dap_client_http.c
@@ -420,23 +420,10 @@ void* dap_client_http_request_custom(dap_worker_t * a_worker,const char *a_uplin
     }
 #endif
     // set socket param
-    int buffsize = DAP_CLIENT_HTTP_RESPONSE_SIZE_MAX;
     struct timeval timeout;
     timeout.tv_sec = 10;
     timeout.tv_usec = 0;
-#ifdef DAP_OS_WINDOWS
-      setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_SNDBUF, (char *)&buffsize, sizeof(int) );
-      setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_RCVBUF, (char *)&buffsize, sizeof(int) );
-      if (setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_SNDTIMEO, (char*)&timeout, sizeof(timeout)) < 0)
-          log_it(L_ERROR, "Set send timeout failed, WSA errno %d", WSAGetLastError());
-      if (setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_RCVTIMEO, (char*)&timeout, sizeof(timeout)) < 0)
-          log_it(L_ERROR, "Set recv timeout failed, WSA errno %d", WSAGetLastError());
-#else
-    setsockopt(l_socket, SOL_SOCKET, SO_SNDBUF, (void*) &buffsize, sizeof(buffsize));
-    setsockopt(l_socket, SOL_SOCKET, SO_RCVBUF, (void*) &buffsize, sizeof(buffsize));
-    setsockopt(l_socket, SOL_SOCKET, SO_SNDTIMEO, (void*) &timeout, sizeof(timeout));
-    setsockopt(l_socket, SOL_SOCKET, SO_RCVTIMEO, (void*) &timeout, sizeof(timeout));
-#endif
+
     dap_events_socket_t *l_ev_socket = dap_events_socket_wrap_no_add(dap_events_get_default(), l_socket, &l_s_callbacks);
 
     // create private struct
diff --git a/dap-sdk/net/client/dap_client_pvt.c b/dap-sdk/net/client/dap_client_pvt.c
index 321a191079cc7d84123bdadc38d7a905f14ba899..d0f35d8251047bbb9ae353be45890b305e38edab 100644
--- a/dap-sdk/net/client/dap_client_pvt.c
+++ b/dap-sdk/net/client/dap_client_pvt.c
@@ -354,18 +354,6 @@ static bool s_stage_status_after(dap_client_pvt_t * a_client_pvt)
                     }
                     int buffsize = 0x40000;
                     int optsize = sizeof( int );
-                    if (setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_SNDBUF, (char *)&buffsize, &optsize ) < 0) {
-                        log_it(L_ERROR, "Cant' set send buf size on socket %d, error %d", a_client_pvt->stream_socket, WSAGetLastError());
-                    }
-                    if (setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_RCVBUF, (char *)&buffsize, &optsize ) < 0) {
-                        log_it(L_ERROR, "Cant' set recv buf size on socket %d, error %d", a_client_pvt->stream_socket, WSAGetLastError());
-                    }
-                    if (setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_SNDTIMEO, (char*)&timeout, sizeof(timeout)) < 0) {
-                        log_it(L_ERROR, "Set send timeout failed, WSA errno %d", WSAGetLastError());
-                    }
-                    if (setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_RCVTIMEO, (char*)&timeout, sizeof(timeout)) < 0) {
-                        log_it(L_ERROR, "Set recv timeout failed, WSA errno %d", WSAGetLastError());
-                    }
 #else
                     // Get socket flags
                     int l_socket_flags = fcntl(a_client_pvt->stream_socket, F_GETFL);
@@ -378,11 +366,6 @@ static bool s_stage_status_after(dap_client_pvt_t * a_client_pvt)
                         log_it(L_ERROR, "Error %d can't get socket flags", errno);
                         break;
                     }
-                    int buffsize = 65536*4;
-                    setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_SNDBUF, ( void *) &buffsize, sizeof(int));
-                    setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_RCVBUF, ( void *) &buffsize, sizeof(int));
-                    setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_SNDTIMEO, (void*)&timeout, sizeof(timeout));
-                    setsockopt(a_client_pvt->stream_socket, SOL_SOCKET, SO_RCVTIMEO, (void*)&timeout, sizeof(timeout));
 #endif
 
                     // Wrap socket and setup callbacks
diff --git a/dap-sdk/net/core/dap_worker.c b/dap-sdk/net/core/dap_worker.c
index 20462b561a79dfc22c66f0ce05536168fae49490..2732c03d3798cede17f6f0989826fd12d6bfc3ec 100644
--- a/dap-sdk/net/core/dap_worker.c
+++ b/dap-sdk/net/core/dap_worker.c
@@ -312,6 +312,7 @@ void *dap_worker_thread(void *arg)
 #endif
                         l_errno = errno;
                     break;
+                    case DESCRIPTOR_TYPE_SOCKET_LOCAL_CLIENT:
                     case DESCRIPTOR_TYPE_SOCKET_CLIENT:
                         l_must_read_smth = true;
                         l_bytes_read = recv(l_cur->fd, (char *) (l_cur->buf_in + l_cur->buf_in_size),
@@ -336,6 +337,7 @@ void *dap_worker_thread(void *arg)
 #endif
                     }
                     break;
+                    case DESCRIPTOR_TYPE_SOCKET_LOCAL_LISTENING:
                     case DESCRIPTOR_TYPE_SOCKET_LISTENING:
                         // Accept connection
                         if ( l_cur->callbacks.accept_callback){
diff --git a/modules/app-cli/dap_app_cli_net.c b/modules/app-cli/dap_app_cli_net.c
index 5db967d6a096df80a941adba392161e4d8e08930..b75d9a9a7c5a85e144d0fdf29d3c92f4bffe0a45 100644
--- a/modules/app-cli/dap_app_cli_net.c
+++ b/modules/app-cli/dap_app_cli_net.c
@@ -143,10 +143,6 @@ dap_app_cli_connect_param_t* dap_app_cli_connect(const char *a_socket_path)
     if (!l_cli_port)
         return NULL;
     SOCKET l_socket = socket(AF_INET, SOCK_STREAM, 0);
-    setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_SNDBUF, (char *)&buffsize, sizeof(int) );
-    setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_RCVBUF, (char *)&buffsize, sizeof(int) );
-    DWORD l_to = DAP_CLI_HTTP_TIMEOUT;
-    setsockopt((SOCKET)l_socket, SOL_SOCKET, SO_RCVTIMEO, (char *)&l_to, sizeof(l_to));
 #else
     if (!a_socket_path) {
         return NULL;
@@ -157,9 +153,6 @@ dap_app_cli_connect_param_t* dap_app_cli_connect(const char *a_socket_path)
         return NULL;
     }
     struct timeval l_to = {DAP_CLI_HTTP_TIMEOUT, 0};
-    setsockopt(l_socket, SOL_SOCKET, SO_SNDBUF, (void*) &buffsize, sizeof(buffsize));
-    setsockopt(l_socket, SOL_SOCKET, SO_RCVBUF, (void*) &buffsize, sizeof(buffsize));
-    setsockopt(l_socket, SOL_SOCKET, SO_RCVTIMEO, (void *)&l_to, sizeof(l_to));
 #endif
     // connect
     int l_addr_len;
diff --git a/modules/global-db/CMakeLists.txt b/modules/global-db/CMakeLists.txt
index c5f2b585a1367cf1071c0e9321910223d91bbfc5..4fc6a463cba31e59b88ebbc50bdeaebc04591671 100644
--- a/modules/global-db/CMakeLists.txt
+++ b/modules/global-db/CMakeLists.txt
@@ -2,8 +2,6 @@ cmake_minimum_required(VERSION 3.1)
 project (dap_chain_global_db C)
   
 file(GLOB DAP_CHAIN_GLOBAL_DB_SRC *.c)
-
-
 file(GLOB DAP_CHAIN_GLOBAL_DB_HDR include/*.h)