rust-lightning
5 years agoAvoid needless on-chain channel failing for timing-out HTLCs 2018-10-157-changes
Matt Corallo [Tue, 16 Oct 2018 15:40:21 +0000 (11:40 -0400)]
Avoid needless on-chain channel failing for timing-out HTLCs

See new comments in code for more details

5 years agoOnion error handling in the origin node
Yuntai Kyong [Sun, 14 Oct 2018 13:35:26 +0000 (22:35 +0900)]
Onion error handling in the origin node

Add PaymentData to HTLCSource to reconstruct incoming_htlc_msat and cltv for each
node when an onion failure message is returned. These values are used to
check whether an updated chan_update is valid.

Refactor onion failure code and more error cases are handled

5 years agoSome changes in comments and error messages.
Yuntai Kyong [Sun, 14 Oct 2018 13:34:45 +0000 (22:34 +0900)]
Some changes in comments and error messages.

5 years agoAdd channel_update_timestamp to RouteHop
Yuntai Kyong [Sun, 14 Oct 2018 13:32:58 +0000 (22:32 +0900)]
Add channel_update_timestamp to RouteHop

to compare it agains the timestamp of channel_update coming with onion
failure message

5 years agoError handling in decoding onion
Yuntai Kyong [Sun, 14 Oct 2018 13:30:21 +0000 (22:30 +0900)]
Error handling in decoding onion

5 years agoAdd is_permanent field to ChannelClosed message and add NodeFailure
Yuntai Kyong [Sun, 14 Oct 2018 13:11:21 +0000 (22:11 +0900)]
Add is_permanent field to ChannelClosed message and add NodeFailure
message

5 years agoMerge pull request #206 from TheBlueMatt/2018-10-189-rebase
Matt Corallo [Sat, 6 Oct 2018 03:49:26 +0000 (20:49 -0700)]
Merge pull request #206 from TheBlueMatt/2018-10-189-rebase

#189 rebased

5 years agoFurther simplify get_{inbound,outbound}_pending_htlc_stats 2018-10-189-rebase
Matt Corallo [Sat, 6 Oct 2018 02:55:55 +0000 (11:55 +0900)]
Further simplify get_{inbound,outbound}_pending_htlc_stats

5 years agoSplit get_pending_htlc_stats
Yuntai Kyong [Wed, 3 Oct 2018 00:19:22 +0000 (09:19 +0900)]
Split get_pending_htlc_stats

to get_inbound_pending_htlc_stats and get_outbound_pending_htlc_stats

5 years agoCheck that reserves are met or progress is made on commitment tx gen
Matt Corallo [Mon, 1 Oct 2018 21:48:22 +0000 (17:48 -0400)]
Check that reserves are met or progress is made on commitment tx gen

5 years agoAdd test for channel_reserve with holding cell HTLCs counted
Yuntai Kyong [Sat, 6 Oct 2018 03:05:35 +0000 (12:05 +0900)]
Add test for channel_reserve with holding cell HTLCs counted

5 years agoAdd simple test for channel_reserve/max_htlc_value_in_flight_msat
Yuntai Kyong [Mon, 1 Oct 2018 09:13:37 +0000 (18:13 +0900)]
Add simple test for channel_reserve/max_htlc_value_in_flight_msat

5 years agoBreak up test channel creation to specify values explicitly
Yuntai Kyong [Mon, 1 Oct 2018 09:13:05 +0000 (18:13 +0900)]
Break up test channel creation to specify values explicitly

5 years agoAdd a ChannelValueStat getter to simplify tests
Yuntai Kyong [Mon, 1 Oct 2018 09:11:33 +0000 (18:11 +0900)]
Add a ChannelValueStat getter to simplify tests

5 years agoDocument channel reserve behavior a bit better
Yuntai Kyong [Tue, 25 Sep 2018 14:17:11 +0000 (23:17 +0900)]
Document channel reserve behavior a bit better

