Page MenuHomePhabricator

D6229.diff
No OneTemporary

D6229.diff

diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h
--- a/src/wallet/wallet.h
+++ b/src/wallet/wallet.h
@@ -1442,6 +1442,11 @@
*/
bool GetKeyOrigin(const CKeyID &keyid, KeyOriginInfo &info) const override;
+ /**
+ * Add a KeyOriginInfo to the wallet
+ */
+ bool AddKeyOrigin(const CPubKey &pubkey, const KeyOriginInfo &info);
+
friend struct WalletTestingSetup;
};
diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp
--- a/src/wallet/wallet.cpp
+++ b/src/wallet/wallet.cpp
@@ -4976,3 +4976,13 @@
}
return true;
}
+
+bool CWallet::AddKeyOrigin(const CPubKey &pubkey, const KeyOriginInfo &info) {
+ LOCK(cs_wallet);
+ std::copy(info.fingerprint, info.fingerprint + 4,
+ mapKeyMetadata[pubkey.GetID()].key_origin.fingerprint);
+ mapKeyMetadata[pubkey.GetID()].key_origin.path = info.path;
+ mapKeyMetadata[pubkey.GetID()].has_key_origin = true;
+ mapKeyMetadata[pubkey.GetID()].hdKeypath = WriteHDKeypath(info.path);
+ return WriteKeyMetadata(mapKeyMetadata[pubkey.GetID()], pubkey, true);
+}

File Metadata

Mime Type
text/plain
Expires
Sat, Mar 1, 11:28 (8 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5187611
Default Alt Text
D6229.diff (1 KB)

Event Timeline