Merge pull request #2384 from jkczyz/2023-06-message-router
[rust-lightning] / lightning / src / util / config.rs
index 1faf595ac8fabc7440729f24c14bc6e2cc34b6e7..5c8d5b6c554fc11ad4f89500a69f8f600812ad66 100644 (file)
@@ -149,11 +149,18 @@ pub struct ChannelHandshakeConfig {
        /// Maximum value: 1,000,000, any values larger than 1 Million will be treated as 1 Million (or 100%)
        ///                instead, although channel negotiations will fail in that case.
        pub their_channel_reserve_proportional_millionths: u32,
-       #[cfg(anchors)]
-       /// If set, we attempt to negotiate the `anchors_zero_fee_htlc_tx`option for outbound channels.
+       /// If set, we attempt to negotiate the `anchors_zero_fee_htlc_tx`option for all future
+       /// channels. This feature requires having a reserve of onchain funds readily available to bump
+       /// transactions in the event of a channel force close to avoid the possibility of losing funds.
+       ///
+       /// Note that if you wish accept inbound channels with anchor outputs, you must enable
+       /// [`UserConfig::manually_accept_inbound_channels`] and manually accept them with
+       /// [`ChannelManager::accept_inbound_channel`]. This is done to give you the chance to check
+       /// whether your reserve of onchain funds is enough to cover the fees for all existing and new
+       /// channels featuring anchor outputs in the event of a force close.
        ///
        /// If this option is set, channels may be created that will not be readable by LDK versions
-       /// prior to 0.0.114, causing [`ChannelManager`]'s read method to return a
+       /// prior to 0.0.116, causing [`ChannelManager`]'s read method to return a
        /// [`DecodeError::InvalidValue`].
        ///
        /// Note that setting this to true does *not* prevent us from opening channels with
@@ -167,6 +174,7 @@ pub struct ChannelHandshakeConfig {
        /// Default value: false. This value is likely to change to true in the future.
        ///
        /// [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
+       /// [`ChannelManager::accept_inbound_channel`]: crate::ln::channelmanager::ChannelManager::accept_inbound_channel
        /// [`DecodeError::InvalidValue`]: crate::ln::msgs::DecodeError::InvalidValue
        /// [`SIGHASH_SINGLE + update_fee Considered Harmful`]: https://lists.linuxfoundation.org/pipermail/lightning-dev/2020-September/002796.html
        pub negotiate_anchors_zero_fee_htlc_tx: bool,
@@ -196,7 +204,6 @@ impl Default for ChannelHandshakeConfig {
                        announced_channel: false,
                        commit_upfront_shutdown_pubkey: true,
                        their_channel_reserve_proportional_millionths: 10_000,
-                       #[cfg(anchors)]
                        negotiate_anchors_zero_fee_htlc_tx: false,
                        our_max_accepted_htlcs: 50,
                }