]> git.bitcoin.ninja Git - rust-lightning/commit
Do not broadcast commitment txn on Permanent mon update failure
authorMatt Corallo <git@bluematt.me>
Tue, 5 Oct 2021 04:32:49 +0000 (04:32 +0000)
committerMatt Corallo <git@bluematt.me>
Thu, 15 Sep 2022 18:18:06 +0000 (18:18 +0000)
commit313810ebdc8d7a90e68db07774cfdf7a653159e0
treec179f8ab876d93c6f9fd7c76f301417629d5b6f4
parent48d21bad7b0b8dc567ed0e4e3f55c62e48fcb422
Do not broadcast commitment txn on Permanent mon update failure

See doc updates for more info on the edge case this prevents, and
there isn't really a strong reason why we would need to broadcast
the latest state immediately. Specifically, in the case of HTLC
claims (the most important reason to ensure we have state on chain
if it cannot be persisted), we will still force-close if there are
HTLCs which need claiming and are going to expire.

Surprisingly, there were no tests which failed as a result of this
change, but a new one has been added.
lightning/src/chain/channelmonitor.rs
lightning/src/chain/mod.rs
lightning/src/ln/chanmon_update_fail_tests.rs
lightning/src/ln/channelmanager.rs