lnd/htlcswitch
Conner Fromknecht cba523ae30
htlcswitch/hop/payload: apply known constraints if required failure
This commit modifies the NewPayloadFromReader to apply known
presence/omission contraints in the event that the tlv parser returns an
unknown required type failure.

Now that the parser has been modified to finished parsing the stream to
obtain a proper parsed type set, we can accurately apply these higher
level validation checks. This overrides required type failures, such
that they are only returned if the sender properly abided by the
constraints on fields for which we know.

The unit tests are updated to create otherwise valid payloads that then
return unknown required type failures. In one case, a test which
previously returned an unknown required type failure is made to return
an included failure for the sid, indicating the unknown required type 0
is being overruled.
2019-10-30 21:21:10 -07:00
..
hodl htlcswitch/hodl: switch from debug tag to dev 2018-10-05 13:04:45 +09:00
hop htlcswitch/hop/payload: apply known constraints if required failure 2019-10-30 21:21:10 -07:00
circuit_map.go htlcswitch: move hop iterator into htlcswitch/hop package 2019-09-05 15:30:31 +02:00
circuit_test.go multi: remove dead code 2019-09-10 17:21:59 +02:00
circuit.go htlcswitch: move hop iterator into htlcswitch/hop package 2019-09-05 15:30:31 +02:00
decayedlog_test.go peer+lnpeer: add new methods to expose local+global features for lnpeer interface 2019-09-25 18:26:01 -07:00
decayedlog.go multi: fix dropped errors 2019-09-13 09:50:38 +02:00
failure.go htlcswitch: move hop iterator into htlcswitch/hop package 2019-09-05 15:30:31 +02:00
interfaces.go htlcswitch: rename policy check functions 2019-10-23 09:57:22 +02:00
link_isolated_test.go htlcswitch/test: move test functions into context 2019-09-26 15:11:23 +02:00
link_test.go htlcswitch: fix returned failure for insufficient balance 2019-10-23 09:57:34 +02:00
link.go htlcswitch/link: return InvalidOnionPayload failure 2019-10-30 21:19:53 -07:00
linkfailure.go watchtower+htlcswitch: update client tower logic to recognize safu commitments 2019-09-25 18:25:55 -07:00
log.go htlcswitch/hop: fix logging 2019-09-09 13:52:35 +02:00
mailbox_test.go htlcswitch/mailbox_test: add orchestrator pending/live test 2018-05-09 16:07:52 -07:00
mailbox.go multi: remove dead code 2019-09-10 17:21:59 +02:00
mock.go htlcswitch/test: add forward mock result 2019-10-23 09:57:30 +02:00
packet.go multi: remove dead code 2019-09-10 17:21:59 +02:00
payment_result_test.go routing: Fix dropped errors in tests. 2019-09-13 06:28:05 +00:00
payment_result.go multi: fix canceled spelling 2019-10-03 17:27:36 +02:00
queue_test.go htlcswitch: Remove obsolete fields from htlcPacket. 2017-12-14 17:53:58 -08:00
queue.go htlcswitch: ensure the packet queue exits on stop 2018-06-08 13:51:37 -07:00
sequencer.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
switch_test.go htlcswitch: fix returned failure for insufficient balance 2019-10-23 09:57:34 +02:00
switch.go htlcswitch: fix returned failure for insufficient balance 2019-10-23 09:57:34 +02:00
test_utils.go htlcswitch/test: create genID function 2019-10-23 09:57:26 +02:00