core-lightning/lightningd
Rusty Russell bb7bbd03c5 lightningd: have json_stream_success start the "result" object.
"result" should always be an object (so that we can add new fields),
so make that implicit in json_stream_success.

This makes our primitives well-formed: we previously used NULL as our
fieldname when calling the first json_object_start, which is a hack
since we're actually in an object and the fieldname is 'result' (which
was already written by json_object_start).

There were only two cases which didn't do this:
1. dev-memdump returned an array.  No API guarantees on this.
2. shutdown returned a string.

I temporarily made shutdown return an empty object, which shouldn't
break anything, but I want to fix that later anyway.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2019-06-12 02:00:15 +00:00
..
test lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
.gitignore handshaked: remove. 2017-10-20 18:31:32 +02:00
bitcoind.c Remove Sensitive RPC Data from Logs (#2520) 2019-04-03 03:06:06 +00:00
bitcoind.h lightningd: allow more than one bitcoind request at once, run multiple queues. 2018-09-19 13:21:21 +02:00
chaintopology.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
chaintopology.h openingd/json_fund_channel: 2019-01-29 04:50:01 +00:00
channel_control.c lightningd/channel_control logline fixup 2019-06-07 10:34:34 +02:00
channel_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
channel_state.h lightningd: new state AWAITING_UNILATERAL. 2018-08-23 14:46:22 +02:00
channel.c wallet: Rip out the txtypes type in favor of enum wallet_tx_type 2019-06-08 02:58:27 +00:00
channel.h wallet: Rip out the txtypes type in favor of enum wallet_tx_type 2019-06-08 02:58:27 +00:00
closing_control.c channel: Along with the last_tx also remember its type 2019-06-08 02:58:27 +00:00
closing_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
connect_control.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
connect_control.h Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
gossip_control.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
gossip_control.h connectd: wean off gossip_wire message types, use our own. 2018-07-25 02:13:52 +00:00
gossip_msg.c listchannels: add htlc_minimum_msat and htlc_maximum_msat fields. 2019-06-11 23:19:11 +00:00
gossip_msg.h listchannels: add htlc_minimum_msat and htlc_maximum_msat fields. 2019-06-11 23:19:11 +00:00
hsm_control.c Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
hsm_control.h Use node_id everywhere for nodes. 2019-04-09 12:37:16 -07:00
htlc_end.c wallet: Add received_time to htlc_in for forwarding times 2019-04-10 23:48:39 +00:00
htlc_end.h wallet: Add received_time to htlc_in for forwarding times 2019-04-10 23:48:39 +00:00
invoice.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
invoice.h lightningd: move local invoice resolution into invoice.c function. 2019-04-12 03:32:48 +00:00
io_loop_with_timers.c lightningd/io_loop_with_timers.c: Move mainloop to its own source file, have chaintopology use it. 2019-05-31 17:57:10 +02:00
io_loop_with_timers.h lightningd/io_loop_with_timers.c: Move mainloop to its own source file, have chaintopology use it. 2019-05-31 17:57:10 +02:00
json_stream.c plugins: do I/O logging. 2019-05-31 18:36:38 +02:00
json_stream.h plugins: do I/O logging. 2019-05-31 18:36:38 +02:00
json.c ccan: import ccan/json_out and ccan/json_escape. 2019-06-12 02:00:15 +00:00
json.h ccan: import ccan/json_out and ccan/json_escape. 2019-06-12 02:00:15 +00:00
jsonrpc.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
jsonrpc.h lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
lightningd.c ccan: import ccan/json_out and ccan/json_escape. 2019-06-12 02:00:15 +00:00
lightningd.h lightningd: hang up on clients if they make us run out of memory. 2019-05-22 11:28:44 +00:00
log_status.c log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
log_status.h status: add multiple levels of logging. 2018-02-07 00:46:49 +00:00
log.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
log.h log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
Makefile ccan: import ccan/json_out and ccan/json_escape. 2019-06-12 02:00:15 +00:00
memdump.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
memdump.h lightningd: add code to search strmaps for memleak detection. 2019-02-07 20:33:50 +00:00
notification.c plugin: Add new notification type: warning 2019-06-07 01:23:51 +00:00
notification.h plugin: Add new notification type: warning 2019-06-07 01:23:51 +00:00
onchain_control.c wallet: Rip out the txtypes type in favor of enum wallet_tx_type 2019-06-08 02:58:27 +00:00
onchain_control.h onchaind: Replay stored channeltxs to restore onchaind state 2018-04-25 14:33:38 +02:00
opening_control.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
opening_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
options.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
options.h opts: Split early from non-early args so plugins can register theirs 2018-11-13 00:44:50 +01:00
pay.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
pay.h lightningd: move pay internals back into pay.c 2019-01-23 22:08:08 +01:00
peer_control.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
peer_control.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
peer_htlcs.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
peer_htlcs.h lightningd: move local invoice resolution into invoice.c function. 2019-04-12 03:32:48 +00:00
ping.c lightningd: have json_stream_success start the "result" object. 2019-06-12 02:00:15 +00:00
ping.h ping: complete JSON RPC ping commands even if one ping gets no response. 2018-09-14 22:11:23 +02:00
plugin_hook.c plugin: fix printing of bad plugin responses. 2019-05-31 18:36:38 +02:00
plugin_hook.h lightningd: remove deserialize step for plugin hooks. 2019-04-23 15:26:42 +02:00
plugin.c log: add 'warning' notification when log 2019-06-07 01:23:51 +00:00
plugin.h plugins: do I/O logging. 2019-05-31 18:36:38 +02:00
subd.c common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
subd.h common/per_per_state: generalize lightningd/peer_comm Part 1 2019-06-04 01:29:39 +00:00
watch.c chaintopology: add REORG to logline when tx watch is fired after reorg 2019-05-27 13:29:32 +02:00
watch.h txwatch: hand ld to callback, don't assume channel is non-NULL. 2018-08-21 00:48:02 +02:00