Skip to content

Commit bd46d1f

Browse files
committed
f Account for async'ified ChangeDestinationSource
1 parent 5c39d13 commit bd46d1f

File tree

4 files changed

+16
-9
lines changed

4 files changed

+16
-9
lines changed

src/builder.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ use lightning::routing::router::DefaultRouter;
4444
use lightning::routing::scoring::{
4545
ProbabilisticScorer, ProbabilisticScoringDecayParameters, ProbabilisticScoringFeeParameters,
4646
};
47-
use lightning::sign::EntropySource;
47+
use lightning::sign::{ChangeDestinationSourceSyncWrapper, EntropySource};
4848

4949
use lightning::util::persist::{
5050
read_channel_monitors, CHANNEL_MANAGER_PERSISTENCE_KEY,
@@ -1409,11 +1409,14 @@ fn build_with_store_internal(
14091409
let connection_manager =
14101410
Arc::new(ConnectionManager::new(Arc::clone(&peer_manager), Arc::clone(&logger)));
14111411

1412+
let change_destination_source =
1413+
Arc::new(ChangeDestinationSourceSyncWrapper::new(Arc::clone(&keys_manager)));
14121414
let output_sweeper = match io::utils::read_output_sweeper(
14131415
Arc::clone(&tx_broadcaster),
14141416
Arc::clone(&fee_estimator),
14151417
Arc::clone(&chain_source),
14161418
Arc::clone(&keys_manager),
1419+
Arc::clone(&change_destination_source),
14171420
Arc::clone(&kv_store),
14181421
Arc::clone(&logger),
14191422
) {
@@ -1426,7 +1429,7 @@ fn build_with_store_internal(
14261429
Arc::clone(&fee_estimator),
14271430
Some(Arc::clone(&chain_source)),
14281431
Arc::clone(&keys_manager),
1429-
Arc::clone(&keys_manager),
1432+
change_destination_source,
14301433
Arc::clone(&kv_store),
14311434
Arc::clone(&logger),
14321435
))

src/io/utils.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ use crate::io::{
1616
use crate::logger::{log_error, LdkLogger, Logger};
1717
use crate::peer_store::PeerStore;
1818
use crate::sweep::DeprecatedSpendableOutputInfo;
19-
use crate::types::{Broadcaster, DynStore, KeysManager, Sweeper};
19+
use crate::types::{Broadcaster, ChangeDestinationSource, DynStore, KeysManager, Sweeper};
2020
use crate::wallet::ser::{ChangeSetDeserWrapper, ChangeSetSerWrapper};
2121
use crate::{Error, EventQueue, NodeMetrics, PaymentDetails};
2222

@@ -235,7 +235,8 @@ where
235235
/// Read `OutputSweeper` state from the store.
236236
pub(crate) fn read_output_sweeper(
237237
broadcaster: Arc<Broadcaster>, fee_estimator: Arc<OnchainFeeEstimator>,
238-
chain_data_source: Arc<ChainSource>, keys_manager: Arc<KeysManager>, kv_store: Arc<DynStore>,
238+
chain_data_source: Arc<ChainSource>, keys_manager: Arc<KeysManager>,
239+
change_destination_source: Arc<ChangeDestinationSource>, kv_store: Arc<DynStore>,
239240
logger: Arc<Logger>,
240241
) -> Result<Sweeper, std::io::Error> {
241242
let mut reader = Cursor::new(kv_store.read(
@@ -247,8 +248,8 @@ pub(crate) fn read_output_sweeper(
247248
broadcaster,
248249
fee_estimator,
249250
Some(chain_data_source),
250-
Arc::clone(&keys_manager),
251251
keys_manager,
252+
change_destination_source,
252253
kv_store,
253254
logger.clone(),
254255
);

src/types.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ use lightning::ln::types::ChannelId;
2222
use lightning::routing::gossip;
2323
use lightning::routing::router::DefaultRouter;
2424
use lightning::routing::scoring::{ProbabilisticScorer, ProbabilisticScoringFeeParameters};
25+
use lightning::sign::ChangeDestinationSourceSyncWrapper;
2526
use lightning::sign::InMemorySigner;
2627
use lightning::util::persist::KVStore;
2728
use lightning::util::ser::{Readable, Writeable, Writer};
@@ -125,9 +126,11 @@ pub(crate) type MessageRouter = lightning::onion_message::messenger::DefaultMess
125126
Arc<KeysManager>,
126127
>;
127128

129+
pub(crate) type ChangeDestinationSource = ChangeDestinationSourceSyncWrapper<Arc<KeysManager>>;
130+
128131
pub(crate) type Sweeper = OutputSweeper<
129132
Arc<Broadcaster>,
130-
Arc<KeysManager>,
133+
Arc<ChangeDestinationSource>,
131134
Arc<OnchainFeeEstimator>,
132135
Arc<ChainSource>,
133136
Arc<DynStore>,

src/wallet/mod.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ use lightning::ln::inbound_payment::ExpandedKey;
2525
use lightning::ln::msgs::UnsignedGossipMessage;
2626
use lightning::ln::script::ShutdownScript;
2727
use lightning::sign::{
28-
ChangeDestinationSource, EntropySource, InMemorySigner, KeysManager, NodeSigner, OutputSpender,
29-
Recipient, SignerProvider, SpendableOutputDescriptor,
28+
ChangeDestinationSourceSync, EntropySource, InMemorySigner, KeysManager, NodeSigner,
29+
OutputSpender, Recipient, SignerProvider, SpendableOutputDescriptor,
3030
};
3131

3232
use lightning::util::message_signing;
@@ -913,7 +913,7 @@ where
913913
}
914914
}
915915

916-
impl<B: Deref, E: Deref, L: Deref> ChangeDestinationSource for WalletKeysManager<B, E, L>
916+
impl<B: Deref, E: Deref, L: Deref> ChangeDestinationSourceSync for WalletKeysManager<B, E, L>
917917
where
918918
B::Target: BroadcasterInterface,
919919
E::Target: FeeEstimator,

0 commit comments

Comments
 (0)