Skip to content

Commit 37c4d37

Browse files
committed
Merge #266: Sync with the main repo
Pull request description: Sync with the main repo up to bitcoin/bitcoin@73966f7 The reason for this sync is to bring in the functionality of bitcoin-core/gui#603 GUIX hashes: ``` 9465f358e218b9aaf0ee0f22da821544d65fe8b500d33c9719221b90ae9c913f guix-build-976c90d2a30e/output/aarch64-linux-gnu/SHA256SUMS.part ed9aa8fa7e16f3949e73b253d35cdba8c7fc7ee338080ab91f5e90af0dce57d7 guix-build-976c90d2a30e/output/aarch64-linux-gnu/bitcoin-976c90d2a30e-aarch64-linux-gnu-debug.tar.gz 6ce2cba039f1924cd5084ddc07a5d3681b1d4f39733fd6ed10921868ce7f53d1 guix-build-976c90d2a30e/output/aarch64-linux-gnu/bitcoin-976c90d2a30e-aarch64-linux-gnu.tar.gz 6f82a95a6f7954c12fa0f4b7b5cd2b0047beb8e750881b6d4c1223b6cccbfbc6 guix-build-976c90d2a30e/output/arm-linux-gnueabihf/SHA256SUMS.part 573785f291f7ce1cd9c442ca6ff48e2904abeb958f07298fec209531bcd5f475 guix-build-976c90d2a30e/output/arm-linux-gnueabihf/bitcoin-976c90d2a30e-arm-linux-gnueabihf-debug.tar.gz de7724db4746ad0b98f756bef279ca41a8012db36bcd146277d7073ab8ed2f9b guix-build-976c90d2a30e/output/arm-linux-gnueabihf/bitcoin-976c90d2a30e-arm-linux-gnueabihf.tar.gz 49eef5983005d5c92d972217bea655ee93ea33eee61f52cf49b379ed7fd35657 guix-build-976c90d2a30e/output/arm64-apple-darwin/SHA256SUMS.part d7a57e99853531f9f2be7585037e427f402ff26c47ccdb42cf46542fbf2a398e guix-build-976c90d2a30e/output/arm64-apple-darwin/bitcoin-976c90d2a30e-arm64-apple-darwin-unsigned.dmg 81da57a349eb125ba1cd780abf288345d7f8b964248d3b95554e502f9a47d09f guix-build-976c90d2a30e/output/arm64-apple-darwin/bitcoin-976c90d2a30e-arm64-apple-darwin-unsigned.tar.gz b0a098804b53cd4d0486c6ad4c734b711ec749e351beb3d857f4991eddc5df9b guix-build-976c90d2a30e/output/arm64-apple-darwin/bitcoin-976c90d2a30e-arm64-apple-darwin.tar.gz 2c8615626209ed30dd9ba60c4e99c3c4b942a6320d580d6b15aedf5e48f57ed0 guix-build-976c90d2a30e/output/dist-archive/bitcoin-976c90d2a30e.tar.gz f194eec851e22ea42b4cc6dcce87e97d8d0cb43b07567be08c20f20e8457a9eb guix-build-976c90d2a30e/output/powerpc64-linux-gnu/SHA256SUMS.part 23c59be25fee80147b9c9f4fa4c42407478f0528f4b965014fbc1c713baf1f28 guix-build-976c90d2a30e/output/powerpc64-linux-gnu/bitcoin-976c90d2a30e-powerpc64-linux-gnu-debug.tar.gz edd5c26e2d01baa1f09939e4568e6c21d21182496a8e59292d02475c812bcbef guix-build-976c90d2a30e/output/powerpc64-linux-gnu/bitcoin-976c90d2a30e-powerpc64-linux-gnu.tar.gz 5b5160d98dbfb2bb0a6b83f03b2f6d7b63994902a1a9be604e6c8f52be1dfe37 guix-build-976c90d2a30e/output/powerpc64le-linux-gnu/SHA256SUMS.part fea6e0b10079152d99a4afc2f81b2cb629a710dca125f562312fd86dc0a4c5d2 guix-build-976c90d2a30e/output/powerpc64le-linux-gnu/bitcoin-976c90d2a30e-powerpc64le-linux-gnu-debug.tar.gz 3f3eb482f23ce7adda9dbdccdbd4e94d1b90fcfd447b5daa3b8455902f444114 guix-build-976c90d2a30e/output/powerpc64le-linux-gnu/bitcoin-976c90d2a30e-powerpc64le-linux-gnu.tar.gz d0190698eb3f9d84a49f2b97845167a335fb613220932c53b2ccdadf8df8d3bc guix-build-976c90d2a30e/output/riscv64-linux-gnu/SHA256SUMS.part 73e805dfb7d5dbdeea42cef92ea7f0f0788fa08b08925b11c98ac4247277d0d5 guix-build-976c90d2a30e/output/riscv64-linux-gnu/bitcoin-976c90d2a30e-riscv64-linux-gnu-debug.tar.gz 66ef93b3b2248c5a1fc114cfae2a8f8204848599f658441801c99487dcda9b58 guix-build-976c90d2a30e/output/riscv64-linux-gnu/bitcoin-976c90d2a30e-riscv64-linux-gnu.tar.gz 8a62135277c3b78523c02e0118b69b68e47544cf75eb7e1f81300a8724faef2f guix-build-976c90d2a30e/output/x86_64-apple-darwin/SHA256SUMS.part 163538730911593d3a3cdfc2416384d51d34bf9fbb597b516ea943ddfbe2142b guix-build-976c90d2a30e/output/x86_64-apple-darwin/bitcoin-976c90d2a30e-x86_64-apple-darwin-unsigned.dmg 7765a42cf56a80caeb0186509030792f2c0b28aad8926d951f5e1fafe726cda7 guix-build-976c90d2a30e/output/x86_64-apple-darwin/bitcoin-976c90d2a30e-x86_64-apple-darwin-unsigned.tar.gz f469b7c4f6c51fea30554444eaa6fc818d31e651dbda60950cc9b900e5cecae7 guix-build-976c90d2a30e/output/x86_64-apple-darwin/bitcoin-976c90d2a30e-x86_64-apple-darwin.tar.gz fe591d3d4e04c3537974cad6ee84f057c7e48145c32b8645eba266b0d7cb0b3f guix-build-976c90d2a30e/output/x86_64-linux-gnu/SHA256SUMS.part f66091ae7e6b1ebaa7d1ef95ed9b716d2d87687a15bc9379323e6fb4592257cd guix-build-976c90d2a30e/output/x86_64-linux-gnu/bitcoin-976c90d2a30e-x86_64-linux-gnu-debug.tar.gz aa4982f2e330c90d22dc3143892a36d8fb45f7db572d18c503f5b71cf743cb2a guix-build-976c90d2a30e/output/x86_64-linux-gnu/bitcoin-976c90d2a30e-x86_64-linux-gnu.tar.gz 32efeed9488e428ebfa5cb1e145905a43943af7e6a302cb48b85be185d24f2eb guix-build-976c90d2a30e/output/x86_64-w64-mingw32/SHA256SUMS.part 1eabfd2372de89411bd9ba72bfa004857b5414eed65c08e8435245b91ae22f8a guix-build-976c90d2a30e/output/x86_64-w64-mingw32/bitcoin-976c90d2a30e-win64-debug.zip 5a6c153b9258576e1f01892a4856ea29857a5b176e5762a765432bf721e1430f guix-build-976c90d2a30e/output/x86_64-w64-mingw32/bitcoin-976c90d2a30e-win64-setup-unsigned.exe 94de454274fd35e5b7ff99f42092ce43b7050e396eaae18335e80a5fbec58cad guix-build-976c90d2a30e/output/x86_64-w64-mingw32/bitcoin-976c90d2a30e-win64-unsigned.tar.gz 1a438e20c241af3ac5ea57e742e4e96d7f80c065734520e1178820fbe19aff1f guix-build-976c90d2a30e/output/x86_64-w64-mingw32/bitcoin-976c90d2a30e-win64.zip ``` [![Windows](https://img.shields.io/badge/OS-Windows-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/win64/insecure_win_gui.zip?branch=pull/266) [![Intel macOS](https://img.shields.io/badge/OS-Intel%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos/insecure_mac_gui.zip?branch=pull/266) [![Apple Silicon macOS](https://img.shields.io/badge/OS-Apple%20Silicon%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos_arm64/insecure_mac_arm64_gui.zip?branch=pull/266) [![ARM64 Android](https://img.shields.io/badge/OS-Android-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/android/insecure_android_apk.zip?branch=pull/266) ACKs for top commit: hebasto: ACK 976c90d, I've synced locally and got zero diff. Tree-SHA512: 4c7e95ab8a42ff6cfb2481574b4eb6bee8036ff6ca52c3a0cc1004fcadb1bba06c61c7d27c47dc03dc2fd5715314881edb57421ea2681191e48bbcbc5d8b30db
2 parents b29d499 + 976c90d commit 37c4d37

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+3512
-563
lines changed

