Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version
What changed, and why it matters
This is a one-line bug fix in Core Lightning's bookkeeper plugin. The developer changed a memory 'parent' pointer from a long-lived account object to a short-lived temporary context. Previously, a chain event object was being attached to an account that never gets freed, so the event leaked memory every time the code ran. The fix makes the event a temporary object that is cleaned up automatically. There is no attacker-controlled path; it is a routine memory leak in an internal accounting calculation.
Recommended action
Apply the patch. No urgent security response is needed; this is a reliability/fix-quality change. Operators running nodes with many closed channels may benefit from reduced memory growth over time.
Security signals we found
01
Memory leak (MEMLEAK) in bookkeeper plugin
02
Tal allocation parent changed from persistent account to temporary context
03
No input validation, boundary, or cryptographic change
Technical analysis
Evidence from the diff
In plugins/bkpr/channelsapy.c, fillin_apy_acct_details() calls find_chain_event_by_id() to look up a closing chain event. The old code passed acct (a persistent struct account) as the tal parent, but accounts are no longer transient, so the returned struct chain_event remained reachable through the account and was never freed. The patch changes the parent to tmpctx, the function’s temporary tal context, so the event is released when the function returns. The accompanying log shows a MEMLEAK report for struct chain_event with parents including struct account and struct bkpr, confirming the leak.
This commit is a simple documentation revert. It undoes a previous change that told macOS users to install GNU make and GNU patch from Homebrew and to put those tools first in their command path. The reverted instructions now omit gpatch a…
This commit re-adds an old-style 'x' prefix to a string comparison in a test helper script. It is a test-only change with no effect on the actual Core Lightning node software, user funds, network behavior, or security. The change simply re…
This commit only updates macOS installation instructions in the documentation. It tells macOS users to install newer GNU versions of 'make' and 'patch' from Homebrew because Apple's built-in tools are too old for building and running sourc…