Merge bitcoin/bitcoin#23004: multiprocess: add interfaces::ExternalSigner class

a032fa30d2 multiprocess: add interfaces::ExternalSigner class (Russell Yanofsky)

Pull request description:

  Add `interfaces::ExternalSigner` class to let signer objects be passed between processes and let signer code run in the original process where the object was created.

  ---

  This PR is part of the [process separation project](https://github.com/bitcoin/bitcoin/projects/10).

ACKs for top commit:
  laanwj:
    Concept and code review ACK a032fa30d2
  hebasto:
    re-ACK a032fa30d2

Tree-SHA512: 99a729fb3a64d010e142cc778a9f1f358e58345b77faaf2664de7d2277715d59df3352326e8f0f2a6628038670eaa4556310a549079fb28af6d2eeb05aea1460
This commit is contained in:
W. J. van der Laan
2021-11-15 17:12:05 +01:00
5 changed files with 41 additions and 12 deletions

View File

@@ -280,9 +280,9 @@ void CreateWalletActivity::create()
{
m_create_wallet_dialog = new CreateWalletDialog(m_parent_widget);
std::vector<ExternalSigner> signers;
std::vector<std::unique_ptr<interfaces::ExternalSigner>> signers;
try {
signers = node().externalSigners();
signers = node().listExternalSigners();
} catch (const std::runtime_error& e) {
QMessageBox::critical(nullptr, tr("Can't list signers"), e.what());
}