1210 Commits
Author SHA1 Message Date
Conner Fromknecht 3d487e3ca3 htlcswitch/iterator: extract error encrypter from ephemeral key 2018-03-13 16:33:28 -07:00
Conner Fromknecht dccab0a654 htlcswitch/failure: add Reextract to SphinxErrorEncrypter 2018-03-13 16:33:28 -07:00
Conner Fromknecht 75c7349823 htlcswitch/circuit_test: use circuit map config and test rextraction 2018-03-13 16:33:28 -07:00
Conner Fromknecht 64ee4e0247 htlcswitch/circuit_map: add Config and Reextract obfuscators 2018-03-13 16:33:27 -07:00
Johan T. Halseth b2608dd292 htlcswitch/link_test: increase timeout for message sends
This commit increases the time we wait for a message to be sent for
several test cases, aiming to decrease the false negative rate on
Travis.
2018-03-13 12:20:58 +01:00
Olaoluwa Osuntokun 45eaa70814 Merge pull request #821 from cfromknecht/switch-early-shutdown
htlcswitch/switch: improve safety of switch shutdown
2018-03-12 19:57:19 -07:00
Olaoluwa Osuntokun 8988a07bce htlcswitch: eliminate unnecessary indentation in processRemoteAdds
In this commit, we remove a ton of unnecessary indentation in the
processRemoteAdds method. Before this commit, we had a switch statement
on the type of the entry. This was required before when the method was
generic, but now since we already know that it’s an Add, we no longer
require such a statement.
2018-03-12 18:58:46 -07:00
Olaoluwa Osuntokun 069311c47f htlcswitch: log dangling circuits in unable to create new commitment 2018-03-12 18:58:45 -07:00
Olaoluwa Osuntokun bdd01cccb2 htlcswitch: remove getBandwidthCmd as it's no longer needed 2018-03-12 18:58:45 -07:00
Olaoluwa Osuntokun 1af8fa9367 htlcswitch: add additional comments and logging 2018-03-12 18:58:44 -07:00
Olaoluwa Osuntokun c285bb5814 htlcswitch+peer: remove DecodeHopIterator from ChannelLinkConfig
In this commit, we remove the DecodeHopIterator method from the
ChannelLinkConfig struct. We do this as we no longer use this method,
since we only ever use the DecodeHopIterators method now.
2018-03-12 18:58:08 -07:00
Olaoluwa Osuntokun f2b676e93c Merge pull request #790 from halseth/wire-error-handoff
Wire error handoff
2018-03-12 18:56:35 -07:00
Conner Fromknecht 914c59eb30 htlcswitch/switch: ensures safe shutdown of switch 2018-03-12 16:40:16 -07:00
Conner Fromknecht 5df8b52dae multi: set initiator funding txn 2018-03-11 15:06:22 -07:00
Johan T. Halseth 33762e0f81 htlcswitch/link: fail channel on lnwire.Error 2018-03-11 17:21:23 +01:00
Olaoluwa Osuntokun 7ea9e7cf4c htlcswitch: fix linter warning 2018-03-10 19:09:18 -08:00
Olaoluwa Osuntokun 800eea931f build+multi: switch from bolt to bbolt
In this commit, we switch from boltbd/bolt to coreos/bbolt as the
former is no longer being actively maintained.
2018-03-10 19:01:13 -08:00
Conner Fromknecht 02489dc6c0 htlcswitch/test_utils: instantiate config with batch onoin processing 2018-03-09 21:08:44 -08:00
Conner Fromknecht 4f68d1beca htlcswitch/switch_test: change forward() -> send() 2018-03-09 21:08:44 -08:00
Conner Fromknecht 1b7afc6da5 htlcswitch/mock: add mock fwding log to initSwitchWithDB 2018-03-09 21:08:44 -08:00
Conner Fromknecht 5fd1206da6 htlcswitch/switch: modifies forward method to support async invocation 2018-03-09 21:08:44 -08:00
Conner Fromknecht fbb8f0bcce htlcswitch/sequencer: adds a persistent emitter of payment IDs 2018-03-09 21:08:44 -08:00
Conner Fromknecht e4fb420665 htlcswitch/packet: adds serialization to htlcPacket 2018-03-09 21:08:44 -08:00
Conner Fromknecht 3048dfd4be htlcswitch/mock: adds Encode/Decode to mock obfuscator 2018-03-09 21:08:43 -08:00
Conner Fromknecht 3ae7772ecb htlcswitch/mailbox_test: adds checks for reset and replay of pkts 2018-03-09 21:08:43 -08:00
Conner Fromknecht 9b00f83656 htlcswitch/mailbox: makes pkts replayable via Reset 2018-03-09 21:08:43 -08:00
Conner Fromknecht 3a186a02a9 htlcswitch/link_test: generate random preimages 2018-03-09 21:08:43 -08:00
Conner Fromknecht 101ad09e9f htlcswitch/link: batches processing of locked in htlcs 2018-03-09 21:08:43 -08:00
Conner Fromknecht 2c3d35bb40 htlcswitch/interfaces: have HandleSwitchPacket return an error 2018-03-09 21:08:43 -08:00
Conner Fromknecht 403028da78 htlcswitch/circuit_test: use half adds in circuit map test 2018-03-09 21:08:42 -08:00
Conner Fromknecht 0b71f74199 htlcswitch/circuit_map: moves circuit map impl to own file 2018-03-09 21:08:42 -08:00
Conner Fromknecht 067b261602 htlcswitch/circuit: add half adds to circuit map 2018-03-09 21:08:42 -08:00
Conner Fromknecht 02c65db0d1 htlcswitch/link_test: integrate new channel update APIs 2018-03-09 17:35:54 -08:00
Conner Fromknecht 1fe7c6d431 htlcswitch/link: integrate persistence changes to lnwallet APIs 2018-03-09 17:35:53 -08:00
Conner Fromknecht 6a88ff940a htlcswitch_/test_utils: init OpenChannels w/ Packager 2018-03-09 14:45:31 -08:00
Olaoluwa Osuntokun 51a3cab39c htlcswitch: fix race in forwarding log test by grabbing log mtx 2018-03-08 20:11:49 -08:00
Olaoluwa Osuntokun 649be5ee0b Merge pull request #775 from cfromknecht/sphinx-replay
Switch Persistence [1/4]: Infra for Sphinx Batched Decoding and Replay Protection
2018-03-08 23:03:01 -05:00
Conner Fromknecht c2ec3a6ef5 htlcswitch/test_utils: use new ErrorEncrypter and HopIterator ifaces 2018-03-08 21:12:05 -05:00
Conner Fromknecht 5cbdb29bcc htlcswitch/link_test: mock extracting of error encrypter from onion pkt 2018-03-08 21:12:04 -05:00
Conner Fromknecht 06fb524a3b htlcswitch/mock: update mock obfuscator and iterators w/ new sphinx API 2018-03-08 21:12:04 -05:00
Conner Fromknecht 27df8d8ad1 htlcswitch/link: extract error encrypter from hop iterator 2018-03-08 21:12:04 -05:00
Conner Fromknecht f075905d6c htlcswitch/iterator: use batch API for sphinx router 2018-03-08 21:12:04 -05:00
Conner Fromknecht fcf08382f7 htlcswitch/failure: add Encode/Decode to ErrorEncrypter 2018-03-08 21:12:03 -05:00
Olaoluwa Osuntokun 7031b5d217 htlcswitch: modify forwarding fee assertion to compare emperical fees
In this commit, we fix a bug that was uncovered by the recent change to
lnwire.MilliSatoshi. Rather than manually compute the diff in fees,
we’ll directly compare the fee that is given against the fee that we
expect.
2018-03-08 12:50:49 -05:00
Olaoluwa Osuntokun 4b20e805fe multi: update packages due to recent SignDescriptor and WalletController changes 2018-03-06 16:04:03 -05:00
Olaoluwa Osuntokun 473dfd115b htlcswitch: add set of tests for the forwarding log 2018-03-06 13:56:11 -05:00
Olaoluwa Osuntokun ad522a72c1 htlcswitch: add new ticker in switch to batch log forwarding events
In this commit, we extend the switch as is, to record details
concerning settled payment circuits. To do this, we introduce a new
interface to the package: the ForwardingLog. This is a tiny interface
that simply lets us abstract away the details of the storage backing of
the forwarding log.

Each time we receive a successful HTLC settle, we’ll log the full
details (chans, fees, time) as a pending forwarding log entry. Every 15
seconds, we’ll then batch flush out these entries to disk. When we’re
exiting, we’ll try to flush out all entries to ensure everything gets
recorded to disk.
2018-03-06 13:56:11 -05:00
Olaoluwa Osuntokun 6f11fee1a4 htlcswitch: when forwarding htlcs, set the incomingHtlcAmt 2018-03-06 13:56:10 -05:00
Olaoluwa Osuntokun d377ffafdd htlcswitch: populate the incoming+outgoing in the payment circuit 2018-03-06 13:56:10 -05:00
Olaoluwa Osuntokun 157e052958 htlcswitch: add the incoming payment amount to the htlcPacket
We’ll need this value within the link+switch in order to fully populate
the forwarding event that will be generated if this HTLC circuit is
successfully completed.
2018-03-06 13:56:10 -05:00