5 years agoFix checking of channel_reserve values
Yuntai Kyong [Wed, 19 Sep 2018 11:48:03 +0000 (20:48 +0900)]
Fix checking of channel_reserve values

5 years agoMerge pull request #196 from yuntai/shutdown-apify
Matt Corallo [Sat, 6 Oct 2018 01:32:24 +0000 (18:32 -0700)]
Merge pull request #196 from yuntai/shutdown-apify

Raise APIError from close_channel

5 years agoadd a ChannelUnavailable error
Yuntai Kyong [Thu, 27 Sep 2018 03:58:05 +0000 (12:58 +0900)]
add a ChannelUnavailable error

5 years agoraise APIError from close_channel
Yuntai Kyong [Tue, 25 Sep 2018 15:32:30 +0000 (00:32 +0900)]
raise APIError from close_channel

5 years agoMerge pull request #201 from TheBlueMatt/2018-09-channelerror-1
Matt Corallo [Mon, 1 Oct 2018 14:32:00 +0000 (10:32 -0400)]
Merge pull request #201 from TheBlueMatt/2018-09-channelerror-1

Introduce a Channel-specific Err type and return it in a few places

5 years agoUse new ChannelError in get_channel_announcement 2018-09-channelerror-1
Matt Corallo [Mon, 1 Oct 2018 00:03:35 +0000 (20:03 -0400)]
Use new ChannelError in get_channel_announcement

5 years agoUse new ChannelError in channel_reestablish handling
Matt Corallo [Sun, 30 Sep 2018 23:51:15 +0000 (19:51 -0400)]
Use new ChannelError in channel_reestablish handling

5 years agoUse new ChannelError in HTLC-removal msgs, filling out more handling
Matt Corallo [Sun, 30 Sep 2018 23:33:03 +0000 (19:33 -0400)]
Use new ChannelError in HTLC-removal msgs, filling out more handling

5 years agoUse new ChannelError in funding_locked, filling out more handling
Matt Corallo [Sun, 30 Sep 2018 23:11:01 +0000 (19:11 -0400)]
Use new ChannelError in funding_locked, filling out more handling

5 years agoUse new ChannelError type in accept_channel
Matt Corallo [Sun, 30 Sep 2018 23:08:24 +0000 (19:08 -0400)]
Use new ChannelError type in accept_channel

5 years agoIntroduce a Channel-specific Err type and return it in a few places
Matt Corallo [Sun, 30 Sep 2018 22:19:59 +0000 (18:19 -0400)]
Introduce a Channel-specific Err type and return it in a few places

This is way simpler than writing out the whole ErrorAction mess and
we can just convert it as appropriate in ChannelManager.

5 years agoMerge pull request #199 from TheBlueMatt/2018-09-184-fixed-monitor
Matt Corallo [Sun, 30 Sep 2018 01:09:50 +0000 (21:09 -0400)]
Merge pull request #199 from TheBlueMatt/2018-09-184-fixed-monitor

Fix simple to_local revoked output claim and rebase #184

5 years agoMerge pull request #200 from TheBlueMatt/2018-09-187-tweaks
Matt Corallo [Sun, 30 Sep 2018 00:43:14 +0000 (20:43 -0400)]
Merge pull request #200 from TheBlueMatt/2018-09-187-tweaks

#187 rebased + squashed

5 years agoMacro-out checking a tx validly spends another (and add one more) 2018-09-184-fixed-monitor
Matt Corallo [Sun, 30 Sep 2018 00:24:30 +0000 (20:24 -0400)]
Macro-out checking a tx validly spends another (and add one more)

5 years agoTest htlc outputs single tx claim due to timeout case
Antoine Riard [Sat, 29 Sep 2018 18:51:45 +0000 (14:51 -0400)]
Test htlc outputs single tx claim due to timeout case

