Skip to content

lightningd: check rpc names collisions with builtin commands - #9416

Open
Lagrang3 wants to merge 1 commit into
ElementsProject:masterfrom
Lagrang3:lightningd-rpc-collision
Open

lightningd: check rpc names collisions with builtin commands#9416
Lagrang3 wants to merge 1 commit into
ElementsProject:masterfrom
Lagrang3:lightningd-rpc-collision

Conversation

@Lagrang3

Copy link
Copy Markdown
Collaborator

We crashed if the name collision happened to be a builtin command.

lightningd: FATAL SIGNAL 11 (version v26.06-241-gb35b848-modded)
0x5573cd532b2c send_backtrace
	common/daemon.c:38
0x5573cd532bb6 crashdump
	common/daemon.c:83
0x7fe1fd4ccdef ???
	./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x5573cd4d51a4 plugin_rpcmethod_add
	lightningd/plugin.c:1396
0x5573cd4d5268 plugin_rpcmethods_add
	lightningd/plugin.c:1423
0x5573cd4d57ef plugin_parse_getmanifest_response
	lightningd/plugin.c:1805
0x5573cd4d68db plugin_manifest_cb
	lightningd/plugin.c:1827
0x5573cd4d2316 plugin_response_handle
	lightningd/plugin.c:692
0x5573cd4d7443 plugin_read_json
	lightningd/plugin.c:781
0x5573cd56fd01 next_plan
	ccan/ccan/io/io.c:60
0x5573cd57018c do_plan
	ccan/ccan/io/io.c:422
0x5573cd570245 io_ready
	ccan/ccan/io/io.c:439
0x5573cd571be3 io_loop
	ccan/ccan/io/poll.c:471
0x5573cd4a5a99 io_loop_with_timers
	lightningd/io_loop_with_timers.c:22
0x5573cd4d61d1 plugins_init
	lightningd/plugin.c:2063
0x5573cd4aad6c main
	lightningd/lightningd.c:1269
0x7fe1fd4b6ca7 __libc_start_call_main
	../sysdeps/nptl/libc_start_call_main.h:58
0x7fe1fd4b6d64 __libc_start_main_impl
	../csu/libc-start.c:360
0x5573cd47a120 ???
	_start+0x20:0
0xffffffffffffffff ???
	???:0

Changelog-Fixed: lightningd: checks for rpc name collisions with builtin commands before registering plugin

We crashed if the name collision happened to be a builtin command.

```
lightningd: FATAL SIGNAL 11 (version v26.06-241-gb35b848-modded)
0x5573cd532b2c send_backtrace
	common/daemon.c:38
0x5573cd532bb6 crashdump
	common/daemon.c:83
0x7fe1fd4ccdef ???
	./signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c:0
0x5573cd4d51a4 plugin_rpcmethod_add
	lightningd/plugin.c:1396
0x5573cd4d5268 plugin_rpcmethods_add
	lightningd/plugin.c:1423
0x5573cd4d57ef plugin_parse_getmanifest_response
	lightningd/plugin.c:1805
0x5573cd4d68db plugin_manifest_cb
	lightningd/plugin.c:1827
0x5573cd4d2316 plugin_response_handle
	lightningd/plugin.c:692
0x5573cd4d7443 plugin_read_json
	lightningd/plugin.c:781
0x5573cd56fd01 next_plan
	ccan/ccan/io/io.c:60
0x5573cd57018c do_plan
	ccan/ccan/io/io.c:422
0x5573cd570245 io_ready
	ccan/ccan/io/io.c:439
0x5573cd571be3 io_loop
	ccan/ccan/io/poll.c:471
0x5573cd4a5a99 io_loop_with_timers
	lightningd/io_loop_with_timers.c:22
0x5573cd4d61d1 plugins_init
	lightningd/plugin.c:2063
0x5573cd4aad6c main
	lightningd/lightningd.c:1269
0x7fe1fd4b6ca7 __libc_start_call_main
	../sysdeps/nptl/libc_start_call_main.h:58
0x7fe1fd4b6d64 __libc_start_main_impl
	../csu/libc-start.c:360
0x5573cd47a120 ???
	_start+0x20:0
0xffffffffffffffff ???
	???:0
```

Changelog-Fixed: lightningd: checks for rpc name collisions with builtin commands before registering plugin

Reported-by: Vincenzo Palazzo (Bitcoin Security Council finding 2026-08-11)

Signed-off-by: Lagrang3 <lagrang3@protonmail.com>
@Lagrang3
Lagrang3 force-pushed the lightningd-rpc-collision branch from 6268f1d to 0003922 Compare August 13, 2026 11:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant