Matt Corallo
12a55ae6fc
Set associated_data to payment_hash
2018-07-23 22:47:36 -04:00
Antoine Riard
20fa9d331d
Add DisconnectPeer events
...
Add test for DisconnectPeer event
Update DisconnectPeer with optional ErrorMessage
Manage error for funding_transaction_generated
Add disconnect_socket to SocketDescriptor trait
2018-07-23 14:31:44 -04:00
Matt Corallo
667cd66ede
Add arg to get_route to specify our local channels explicitly
...
(and a new getter in ChannelManager to get the thing to pass in)
2018-07-23 13:33:00 -04:00
Matt Corallo
7b4f382e26
Move shutdown sending to an event
2018-07-22 23:22:15 -04:00
Matt Corallo
e93c9fbeaf
Migrate all Uint256s used for channel_ids to [u8; 32]
2018-07-22 18:55:20 -04:00
Matt Corallo
896f5b8d91
Fix failure sending FundingLocked for non-announced channels
2018-07-22 17:11:20 -04:00
Matt Corallo
88c301cf08
Test transaction watch registration in channelmonitor tests
2018-07-22 13:59:11 -04:00
Matt Corallo
4afb0d85fa
Merge pull request #53 from savil/rename-error-msg-to-action
...
[HandleError] rename msg field to action
2018-07-19 23:30:28 -04:00
Matt Corallo
de523c4ca3
Merge pull request #47 from ariard/block_disconnected_close_chan
...
Implement channel closing for block_disconnected on ChainListener + test
2018-07-19 23:05:22 -04:00
Savil Srivastava
fd141bbed2
[Error] rename msg field to action
...
this was a TODO and also briefly discussed in https://github.com/rust-bitcoin/rust-lightning/pull/43#pullrequestreview-135649551
I'm not fully sure how to remove the `Option`, and make it completely required. Would love suggestions. So, have omitted that for now. Plus, better to make smaller, incremental changes.
Test Plan:
`cargo build`
`cargo test`
2018-07-19 20:01:55 -07:00
Antoine Riard
1b8544fd5d
Implement channel closing for block_disconnected on ChainListener + test
2018-07-20 02:37:05 +00:00
Antoine Riard
584ad11c1d
Erroneous failure codes, replace PERM|7 by UPDATE|7
2018-07-18 02:47:54 +00:00
Antoine Riard
f5b48104dd
TODO already cleaned by #16
2018-07-13 02:51:45 +00:00
Matt Corallo
c47525cb84
Move open_channel message handling into an event
...
This simplifies client usage cause peer_handler doesn't have an
interface to shove arbitrary messages in.
2018-07-06 17:31:01 -04:00
Jean Pierre Dudey
6707db6eae
Add MAX_FUNDING_SATOSHIS
constant.
...
This constants defines the maximum value of `open_channel.funding_satoshis`,
currently it's defined to be 2^24 according to the BOLT #2 specification.
Also a test was added to check that the constant is never over 2,1x10^15
(maximum satoshis in bitcoin) if modified.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-06-30 11:13:18 -04:00
Matt Corallo
56842c2bea
Cleanups after #33 , plus one unrelated bugfix spotted in #33 review
2018-06-29 17:23:50 -04:00
Jean Pierre Dudey
d0e9137bc5
Add the OutPoint
type for the ChannelMonitor
's funding_txo field.
...
This structure replaces the (Sha256dHash, u16) tuple that was being used
for the funding output.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-06-29 12:12:17 -04:00
Matt Corallo
a20eef17c9
Fix local route update broadcasts, annouce channel closures
2018-04-24 20:42:24 -04:00
Matt Corallo
2d8afeccdb
Rewrite channelmonitor framework and implement a bunch of it
2018-04-24 20:42:24 -04:00
Matt Corallo
7400b3bb7c
Fix some channel remove channelmanager consistency bugs
2018-04-24 16:01:14 -04:00
Matt Corallo
8e2974fc2a
HTLC Failure message handling
2018-04-24 11:55:08 -04:00
Matt Corallo
53d1518566
Move ChannelKeys creation into channelmanager
2018-04-17 12:43:12 -04:00
Matt Corallo
4d75d4c099
Minor cleanups
2018-04-16 20:35:21 -04:00
Matt Corallo
0940db25ec
Refactor channelmanager network tests significantly
2018-04-16 20:35:21 -04:00
Matt Corallo
374ea1f05e
Completely rewrite channel HTLC tracking and processing
...
It obviously was nonsensical prior, though its now way more
complicated...there's refactoring work to be done here, but it
should at least kinda sorta work now.
2018-04-16 20:35:21 -04:00
Matt Corallo
e2b1b1be78
Prep HTLCFailReason for Channel holding it until revoke_and_ack
2018-04-16 20:35:21 -04:00
Matt Corallo
00c6f42452
Use libbitcoinconsensus to check tx validity in some tests
2018-04-16 20:35:19 -04:00
Matt Corallo
8b1a7ede27
Test that channel monitors get updated appropriately
2018-04-16 20:35:03 -04:00
Matt Corallo
021b3643cc
Hand payment preimages into channel monitors when claimed
2018-04-16 20:35:03 -04:00
Matt Corallo
91b964ae1f
Basic error handling framework in peer_handler
2018-04-02 18:31:23 -04:00
Matt Corallo
df9367adaf
Rename ErrorMessage
2018-04-02 18:31:23 -04:00
Matt Corallo
b21048a1ce
Check funding txout format when transaction is confirmed in channel
2018-04-02 18:07:03 -04:00
Matt Corallo
187ca8c0c8
Make Channel non-public except in fuzztarget mode, bump version
2018-04-02 18:07:03 -04:00
Matt Corallo
8e79c05a20
Add support for initiating channel closure to Channel{,Manager}
2018-04-02 18:07:03 -04:00
Matt Corallo
c528ff3650
Handle incoming shutdown messages
2018-04-02 18:07:02 -04:00
Matt Corallo
890e3cb165
Update for new rust-bitcoin API, avoid some duplicate hashing
2018-04-02 18:06:59 -04:00
Matt Corallo
93f47f5421
Fix double-locking in channelmanager
2018-03-25 17:02:28 -04:00
Matt Corallo
9606f94caf
Stop freeing holding cell in updates, fix freeing in revoke
2018-03-25 17:02:28 -04:00
Matt Corallo
d923717216
Expand fake_network_test a bit with multiple in-flight rebalances
2018-03-25 17:02:28 -04:00
Matt Corallo
0795b34e10
Fail payments backwards in delayed processing as well
2018-03-25 13:21:32 -04:00
Matt Corallo
729f02d2dd
Hold channel_state lock into fail_htlc_backwards_internal
2018-03-23 16:57:22 -04:00
Matt Corallo
d8fc9ffde9
DRY up update_add_htlc a bit with macros
2018-03-23 16:56:45 -04:00
Matt Corallo
397b6f90e1
Fix new "uneccessary mut" warning
2018-03-23 15:30:18 -04:00
Matt Corallo
02b92f5d5c
Add dummy creator for PendingForwardHTLCInfo
2018-03-23 13:16:24 -04:00
Matt Corallo
ab56b81acd
Stub out Sha256 calls when fuzzing
2018-03-23 13:16:24 -04:00
Matt Corallo
d18e54bd90
Stub out RNG when fuzzing
2018-03-23 13:16:24 -04:00
Matt Corallo
40ab09f627
Clarify roles in failing HTLCs, impl it, support rebalances
2018-03-22 17:35:30 -04:00
Matt Corallo
df11c05fa6
Use ChainWatchInterfaceUtil directly in tests instead of a wrapper
2018-03-19 17:46:37 -04:00
Tamas Blummer
fbe4f7a442
Split out BroadcastInterface, ChainWatchInterface monitors re-enter from called listeners
2018-03-19 16:14:19 -04:00
Matt Corallo
f9fc2dfbe2
Merge pull request #3 from RCasatta/fixtry
...
use ? instead of try macro
2018-03-02 11:21:00 -05:00