5 years agoTest htlc outputs shared tx claim case
Antoine Riard [Thu, 20 Sep 2018 00:52:02 +0000 (00:52 +0000)]
Test htlc outputs shared tx claim case

5 years agoFix and test simple remote-revoked-commitment-output claiming
Matt Corallo [Sat, 29 Sep 2018 18:26:12 +0000 (14:26 -0400)]
Fix and test simple remote-revoked-commitment-output claiming

5 years agoAdd 2-inbound-in-flight update_fee test (that we wouldn't generate) 2018-09-187-tweaks
Matt Corallo [Thu, 27 Sep 2018 21:46:08 +0000 (17:46 -0400)]
Add 2-inbound-in-flight update_fee test (that we wouldn't generate)

5 years agoAnnotate test_update_fee to make events more clear
Matt Corallo [Thu, 27 Sep 2018 21:45:04 +0000 (17:45 -0400)]
Annotate test_update_fee to make events more clear

5 years agoAdd test for out-of-order update_fee commitment_signed/RAA
Matt Corallo [Thu, 27 Sep 2018 01:38:48 +0000 (21:38 -0400)]
Add test for out-of-order update_fee commitment_signed/RAA

5 years agoAdd test for send_commitment pending non-committed feerate updates
Matt Corallo [Thu, 27 Sep 2018 00:04:56 +0000 (20:04 -0400)]
Add test for send_commitment pending non-committed feerate updates

5 years agoNote that update_fee is likely not gonna be our final API
Matt Corallo [Fri, 28 Sep 2018 23:06:41 +0000 (19:06 -0400)]
Note that update_fee is likely not gonna be our final API

5 years agoAdd update_fee tests
Yuntai Kyong [Wed, 26 Sep 2018 23:56:13 +0000 (19:56 -0400)]
Add update_fee tests

5 years agoExpose updating fee on an individual channel
Yuntai Kyong [Wed, 26 Sep 2018 23:55:47 +0000 (19:55 -0400)]
Expose updating fee on an individual channel

5 years agoImplement update_fee handling
Yuntai Kyong [Wed, 26 Sep 2018 23:54:28 +0000 (19:54 -0400)]
Implement update_fee handling

5 years agoMacro out one-monitor-added check in network tests (thanks @yuntai)
Matt Corallo [Wed, 26 Sep 2018 19:28:20 +0000 (15:28 -0400)]
Macro out one-monitor-added check in network tests (thanks @yuntai)

Originally suggested by Yuntai Kyong <yuntai.kyong@gmail.com> in
some new tests.

5 years agoMacro out getting payment_preimage/hash in network tests
Matt Corallo [Wed, 26 Sep 2018 23:50:39 +0000 (19:50 -0400)]
Macro out getting payment_preimage/hash in network tests

5 years agoMerge pull request #197 from TheBlueMatt/master
Matt Corallo [Sat, 29 Sep 2018 18:27:01 +0000 (14:27 -0400)]
Merge pull request #197 from TheBlueMatt/master

Fix fuzztarget failures

5 years agoAvoid double-panic in ChannelManager when tests fail
Matt Corallo [Thu, 27 Sep 2018 21:36:10 +0000 (17:36 -0400)]
Avoid double-panic in ChannelManager when tests fail

5 years agoHandle temporary_channel_id collision in fuzztarget mode
Matt Corallo [Wed, 26 Sep 2018 15:02:38 +0000 (11:02 -0400)]
Handle temporary_channel_id collision in fuzztarget mode

5 years agoNarrow check_spend_remote_htlc input/output count check.
Matt Corallo [Wed, 26 Sep 2018 14:48:30 +0000 (10:48 -0400)]
Narrow check_spend_remote_htlc input/output count check.

This fixes a crash found by fuzztester where a 0-output tx causes a
[] panic (though this shouldn't happen in the real-world as
0-output txn should never be able to be mined).

5 years agoMerge pull request #193 from SWvheerden/Bolt2-specs-errors-of-closing-messages-
Matt Corallo [Fri, 21 Sep 2018 08:59:37 +0000 (04:59 -0400)]
Merge pull request #193 from SWvheerden/Bolt2-specs-errors-of-closing-messages-

Added test for testing sciptpubkey of closing message per bolt 2 spec

5 years agoMerge pull request #194 from TheBlueMatt/2018-09-doc-cleanup
Matt Corallo [Fri, 21 Sep 2018 08:42:57 +0000 (04:42 -0400)]
Merge pull request #194 from TheBlueMatt/2018-09-doc-cleanup

Make docs look nicer by adding explicit spacing

5 years agoAdded test for testing sciptpubkey of closing message per bolt 2 spec
Schalk van Heerden [Thu, 20 Sep 2018 08:16:20 +0000 (10:16 +0200)]
Added test for testing sciptpubkey of closing message per bolt 2 spec

5 years agoMake docs look nicer by adding explicit spacing 2018-09-doc-cleanup
Matt Corallo [Thu, 20 Sep 2018 16:57:47 +0000 (12:57 -0400)]
Make docs look nicer by adding explicit spacing

5 years agoMerge pull request #191 from TheBlueMatt/2018-09-chanmon-ser-framework
Matt Corallo [Thu, 20 Sep 2018 16:14:59 +0000 (12:14 -0400)]
Merge pull request #191 from TheBlueMatt/2018-09-chanmon-ser-framework

Migrate ChannelMonitor writing/reading to new serialization framework

5 years agoBump version to 0.0.5 to get new docs out 2018-09-chanmon-ser-framework
Matt Corallo [Thu, 20 Sep 2018 14:55:34 +0000 (10:55 -0400)]
Bump version to 0.0.5 to get new docs out

5 years agoSwitch to -O1 in dev as we have long-running tests and O1 is cheap
Matt Corallo [Tue, 18 Sep 2018 20:22:53 +0000 (16:22 -0400)]
Switch to -O1 in dev as we have long-running tests and O1 is cheap

5 years agoMigrate ChannelMonitor serialization to new ser framework(ish)
Matt Corallo [Wed, 19 Sep 2018 17:31:14 +0000 (13:31 -0400)]
Migrate ChannelMonitor serialization to new ser framework(ish)

Sadly we can't straight up use the new serialization framework as
we have a few different serialization variants, but that's OK, it
looks identical and is just missing the Writeable impl

5 years agoMove ChannelMonitor deserialization to new ser framework
Matt Corallo [Wed, 19 Sep 2018 17:17:16 +0000 (13:17 -0400)]
Move ChannelMonitor deserialization to new ser framework

5 years agoSimplify DecodeError enum by removing some useless distinctions
Matt Corallo [Wed, 19 Sep 2018 17:06:35 +0000 (13:06 -0400)]
Simplify DecodeError enum by removing some useless distinctions

5 years agoMerge pull request #192 from TheBlueMatt/2018-09-docs-docs-docs
Matt Corallo [Thu, 20 Sep 2018 14:44:23 +0000 (10:44 -0400)]
Merge pull request #192 from TheBlueMatt/2018-09-docs-docs-docs

Add module and all-pub-things docs and deny missing docs

5 years agoAdd module and all-pub-things docs and deny missing docs 2018-09-docs-docs-docs
Matt Corallo [Wed, 19 Sep 2018 21:39:43 +0000 (17:39 -0400)]
Add module and all-pub-things docs and deny missing docs

5 years agoDocument ConfirmationTarget a little bit (closes #101)
Matt Corallo [Wed, 19 Sep 2018 19:01:26 +0000 (15:01 -0400)]
Document ConfirmationTarget a little bit (closes #101)

5 years agoDocument all the fields in Errors
Matt Corallo [Wed, 19 Sep 2018 17:55:14 +0000 (13:55 -0400)]
Document all the fields in Errors

5 years agoMake message fields pub(crate) and hide a few internal fns
Matt Corallo [Wed, 19 Sep 2018 21:37:51 +0000 (17:37 -0400)]
Make message fields pub(crate) and hide a few internal fns

5 years agoLog peer features in peer_handler (and check for all req bits)
Matt Corallo [Wed, 19 Sep 2018 21:33:05 +0000 (17:33 -0400)]
Log peer features in peer_handler (and check for all req bits)

5 years agoRemove fuzz channel_target.
Matt Corallo [Thu, 20 Sep 2018 02:47:07 +0000 (22:47 -0400)]
Remove fuzz channel_target.

It has bitrotted a lot and doesn't really make sense given all the
precondition enforcement that is in channelmanager, sadly.

5 years agoMerge pull request #186 from TheBlueMatt/2018-09-ser-rework-2
Matt Corallo [Tue, 18 Sep 2018 20:14:49 +0000 (16:14 -0400)]
Merge pull request #186 from TheBlueMatt/2018-09-ser-rework-2

Drop old serialization framework

5 years agoMerge pull request #185 from TheBlueMatt/2018-09-ser-rework
Matt Corallo [Tue, 18 Sep 2018 20:14:40 +0000 (16:14 -0400)]
Merge pull request #185 from TheBlueMatt/2018-09-ser-rework

Serialization Framework Tweaks

5 years agoDrop MsgEncodable in favor of default fns on Writeable 2018-09-ser-rework-2
Matt Corallo [Sun, 16 Sep 2018 18:03:36 +0000 (14:03 -0400)]
Drop MsgEncodable in favor of default fns on Writeable

5 years agoFix peer_handler message serialization 2018-09-ser-rework
Matt Corallo [Sun, 16 Sep 2018 17:16:43 +0000 (13:16 -0400)]
Fix peer_handler message serialization

Fixes a bug introduced in 3e89106163b941aa4dc4ff92bdb484b7bbcf50c4
where messages were being encoded with their size instead of their
type.
Also utilizes the new size_hinting in peer_handler

5 years agoMake Writeable::write typed instead of Writeable
Matt Corallo [Sun, 16 Sep 2018 18:02:58 +0000 (14:02 -0400)]
Make Writeable::write typed instead of Writeable

This lets us add some untyped default functions to the trait

5 years agoUtilize Writer size hinting in message fuzz targets and check them
Matt Corallo [Fri, 14 Sep 2018 22:05:13 +0000 (18:05 -0400)]
Utilize Writer size hinting in message fuzz targets and check them

5 years agoStop checking size > 64KB in serialization
Matt Corallo [Sun, 16 Sep 2018 17:50:42 +0000 (13:50 -0400)]
Stop checking size > 64KB in serialization

This removes a bunch of potentially new error handling in writers
and the checks were kinda useless anyway - in normal operation we
unwrap()ed anyway, and we're gonna want to use the serializtion
framework for ChannelMonitor/ChannelManager serialization, which
may generate things larger than 64KB anyway.

5 years agoAdd size_hint in ser and call size_hint in all message serializers
Matt Corallo [Fri, 14 Sep 2018 21:54:59 +0000 (17:54 -0400)]
Add size_hint in ser and call size_hint in all message serializers

5 years agoRemove MsgDecodable and most MsgEncodable impls
Matt Corallo [Sun, 16 Sep 2018 17:39:39 +0000 (13:39 -0400)]
Remove MsgDecodable and most MsgEncodable impls

5 years agoSplit out Vec<u8> and Vec<Signature> ser impls cause there's 2
Matt Corallo [Sun, 16 Sep 2018 02:06:13 +0000 (22:06 -0400)]
Split out Vec<u8> and Vec<Signature> ser impls cause there's 2

Should resolve any performance issues with Vec<u8> serialization.

5 years agoRemove uses of MsgDecodable from ChannelManager
Matt Corallo [Sun, 16 Sep 2018 17:37:35 +0000 (13:37 -0400)]
Remove uses of MsgDecodable from ChannelManager

5 years agoSimplify serialization a bit by removing the useless newtypes
Matt Corallo [Fri, 14 Sep 2018 21:50:48 +0000 (17:50 -0400)]
Simplify serialization a bit by removing the useless newtypes

5 years agoExpose (de)serialziers as we'll need them and I don't like warnings
Matt Corallo [Fri, 14 Sep 2018 20:43:47 +0000 (16:43 -0400)]
Expose (de)serialziers as we'll need them and I don't like warnings

5 years agoMerge pull request #178 from TheBlueMatt/2018-09-channel_reestablish
Matt Corallo [Sat, 15 Sep 2018 15:36:59 +0000 (11:36 -0400)]
Merge pull request #178 from TheBlueMatt/2018-09-channel_reestablish

Handle peer disconnect tracking/channel_reestablish

5 years agoConstify 2**48-1 and add some additional comments in Channel 2018-09-channel_reestablish
Matt Corallo [Fri, 14 Sep 2018 19:54:06 +0000 (15:54 -0400)]
Constify 2**48-1 and add some additional comments in Channel

5 years agoAdd a simple channel_reestablish test
Matt Corallo [Thu, 13 Sep 2018 22:19:27 +0000 (18:19 -0400)]
Add a simple channel_reestablish test

5 years agoTrack peer-disconnection in Channel and handle channel_reestablish
Matt Corallo [Sat, 8 Sep 2018 20:02:46 +0000 (16:02 -0400)]
Track peer-disconnection in Channel and handle channel_reestablish

5 years agoAdd a Disconnected ChannelState and check/handle it everywhere
Matt Corallo [Sat, 8 Sep 2018 20:01:29 +0000 (16:01 -0400)]
Add a Disconnected ChannelState and check/handle it everywhere

Setting/removing it comes next

5 years agoAdd channel_reestablish + peer_connected events to channel handler
Matt Corallo [Fri, 7 Sep 2018 19:51:40 +0000 (15:51 -0400)]
Add channel_reestablish + peer_connected events to channel handler

5 years agoClarify update_fail/fulfill_htlc holding cell allowed Errs
Matt Corallo [Tue, 11 Sep 2018 18:27:17 +0000 (14:27 -0400)]
Clarify update_fail/fulfill_htlc holding cell allowed Errs

Specifically, there really should be no Errs, but in case there is
some case where duplicate HTLC removes are possible, return
IgnoreError and debug_assert to see if fuzzing can find them.

5 years agoDrop channels on disconnection if we haven't funded them yet
Matt Corallo [Fri, 7 Sep 2018 19:11:52 +0000 (15:11 -0400)]
Drop channels on disconnection if we haven't funded them yet

5 years agoRemove/fail uncommitted HTLCs upon peer disconnection
Matt Corallo [Wed, 5 Sep 2018 22:32:55 +0000 (18:32 -0400)]
Remove/fail uncommitted HTLCs upon peer disconnection

5 years agoMerge pull request #179 from TheBlueMatt/2018-09-pre-178-cleanups
Matt Corallo [Sat, 15 Sep 2018 14:50:57 +0000 (10:50 -0400)]
Merge pull request #179 from TheBlueMatt/2018-09-pre-178-cleanups

Pre-reconnect ChannelManager test cleanups

5 years agoMerge pull request #183 from yuntai/201809-unwrap-getopenchannel
Matt Corallo [Sat, 15 Sep 2018 14:48:54 +0000 (10:48 -0400)]
Merge pull request #183 from yuntai/201809-unwrap-getopenchannel

unwrap channel.get_open_channel

5 years agounwrap channel.get_open_channel
Yuntai Kyong [Fri, 14 Sep 2018 22:26:03 +0000 (07:26 +0900)]
unwrap channel.get_open_channel

5 years agoSplit claim and fail payment functions to be able to skip one hop 2018-09-pre-178-cleanups
Matt Corallo [Thu, 13 Sep 2018 22:17:56 +0000 (18:17 -0400)]
Split claim and fail payment functions to be able to skip one hop

5 years agoMove all-events check into framework instead of per-test
Matt Corallo [Thu, 13 Sep 2018 22:04:46 +0000 (18:04 -0400)]
Move all-events check into framework instead of per-test

5 years agoSplit up send_commitment into a const and non-const version
Matt Corallo [Sat, 8 Sep 2018 20:00:30 +0000 (16:00 -0400)]
Split up send_commitment into a const and non-const version

5 years agoRemove unused import and uneccessary mut
Matt Corallo [Fri, 14 Sep 2018 20:24:08 +0000 (16:24 -0400)]
Remove unused import and uneccessary mut

5 years agoMerge pull request #180 from TheBlueMatt/2018-09-htlc-tx-unwrap-fix
Matt Corallo [Fri, 14 Sep 2018 20:19:38 +0000 (16:19 -0400)]
Merge pull request #180 from TheBlueMatt/2018-09-htlc-tx-unwrap-fix

Ignore HTLC txn we dont know how to claim instead of unwrap()ing and Do not fail-backwards LocalAnnounced HTLCs upon force-close.

5 years agoTweak + extend full_stack_target sample to incl HTLC tx broadcasts 2018-09-htlc-tx-unwrap-fix
Matt Corallo [Fri, 14 Sep 2018 17:47:46 +0000 (13:47 -0400)]
Tweak + extend full_stack_target sample to incl HTLC tx broadcasts

5 years agoTest that we do not fail-backwards HTLCs that the remote on-chained
Matt Corallo [Fri, 14 Sep 2018 19:19:03 +0000 (15:19 -0400)]
Test that we do not fail-backwards HTLCs that the remote on-chained

5 years agoMake the commitment signed dance a macro in ChannelManager tests
Matt Corallo [Thu, 13 Sep 2018 21:25:59 +0000 (17:25 -0400)]
Make the commitment signed dance a macro in ChannelManager tests

5 years agoDo not fail-backwards LocalAnnounced HTLCs upon force-close.
Matt Corallo [Fri, 14 Sep 2018 17:35:56 +0000 (13:35 -0400)]
Do not fail-backwards LocalAnnounced HTLCs upon force-close.

This is completely unsafe as we have provided the remote side with
a commitment_signed which they can broadcast, including the HTLC
transaction, and then could claim it on-chain after we've failed it
backwards!

5 years agoIgnore HTLC txn we dont know how to claim instead of unwrap()ing
Matt Corallo [Fri, 14 Sep 2018 03:54:15 +0000 (23:54 -0400)]
Ignore HTLC txn we dont know how to claim instead of unwrap()ing

This fixes a crash introduced in 3e149b1fb6624eef99b055bde772842f36
and introduces a test which will tickle the bug.

5 years agoMerge pull request #177 from TheBlueMatt/2018-09-163-cleanups
Matt Corallo [Fri, 14 Sep 2018 00:18:21 +0000 (20:18 -0400)]
Merge pull request #177 from TheBlueMatt/2018-09-163-cleanups

Optimize some ChannelMonitor stuff after #163

5 years agoClean up and clarify tx broadcast checks in channelmonitor tests 2018-09-163-cleanups
Matt Corallo [Thu, 13 Sep 2018 17:51:23 +0000 (13:51 -0400)]
Clean up and clarify tx broadcast checks in channelmonitor tests

This effecitlvey reverts the refactors in 383bd90a481bc146b3a3b1d8,
however keeps the actully new test code.

It also writes documentation for the super confusing tx test func
and makes it a bit less permissive.