1
1
mirror of https://github.com/bitcoin/bitcoin.git synced 2024-05-17 23:56:39 +00:00

30022 Commits

Author SHA1 Message Date
muxator
403de22119
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: 9153ff3e274953ea0d92d53ddab4c72deeace1b1
2022-10-28 11:50:52 +01:00
muxator
db20d278e2
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: addf9d6502db12cebcc5976df3111cac1a369b82
2022-10-28 11:49:22 +01:00
Hennadii Stepanov
d174db0f3d
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: d6adbb7ee1de661ad89879609eecd11129322405
2022-10-28 11:47:15 +01:00
MacroFake
6164618964
Merge bitcoin/bitcoin#26034: [22.x] Prevent data race for pathHandlers
2c6c628ab95b018ac7ce6595954644bf9197ce35 Prevent data race for `pathHandlers` (Hennadii Stepanov)

Pull request description:

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

ACKs for top commit:
  dergoegge:
    ACK 2c6c628ab95b018ac7ce6595954644bf9197ce35

Tree-SHA512: 9b172f73407fdd5a79e67ed1b2b3b7c6e7989ea1de6757c839ee7040d62ebbd87d10770c6fcb39709a07d52345dc9b7b244ef2b490c9ad8a656ff8ad4d618a01
2022-10-24 11:46:15 +02:00
MacroFake
2d3161fdd5
Merge bitcoin/bitcoin#26350: [22.x] Revert "build: Use Homebrew's sqlite package if it is available"
63d2ee9a50c5690df08f25e6840d10be8232f106 doc: remove brew install sqlite from macOS docs (fanquake)
bf42d7de56404b0afe23d81c6b758d1e9cffdf7b 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 22.x branch.

ACKs for top commit:
  hebasto:
    ACK 63d2ee9a50c5690df08f25e6840d10be8232f106, I have reviewed the code and it looks OK, I agree it can be merged.
  stickies-v:
    re-ACK [63d2ee9](63d2ee9a50)

Tree-SHA512: 66738fc67df86db536a500fe253257976208b31773b891d6b6865b795ba4c933345febcc81773db159d3e1078810dbc8053fe63a7e9acad25b28d02dbf2687e8
2022-10-24 11:44:51 +02:00
fanquake
63d2ee9a50
doc: remove brew install sqlite from macOS docs 2022-10-24 09:35:07 +08:00
fanquake
bf42d7de56
Revert "build: Use Homebrew's sqlite package if it is available"
This reverts ee7b84e63cbeadd5e680d69ff0548275581e9241 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: d216d714aae36e6f1c95f82aef81a0be74dee2f3
2022-10-19 20:37:52 +08:00
Hennadii Stepanov
2c6c628ab9
Prevent data race for pathHandlers
Github-Pull: bitcoin/bitcoin#25983
Rebased-From: 4296dde28757d88a7076847484669fb202b47bc8
2022-09-07 12:26:05 +02:00
laanwj
cfb0eea91e
Merge bitcoin/bitcoin#25317: 22.x Backport new Windows code signing certificate
c4aacfbf6510261edc3b3f4b3d78db95fedfb92c windeploy: Renewed windows code signing certificate (Andrew Chow)

Pull request description:

  Backports:
  - https://github.com/bitcoin/bitcoin/pull/25201

ACKs for top commit:
  LarryRuane:
    utACK c4aacfbf6510261edc3b3f4b3d78db95fedfb92c

Tree-SHA512: cce6c85cecf0014e0b123b42e454db2123becf02f4274b1c355f69d8e7b8f77cd12af86adc251da8146b7bd3a55e9f47e3c1ed12f70c5267b3ac3283634526ec
2022-06-10 13:25:48 +02:00
Andrew Chow
c4aacfbf65
windeploy: Renewed windows code signing certificate
Github-Pull: #25201
Rebased-From: 7e9fe6d800ee8f3381e8f6ad2371f7775c68fad9
2022-06-09 12:30:51 +01:00
MacroFake
d2e0c27e45
Merge bitcoin/bitcoin#25250: [22.x] test: replace hashlib.ripemd160 with an own implementation
ea3e028bcc99b2e3ddc4c9e96eb487f4e5418b3f Swap out hashlib.ripemd160 for own implementation (Pieter Wuille)
52036915fa774b80dec853c1c79a302f474d35ac Add pure Python RIPEMD-160 (Pieter Wuille)

