Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

guix: (explicitly) build Linux GCC with --enable-cet #30438

Merged
merged 1 commit into from
Sep 17, 2024

Conversation

fanquake
Copy link
Member

@fanquake fanquake commented Jul 12, 2024

Similar to #29695, and in the same vein of explicitly configuring hardening options in our release toolchain.

See https://gcc.gnu.org/install/configure.html:

--enable-cet

Enable building target run-time libraries with control-flow instrumentation, see -fcf-protection option. When --enable-cet is specified target libraries are configured to add -fcf-protection and, if needed, other target specific options to a set of building options.

--enable-cet=auto is default. CET is enabled on Linux/x86 if target binutils supports Intel CET instructions and disabled otherwise. In this case, the target libraries are configured to get additional -fcf-protection option.

@DrahtBot
Copy link
Contributor

DrahtBot commented Jul 12, 2024

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

Code Coverage

For detailed information about the code coverage, see the test coverage report.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK TheCharlatan

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

Conflicts

No conflicts as of last run.

@DrahtBot
Copy link
Contributor

Guix builds (on x86_64) [untrusted test-only build, possibly unsafe, not for production use]

File commit 4d6af61
(master)
commit a8bcf50
(master and this pull)
SHA256SUMS.part 06a06fc771db01ff... 099b97685925816a...
*-aarch64-linux-gnu-debug.tar.gz 37dc44b8433afc4c... 6115a9e85008b34b...
*-aarch64-linux-gnu.tar.gz 11fa7e61058e60de... 62e9645b962c0330...
*-arm-linux-gnueabihf-debug.tar.gz 814fd7390dca8863... 84a81b57325d200d...
*-arm-linux-gnueabihf.tar.gz 636d69923f9baf41... ebf36614757de55c...
*-arm64-apple-darwin-unsigned.tar.gz eba3d94e95c565e5... fdb0604378cb4389...
*-arm64-apple-darwin-unsigned.zip a3a6c3e17a032ec2... 2d1a5e7787a40c3c...
*-arm64-apple-darwin.tar.gz 2edb16e2d3e354ac... efcaf660c504eeda...
*-powerpc64-linux-gnu-debug.tar.gz a2ffe7224f332256... b2d0cd70707e5c01...
*-powerpc64-linux-gnu.tar.gz 506e32d31f36fbef... 73242b3bad015561...
*-riscv64-linux-gnu-debug.tar.gz 804992da8bf986c2... 6df20f17b069d6e7...
*-riscv64-linux-gnu.tar.gz c569b966f4797bf9... 5c1546343e32be23...
*-x86_64-apple-darwin-unsigned.tar.gz 5bf07d29a4cf5831... 45eaaac17031cabe...
*-x86_64-apple-darwin-unsigned.zip c1e6904750827e33... 11570e7ceab880c1...
*-x86_64-apple-darwin.tar.gz 2f4bce63ae7e6d28... 0a99e3ce2ae852a6...
*-x86_64-linux-gnu-debug.tar.gz 07ce227b1a7b2ded... b08075132ed4d7c7...
*-x86_64-linux-gnu.tar.gz 4de446f6e7311ebf... ce5982836461f0d4...
*.tar.gz 21c94a8b5a8118c6... a8ecb843223d9445...
guix_build.log b7fef98cfbbb5d4a... 7de641c45788d77f...
guix_build.log.diff 1b59e835fbce8a0a...

Copy link
Contributor

@TheCharlatan TheCharlatan left a comment

Choose a reason for hiding this comment

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

Guix builds (aarch64)

find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
8ac09f23c01b91cd88d3f1329c0d27105f98d31cd1735bba4a0299de18c607c0  guix-build-1d2758f6f044/output/aarch64-linux-gnu/SHA256SUMS.part
94dc28c726e81bc51df3ca7dba068d74a74828b6e5162f130c7e210e4f4a2eff  guix-build-1d2758f6f044/output/aarch64-linux-gnu/bitcoin-1d2758f6f044-aarch64-linux-gnu-debug.tar.gz
101f0a64ea62eb82a060827edac75b71562628520d4d3da2dc796f854e691f89  guix-build-1d2758f6f044/output/aarch64-linux-gnu/bitcoin-1d2758f6f044-aarch64-linux-gnu.tar.gz
0d6df2ddf4f03aa42f01ddac7caf0d76a1fe5fb27193c6ba3a9db6986778763a  guix-build-1d2758f6f044/output/arm-linux-gnueabihf/SHA256SUMS.part
b472c24cb88cfedbef168a3f9b67816e124dd308c7d39b2239143808434d8c39  guix-build-1d2758f6f044/output/arm-linux-gnueabihf/bitcoin-1d2758f6f044-arm-linux-gnueabihf-debug.tar.gz
f106f4f719d4185f58f8033c6ea8d71941b5b0339fc537edfce068fb65755d29  guix-build-1d2758f6f044/output/arm-linux-gnueabihf/bitcoin-1d2758f6f044-arm-linux-gnueabihf.tar.gz
b0b4c7fea6c8f3bdb35ffe0e64c1c38ab2745e4a14e23cfbe3902a70595f4536  guix-build-1d2758f6f044/output/arm64-apple-darwin/SHA256SUMS.part
b67cb97308284fb13568b8bf64fd5d599c7707fbd4b68895537046fc2b28fd24  guix-build-1d2758f6f044/output/arm64-apple-darwin/bitcoin-1d2758f6f044-arm64-apple-darwin-unsigned.tar.gz
7d8d733037f4c944cffd8ce25797b82d1c0e5c0fd82c8f07c907115b06fba30e  guix-build-1d2758f6f044/output/arm64-apple-darwin/bitcoin-1d2758f6f044-arm64-apple-darwin-unsigned.zip
9a443b2f40856e97937a5693215cd915a623fa82e3c7e381f80b69d2cb788c75  guix-build-1d2758f6f044/output/arm64-apple-darwin/bitcoin-1d2758f6f044-arm64-apple-darwin.tar.gz
cd5e80bea3f117277f6eecfa6ae623830f4128d6ab2763b946fe847d325eaa11  guix-build-1d2758f6f044/output/dist-archive/bitcoin-1d2758f6f044.tar.gz
0f3ac55b8ccf02cb0dee58c64c74289d2909f43461874080b4d3203e3eb77ab8  guix-build-1d2758f6f044/output/powerpc64-linux-gnu/SHA256SUMS.part
b58f8844a23e7aae8b6c6bea5cfea03c9915e9ec6a38a33e7315038d588e1c01  guix-build-1d2758f6f044/output/powerpc64-linux-gnu/bitcoin-1d2758f6f044-powerpc64-linux-gnu-debug.tar.gz
57f7f0278b7666cfe8839147919139f3da01ba18374f708e37d8463eee17be45  guix-build-1d2758f6f044/output/powerpc64-linux-gnu/bitcoin-1d2758f6f044-powerpc64-linux-gnu.tar.gz
58bfa1968a4c108c19acdac5d1fca427d9368e5bf5c5ed77738aa0830bffa966  guix-build-1d2758f6f044/output/riscv64-linux-gnu/SHA256SUMS.part
15650dcc9b6c4fc3d7f299dcd9870e6f6c6ab0e84bd1a272ca049a4323d4ec01  guix-build-1d2758f6f044/output/riscv64-linux-gnu/bitcoin-1d2758f6f044-riscv64-linux-gnu-debug.tar.gz
7b199ad6f3c450e2239524ab0d45432a28abf501a9b699193a09603c02a30404  guix-build-1d2758f6f044/output/riscv64-linux-gnu/bitcoin-1d2758f6f044-riscv64-linux-gnu.tar.gz
9a518e02cea5a7ea7e1fd0e60c8ad889b02b8f65084581d69db1303b16fd7b24  guix-build-1d2758f6f044/output/x86_64-apple-darwin/SHA256SUMS.part
c97a0b3dc8bf8388558de565fa55294e9426e8f24413b52e600a01de20f3f7bf  guix-build-1d2758f6f044/output/x86_64-apple-darwin/bitcoin-1d2758f6f044-x86_64-apple-darwin-unsigned.tar.gz
d3c81025e0d680ab658d11e1961d54c43a0a1eb4217e5fe98657f69c7452e74d  guix-build-1d2758f6f044/output/x86_64-apple-darwin/bitcoin-1d2758f6f044-x86_64-apple-darwin-unsigned.zip
1e20175c07da00baa591f3dcc815c9870006acdd3682c6e1fb29655fe982c02e  guix-build-1d2758f6f044/output/x86_64-apple-darwin/bitcoin-1d2758f6f044-x86_64-apple-darwin.tar.gz
7ea638949908ce5d9bb2e9b6abb7e3fe55aaacb7975fc2e218c06eac57338d31  guix-build-1d2758f6f044/output/x86_64-linux-gnu/SHA256SUMS.part
d8b2585a3afad179badec7b171fdc4b89b7b8465a7f35ae3c810f4cd597b3981  guix-build-1d2758f6f044/output/x86_64-linux-gnu/bitcoin-1d2758f6f044-x86_64-linux-gnu-debug.tar.gz
30ded4e767b1edcdaa7e5db8b482db4ea9e03120324ea09548a2f7600c6b1659  guix-build-1d2758f6f044/output/x86_64-linux-gnu/bitcoin-1d2758f6f044-x86_64-linux-gnu.tar.gz
a38f1763c7e1ccd8f95d6a7ba54c0306d54d004cbebd013678175779153e6402  guix-build-1d2758f6f044/output/x86_64-w64-mingw32/SHA256SUMS.part
09ab1212c0d21b0abbf719ac24ab08fac529ca9cf5bfed613552a22cfe059bc6  guix-build-1d2758f6f044/output/x86_64-w64-mingw32/bitcoin-1d2758f6f044-win64-debug.zip
c50dafe56f08babac8fe46520de10d617d392314d3044c445652c16e3fa02359  guix-build-1d2758f6f044/output/x86_64-w64-mingw32/bitcoin-1d2758f6f044-win64-setup-unsigned.exe
fdd977d4a42ccd6f773aeb9bc26e143ec5442a59439e121d882eaa08d022dc36  guix-build-1d2758f6f044/output/x86_64-w64-mingw32/bitcoin-1d2758f6f044-win64-unsigned.tar.gz
dfc2c3c62b17d2ab51008df5f9331a0f48d556a1b9a672244a308c68510951f3  guix-build-1d2758f6f044/output/x86_64-w64-mingw32/bitcoin-1d2758f6f044-win64.zip

