Skip to content

Commit d459c46

Browse files
committed
Add Wallet::sign_tx
Sign a transaction with the node wallet.
1 parent fa44454 commit d459c46

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

src/wallet.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ use crate::logger::{log_error, log_info, log_trace, Logger};
22

33
use crate::Error;
44

5+
use bitcoin::psbt::Psbt;
56
use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
67

78
use lightning::ln::msgs::{DecodeError, UnsignedGossipMessage};
@@ -115,6 +116,14 @@ where
115116
Ok(self.inner.lock().unwrap().is_mine(script)?)
116117
}
117118

119+
pub(crate) fn sign_tx(&self, psbt: &Psbt, options: Option<SignOptions>) -> Result<Psbt, Error> {
120+
let wallet = self.inner.lock().unwrap();
121+
let mut psbt = psbt.clone();
122+
let options = options.unwrap_or_default();
123+
wallet.sign(&mut psbt, options)?;
124+
Ok(psbt)
125+
}
126+
118127
pub(crate) fn create_funding_transaction(
119128
&self, output_script: ScriptBuf, value_sats: u64, confirmation_target: ConfirmationTarget,
120129
locktime: LockTime,

0 commit comments

Comments
 (0)