core-lightning/plugins
Rusty Russell 054eeb8aa2 plugins/sql: fix crash when subobject is missing which has subobject inside it.
There's only one place (added in v24.02) where we have nested subobjects, and
if the outer sub-object is not there it crashes.

```
sql: FATAL SIGNAL 11 (version v24.08rc1-2-ge134f2f-modded)
0x5781d447239b send_backtrace
        common/daemon.c:33
0x5781d4472432 crashdump
        common/daemon.c:75
0x787bcd64531f ???
        ./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x5781d447782a json_get_membern
        common/json_parse_simple.c:210
0x5781d44778cc json_get_member
        common/json_parse_simple.c:223
0x5781d445d0e2 process_json_obj
        plugins/sql.c:537
0x5781d445d10d process_json_obj
        plugins/sql.c:538
0x5781d445d598 process_json_list
        plugins/sql.c:684
0x5781d445d65a process_json_result
        plugins/sql.c:699
0x5781d445d7cb default_list_done
        plugins/sql.c:722
0x5781d446349d handle_rpc_reply
        plugins/libplugin.c:1016
0x5781d4463640 rpc_read_response_one
        plugins/libplugin.c:1202
0x5781d44636f1 rpc_conn_read_response
        plugins/libplugin.c:1226
0x5781d459e56c next_plan
        ccan/ccan/io/io.c:60
0x5781d459ea3d do_plan
        ccan/ccan/io/io.c:422
0x5781d459eafa io_ready
        ccan/ccan/io/io.c:439
0x5781d45a0469 io_loop
        ccan/ccan/io/poll.c:455
0x5781d4463dcb plugin_main
        plugins/libplugin.c:2230
```

Changelog-Fixed: Plugins: `sql` crash on querying `listpeerchannels` during channel establishment.
Fixes: https://github.com/ElementsProject/lightning/issues/7505
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2024-08-16 07:19:52 +09:30
..
askrene askrene: memleak: scan reserved htable 2024-08-13 09:12:40 +09:30
bkpr bookkeeper: fix up out-of-order migrations in rc1 2024-08-16 07:18:29 +09:30
clnrest meta: Update changelog for 24.08rc1 2024-08-13 08:32:23 -07:00
examples cln-plugin: add multi options for String and i64 2024-08-13 12:24:45 +09:30
grpc-plugin grpc-plugin: Run cargo fmt for minor style fixes 2024-07-31 08:53:12 +02:00
renepay renepay: add const probability cost 2024-08-15 16:46:41 +09:30
spender libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
src cln-plugin: add multi options for String and i64 2024-08-13 12:24:45 +09:30
test libplugin: Add primitive to serialize channel_hint to JSON 2024-08-09 13:59:07 +09:30
wss-proxy meta: Update changelog for 24.08rc1 2024-08-13 08:32:23 -07:00
.gitignore gitignore: Add missing gitignore plugins an devtools 2024-08-13 08:32:23 -07:00
autoclean.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
bcli.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
Cargo.toml meta: bump rust versions for 24.05 release 2024-06-04 20:23:24 -05:00
chanbackup.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
commando.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
establish_onion_path.c offers: add self-fetchinvoices for offers, and self-pay for the resulting invoice. 2024-07-18 10:53:55 +09:30
establish_onion_path.h fetchinvoice: use common/onion_message routines. 2024-07-17 10:57:11 +02:00
fetchinvoice.c offers: fix crash when receiving response to offer without offer_issuer_id 2024-08-06 19:09:27 -07:00
fetchinvoice.h plugins/offers: neaten fetchinvoice integration. 2024-07-17 10:57:11 +02:00
funder.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
funder_policy.c libplugin: allow display of default values. 2024-05-15 15:50:54 -05:00
funder_policy.h libplugin: allow display of default values. 2024-05-15 15:50:54 -05:00
keysend.c pay: Add an error code to the payments 2024-08-08 12:20:44 -07:00
libplugin-pay.c plugin/pay: fix crash if failcodename isn't set. 2024-08-12 18:36:11 +09:30
libplugin-pay.h libplugin: pay now emits channel_hint as we learn about the net 2024-08-09 13:59:07 +09:30
libplugin.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
libplugin.h libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
Makefile reckless-rpc: initial boilerplate 2024-08-12 18:10:45 -07:00
offers.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
offers.h lightningd: make plugins set metadata for invoice requests. 2024-08-01 12:31:48 +09:30
offers_inv_hook.c global: update BOLT12 quotes. 2024-08-01 12:31:48 +09:30
offers_inv_hook.h offers: check they use the blinded path if one is specified. 2024-07-17 10:57:11 +02:00
offers_invreq_hook.c global: update BOLT12 quotes. 2024-08-01 12:31:48 +09:30
offers_invreq_hook.h offers: check they use the blinded path if one is specified. 2024-07-17 10:57:11 +02:00
offers_offer.c common: Add some more JSON primitives 2024-08-09 13:59:07 +09:30
offers_offer.h plugins: move fetchinvoice functionality into offers plugin. 2024-07-17 10:57:11 +02:00
pay.c libplugin: pay now emits channel_hint as we learn about the net 2024-08-09 13:59:07 +09:30
README.md doc: fix wording in plugins/README.md 2020-01-06 12:57:59 +01:00
recklessrpc.c reckless-rpc: catch failed reckless subprocess 2024-08-12 18:10:45 -07:00
recover.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
sql.c plugins/sql: fix crash when subobject is missing which has subobject inside it. 2024-08-16 07:19:52 +09:30
topology.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30
txprepare.c libplugin: add data pointer for plugin convenience. 2024-08-07 20:35:30 +09:30

Plugin Directory

Any file in this directory which is executable and whose name only consists of alphanumeric characters, space, '.', '-' or '_' will be automatically loaded when lightningd starts (unless suppressed with commandline options).