mirror of
https://github.com/aljazceru/lightning.git
synced 2025-12-21 16:14:23 +01:00
Feerate changes are asymmetric, as they can only be sent by the funder. For FUNDER, the remote feerate is set when upon send of commitment_signed, and the local feerate is set on receipt of revoke_and_ack. For non-funder, the local feerate is set on receipt of commitment_signed, and the remote feerate set on send of revoke_and_ack. In our code, these two happen together. channeld gets this right, but lightningd ignored the funder/fundee distinction, and as a result, receipt of a commitment_signed by the funder altered fees in the database. If there was a reconnection event or restart, then these (incorrect) values would be used, causing us to complain about a 'Bad commit_sig signature' and close the channel. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>