Pull request description:

  Needed to unbreak the tsan CI task, which runs the test on Ubuntu Jammy, which has ripemd160 removed from openssl.

ACKs for top commit:
  fanquake:
    ACK ea3e028bcc99b2e3ddc4c9e96eb487f4e5418b3f - backport looks correct. tsan job has [timed out](https://github.com/bitcoin/bitcoin/pull/25250/checks?check_run_id=6657882409).

Tree-SHA512: 1117567c5de8287d6c4ada5cdc5990116808da9349f5aa3633c01b7aa12ea0ae6208418c7082e46dfde584b43807dce5ade5e8850cc392e1e0d42d9897a70017
2022-05-31 09:42:42 +02:00
laanwj
34cb63e895
Merge bitcoin/bitcoin#25242: [22.x] rpc: Capture potentially large UniValue by ref for rpcdoccheck
7fcac96597218691724002c2b8ecb3dbcf60bf06 rpc: Capture potentially large UniValue by ref for rpcdoccheck (Martin Zumsande)

Pull request description:

ACKs for top commit:
  fanquake:
    ACK 7fcac96597218691724002c2b8ecb3dbcf60bf06

Tree-SHA512: e1e321ce49f5696d1b08d4a9cf77bdc90bdeedbe776d19fe13443d898b966c046593d20758376db4edb5baf17cb925a2ff21201889af977456c18cc43094a683
2022-05-30 19:48:10 +02:00
Pieter Wuille
ea3e028bcc Swap out hashlib.ripemd160 for own implementation
Github-Pull: 23716
Rebased-From: 5b559dc7ecf37ab1604b75ec8ffe8436377a5fb1
2022-05-30 17:40:08 +02:00
Pieter Wuille
52036915fa Add pure Python RIPEMD-160
Github-Pull: 23716
Rebased-From: ad3e9e1f214d739e098c6ebbd300da5df1026a44
2022-05-30 17:40:07 +02:00
Martin Zumsande
7fcac96597 rpc: Capture potentially large UniValue by ref for rpcdoccheck
Github-Pull: 25237
Rebased-From: 20ff4991e548630d7bb5e491fa4d69ec49369872
2022-05-30 10:46:02 +02:00
laanwj
04fdd644b4
Merge bitcoin/bitcoin#25180: [22.x] qt: Avoid crash on startup if int specified in settings.json
344537cf04373d757522e042f29f25a0f9595404 qt: Avoid crash on startup if int specified in settings.json (Ryan Ofsky)

Pull request description:

  Backport of #24498 to 22.x branch

  This was already backported to the 23.x branch in #24511, but vasild discovered the issue can affect 22.x as well https://github.com/bitcoin/bitcoin/pull/15936#issuecomment-1115992866:

  > While testing this, 22.x crashes if `settings.json` contains `"prune": 1234` due to #24498 which was fixed in 23.0. So, if this PR is included in 24.x and a user upgrades to 24.x and then downgrades to 22.x his 22.x would crash at startup.

  It's not very important to backport this to 22.x because I can work around the issue other ways, but I do see 22.x is listed as an active branch https://github.com/bitcoin/bitcoin/branches, so if there is another 22.x release, it would be nice to have this fix and not have a wonky uncaught univalue exception waiting to be hit

ACKs for top commit:
  laanwj:
    ACK 344537cf04373d757522e042f29f25a0f9595404

Tree-SHA512: 479f7fb4b4b73ec85f28e97af9b21d54245b8ab4d246e50134b37f1726fe3c57cf388fe4973f8ccf1b9efa7663166d1fbeb631758b39d4490b5eab82d0c83d77
2022-05-25 12:48:17 +02:00
Ryan Ofsky
344537cf04 qt: Avoid crash on startup if int specified in settings.json
Fix GUI startup crash reported by Rspigler in
https://github.com/bitcoin/bitcoin/issues/24457 that happens if
settings.json contains an integer value for any of the configuration
options which GUI settings can currently clash with (-dbcache, -par,
-spendzeroconfchange, -signer, -upnp, -natpmp, -listen, -server, -proxy,
-proxy, -onion, -onion, -lang, and -prune).

Fix is a one-line change in ArgsManager::GetArg.

Github-Pull: bitcoin/bitcoin#24498
Rebased-From: 5b1aae12ca4a99c6b09349981a4902717a6a5d3e
2022-05-20 13:24:56 -04:00
fanquake
cb13ba6d11
Merge bitcoin/bitcoin#24476: [22.x] fs: Make compatible with boost 1.78
021c3d892fb6b801143bb433e85f329fd250c97d fs: Make compatible with boost 1.78 (Andrew Chow)

Pull request description:

  Backports #24104 to the `22.x` branch to fix the build with Boost 1.78.0.

ACKs for top commit:
  achow101:
    ACK 021c3d892fb6b801143bb433e85f329fd250c97d
  gruve-p:
    ACK 021c3d892f
  hebasto:
    ACK 021c3d892fb6b801143bb433e85f329fd250c97d

Tree-SHA512: 439c463c36b15a8507d58c3d9c6a02f6dfb209bcc85a8ed39a9cc3fe023530f9f74cc3fd545710b0bb15b4ff6afae802471c6819db7cd851dddd537938e0eef5
2022-03-07 09:40:11 +00:00
Andrew Chow
021c3d892f
fs: Make compatible with boost 1.78
Github-Pull: #24104
Rebased-From: dc5d6b0d4793ca978f71f69ef7d6b818794676c2
2022-03-05 15:58:05 +00:00
fanquake
9b5f674abb
Merge bitcoin/bitcoin#23276: [22.x] Backports for 22.x
269553fe73b17f8acda3071a48836c66092d31d0 test: Call ceildiv helper with integer (Martin Zumsande)
2f60fc6d8c6b1d8e74c340fed495b76deac4a048 ci: Replace soon EOL hirsute with jammy (MarcoFalke)
801b0f05aaf974ab9b0e3f7b59948564638d593f build: patch qt to explicitly define previously implicit header include (Kittywhiskers Van Gogh)
c768bfa08af034c744402d4294cc323d653b97b8 tests: Calculate fees more similarly to CFeeRate::GetFee (Andrew Chow)
f66bc42957ad2e86982c8c487f821683d3009b43 tests: Test for assertion when feerate is rounded down (Andrew Chow)
bd7e08e36bf2e1238ddf8cc01433f8db82f848c9 fees: Always round up fee calculated from a feerate (Andrew Chow)
227ae652542451834faddbaffb54fc384e9156e6 wallet: fix segfault by avoiding invalid default-ctored `external_spk_managers` entry (Sebastian Falbesoner)
282863a7e9ddfb14ef02182945ca1978699dbe52 refactor: include a missing <limits> header in fs.cpp (Joan Karadimov)
7febe4f3c7f482390c4aa6fc528e2ee3fb34b142 consensus: don't call GetBlockPos in ReadBlockFromDisk without lock (Jon Atack)
c671c6f4706d17cccfe5c35950235f8777a7975f the result of CWallet::IsHDEnabled() was initialized with true. (Saibato)
a5a153882609c8d77118a88a9a440d4966c8d0ef build, qt: Fix typo in QtInputSupport check (Hennadii Stepanov)
c95b188fc08387d0a89668e56bce3a4fad1ee611 system: skip trying to set the locale on NetBSD (fanquake)
c1cdeddd905b5444eac330d565b297b3d4941c5d guix: Fix powerpc64(le) dynamic linker name (Carl Dong)
92d44ff36cc12e34f93bfcc4ec31ffae8787100c doc: Add 23061 release notes (MarcoFalke)
db76db7329f6357c5226cd08611fe0f669c002af Fix (inverse) meaning of -persistmempool (MarcoFalke)
85c78e08ec857e51a9748d1a2492d1d3794b221a build: Restrict check for CRC32C intrinsic to aarch64 (W. J. van der Laan)

Pull request description:

  Collecting backports for the 22.1 release. Currently:
  * https://github.com/bitcoin/bitcoin/pull/23045
  * https://github.com/bitcoin/bitcoin/pull/23061
  * https://github.com/bitcoin/bitcoin/pull/23148
  * https://github.com/bitcoin/bitcoin/pull/22390
  * https://github.com/bitcoin/bitcoin/pull/22820
  * https://github.com/bitcoin/bitcoin/pull/22781
  * https://github.com/bitcoin/bitcoin/pull/22895
  * https://github.com/bitcoin/bitcoin/pull/23335
  * https://github.com/bitcoin/bitcoin/pull/23333
  * https://github.com/bitcoin/bitcoin/pull/22949
  * https://github.com/bitcoin/bitcoin/pull/23580
  * https://github.com/bitcoin/bitcoin/pull/23504
  * https://github.com/bitcoin/bitcoin/pull/24239

ACKs for top commit:
  achow101:
    ACK 269553fe73b17f8acda3071a48836c66092d31d0

Tree-SHA512: b3a57ea241be7a83488eeb032276f4cf82a0987aada906a82f94a20c4acf9f2397708249dcecbe1c7575e70d09c60b835233d4718af4013c7bc58896c618274c
2022-03-01 13:40:11 +00:00
Martin Zumsande
269553fe73
test: Call ceildiv helper with integer
It returns an incorrect result when called with a Decimal,
for which the "//" operator works differently.
Also drop unnecessary call to satoshi_round.

Github-Pull: #24239
Rebased-From: d1fab9d5d27a2db2546db0f610e0f6929ec4864e
2022-02-15 09:22:06 +00:00
MarcoFalke
2f60fc6d8c
ci: Replace soon EOL hirsute with jammy
Github-Pull: #23504
Rebased-From: fafa66e424cd0c4a4ac3175e0d3b15a54626aa4b
2022-02-15 09:22:06 +00:00
Kittywhiskers Van Gogh
801b0f05aa
build: patch qt to explicitly define previously implicit header include
macOS Monterey has refactored some includes such that implicitly defined headers were no longer exposed and that in turns breaks building Qt on macOS 12.

Additional Resources:
 - https://bugreports.qt.io/browse/QTBUG-97855
 - https://codereview.qt-project.org/c/qt/qtbase/+/378706
 - https://code.qt.io/cgit/qt/qtbase.git/commit/src/plugins/platforms/cocoa?id=dece6f5840463ae2ddf927d65eb1b3680e34a547

Github-Pull: #23580
Rebased-From: 8196b0a2bc63c35769eca213cba4a5844a737b90
2022-02-15 09:22:06 +00:00
Andrew Chow
c768bfa08a
tests: Calculate fees more similarly to CFeeRate::GetFee
Because of floating point precision issues, not all of the rounding done
is always correct. To fix this, the fee calculation for
assert_fee_amount is changed to better reflect how CFeeRate::GetFee does
it.

First the feerate is converted to an int representing sat/kvb. Then this
is multiplied by the transaction size, divivided by 1000, and rounded up
to the nearest sat. The result is then converted back to BTC (divided by
1e8) and then rounded down to the nearest sat to avoid precision errors.

Github-Pull: #22949
Rebased-From: 80dc829be7f8c3914074b85bb4c125baba18cb2c
2022-02-15 09:22:06 +00:00
Andrew Chow
f66bc42957
tests: Test for assertion when feerate is rounded down
When calculating a txs absolute fee, if the fee is rounded down to the
nearest satoshi, it is possible for the coin selection algorithms to
undercalculate the fee needed. This can lead to an assertion error in
some situations. One such scenario is added to
rpc_fundrawtransaction.py.

Github-Pull: #22949
Rebased-From: ce2cc44afd51f3df4ee7f14ea05b8da229183923
2022-02-15 09:22:06 +00:00
Andrew Chow
bd7e08e36b
fees: Always round up fee calculated from a feerate
When calculating the fee for a given tx size from a fee rate, we should
always round up to the next satoshi. Otherwise, if we round down (via
truncation), the calculated fee may result in a fee with a feerate
slightly less than targeted.

This is particularly important for coin selection as a slightly lower
feerate than expected can result in a variety of issues.

Github-Pull: #22949
Rebased-From: 0fbaef9676a1dcb84bcf95afd8d994831ab327b6
2022-02-15 09:22:06 +00:00
Sebastian Falbesoner
227ae65254
wallet: fix segfault by avoiding invalid default-ctored external_spk_managers entry
In the method `CWallet::LoadActiveScriptPubKeyMan`, the map
`external_spk_managers` (or `internal_spk_managers`, if parameter
`internal` is false) is accessed via std::map::operator[], which means
that a default-ctored entry is created with a null-pointer as value, if
the key doesn't exist.  As soon as this value is dereferenced, a
segmentation fault occurs, e.g. in `CWallet::KeypoolCountExternalKeys`.

The bevaviour can be reproduced by the following steps (starting with empty regtest datadir):

$ ./src/bitcoind -regtest -daemon
$ ./src/bitcoin-cli -regtest -named createwallet_name=wallet descriptors=true blank=true
$ cat regtest-descriptors.txt
[
  {
    "desc": "tr([e4445899/49'/1'/0']tprv8ZgxMBicQKsPd8jCeBWsYLEoWxbVgzJDatJ7XkwQ6G3uF4FsHuaziHQ5JZAW4K515nj6kVVwPaNWZSMEcR7aFCwL4tQqTcaoprMKTTtm6Zg/1/*)#mr3llm7f",
    "timestamp": 1634652324,
    "active": true,
    "internal": true,
    "range": [
      0,
      999
    ],
    "next": 0
  }
]
$ ./src/bitcoin-cli -regtest importdescriptors "$(cat regtest-descriptors.txt)"
[
  {
    "success": true
  }
]
$ ./src/bitcoin-cli -regtest getwalletinfo
error: timeout on transient error: Could not connect to the server 127.0.0.1:18443 (error code 1 - "EOF reached")

Bug reported by Josef Vondrlik (josef-v).

Github-Pull: #23333
Rebased-From: 6911ab95f19d2b1f60f2d0b2f3961fa6639d4f31
2022-02-15 09:22:05 +00:00
Joan Karadimov
282863a7e9
refactor: include a missing <limits> header in fs.cpp
... needed for std::numeric_limits<T>::max on WIN32

Github-Pull: #23335
Rebased-From: 077a875d94b51e3c87381133657be98989c8643e
2022-02-15 09:22:05 +00:00
Jon Atack
7febe4f3c7
consensus: don't call GetBlockPos in ReadBlockFromDisk without lock
Github-Pull: #22895
Rebased-From: 350e034e64d175f3db4c85ddca42e76e279912f6
2022-02-15 09:22:05 +00:00
Saibato
c671c6f470
the result of CWallet::IsHDEnabled() was initialized with true.
But in case of no keys or a blank hd wallet the iterator would be skipped
and not set to false but true, since the loop would be not entered.

That had resulted in a wrong return and subsequent false HD and watch-only
icon display in gui when reloading a wallet after closing.

Update src/wallet/wallet.cpp

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

Github-Pull: #22781
Rebased-From: 8733a8e84c4b2e484f6ed6159fcf5f29a360d42e
2022-02-15 09:22:05 +00:00
Hennadii Stepanov
a5a1538826
build, qt: Fix typo in QtInputSupport check
Github-Pull: #22820
Rebased-From: e251726affe97da745362c82567c2377ceb07d21
2022-02-15 09:22:05 +00:00
fanquake
c95b188fc0
system: skip trying to set the locale on NetBSD
Just treat it the same as the other BSDs.

Fixes #17379.

Github-Pull: #22390
Rebased-From: fdd71448e78f442ffd93a3a3398a5062eaba9f1b
2022-02-15 09:22:04 +00:00
Carl Dong
c1cdeddd90
guix: Fix powerpc64(le) dynamic linker name
I used Guix's values for the powerpc64(le) dynamic linkers, and the
/lib-prefix seems to be a Guix-ism rather than standard. The standard
path for the linker-loaders start with /lib64.

I've taken the new loader values from SYSDEP_KNOWN_INTERPRETER_NAMES in
glibc's sysdeps/unix/sysv/linux/powerpc/ldconfig.h file.

For future reference, loader path values can also be found on glibc's
website: https://sourceware.org/glibc/wiki/ABIList?action=recall&rev=16

Github-Pull: #23148
Rebased-From: b96adcbfae90b3e041754f11624cac04c1999e8c
2022-02-15 09:22:04 +00:00
MarcoFalke
92d44ff36c
doc: Add 23061 release notes
Github-Pull: #23061
Rebased-From: faa9c19a4b27e7fabf7c5deae1b4c4ca612ed01a
2022-02-15 09:22:04 +00:00
MarcoFalke
db76db7329
Fix (inverse) meaning of -persistmempool
Github-Pull: #23061
Rebased-From: faff17bbde6dcb1482a6210bc48b3192603a446f
2022-02-15 09:22:04 +00:00
W. J. van der Laan
85c78e08ec
build: Restrict check for CRC32C intrinsic to aarch64
`crc32c`'s hardware accelerated code doesn't handle ARM 32-bit at all.
Make the check in `configure.ac` check for this architecture explicitly.

For the release binaries, the current `configure.ac` check happens
to work: it enables it on aarch64 but disables it for armhf. However
some combination of compiler version and settings might ostensibly cause
this check to succeed on armhf (as reported on IRC). So make the 64-bit
platform requirement explicit.

Github-Pull: #23045
Rebased-From: f2747d1602ec4e1128356b861b2167daf66a845b
2022-02-15 09:22:04 +00:00
fanquake
eff9709723
Merge bitcoin/bitcoin#24256: [22.x] build: Bump depends packages (zmq, libXau)
d34691ce0c07b5437c0e4fa9aea4afd699530151 ci: Use dash when building depends in centos build (MarcoFalke)
b5d12edb0842919ad5213e65db48d8cf8f0e676e ci: Bump CentOS 8 image (MarcoFalke)
685ac6ad2e48093d69cccd1d242ed36a326cf90b build: fix depends zeromq dash compatibility (fanquake)
4b92a6b42cb80eafa62fe7987860e8925b8c2361 build: libXau 1.0.9 (fanquake)

Pull request description:

  Backports #24212 to the 22.x branch. Included a bump to libXau and an additional commit for zeromq to fix dash compatibility.

ACKs for top commit:
  hebasto:
    ACK d34691ce0c07b5437c0e4fa9aea4afd699530151

Tree-SHA512: 862b819df6d74cfb0499d1f1040cfbf70dc4449108521466ff22db48b942949fec5c5e93d5f652109f228eac8e60413830f7c22b3879a0bd2441a60b87470972
2022-02-15 09:20:17 +00:00
MarcoFalke
d34691ce0c
ci: Use dash when building depends in centos build
Github-Pull: #24212
Rebased-From: fafc55a489d8f654dd7732b699c9bf51b5136b4b
2022-02-14 16:54:36 +00:00
MarcoFalke
b5d12edb08
ci: Bump CentOS 8 image
Github-Pull: #24212
Rebased-From: fa5457e64adfc6060382bd36c45e95be6ea693ef
2022-02-14 16:54:36 +00:00
fanquake
685ac6ad2e
build: fix depends zeromq dash compatibility
Picks upstream commit 9a397666d28ca5f3c0d8233be3d39b2206555f45 to fix
dash compatibility. This fixes building zeromq in our CentOS 8 CI. This
is my preferred fix over backporting a zeromq update (which would
contain this change).
2022-02-14 16:54:31 +00:00
fanquake
4b92a6b42c
build: libXau 1.0.9
Github-Pull: #23489
Rebased-From: fc65127244320500022c3772141850eda28b99af
2022-02-09 09:57:27 +00:00
fanquake
a06915dece
Merge bitcoin/bitcoin#24215: [22.x] guix: ignore additional failing certvalidator test
b7ecef1ddf0c9f1f53ab220bee2e19a6b8978e34 guix: ignore additioanl failing certvalidator test (fanquake)

Pull request description:

  Backports 8588591965 from #24057 so that from-scratch Guix builds for the Darwin host aren't broken due to a (very recently) expired certificate causing one of the python-certvalidator tests to fail. Kept separate from #23276 because that hasn't gotten review attention, and I don't think we should leave `22.x` Darwin Guix builds broken for any longer than we have to.

  Fixes #24110.

  ```bash
  ======================================================================
  ERROR: test_revocation_mode_soft (tests.test_validate.ValidateTests)
  ----------------------------------------------------------------------
  Traceback (most recent call last):
    File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/test_validate.py", line 85, in test_revocation_mode_soft
      validate_path(context, path)
    File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 50, in validate_path
      return _validate_path(validation_context, path)
    File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 358, in _validate_path
      raise PathValidationError(pretty_message(
  certvalidator.errors.PathValidationError: The path could not be validated because the end-entity certificate expired 2022-01-14 12:00:00Z
  ```

  Guix Build:
  ```bash
  bash-5.1# find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
  359755bffecc64b4c005c5cdee3824190f6b1759dbc6c20034476dcc06413959  guix-build-b7ecef1ddf0c/output/dist-archive/bitcoin-b7ecef1ddf0c.tar.gz
  0c6700270ec75991d70a97cad77e22cc00553f812edb56c1bac5ef6421f963e1  guix-build-b7ecef1ddf0c/output/x86_64-apple-darwin/SHA256SUMS.part
  87d4637a87959a304422550edf87feda3953d7305894154a6a2d413cc0dd2034  guix-build-b7ecef1ddf0c/output/x86_64-apple-darwin/bitcoin-b7ecef1ddf0c-osx-unsigned.dmg
  9cabae32689bd5f93e7faaaf341827f1c4069a63ab6f74276564e47819343b6c  guix-build-b7ecef1ddf0c/output/x86_64-apple-darwin/bitcoin-b7ecef1ddf0c-osx-unsigned.tar.gz
  bb5fb113bc022a305e49783d0ba48be90aca61e4a942beeb45206dbc5b91ca6e  guix-build-b7ecef1ddf0c/output/x86_64-apple-darwin/bitcoin-b7ecef1ddf0c-x86_64-apple-darwin.tar.gz
  ```

ACKs for top commit:
  MarcoFalke:
    Concept ACK b7ecef1ddf0c9f1f53ab220bee2e19a6b8978e34

Tree-SHA512: 8f761fece405b3b974b9f42ab4ebf8995d3284ce7bfb0556ff8459e1a7d30f8bd2f407cb5651e9fa1094c493148bba7a8918a251b54a83efe12acfaf3d39f350
2022-02-09 09:38:26 +00:00
fanquake
b7ecef1ddf
guix: ignore additioanl failing certvalidator test
======================================================================
ERROR: test_revocation_mode_soft (tests.test_validate.ValidateTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/test_validate.py", line 85, in test_revocation_mode_soft
    validate_path(context, path)
  File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 50, in validate_path
    return _validate_path(validation_context, path)
  File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 358, in _validate_path
    raise PathValidationError(pretty_message(
certvalidator.errors.PathValidationError: The path could not be validated because the end-entity certificate expired 2022-01-14 12:00:00Z

Github-Pull: #24057
Rebased-From: 85885919656a3f606f3d7f208378aabe95f3f62d
2022-01-31 16:32:59 +08:00
MarcoFalke
56156a1f08
Merge bitcoin/bitcoin#23315: [22.x] build: explicitly disable libsecp256k1 openssl based tests
e959b46aa933856e7636557f4ec6fce0efbc76aa build: explicitly disable libsecp256k1 openssl based tests (fanquake)

Pull request description:

  Backport of #23314

  These tests are failing when run against OpenSSL 3, and have been
  removed upstream, bitcoin-core/secp256k1#983, so
  disabled them for now to avoid `make check` failures.

  Note that this will also remove warning output from our build, due to
  the use of deprecated OpenSSL API functions. See #23048.

Top commit has no ACKs.

Tree-SHA512: ab3213dc82e7a64a005ce237710009bb447dee2702c4c02245e70df62063a00add73c4e80e9c619ce57345d4a2808fd4dc08e2e02a319b0f3d9285b8b0056599
2021-10-21 09:21:31 +02:00
fanquake
e959b46aa9
build: explicitly disable libsecp256k1 openssl based tests
These tests are failing when run against OpenSSL 3, and have been
removed upstream, https://github.com/bitcoin-core/secp256k1/pull/983, so
disabled them for now to avoid `make check` failures.

Note that this will also remove warning output from our build, due to
the use of deprecated OpenSSL API functions. See #23048.

Github-Pull: #23314
Rebased-From: d7524546abf1fa5be8e6317ee50585e966ae6b4c
2021-10-21 07:50:24 +08:00
MarcoFalke
12b315484d
Merge bitcoin/bitcoin#23275: [22.x] Add historical & clean out 22.0 rel notess
dff22619ffafbea1c3d55ccacf8677085384c3cd doc: clean out release-notes.md (fanquake)
405f58140d3279e021703e76544d1e88aee22195 doc: Add historical release notes for 22.0 (W. J. van der Laan)

Pull request description:

  Cleans out `release-notes.md`, and adds release notes for 22.0.

ACKs for top commit:
  MarcoFalke:
    cr ACK dff22619ffafbea1c3d55ccacf8677085384c3cd

Tree-SHA512: bfcfb8a4f6c5d572d9c91380f141141a5dd88936fa4c282c3dc93568b06a5fbca178f7e4b0dd5c0a24d6c2ef56242fd2012896186d04e3ea7666112386341a1b
2021-10-14 15:47:40 +02:00
fanquake
dff22619ff
doc: clean out release-notes.md 2021-10-14 10:38:26 +08:00
W. J. van der Laan
405f58140d
doc: Add historical release notes for 22.0
Github-Pull: #22971
Rebased-From: c88f43f1ac1e790f004c5f432bc4a58455b82280
2021-10-14 10:34:09 +08:00
W. J. van der Laan
a0988140b7
Merge bitcoin/bitcoin#22921: Some small improvements to release notes
9f9ffe5bb006ecc29dd3d668b685130ba1259389 Some small improvements to release notes (Pieter Wuille)

Pull request description:

  .

ACKs for top commit:
  laanwj:
    ACK 9f9ffe5bb006ecc29dd3d668b685130ba1259389
  dongcarl:
    ACK 9f9ffe5bb006ecc29dd3d668b685130ba1259389

Tree-SHA512: 63ff574eb1c5e7b5f2ac4fc99d3352d2de7fa05ccd0abbe58fcc0720b139ace05c855a6cf46ab7a5537b3f0792442d98dc155c3f3ee7bfd1127fe08f5fb01be5
v22.0
2021-09-08 20:16:07 +02:00
Pieter Wuille
9f9ffe5bb0 Some small improvements to release notes 2021-09-08 13:49:11 -04:00