mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-09 10:43:19 -05:00
Implement GetKeypoolOldestTime and only display it if greater than 0
This commit is contained in:
parent
586b57a9a6
commit
f1ca5feb4a
2 changed files with 8 additions and 3 deletions
|
@ -2439,7 +2439,7 @@ static UniValue getwalletinfo(const JSONRPCRequest& request)
|
||||||
{RPCResult::Type::STR_AMOUNT, "unconfirmed_balance", "DEPRECATED. Identical to getbalances().mine.untrusted_pending"},
|
{RPCResult::Type::STR_AMOUNT, "unconfirmed_balance", "DEPRECATED. Identical to getbalances().mine.untrusted_pending"},
|
||||||
{RPCResult::Type::STR_AMOUNT, "immature_balance", "DEPRECATED. Identical to getbalances().mine.immature"},
|
{RPCResult::Type::STR_AMOUNT, "immature_balance", "DEPRECATED. Identical to getbalances().mine.immature"},
|
||||||
{RPCResult::Type::NUM, "txcount", "the total number of transactions in the wallet"},
|
{RPCResult::Type::NUM, "txcount", "the total number of transactions in the wallet"},
|
||||||
{RPCResult::Type::NUM_TIME, "keypoololdest", "the " + UNIX_EPOCH_TIME + " of the oldest pre-generated key in the key pool"},
|
{RPCResult::Type::NUM_TIME, "keypoololdest", "the " + UNIX_EPOCH_TIME + " of the oldest pre-generated key in the key pool. Legacy wallets only."},
|
||||||
{RPCResult::Type::NUM, "keypoolsize", "how many new keys are pre-generated (only counts external keys)"},
|
{RPCResult::Type::NUM, "keypoolsize", "how many new keys are pre-generated (only counts external keys)"},
|
||||||
{RPCResult::Type::NUM, "keypoolsize_hd_internal", "how many new keys are pre-generated for internal use (used for change outputs, only appears if the wallet is using this feature, otherwise external keys are used)"},
|
{RPCResult::Type::NUM, "keypoolsize_hd_internal", "how many new keys are pre-generated for internal use (used for change outputs, only appears if the wallet is using this feature, otherwise external keys are used)"},
|
||||||
{RPCResult::Type::NUM_TIME, "unlocked_until", "the " + UNIX_EPOCH_TIME + " until which the wallet is unlocked for transfers, or 0 if the wallet is locked"},
|
{RPCResult::Type::NUM_TIME, "unlocked_until", "the " + UNIX_EPOCH_TIME + " until which the wallet is unlocked for transfers, or 0 if the wallet is locked"},
|
||||||
|
@ -2472,13 +2472,16 @@ static UniValue getwalletinfo(const JSONRPCRequest& request)
|
||||||
|
|
||||||
size_t kpExternalSize = pwallet->KeypoolCountExternalKeys();
|
size_t kpExternalSize = pwallet->KeypoolCountExternalKeys();
|
||||||
const auto bal = pwallet->GetBalance();
|
const auto bal = pwallet->GetBalance();
|
||||||
|
int64_t kp_oldest = pwallet->GetOldestKeyPoolTime();
|
||||||
obj.pushKV("walletname", pwallet->GetName());
|
obj.pushKV("walletname", pwallet->GetName());
|
||||||
obj.pushKV("walletversion", pwallet->GetVersion());
|
obj.pushKV("walletversion", pwallet->GetVersion());
|
||||||
obj.pushKV("balance", ValueFromAmount(bal.m_mine_trusted));
|
obj.pushKV("balance", ValueFromAmount(bal.m_mine_trusted));
|
||||||
obj.pushKV("unconfirmed_balance", ValueFromAmount(bal.m_mine_untrusted_pending));
|
obj.pushKV("unconfirmed_balance", ValueFromAmount(bal.m_mine_untrusted_pending));
|
||||||
obj.pushKV("immature_balance", ValueFromAmount(bal.m_mine_immature));
|
obj.pushKV("immature_balance", ValueFromAmount(bal.m_mine_immature));
|
||||||
obj.pushKV("txcount", (int)pwallet->mapWallet.size());
|
obj.pushKV("txcount", (int)pwallet->mapWallet.size());
|
||||||
obj.pushKV("keypoololdest", pwallet->GetOldestKeyPoolTime());
|
if (kp_oldest > 0) {
|
||||||
|
obj.pushKV("keypoololdest", kp_oldest);
|
||||||
|
}
|
||||||
obj.pushKV("keypoolsize", (int64_t)kpExternalSize);
|
obj.pushKV("keypoolsize", (int64_t)kpExternalSize);
|
||||||
|
|
||||||
LegacyScriptPubKeyMan* spk_man = pwallet->GetLegacyScriptPubKeyMan();
|
LegacyScriptPubKeyMan* spk_man = pwallet->GetLegacyScriptPubKeyMan();
|
||||||
|
|
|
@ -1851,7 +1851,9 @@ bool DescriptorScriptPubKeyMan::HavePrivateKeys() const
|
||||||
|
|
||||||
int64_t DescriptorScriptPubKeyMan::GetOldestKeyPoolTime() const
|
int64_t DescriptorScriptPubKeyMan::GetOldestKeyPoolTime() const
|
||||||
{
|
{
|
||||||
return GetTime();
|
// This is only used for getwalletinfo output and isn't relevant to descriptor wallets.
|
||||||
|
// The magic number 0 indicates that it shouldn't be displayed so that's what we return.
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t DescriptorScriptPubKeyMan::KeypoolCountExternalKeys() const
|
size_t DescriptorScriptPubKeyMan::KeypoolCountExternalKeys() const
|
||||||
|
|
Loading…
Add table
Reference in a new issue