Add CounterpartyForwardingInfo field to channel.
[rust-lightning] / lightning / src / ln / msgs.rs
index 5319742cbe22b9408c481ed17665ce28911ad3b5..004bd3d99d318e2458f41e9c31307614afb93b5f 100644 (file)
@@ -543,7 +543,14 @@ pub struct UnsignedChannelUpdate {
        pub timestamp: u32,
        /// Channel flags
        pub flags: u8,
-       /// The number of blocks to subtract from incoming HTLC cltv_expiry values
+       /// The number of blocks such that if:
+       /// `incoming_htlc.cltv_expiry < outgoing_htlc.cltv_expiry + cltv_expiry_delta`
+       /// then we need to fail the HTLC backwards. When forwarding an HTLC, cltv_expiry_delta determines
+       /// the outgoing HTLC's minimum cltv_expiry value -- so, if an incoming HTLC comes in with a
+       /// cltv_expiry of 100000, and the node we're forwarding to has a cltv_expiry_delta value of 10,
+       /// then we'll check that the outgoing HTLC's cltv_expiry value is at least 100010 before
+       /// forwarding. Note that the HTLC sender is the one who originally sets this value when
+       /// constructing the route.
        pub cltv_expiry_delta: u16,
        /// The minimum HTLC size incoming to sender, in milli-satoshi
        pub htlc_minimum_msat: u64,
@@ -752,7 +759,7 @@ pub trait ChannelMessageHandler : MessageSendEventsProvider + Send + Sync {
 
        // Channl close:
        /// Handle an incoming shutdown message from the given peer.
-       fn handle_shutdown(&self, their_node_id: &PublicKey, msg: &Shutdown);
+       fn handle_shutdown(&self, their_node_id: &PublicKey, their_features: &InitFeatures, msg: &Shutdown);
        /// Handle an incoming closing_signed message from the given peer.
        fn handle_closing_signed(&self, their_node_id: &PublicKey, msg: &ClosingSigned);