Skip to content

[30.x] Backports#34689

Merged
fanquake merged 10 commits intobitcoin:30.xfrom
fanquake:even_more_30_backports
Mar 11, 2026
Merged

[30.x] Backports#34689
fanquake merged 10 commits intobitcoin:30.xfrom
fanquake:even_more_30_backports

Conversation

@DrahtBot
Copy link
Contributor

DrahtBot commented Feb 27, 2026

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK marcofleon

If your review is incorrectly listed, please copy-paste <!--meta-tag:bot-skip--> into the comment that the bot should ignore.

MarcoFalke and others added 8 commits March 9, 2026 15:52
…r warning

This refactor does not change any behavior, except for the integer
sanitizer warning.

Can be tested via:

UBSAN_OPTIONS="suppressions=$(pwd)/test/sanitizer_suppressions/ubsan:print_stacktrace=1:halt_on_error=1:report_error_type=1" ./bld-cmake/bin/bitcoin-cli -stdinrpcpass uptime

Github-Pull: bitcoin#34597
Rebased-From: fa6af85
```
src/common/netif.cpp:137:51: error: comparison of integers of different signs: 'int64_t' (aka 'long') and 'unsigned long' [-Werror,-Wsign-compare]
  137 |         for (nlmsghdr* hdr = (nlmsghdr*)response; NLMSG_OK(hdr, recv_result); hdr = NLMSG_NEXT(hdr, recv_result)) {
      |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/netlink/netlink.h:220:31: note: expanded from macro 'NLMSG_OK'
  220 | #define NLMSG_OK(_hdr, _len)            NL_ITEM_OK(_hdr, _len, NLMSG_HDRLEN, _NLMSG_LEN)
      |                                         ^                ~~~~  ~~~~~~~~~~~~
/usr/include/netlink/netlink.h:203:10: note: expanded from macro 'NL_ITEM_OK'
  203 |         ((_len) >= _hlen && _LEN_M(_ptr) >= _hlen && _LEN_M(_ptr) <= (_len))
      |           ~~~~  ^  ~~~~~
1 error generated.
```

Happens on FreeBSD 15.0, with the default compiler (Clang 19).

On FreeBSD 14, `/usr/include/netlink/netlink.h` contains:
```
 #define NLMSG_HDRLEN                    ((int)sizeof(struct nlmsghdr))
```

On FreeBSD 15, `/usr/include/netlink/netlink.h` contains:
```
 #define NLMSG_HDRLEN                    (sizeof(struct nlmsghdr))
```

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>

Github-Pull: bitcoin#34093
Rebased-From: c1361fc
Improve dependencies.md to document IPC dependencies better:

- Link to native_capnp.mk file not capnp.mk file so it's possible to see what
  version of Cap'n Proto is being used in release binaries. This is important
  since bitcoin#31895 dropped the "Version Used" column and the capnp.mk file does not
  include version number.
- Indicate Capn"Proto is used for IPC and link to multiprocess.md documenting
  the feature.
- Link to correct PR requiring Cap'n Proto 0.7.1. Previous link was
  pointing at PR which required 0.7.0.
- Mention libmultiprocess as a dependency even though it is included as a git
  subtree and can be built as a cmake subproject. Libmultiprocess still needs
  to be built separately when cross compiling, and is useful to build separately
  when developing, and is still a depends package.

Based on 2cf352f from bitcoin#33623 by willcl-ark
which made similar changes in the 29.x branch.

Github-Pull: bitcoin#34706
Rebased-From: b87a1c2
Add validation for pubkeys in MuSig2 pubnonce and partial signature deserialization to prevent crashes with invalid curve points.

- Validate aggregate and participant pubkeys in PSBT MuSig2 fields

- Add comprehensive test coverage for invalid pubkey rejection

- Ensure proper error handling during PSBT deserialization

Github-Pull: bitcoin#34219
Rebased-From: f51665b
The `fee` field in the `getblock` RPC result (verbosity 2 and 3) may be
omitted when block undo data is not available. Marking it optional in
the `RPCResult` aligns the documented schema with the runtime behavior.

Github-Pull: bitcoin#34702
Rebased-From: f580cc7
@fanquake fanquake force-pushed the even_more_30_backports branch from e99c925 to 53a1bd3 Compare March 9, 2026 15:57
@fanquake fanquake marked this pull request as ready for review March 10, 2026 13:36
We are testing on FreeBSD 15 (nightly) and macOS 26 (CI).

Github-Pull: bitcoin#34789
Rebased-From: 6b20ad8
@fanquake fanquake force-pushed the even_more_30_backports branch from 53a1bd3 to 49a777d Compare March 10, 2026 15:42
Copy link
Contributor

@marcofleon marcofleon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 49a777d

The only thing I noted was that #34010 looks very similar to #34219, so could possibly backport that as well. However, that's beyond my area of expertise.

@fanquake fanquake merged commit e292a7b into bitcoin:30.x Mar 11, 2026
20 checks passed
@fanquake fanquake deleted the even_more_30_backports branch March 11, 2026 10:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants