diff --git a/.gitmodules b/.gitmodules index c0066fb398a742a16c582dabb8f99a25e9b3b062..7c291d18c1d24ba53e36169e438e59eb502be92b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -12,3 +12,7 @@ [submodule "prod_build"] path = prod_build url = ../prod_build_dapcash-node +[submodule "3rdparty/libmdbx"] + path = 3rdparty/libmdbx + url = ../../cellframe/libmdbx.git + branch = master diff --git a/3rdparty/libmdbx b/3rdparty/libmdbx new file mode 160000 index 0000000000000000000000000000000000000000..c5847bd09adb648a0eec0023744ca8c78b47fa08 --- /dev/null +++ b/3rdparty/libmdbx @@ -0,0 +1 @@ +Subproject commit c5847bd09adb648a0eec0023744ca8c78b47fa08 diff --git a/CMakeLists.txt b/CMakeLists.txt index 47536d7a0d20ddbdb79c909d5b46b5284e66c49d..43cd8597a459fb5d566f4c2c69efece885d3e179 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,8 +7,8 @@ set(CMAKE_C_STANDARD 11) # Predefine project SET( CPACK_PACKAGE_NAME "${PROJECT_NAME}") SET( CPACK_PACKAGE_VERSION_MAJOR 4) -SET( CPACK_PACKAGE_VERSION_MINOR 1) -SET( CPACK_PACKAGE_VERSION_PATCH 99) +SET( CPACK_PACKAGE_VERSION_MINOR 3) +SET( CPACK_PACKAGE_VERSION_PATCH 23) # # init CellFrame SDK @@ -18,9 +18,13 @@ add_definitions("-DDAP_VERSION=\"${CPACK_PACKAGE_VERSION_MAJOR}-${CPACK_PACKAGE_ set(SUBMODULES_NO_BUILD ON) if (NOT(WIN32)) - set(CELLFRAME_MODULES "core chains mining network srv cs-dag-poa cs-dag-pos cs-none srv-app srv-app-db srv-datum srv-stake srv-xchange modules-dynamic srv-vpn") + set(CELLFRAME_MODULES "core chains mining network srv cs-blocks cs-dag-poa cs-dag-pos cs-none srv-app srv-app-db srv-datum srv-stake srv-xchange modules-dynamic srv-vpn") else() - set(CELLFRAME_MODULES "core chains mining network srv cs-dag-poa cs-dag-pos cs-none srv-app srv-app-db srv-datum srv-stake srv-xchange modules-dynamic") + set(CELLFRAME_MODULES "core chains mining network srv cs-blocks cs-dag-poa cs-block-poa cs-dag-pos cs-none srv-app srv-app-db srv-datum srv-stake srv-xchange modules-dynamic") +endif() + +if(BUILD_WITH_GDB_DRIVER_MDBX) +add_subdirectory(3rdparty/libmdbx) endif() include (cellframe-sdk/cmake/OS_Detection.cmake) diff --git a/cellframe-sdk b/cellframe-sdk index 15d774b3535d530459eada6ccabb7a1b4ba4f8ef..b948640c3578c5d5e8d3af5243fa1f0f52d134fd 160000 --- a/cellframe-sdk +++ b/cellframe-sdk @@ -1 +1 @@ -Subproject commit 15d774b3535d530459eada6ccabb7a1b4ba4f8ef +Subproject commit b948640c3578c5d5e8d3af5243fa1f0f52d134fd diff --git a/dist/share/configs/dapcash-node.cfg.tpl b/dist/share/configs/dapcash-node.cfg.tpl index 85d161c6eea2345a10154bef8f44249f3c87e37c..460d6523828ca37d4a772ded61669b0e0a362da7 100644 --- a/dist/share/configs/dapcash-node.cfg.tpl +++ b/dist/share/configs/dapcash-node.cfg.tpl @@ -4,8 +4,6 @@ debug_mode={DEBUG_MODE} # Debug stream packets debug_dump_stream_headers=false -# Debug chains syncronyzation -debug_chain_sync=false # Debug I/O reactor, false by default #debug_reactor=false @@ -15,15 +13,6 @@ debug_chain_sync=false # Auto bring up links and sync everything over them auto_online={AUTO_ONLINE} -# Ledger defaults -[ledger] -# More debug output -debug_more=false - -[dag] -# More debug output -debug_more=false - # Server part [server] # By default you don't need to open you to the world @@ -33,11 +22,26 @@ bugreport_url_enabled=false listen_address={SERVER_ADDR} listen_port_tcp={SERVER_PORT} + +# Build in DNS client (need for bootstraping) +[dns_client] +request_timeout=10 + # Builtin DNS server [dns_server] enabled=false bootstrap_balancer=false +# Ledger defaults +[ledger] +# More debug output +debug_more=false + +# DAG defaults +[dag] +# More debug output +debug_more=false + [srv] order_signed_only=false @@ -50,6 +54,29 @@ pricelist=[] # Automaticaly should be true for master ad root node role # auto_proc=false +# DAP network protocol client +[dap_client] +#debug_more=false +#timeout=10 +#timeout_read_after_connect=5 +#max_tries=5 + +# Chain network settings +[chain_net] +debug_more=true +# Timeout for network status wait +status_wait_timeout=10 + +[stream_ch_chain] +# Uncomment to have more debug information in stream channel Chain +# False by default +#debug_more=true + +# Number of hashes packed into the one update packet +# Increase it to reduce update latency +# Decrease if bad networking +update_pack_size=100 + # Central Dataase [cdb] diff --git a/python-cellframe b/python-cellframe index 17a0569e1c1d73cc7c9a75d152eb38d4c3a93586..5f7f50045b26904da1cce15ab349c97d70e767bb 160000 --- a/python-cellframe +++ b/python-cellframe @@ -1 +1 @@ -Subproject commit 17a0569e1c1d73cc7c9a75d152eb38d4c3a93586 +Subproject commit 5f7f50045b26904da1cce15ab349c97d70e767bb diff --git a/sources/main.c b/sources/main.c index f2c9a41e128a0cb7814ea71ade46d1e049c0cb94..9b92dfcefa5ceb68fb02db2eb01e176392c688a8 100755 --- a/sources/main.c +++ b/sources/main.c @@ -58,7 +58,8 @@ #include "dap_server.h" #include "dap_http.h" #include "dap_http_folder.h" -#include "dap_dns_server.h" +#include "dap_chain_node_dns_client.h" +#include "dap_chain_node_dns_server.h" #include "dap_modules_dynamic_cdb.h" @@ -116,6 +117,7 @@ #ifdef DAP_SUPPORT_PYTHON_PLUGINS #include "dap_chain_plugins.h" + #include "dap_plugins_python_app_context.h" #endif @@ -320,11 +322,26 @@ int main( int argc, const char **argv ) dap_chain_ledger_verificator_add(DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_PAY, dap_chain_net_srv_pay_verificator); dap_chain_ledger_verificator_add(DAP_CHAIN_TX_OUT_COND_SUBTYPE_SRV_STAKE, dap_chain_net_srv_stake_verificator); + // Chain Network init + + dap_stream_ch_chain_init( ); + dap_stream_ch_chain_net_init( ); + + dap_stream_ch_chain_net_srv_init(); + + if (!dap_chain_net_srv_xchange_init()) { + log_it(L_ERROR, "Can't provide exchange capability"); + } + if (!dap_chain_net_srv_stake_init()) { + log_it(L_ERROR, "Can't start delegated stake service"); + } +/// if (dap_config_get_item_bool_default(g_config,"vpn","enabled",false)) +/// dap_stream_ch_vpn_deinit(); + if( dap_chain_net_init() !=0){ log_it(L_CRITICAL,"Can't init dap chain network module"); return -65; } - if( dap_chain_net_srv_init(g_config) !=0){ log_it(L_CRITICAL,"Can't init dap chain network service module"); return -66; @@ -340,6 +357,7 @@ int main( int argc, const char **argv ) return -68; } + #ifndef _WIN32 // vpn server if(dap_config_get_item_bool_default(g_config, "srv_vpn", "enabled", false)) { @@ -443,27 +461,12 @@ int main( int argc, const char **argv ) { // 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(l_events, dap_config_get_item_uint16_default(g_config, "dns_server", "bootstrap_balancer_port", DNS_LISTEN_PORT)); } } - // Chain Network init - - dap_stream_ch_chain_init( ); - dap_stream_ch_chain_net_init( ); - dap_stream_ch_chain_net_srv_init(); - - if (!dap_chain_net_srv_xchange_init()) { - log_it(L_ERROR, "Can't provide exchange capability"); - } - if (!dap_chain_net_srv_stake_init()) { - log_it(L_ERROR, "Can't start delegated stake service"); - } -/// if (dap_config_get_item_bool_default(g_config,"vpn","enabled",false)) -/// dap_stream_ch_vpn_deinit(); //dap_chain_net_load_all();