From b92a58d11e1787f0a2a8778fff5ae322bf9b03a9 Mon Sep 17 00:00:00 2001 From: wilsonianb Date: Tue, 19 Jan 2016 14:58:30 -0800 Subject: [PATCH] Allow random seed with specified wallet_propose key_type (RIPD-1030) --- src/ripple/rpc/handlers/WalletPropose.cpp | 10 +++++++++- src/ripple/rpc/tests/KeyGeneration.test.cpp | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/ripple/rpc/handlers/WalletPropose.cpp b/src/ripple/rpc/handlers/WalletPropose.cpp index 4adf406b2..c5e5a50df 100644 --- a/src/ripple/rpc/handlers/WalletPropose.cpp +++ b/src/ripple/rpc/handlers/WalletPropose.cpp @@ -56,7 +56,15 @@ Json::Value walletPropose (Json::Value const& params) if (keyType == KeyType::invalid) return rpcError(rpcINVALID_PARAMS); - seed = RPC::getSeedFromRPC (params); + if (params.isMember (jss::passphrase) || params.isMember (jss::seed) || + params.isMember (jss::seed_hex)) + { + seed = RPC::getSeedFromRPC (params); + } + else + { + seed = randomSeed (); + } } else if (params.isMember (jss::passphrase)) { diff --git a/src/ripple/rpc/tests/KeyGeneration.test.cpp b/src/ripple/rpc/tests/KeyGeneration.test.cpp index 8909820f6..02c7e9b1e 100644 --- a/src/ripple/rpc/tests/KeyGeneration.test.cpp +++ b/src/ripple/rpc/tests/KeyGeneration.test.cpp @@ -132,6 +132,9 @@ public: Json::Value params; params[jss::key_type] = keyType; + + expect (! contains_error (walletPropose (params))); + params[jss::passphrase] = common::passphrase; testSecretWallet (params, strings);