core-lightning/lightningd
Rusty Russell 9497cbe73b lightningd/channel: tell master about the commit sigs.
There are two ways we can do retransmission on reconnect: re-derive
what we would have sent, or remember it and simply re-send.  The
rederivation is difficult: unwinding state depends on whether we sent
a revoke_and_ack before or after the commitment_signed, and unwinding
a revoke_and_ack would require us to remember HTLCs we would have
normally forgotten at this point.

So we simply tell the master to remember the old signatures for us,
and hand them back in case we need to re-send.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-06-23 09:29:42 +09:30
..
channel lightningd/channel: tell master about the commit sigs. 2017-06-23 09:29:42 +09:30
gossip lightningd: update BOLT to add channel_reestablish message. 2017-06-23 09:29:42 +09:30
handshake BOLT update for 8-byte satoshi values, and other updates. 2017-06-07 09:19:04 +09:30
hsm subdaemons: handle master or gossipd failing. 2017-06-07 09:19:04 +09:30
opening channel: change initialization to have explicit local amount, and commot indices. 2017-06-23 09:29:42 +09:30
test lightningd/channel: support forcing HTLCs to restore channel state. 2017-06-23 09:29:42 +09:30
.gitignore Update .gitignore files. 2017-05-12 12:59:09 +02:00
build_utxos.c wallet: Move UTXO tracking to DB 2017-06-06 09:16:10 +09:30
build_utxos.h lightningd/funding_tx: fill in scriptsigs for p2sh UTXOs. 2017-03-07 11:31:55 +10:30
channel_config.c lightningd: fix minimum depth. 2017-04-12 09:09:19 -07:00
channel_config.h BOLT update for 8-byte satoshi values, and other updates. 2017-06-07 09:19:04 +09:30
channel.c lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
channel.h lightningd/channel: support forcing HTLCs to restore channel state. 2017-06-23 09:29:42 +09:30
commit_tx.c Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
commit_tx.h Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
crypto_sync.c lightningd: --dev-disconnect support. 2017-05-25 14:24:47 +09:30
crypto_sync.h crypto_sync: synchronous routines for inter-peer crypto. 2017-02-21 15:15:29 +10:30
cryptomsg.c lightningd/cryptomsg: fix use-after-free introduced by dev_disconnect. 2017-06-23 09:29:42 +09:30
cryptomsg.h struct secret: use everywhere. 2017-05-09 11:43:35 +09:30
daemon_conn.c subdaemons: handle master or gossipd failing. 2017-06-07 09:19:04 +09:30
daemon_conn.h subdaemons: handle master or gossipd failing. 2017-06-07 09:19:04 +09:30
debug.c lightningd: --dev-disconnect support. 2017-05-25 14:24:47 +09:30
debug.h lightningd: --dev-debugger=<subdaemon> 2017-02-24 16:22:56 +10:30
derive_basepoints.c Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
derive_basepoints.h derive_basepoints: make arguments optional. 2017-05-25 14:24:47 +09:30
dev_disconnect.c lightningd: --dev-disconnect support. 2017-05-25 14:24:47 +09:30
dev_disconnect.h lightningd: --dev-disconnect support. 2017-05-25 14:24:47 +09:30
dev_ping.c sphinx: Updating daemon to new sphinx implementation 2017-05-02 11:47:52 +02:00
funding_tx.c lightningd/funding_tx: fix no-change-needed case. 2017-05-25 14:24:47 +09:30
funding_tx.h lightningd/funding_tx: output number is 16 bit. 2017-03-07 11:33:24 +10:30
gossip_control.c lightningd/peer_control: embed id, don't use pointer. 2017-06-07 09:19:04 +09:30
gossip_control.h lightningd/lightningd: wire up lightningd_gossip. 2017-01-10 15:38:33 +10:30
gossip_msg.c routing: Cleaning up old hostname and port handling 2017-05-10 12:37:44 +09:30
gossip_msg.h routing: Cleaning up old hostname and port handling 2017-05-10 12:37:44 +09:30
hsm_control.c lightningd/peer_control: embed id, don't use pointer. 2017-06-07 09:19:04 +09:30
hsm_control.h lightningd/lightningd: start HSM at initialization time. 2017-01-10 15:38:33 +10:30
htlc_end.c lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
htlc_end.h lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
htlc_tx.c Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
htlc_tx.h bitcoin/script: update scripts to the lightningnetwork/lightning-rfc#123 version 2017-03-07 16:16:59 +10:30
htlc_wire.c lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
htlc_wire.h lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
key_derive.c Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
key_derive.h struct secret: use everywhere. 2017-05-09 11:43:35 +09:30
lightningd.c lightningd: explictly split htlc_in and htlc_out. 2017-06-23 09:29:42 +09:30
lightningd.h lightningd: explictly split htlc_in and htlc_out. 2017-06-23 09:29:42 +09:30
Makefile lightningd: remove dev-newhtlc command. 2017-06-23 09:29:42 +09:30
msg_queue.c lightningd/msg_queue: add msg_wake helper. 2017-04-25 22:00:28 +02:00
msg_queue.h lightningd/msg_queue: add msg_wake helper. 2017-04-25 22:00:28 +02:00
new_connection.c BOLT update for 8-byte satoshi values, and other updates. 2017-06-07 09:19:04 +09:30
new_connection.h lightningd: set up reconnect timer if we don't want to forget peer. 2017-05-25 14:24:47 +09:30
pay.c lightningd: fix up malformed onion handling. 2017-06-23 09:29:42 +09:30
pay.h lightningd: explictly split htlc_in and htlc_out. 2017-06-23 09:29:42 +09:30
peer_control.c channeld: get handed existing HTLCs in init message. 2017-06-23 09:29:42 +09:30
peer_control.h channeld: get commit indices from master. 2017-06-23 09:29:42 +09:30
peer_failed.c Massive BOLT text underscore and formatting updates. 2017-06-07 09:19:04 +09:30
peer_failed.h lightningd/peer_failed: helper to send PKT_ERR and exit daemon. 2017-02-24 16:22:55 +10:30
peer_htlcs.c lightningd/channel: tell master about the commit sigs. 2017-06-23 09:29:42 +09:30
peer_htlcs.h channeld: get handed existing HTLCs in init message. 2017-06-23 09:29:42 +09:30
peer_state.h openingd: fundee: don't send watch command to master. 2017-05-25 14:24:47 +09:30
ping.c lightningd: add dev_ping command for channeld. 2017-04-25 22:00:28 +02:00
ping.h lightningd/ping: ping support. 2017-04-25 22:00:28 +02:00
sphinx.c sphinx: Add BOLT#4 quotes. 2017-06-07 09:19:04 +09:30
sphinx.h BOLT update for 8-byte satoshi values, and other updates. 2017-06-07 09:19:04 +09:30
status.c lightningd/status: reuse wire code for sending status. 2017-03-20 07:50:53 +10:30
status.h lightningd/status: support daemon_conn for status_trace and status_failed. 2017-03-20 07:50:53 +10:30
subd.c lightningd: --dev-disconnect support. 2017-05-25 14:24:47 +09:30
subd.h Minor fixes: feedback from Christian 2017-05-25 14:24:47 +09:30
utxo.c lightningd/utxo: helpers to translate from utxo * <-> utxo ** 2017-05-25 14:24:47 +09:30
utxo.h wallet: Move UTXO tracking to DB 2017-06-06 09:16:10 +09:30