mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 06:28:31 +01:00
wallet, rpc: add listdescriptors private option
This commit is contained in:
@@ -2258,13 +2258,20 @@ const std::vector<CScript> DescriptorScriptPubKeyMan::GetScriptPubKeys() const
|
||||
return script_pub_keys;
|
||||
}
|
||||
|
||||
bool DescriptorScriptPubKeyMan::GetDescriptorString(std::string& out) const
|
||||
bool DescriptorScriptPubKeyMan::GetDescriptorString(std::string& out, const bool priv) const
|
||||
{
|
||||
LOCK(cs_desc_man);
|
||||
|
||||
FlatSigningProvider provider;
|
||||
provider.keys = GetKeys();
|
||||
|
||||
if (priv) {
|
||||
// For the private version, always return the master key to avoid
|
||||
// exposing child private keys. The risk implications of exposing child
|
||||
// private keys together with the parent xpub may be non-obvious for users.
|
||||
return m_wallet_descriptor.descriptor->ToPrivateString(provider, out);
|
||||
}
|
||||
|
||||
return m_wallet_descriptor.descriptor->ToNormalizedString(provider, out, &m_wallet_descriptor.cache);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user