Skip to content

Conversation

fanquake
Copy link
Member

@fanquake fanquake commented Oct 20, 2021

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.

@fanquake
Copy link
Member Author

cc @real-or-random @jonasnick

fanquake added a commit to fanquake/bitcoin that referenced this pull request Oct 20, 2021
These tests will fail if built against OpenSSL 3. They have been removed
upstream, bitcoin-core/secp256k1#983, however
rather than backport a subtree update, we can just disable the tests.

See also: bitcoin#23314
@sipa
Copy link
Member

sipa commented Oct 20, 2021

No objection to updating to the current master branch.

Do be aware that due to bitcoin-core/secp256k1#956 a table that was previously built at runtime, is now precomputed as part of the source code. That's 2.4 MB of C code being added to the repository, and 0.5 MiB added to the binary size.

I don't expect that to be a problem, but if the binary size increase is an issue, it can be reduced with a configure flag (with a mild validation performance reduction).

@maflcko
Copy link
Member

maflcko commented Oct 20, 2021

If you are going to backport a --disable-openssl-tests to 22.x, wouldn't a cleaner first patch be to submit --disable-openssl-tests to master? This would also avoid a successive bump in a short time.

@fanquake
Copy link
Member Author

fanquake commented Oct 20, 2021

If you are going to backport a --disable-openssl-tests to 22.x

It wasn't going be to a backport, as I would rather make the subtree update here, but we can always include that commit here, and then do a subtree update after.

This would also avoid a successive bump in a short time.

It's not clear how soon that bump would be, and it could well be too late for 23.0.

@maflcko
Copy link
Member

maflcko commented Oct 20, 2021

Is there anything in the bump that we need, assuming the test issue is fixed with a configure flag? Especially, since you are planning another bump after bitcoin-core/secp256k1#988 (soon?).

@real-or-random
Copy link
Contributor

No objection to updating to the current master branch.

Same here.

Is there anything in the bump that we need, assuming the test issue is fixed with a configure flag?

I don't think so.

@maflcko
Copy link
Member

maflcko commented Oct 20, 2021

Also, there was discussion about a 1.0 release of libsecp256k1, so I am wondering if we should wait for that as well

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 bitcoin#23048.
@fanquake fanquake force-pushed the libsecp256k1_subtree_update branch from 2f1c6a4 to d752454 Compare October 20, 2021 08:17
@fanquake
Copy link
Member Author

Ok. I've changed this to just disable the tests for now, as I would like to get this merged and backported into 22.x. I'll update #23315 to be a proper backport after this has been merged.

@maflcko
Copy link
Member

maflcko commented Oct 20, 2021

cr ACK d752454

Didn't test on Alpine or elsewhere.

@maflcko maflcko changed the title upstream: libsecp256k1 subtree update build: explicitly disable libsecp256k1 openssl based tests Oct 20, 2021
@elichai
Copy link
Contributor

elichai commented Oct 20, 2021

Code review ACK d752454

@real-or-random
Copy link
Contributor

Ok. I've changed this to just disable the tests for now,

Concept ACK

@real-or-random
Copy link
Contributor

Also, there was discussion about a 1.0 release of libsecp256k1, so I am wondering if we should wait for that as well

This would be a nice goal in order to create pressure on us to do a release. But my more pessimistic internal voice tells me that bitcoin-core/secp256k1#988 will be in before we have a release. Anyway, we should seriously do a release!

@laanwj laanwj merged commit d807ace into bitcoin:master Oct 20, 2021
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Oct 20, 2021
@fanquake fanquake deleted the libsecp256k1_subtree_update branch October 20, 2021 23:48
fanquake added a commit to fanquake/bitcoin that referenced this pull request Oct 20, 2021
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 bitcoin#23048.

Github-Pull: bitcoin#23314
Rebased-From: d752454
@fanquake
Copy link
Member Author

Backported in #23315.

maflcko pushed a commit that referenced this pull request Oct 21, 2021
…ased tests

e959b46 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
luke-jr pushed a commit to bitcoinknots/bitcoin that referenced this pull request Dec 14, 2021
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 bitcoin#23048.

Github-Pull: bitcoin#23314
Rebased-From: d752454
fanquake added a commit that referenced this pull request Dec 18, 2021
314195c Remove unnecessary cast in CKey::SignSchnorr (Pieter Wuille)
a1f76cd Remove --disable-openssl-tests for libsecp256k1 configure (Pieter Wuille)
86dbc4d Squashed 'src/secp256k1/' changes from be8d9c2..0559fc6 (Pieter Wuille)

Pull request description:

  The motivation for this bump is getting rid of a cast in `CKey::SignSchnorr`; the `aux_rand` argument isn't modified by the `secp256k1_schnorrsig_sign` function, but was marked as non-`const` anyway. This is fixed now (bitcoin-core/secp256k1#966), and the cast is removed in this PR.

  There are a few other relevant changes:
  * (bitcoin-core/secp256k1#956): replaces a runtime-computed table with a precomputed one; this adds arouns 1 MiB to the binary size, but is a step towards significantly simplifying the API. If 1 MiB is too much, it can be reduced by 2 or 4 (or more) for a slight verification performance reduction.
  * (bitcoin-core/secp256k1#983): removes (test/bench only) OpenSSL support entirely, removing the need to pass `--disable-openssl-tests` (see #23314).
  * (bitcoin-core/secp256k1#810): mild performance increase for 64-bit non-x86 platforms.
  * (bitcoin-core/secp256k1#1002): Make aux_rnd32==NULL behave identical to 0x0000..00 (which impacts BIP341/BIP342 signing in Bitcoin Core, making it more strictly BIP340 compliant, though not in a manner that affects security).

ACKs for top commit:
  fanquake:
    ACK 314195c - this includes a nice simplification to the lilbsecp build system (and thus our build system), and fixes issues like #22854. Did a Guix build on x86 (above), as well as a build on arm64 (except for the arm64 host):

Tree-SHA512: 0e048390fc148fbbdf5b98d9cce8c71067564e7d69d97b68347808a9bc45a04f4fc653c392c880d79d5d8b9cf282195520955581ac4f1595f6a948080cf5949d
knst pushed a commit to knst/dash that referenced this pull request Jul 27, 2022
…enssl based tests

e959b46 build: explicitly disable libsecp256k1 openssl based tests (fanquake)

Pull request description:

  Backport of bitcoin#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 bitcoin#23048.

Top commit has no ACKs.

Tree-SHA512: ab3213dc82e7a64a005ce237710009bb447dee2702c4c02245e70df62063a00add73c4e80e9c619ce57345d4a2808fd4dc08e2e02a319b0f3d9285b8b0056599
UdjinM6 pushed a commit to dashpay/dash that referenced this pull request Jul 27, 2022
…enssl based tests (#4941)

e959b46 build: explicitly disable libsecp256k1 openssl based tests (fanquake)

Pull request description:

  Backport of bitcoin#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 bitcoin#23048.

Top commit has no ACKs.

Tree-SHA512: ab3213dc82e7a64a005ce237710009bb447dee2702c4c02245e70df62063a00add73c4e80e9c619ce57345d4a2808fd4dc08e2e02a319b0f3d9285b8b0056599

Co-authored-by: MarcoFalke <falke.marco@gmail.com>
@bitcoin bitcoin locked and limited conversation to collaborators Oct 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants