Ignore unknown channel flags as required in BOLT 2
[rust-lightning] / src / ln / channel.rs
index e2749ffffb94ba150c7a5c6947b136cef4281f35..b2164696f25897c48536ec64692730a1a1eb1d38 100644 (file)
@@ -360,7 +360,8 @@ impl Channel {
 
        /// Guaranteed to return a value no larger than channel_value_satoshis
        fn get_our_channel_reserve_satoshis(channel_value_satoshis: u64) -> u64 {
-               cmp::min(channel_value_satoshis, 1000) //TODO
+               let (q, _) = channel_value_satoshis.overflowing_div(100);
+               cmp::min(channel_value_satoshis, cmp::max(q, 1000)) //TODO
        }
 
        fn derive_our_dust_limit_satoshis(at_open_background_feerate: u64) -> u64 {
@@ -517,9 +518,6 @@ impl Channel {
                if msg.max_accepted_htlcs > 483 {
                        return_error_message!("max_accpted_htlcs > 483");
                }
-               if (msg.channel_flags & 254) != 0 {
-                       return Err(HandleError{err: "Unknown channel flags", action: Some(msgs::ErrorAction::IgnoreError) });
-               }
 
                // Convert things into internal flags and prep our state: