]> Untitled Git - bdk/commitdiff
refactor(wallet)!: remove dangling unused `hardwaresigner.rs` file
authorLeonardo Lima <oleonardolima@users.noreply.github.com>
Fri, 16 Aug 2024 00:41:29 +0000 (21:41 -0300)
committerSteve Myers <steve@notmandatory.org>
Wed, 11 Sep 2024 14:43:11 +0000 (09:43 -0500)
It seems this file was left out on the previous migration from hardware
signers from `bdk_wallet` crate to the `bdk_hwi`, but it should've been
removed.

crates/wallet/src/wallet/hardwaresigner.rs [deleted file]

diff --git a/crates/wallet/src/wallet/hardwaresigner.rs b/crates/wallet/src/wallet/hardwaresigner.rs
deleted file mode 100644 (file)
index 3ec8d9a..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-// Bitcoin Dev Kit
-// Written in 2020 by Alekos Filini <alekos.filini@gmail.com>
-//
-// Copyright (c) 2020-2021 Bitcoin Dev Kit Developers
-//
-// This file is licensed under the Apache License, Version 2.0 <LICENSE-APACHE
-// or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
-// You may not use this file except in accordance with one or both of these
-// licenses.
-
-//! HWI Signer
-//!
-//! This module contains HWISigner, an implementation of a [TransactionSigner] to be
-//! used with hardware wallets.
-//! ```no_run
-//! # use bdk_wallet::bitcoin::Network;
-//! # use bdk_wallet::signer::SignerOrdering;
-//! # use bdk_wallet::hardwaresigner::HWISigner;
-//! # use bdk_wallet::AddressIndex::New;
-//! # use bdk_wallet::{CreateParams, KeychainKind, SignOptions};
-//! # use hwi::HWIClient;
-//! # use std::sync::Arc;
-//! #
-//! # fn main() -> Result<(), Box<dyn std::error::Error>> {
-//! let mut devices = HWIClient::enumerate()?;
-//! if devices.is_empty() {
-//!     panic!("No devices found!");
-//! }
-//! let first_device = devices.remove(0)?;
-//! let custom_signer = HWISigner::from_device(&first_device, Network::Testnet.into())?;
-//!
-//! # let mut wallet = CreateParams::new("", "", Network::Testnet)?.create_wallet_no_persist()?;
-//! #
-//! // Adding the hardware signer to the BDK wallet
-//! wallet.add_signer(
-//!     KeychainKind::External,
-//!     SignerOrdering(200),
-//!     Arc::new(custom_signer),
-//! );
-//!
-//! # Ok(())
-//! # }
-//! ```
-
-use bitcoin::bip32::Fingerprint;
-use bitcoin::secp256k1::{All, Secp256k1};
-use bitcoin::Psbt;
-
-use hwi::error::Error;
-use hwi::types::{HWIChain, HWIDevice};
-use hwi::HWIClient;
-
-use crate::signer::{SignerCommon, SignerError, SignerId, TransactionSigner};
-
-#[derive(Debug)]
-/// Custom signer for Hardware Wallets
-///
-/// This ignores `sign_options` and leaves the decisions up to the hardware wallet.
-pub struct HWISigner {
-    fingerprint: Fingerprint,
-    client: HWIClient,
-}
-
-impl HWISigner {
-    /// Create a instance from the specified device and chain
-    pub fn from_device(device: &HWIDevice, chain: HWIChain) -> Result<HWISigner, Error> {
-        let client = HWIClient::get_client(device, false, chain)?;
-        Ok(HWISigner {
-            fingerprint: device.fingerprint,
-            client,
-        })
-    }
-}
-
-impl SignerCommon for HWISigner {
-    fn id(&self, _secp: &Secp256k1<All>) -> SignerId {
-        SignerId::Fingerprint(self.fingerprint)
-    }
-}
-
-/// This implementation ignores `sign_options`
-impl TransactionSigner for HWISigner {
-    fn sign_transaction(
-        &self,
-        psbt: &mut Psbt,
-        _sign_options: &crate::SignOptions,
-        _secp: &crate::wallet::utils::SecpCtx,
-    ) -> Result<(), SignerError> {
-        psbt.combine(self.client.sign_tx(psbt)?.psbt)
-            .expect("Failed to combine HW signed psbt with passed PSBT");
-        Ok(())
-    }
-}