Skip to content

Commit b713baa

Browse files
committed
Implement GetMetadata in DescriptorScriptPubKeyMan
1 parent 8b9603b commit b713baa

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

src/wallet/scriptpubkeyman.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2043,6 +2043,19 @@ TransactionError DescriptorScriptPubKeyMan::FillPSBT(PartiallySignedTransaction&
20432043

20442044
std::unique_ptr<CKeyMetadata> DescriptorScriptPubKeyMan::GetMetadata(const CTxDestination& dest) const
20452045
{
2046+
std::unique_ptr<SigningProvider> provider = GetSigningProvider(GetScriptForDestination(dest));
2047+
if (provider) {
2048+
KeyOriginInfo orig;
2049+
CKeyID key_id = GetKeyForDestination(*provider, dest);
2050+
if (provider->GetKeyOrigin(key_id, orig)) {
2051+
LOCK(cs_desc_man);
2052+
std::unique_ptr<CKeyMetadata> meta = MakeUnique<CKeyMetadata>();
2053+
meta->key_origin = orig;
2054+
meta->has_key_origin = true;
2055+
meta->nCreateTime = m_wallet_descriptor.creation_time;
2056+
return meta;
2057+
}
2058+
}
20462059
return nullptr;
20472060
}
20482061

0 commit comments

Comments
 (0)