ci/README.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ Be aware that the tests will be built and run in-place, so please run at your ow
88
If the repository is not a fresh git clone, you might have to clean files from previous builds or test runs first.
99

1010
The ci needs to perform various sysadmin tasks such as installing packages or writing to the user's home directory.
11-
While most of the actions are done inside a docker container, this is not possible for all. Thus, cache directories,
12-
such as the depends cache, previous release binaries, or ccache, are mounted as read-write into the docker container. While it should be fine to run
11+
While it should be fine to run
1312
the ci system locally on you development box, the ci scripts can generally be assumed to have received less review and
1413
testing compared to other parts of the codebase. If you want to keep the work tree clean, you might want to run the ci
1514
system in a virtual machine with a Linux operating system of your choice.

ci/test/00_setup_env.sh

+4-3
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@ export LC_ALL=C.UTF-8
88

99
# The root dir.
1010
# The ci system copies this folder.
11-
# This is where the depends build is done.
1211
BASE_ROOT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../ >/dev/null 2>&1 && pwd )
1312
export BASE_ROOT_DIR
1413
# The depends dir.
15-
# This folder exists on the ci host and ci guest. Changes are propagated back and forth.
14+
# This folder exists only on the ci guest, and on the ci host as a volume.
1615
export DEPENDS_DIR=${DEPENDS_DIR:-$BASE_ROOT_DIR/depends}
1716
# A folder for the ci system to put temporary files (ccache, datadirs for tests, ...)
1817
# This folder only exists on the ci host.
@@ -58,12 +57,14 @@ export CCACHE_SIZE=${CCACHE_SIZE:-100M}
5857
export CCACHE_TEMPDIR=${CCACHE_TEMPDIR:-/tmp/.ccache-temp}
5958
export CCACHE_COMPRESS=${CCACHE_COMPRESS:-1}
6059
# The cache dir.
61-
# This folder exists on the ci host and ci guest. Changes are propagated back and forth.
60+
# This folder exists only on the ci guest, and on the ci host as a volume.
6261
export CCACHE_DIR=${CCACHE_DIR:-$BASE_SCRATCH_DIR/.ccache}
6362
# Folder where the build result is put (bin and lib).
6463
export BASE_OUTDIR=${BASE_OUTDIR:-$BASE_SCRATCH_DIR/out/$HOST}
6564
# Folder where the build is done (dist and out-of-tree build).
6665
export BASE_BUILD_DIR=${BASE_BUILD_DIR:-$BASE_SCRATCH_DIR/build}
66+
# The folder for previous release binaries.
67+
# This folder exists only on the ci guest, and on the ci host as a volume.
6768
export PREVIOUS_RELEASES_DIR=${PREVIOUS_RELEASES_DIR:-$BASE_ROOT_DIR/releases/$HOST}
6869
export SDK_URL=${SDK_URL:-https://bitcoincore.org/depends-sources/sdks}
6970
export CI_BASE_PACKAGES=${CI_BASE_PACKAGES:-build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git procps bison}

ci/test/04_install.sh

+6-3
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
3939
--build-arg "FILE_ENV=${FILE_ENV}" \
4040
--tag="${CONTAINER_NAME}" \
4141
"${BASE_ROOT_DIR}"
42+
docker volume create "${CONTAINER_NAME}_ccache" || true
43+
docker volume create "${CONTAINER_NAME}_depends" || true
44+
docker volume create "${CONTAINER_NAME}_previous_releases" || true
4245

4346
if [ -n "${RESTART_CI_DOCKER_BEFORE_RUN}" ] ; then
4447
echo "Restart docker before run to stop and clear all containers started with --rm"
@@ -48,9 +51,9 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
4851
# shellcheck disable=SC2086
4952
CI_CONTAINER_ID=$(docker run $CI_CONTAINER_CAP --rm --interactive --detach --tty \
5053
--mount type=bind,src=$BASE_ROOT_DIR,dst=/ro_base,readonly \
51-
--mount type=bind,src=$CCACHE_DIR,dst=$CCACHE_DIR \
52-
--mount type=bind,src=$DEPENDS_DIR,dst=$DEPENDS_DIR \
53-
--mount type=bind,src=$PREVIOUS_RELEASES_DIR,dst=$PREVIOUS_RELEASES_DIR \
54+
--mount "type=volume,src=${CONTAINER_NAME}_ccache,dst=$CCACHE_DIR" \
55+
--mount "type=volume,src=${CONTAINER_NAME}_depends,dst=$DEPENDS_DIR" \
56+
--mount "type=volume,src=${CONTAINER_NAME}_previous_releases,dst=$PREVIOUS_RELEASES_DIR" \
5457
-w $BASE_ROOT_DIR \
5558
--env-file /tmp/env \
5659
--name $CONTAINER_NAME \

configure.ac

+5-4
Original file line numberDiff line numberDiff line change
@@ -1418,14 +1418,15 @@ if test "$use_upnp" != "no"; then
14181418
[AC_CHECK_LIB([miniupnpc], [upnpDiscover], [MINIUPNPC_LIBS="$MINIUPNPC_LIBS -lminiupnpc"], [have_miniupnpc=no], [$MINIUPNPC_LIBS])],
14191419
[have_miniupnpc=no]
14201420
)
1421-
dnl The minimum supported miniUPnPc API version is set to 10. This keeps compatibility
1422-
dnl with Ubuntu 16.04 LTS and Debian 8 libminiupnpc-dev packages.
1421+
1422+
dnl The minimum supported miniUPnPc API version is set to 17. This excludes
1423+
dnl versions with known vulnerabilities.
14231424
if test "$have_miniupnpc" != "no"; then
14241425
AC_MSG_CHECKING([whether miniUPnPc API version is supported])
14251426
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
14261427
@%:@include <miniupnpc/miniupnpc.h>
14271428
]], [[
1428-
#if MINIUPNPC_API_VERSION >= 10
1429+
#if MINIUPNPC_API_VERSION >= 17
14291430
// Everything is okay
14301431
#else
14311432
# error miniUPnPc API version is too old
@@ -1434,7 +1435,7 @@ if test "$use_upnp" != "no"; then
14341435
AC_MSG_RESULT([yes])
14351436
],[
14361437
AC_MSG_RESULT([no])
1437-
AC_MSG_WARN([miniUPnPc API version < 10 is unsupported, disabling UPnP support.])
1438+
AC_MSG_WARN([miniUPnPc API version < 17 is unsupported, disabling UPnP support.])
14381439
have_miniupnpc=no
14391440
])
14401441
fi

