Commit graph

32906 commits

Author SHA1 Message Date
muxator
f8ed34d1a9
rpc: add non-regression test about deriveaddresses crash when index is 2147483647
This test would cause a crash in bitcoind (see #26274) if the fix given in the
previous commit was not applied.

Github-Pull: #26275
Rebased-From: 9153ff3e27
2022-10-28 18:15:25 +08:00
muxator
d9f1c89e49
rpc: fix crash in deriveaddresses when derivation index is 2147483647
2147483647 is the maximum positive value of a signed int32, and - currently -
the maximum value that the deriveaddresses bitcoin RPC call accepts as
derivation index due to its input validation routines.

Before this change, when the derivation index (and thus range_end) reached
std::numeric_limits<int_32_t>::max(), the "i" variable in the for cycle (which
is declared as int, and as such 32 bits in size on most platforms) would be
incremented at the end of the first iteration and then warp back to
-2147483648. This caused SIGABRT in bitcoind and a core dump.

This change assigns "i" an explicit size of 64 bits on every platform,
sidestepping the problem.

Fixes #26274.

Github-Pull: #26275
Rebased-From: addf9d6502
2022-10-28 18:14:51 +08:00
Hennadii Stepanov
bbea830a96
Adjust .tx/config for new Transifex CLI
The old Transifex Command-Line Tool is considered deprecated (as of
January 2022) and will sunset on Nov 30, 2022.

See: https://github.com/transifex/cli/blob/devel/README.md#migrating-from-older-versions-of-the-client

An accompanying PR: https://github.com/bitcoin-core/bitcoin-maintainer-tools/pull/142

Github-Pull: #26321
Rebased-From: d6adbb7ee1
2022-10-28 18:12:58 +08:00
MacroFake
40b69fb06e
Merge bitcoin/bitcoin#26033: [23.x] Prevent data race for pathHandlers
38d4601fe8 Prevent data race for `pathHandlers` (Hennadii Stepanov)

Pull request description:

  Backport of https://github.com/bitcoin/bitcoin/pull/25983 to the 23.x branch.

ACKs for top commit:
  dergoegge:
    ACK 38d4601fe8

Tree-SHA512: b235d6d2cb374baf1b54c09f4cd2feca7b6c1588d081532e987fd5def8ed0dee4b8255112b130a77aca633ec6a63cfd81f215b2e7a403c213eb6048a54774d26
2022-10-24 11:47:03 +02:00
MacroFake
c2d46d7434
Merge bitcoin/bitcoin#26333: [23.x] Revert "build: Use Homebrew's sqlite package if it is available"
7698366132 doc: remove brew install sqlite from macOS docs (fanquake)
419bdc534f Revert "build: Use Homebrew's sqlite package if it is available" (fanquake)

Pull request description:

  Backport of https://github.com/bitcoin/bitcoin/pull/25985 to the 23.x branch.

ACKs for top commit:
  hebasto:
    ACK 7698366132, I have reviewed the code and it looks OK, I agree it can be merged.
  stickies-v:
    re-ACK 7698366132

Tree-SHA512: 539f218b2895188111876b6a2035082ac642c89ef2e5055031bdc4563f690055012fcede396a5c87cf66e80ced796d62dd8d4394676fa6d22e01a581b29bb10b
2022-10-24 11:43:37 +02:00
fanquake
7698366132
doc: remove brew install sqlite from macOS docs 2022-10-24 09:34:34 +08:00
fanquake
419bdc534f
Revert "build: Use Homebrew's sqlite package if it is available"
This reverts ee7b84e63c from #20527.
This change was made without any rationale, maybe other than a brew
installed version might be newer, and that's "better". However when
building from source on macOS, it just results in drastically worse
perofrmance, and results in issues / confusions like #25724.

Resolves the "build from source" portion of #25724. Building from
depends is still not ideal, however I have some other changes that might
help improve things in that case.

The difference in performance can be observed using the example from
https://github.com/bitcoin/bitcoin/issues/25724#issuecomment-1213554922,
but minified to only 10 descriptors. i.e:
```bash
time src/bitcoin-cli createwallet speedy true
time src/bitcoin-cli importdescriptors '[
  {"desc":"raw(00145846369f3d6ba366d6f5a903fb5cf4dca3763c0e)#k9wh6v62","timestamp":"now"},
  {"desc":"raw(001420800aabf13f3a4c4ce3ce4c66cecf1d17f21a6e)#6m0hlfh4","timestamp":"now"},
  {"desc":"raw(0014c6bf9715e06d73ebf9b3b02d5cc48d24d8bbabc1)#wyavh36r","timestamp":"now"},
  {"desc":"raw(00141ba7807b3f46af113beaea5c698428ce7138cd8a)#jctdsups","timestamp":"now"},
  {"desc":"raw(00140c1bd27f10fff01b36ddf3c1febaa1acff19b080)#9s6nc3pk","timestamp":"now"},
  {"desc":"raw(00141226e31987e4bc2e63c0ee12908f675e40464b20)#9pp7qm39","timestamp":"now"},
  {"desc":"raw(0014f73f149f7503960a5e849c6ee7a8a8c336f631cb)#qtkxv9fc","timestamp":"now"},
  {"desc":"raw(0014c8ccb4d81ffc769fc5fdd8d7eed69b0e0cae5749)#hn39qayv","timestamp":"now"},
  {"desc":"raw(001498565aead2d67a22a6021d55210f2a917fc22169)#6ar3vwsx","timestamp":"now"},
  {"desc":"raw(001403013248ac0cd9eabe176cad162cda2a19f771e1)#4m47mukd","timestamp":"now"}
]'
```

Running master, when building from souce and using brew installed
sqlite, this takes ~3.4s. With this PR, the same operation takes ~0.3s.

Github-Pull: #25985
Rebased-From: d216d714aa
2022-10-18 21:34:20 +08:00
fanquake
45c9f4afa4
Merge bitcoin/bitcoin#25828: [23.x] GUI backports
31ca698f20 Disallow encryption of watchonly wallets (Andrew Chow)
da9578da80 build, qt: bump Qt5 version to 5.15.3 (Pavol Rusnak)

Pull request description:

  Backports:
  - ef20add4c9 from bitcoin/bitcoin#24668 to address bitcoin/bitcoin#24939 and bitcoin-core/gui#638
  - bitcoin-core/gui#631

  Guix builds on `x86_64`:
  ```
  773f3555a1c6179d35a7a0b3971ced8eaf5a5e4bef5c08313216509506fe618d  guix-build-31ca698f2017/output/aarch64-linux-gnu/SHA256SUMS.part
  ef3977b92daabffc2d153e15963a5703839bc04250d2784bc00dc1104112e79e  guix-build-31ca698f2017/output/aarch64-linux-gnu/bitcoin-31ca698f2017-aarch64-linux-gnu-debug.tar.gz
  65b2351c61d226a8b10fda36cc963fda1f5fb89ea6b463d7351fdcd67bd57c3e  guix-build-31ca698f2017/output/aarch64-linux-gnu/bitcoin-31ca698f2017-aarch64-linux-gnu.tar.gz
  41c3489300f81f714033aa45ca3a807c5005be0625ebf58234fd89f3cdc65a1d  guix-build-31ca698f2017/output/arm-linux-gnueabihf/SHA256SUMS.part
  45e6e4c9e2e35430c41bca6df36d5ed2f9a857934da46bfd920a499e03bddb61  guix-build-31ca698f2017/output/arm-linux-gnueabihf/bitcoin-31ca698f2017-arm-linux-gnueabihf-debug.tar.gz
  cf08e2a62c5a9bfdeaeee6ce69263dde8b56033aab650bb9ffafe8e9b9241519  guix-build-31ca698f2017/output/arm-linux-gnueabihf/bitcoin-31ca698f2017-arm-linux-gnueabihf.tar.gz
  7d1f3e185fbb6843a1b5c47f7ff2a4452aa4a1f533bd7171f7fc8a13e65fde53  guix-build-31ca698f2017/output/arm64-apple-darwin/SHA256SUMS.part
  6395ee2e17fd5a8891fc70d97e7d75810d677293b6ad8581334b2e289024210d  guix-build-31ca698f2017/output/arm64-apple-darwin/bitcoin-31ca698f2017-arm64-apple-darwin-unsigned.dmg
  1658de08323b366f0f39e9ed02d68072ee3bef2db2252235e71d8fd206b4e609  guix-build-31ca698f2017/output/arm64-apple-darwin/bitcoin-31ca698f2017-arm64-apple-darwin-unsigned.tar.gz
  c4fdf8d5563bdfc0390dec7adce2a0608f8e5b8d0d82b648ef38aed8ab72d996  guix-build-31ca698f2017/output/arm64-apple-darwin/bitcoin-31ca698f2017-arm64-apple-darwin.tar.gz
  709470d5d1a4a44022cd3e7b162c8cf6c492c6bb9996eb31f12a121351ad081f  guix-build-31ca698f2017/output/dist-archive/bitcoin-31ca698f2017.tar.gz
  6f809a8bdd10fc62143b5d265ea9c2eae37a1b18cf573d4a3743b2b026c0d038  guix-build-31ca698f2017/output/powerpc64-linux-gnu/SHA256SUMS.part
  ff2f87a29f7581d9ce1fccb8749f4473d03532de2194373de0fcdcd3bf0d380a  guix-build-31ca698f2017/output/powerpc64-linux-gnu/bitcoin-31ca698f2017-powerpc64-linux-gnu-debug.tar.gz
  ab5ec4203ff59c0d4885f5df1c91191a03a3c104ed8ca0e98e19f531914cd2ad  guix-build-31ca698f2017/output/powerpc64-linux-gnu/bitcoin-31ca698f2017-powerpc64-linux-gnu.tar.gz
  beb0ed7d9940718351301cb27dda1ae7891092c85664e2f9473e81c02479c951  guix-build-31ca698f2017/output/powerpc64le-linux-gnu/SHA256SUMS.part
  286121e5698b726abbfc24d972c00d9f16f6d841fab245980a376a51e8dd85bc  guix-build-31ca698f2017/output/powerpc64le-linux-gnu/bitcoin-31ca698f2017-powerpc64le-linux-gnu-debug.tar.gz
  04a12dfe6a036477d212877f301ee425dcf063abf0fd892b8fbc0497ee5612fc  guix-build-31ca698f2017/output/powerpc64le-linux-gnu/bitcoin-31ca698f2017-powerpc64le-linux-gnu.tar.gz
  d229041d43c40a49bbebcb5b0700c540456e058e0cb7be0d3ac414a80018e4f9  guix-build-31ca698f2017/output/riscv64-linux-gnu/SHA256SUMS.part
  981268b93caaf1c450f1f3cec4d70efd2b4779e17917a4ab424447743628519e  guix-build-31ca698f2017/output/riscv64-linux-gnu/bitcoin-31ca698f2017-riscv64-linux-gnu-debug.tar.gz
  acfef50476d9141ec29855216e60974d6307307a02784e7217942ee281d69c76  guix-build-31ca698f2017/output/riscv64-linux-gnu/bitcoin-31ca698f2017-riscv64-linux-gnu.tar.gz
  5482b0c34069be1e40a96a173f984c67eb983860a4f5f4d9d927638caf72eed5  guix-build-31ca698f2017/output/x86_64-apple-darwin/SHA256SUMS.part
  fe4847edbc3ad1c747663a67f0daf2ed8b38818d1d1960617d85c851b0dded2f  guix-build-31ca698f2017/output/x86_64-apple-darwin/bitcoin-31ca698f2017-x86_64-apple-darwin-unsigned.dmg
  2b1899804035508f90eef57e1f068120509e7680877c8ae6cb5cb5beed84607c  guix-build-31ca698f2017/output/x86_64-apple-darwin/bitcoin-31ca698f2017-x86_64-apple-darwin-unsigned.tar.gz
  7a82ab62d1db4141b13ac566bc985eca5fa1da982be29427dd74f7098059932c  guix-build-31ca698f2017/output/x86_64-apple-darwin/bitcoin-31ca698f2017-x86_64-apple-darwin.tar.gz
  3e943a6e11930ac1dcd7339bcdfbcf310b09f03d1e2544fce314e656b3552b7a  guix-build-31ca698f2017/output/x86_64-linux-gnu/SHA256SUMS.part
  0e0155ce76ffe8af19a74ecb74b813ce7ca4817bf3535a2b5813ae9e229804dc  guix-build-31ca698f2017/output/x86_64-linux-gnu/bitcoin-31ca698f2017-x86_64-linux-gnu-debug.tar.gz
  b66f9a25e963db98b3b8eed79e6d280d0ae7902d1f7e2cdee8481bacfc94ed96  guix-build-31ca698f2017/output/x86_64-linux-gnu/bitcoin-31ca698f2017-x86_64-linux-gnu.tar.gz
  bdc9cdd0ba739c3aba3d355f6e9ea88af99b09dd666cf40c7986212b355d2a09  guix-build-31ca698f2017/output/x86_64-w64-mingw32/SHA256SUMS.part
  815d4b70b257932a3e32e14d8bb53960efd5e71500e7349ac53d13303f4b5335  guix-build-31ca698f2017/output/x86_64-w64-mingw32/bitcoin-31ca698f2017-win64-debug.zip
  4b248df85b0b5de00631756839bc53e9e64c764b4da900afad34f871e2afe995  guix-build-31ca698f2017/output/x86_64-w64-mingw32/bitcoin-31ca698f2017-win64-setup-unsigned.exe
  b26008ed9fa0db1d32220087c2f0828788f0f9f784c981622f5e76c63c98fb9a  guix-build-31ca698f2017/output/x86_64-w64-mingw32/bitcoin-31ca698f2017-win64-unsigned.tar.gz
  4dd03a68ac2d742681d6b8c42b15e6f9d4ce46084ff18ebb0f1313109a867205  guix-build-31ca698f2017/output/x86_64-w64-mingw32/bitcoin-31ca698f2017-win64.zip
  ```

ACKs for top commit:
  jarolrod:
    ACK 31ca698f20

Tree-SHA512: 596c2979e070d3574c744ac89961ba157e9e01c2e1a3ce7d33cc369ad2cf1c2e16aa23209b382667dbd100545b5c17530771855b380eeb7345deebfa695a3be6
2022-10-02 17:00:30 +01:00
Hennadii Stepanov
38d4601fe8
Prevent data race for pathHandlers
Github-Pull: bitcoin/bitcoin#25983
Rebased-From: 4296dde287
2022-09-07 12:14:53 +02:00
Andrew Chow
31ca698f20
Disallow encryption of watchonly wallets
Watchonly wallets do not have any private keys to encrypt. It does not
make sense to encrypt such wallets, so disable the option to encrypt
them.

This avoids an assertion that can be hit when encrypting watchonly descriptor
wallets.

Github-Pull: bitcoin-core/gui#631
Rebased-From: 4c495413e1
2022-08-12 10:27:56 +01:00
Pavol Rusnak
da9578da80
build, qt: bump Qt5 version to 5.15.3
Qt 5.15.3 release is a patch release made on the top of Qt 5.15.2. As a patch
release, Qt 5.15.3 does not add any new functionality but provides bug fixes
and other improvements.

https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/5.15.3/release-note.md

* dropped patches:
  - patches/qt/dont_use_avx_android_x86_64.patch
  - patches/qt/fix_bigsur_style.patch
* adjusted patches:
  - patches/qt/fix_android_jni_static.patch
  - patches/qt/fix_limits_header.patch
  - patches/qt/use_android_ndk23.patch

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

Github-Pull: bitcoin/bitcoin#24668
Rebased-From: ef20add4c9
2022-08-12 10:23:56 +01:00
Andrew Chow
313ea18e5e
Merge bitcoin/bitcoin#25799: [23.x] guix: patch NSIS to remove .reloc sections from install stubs
fc77b2a41d guix: patch NSIS to remove .reloc sections from install stubs (fanquake)

Pull request description:

  Backport of #25788 to the 23.x branch.

  Guix Build (x86_64):
  ```bash
  5533c15a0084dfc174b68620a638f5499677be20eafdb1261457f7759298abdc  guix-build-fc77b2a41dd9/output/dist-archive/bitcoin-fc77b2a41dd9.tar.gz
  b67742b17aa813350051635f1e0a9b27921deb22c40d89c8d108fd809619826c  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/SHA256SUMS.part
  34e06ab6fbcce2508095d6899daf9c38b962df1a042d0bedee49169f394d47a5  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-debug.zip
  63e1e7c1aa62577a21606c789bdaf983352c5285eec5722608cf7a3240a25d6a  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-setup-unsigned.exe
  0ae26c5bc2f2aa86c451d3cfa3fbdbd73edab6136fd8d6510cd1c47a833973b7  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-unsigned.tar.gz
  ddb1feb2541d1a4922a62997224e965a3e79c7233c75106eb8c7ad76eff6cf89  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64.zip
  ```

  Guix Build (arm64):
  ```bash
  5533c15a0084dfc174b68620a638f5499677be20eafdb1261457f7759298abdc  guix-build-fc77b2a41dd9/output/dist-archive/bitcoin-fc77b2a41dd9.tar.gz
  3c5cb927e397d14f39bed24480b6800d946854c376d35cfb7a9dd635d45a5d6b  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/SHA256SUMS.part
  b520c2e9f4c29fe711225c737b4c16e2ae933d5954cfb15cec554e1e0b57b061  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-debug.zip
  63e1e7c1aa62577a21606c789bdaf983352c5285eec5722608cf7a3240a25d6a  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-setup-unsigned.exe
  0ae26c5bc2f2aa86c451d3cfa3fbdbd73edab6136fd8d6510cd1c47a833973b7  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64-unsigned.tar.gz
  1447a28a582c0e5f2dd03ce22ecf078c6398142b3a2be2de2347a5f095f14d5b  guix-build-fc77b2a41dd9/output/x86_64-w64-mingw32/bitcoin-fc77b2a41dd9-win64.zip
  ```

ACKs for top commit:
  achow101:
    ACK fc77b2a41d
  hebasto:
    ACK fc77b2a41d, `bitcoin-fc77b2a41dd9-win64-setup-unsigned.exe` tested on on Windows 11 Pro 21H2 with the "_Force randomization for images (Mandatory ASLR)_" option being set to "_On by default_".
  jarolrod:
    ACK fc77b2a41d

Tree-SHA512: 11000a2236532753a025bfa4ed4dadbbf3432d39b35edcbdd6d09a1b69621331cc43c8fef1bf0ad80909335588535eb741e43ce1f516101c415175e378815579
2022-08-09 16:46:24 -04:00
fanquake
fc77b2a41d
guix: patch NSIS to remove .reloc sections from install stubs
With the release of binutils/ld 2.36, ld swapped to much improved
default settings when producing windows binaries with mingw-w64. One of
these changes was to stop stripping the .reloc section from binaries,
which is required for working ASLR.

.reloc section stripping is something we've accounted for previously,
see #18702. The related upstream discussion is in this thread:
https://sourceware.org/bugzilla/show_bug.cgi?id=19011.

When we switched to using a newer Guix time-machine in #23778, we begun
using binutils 2.37 to produce releases. Since then, our windows
installer (produced with makensis) has not functioned correctly when run on
a Windows system with the "Force randomization for images (Mandatory ASLR)"
option enabled. Note that all of our other release binaries, which all
contain .reloc sections, function fine under the same option, so it
cannot be just the presence of a .reloc section that is the issue.

For now, restore makensis to it's pre-binutils-2.36 behaviour, which
fixes the produced installer. The underlying issue can be further
investigated in future.

Github-Pull: #25788
Rebased-From: 7a0b129c41
2022-08-07 12:39:06 +01:00
MacroFake
a33ec8a693
Merge bitcoin/bitcoin#25316: 23.x backports
4ebf6e35dc p2p: always set nTime for self-advertisements (Martin Zumsande)
039ef215bc tests: Use descriptor that requires both legacy and segwit (Andrew Chow)
5fd25eb9cb tests: Calculate input weight more accurately (Andrew Chow)
bd6d3ac8b7 windeploy: Renewed windows code signing certificate (Andrew Chow)
32fa522a80 test: ensure createmultisig and addmultisigaddress are not returning any warning for expected cases (brunoerg)
7658055c4e rpc: fix inappropriate warning for address type p2sh-segwit in createmultisig and addmultisigaddress (brunoerg)

Pull request description:

  Backports:
  - https://github.com/bitcoin/bitcoin/pull/24454
  - https://github.com/bitcoin/bitcoin/pull/25201
  - https://github.com/bitcoin/bitcoin/pull/25220
  - https://github.com/bitcoin/bitcoin/pull/25314

ACKs for top commit:
  LarryRuane:
    re-utACK 4ebf6e35dc
  achow101:
    ACK 4ebf6e35dc

Tree-SHA512: add3999d0330b3442f3894fce38ad9b5adc75da7d681c949e1d052bac5520c2c6fb06eba98bfbeb4aa9a560170451d24bf00d08dddd4a3d080030ecb8ad61882
2022-07-08 09:02:05 +02:00
Martin Zumsande
4ebf6e35dc
p2p: always set nTime for self-advertisements
If we self-advertised to an inbound peer with the address they gave us,
nTime was left default-initialized, so that our peer wouldn't relay it
any further along.

Github-Pull: #25314
Rebased-From: 99b9e5f3a9
2022-06-22 11:39:16 +01:00
Andrew Chow
039ef215bc
tests: Use descriptor that requires both legacy and segwit
Github-Pull: #24454
Rebased-From: 9f5ab670e7
2022-06-09 12:07:02 +01:00
Andrew Chow
5fd25eb9cb
tests: Calculate input weight more accurately
The external input test with specifying input weight would make a
pessimistic estimate of the input weight. However this would result in a
test failure as it is sometimes too pessimistic when an ECDSA signature
ends up being smaller than usual. To correct this, we can calculate the
input weight more accurately.

Github-Pull: #24454
Rebased-From: 8a04a386f7
2022-06-09 12:06:41 +01:00
Andrew Chow
bd6d3ac8b7
windeploy: Renewed windows code signing certificate
Github-Pull: #25201
Rebased-From: 7e9fe6d800
2022-06-09 12:05:50 +01:00
brunoerg
32fa522a80
test: ensure createmultisig and addmultisigaddress are not returning any warning for expected cases
Github-Pull: #25220
Rebased-From: 3a9b9bb38e
2022-06-09 12:05:17 +01:00
brunoerg
7658055c4e
rpc: fix inappropriate warning for address type p2sh-segwit in createmultisig and addmultisigaddress
Github-Pull: #25220
Rebased-From: eaf6f630c0
2022-06-09 12:05:04 +01:00
laanwj
c3936cc53d
Merge bitcoin/bitcoin#25241: [23.x] rpc: Capture potentially large UniValue by ref for rpcdoccheck
7fcac96597 rpc: Capture potentially large UniValue by ref for rpcdoccheck (Martin Zumsande)

Pull request description:

ACKs for top commit:
  fanquake:
    ACK 7fcac96597

Tree-SHA512: 7b60d35c84a47ff2b16aed06b4ea82ff3f60cc24409e2927b9ed618f8f939252903417ef93b711171e22b15daf5d857964687fde25ec554153337c996e5e27fa
2022-05-30 19:47:36 +02:00
Martin Zumsande
7fcac96597 rpc: Capture potentially large UniValue by ref for rpcdoccheck
Github-Pull: 25237
Rebased-From: 20ff4991e5
2022-05-30 10:46:02 +02:00
laanwj
fcf6c8f4eb
doc: Update manual pages for 23.0
Tree-SHA512: 0e683e928e3c8e2e5534b8a28eb288445caeadf698e27d1c307cad8a8edb02c151ec245de4ed64fc6b7f137dfcb808fec410bd9f968f6d3f80ee3067563ca97a
2022-04-21 21:28:32 +02:00
laanwj
4253c619cf
build: Bump to final
Tree-SHA512: 389a841cb36dd8b9c99279d63473a10c83c09700b0077bd16f73d1141d5d79c1bdbba462f6fcb4c1917c28260bbf1359bf93bbe695b150adde23c4533d6c85cd
2022-04-21 21:23:55 +02:00
laanwj
9549b28c04
doc: Update manual pages for 23.0rc5
Tree-SHA512: cc721bc9a0a916a33979b17d98bfea1c569bd827072d651d8882ee674a0f14f0981bf22e3cd9eff384e580d6afd90c7310a1928d99f204833fce4d06a3287a67
2022-04-14 18:05:18 +02:00
laanwj
cf42ffdaca
qt: 23.0rc5 translations update
Tree-SHA512: 86a246bf5a817084f077ace118edad16dc48d06ec8d39476d82d6d6c5010bde9ec91eec00d7bd9736fc3ecfd1b67629f06e38798d484e6a0f09768553a52a231
2022-04-14 18:05:02 +02:00
laanwj
30ad7ac8fe
build: Bump rc to 23.0rc5
Tree-SHA512: 394d58796c13d8ce2cef2fc0f2dc364cd2736cefe019e4cf6bef82b773c2c8a8ecb77ead67014eab9046c40d416096a56ebfaaacac2d4485c40f1ec9c4659638
2022-04-14 17:26:41 +02:00
laanwj
dabac355c8
Merge bitcoin/bitcoin#24843: [23.x] rc5 backports
a75b8ec836 guix: fix GCC 10.3.0 + mingw-w64 setjmp/longjmp issues (fanquake)

Pull request description:

  Currently backports:
  * https://github.com/bitcoin/bitcoin/pull/24842

ACKs for top commit:
  gruve-p:
    ACK a75b8ec836
  hebasto:
    ACK a75b8ec836
  jonatack:
    Code review and commit meta-data ACK a75b8ec836
  jarolrod:
    ACK a75b8ec836

Tree-SHA512: 1071b675647ed990ffda9c84391538b6c2e741b423a64e534754322250ca7f95cbc948e005cb976bf070099038f86997bfa1946c543a109e2086d2aaeaacb189
2022-04-14 17:25:53 +02:00
fanquake
a75b8ec836
guix: fix GCC 10.3.0 + mingw-w64 setjmp/longjmp issues
This commit backports a patch to the GCC 10.3.0 we build for Windows
cross-compilation in Guix. The commit has been backported to the GCC
releases/gcc-10 branch, but hasn't yet made it into a release.

The patch corrects a regression from an earlier GCC commit, see:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=357c4350680bf29f0c7a115424e3da11c53b5582
and
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=074226d5aa86cd3de517014acfe34c7f69a2ccc7,
related to the way newer versions of mingw-w64 implement setjmp/longjmp.

Ultimately this was causing a crash for us when Windows users were
viewing the network traffic tab inside the GUI. After some period, long
enough that a buffer would need reallocating, a call into FreeTypes
gray_record_cell() would result in a call to ft_longjmp (longjmp), which
would then trigger a crash.

Fixes: https://github.com/bitcoin-core/gui/issues/582.

See also:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=e8d1ca7d2c344a411779892616c423e157f4aea8.
https://bugreports.qt.io/browse/QTBUG-93476.

Github-Pull: #24842
Rebased-From: 457148a803
2022-04-13 13:49:04 +01:00
laanwj
b6253829c1
doc: Update manual pages for 23.0rc4
Tree-SHA512: 0124eaf86ef7324c14a77eafab8f53f0f3da83b19bc63922218051dd50bc154ab8e47f427fdc4ac5c2c3c34004ffd8e2df7ec134c66a16a78c4917a4ce1edae4
2022-04-08 16:06:51 +02:00
laanwj
d37081e483
qt: 23.0rc4 translations update
Tree-SHA512: 1bf7ac70963fc6361b5cd117612355e6d4b1862721441003eb7b11f8366a706cb83d45a46533bfad421d7ea0dd12931b4e37881818eb0f0be845de19b823f98c
2022-04-08 16:05:58 +02:00
laanwj
5f8635541e
build: Bump rc to 23.0rc4
Tree-SHA512: 18e4560c9b04d1270449ed1938b4c3ce9a903b1b65257e92947884f12a2d45e64e4074f8e7738c7ccb7076f696f9e7fb2056a55f856335a98eed143e0c1167f3
2022-04-08 15:53:50 +02:00
laanwj
308a2022c0
Merge bitcoin/bitcoin#24807: [23.x] Final rc4 backports
e3e4be9cd5 RPC: Switch getblockfrompeer back to standard param name blockhash (Luke Dashjr)
69cc83df69 Add DEBUG_LOCKCONTENTION documentation to the developer notes (Jon Atack)
6374e24887 Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive (Jon Atack)

Pull request description:

  Backports:
  * #24770
  * #24806

ACKs for top commit:
  laanwj:
    Commit list and code review ACK e3e4be9cd5
  jonatack:
    Code review and commit metadata ACK e3e4be9cd5

Tree-SHA512: eff2b506379a9396b12b42ed2858e3eb9403a55950d6dec0b5dcc95c4c2998cddf9e0ec88af2f8ac5a7bece4d4537acede1c75f59bbc6616bee273384f87f6b0
2022-04-08 15:53:08 +02:00
Luke Dashjr
e3e4be9cd5
RPC: Switch getblockfrompeer back to standard param name blockhash
This commit partially reverts 923312fbf6.

Github-Pull: #24806
Rebased-From: 88917f93cc
2022-04-08 13:27:19 +01:00
Jon Atack
69cc83df69
Add DEBUG_LOCKCONTENTION documentation to the developer notes
Github-Pull: #24770
Rebassedd-From: 4394733331
2022-04-08 13:27:02 +01:00
Jon Atack
6374e24887
Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive
Github-Pull: #24770
Rebased-From: 39a34b6877
2022-04-08 13:26:34 +01:00
MarcoFalke
1ea76767d0
Merge bitcoin/bitcoin#24755: [23.x] Further build backports
39396ab593 build: Fix "ERR: Unsigned tarballs do not exist" (Hennadii Stepanov)
db8a5d6094 guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64 (fanquake)

Pull request description:

  Backports:
  * https://github.com/bitcoin/bitcoin/pull/24733
  * https://github.com/bitcoin/bitcoin/pull/24736

ACKs for top commit:
  gruve-p:
    ACK 39396ab593
  hebasto:
    ACK 39396ab593, backported locally, got zero diff with the PR branch.
  jarolrod:
    ACK 39396ab593

Tree-SHA512: 3573870c48fbde538a490c8b7103779987d3cce1165ca639c164aaf8ef82290fb99fcd461d0fed0208b43174b21284b21eb032c00512b986ae824295cc7935a8
2022-04-05 08:51:54 +02:00
Hennadii Stepanov
39396ab593
build: Fix "ERR: Unsigned tarballs do not exist"
Github-Pull: #24733
Rebased-From: 7762c5683f
2022-04-04 10:49:17 +01:00
fanquake
db8a5d6094
guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
This introduces a patch to our GCC (10.3.0) mingw-w64 compiler, in Guix, to make
it avoid using aligned vmov instructions. This works around a longstanding issue
in GCC, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412, which was recently
discovered to be causing issues, see #24726.

Note that distros like Debian are also patching around this issue, and that is
where this patch comes from. This would also explain why we haven't run into this
problem earlier, in development builds. See:
https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/patches/vmov-alignment.patch.

Fixes #24726.
Alternative to #24727.

See also:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559

Github-Pull: #24736
Rebased-From: d6fae988ef
2022-04-04 10:48:33 +01:00
MarcoFalke
e089c68aa1
Merge bitcoin/bitcoin#24725: 23.0: rc4 backport
1448c99380 wallet: Postpone NotifyWalletLoaded() for encrypted wallets (Hennadii Stepanov)
4f3ba8517a wallet, refactor: Add wallet::NotifyWalletLoaded() function (Hennadii Stepanov)

Pull request description:

ACKs for top commit:
  Sjors:
    ACK 1448c99380
  hebasto:
    ACK 1448c99380
  jarolrod:
    ACK 1448c99380

Tree-SHA512: 84d908ff40f0048394f74499a9640904eb244bae975648221a883ab6ef6c5d5d7c178c17e5e420b565000c6d9cea26769fa9dd7c53ae10e32fa15748940ea796
2022-04-01 08:48:42 +02:00
Hennadii Stepanov
1448c99380 wallet: Postpone NotifyWalletLoaded() for encrypted wallets
Too early NotifyWalletLoaded() call in CWallet::Create() results the
notification goes before DescriptorScriptPubKeyMans were created and
added to an encrypted wallet.

Co-authored-by: Andrew Chow <achow101-github@achow101.com>

Github-Pull: bitcoin/bitcoin#24711
Rebased-From: 0c12f0116c
2022-03-31 19:04:04 +02:00
Hennadii Stepanov
4f3ba8517a wallet, refactor: Add wallet::NotifyWalletLoaded() function
This change is a prerequisite for the following bugfix.

Github-Pull: bitcoin/bitcoin#24711
Rebased-From: aeee419c6a
2022-03-31 19:04:02 +02:00
laanwj
e181e94e86
doc: Update manual pages for 23.0rc3
Tree-SHA512: 5350255e4260b85b7f294e980f9c47fb0aa8370965711411e37c16702cd3eee010ea83c2135b1e4fe6241402b9b1b478bc7f6a181f3e6da2c261a024b45aa8ae
2022-03-31 16:13:45 +02:00
laanwj
752c9d82a6
qt: 23.0rc3 translations update
Tree-SHA512: 110fab39faae351f10a9bb3a8a852d29f1e8e4bae27b790a52198fc39c5e1a2261c0fe8f0289f4c626e3d39f237c9410ae80f311bdcf446f778c680bc0fdc367
2022-03-31 16:13:38 +02:00
laanwj
2a1d3a48c4
build: Bump rc to 23.0rc3
Tree-SHA512: 558379b8b0e9e12a84b563d673377712950b425fd5862f68dddcecde14090e9566917e30720a82ddf8cb1132f02e21bab1ab93594f507e9ca34d039408ca15b4
2022-03-31 16:13:25 +02:00
fanquake
c243e08351
Merge bitcoin/bitcoin#24512: 23.x backports
174af33d5d util: Add inotify_rm_watch to syscall sandbox (AllowFileSystem) (Hennadii Stepanov)
ded10fe3ea build: Fix Boost.Process test for Boost 1.78 (Hennadii Stepanov)
26c2f23f36 build: Fix Boost.Process detection on macOS arm64 (Hennadii Stepanov)
85f85c7e5f util: add linkat to syscall sandbox (AllowFileSystem) (fanquake)
eaa04194b9 contrib: fix signet miner (sighash mismatch) (Sebastian Falbesoner)
235b042594 rpc: Exclude descriptor when address is excluded (MarcoFalke)
b05a59b69f ci: Temporarily use clang-13 to work around clang-14 TSan bug (MarcoFalke)
65b966743c doc, init: add links to doc/cjdns.md (Jon Atack)
7a553d4e65 doc: update i2p.md with cjdns, improve local addresses section (Jon Atack)
4148396229 doc: update tor.md with cjdns and getnodeaddresses, fix tor grep, (Jon Atack)
4690e8af13 doc: create initial doc/cjdns.md for cjdns how-to documentation (Jon Atack)
5d24f612d1 Clarify in -maxtimeadjustment that only outbound peers influence time data (Jon Atack)
b1646f1bb5 test: set segwit height back to 0 on regtest (Martin Zumsande)
ef6a37b7c4 rpc: rename getdeploymentinfo status-next to status_next (Jon Atack)
2a6fcf9c13 init, doc: improve -onlynet help and tor/i2p documentation (Jon Atack)

Pull request description:

  Backport the following to 23.x:

  - #24468
  - #24528
  - #24527
  - #24609
  - #24555
  - #24663
  - #24572
  - #24636
  - #24553
  - #24659
  - #24521
  - #24523
  - #24690
  - #24710

  Possibly also:
  - #24579
  - #24691

ACKs for top commit:
  laanwj:
    List-of-commits ACK 174af33d5d, I think we should merge this and move forward with rc3..
  hebasto:
    ACK 174af33d5d

Tree-SHA512: 5a493e1652b780b527767d6ca9e67012abd2fa5573496e85e0d8aa4bed3eb332bfcd72610b8dfb954ff274d42450623233c96c479de2085b9c8344ba5abf1935
2022-03-31 12:19:22 +01:00
Hennadii Stepanov
174af33d5d
util: Add inotify_rm_watch to syscall sandbox (AllowFileSystem)
Github-Pull: bitcoin#24690
Rebased-From: f05a4cd
2022-03-31 10:38:11 +02:00
Hennadii Stepanov
ded10fe3ea
build: Fix Boost.Process test for Boost 1.78
Github-Pull: bitcoin#24523
Rebased-From: 532c64a
2022-03-31 10:38:09 +02:00
Hennadii Stepanov
26c2f23f36
build: Fix Boost.Process detection on macOS arm64
Could be tested as follows:
```
% brew install boost@1.76
% ./autogen.sh
% ./configure --with-boost='/opt/homebrew/opt/boost@1.76'
```

Github-Pull: bitcoin#24521
Rebased-From: 1d4157a
2022-03-31 10:37:15 +02:00
fanquake
85f85c7e5f
util: add linkat to syscall sandbox (AllowFileSystem)
Github-Pull: bitcoin#24659
Rebased-From: 9809db3
2022-03-31 10:30:14 +02:00