X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Fevents.rs;h=37a146c3dacb16420f5c3c2138ea3629d7fc6833;hb=4ec4e89eeca8e3454a5bc18d243f10e76401c431;hp=20f1c5b786cf66d4c90fbe0a28c6dca3d351f8dc;hpb=ee17faff904b0be91902b64e2fbcb05f9db28a51;p=rust-lightning diff --git a/lightning/src/util/events.rs b/lightning/src/util/events.rs index 20f1c5b7..37a146c3 100644 --- a/lightning/src/util/events.rs +++ b/lightning/src/util/events.rs @@ -14,28 +14,28 @@ //! future, as well as generate and broadcast funding transactions handle payment preimages and a //! few other things. -use chain::keysinterface::SpendableOutputDescriptor; -use ln::chan_utils::HTLCOutputInCommitment; -use ln::channelmanager::PaymentId; -use ln::channel::FUNDING_CONF_DEADLINE_BLOCKS; -use ln::features::ChannelTypeFeatures; -use ln::msgs; -use ln::msgs::DecodeError; -use ln::{PaymentPreimage, PaymentHash, PaymentSecret}; -use routing::gossip::NetworkUpdate; -use util::ser::{BigSize, FixedLengthReader, Writeable, Writer, MaybeReadable, Readable, VecReadWrapper, VecWriteWrapper}; -use routing::router::{RouteHop, RouteParameters}; +use crate::chain::keysinterface::SpendableOutputDescriptor; +use crate::ln::chan_utils::HTLCOutputInCommitment; +use crate::ln::channelmanager::PaymentId; +use crate::ln::channel::FUNDING_CONF_DEADLINE_BLOCKS; +use crate::ln::features::ChannelTypeFeatures; +use crate::ln::msgs; +use crate::ln::msgs::DecodeError; +use crate::ln::{PaymentPreimage, PaymentHash, PaymentSecret}; +use crate::routing::gossip::NetworkUpdate; +use crate::util::ser::{BigSize, FixedLengthReader, Writeable, Writer, MaybeReadable, Readable, VecReadWrapper, VecWriteWrapper}; +use crate::routing::router::{RouteHop, RouteParameters}; use bitcoin::{PackedLockTime, Transaction, OutPoint}; use bitcoin::blockdata::script::Script; use bitcoin::hashes::Hash; use bitcoin::hashes::sha256::Hash as Sha256; use bitcoin::secp256k1::PublicKey; -use io; -use prelude::*; +use crate::io; +use crate::prelude::*; use core::time::Duration; use core::ops::Deref; -use sync::Arc; +use crate::sync::Arc; /// Some information provided on receipt of payment depends on whether the payment received is a /// spontaneous payment or a "conventional" lightning payment that's paying an invoice. @@ -112,11 +112,19 @@ pub enum ClosureReason { /// The peer disconnected prior to funding completing. In this case the spec mandates that we /// forget the channel entirely - we can attempt again if the peer reconnects. /// + /// This includes cases where we restarted prior to funding completion, including prior to the + /// initial [`ChannelMonitor`] persistence completing. + /// /// In LDK versions prior to 0.0.107 this could also occur if we were unable to connect to the /// peer because of mutual incompatibility between us and our channel counterparty. + /// + /// [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor DisconnectedPeer, - /// Closure generated from `ChannelManager::read` if the ChannelMonitor is newer than - /// the ChannelManager deserialized. + /// Closure generated from `ChannelManager::read` if the [`ChannelMonitor`] is newer than + /// the [`ChannelManager`] deserialized. + /// + /// [`ChannelMonitor`]: crate::chain::channelmonitor::ChannelMonitor + /// [`ChannelManager`]: crate::ln::channelmanager::ChannelManager OutdatedChannelManager } @@ -197,6 +205,7 @@ impl_writeable_tlv_based_enum_upgradable!(HTLCDestination, } ); +#[cfg(anchors)] /// A descriptor used to sign for a commitment transaction's anchor output. #[derive(Clone, Debug)] pub struct AnchorDescriptor { @@ -216,6 +225,7 @@ pub struct AnchorDescriptor { pub outpoint: OutPoint, } +#[cfg(anchors)] /// Represents the different types of transactions, originating from LDK, to be bumped. #[derive(Clone, Debug)] pub enum BumpTransactionEvent {