contrib/verify-commits/allow-revsig-commits

+175
Original file line numberDiff line numberDiff line change
@@ -643,3 +643,178 @@ b7365f0545b1a6862e3277b2b2139ee0d5aee1cf
643643
4bd0e9b90a39c5c6a016b83882ae44cb4d28f1f8
644644
7438ceac716fdfe6621728c05e718eaa89dd89aa
645645
4e3efd47e0d50c6cd1dc81ccc9669a5b2658f495
646+
5ab6a942764bf6577ae311f2551153dde3d4830c
647+
b04f42efe31e23e15cc945efe0de906ed2eadb2b
648+
ceae0eb7e31f9d3495a13a23df7372e5e870b572
649+
5bf65ec66e5986c9188e3f6234f1c5c0f8dc7f90
650+
55c9e2d790fa2e137ccd0d91e6cf3e2d0bff4813
651+
ba29911e21c88f49780c6c87f94ff8ed6e764a9d
652+
fffff0abb9c71f0af83a7925db3c293b3bb12158
653+
aaeb315ff0f7956449a92736160795f0140369e3
654+
0dd34773334c7f4db7b05df30ee61b011795b46d
655+
2598720d6c1ef15288045599de7e65f8707d09bc
656+
bc83710fdcc09d8e427e77457df107acc9db1be5
657+
ddd7a39aa960ee3639ef1e59b2e53852e0862c52
658+
0808c88d7bd992d5c9ded0009c9563f6177b4035
659+
a085a554913ae8f4ed83afac830ce6dc39c9cc65
660+
b1a824dd06aa58618947783edee2dd891b5204dc
661+
a4e066af8573dcefb11dff120e1c09e8cf7f40c2
662+
58b9d6cf9e9b801be9c677a3ae121e5d2950ce66
663+
7377ed778c6d832ecd291e65b2789af7bac2ae2b
664+
c3a41ad980cc5149de3f9ec8414962c183b1fed9
665+
5884a47c367f6ff1aff3ae1ef6894881c5a5e0b7
666+
1d39c9ca0672e7ad4c1f0959f9d58d2fcc7dc46b
667+
e16f6441044fc2123e0cbdcbd8a5842ec3aae7a0
668+
6c6cc7989cac79450bf83b932ca82d390a37e17b
669+
bc28ca3afb7f6656a0bf50038a5e383ee7f9b219
670+
57a491bee17af88f75c2cea8c109d93b1cdbc9a8
671+
f8586b25f6a4f1e30a54e58f45dd28aaf580bbc6
672+
e5df0ba0d97e5f8cfd748f09d6ed77b7bfc45471
673+
1b0469199bdaedfd452eea718268be7fd50db3c0
674+
015717e2b873b7a2ce433bd3be2328a782aa5d91
675+
3b3c66f85959f3393a3a9e87a29004b526f91b93
676+
874529665c1c326fc86fc0d0d6c3512fab087ab8
677+
7f2c983e1cfdb58b6f84eabe5ff6a16f143f39aa
678+
0ea92cad5274f3939f09d6890da31a21b8481282
679+
489b5876698f9bb2d93b1b1d62d514148b31effd
680+
faf25b09d9e78f2ff129e25b90f67930d2fc1c4f
681+
df933596e7e9aa17f7e5cd6e1c850520f5b56f1b
682+
9e4fbebcc8e497016563e46de4c64fa094edab2d
683+
1557014378cc5a6234a9244fa60132955206fd27
684+
c5fbcf5f8d7b36bee54ac80d1027d0dccea2aa75
685+
cccbc5fe3ea5ae52426203f4485b11071fbe4b6e
686+
5174a139c92c1238f9700d06e362dc628d81a0a9
687+
9dae9f5f1e2bf29f58d3f49b0c612063d883b8b3
688+
e282764e049523439bc8adaadc002a1420122830
689+
d8ae5044488248d5eb134aa7c0a15c813a2f8715
690+
06ea2783a2c11e7b171e2809c3211bb3091d894d
691+
00ce8543f16f4357926eb6dc701ac6229142be80
692+
1f63b460a8506675ccacb4647941f07d391735e3
693+
a100c42a136da5ddfd09aa442543ec2190f24faf
694+
636991d0c0f969968c790d490c82c1d2fa4e8047
695+
dd52f79a73eca18301db1569d517197160018dbb
696+
e157b98640c7cfb94cae7e0faca3bcffc2dde990
697+
ad9e5eaf77bf7e19a926a43407c88386a8a1e58f
698+
c5e67be03bb06a5d7885c55db1f016fbf2333fe3
699+
48eec32347494da781f26478fa488b28336afbd2
700+
c324b07a541a04698954ece94e5879ae7131c1c7
701+
4901631dac6a883c6ddd0d4e5e3edd08b10d7609
702+
cacbdbaa95317b45cf2100702bca92410fb43b9a
703+
b4f686952a60bbadc7ed2250651d0d6af0959f4d
704+
90e49c1ececd6296c6ec6109cea525a208c0626e
705+
700808754884919916a5518e7ecfdabadef956d8
706+
0cd1a2eff9e0020ec1052a931f3863794d1a95d9
707+
51527ec1ec4264f7e24ef548bb049db07a89fc7f
708+
ed4eeafbb6e2e73ff9fb9c03bd66bbb049b8aacd
709+
d4475ea7ae70ad1a1f9374b88c68f01590a88d54
710+
5e1aacab576b8d8918da129097a9ac0816b6ead2
711+
fe6a299fc0020cd62156d4b7dd9c8dac358c69c5
712+
0047d9b89b9fa6be660c363961cf0af72fa62ecf
713+
037c5e511fe2185d244049cae25a98f99b878787
714+
8730bd3fc87c8a7d44347267e1ff3c7a8674201b
715+
47b8256da872722953693c4037d1b9e07caadcb1
716+
85aea18ae660b5edf7b6c1415f033cfcb15307f9
717+
132d5f8c2f2397a4600a42203f413dafdb6bcc37
718+
23ebd7a8027f12e722834d214113892fe8561fe1
719+
a19f641a80cb2841ca9f593e9be589dbc4b4ae7c
720+
1e7db37e76c510d373c4404eea2b97508b367aca
721+
16fa967d3cca66eef0f17b41fd8aaee6a1420fbc
722+
9eedbe98c86ff2a9214c24c37f6524ce67fd129b
723+
0342ae1d395ca82614f6d3b8fabb6a44403baf2a
724+
777b89b3008e53374eb13fdee70db315cd61a703
725+
8b686776ef5cbd6ef9d5281c3136eded25ea35a4
726+
c90b42bcdb594638c5759ef5ef0773314d0a1379
727+
7134327be5c1bdcef7919ed735049a6bbfc457ec
728+
e88a52e9a2fda971d34425bb80e42ad2d6623d68
729+
173c79626867e9f89d49be7dcbb0c2042c480553
730+
2513499348fa955d0e4b0970b08ba9e715e6316e
731+
43bb10661360d9f35d921d493a1f94ac95df00e2
732+
6f55ab57cbfa414d57a8e9fb9a47f9bcd8c836d7
733+
6300b9556ec927a61371053fafe1a4045f5afb00
734+
f8b2e9bcfc76fede05f5e12f7b15f0d9c9d0add5
735+
b297b945f7610772434817181ad12067b2832565
736+
57a73d71a36ce212977607d3e94de6ef55521bfc
737+
5fdf37e14bb3b66264a7e6868250c2084ac39054
738+
3059d4dd72af73b654077d9f72019c47edd47674
739+
333a41882c5ccd5f0c7f884f97d25449bdeec07b
740+
7da4f65a00a8d96da2119de613ed7fbee2a28a0d
741+
e14f0fa6a346afecbb1d5470aef5226a8cc33e57
742+
cf0a8b9c4870cc88254a757286140d9632e7b70c
743+
b69fd5eaa99f84b62a49d7c7f48d8cee1227592a
744+
1e3ed01faa77215a7c36308237280aaa58895532
745+
6c9bc14a3f2cfa50144607c820ebab5288f9571c
746+
8e3c266a4f02093d57d563f32ba73d3ab4b5f208
747+
decde9bba6f9d3671bdf0af4fe6ff4bf28992d1d
748+
9b7eb584ade2ce73dbfcda080935172c3857b758
749+
3bbc46ddafb61f68785c7e581817db952f99d93a
750+
bbb83f0b2b2671980c06453fd243b1f2801a1cc4
751+
6c9460edaeb6c89692b71f51be7b7ee386f4f5c4
752+
b3072799248fae8fc16f910b642edb9c5acf8bac
753+
696d39410fc3372d120a6e89695c1543ac2fc052
754+
c5c4fb31828107a5ded88627632e19e05b2c7e83
755+
9ce1c506a3a5d20b1bf254235bfae48af592d86c
756+
fe66dad8a779ed928b1c2fc0c3accf594b042877
757+
f421de5be611f874a027392d5fee7e113dce4f54
758+
d492dc1cdaabdc52b0766bf4cba4bd73178325d0
759+
6348bc61b533705a229f2c2ddcff2bdd98849d07
760+
83b26cb97cb46516aa4fdee3bcbfa751d28c1233
761+
afac75f140a3e7d89877f03420e1bc64a8d8c6cd
762+
171f6f2699dc27e77843318be2fefdfcd9e589fb
763+
50c806f001d66e20f314777b9fa7fefa01dc6893
764+
bdbabc50ba6c87ded97ea2bbacd3605c59cd12d0
765+
9e32adbb5c543885b2c01a984bf1e4b80e8cec16
766+
7c08d81e119570792648fe95bbacddbb1d5f9ae2
767+
65e9ca22785f4a799cbcff6d95cbe1ce4b4a6bd2
768+
2948d6dea098bf722828b969838668f833c2cb00
769+
deb847b75710d600e5b0d3d5c77fa5166d80808a
770+
05e5af5a6c884d2ade3d7acc766ad5380cb85b64
771+
cba41db327a241f992f9329b214d9070888255b8
772+
f6d335e82822ed8f2da56c1bcaddf7f99acd4997
773+
30308cc380a8176a5ec0e0bd2beed8b9c482ccf7
774+
8b6cd42c6226dea28c182a48a214d1c091b9b5bb
775+
267917f5632a99bb51fc3fe516d8308e79d31ed1
776+
ba11eb354b9f3420ebb8608227062fb639a07496
777+
848b11615b67a3c49f76ebbcaa241a322d8014d8
778+
25290071c434638e2719a99784572deef44542ad
779+
159f89c118645c0f9e23e453f01cede84abac795
780+
37637bea3a9a48c0d52d68d3f78f154f8249a009
781+
0a76bf848c72211f986a6cc5b1c13de820b861dd
782+
358fe779cbb2681666ae5ab23a19662db21a2c46
783+
c44e734dca64a15fae92255a5d848c04adaad2fa
784+
8add59d77dd621be57059229f378822e4b707318
785+
922c49a1389531d9fba30168257c466bd413f625
786+
df0825046acc7cb496c47666e36af18118beb030
787+
c23bf06492dddacfc0eece3d4dd12cce81496dd0
788+
3eec29ed3aa1c8eb293a7a7a6be356fc014f8813
789+
a7e80449c0811b361cdaea39b6bab78ca5fbf668
790+
5e8e0b3d7f6055e326bda61e60712b530e8920f0
791+
a5edd191be93aff8f9c0f60f04e711e2e78ecc77
792+
515200298b555845696a07ae2bc0a84a5dd02ae4
793+
e8a3882e20f0ffeeb9b3964c2c09d8aa5eb53fd4
794+
c545a7aeb1d559377933c7b2e6edc2d4a37b33fb
795+
df669230cf2001dd869e897bb4f2d9c46f9accd9
796+
56a0fbf8365343d73cdff2b0a0e16542294d7577
797+
196b4599201dbce3e0317e9b98753fa6a244b82d
798+
cf5bb048e80d4cde8828787b266b7f5f2e3b6d7b
799+
b94d0c7af11bd91dad4f180ce2a2ffa09e4b5668
800+
792d0d8d512cf8ddca200317b74ce550c1a1a428
801+
767ee2e3a1082468b4e2248bac3ef8bd54bb2ddb
802+
31db3dd874dfbba88616c96a5767e2c9861d9a7a
803+
018fd9620293582f0ce43d344ac3110e19c4dedc
804+
801aaac2b39564aa14009785146ba26d2506fb53
805+
121d47afe3e67ff7f94d26e08a39573dccf652aa
806+
af7fba3af788e91a460582351d40f8f5e2118760
807+
8f1c28a609b203e0d0a844d9cc5ada9eb9160a5e
808+
8319c4e906e6df5f2048e7c048942fde285a93a2
809+
66be456d93a66526322b7f36fd734a8dbd5e5524
810+
c006ab29ceec9274dc85a0de7f7d0502021a4b87
811+
1220af5e6d1072ea306f6ecaaa7effe3d386c379
812+
14ba286556faad794f288ef38493c540382897cb
813+
784a21d35466736a7a372364498ed94482a12a2a
814+
4ad59042b359f473d5888ecee0c9288dcf98f1c9
815+
fee16b15fa3425871670239c25d4e61ae961e0c5
816+
216f4ca9e7ccb1f0fcb9bab0f9940992a87ae55f
817+
2d0bdb2089644f5904629413423cdc897911b081
818+
50c502f54abd9eb15c8ddca013f0fdfae3d132a9
819+
c840ab0231bc29057172179f005001c9ab299554
820+
aab5e48d422d396aec09bd6389de68613b19def5
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
577bd51a4b8de066466a445192c1c653872657e2
1+
8ef096d4f8e08ac691502e3fd34721a8bdfa9044

