From 8880814834c40520f9b8c76802b9fa2451190e04 Mon Sep 17 00:00:00 2001 From: Roman Khlopkov <roman.khlopkov@demlabs.net> Date: Wed, 16 Nov 2022 15:54:40 +0000 Subject: [PATCH] feature-7149 --- cellframe-sdk | 2 +- dap-sdk | 2 +- dist/share/configs/cellframe-node.cfg.tpl | 8 ++-- sources/main.c | 45 +++++++++++------------ 4 files changed, 27 insertions(+), 30 deletions(-) diff --git a/cellframe-sdk b/cellframe-sdk index 27e938a83..76dfceb9c 160000 --- a/cellframe-sdk +++ b/cellframe-sdk @@ -1 +1 @@ -Subproject commit 27e938a83ee079b2cb60ffd6cd47a2364521d821 +Subproject commit 76dfceb9c02f6d4fbaf97a47aa10cd8828c01c70 diff --git a/dap-sdk b/dap-sdk index 70151d1c3..0e4afb7d1 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 70151d1c362d4e9669358991c5ac70ad24e33a9a +Subproject commit 0e4afb7d1c40040641ccee1be2d246e856740b23 diff --git a/dist/share/configs/cellframe-node.cfg.tpl b/dist/share/configs/cellframe-node.cfg.tpl index 028e0ae2f..2a9b3c337 100644 --- a/dist/share/configs/cellframe-node.cfg.tpl +++ b/dist/share/configs/cellframe-node.cfg.tpl @@ -48,10 +48,10 @@ listen_port={NOTIFY_SRV_PORT} [dns_client] #request_timeout=10 -# Builtin DNS server -[dns_server] -#enabled=false -#bootstrap_balancer=false +# Bootstrap balancer server +[bootstrap_balancer] +dns_server=false +http_server=false # Ledger defaults [ledger] diff --git a/sources/main.c b/sources/main.c index 9c3542ae5..5dc8c17ba 100755 --- a/sources/main.c +++ b/sources/main.c @@ -62,6 +62,7 @@ #include "dap_http_folder.h" #include "dap_chain_node_dns_client.h" #include "dap_chain_node_dns_server.h" +#include "dap_chain_net_balancer.h" #ifdef DAP_MODULES_DYNAMIC #include "dap_modules_dynamic_cdb.h" @@ -130,11 +131,6 @@ #include "dap_plugins_python_app_context.h" #endif - -#define ENC_HTTP_URL "/enc_init" -#define STREAM_CTL_URL "/stream_ctl" - -#define STREAM_URL "/stream" #define MEMPOOL_URL "/mempool" #define MAIN_URL "/" @@ -418,6 +414,8 @@ int main( int argc, const char **argv ) } #endif + dap_chain_net_load_all(); + log_it(L_INFO, "Automatic mempool processing %s", dap_chain_node_mempool_autoproc_init() ? "enabled" : "disabled"); @@ -453,11 +451,11 @@ int main( int argc, const char **argv ) #endif // Handshake URL - enc_http_add_proc( DAP_HTTP(l_server), ENC_HTTP_URL ); + enc_http_add_proc( DAP_HTTP(l_server), "/"DAP_UPLINK_PATH_ENC_INIT ); // Streaming URLs - dap_stream_add_proc_http( DAP_HTTP(l_server), STREAM_URL ); - dap_stream_ctl_add_proc( DAP_HTTP(l_server), STREAM_CTL_URL ); + dap_stream_add_proc_http( DAP_HTTP(l_server), "/"DAP_UPLINK_PATH_STREAM ); + dap_stream_ctl_add_proc( DAP_HTTP(l_server), "/"DAP_UPLINK_PATH_STREAM_CTL ); const char *str_start_mempool = dap_config_get_item_str( g_config, "mempool", "accept" ); if ( str_start_mempool && !strcmp(str_start_mempool, "true")) { @@ -477,30 +475,29 @@ int main( int argc, const char **argv ) } else log_it( L_INFO, "No enabled server, working in client mode only" ); - if (dap_config_get_item_bool_default(g_config, "dns_server", "enabled", false)) - { + bool dns_bootstrap_balancer_enabled = dap_config_get_item_bool_default(g_config, "bootstrap_balancer", "dns_server", false); + log_it(L_DEBUG, "config bootstrap_balancer->dns_server = \"%u\" ", dns_bootstrap_balancer_enabled); + if (dns_bootstrap_balancer_enabled) { // DNS server start - bool bootstrap_balancer_enabled = dap_config_get_item_bool_default(g_config, "dns_server", "bootstrap_balancer", false); - log_it(L_DEBUG, "config dns_server->bootstrap_balancer = \"%u\" ", bootstrap_balancer_enabled); - if (bootstrap_balancer_enabled) { - dap_dns_server_start( dap_config_get_item_uint16_default(g_config, "dns_server", "bootstrap_balancer_port", DNS_LISTEN_PORT)); - } + dap_dns_server_start(dap_config_get_item_uint16_default(g_config, "bootstrap_balancer", "dns_listen_port", DNS_LISTEN_PORT)); + } + bool http_bootstrap_balancer_enabled = dap_config_get_item_bool_default(g_config, "bootstrap_balancer", "http_server", false); + log_it(L_DEBUG, "config bootstrap_balancer->http_server = \"%u\" ", http_bootstrap_balancer_enabled); + if (http_bootstrap_balancer_enabled) { + // HTTP URL add + dap_http_simple_proc_add(DAP_HTTP(l_server), "/"DAP_UPLINK_PATH_BALANCER, 1024, dap_chain_net_balancer_http_issue_link); } - - //dap_chain_net_load_all(); if(dap_config_get_item_bool_default(g_config,"plugins","enabled",false)){ char * l_plugins_path_default = dap_strdup_printf("%s/var/lib/plugins", g_sys_dir_path); dap_plugin_init( dap_config_get_item_str_default(g_config, "plugins", "path", l_plugins_path_default) ); DAP_DELETE(l_plugins_path_default); - +#ifdef DAP_SUPPORT_PYTHON_PLUGINS //Init python plugins - #ifdef DAP_SUPPORT_PYTHON_PLUGINS - log_it(L_NOTICE, "Loading python plugins"); - dap_plugins_python_app_content_init(l_server); - dap_chain_plugins_init(g_config); - #endif - + log_it(L_NOTICE, "Loading python plugins"); + dap_plugins_python_app_content_init(l_server); + dap_chain_plugins_init(g_config); +#endif dap_plugin_start_all(); } -- GitLab