Commit graph

14 commits

Author SHA1 Message Date
Antoine Riard
7608483b0f Rename HandleError to LightningError to stress already-processed error 2019-11-12 17:29:20 -05:00
Matt Corallo
8ba3529522 Handle monitor update failure during funding on the fundee side
This carries a surprising amount of complexity despite only being
possible in the case where monitor updating failed during the
processing of funding_generated. Specifically, this requires
handling rebroadcasting funding_locked once we successfully persist
our monitor again.

As an alternative we could never send funding_signed when the
monitor failed to persist, but this approach avoids needless
delays during funding.
2019-07-29 13:45:35 -04:00
Matt Corallo
a1e0ca410e Handle monitor update failures during funding on the funder side 2019-07-29 13:26:22 -04:00
Antoine Riard
a4620afdb5 Pass UserConfig to node creation test utilities
We way want more granularity on the set of user opt-in features at
a given time, specially with new 1.1 spec features
2019-07-22 17:03:28 -04:00
Antoine Riard
d2647e0449 Pass LocalFeatures flag to channel creation test utilities
We may want more granularity on the set of features activated at
a given time, specially with new 1.1 spec features
2019-07-22 17:03:28 -04:00
Matt Corallo
e2a9ed7265 Drop system clock calls for PendingHTLCsForwardable events.
Instead, return a Duration and let the user do the work of waiting.
This is one of only a handful of steps to make us
mostly-syscall-free, at least enough to run in WASM according to
elichai.
2019-07-18 18:15:02 -04:00
Matt Corallo
74588b2519 Send back the actual received amount, not expected on HTLC fails
This resolves an incorrect implementation of the spec and fixes a
major privacy leak.

Fixes GH #289.
2019-01-24 16:55:01 -05:00
Matt Corallo
a138a9af01 Handle monitor update failures in two more places
Best reviewed with -b
2019-01-24 13:16:59 -05:00
Matt Corallo
658e558fd0 Fix responding to RAAs when monitor updating had already failed 2019-01-23 17:51:46 -05:00
Matt Corallo
98f264372e Remove incorrect debug_assert!() from reestablish handling and test 2019-01-23 17:43:45 -05:00
Matt Corallo
3e3b2a3be7 Add a test for the ordering setting in channel_reestablish handling 2019-01-23 17:43:45 -05:00
Matt Corallo
985688852b Fix AwaitingRAA on RAA receipt when monitor updating had failed
This fixes a rather subtle case handling RAAs when we don't
generate a response due to a previous monitor update failure, but
would otherwise send a CS response. We need to still set
AwaitingRemoteRevoke on the channl in question, but previously did
not. Found by chanmon_fail_consistency fuzz test with the failing
test converted and added manually.
2019-01-23 17:43:45 -05:00
Matt Corallo
baa7433504 Fix spelling in do_test_monitor_temporary_update_fail comment 2019-01-23 16:54:53 -05:00
Matt Corallo
aa8ecfed7b Split up monitor-update-failed tests and other functional tests 2019-01-23 16:54:01 -05:00