core-lightning/daemon
Rusty Russell 5e7b3d02a1 daemon: batching of changes as per BOLT #2.
We now keep a list of commitment transaction states for "us" and
"them", as well as a "struct channel_state" for staged changes.

We manipulate these structures as we send out packets, receive
packets, or receive acknowledgement of packets.  In particular, we
update the other nodes' staging_cstate as we send out our requests,
and update our own staging_cstate are we receive acks.  When we
receive a request, we update both (as we immediately send out our
ack).

The RPC output is changed; rather than expose the complexity, we
expose our last committed state: what would happen if we have to drop
to the blockchain now.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2016-03-31 17:13:20 +10:30
..
jsmn@bd9bd55c3a daemon/jsmn: Add submodule for jsmn. 2016-01-22 06:37:13 +10:30
test daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
.gitignore daemon: first code. 2016-01-22 06:41:47 +10:30
bitcoind.c daemon: add --bitcoin-datadir for bitcoin-cli. 2016-03-15 17:08:40 +10:30
bitcoind.h daemon: add --bitcoin-datadir for bitcoin-cli. 2016-03-15 17:08:40 +10:30
configdir.c daemon: configuration directory (default ~/.lightning). 2016-01-22 06:41:48 +10:30
configdir.h daemon: configuration directory (default ~/.lightning). 2016-01-22 06:41:48 +10:30
controlled_time.c daemon: make json_get_param() understand which args are compulsory. 2016-03-15 17:07:30 +10:30
controlled_time.h daemon: dev-mocktime command 2016-01-22 06:45:28 +10:30
cryptopkt.c cryptopkt: implement ack callbacks. 2016-03-24 12:03:44 +10:30
cryptopkt.h cryptopkt: implement ack callbacks. 2016-03-24 12:03:44 +10:30
dns.c dns: don't allow non-stream sockets. 2016-01-22 06:41:49 +10:30
dns.h daemon: rename 'state' to 'dstate' everywhere. 2016-01-22 06:41:49 +10:30
json.c daemon: make json_get_param() understand which args are compulsory. 2016-03-15 17:07:30 +10:30
json.h daemon: make json_get_param() understand which args are compulsory. 2016-03-15 17:07:30 +10:30
jsonrpc.c daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
jsonrpc.h daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
lightning-cli.c daemon: dev-mocktime command 2016-01-22 06:45:28 +10:30
lightningd.c daemon: use fee rates rather than absolute fees (BOLT #2) 2016-03-24 12:12:43 +10:30
lightningd.h daemon: use fee rates rather than absolute fees (BOLT #2) 2016-03-24 12:12:43 +10:30
log.c daemon: dev-mocktime command 2016-01-22 06:45:28 +10:30
log.h daemon: add helper to log hex. 2016-01-22 06:41:48 +10:30
Makefile Makefile: clean daemon files with make clean. 2016-03-08 10:32:15 +10:30
netaddr.c daemon: netaddr 2016-01-22 06:41:48 +10:30
netaddr.h daemon: netaddr 2016-01-22 06:41:48 +10:30
packets.c daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
peer.c daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
peer.h daemon: batching of changes as per BOLT #2. 2016-03-31 17:13:20 +10:30
pseudorand.c daemon: first code. 2016-01-22 06:41:47 +10:30
pseudorand.h daemon: first code. 2016-01-22 06:41:47 +10:30
secrets.c protocol: remove support for uncompressed pubkeys. 2016-03-30 16:54:16 +10:30
secrets.h daemon: implement unilateral commit. 2016-01-22 06:45:28 +10:30
timeout.c daemon: dev-mocktime command 2016-01-22 06:45:28 +10:30
timeout.h timeout: oneshot timer support. 2016-01-22 06:45:27 +10:30
watch.c daemon: implement unilateral commit. 2016-01-22 06:45:28 +10:30
watch.h daemon: implement unilateral commit. 2016-01-22 06:45:28 +10:30