From f7f8e2b721e35d1eed54d28b13fa94133050ae89 Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Fri, 20 Sep 2024 11:52:38 +0700 Subject: [PATCH] [*] fix wal activation --- modules/net/dap_chain_node_cli_cmd.c | 8 ++++++-- modules/wallet/dap_chain_wallet.c | 6 ++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c index e8b1aa3c31..2ff36ad2c8 100644 --- a/modules/net/dap_chain_node_cli_cmd.c +++ b/modules/net/dap_chain_node_cli_cmd.c @@ -2083,11 +2083,15 @@ int l_arg_index = 1, l_rc, cmd_num = CMD_NONE; break; case -EBUSY: dap_json_rpc_error_add(DAP_CHAIN_NODE_CLI_COM_TX_WALLET_ALREADY_ERR, - "Error: wallet %s is already %sactivated\n", l_wallet_name, l_prefix); + "Wallet %s is already %sactivated\n", l_wallet_name, l_prefix); break; case -EAGAIN: dap_json_rpc_error_add(DAP_CHAIN_NODE_CLI_COM_TX_WALLET_PASS_ERR, - "Error: wrong password for wallet %s\n", l_wallet_name); + "Wrong password for wallet %s\n", l_wallet_name); + break; + case -101: + dap_json_rpc_error_add(DAP_CHAIN_NODE_CLI_COM_TX_WALLET_PASS_ERR, + "Can't active unprotected wallet: %s\n", l_wallet_name); break; default: { char l_buf[512] = { '\0' }; diff --git a/modules/wallet/dap_chain_wallet.c b/modules/wallet/dap_chain_wallet.c index 3898692229..0797c8b6f1 100644 --- a/modules/wallet/dap_chain_wallet.c +++ b/modules/wallet/dap_chain_wallet.c @@ -169,6 +169,12 @@ char *c_wallets_path; memset(l_prec->pass, 0, l_prec->pass_len), l_prec->pass_len = 0; /* Say <what> again ?! */ return log_it(L_ERROR, "Wallet's password is invalid, say <password> again"), -EAGAIN; } + if(!(l_wallet->flags & DAP_WALLET$M_FL_ACTIVE)) { + HASH_FIND_STR(s_wallet_n_pass, a_name, l_prec); + HASH_DEL(s_wallet_n_pass, l_prec); + log_it(L_ERROR, "Can't activate unprotected wallet"); + l_rc = -101; + } dap_chain_wallet_close( l_wallet); -- GitLab