contrib/verify-commits/trusted-keys

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
71A3B16735405025D447E8F274810B012346C9A6
21
B8B3F1C0E58C15DB6A81D30C3648A882F4316B9B
32
E777299FC265DD04793070EB944D35F9AC3DB76A
43
D1DBF2C4B96F2DEBF4C16654410108112E7EA81F

contrib/verifybinaries/README.md

-11
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,5 @@
11
### Verify Binaries
22

3-
#### Preparation:
4-
5-
Make sure you obtain the proper release signing key and verify the fingerprint with several independent sources.
6-
7-
```sh
8-
$ gpg --fingerprint "Bitcoin Core binary release signing key"
9-
pub 4096R/36C2E964 2015-06-24 [expires: YYYY-MM-DD]
10-
Key fingerprint = 01EA 5486 DE18 A882 D4C2 6845 90C8 019E 36C2 E964
11-
uid Wladimir J. van der Laan (Bitcoin Core binary release signing key) <[email protected]>
12-
```
13-
143
#### Usage:
154

165
This script attempts to download the signature file `SHA256SUMS.asc` from https://bitcoin.org.

doc/build-freebsd.md

+26-9
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,30 @@ pkg install sqlite3
3636
```
3737

3838
###### Legacy Wallet Support
39-
`db5` is only required to support legacy wallets.
40-
Skip if you don't intend to use legacy wallets.
39+
BerkeleyDB is only required if legacy wallet support is required.
40+
41+
It is required to use Berkeley DB 4.8. You **cannot** use the BerkeleyDB library
42+
from ports. However, you can build DB 4.8 yourself [using depends](/depends).
4143

42-
```bash
43-
pkg install db5
4444
```
45-
---
45+
gmake -C depends NO_BOOST=1 NO_LIBEVENT=1 NO_QT=1 NO_SQLITE=1 NO_NATPMP=1 NO_UPNP=1 NO_ZMQ=1 NO_USDT=1
46+
```
47+
48+
When the build is complete, the Berkeley DB installation location will be displayed:
49+
50+
```
51+
to: /path/to/bitcoin/depends/x86_64-unknown-freebsd[release-number]
52+
```
53+
54+
Finally, set `BDB_PREFIX` to this path according to your shell:
55+
56+
```
57+
csh: setenv BDB_PREFIX [path displayed above]
58+
```
59+
60+
```
61+
sh/bash: export BDB_PREFIX=[path displayed above]
62+
```
4663

