Remove unnecessary todo
authorValentine Wallace <vwallace@protonmail.com>
Fri, 6 Nov 2020 18:30:15 +0000 (13:30 -0500)
committerValentine Wallace <vwallace@protonmail.com>
Sun, 8 Nov 2020 22:22:20 +0000 (17:22 -0500)
The ChannelMonitor already monitors the chain for counterparties
revealing preimages, and will give the HTLCSources back to the
ChannelManager for claiming. Thus it's unnecessary for the ChannelManager
to monitor these HTLCs itself.

See is_resolving_htlc_output:
- if the counterparty broadcasted and then claimed one of the HTLCs we
  offered them, line 2015 is where the ChannelMonitor gives the ChannelManager
  the HTLC source
- if we broadcasted and they claimed an HTLC we offered them, line 2025 is
  where the ChannelMonitor gives the ChannelManager the HTLC source

lightning/src/ln/channel.rs

index 8782bb3ac405569cd9d029949c939cd38b0041ae..c34fc6a38c28e5ae89a5cd98e094ee7a5348781a 100644 (file)
@@ -4017,12 +4017,6 @@ impl<ChanSigner: ChannelKeys> Channel<ChanSigner> {
                        }
                }
 
-               for _htlc in self.pending_outbound_htlcs.drain(..) {
-                       //TODO: Do something with the remaining HTLCs
-                       //(we need to have the ChannelManager monitor them so we can claim the inbound HTLCs
-                       //which correspond)
-               }
-
                self.channel_state = ChannelState::ShutdownComplete as u32;
                self.update_time_counter += 1;
                self.latest_monitor_update_id += 1;