mining: add new getCoinbaseTx() returning a struct

Introduce a new method intended to replace getCoinbaseRawTx(), which
provides a struct with everything clients need to construct a coinbase.
This is safer than providing a raw dummy coinbase that clients then have
to manipulate.

The CoinbaseTx data is populated during the dummy transaction generation
and stored in struct CBlockTemplate.

Expand the interface_ipc.py functional test to document its usage
and ensure equivalence.
This commit is contained in:
Sjors Provoost committed 2026-01-05 09:51:57 +07:00
1 parent d59b4cdb57
commit 48f57bb35b
9 files changed
+219 -6

No files matched your search

+4 -1
View File
@@ -1,5 +1,8 @@
Mining IPC
----------
- The `getCoinbaseTx()` method is renamed to `getCoinbaseRawTx()`.
- The `getCoinbaseTx()` method is renamed to `getCoinbaseRawTx()` and deprecated.
IPC clients do not use the function name, so they're not affected. (#33819)
- Adds `getCoinbaseTx()` which clients should use instead of `getCoinbaseRawTx()`. It
contains all fields required to construct a coinbase transaction, and omits the
dummy output which Bitcoin Core uses internally. (#33819)