4764
#### GUI Dependencies
4865
###### Qt5
@@ -91,12 +108,12 @@ This explicitly enables the GUI and disables legacy wallet support, assuming `sq
91108

92109
##### Descriptor & Legacy Wallet. No GUI:
93110
This enables support for both wallet types and disables the GUI, assuming
94-
`sqlite3` and `db5` are both installed.
111+
`sqlite3` and `db4` are both installed.
95112
```bash
96113
./autogen.sh
97-
./configure --with-gui=no --with-incompatible-bdb \
98-
BDB_LIBS="-ldb_cxx-5" \
99-
BDB_CFLAGS="-I/usr/local/include/db5" \
114+
./configure --with-gui=no \
115+
BDB_LIBS="-L${BDB_PREFIX}/lib -ldb_cxx-4.8" \
116+
BDB_CFLAGS="-I${BDB_PREFIX}/include" \
100117
MAKE=gmake
101118
```
102119

doc/dependencies.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ You can find installation instructions in the `build-*.md` file for your platfor
3636
| Dependency | Releases | Version used | Minimum required | Runtime |
3737
| --- | --- | --- | --- | --- |
3838
| [libnatpmp](../depends/packages/libnatpmp.mk) | [link](https://github.com/miniupnp/libnatpmp/) | commit [07004b9...](https://github.com/bitcoin/bitcoin/pull/25917) | | No |
39-
| [MiniUPnPc](../depends/packages/miniupnpc.mk) | [link](https://miniupnp.tuxfamily.org/) | [2.2.2](https://github.com/bitcoin/bitcoin/pull/20421) | 1.9 | No |
39+
| [MiniUPnPc](../depends/packages/miniupnpc.mk) | [link](https://miniupnp.tuxfamily.org/) | [2.2.2](https://github.com/bitcoin/bitcoin/pull/20421) | 2.1 | No |
4040

4141
### Notifications
4242
| Dependency | Releases | Version used | Minimum required | Runtime |

share/rpcauth/rpcauth.py

+6-8
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,20 @@
44
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
55

66
from argparse import ArgumentParser
7-
from base64 import urlsafe_b64encode
87
from getpass import getpass
9-
from os import urandom
10-
8+
from secrets import token_hex, token_urlsafe
119
import hmac
1210

1311
def generate_salt(size):
1412
"""Create size byte hex salt"""
15-
return urandom(size).hex()
13+
return token_hex(size)
1614

1715
def generate_password():
1816
"""Create 32 byte b64 password"""
19-
return urlsafe_b64encode(urandom(32)).decode('utf-8')
17+
return token_urlsafe(32)
2018

2119
def password_to_hmac(salt, password):
22-
m = hmac.new(bytearray(salt, 'utf-8'), bytearray(password, 'utf-8'), 'SHA256')
20+
m = hmac.new(salt.encode('utf-8'), password.encode('utf-8'), 'SHA256')
2321
return m.hexdigest()
2422

2523
def main():
@@ -38,8 +36,8 @@ def main():
3836
password_hmac = password_to_hmac(salt, args.password)
3937

4038
print('String to be appended to bitcoin.conf:')
41-
print('rpcauth={0}:{1}${2}'.format(args.username, salt, password_hmac))
42-
print('Your password:\n{0}'.format(args.password))
39+
print(f'rpcauth={args.username}:{salt}${password_hmac}')
40+
print(f'Your password:\n{args.password}')
4341

4442
if __name__ == '__main__':
4543
main()

0 commit comments

Comments
 (0)