|
|
|
@ -640,6 +640,8 @@ UniValue dumpwallet(const JSONRPCRequest& request)
@@ -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)
@@ -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(); |
|
|
|
|
|
|
|
|
|