aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/scriptpubkeyman.h
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2023-05-29 15:48:30 +0100
committerfanquake <fanquake@gmail.com>2023-05-29 16:33:14 +0100
commitdfe658009d5ab732bf48319588f532fbd2f11f1a (patch)
tree1f217d52188c894c2904e7e42ceebfdc4504262b /src/wallet/scriptpubkeyman.h
parent769dd1e826fa9b3b6385240b9dfbd3a71858584b (diff)
parent1f97572b9c0d339a8497340e7066050aba9d7694 (diff)
downloadbitcoin-dfe658009d5ab732bf48319588f532fbd2f11f1a.tar.xz
Merge bitcoin/bitcoin#27759: Fix `#include`s in `src/wallet`
1f97572b9c0d339a8497340e7066050aba9d7694 Fix `#include`s in `src/wallet` (Hennadii Stepanov) Pull request description: This PR is a minimum required changes to fix https://github.com/bitcoin/bitcoin/pull/27571#discussion_r1195497290. ACKs for top commit: MarcoFalke: lgtm ACK 1f97572b9c0d339a8497340e7066050aba9d7694 Tree-SHA512: de885210076d23f3394c42ca50e6ae2470c0ae6523399a2fa3ebb7c06383bdacef9c26166fa19747200396bed796c8772165e24416eb30ed8edd024e3394b2fe
Diffstat (limited to 'src/wallet/scriptpubkeyman.h')
-rw-r--r--src/wallet/scriptpubkeyman.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/wallet/scriptpubkeyman.h b/src/wallet/scriptpubkeyman.h
index 5c7240823f..bf35c776ae 100644
--- a/src/wallet/scriptpubkeyman.h
+++ b/src/wallet/scriptpubkeyman.h
@@ -5,6 +5,7 @@
#ifndef BITCOIN_WALLET_SCRIPTPUBKEYMAN_H
#define BITCOIN_WALLET_SCRIPTPUBKEYMAN_H
+#include <logging.h>
#include <psbt.h>
#include <script/descriptor.h>
#include <script/signingprovider.h>
@@ -27,6 +28,8 @@ enum class OutputType;
struct bilingual_str;
namespace wallet {
+struct MigrationData;
+
// Wallet storage things that ScriptPubKeyMans need in order to be able to store things to the wallet database.
// It provides access to things that are part of the entire wallet and not specific to a ScriptPubKeyMan such as
// wallet flags, wallet version, encryption keys, encryption status, and the database itself. This allows a
@@ -661,6 +664,18 @@ public:
void UpgradeDescriptorCache();
};
+
+/** struct containing information needed for migrating legacy wallets to descriptor wallets */
+struct MigrationData
+{
+ CExtKey master_key;
+ std::vector<std::pair<std::string, int64_t>> watch_descs;
+ std::vector<std::pair<std::string, int64_t>> solvable_descs;
+ std::vector<std::unique_ptr<DescriptorScriptPubKeyMan>> desc_spkms;
+ std::shared_ptr<CWallet> watchonly_wallet{nullptr};
+ std::shared_ptr<CWallet> solvable_wallet{nullptr};
+};
+
} // namespace wallet
#endif // BITCOIN_WALLET_SCRIPTPUBKEYMAN_H