|
|
|
@ -640,6 +640,8 @@ UniValue dumpwallet(const JSONRPCRequest& request)
|
|
|
|
|
const std::map<CKeyID, int64_t>& mapKeyPool = pwallet->GetAllReserveKeys();
|
|
|
|
|
pwallet->GetKeyBirthTimes(mapKeyBirth);
|
|
|
|
|
|
|
|
|
|
std::set<CScriptID> scripts = pwallet->GetCScripts();
|
|
|
|
|
|
|
|
|
|
// sort time/key pairs
|
|
|
|
|
std::vector<std::pair<int64_t, CKeyID> > vKeyBirth;
|
|
|
|
|
for (const auto& entry : mapKeyBirth) {
|
|
|
|
@ -694,6 +696,15 @@ UniValue dumpwallet(const JSONRPCRequest& request)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
file << "\n";
|
|
|
|
|
for (const CScriptID &scriptid : scripts) {
|
|
|
|
|
CScript script;
|
|
|
|
|
std::string address = EncodeDestination(scriptid);
|
|
|
|
|
if(pwallet->GetCScript(scriptid, script)) {
|
|
|
|
|
file << strprintf("%s 0 script=1", HexStr(script.begin(), script.end()));
|
|
|
|
|
file << strprintf(" # addr=%s\n", address);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
file << "\n";
|
|
|
|
|
file << "# End of dump\n";
|
|
|
|
|
file.close();
|
|
|
|
|
|
|
|
|
|