Skip to content

Commit

Permalink
wallet_rpc_server: allow english/local language names in create_wallet
Browse files Browse the repository at this point in the history
and return both in get_languages
  • Loading branch information
moneromooo-monero committed Mar 25, 2019
1 parent e4b049d commit 678262a
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 4 deletions.
12 changes: 9 additions & 3 deletions src/wallet/wallet_rpc_server.cpp
Expand Up @@ -2908,7 +2908,8 @@ namespace tools
//------------------------------------------------------------------------------------------------------------------------------
bool wallet_rpc_server::on_get_languages(const wallet_rpc::COMMAND_RPC_GET_LANGUAGES::request& req, wallet_rpc::COMMAND_RPC_GET_LANGUAGES::response& res, epee::json_rpc::error& er, const connection_context *ctx)
{
crypto::ElectrumWords::get_language_list(res.languages);
crypto::ElectrumWords::get_language_list(res.languages, true);
crypto::ElectrumWords::get_language_list(res.languages_local, false);
return true;
}
//------------------------------------------------------------------------------------------------------------------------------
Expand Down Expand Up @@ -2939,14 +2940,19 @@ namespace tools
std::string wallet_file = m_wallet_dir + "/" + req.filename;
{
std::vector<std::string> languages;
crypto::ElectrumWords::get_language_list(languages);
crypto::ElectrumWords::get_language_list(languages, false);
std::vector<std::string>::iterator it;

it = std::find(languages.begin(), languages.end(), req.language);
if (it == languages.end())
{
crypto::ElectrumWords::get_language_list(languages, true);
it = std::find(languages.begin(), languages.end(), req.language);
}
if (it == languages.end())
{
er.code = WALLET_RPC_ERROR_CODE_UNKNOWN_ERROR;
er.message = "Unknown language";
er.message = "Unknown language: " + req.language;
return false;
}
}
Expand Down
4 changes: 3 additions & 1 deletion src/wallet/wallet_rpc_server_commands_defs.h
Expand Up @@ -47,7 +47,7 @@
// advance which version they will stop working with
// Don't go over 32767 for any of these
#define WALLET_RPC_VERSION_MAJOR 1
#define WALLET_RPC_VERSION_MINOR 8
#define WALLET_RPC_VERSION_MINOR 9
#define MAKE_WALLET_RPC_VERSION(major,minor) (((major)<<16)|(minor))
#define WALLET_RPC_VERSION MAKE_WALLET_RPC_VERSION(WALLET_RPC_VERSION_MAJOR, WALLET_RPC_VERSION_MINOR)
namespace tools
Expand Down Expand Up @@ -1985,9 +1985,11 @@ namespace wallet_rpc
struct response_t
{
std::vector<std::string> languages;
std::vector<std::string> languages_local;

BEGIN_KV_SERIALIZE_MAP()
KV_SERIALIZE(languages)
KV_SERIALIZE(languages_local)
END_KV_SERIALIZE_MAP()
};
typedef epee::misc_utils::struct_init<response_t> response;
Expand Down

0 comments on commit 678262a

Please sign in to comment.