@hebasto
Copy link
Member

hebasto commented Aug 21, 2024

I don't think that enabling CET for GCC alone will work. Shouldn't binutils and glibc also be CET-enabled?

@fanquake
Copy link
Member Author

will work.

What do you mean by "work" here? This PR is just explicitly turning on one option in the compiler.

Shouldn't binutils ... also be CET-enabled?

What is a CET-enbled binutils? If you mean it supporting CET functionality, then it is new enough.

glibc also be CET-enabled?

Last time I looked, glibc will autodetect this based on the compiler (we could still enable it explictly, but it's not clear that is required).

@hebasto
Copy link
Member

hebasto commented Aug 21, 2024

will work.

What do you mean by "work" here?

By "work" I mean producing x86_64 binaries with the IBT and SHSTK markers in the .note.gnu.property section.

@hebasto
Copy link
Member

hebasto commented Aug 21, 2024

Shouldn't binutils ... also be CET-enabled?

What is a CET-enbled binutils?

Configured with --enable-cet option.

If you mean it supporting CET functionality, then it is new enough.

As for commit 7bf1d7aeaffba15c4f680f93ae88fbef25427252, Guix provides binutils versions 2.38 and 2.33.1. According to the upstream commit history, both versions support Intel CET.

@fanquake
Copy link
Member Author

fanquake commented Aug 21, 2024

Configured with --enable-cet option.

Similar to glibc, I'm pretty sure this autodetected for some time, but has has been the default behaviour for at least the last ~5 years; so I don't think we need to do anything here (further evidenced by the fact that there is no binutils such change in #30685).

@hebasto
Copy link
Member

hebasto commented Aug 21, 2024

I don't think we need to do anything here

In the current state, the statement from the PR description:

CET is enabled on Linux/x86

is not accurate.

@fanquake
Copy link
Member Author

the statement from the PR description:
is not accurate.

That text is from the GCC documentation, and in this context, of, the compiler being configured for CET, after configuring with --enable-cet, as far as I'm aware, it is accurate. If you think it isn't, can you file an issue upstream, and link it here it?

The point of this PR has never been to add any additional metadata to the binaries/make any other changes, the point is just to explictly use the hardening option when configuring our compiler (like we do with other options).

@hebasto
Copy link
Member

hebasto commented Aug 26, 2024

The point of this PR has never been to add any additional metadata to the binaries/make any other changes, the point is just to explictly use the hardening option when configuring our compiler (like we do with other options).

I see. Perhaps mention in the PR description that the resulting release binaries are not affected?

@fanquake fanquake marked this pull request as draft August 28, 2024 14:57
@fanquake fanquake force-pushed the enable_cet branch 3 times, most recently from 682154e to f76ad77 Compare September 3, 2024 09:13
@fanquake fanquake marked this pull request as ready for review September 3, 2024 09:13
@DrahtBot
Copy link
Contributor

DrahtBot commented Sep 4, 2024

Guix builds (on x86_64) [untrusted test-only build, possibly unsafe, not for production use]

File commit 9cb9651
(master)
commit ceb97e8
(master and this pull)
SHA256SUMS.part f4a2fd47833712e5... a825ff0bcb7f4d96...
*-aarch64-linux-gnu-debug.tar.gz 1627798869ce4fc4... e623f4eda03f0c44...
*-aarch64-linux-gnu.tar.gz d1cd4d3c768b53d3... 0e6391b89454ba2f...
*-arm-linux-gnueabihf-debug.tar.gz 082f7ef3ff9c7698... 5491f161cf2d8b11...
*-arm-linux-gnueabihf.tar.gz 59722e72ac220a03... cc7bc6faba57dee9...
*-arm64-apple-darwin-unsigned.tar.gz 883550fa4abc1b81... 9831eec91bc6e115...
*-arm64-apple-darwin-unsigned.zip 2eb0d0515d856ade... c62ccb791f8333ca...
*-arm64-apple-darwin.tar.gz 14e4af54519f1daa... 23c0c0d7513027a0...
*-powerpc64-linux-gnu-debug.tar.gz c21a636b6183c799... fde859b67cff31e4...
*-powerpc64-linux-gnu.tar.gz 7fb652d34f82ca40... 142cee7e851bf9db...
*-riscv64-linux-gnu-debug.tar.gz e6c6f2d6929dbbcb... 1cedee85d6a3dd71...
*-riscv64-linux-gnu.tar.gz d5c81a8b3420f113... 9dcc7890e42bdb11...
*-x86_64-apple-darwin-unsigned.tar.gz eb5c89ec2be882f3... f7ab318956ba394e...
*-x86_64-apple-darwin-unsigned.zip dd1dd44181945b36... 7650c4fb9453b3dd...
*-x86_64-apple-darwin.tar.gz 5d12ea02496af1aa... f648c2b30c78be2b...
*-x86_64-linux-gnu-debug.tar.gz 97528f1f3dfd521f... 0039834a2b4942cc...
*-x86_64-linux-gnu.tar.gz 6b27b650327df233... f1f37d2206cde451...
*.tar.gz 267e5b847e6ce416... 9c29981ee0e87bde...
guix_build.log 67cdab8226b17daa... d83c638276ecdd58...
guix_build.log.diff 6144b1985bc9c7d9...

Similar to bitcoin#29695, and in the same vein of explicitly configuring
hardening options in our release toolchain.

See https://gcc.gnu.org/install/configure.html:

> Enable building target run-time libraries with control-flow instrumentation,
> see `-fcf-protection option`. When --enable-cet is specified target
> libraries are configured to add `-fcf-protection` and, if needed,
> other target specific options to a set of building options.

> `--enable-cet=auto` is default. CET is enabled on Linux/x86 if target
> binutils supports Intel CET instructions and disabled otherwise.
> In this case, the target libraries are configured to get additional
> `-fcf-protection` option.
@fanquake
Copy link
Member Author

Guix Build:

94142f4399e6b57ae5d95364685cf545a20e1974eb3e6061e62b77af57e59a6b  guix-build-89bf11b80725/output/aarch64-linux-gnu/SHA256SUMS.part
1bbbbc9c2818eb6c87a7d7164afc61eee299d8417d986832eb0d503484994f4b  guix-build-89bf11b80725/output/aarch64-linux-gnu/bitcoin-89bf11b80725-aarch64-linux-gnu-debug.tar.gz
0601f57454694181473f03bc8ff6c6f23f6ff50f38190a9ff42bd351ff739460  guix-build-89bf11b80725/output/aarch64-linux-gnu/bitcoin-89bf11b80725-aarch64-linux-gnu.tar.gz
10ce23a32f6a21e4dd37cf770fdb20fd7e839b93093e53e54daa081e17f48a68  guix-build-89bf11b80725/output/arm-linux-gnueabihf/SHA256SUMS.part
d61682531134d253d6d6e60a2ede9aca4dd1fcbbfc5c5fe5164ccd5c22db13ea  guix-build-89bf11b80725/output/arm-linux-gnueabihf/bitcoin-89bf11b80725-arm-linux-gnueabihf-debug.tar.gz
1c7ecbe79cd08a5627c6365a40911df248b03a1c54e08657dc5cf047f8c76a25  guix-build-89bf11b80725/output/arm-linux-gnueabihf/bitcoin-89bf11b80725-arm-linux-gnueabihf.tar.gz
b03639a4c3ee52797832da2b4013f2bb5264bf27c4f3bd70b08fc83f4167520f  guix-build-89bf11b80725/output/arm64-apple-darwin/SHA256SUMS.part
e43604c72c6611386c19eb4a2bde70813938a509ccc94c040725cd93797b9e3d  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin-unsigned.tar.gz
e640e9da6b4c1fdf19216e6f3a051b03de7cc9800e08ea80452db964177dc59a  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin-unsigned.zip
08fb35f409538d588f1e68fe33a6421c65d39ebd0072ec648ebfa0a831dbfc11  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin.tar.gz
18bd25fb50f2143285102c8e7bcb158da066b634791fcb4cbb4abef4bdaed592  guix-build-89bf11b80725/output/dist-archive/bitcoin-89bf11b80725.tar.gz
432282fa224f441e681bc8f9f8c8d6d7c03f822a4ff11bf5d5d9b8e91b75f4dd  guix-build-89bf11b80725/output/powerpc64-linux-gnu/SHA256SUMS.part
fad4bef69045be2b8c976d4762143bbf8473276368dcc73109226b6e44cea76a  guix-build-89bf11b80725/output/powerpc64-linux-gnu/bitcoin-89bf11b80725-powerpc64-linux-gnu-debug.tar.gz
29a3068abdfb0a6ce6d81c8fef5fc175f7949076dade3edd0e5577b798e7f326  guix-build-89bf11b80725/output/powerpc64-linux-gnu/bitcoin-89bf11b80725-powerpc64-linux-gnu.tar.gz
e8b029a1aaefd0fec467da6a6065925d846cbc37c7cf096d071d005cf4e1dfb4  guix-build-89bf11b80725/output/riscv64-linux-gnu/SHA256SUMS.part
c127a343908811b73d5afd819d42bda87cefe597c78532f77da92e79607c57a0  guix-build-89bf11b80725/output/riscv64-linux-gnu/bitcoin-89bf11b80725-riscv64-linux-gnu-debug.tar.gz
a53290520b66e4b3d5ebf3990ba450c5e0e816dd514fa813536bc0b09e2801c2  guix-build-89bf11b80725/output/riscv64-linux-gnu/bitcoin-89bf11b80725-riscv64-linux-gnu.tar.gz
c3fa795806d453c5964a675819861be06a36c79141b9fd87f0ae4c17c4dfc652  guix-build-89bf11b80725/output/x86_64-apple-darwin/SHA256SUMS.part
e379e3ed22697de8e84676d638239af6bf6416c9369c9abb4e0ea247ff7fe8bf  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin-unsigned.tar.gz
d3eaadf70348f079a3109fabd5e916c4c317c870f9fa0e2886445f78c4e79d18  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin-unsigned.zip
2a36500084f43c73c230755d8af87bbf1f4517f85c706e8398ca10339f0673f6  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin.tar.gz
281c414f439ccb87f3e312980dc61386133dde7211d795b91c3e634c14625c6a  guix-build-89bf11b80725/output/x86_64-linux-gnu/SHA256SUMS.part
3c9fcb62c1ae11d0357fc944c41be0b8232239aec3d0450108f9b4581cbbf818  guix-build-89bf11b80725/output/x86_64-linux-gnu/bitcoin-89bf11b80725-x86_64-linux-gnu-debug.tar.gz
c80a51ec513bceb4c8f386a08b19934e0716eb997d3accb04a51901b658c27a0  guix-build-89bf11b80725/output/x86_64-linux-gnu/bitcoin-89bf11b80725-x86_64-linux-gnu.tar.gz
3cd891a700e8e52def38623d6d47e46c349ce39c9db0e97544ddd28e4e891024  guix-build-89bf11b80725/output/x86_64-w64-mingw32/SHA256SUMS.part
49354ec57dd106709122bfdd440e5b99ee9bcfc25fb0c8933c44bf90b7f7a418  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-debug.zip
7180b305665fbf6a966552df5da5d7b71747a06fabcea45e8707201dfe2a6967  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-setup-unsigned.exe
5378e21154bef8f0f01aaac1042464d6d31d3ef38107d8eb62f28e89772ba76b  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-unsigned.tar.gz
b69e7431f96a0979bec552cf3d9598d26426810e289916e44697341aef6e2fea  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64.zip

Copy link
Contributor

@TheCharlatan TheCharlatan left a comment

Choose a reason for hiding this comment

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

ACK 89bf11b

Guix build (aarch64)

94142f4399e6b57ae5d95364685cf545a20e1974eb3e6061e62b77af57e59a6b  guix-build-89bf11b80725/output/aarch64-linux-gnu/SHA256SUMS.part
1bbbbc9c2818eb6c87a7d7164afc61eee299d8417d986832eb0d503484994f4b  guix-build-89bf11b80725/output/aarch64-linux-gnu/bitcoin-89bf11b80725-aarch64-linux-gnu-debug.tar.gz
0601f57454694181473f03bc8ff6c6f23f6ff50f38190a9ff42bd351ff739460  guix-build-89bf11b80725/output/aarch64-linux-gnu/bitcoin-89bf11b80725-aarch64-linux-gnu.tar.gz
10ce23a32f6a21e4dd37cf770fdb20fd7e839b93093e53e54daa081e17f48a68  guix-build-89bf11b80725/output/arm-linux-gnueabihf/SHA256SUMS.part
d61682531134d253d6d6e60a2ede9aca4dd1fcbbfc5c5fe5164ccd5c22db13ea  guix-build-89bf11b80725/output/arm-linux-gnueabihf/bitcoin-89bf11b80725-arm-linux-gnueabihf-debug.tar.gz
1c7ecbe79cd08a5627c6365a40911df248b03a1c54e08657dc5cf047f8c76a25  guix-build-89bf11b80725/output/arm-linux-gnueabihf/bitcoin-89bf11b80725-arm-linux-gnueabihf.tar.gz
b03639a4c3ee52797832da2b4013f2bb5264bf27c4f3bd70b08fc83f4167520f  guix-build-89bf11b80725/output/arm64-apple-darwin/SHA256SUMS.part
e43604c72c6611386c19eb4a2bde70813938a509ccc94c040725cd93797b9e3d  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin-unsigned.tar.gz
e640e9da6b4c1fdf19216e6f3a051b03de7cc9800e08ea80452db964177dc59a  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin-unsigned.zip
08fb35f409538d588f1e68fe33a6421c65d39ebd0072ec648ebfa0a831dbfc11  guix-build-89bf11b80725/output/arm64-apple-darwin/bitcoin-89bf11b80725-arm64-apple-darwin.tar.gz
18bd25fb50f2143285102c8e7bcb158da066b634791fcb4cbb4abef4bdaed592  guix-build-89bf11b80725/output/dist-archive/bitcoin-89bf11b80725.tar.gz
432282fa224f441e681bc8f9f8c8d6d7c03f822a4ff11bf5d5d9b8e91b75f4dd  guix-build-89bf11b80725/output/powerpc64-linux-gnu/SHA256SUMS.part
fad4bef69045be2b8c976d4762143bbf8473276368dcc73109226b6e44cea76a  guix-build-89bf11b80725/output/powerpc64-linux-gnu/bitcoin-89bf11b80725-powerpc64-linux-gnu-debug.tar.gz
29a3068abdfb0a6ce6d81c8fef5fc175f7949076dade3edd0e5577b798e7f326  guix-build-89bf11b80725/output/powerpc64-linux-gnu/bitcoin-89bf11b80725-powerpc64-linux-gnu.tar.gz
e8b029a1aaefd0fec467da6a6065925d846cbc37c7cf096d071d005cf4e1dfb4  guix-build-89bf11b80725/output/riscv64-linux-gnu/SHA256SUMS.part
c127a343908811b73d5afd819d42bda87cefe597c78532f77da92e79607c57a0  guix-build-89bf11b80725/output/riscv64-linux-gnu/bitcoin-89bf11b80725-riscv64-linux-gnu-debug.tar.gz
a53290520b66e4b3d5ebf3990ba450c5e0e816dd514fa813536bc0b09e2801c2  guix-build-89bf11b80725/output/riscv64-linux-gnu/bitcoin-89bf11b80725-riscv64-linux-gnu.tar.gz
c3fa795806d453c5964a675819861be06a36c79141b9fd87f0ae4c17c4dfc652  guix-build-89bf11b80725/output/x86_64-apple-darwin/SHA256SUMS.part
e379e3ed22697de8e84676d638239af6bf6416c9369c9abb4e0ea247ff7fe8bf  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin-unsigned.tar.gz
d3eaadf70348f079a3109fabd5e916c4c317c870f9fa0e2886445f78c4e79d18  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin-unsigned.zip
2a36500084f43c73c230755d8af87bbf1f4517f85c706e8398ca10339f0673f6  guix-build-89bf11b80725/output/x86_64-apple-darwin/bitcoin-89bf11b80725-x86_64-apple-darwin.tar.gz
281c414f439ccb87f3e312980dc61386133dde7211d795b91c3e634c14625c6a  guix-build-89bf11b80725/output/x86_64-linux-gnu/SHA256SUMS.part
3c9fcb62c1ae11d0357fc944c41be0b8232239aec3d0450108f9b4581cbbf818  guix-build-89bf11b80725/output/x86_64-linux-gnu/bitcoin-89bf11b80725-x86_64-linux-gnu-debug.tar.gz
c80a51ec513bceb4c8f386a08b19934e0716eb997d3accb04a51901b658c27a0  guix-build-89bf11b80725/output/x86_64-linux-gnu/bitcoin-89bf11b80725-x86_64-linux-gnu.tar.gz
3cd891a700e8e52def38623d6d47e46c349ce39c9db0e97544ddd28e4e891024  guix-build-89bf11b80725/output/x86_64-w64-mingw32/SHA256SUMS.part
49354ec57dd106709122bfdd440e5b99ee9bcfc25fb0c8933c44bf90b7f7a418  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-debug.zip
7180b305665fbf6a966552df5da5d7b71747a06fabcea45e8707201dfe2a6967  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-setup-unsigned.exe
5378e21154bef8f0f01aaac1042464d6d31d3ef38107d8eb62f28e89772ba76b  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64-unsigned.tar.gz
b69e7431f96a0979bec552cf3d9598d26426810e289916e44697341aef6e2fea  guix-build-89bf11b80725/output/x86_64-w64-mingw32/bitcoin-89bf11b80725-win64.zip

@fanquake fanquake merged commit 225718e into bitcoin:master Sep 17, 2024
16 checks passed
@fanquake fanquake deleted the enable_cet branch September 17, 2024 08:47
TheCharlatan added a commit to TheCharlatan/rust-bitcoinkernel that referenced this pull request Nov 2, 2024
…47757ea3b

1047757ea3b kernel: Add pure kernel bitcoin-chainstate
c568fdf75fd kernel: Add block index utility functions to C header
0f1da1dcba5 kernel: Add function to read block undo data from disk to C header
45af559c9f6 kernel: Add functions to read block from disk to C header
2a7f8a8240c kernel: Add function for copying  block data to C header
b19f5336c03 kernel: Add functions for the block validation state to C header
9c0ffa913f4 kernel: Add validation interface to C header
a93318c6152 kernel: Add interrupt function to C header
51053f33720 kernel: Add import blocks function to C header
6b0ada2af42 kernel: Add chainstate load options for in-memory dbs in C header
34427bfa9c7 kernel: Add options for reindexing in C header
ca57311c969 kernel: Add block validation to C header
44156d84838 Kernel: Add chainstate loading to kernel C header
2cee46cdcc1 kernel: Add chainstate manager object to C header
7102c7ae45e kernel: Add notifications context option to C header
ed628a2a3c4 kerenl: Add chain params context option to C header
27643297ff7 kernel: Add kernel library context object
2ba22cf3f90 kernel: Add logging to kernel library C header
873874c03e9 kernel: Introduce initial kernel C header API
d94adc7270b Merge bitcoin/bitcoin#29702: fees: Remove CLIENT_VERSION serialization
7290bc61c00 Merge bitcoin/bitcoin#31078: build: Fix kernel static lib component install
68f29b24907 Merge bitcoin/bitcoin#31141: doc: Make list of targets in depends README consistent
e9b95665eea Merge bitcoin/bitcoin#31046: init: Some small chainstate load improvements
b8c821cc1ea Merge bitcoin/bitcoin#30724: test: add test for specifying custom pidfile via `-pid`
a0c9595810c doc: Make list of targets in depends README consistent
fa1c5cc9df1 fees: Log non-fatal errors as [warning], instead of info-level
ffe4261cb06 Merge bitcoin/bitcoin#30935: ci: Approximate MAKEJOBS in image build phase
28ce159bc32 Merge bitcoin/bitcoin#30183: rpc: net: follow-ups for #30062
684873931b3 Merge bitcoin/bitcoin#26334: Add Signet and testnet4 launch shortcuts for Windows
9b0e2598089 Merge bitcoin/bitcoin#31121: guix: Enable CET for `glibc` package
d9f8dc64534 Merge bitcoin/bitcoin#31097: validation: Improve input script check error reporting
a16917fb598 rpc, net: improve `mapped_as` doc for getrawaddrman/getpeerinfo
563c4d29268 Merge bitcoin/bitcoin#31105: Update libmultiprocess library
0e9f20625a1 Merge bitcoin/bitcoin#31063: lint: commit-script-check.sh: echo to stderr
e8f72aefd20 Merge bitcoin/bitcoin#29877: tracing: explicitly cast block_connected duration to nanoseconds
86e2a6b749c [test] A non-standard transaction which is also consensus-invalid should return the consensus error
4d3da08d1b9 guix: Enable CET for `glibc` package
a38603456e9 Merge bitcoin/bitcoin#31100: doc: remove dependency install instructions from win docs
90b405516f7 Update libmultiprocess library
479715e9db0 Merge bitcoin/bitcoin#30996: doc: update signet documentation related to build directories
99e041f86fd Merge bitcoin/bitcoin#31099: doc: drop macOS LLVM install instructions
21e2f06a1cc Merge bitcoin/bitcoin#31067: test: Print CompletedProcess object on error
184f12c1542 doc: remove dependency install instructions from win docs
dea9fb9a8b8 Merge bitcoin/bitcoin#30093: optimization: reserve memory allocation for transaction inputs/outputs
79aa8280b2e doc: drop LLVM install instructions
2123c94448e Merge bitcoin/bitcoin#30527: Bump python minimum supported version to 3.10
538ccaed004 Merge bitcoin/bitcoin#31048: build: Bump minimum supported macOS to 13.0
f859ff8a4e9 [validation] Improve script check error reporting
ddddbac9c10 fees: Pin required version to 149900
fa5126adcb1 fees: Pin "version that wrote" to 0
0ca1d1bf69c Merge bitcoin/bitcoin#31092: doc: fuzz: remove Honggfuzz NetDriver instructions
d823ba6e20b doc: fuzz: remove Honggfuzz NetDriver instructions
15563d3388e Merge bitcoin/bitcoin#30859: doc: cmake: prepend "build" to functional/test_runner.py
2ac5ba24bf0 Merge bitcoin/bitcoin#31083: doc: add doxygen for m_args in tests
a0e089a71dc build: Bump minimum supported macOS to 13.0
1fe1b3ba8e9 doc: doxygen comment for m_args usage in tests
82e16e69832 cmake: Refactor install kernel dependencies
42e62779873 build: Add static libraries to Kernel install component
e64b2f1a16e doc: cmake: prepend and explain "build/" where needed
48cf3da6360 Merge bitcoin/bitcoin#30970: build: Add missing USDT header dependency to kernel
d8b835cf18c Merge bitcoin/bitcoin#31070: contrib: fix typos in check-deps.sh
da8824ba301 Fix typos in check-deps.sh
fa43c4f93ca test: Print CompletedProcess object on error
489e5aa3a29 Merge bitcoin/bitcoin#30857: cluster mempool: extend DepGraph functionality
9f45062b9b0 Merge bitcoin/bitcoin#30937: build: scripted-diff: drop config/ subdir for bitcoin-config.h
882f736d0a6 doc: lint: correct outdated comment (s/Makefile.am/CMakeLists.txt/)
1786be7b4a5 scripted-diff: drop config/ subdir for bitcoin-config.h, rename to bitcoin-build-config.h
0c2c3bb3f5c Merge bitcoin/bitcoin#30955: Mining interface: getCoinbaseMerklePath() and submitSolution()
9909a34d794 Merge bitcoin/bitcoin#30992: doc: update IBD requirements in doc/README.md
fac6cfe5ac0 lint: commit-script-check.sh: echo to stderr
5fb94550638 Merge bitcoin/bitcoin#31058: refactor: include the proper header rather than forward-declaring RemovalReasonToString
e569eb8d917 Merge bitcoin/bitcoin#30885: scripted-diff: Modernize nLocalServices naming
31cc5006c3d init: Return fatal failure on snapshot validation failure
8f1246e8338 init: Improve chainstate init db error messages
5837e3463fe Merge bitcoin/bitcoin#30967: refactor: Replace g_genesis_wait_cv with m_tip_block_cv
ca2e4ba352c refactor: include the proper header rather than forward-declaring RemovalReasonToString
a9f6a57b691 Merge bitcoin/bitcoin#30920: test: Remove 0.16.3 test from wallet_backwards_compatibility.py
fa71bedf860 ci: Approximate MAKEJOBS in image build phase
03696bb1bd5 Merge bitcoin/bitcoin#31045: ci: Add missing -DWERROR=ON to test-each-commit
56093565bbe Merge bitcoin/bitcoin#31018: test: Treat exclude list warning as failure in CI
bb47b5a6576 Merge bitcoin/bitcoin#31038: test: Fix copy-paste in wallet/test/db_tests ostream operator
3fecf36c7b3 Merge bitcoin/bitcoin#31056: ci: Double ctest timeout
3c4a9419dbe Merge bitcoin/bitcoin#31013: depends: For mingw cross compile use -gcc-posix to prevent library conflict
5d5cc021ce3 Merge bitcoin/bitcoin#31051: test: remove unused code from `script_tests`
caf44e500eb Merge bitcoin/bitcoin#31008: depends: Print ready-to-use `--toolchain` option for CMake invocation
fa5ebc99207 ci: Double ctest timeout
0b3ec8c59b2 clusterlin: remove Cluster type
1c24c625105 clusterlin: merge two DepGraph fuzz tests into simulation test
0606e66fdbb clusterlin: add DepGraph::RemoveTransactions and support for holes in DepGraph
75b5d42419e clusterlin: make DepGraph::AddDependency support multiple dependencies at once
abf50649d13 clusterlin: simplify DepGraphFormatter::Ser
eaab55ffc81 clusterlin: rework DepGraphFormatter::Unser
5901cf7100a clusterlin: abstract out DepGraph::GetReduced{Parents,Children}
e0287bc4b2d test: remove unused code from script_tests
62e45167221 Merge bitcoin/bitcoin#31026: ci: set a ctest test timeout of 1200 (20 minutes)
cd093049dda init: Remove incorrect comment about shutdown condition
635e9f85d76 init: Remove misleading log line when user chooses not to retry
fa1cffacae6 ci: Install missing nproc in macos task
faf7a2bccc7 ci: Add missing -DWERROR=ON to test-each-commit
56aad83307e ci: set a ctest timeout of 1200 (20 minutes)
1b707146717 Merge bitcoin-core/gui#840: qt6: Handle different signatures of `QANEF::nativeEventFilter`
720ce880a35 init: Improve comment describing chainstate load retry behaviour
baea842ff18 init: Remove unneeded argument for mempool_opts checks
ec58dfe8f74 Merge bitcoin/bitcoin#31010: cmake: Avoid hardcoding Qt's major version in Find module / variable names
5fe6878b5f7 Merge bitcoin-core/gui#836: Fix display issues for IPv6 proxy setup in Options Dialog  (UI only, no functionality impact)
f50557f5d36 test: Fix copy-paste in db_tests ostream operator
5ea335a97f8 Merge bitcoin/bitcoin#30793: rpc: add getorphantxs
76e2e8aabd8 Merge bitcoin/bitcoin#31035: doc: Archive 28.0 release notes
f019fcec412 doc: Archive 28.0 release notes
80761afced1 qt6: Handle different signatures of `QANEF::nativeEventFilter`
51c698161b5 Merge bitcoin-core/gui#837: qt6: Fix linking when configured with `-DENABLE_WALLET=OFF`
4be785b3e33 Merge bitcoin-core/gui#839: qt6, test: Handle deprecated code
f117f3f7473 Merge bitcoin-core/gui#838: qt6: Handle deprecated `QLocale::nativeCountryName`
5625840c11d qt6, test: Handle deprecated `QVERIFY_EXCEPTION_THROWN`
772928a13c2 Merge bitcoin/bitcoin#30982: docs: Add instructions on how to self-sign bitcoin-core binaries for macOS
27709f51ee0 docs: Add instructions on how to self-sign bitcoin-core binaries for macOS
cfb59da4b3b Merge bitcoin/bitcoin#30980: fuzz: fix bug in p2p_headers_presync harness
dda2613239b Merge bitcoin/bitcoin#30929: log: Enforce trailing newline
e0ae9c14c4e Merge bitcoin/bitcoin#31011: refactor: move util/pcp and util/netif to common/
98c1536852d test: add getorphantxs tests
93f48fceb7d test: add tx_in_orphanage()
34a9c10e8cd rpc: add getorphantxs
f511ff3654d refactor: move verbosity parsing to rpc/util
36a6d4b0078 doc: update IBD requirements in doc/README.md
fa6d14eacb2 test: Treat exclude list warning as failure in CI
6a370435526 Merge bitcoin/bitcoin#31007: doc: add testnet4 section header for config file
70910eb2ecb Merge bitcoin/bitcoin#31016: test: add missing sync to feature_fee_estimation.py
532491faf1a net: add GetOrphanTransactions() to PeerManager
91b65adff2a refactor: add OrphanTxBase for external use
a1576edab35 test: add missing sync to feature_fee_estimation.py
ae56b3230b2 depends: For mingw cross compile use -gcc-posix to prevent library conflict
fd38711217c ci: make CI job fail when check-deps.sh script fails
d51edecddcb common: move pcp.cpp and netif.cpp files from util to common library since they depend on netaddress.cpp
61cdb1c9d83 doc: add testnet4 section header for config file
deacf3c7cd6 cmake: Avoid hardcoding Qt's major version in Find module
605926da0ab depends: Print ready-to-use `--toolchain` option for CMake invocation
fa2b7d8d6b3 Remove redundant unterminated-logprintf tidy check
bbbb2e43ee9 log: Enforce trailing newline, Remove redundant m_started_new_line
fa22e5c430a refactor: Remove dead code that assumed tip == nullptr
fa2e4439652 refactor: Replace g_genesis_wait_cv with m_tip_block_cv
fa7f52af1a4 refactor: Use wait_for predicate to check for interrupt
5ca28ef28bc refactor: Split up NodeContext shutdown_signal and shutdown_request
fad8e7fba7b bugfix: Mark m_tip_block_cv as guarded by m_tip_block_mutex
fa18586c29d refactor: Add missing GUARDED_BY(m_tip_block_mutex)
fa4c0750331 doc: Clarify waitTipChanged docs
fc642c33ef2 Merge bitcoin/bitcoin#30718: test: switch MiniWallet padding unit from weight to vsize
d7f956a309e Merge bitcoin/bitcoin#30968: init: Remove retry for loop
c33eb2360e2 Merge bitcoin/bitcoin#30043: net: Replace libnatpmp with built-in PCP+NATPMP implementation
f3c74c4a7e1 Merge bitcoin/bitcoin#30989: guix: Drop no longer needed `PATH` modification
5c7cacf649a ci: Remove natpmp build option and libnatpmp dependency
7e7ec984da5 doc: Remove mention of natpmp build options
061c3e32a26 depends: Drop natpmp and associated option from depends
20a18bf6aa3 build: Drop libnatpmp from build system
7b04709862f qt: Changes for built-in PCP+NAT-PMP
52f8ef66c61 net: Replace libnatpmp with built-in NATPMP+PCP implementation in mapport
97c97177cdb net: Add PCP and NATPMP implementation
cb750b4b405 qt6, test: Use `qWarning()` instead of `QWARN()` macro
9123a286e97 qt6: Handle deprecated `QLocale::nativeCountryName`
940edd6ac24 test: refactor: introduce and use `TRUC_CHILD_MAX_VSIZE` constant
c16ae717689 test: switch MiniWallet padding unit from weight to vsize
a647d4400d5 doc: update signet documentation related to build directories
f1daa80521e guix: Drop no longer needed `PATH` modification
d812cf11896 Merge bitcoin/bitcoin#30879: test: re-bucket long-running tests
18d4c43cab4 Merge bitcoin/bitcoin#30921: test: generalize HasReason and use it in FailFmtWithError
d7fcc91416a Merge bitcoin/bitcoin#30974: ci: Inline PACKAGE_MANAGER_INSTALL
29d00a1cee1 Merge bitcoin/bitcoin#30940: depends: Fix build with `MULTIPROCESS=1` in Guix environment
89a8e9b732f Merge bitcoin/bitcoin#30979: contrib: Update asmap link in seeds readme
fafd1a0f648 ci: Inline PACKAGE_MANAGER_INSTALL
36ad9516dbd Merge bitcoin/bitcoin#30981: ci: add timestamps to cirrus jobs
fa7c2838a5f Merge bitcoin/bitcoin#30948: test: Add missing sync_mempools() to fill_mempool()
f951f1fab25 ci: add timestamps to cirrus jobs
f158993fd55 contrib: Update asmap link in seeds readme
d5af7d28f47 Merge bitcoin/bitcoin#30976: depends, doc: Drop package-specific note about CMake
a7498cc7e26 Fix bug in p2p_headers_presync harness
4cf84b344de depends, doc: No need to specify general requirement
e13da501db9 Merge bitcoin/bitcoin#30973: doc: fix `loadtxoutset` example
513b7136c79 Merge bitcoin/bitcoin#30961: ci: add `LLVM_SYMBOLIZER_PATH` to Valgrind fuzz job
286725168ae doc: fix loadtxoutset example
525e9dcba0b Add submitSolution to BlockTemplate interface
47b4875ef05 Add getCoinbaseMerklePath() to Mining interface
63d6ad7c89c Move BlockMerkleBranch back to merkle.{h,cpp}
65f6e7078b1 Merge bitcoin/bitcoin#30510: multiprocess: Add IPC wrapper for Mining interface
da612cea032 Merge bitcoin/bitcoin#30962: validation: Disable CheckForkWarningConditions for background chainstate
e9d60af9889 refactor: Replace init retry for loop with if statement
c1d8870ea41 refactor: Move most of init retry for loop to a function
ccd10fdb97f build: Add missing USDT header dependency to kernel
781c01f5806 init: Check mempool arguments in AppInitParameterInteractions
39219fe145e Merge bitcoin/bitcoin#30946: doc: correct the zmq automatic build info
06e7e836329 doc: correct the zmq automatic build info
a9773b6215e Merge bitcoin/bitcoin#30963: doc: Adjust links in OSS-Fuzz section
fa6c1946d23 doc: Adjust links in OSS-Fuzz section
c0a0c72b4d6 validation: Disable CheckForkWarningConditions for background chainstate
c1832584bfd ci: add LLVM_SYMBOLIZER_PATH to Valgrind fuzz job
393f323bd60 Merge bitcoin/bitcoin#30952: test: Use shell builtins in run_command test case
faf801515f8 test: Add missing sync_mempools() to fill_mempool()
fa48be6f023 test: Refactor fill_mempool to extract send_batch helper
1a332817665 doc: multiprocess documentation improvements
90a5786bba4 Merge bitcoin/bitcoin#30678: wallet: Write best block to disk before backup
d043950ba24 multiprocess: Add serialization code for BlockValidationState
33c2eee285e multiprocess: Add IPC wrapper for Mining interface
06882f84017 multiprocess: Add serialization code for vector<char>
095286f790a multiprocess: Add serialization code for CTransaction
69dfeb18761 multiprocess: update common-types.h to use C++20 concepts
206c6e78eec build: Make bitcoin_ipc_test depend on bitcoin_ipc
070e6a32d5f depends: Update libmultiprocess library for cmake headers target
dabc74e86c3 Merge bitcoin/bitcoin#30409: Introduce waitTipChanged() mining interface, replace RPCNotifyBlockChange, drop CRPCSignals & g_best_block
7bd3ee62f6d test: Use shell builtins in run_command test case
f5a2000579b test: re-bucket long-running tests
06b4c339e89 depends: Fix reproducibility when building with `MULTIPROCESS=1`
04e4d52420a test: add test for specifying custom pidfile via `-pid`
b832ffe0446 refactor: introduce default pid file name constant in tests
d8e3afc3352 depends: Fix build with `MULTIPROCESS=1` in Guix environment
f20fe33e94c test: Add basic balance coverage to wallet_assumeutxo.py
d72df63d169 net: Use GetLocalAddresses in Discover
e02030432b7 net: Add netif utility
754e4254388 crypto: Add missing WriteBE16 function
33adc7521cc Merge bitcoin/bitcoin#30765: refactor: Allow `CScript`'s `operator<<` to accept spans, not just vectors
0894748316c Merge bitcoin/bitcoin#30918: fuzz: Add check in `p2p_headers_presync` that chain work never exceeds minimum work
f57a6754ed6 Merge bitcoin/bitcoin#30826: fuzz: reduce number of iterations in `crypto_aeadchacha20poly1305` target
48c20dbd86c Merge bitcoin/bitcoin#30794: interpreter: use int32_t instead of int type for risczero compile
4148e60909e Merge bitcoin/bitcoin#30679: fix: handle invalid `-rpcbind` port earlier
a8a2628b7a9 Merge bitcoin/bitcoin#30828: interfaces: #30697 follow ups
0d81b3ddedc Merge bitcoin/bitcoin#30568: addrman: change internal id counting to int64_t
c985a34b9c3 Merge bitcoin/bitcoin#26990: cli: Improve error message on multiwallet cli-side commands
037b101e808 test: Add coverage for best block locator write in wallet_backup
31c0df03890 wallet: migration, write best locator before unloading wallet
7e3dbe4180c wallet: Write best block to disk before backup
79f20fa1b1e Merge bitcoin/bitcoin#30561: refactor: move `SignSignature` helpers to test utils
284bd17309a add check that chainwork doesn't exceed minimum work
9aa5d1c3fcd add clarification in comment
197aa249551 Merge bitcoin/bitcoin#30856: build: drop obj/ subdirectory for generated build.h
7025942687f build: drop superfluous `HAVE_BUILD_INFO` define
0dd662510c5 build: drop obj/ subdir for generated build.h, rename to bitcoin-build-info.h
84cd6478c42 Merge bitcoin/bitcoin#30927: Follow-up after AutoFile position caching: remove unused code
caac06f784c streams: reorder/document functions
67a3d590768 streams: remove unused code
2db926f49c8 Merge bitcoin/bitcoin#30889: log: Use ConstevalFormatString
fee4cba4847 gui: Fix proxy details display in Options Dialog
9ba56884f62 Merge bitcoin/bitcoin#30869: ci: Print inner env, Make ccache config more flexible
6c3c619b35c test: generalize HasReason and use it in FailFmtWithError
ab0b5706b25 Merge bitcoin/bitcoin#30875: doc: fixed inconsistencies in documentation between autotools to cmake change
fd08fded63a Merge bitcoin/bitcoin#30639: ci: Use clang-19 in msan tasks
5be34bacf6d qt: Fix linking when configured with `-DENABLE_WALLET=OFF`
a9964c04447 doc: Updating docs from autotools to cmake
fae44c83da9 test: Remove 0.16.3 test from wallet_backwards_compatibility.py
69409bc6e55 Merge bitcoin/bitcoin#30908: doc: remove Eclipser fuzzing documentation
6b97882ab53 Merge bitcoin/bitcoin#30915: ci: Use `ninja` to build in macOS native CI job
e6994efe08b fix: increase rpcbind check robustness
d38e3aed89e fix: handle invalid rpcbind port earlier
83b67f2e6d5 refactor: move host/port checking
73c243965ab test: add tests for invalid rpcbind ports
54227e681a4 rpc, cli: improve error message on multiwallet mode
735436df8ce Remove outdated Eclipser fuzzing documentation
ccccb67851b ci: Use clang-19 in msan tasks
facbcd4cef8 log: Use ConstevalFormatString
d01b85bfecb ci: Use `ninja` to build in macOS native CI job
6fc46927971 Merge bitcoin/bitcoin#29624: doc: update NeedsRedownload() and nStatus comment
2a0949f0977 Merge bitcoin/bitcoin#30888: build: optimize .h generation in GenerateHeaderFrom{Raw,Json}.cmake
bdbc90f29ac Merge bitcoin/bitcoin#30902: Remove Autotools packages from CI (and depends doc)
a95e742b692 Merge bitcoin/bitcoin#30913: ci: Use macos-14 GHA image (x86_64-apple-darwin22.6.0 -> arm64-apple-darwin23.6.0)
225718eda89 Merge bitcoin/bitcoin#30438: guix: (explicitly) build Linux GCC with `--enable-cet`
fab932b4211 ci: Remove incorrectly hardcoded HOST in mac_native task
af9f9878934 doc: update NeedsRedownload() comment
fa8f35d7865 ci: Use macos-14 GHA image
7942951e3fc Remove unused g_best_block
e3a560ca68d rpc: use waitTipChanged for longpoll
460687a09c2 Remove unused CRPCSignals
dca923150e3 Replace RPCNotifyBlockChange with waitTipChanged()
2a40ee11219 rpc: check for negative timeout arg in waitfor*
de7c855b3af rpc: recommend -rpcclienttimeout=0 for waitfor*
77ec072925a rpc: fix waitfornewblock description
285fe9fb51c rpc: add test for waitforblock and waitfornewblock
b94b27cf05c Add waitTipChanged to Mining interface
7eccdaf1608 node: Track last block that received a blockTip notification
ebb8215f236 Rename getTipHash() to getTip() and return BlockRef
89a8f74bbbb refactor: rename BlockKey to BlockRef
9f1aa88d4d9 Merge bitcoin/bitcoin#30884: streams: cache file position within AutoFile
06329eb1348 Merge bitcoin/bitcoin#29436: net: call `Select` with reachable networks in `ThreadOpenConnections`
e983ed41d9f Merge bitcoin/bitcoin#30410: rpc, rest: Improve block rpc error handling, check header before attempting to read block data.
fce9e065c16 Merge bitcoin/bitcoin#28358: Drop -dbcache limit
8d000b85dd4 Merge bitcoin/bitcoin#30868: refactor: add clang-tidy `modernize-use-starts-ends-with` check
3f66642820b Merge bitcoin/bitcoin#30440: Have createNewBlock() return a BlockTemplate interface
2bf721e76a5 Merge bitcoin/bitcoin#30661: fuzz: Test headers pre-sync through p2p
c38e9993de7 Merge bitcoin/bitcoin#30286: cluster mempool: optimized candidate search
fa99e4521b6 ci: Allow CCACHE_DIR bind mount
37679b856ce Merge bitcoin/bitcoin#30899: qt: Translations update
fc7b507e9a5 tidy: add clang-tidy `modernize-use-starts-ends-with` check
7a8a6a06676 doc: Fix comment in `contrib/devtools/check-deps.sh` script
712d105e093 depends, doc: Do not install Autotools packages
b786449e663 ci: Do not install Autotools packages
a240e150e83 streams: remove AutoFile::Get() entirely
ae052957614 qt: Translations update
6a1aa510e31 rpc: check block index before reading block / undo data
6cbf2e5f819 rpc: Improve gettxoutproof error when only header is available.
69fc867ea19 test: add coverage to getblock and getblockstats
5290cbd5850 rpc: Improve getblock / getblockstats error when only header is available.
e5b537bbdfb rest: improve error when only header of a block is available.
e624a9bef16 streams: cache file position within AutoFile
89bf11b8072 guix: build Linux GCC with --enable-cet
a93c171faa7 Drop unneeded nullptr check from CreateNewBlock()
dd87b6dff35 Have createNewBlock return BlockTemplate interface
fae9b60c4ff test: Use LogPrintStr to test m_log_sourcelocations
33381ea530a scripted-diff: Modernize nLocalServices to m_local_services
2a581144f28 build: Minimize I/O operations in GenerateHeaderFromJson.cmake
aa003d1568b build: Minimize I/O operations in GenerateHeaderFromRaw.cmake
9ad2fe7e69e clusterlin: only start/use search when enough iterations left
bd044356edb clusterlin: improve heuristic to decide split transaction (optimization)
71f26293988 clusterlin: include topological pot subsets automatically (optimization)
e20fda77a2d clusterlin: reduce computation of unnecessary pot sets (optimization)
6060a948caf clusterlin bench: add example hard cluster benchmarks
2965fbf203f clusterlin: track upper bound potential set for work items (optimization)
9e43e4ce109 clusterlin: use feerate-sorted depgraph in SearchCandidateFinder
b80e6dfe780 clusterlin: add reordering support for DepGraph
85a285a3061 clusterlin: separate initial search entries per component (optimization)
e4faea9ca79 clusterlin bench: have low/high iter benchmarks instead of per-iter
fa39b1ca638 doc: move-only logging warning
fa252da0b9c ci: Remove hardcoded CCACHE_DIR in cirrus
fa146904e19 ci: Bump default CCACHE_MAXSIZE to 500M
aaaa7cf8bad cirrus: Drop CCACHE_NOHASHDIR
fa7ca182a9b ci: Print inner env
84663291275 chain: simplify `deleteRwSettings` code and improve it's doc
f8d91f49c70 chain: dont check for null settings value in `overwriteRwSetting`
df601993f2d chain: ensure `updateRwSetting` doesn't update to a null settings
5e190cd11f6 Replace CScript _hex_v_u8 appends with _hex
cac846c2fbf Allow CScript's operator<< to accept spans, not just vectors
c78d8ff4cb8 prevector: avoid GCC bogus warnings in insert method
e4e3b44e9cc net: call `Select` with reachable networks in `ThreadOpenConnections`
829becd990b addrman: change `Select` to support multiple networks
f698636ec86 net: add `All()` in `ReachableNets`
a97f43d63a6 fuzz: Add harness for p2p headers sync
c8e2eeeffb4 chain: uniformly use `SettingsAction` enum in settings methods
f482d0e366a fuzz: reduce number of iterations in `crypto_aeadchacha20poly1305` target
1e9e735670f chain: move new settings safely in `overwriteRwSetting`
1c409004c80 test: remove wallet context from `write_wallet_settings_concurrently`
58499b00d0a refactor: move `SignSignature` helpers to test utils
cd0edf26c07 tracing: cast block_connected duration to nanoseconds
cfd03de965a Add Testnet4 launch shortcut for Windows
77b2923f871 Add Signet launch shortcut for Windows
bc52cda1f3c fix use int32_t instead of int type for risczero compile with (-march=rv32i, -mabi=ilp32)
a0eaa4749fe Add FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION in PoW check
a3f6f5acd89 build: Automatically define FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION for fuzz builds
0c02d4b2bdb net_processing: Make MAX_HEADERS_RESULTS a PeerManager option
51f7668d31e addrman: change nid_type from int to int64_t
051ba3290e3 addrman, refactor: introduce user-defined type for internal nId
bdad0243be8 rpc, net: getrawaddrman "mapped_as" follow-ups
fa1b139d17d Bump python minimum supported version to 3.10
ec585f11c38 Reserve space for transaction inputs in CreateTransactionInternal
c76aaaf9003 Reserve space for transaction outputs in CreateTransactionInternal
bb3b980dfd9 validation: drop maximum -dbcache
REVERT: e70e527ef21 kernel: Add pure kernel bitcoin-chainstate
REVERT: ed9a8a54d3c kernel: Add block index utility functions to C header
REVERT: 6338dd45b55 kernel: Add function to read block undo data from disk to C header
REVERT: a2ac0c1e7c9 kernel: Add functions to read block from disk to C header
REVERT: 170060c3372 kernel: Add function for copying  block data to C header
REVERT: 0f8c00bba07 kernel: Add functions for the block validation state to C header
REVERT: 41dba7d2603 kernel: Add validation interface to C header
REVERT: 877cf01f22c kernel: Add interrupt function to C header
REVERT: f77c2b90422 kernel: Add import blocks function to C header
REVERT: 254e17dbeab kernel: Add chainstate load options for in-memory dbs in C header
REVERT: 8baa06d318f kernel: Add options for reindexing in C header
REVERT: 0243ed8a200 kernel: Add block validation to C header
REVERT: 36fbab87e9e Kernel: Add chainstate loading to kernel C header
REVERT: b249e93f295 kernel: Add chainstate manager object to C header
REVERT: 2546745a393 kernel: Add notifications context option to C header
REVERT: 2578746e87f kerenl: Add chain params context option to C header
REVERT: 21107de0ca7 kernel: Add kernel library context object
REVERT: 83cc65c4911 kernel: Add logging to kernel library C header
REVERT: 2f47169f91e kernel: Introduce initial kernel C header API

git-subtree-dir: libbitcoinkernel-sys/bitcoin
git-subtree-split: 1047757ea3b4b78b51d7338ea44e2123851143fe
kwvg added a commit to kwvg/dash that referenced this pull request Nov 4, 2024
kwvg added a commit to kwvg/dash that referenced this pull request Nov 5, 2024
kwvg added a commit to kwvg/dash that referenced this pull request Nov 10, 2024
PastaPastaPasta added a commit to dashpay/dash that referenced this pull request Nov 12, 2024
, bitcoin#28786, bitcoin#29078, bitcoin#27897, bitcoin#29651, bitcoin#29695, bitcoin#29673, bitcoin#29828, bitcoin#29846, bitcoin#30231, bitcoin#30438, partial bitcoin#30511 (guix backports: part 5)

91b7ef8 merge bitcoin#30438: build Linux GCC with --enable-cet (Kittywhiskers Van Gogh)
cfc6cba partial bitcoin#30511: GCC 12 consolidation (Kittywhiskers Van Gogh)
06f5431 merge bitcoin#30231: bump time-machine to f0bb724211872cd6158fce6162e0b8c73efed126 (Kittywhiskers Van Gogh)
5b292ee merge bitcoin#29846: replace GCC unaligned VMOV patch with binutils patch (Kittywhiskers Van Gogh)
4d1f7dc merge bitcoin#29828: remove `gcc-toolchain static` from Windows build (Kittywhiskers Van Gogh)
f321d3d merge bitcoin#29673: use GCC 11 in macOS build env (Kittywhiskers Van Gogh)
d570e2d merge bitcoin#29695: build GCC with --enable-standard-branch-protection (Kittywhiskers Van Gogh)
c965943 merge bitcoin#29651: bump time-machine to dc4842797bfdc5f9f3f5f725bf189c2b68bd6b5a (Kittywhiskers Van Gogh)
59a125a merge bitcoin#27897: use GCC 12.3.0 to build releases (Kittywhiskers Van Gogh)
a701b06 merge bitcoin#29078: Bump guix time-machine to unlock riscv64 metal (Kittywhiskers Van Gogh)
d4b10a3 merge bitcoin#28786: switch to 6.1 kernel headers over 5.15 (Kittywhiskers Van Gogh)
c371870 merge bitcoin#28580: update time-machine (Kittywhiskers Van Gogh)
d36c9b6 merge bitcoin#28759: update signapple to latest master (Kittywhiskers Van Gogh)
38c71d8 merge bitcoin#28370: remove GCC 10 workaround from NSIS (Kittywhiskers Van Gogh)

Pull request description:

  ## Additional Information

  * Dependent on #6382
  * Dependency for #6384

  ## Breaking Changes

  None expected

  ## Checklist

  - [x] I have performed a self-review of my own code
  - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)**
  - [x] I have added or updated relevant unit/integration/functional/e2e tests **(note: N/A)**
  - [x] I have made corresponding changes to the documentation **(note: N/A)**
  - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_

ACKs for top commit:
  UdjinM6:
    utACK 91b7ef8

Tree-SHA512: 0cfb436a430cf4b624a48a9928ecac9cd5c50e88e51ed04e7d1d0100968af8be1183364f035ac75153781a5e1616aa2f6fadabf0a1c03ec4b66dedea544b77ad
knst added a commit to knst/dash that referenced this pull request Dec 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants