]> Git Repo - secp256k1.git/log
secp256k1.git
5 years agoMerge #596: Make WINDOW_G configurable
Gregory Maxwell [Sat, 25 May 2019 10:15:59 +0000 (10:15 +0000)]
Merge #596: Make WINDOW_G configurable

a61a93f Clean up ./configure help strings (Tim Ruffing)
2842dc5 Make WINDOW_G configurable (Tim Ruffing)

Pull request description:

  This makes WINDOW_G a configurable value in the range of [2..24].
  The upper limit of 24 is a defensive choice. The code is probably
  correct for values up to 33 but those larger values yield in huge
  tables (>= 256MiB), which are i) unlikely to be really beneficial
  in practice and ii) increasingly difficult to test.

  The main point of this is not to make the window size configurable (using ./configure) but rather to use an external #define for the window size, which makes it configurable for embedded system that rely on their own build system (like in #595).

ACKs for commit a61a93:

Tree-SHA512: 0d58fdf4763340ddab992e95f6302a33d891476a7ac1748202ee99808e72b20754bb6935cbeaf0bb36077abaaff7d65f4848b1af64f1a0a5258239ba0d27020c

5 years agoClean up ./configure help strings
Tim Ruffing [Wed, 6 Mar 2019 13:10:38 +0000 (14:10 +0100)]
Clean up ./configure help strings

5 years agoMake WINDOW_G configurable
Tim Ruffing [Wed, 6 Mar 2019 12:12:33 +0000 (13:12 +0100)]
Make WINDOW_G configurable

This makes WINDOW_G a configurable value in the range of [2..24].
The upper limit of 24 is a defensive choice. The code is probably
correct for values up to 27 but those larger values yield in huge
tables (>= 256MiB), which are i) unlikely to be really beneficial
in practice and ii) increasingly difficult to test.

5 years agoMerge #626: Revert "Merge #620: Install headers automatically"
Gregory Maxwell [Fri, 24 May 2019 01:00:58 +0000 (01:00 +0000)]
Merge #626: Revert "Merge #620: Install headers automatically"

662918c Revert "Merge #620: Install headers automatically" (ian)

Pull request description:

  This reverts commit 91fae3ace0291b144b27fd8bbda509042f5400f1, reversing
  changes made to 5df77a0eda6e902a1aa9c6249cdeaec197b1e0cd.

  See discussion in https://github.com/bitcoin-core/secp256k1/pull/625

  After the change, if we enable any module, `make install` fails because of the
  duplicated files in the command line arguments.

  Closes https://github.com/bitcoin-core/secp256k1/issues/624

Tree-SHA512: 7769ede527ac307bff094603e5974c56b19e41bc2ef55113173d3dbc8e545d6add7ae044753fa0361595e5e7a746d6c8d641f98caa3381b683aa2b61a1742097

5 years agoRevert "Merge #620: Install headers automatically"
ian [Fri, 24 May 2019 00:34:54 +0000 (08:34 +0800)]
Revert "Merge #620: Install headers automatically"

This reverts commit 91fae3ace0291b144b27fd8bbda509042f5400f1, reversing
changes made to 5df77a0eda6e902a1aa9c6249cdeaec197b1e0cd.

See discussion in https://github.com/bitcoin-core/secp256k1/pull/625

After the change, if we enable any module, `make install` fails because of the
duplicated files in the command line arguments.

5 years agoMerge #561: Respect LDFLAGS and #undef STATIC_PRECOMPUTATION if using basic config
Gregory Maxwell [Thu, 23 May 2019 00:36:27 +0000 (00:36 +0000)]
Merge #561: Respect LDFLAGS and #undef STATIC_PRECOMPUTATION if using basic config

dbed75d Undefine `STATIC_PRECOMPUTATION` if using the basic config (DesWurstes)
310111e Keep LDFLAGS if `--coverage` (DesWurstes)

Pull request description:

  Update: **This is a trimmed pull request with strong rationale.**

  - Adding `--coverage` shouldn't reset `LDFLAGS`, this is definitely a typo
  - The basic configuration should undefine `STATIC_PRECOMPUTATION`, as generating it is not supported and it complicates #549

Tree-SHA512: 29f0dd4c870ec60d535346446b453da459ca843ed1265c2bc966bf0fcbdf3c5c79f9e48a419662e81d790a7003f8877a16e2a5a74aa5c0b79645e15ad56a0f66

5 years agoMerge #620: Install headers automatically
Gregory Maxwell [Thu, 23 May 2019 00:00:49 +0000 (00:00 +0000)]
Merge #620: Install headers automatically

16e8615 Install headers automatically (Víctor Mayoral Vilches)

Pull request description:

  This fix install all the headers under include/ into
  /usr/local/include. The fix solves problems that arise
  when building libraries that depend on secp256k1 such
  as libbitcoin-system which require all the headers

Tree-SHA512: 8a5dc664b278e47340bf7478ad278306c44c4c8ad17a023b198c6a927c67c7a7a50100357388342129078afdf7606d2ed06579ce1fc14195fa974510b933021b

5 years agoMerge #533: Make sure we're not using an uninitialized variable in secp256k1_wnaf_con...
Gregory Maxwell [Wed, 22 May 2019 04:43:53 +0000 (04:43 +0000)]
Merge #533: Make sure we're not using an uninitialized variable in secp256k1_wnaf_const(...)

248f046 Make sure we're not using an uninitialized variable in secp256k1_wnaf_const(...) (practicalswift)

Pull request description:

  Make sure we're not using an uninitialized variable in `secp256k1_wnaf_const(...)`:

  ```
  In file included from src/secp256k1.c:15:0,
                   from src/tests.c:17:
  src/ecmult_const_impl.h: In function ‘secp256k1_wnaf_const’:
  src/ecmult_const_impl.h:117:20: warning: ‘u’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       wnaf[word] = u * global_sign;
                      ^
  ```

  **Note to reviewers:** Perhaps an `assert(…);` is a bit drastic. What would be a more graceful way to handle this? :-)

Tree-SHA512: 536cd7cc5b87a84fbaac578cecbba81b8d82e4672a30a2db9a674b82856132e79b0158a6a88609bc24942ebdbf1fcd2c4399a4c31ab0654b88ace9c0e6f1eaf3

5 years agoMerge #617: Pass scalar by reference in secp256k1_wnaf_const()
Gregory Maxwell [Wed, 22 May 2019 04:38:27 +0000 (04:38 +0000)]
Merge #617: Pass scalar by reference in secp256k1_wnaf_const()

8979ec0 Pass scalar by reference in secp256k1_wnaf_const() (Tim Ruffing)

Pull request description:

  After this change, no struct or union is passed by value in the
  entire codebase. This makes it easier to compile the library with
  CompCert.

Tree-SHA512: 6b23e2b39701c3eeb6ae8c8d660cabe8872ac8f13141504c1ec55c47f2009e206129b34b31796e618114b60350598187df6df4c2be0e5c1b138a6126ad6a7484

5 years agoMerge #619: Clear a copied secret key after negation
Gregory Maxwell [Thu, 16 May 2019 08:37:20 +0000 (08:37 +0000)]
Merge #619: Clear a copied secret key after negation

069870d Clear a copied secret key after negation (Seonpyo Kim)

Pull request description:

  It closes #618

Tree-SHA512: 05299597c886c5d1a913fd0ce8c698d2e513eb80fbd33d571a02fc6910cfd337324c6f0f27175eaf125eb3478d38187763680e859ece9a469a034c9b8a8d6920

5 years agoInstall headers automatically
Víctor Mayoral Vilches [Wed, 15 May 2019 07:54:35 +0000 (09:54 +0200)]
Install headers automatically

This fix install all the headers under include/ into
/usr/local/include. The fix solves problems that arise
when building libraries that depend on secp256k1 such
as bitcoin-system which require all the headers

5 years agoClear a copied secret key after negation
Seonpyo Kim [Wed, 15 May 2019 06:55:01 +0000 (15:55 +0900)]
Clear a copied secret key after negation

5 years agoPass scalar by reference in secp256k1_wnaf_const()
Tim Ruffing [Tue, 14 May 2019 09:43:54 +0000 (11:43 +0200)]
Pass scalar by reference in secp256k1_wnaf_const()

After this change, no struct or union is passed by value in the
entire codebase. This makes it easier to compile the library with
CompCert.

5 years agoMerge #612: Allow field_10x26_arm.s to compile for ARMv7 architecture
Gregory Maxwell [Thu, 9 May 2019 22:23:41 +0000 (22:23 +0000)]
Merge #612: Allow field_10x26_arm.s to compile for ARMv7 architecture

d4d270a Allow field_10x26_arm.s to compile for ARMv7 architecture (Roman Zeyde)

Pull request description:

  It would allow using optimized field operations on the TREZOR device, which is using ARMv7 Cortex-M4.
  Following https://github.com/trezor/trezor-core/pull/500 and part of https://github.com/trezor/trezor-firmware/issues/66.

Tree-SHA512: 73c0f03503feff01c6f4efd884e916ae1f43f55d525e8c3ea9372cf777aef6901585b74774c316dd7937abfff5e86be5b1acb569f9eeee9b73ae088f0f6b589d

5 years agoAllow field_10x26_arm.s to compile for ARMv7 architecture
Roman Zeyde [Sun, 21 Apr 2019 17:11:58 +0000 (20:11 +0300)]
Allow field_10x26_arm.s to compile for ARMv7 architecture

5 years agoMerge #607: Use size_t shifts when computing a size_t
Gregory Maxwell [Sun, 31 Mar 2019 09:36:08 +0000 (09:36 +0000)]
Merge #607: Use size_t shifts when computing a size_t

e6d01e9 Use size_t shifts when computing a size_t (Pieter Wuille)

Pull request description:

  This was detected by compiling with MSVC; it triggers warning C4334.

  I don't think this is necessary, as we know the maximum shift is a very small integer, but this makes the code more obviously correct.

Tree-SHA512: 3c0cf412c75b4361d01e78bf13fe81c3f28b82abd40b0706285cc691124381cb1ff1f1c3512420250180b7612a471ce48357b282b1e34a08f5359e58af25e198

5 years agoMerge #606: travis: Remove unused sudo:false
Gregory Maxwell [Sun, 31 Mar 2019 00:41:44 +0000 (00:41 +0000)]
Merge #606: travis: Remove unused sudo:false

7667532 travis: Remove unused sudo:false (MarcoFalke)

Pull request description:

  Builds in sudo-disabled docker containers are no longer available as of last year and all builds happen on sudo enabled vms.

  Source: https://blog.travis-ci.com/2018-11-19-required-linux-infrastructure-migration#timeline---its-happening-fast

Tree-SHA512: 882585ba4e1596ad34ddf163acecd043da63443fa95653fba63b03dacf3a669128f1ed142527484cc8dab98de341b425425f418b8151cf7303b0e906ae259a9a

5 years agoUse size_t shifts when computing a size_t
Pieter Wuille [Sat, 30 Mar 2019 19:54:44 +0000 (12:54 -0700)]
Use size_t shifts when computing a size_t

5 years agotravis: Remove unused sudo:false
MarcoFalke [Sat, 30 Mar 2019 16:35:32 +0000 (12:35 -0400)]
travis: Remove unused sudo:false

5 years agoMake sure we're not using an uninitialized variable in secp256k1_wnaf_const(...)
practicalswift [Sun, 6 May 2018 07:28:54 +0000 (09:28 +0200)]
Make sure we're not using an uninitialized variable in secp256k1_wnaf_const(...)

5 years agoMerge #599: Switch x86_64 asm to use "i" instead of "n" for immediate values.
Gregory Maxwell [Mon, 11 Mar 2019 18:30:34 +0000 (18:30 +0000)]
Merge #599: Switch x86_64 asm to use "i" instead of "n" for immediate values.

d58bc93 Switch x86_64 asm to use "i" instead of "n" for immediate values. (Gregory Maxwell)

Pull request description:

  The constraint "n" is a more obscure setting which is needed for
   special cases that don't apply to our use.

  Use of "n" exposed some bugs in pre-release versions of clang.
  This fixes #594

Tree-SHA512: 1ffba02aa6bfcd0b6f731196e5d007f4ddb0f03f53b30a2633f0e376578cf7f828570579502f2de721dcda8034fd8e7bea822542bf36032d98ef802b4cf27725

5 years agoSwitch x86_64 asm to use "i" instead of "n" for immediate values.
Gregory Maxwell [Sun, 10 Mar 2019 22:52:12 +0000 (22:52 +0000)]
Switch x86_64 asm to use "i" instead of "n" for immediate values.

The constraint "n" is a more obscure setting which is needed for
 special cases that don't apply to our use.

Use of "n" exposed some bugs in pre-release versions of clang.
This fixes #594

5 years agoMerge #597: Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
Gregory Maxwell [Sun, 10 Mar 2019 22:44:37 +0000 (22:44 +0000)]
Merge #597: Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build

8348386 Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build (Gregory Maxwell)

Pull request description:

Tree-SHA512: ef091b86189a2235710866689024f2b190ebcc5741667be0921e6b4a50d53ddf9a63f4c90b1509f25e46631d75338913143a2a1335a74c842f84b98739a9d306

5 years agoAdd $(COMMON_LIB) to exhaustive tests to fix ARM asm build
Gregory Maxwell [Sat, 9 Mar 2019 06:17:27 +0000 (06:17 +0000)]
Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build

5 years agoMerge #568: Fix integer overflow in ecmult_multi_var when n is large
Gregory Maxwell [Mon, 25 Feb 2019 21:00:08 +0000 (21:00 +0000)]
Merge #568: Fix integer overflow in ecmult_multi_var when n is large

2277af5 Fix integer overflow in ecmult_multi_var when n is large (Jonas Nick)

Pull request description:

  Without this PR ecmult_multi could return wrong results. If the number of points `n` is large enough then some or all multiplications could be skipped or the function could end up in an infinite loop. This PR adds two checks to prevent `n` from wrapping around.

Tree-SHA512: 342944369b24776fa3ec0694eee159259ff67e94d2d8176c1d3159875f387d943d5bfdff7cde59f058e13f07fd09bde1cbc609426e63c8a5b8040e382dd865d8

5 years agoFix integer overflow in ecmult_multi_var when n is large
Jonas Nick [Wed, 24 Oct 2018 17:58:24 +0000 (17:58 +0000)]
Fix integer overflow in ecmult_multi_var when n is large

5 years agoUndefine `STATIC_PRECOMPUTATION` if using the basic config
DesWurstes [Mon, 25 Feb 2019 08:36:39 +0000 (11:36 +0300)]
Undefine `STATIC_PRECOMPUTATION` if using the basic config

5 years agoKeep LDFLAGS if `--coverage`
DesWurstes [Mon, 25 Feb 2019 08:34:52 +0000 (11:34 +0300)]
Keep LDFLAGS if `--coverage`

5 years agoMerge #591: Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
Gregory Maxwell [Sun, 24 Feb 2019 18:34:15 +0000 (18:34 +0000)]
Merge #591: Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.

b76e45d Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing. (Gregory Maxwell)

Pull request description:

  Bench_internal was previously incorrect but wasn't detected by -DVERIFY until PR #551.

Tree-SHA512: 5ecb9e3ba63ddf28cde4012154dbb1dda9b7178016d970dba58a4af20c31aa1ec3458ba2623541233fb16fceff7b3053054d6eee0229d0bfb6281d1a10554e9f

5 years agoMerge #580: Add trivial ecmult_multi algorithm which does not require a scratch space
Gregory Maxwell [Sun, 24 Feb 2019 03:01:31 +0000 (03:01 +0000)]
Merge #580: Add trivial ecmult_multi algorithm which does not require a scratch space

a697d82 Add trivial ecmult_multi to the benchmark tool (Jonas Nick)
bade617 Add trivial ecmult_multi algorithm. It is selected when no scratch space is given and just multiplies and adds the points. (Jonas Nick)

Pull request description:

  This commit adds a new ecmult_multi algorithm that is automatically selected when `ecmult_multi_var` is called with scratch space set to `NULL`. This is a trivial algorithm that simply multiplies the points with the corresponding scalars and adds them up.

  The use case is to allow creating exposed function that uses `ecmult_multi` but without requiring a scratch space argument. For example, in MuSig when computing the combined public key we need to compute a weighted sum of points but we most likely don't care about the performance. And if we do we can still provide a scratch space. Having the option of not providing a scratch space is useful because creating a scratch space is not entirely trivial. One needs to decide on a size and it needs to be destroyed.

Tree-SHA512: 2de20feeff00902ca0936ec1f8d81cf7a95d0917f80e76e9eacbd739c8c2e248fbdaeb468a0aeaf715ec251c2c79b5e271ff4d77456218d02332e26e003d796e

5 years agoAdd trivial ecmult_multi to the benchmark tool
Jonas Nick [Sat, 23 Feb 2019 20:22:30 +0000 (20:22 +0000)]
Add trivial ecmult_multi to the benchmark tool

5 years agoAdd trivial ecmult_multi algorithm. It is selected when no scratch space is given...
Jonas Nick [Thu, 20 Dec 2018 20:48:19 +0000 (20:48 +0000)]
Add trivial ecmult_multi algorithm. It is selected when no scratch space is given and just multiplies and adds the points.

5 years agoMerge #584: configure: Use CFLAGS_FOR_BUILD when checking native compiler
Gregory Maxwell [Fri, 22 Feb 2019 01:28:04 +0000 (01:28 +0000)]
Merge #584: configure: Use CFLAGS_FOR_BUILD when checking native compiler

a34bcaa Actually pass CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD to linker (Tim Ruffing)
2d5f4ce configure: Use CFLAGS_FOR_BUILD when checking native compiler (Tim Ruffing)

Pull request description:

  This fixes a bug where configure would fail or disable static
  ecmult tables because it wrongly checks the native compiler using
  the target CFLAGS (instead of the native CFLAGS_FOR_BUILD).

  Moreover, this commit adds tests to figure out whether the native
  compiler supports the warning flags passed during the build, and it
  contains a few minor improvements to the code that checks the native
  compiler.

Tree-SHA512: 31a92a5516cf2f9801c918edfba0059aa4f8549b0c1de94fc166b5e92ad1868a480c48cdc5ff62679ba20e26f4a0e2948c71fd2b3e80766673d2bf7512da3875

5 years agoMerge #516: improvements to random seed in src/tests.c
Gregory Maxwell [Thu, 21 Feb 2019 11:42:08 +0000 (11:42 +0000)]
Merge #516: improvements to random seed in src/tests.c

be40c4d Fixup for C90 mixed declarations. (Gregory Maxwell)
8b3841c fix bug in fread() failure check (Don Viszneki)
cddef0c tests: add warning message when /dev/urandom fails (Don Viszneki)

Pull request description:

  I've made two small changes to `src/tests.c` circa random seed generation.

  Added a warning when `/dev/urandom` fails, mostly to defend against the case that someone should use the code verbatim, but also to enhance its illustrative power.

  Also I fixed a bug with how the return value of `fread()` was being evaluated. In fact, `/dev/urandom` was never being applied before as the check on the return value of `fread()` always failed!

Tree-SHA512: 239dbe8316220c2f0e5b370bf9a18f78196e96cc4a7edea58cf2521b2c9cbc8da065be96aa859f90324d57e388d30f7670ce6bc1cca52e5162e5ca66b1a55b34

5 years agoMake bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.
Gregory Maxwell [Thu, 21 Feb 2019 05:58:33 +0000 (05:58 +0000)]
Make bench_internal obey secp256k1_fe_sqrt's contract wrt aliasing.

Bench_internal was previously incorrect but wasn't detected by
 -DVERIFY until PR #551.

5 years agoMerge #562: Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
Gregory Maxwell [Thu, 21 Feb 2019 05:32:47 +0000 (05:32 +0000)]
Merge #562: Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse

d3cb1f9 Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse (Ben Woosley)

Pull request description:

  This results in more self-documenting code.

  Constants defined here:
  https://github.com/bitcoin-core/secp256k1/blob/1e6f1f5ad5e7f1e3ef79313ec02023902bf8175c/include/secp256k1.h#L175-L180

Tree-SHA512: 2026103c487a5ebdea9a2f5ec2be96d74e38d5b2269b4df11e354bb54aba2925b47c3185f530205019840b00fc3501121acfa5234faf1d095d71777826414f69

5 years agoFixup for C90 mixed declarations.
Gregory Maxwell [Thu, 21 Feb 2019 05:00:29 +0000 (05:00 +0000)]
Fixup for C90 mixed declarations.

Reported-by: Jonas Nick <[email protected]>
5 years agoMerge #509: Fix algorithm selection in bench_ecmult
Gregory Maxwell [Thu, 21 Feb 2019 04:45:39 +0000 (04:45 +0000)]
Merge #509: Fix algorithm selection in bench_ecmult

0f05173 Fix algorithm selection in bench_ecmult (Jonas Nick)

Pull request description:

  Without this commit using an unknown argument results in a segmentation fault.

Tree-SHA512: 85b8f977e62fa360ff6dc923bd86f08725c30e178d58f43d33cbd8eb69e54fa4ec76e4407624611a80554cf9961689bce6b216da735ac95b256d0d2f60fe3328

5 years agoMerge #518: Summarize build options after running configure
Gregory Maxwell [Thu, 21 Feb 2019 04:42:43 +0000 (04:42 +0000)]
Merge #518: Summarize build options after running configure

3965027 Summarize build options in configure script (Evan Klitzke)

Pull request description:

  This is a trivial build system change to summarize the build options after running configure.

  Example output:
  ```
  $ ./configure
  ....
  <many lines omitted>
  ...
  config.status: src/libsecp256k1-config.h is unchanged
  config.status: executing depfiles commands
  config.status: executing libtool commands

  Build Options:
    with endomorphism   = no
    with ecmult precomp = yes
    with jni            = no
    module ecdh         = no
    module recovery     = no

    asm                 = x86_64
    bignum              = gmp
    field               = 64bit
    scalar              = 64bit

    CC                  = gcc
    CFLAGS              = -g -O2 -W -std=c89 -pedantic -Wall -Wextra -Wcast-align -Wnested-externs -Wshadow -Wstrict-prototypes -Wno-unused-function -Wno-long-long -Wno-overlength-strings -fvisibility=hidden -O3
    CPPFLAGS            =
    LDFLAGS             =
  ```

  I tried to just include the configure options that looked interesting; let me know if there are any I didn't include that I should have.

Tree-SHA512: 428381654d772f76bc81210d39ba5c3f07a94dc6a6378a02ccc6f23ebce7f501896268bcd2e94e2b0d8aea54c9c70c44a9238a0f0960600f463b1e2847c7ed1f

5 years agoMerge #567: Correct order of libs returned on pkg-config --libs --static libsecp2…
Gregory Maxwell [Thu, 21 Feb 2019 04:35:57 +0000 (04:35 +0000)]
Merge #567: Correct order of libs returned on pkg-config --libs --static libsecp2…

89a20a8 Correct order of libs returned on pkg-config --libs --static libsecp256k1 call. (Phillip Mienk)

Pull request description:

  …56k1 call.

Tree-SHA512: 095f5e71837e63a2bb6e9cf04cabe7f1ec55cf0fc32b44c80a89c232efb7d74bf0f148a8cd29f9fa2999f02bbc638d9a086ffd50888aab6f9fd5db74e37ae4d4

5 years agoMerge #587: Make randomization of a non-signing context a noop
Gregory Maxwell [Thu, 21 Feb 2019 04:31:26 +0000 (04:31 +0000)]
Merge #587: Make randomization of a non-signing context a noop

6198375 Make randomization of a non-signing context a noop (Tim Ruffing)

Pull request description:

  Before this commit secp256k1_context_randomize called illegal_callback
  when called on a context not initialized for signing. This is not
  documented. Moreover, it is not desirable because non-signing contexts
  may use randomization in the future.

  This commit makes secp256k1_context_randomize a noop in this case. This
  is safe because the context cannot be used for signing anyway.

  This fixes #573 and it fixes rust-bitcoin/rust-secp256k1#82.

Tree-SHA512: 34ddfeb004d9da8f4a77c739fa2110544c28939378e779226da52f410a0e36b3aacb3ebd2e3f3918832a9027684c161789cfdc27a133f2f0e0f1c47e8363029c

5 years agoMerge #511: Portability fix for the configure scripts generated
Gregory Maxwell [Thu, 21 Feb 2019 04:27:36 +0000 (04:27 +0000)]
Merge #511: Portability fix for the configure scripts generated

270f6c8 Portability fix for the configure scripts generated (Pierre Pronchery)

Pull request description:

  Found thanks to the developer checks from the pkgsrc software
  distribution (for NetBSD, SmartOS, Minix, MacOS X, Linux, and more).

Tree-SHA512: 2589545aa4d0620db66e79df1dc148a487384b5169ba7323937490d802973388859d30d45b35ee3e614be6d49cb694f37f585a16caa87ad1e500a0b7368dcc0a

5 years agoMerge #552: Make constants static:
Gregory Maxwell [Thu, 21 Feb 2019 04:24:37 +0000 (04:24 +0000)]
Merge #552: Make constants static:

496c5b4 Make constants static: static const secp256k1_ge secp256k1_ge_const_g; static const int CURVE_B; (Russell O'Connor)

Pull request description:

  static const secp256k1_ge secp256k1_ge_const_g;
  static const int CURVE_B;

Tree-SHA512: df8d34777d3b1b90eef875d50c2870e2480f08685b399a22eaf584ce294766e0de3a41523757a23e311e633886c89400313421282beca791326a06695f348940

5 years agoMerge #551: secp256k1_fe_sqrt: Verify that the arguments don't alias.
Gregory Maxwell [Thu, 21 Feb 2019 04:21:54 +0000 (04:21 +0000)]
Merge #551: secp256k1_fe_sqrt: Verify that the arguments don't alias.

bf8b86c secp256k1_fe_sqrt: Verify that the arguments don't alias. (Russell O'Connor)

Pull request description:

Tree-SHA512: 4e9128625817be83a1259e7dbdb82c4be8ee0174af7d5e76eeac3245d23d6bf01378d9697dcb870eb61577afd7c0556cb3c6633e3b27504add14c10b18f7c607

5 years agoMerge #539: Assorted minor corrections
Gregory Maxwell [Thu, 21 Feb 2019 04:17:54 +0000 (04:17 +0000)]
Merge #539: Assorted minor corrections

52ab96f clean dependendies in field_*_impl.h (Russell O'Connor)
deff5ed Correct math typos in field_*.h (Russell O'Connor)
4efb3f8 Add check that restrict pointers don't alias with all parameters. (Russell O'Connor)

Pull request description:

  * add more checks for restrict pointers.
  * correct math typos.
  * refine dependencies on "num.h"

Tree-SHA512: c368f577927db2ace3e7f46850cb2fdf9d7d169b698a9697767e1f82e9e7091f2b2fea0f7cf173048eb4c1bb56824c884fa849c04c595ee97766c01f346a54ec

5 years agoMerge #550: Optimize secp256k1_fe_normalize_weak calls.
Gregory Maxwell [Thu, 21 Feb 2019 04:11:07 +0000 (04:11 +0000)]
Merge #550: Optimize secp256k1_fe_normalize_weak calls.

9bd89c8 Optimize secp256k1_fe_normalize_weak calls. Move secp256k1_fe_normalize_weak calls out of ECMULT_TABLE_GET_GE and ECMULT_TABLE_GET_GE_STORAGE and into secp256k1_ge_globalz_set_table_gej instead. (Russell O'Connor)

Pull request description:

  Move secp256k1_fe_normalize_weak calls out of ECMULT_TABLE_GET_GE and ECMULT_TABLE_GET_GE_STORAGE and into secp256k1_ge_globalz_set_table_gej instead.

Tree-SHA512: 7bbb1aca8e37a268a26d7061bd1f390db129e697792f1d5ddd10ea34927616edc26ef118b500c3e5e14d1d463196033ef64e4d34b765380325c24835458b7a9b

5 years agoActually pass CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD to linker
Tim Ruffing [Sun, 10 Feb 2019 10:58:52 +0000 (11:58 +0100)]
Actually pass CFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD to linker

5 years agoconfigure: Use CFLAGS_FOR_BUILD when checking native compiler
Tim Ruffing [Wed, 16 Jan 2019 16:12:38 +0000 (17:12 +0100)]
configure: Use CFLAGS_FOR_BUILD when checking native compiler

This fixes a bug where configure would fail or disable static
ecmult tables because it wrongly checks the native compiler using
the target CFLAGS (instead of the native CFLAGS_FOR_BUILD), and
similar for CPPFLAGS and LDFLAGS.

Moreover, this commit adds tests to figure out whether the native
compiler supports the warning flags passed during the build, and it
contains a few minor improvements to the code that checks the native
compiler.

5 years agoMerge #579: Use __GNUC_PREREQ for detecting __builtin_expect
Pieter Wuille [Mon, 4 Feb 2019 22:30:56 +0000 (14:30 -0800)]
Merge #579: Use __GNUC_PREREQ for detecting __builtin_expect

c663397 Use __GNUC_PREREQ for detecting __builtin_expect (Tim Ruffing)

Pull request description:

Tree-SHA512: 659a721da835eb15966a2a5386d6ae4c3defbb6ad473905f14161a3cf36d1556d44d887602019c89ebeffdfd82ed469ff27914dc2aaee6648d1e0c8a22151c27

5 years agoMake randomization of a non-signing context a noop
Tim Ruffing [Sun, 27 Jan 2019 12:17:37 +0000 (13:17 +0100)]
Make randomization of a non-signing context a noop

Before this commit secp256k1_context_randomize called illegal_callback
when called on a context not initialized for signing. This is not
documented. Moreover, it is not desirable because non-signing contexts
may use randomization in the future.

This commit makes secp256k1_context_randomize a noop in this case. This
is safe because the context cannot be used for signing anyway.

This fixes #573 and it fixes rust-bitcoin/rust-secp256k1#82.

6 years agoUse __GNUC_PREREQ for detecting __builtin_expect
Tim Ruffing [Mon, 17 Dec 2018 10:46:54 +0000 (11:46 +0100)]
Use __GNUC_PREREQ for detecting __builtin_expect

6 years agoMerge #557: Eliminate scratch memory used when generating contexts
Pieter Wuille [Mon, 26 Nov 2018 17:12:55 +0000 (09:12 -0800)]
Merge #557: Eliminate scratch memory used when generating contexts

b3bf5f9 ecmult_impl: expand comment to explain how effective affine interacts with everything (Andrew Poelstra)
efa783f Store z-ratios in the 'x' coord they'll recover (Peter Dettman)
ffd3b34 add `secp256k1_ge_set_all_gej_var` test which deals with many infinite points (Andrew Poelstra)
84740ac ecmult_impl: save one fe_inv_var (Andrew Poelstra)
4704527 ecmult_impl: eliminate scratch memory used when generating context (Andrew Poelstra)
7f7a2ed ecmult_gen_impl: eliminate scratch memory used when generating context (Andrew Poelstra)

Pull request description:

  Builds on #553

Tree-SHA512: 6031a601a4a476c1d21fc8db219383e7930434d2f199543c61aca0118412322dd814a0109c385ff1f83d16897170dd0c25051697b0f88f15234b0059b661af41

6 years agoecmult_impl: expand comment to explain how effective affine interacts with everything
Andrew Poelstra [Sat, 10 Nov 2018 13:42:55 +0000 (13:42 +0000)]
ecmult_impl: expand comment to explain how effective affine interacts with everything

6 years agoStore z-ratios in the 'x' coord they'll recover
Peter Dettman [Fri, 9 Nov 2018 07:50:17 +0000 (14:50 +0700)]
Store z-ratios in the 'x' coord they'll recover

6 years agoadd `secp256k1_ge_set_all_gej_var` test which deals with many infinite points
Andrew Poelstra [Wed, 17 Oct 2018 19:50:37 +0000 (19:50 +0000)]
add `secp256k1_ge_set_all_gej_var` test which deals with many infinite points

6 years agoecmult_impl: save one fe_inv_var
Andrew Poelstra [Mon, 1 Oct 2018 21:00:41 +0000 (21:00 +0000)]
ecmult_impl: save one fe_inv_var

6 years agoecmult_impl: eliminate scratch memory used when generating context
Andrew Poelstra [Thu, 20 Sep 2018 23:34:02 +0000 (23:34 +0000)]
ecmult_impl: eliminate scratch memory used when generating context

6 years agoecmult_gen_impl: eliminate scratch memory used when generating context
Andrew Poelstra [Thu, 20 Sep 2018 22:24:57 +0000 (22:24 +0000)]
ecmult_gen_impl: eliminate scratch memory used when generating context

6 years agoMerge #553: add static context object which has no capabilities
Pieter Wuille [Tue, 6 Nov 2018 02:23:52 +0000 (18:23 -0800)]
Merge #553: add static context object which has no capabilities

40fde61 prevent attempts to modify `secp256k1_context_no_precomp` (Andrew Poelstra)
ed7c084 add static context object which has no capabilities (Andrew Poelstra)

Pull request description:

Tree-SHA512: a843ed7ba00a00a46eec3146ce428d4b49eb440af766f44d731b1f51553d08de8cc9a0af5ed114d0dfdca6f4bf4a2ede4dbd6a37d6bd818b81630089424a0ba5

6 years agoCorrect order of libs returned on pkg-config --libs --static libsecp256k1 call.
Phillip Mienk [Tue, 23 Oct 2018 00:24:45 +0000 (17:24 -0700)]
Correct order of libs returned on pkg-config --libs --static libsecp256k1 call.

6 years agoMerge #354: [ECDH API change] Support custom hash function
Pieter Wuille [Wed, 17 Oct 2018 19:12:31 +0000 (12:12 -0700)]
Merge #354: [ECDH API change] Support custom hash function

c8fbc3c [ECDH API change] Allow pass arbitrary data to hash function (Kirill Fomichev)
b00be65 [ECDH API change] Support custom hash function (Kirill Fomichev)

Pull request description:

  Solve #352

Tree-SHA512: f5985874d03e976cdb3d59036af7720636ad1488da40fd3bd7881b1fb71b05036a952013d519baa84c4ce4b558bdef25c4ce76b384b297e4d0aece9e37e78a01

6 years agoMake use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
Ben Woosley [Tue, 9 Oct 2018 06:40:37 +0000 (15:40 +0900)]
Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse

This results in more self-documenting code.

6 years agoprevent attempts to modify `secp256k1_context_no_precomp`
Andrew Poelstra [Thu, 20 Sep 2018 17:50:43 +0000 (17:50 +0000)]
prevent attempts to modify `secp256k1_context_no_precomp`

6 years agoadd static context object which has no capabilities
Andrew Poelstra [Wed, 15 Aug 2018 21:27:25 +0000 (21:27 +0000)]
add static context object which has no capabilities

6 years agoMake constants static:
Russell O'Connor [Wed, 15 Aug 2018 19:42:06 +0000 (15:42 -0400)]
Make constants static:
static const secp256k1_ge secp256k1_ge_const_g;
static const int CURVE_B;

6 years agosecp256k1_fe_sqrt: Verify that the arguments don't alias.
Russell O'Connor [Tue, 14 Aug 2018 20:47:14 +0000 (16:47 -0400)]
secp256k1_fe_sqrt: Verify that the arguments don't alias.

6 years agoOptimize secp256k1_fe_normalize_weak calls.
Russell O'Connor [Mon, 13 Aug 2018 03:47:38 +0000 (23:47 -0400)]
Optimize secp256k1_fe_normalize_weak calls.
Move secp256k1_fe_normalize_weak calls out of ECMULT_TABLE_GET_GE and ECMULT_TABLE_GET_GE_STORAGE and into secp256k1_ge_globalz_set_table_gej instead.

6 years agoclean dependendies in field_*_impl.h
Russell O'Connor [Fri, 6 Jul 2018 11:38:03 +0000 (07:38 -0400)]
clean dependendies in field_*_impl.h

6 years agoCorrect math typos in field_*.h
Russell O'Connor [Fri, 6 Jul 2018 11:53:32 +0000 (07:53 -0400)]
Correct math typos in field_*.h

6 years agoAdd check that restrict pointers don't alias with all parameters.
Russell O'Connor [Fri, 6 Jul 2018 11:26:57 +0000 (07:26 -0400)]
Add check that restrict pointers don't alias with all parameters.

6 years agoMerge #529: fix tests.c in the count == 0 case
Pieter Wuille [Thu, 31 May 2018 19:00:10 +0000 (12:00 -0700)]
Merge #529: fix tests.c in the count == 0 case

95e99f1 fix tests.c in the count == 0 case (Andrew Poelstra)

Pull request description:

  Fixes #528

Tree-SHA512: 8b28d84f95bcd1337fbd7fb187dee2a9bad2b6b595eaf42a2d855e5784f48a1f3ad5739881b22eea115d32c4525feb69b41958699a165c847fcfb8096cc4903a

6 years ago[ECDH API change] Allow pass arbitrary data to hash function
Kirill Fomichev [Wed, 16 May 2018 21:12:46 +0000 (00:12 +0300)]
[ECDH API change] Allow pass arbitrary data to hash function

6 years ago[ECDH API change] Support custom hash function
Kirill Fomichev [Thu, 12 Nov 2015 08:43:06 +0000 (11:43 +0300)]
[ECDH API change] Support custom hash function

6 years agofix tests.c in the count == 0 case
Andrew Poelstra [Tue, 10 Apr 2018 19:32:04 +0000 (19:32 +0000)]
fix tests.c in the count == 0 case

6 years agoMerge #523: scratch: add stack frame support
Pieter Wuille [Thu, 5 Apr 2018 23:33:43 +0000 (16:33 -0700)]
Merge #523: scratch: add stack frame support

6fe5043 scratch: add stack frame support (Andrew Poelstra)

Pull request description:

  Replaces the single-blob stack space ith one that internally manages multiple blobs, which are exposed to the user as "frames". Users allocate new blobs with `secp256k1_scratch_allocate_frame` and deallocate them with `secp256k1_scratch_deallocate_frame`. Then any calls to `secp256k1_scratch_alloc` use the frame at the top of the stack. This is guaranteed to succeed, assuming that the frame allocation succeeded and that the user is not requesting more memory than the frame was allocated with.

Tree-SHA512: 0b2072c5b9df8f3b40fb6d76e94fcfcc6a03a7da33e31249b5f24b02eb8a3311f282f6a4732153d6101968de8f9a568009a72735a1cc688a0f3040055799a09d

6 years agoscratch: add stack frame support
Andrew Poelstra [Tue, 20 Mar 2018 13:21:33 +0000 (13:21 +0000)]
scratch: add stack frame support

6 years agoMerge #522: parameterize ecmult_const over input size
Pieter Wuille [Thu, 5 Apr 2018 21:08:07 +0000 (14:08 -0700)]
Merge #522: parameterize ecmult_const over input size

7c1b91b parameterize ecmult_const over input size (Andrew Poelstra)

Pull request description:

Tree-SHA512: 0afd0c0156add54209e79c623d780559dfd85910ef0a0c476bcabd1074ad468d7983b7b6bb6e8bd3fe6e9b8bc703d78d09c3b99f8da990dfe004bbdc65496e66

6 years agoparameterize ecmult_const over input size
Andrew Poelstra [Tue, 13 Mar 2018 16:32:51 +0000 (16:32 +0000)]
parameterize ecmult_const over input size

6 years agoMerge #513: Increase sparsity of pippenger fixed window naf representation
Pieter Wuille [Thu, 5 Apr 2018 16:45:08 +0000 (09:45 -0700)]
Merge #513: Increase sparsity of pippenger fixed window naf representation

ec0a7b3 Don't touch leading zeros in wnaf_fixed. (Jonas Nick)
9e36d1b Fix bug in wnaf_fixed where the wnaf array is not completely zeroed when given a 0 scalar. (Jonas Nick)
96f68a0 Don't invert scalar in wnaf_fixed when it is even because a caller might intentionally give a scalar with many leading zeros. (Jonas Nick)
6dbb007 Increase sparsity of pippenger fixed window naf representation (Jonas Nick)

Pull request description:

  Fixes #506

Tree-SHA512: 49a237a7d09c0c376ba4e6b1f522b9aff2517e420dfef9df810fd5ba920e0b98be8fe3f730b32e41b4aef475bc4cf3b13220024bd8d6f40c2744e6f392ff97a8

6 years agoSummarize build options in configure script
Evan Klitzke [Sat, 10 Mar 2018 18:36:59 +0000 (10:36 -0800)]
Summarize build options in configure script

6 years agoFix algorithm selection in bench_ecmult
Jonas Nick [Fri, 23 Feb 2018 16:31:43 +0000 (16:31 +0000)]
Fix algorithm selection in bench_ecmult

6 years agoMerge #510: add a couple missing `const`s to ecmult_pippenger_wnaf
Pieter Wuille [Tue, 27 Mar 2018 01:28:18 +0000 (18:28 -0700)]
Merge #510: add a couple missing `const`s to ecmult_pippenger_wnaf

9b3ff03 add a couple missing `const`s to ecmult_pippenger_wnaf (Andrew Poelstra)

Pull request description:

Tree-SHA512: a58458bb4cb1af357b13a506ce8720ce9ecd0c1771a49d9f3ce9398ba7afc56977d722bbd30a63c7c76e63e659ed956d5e82ff762efc4b49488adf0756dc656a

6 years agoMerge #515: Fix typo
Pieter Wuille [Tue, 27 Mar 2018 00:18:35 +0000 (17:18 -0700)]
Merge #515: Fix typo

9b7c47a Fix typo (Dimitris Apostolou)

Pull request description:

Tree-SHA512: d61f3451152ed6094368456e1c57d7a7ff85f975045bedff4fcb5c446894d9c9029f6ff4bfe724eba8501843316bd965bff1a302a7ea4d1b9c3e4de2059cadd0

6 years agoMerge #512: secp256k1_ec_privkey_negate - fix documentation
Pieter Wuille [Tue, 27 Mar 2018 00:17:35 +0000 (17:17 -0700)]
Merge #512: secp256k1_ec_privkey_negate - fix documentation

1646ace secp256k1_ec_privkey_negate - fix documentation (Thomas Kerin)

Pull request description:

Tree-SHA512: 711973d3fc4c790cdc469ed5500f857d68fe186d41b97fbbddbc90723b2db60f3ee9fa01b44bcc1a70f246096b85b50ae2139602b98924ddecbcbc6adc7bd217

6 years agoDon't touch leading zeros in wnaf_fixed.
Jonas Nick [Thu, 22 Mar 2018 21:32:11 +0000 (21:32 +0000)]
Don't touch leading zeros in wnaf_fixed.

6 years agoFix bug in wnaf_fixed where the wnaf array is not completely zeroed when given a...
Jonas Nick [Fri, 23 Mar 2018 13:57:16 +0000 (13:57 +0000)]
Fix bug in wnaf_fixed where the wnaf array is not completely zeroed when given a 0 scalar.

6 years agoDon't invert scalar in wnaf_fixed when it is even because a caller might
Jonas Nick [Sun, 11 Mar 2018 19:32:54 +0000 (15:32 -0400)]
Don't invert scalar in wnaf_fixed when it is even because a caller might
intentionally give a scalar with many leading zeros.

6 years agofix bug in fread() failure check
Don Viszneki [Tue, 6 Mar 2018 02:45:00 +0000 (18:45 -0800)]
fix bug in fread() failure check

the two middle arguments to fread() are easily confused, and cause the
checking of return value to fail incorrectly (and possibly succeed
incorrectly.)

6 years agotests: add warning message when /dev/urandom fails
Don Viszneki [Tue, 6 Mar 2018 02:43:31 +0000 (18:43 -0800)]
tests: add warning message when /dev/urandom fails

in case this code should ever be used as an example, a warning is a nice
way of helping ensure insecure keys are not generated

6 years agoFix typo
Dimitris Apostolou [Mon, 5 Mar 2018 16:53:33 +0000 (18:53 +0200)]
Fix typo

6 years agoIncrease sparsity of pippenger fixed window naf representation
Jonas Nick [Tue, 27 Feb 2018 21:34:08 +0000 (21:34 +0000)]
Increase sparsity of pippenger fixed window naf representation

6 years agosecp256k1_ec_privkey_negate - fix documentation
Thomas Kerin [Wed, 28 Feb 2018 13:10:07 +0000 (14:10 +0100)]
secp256k1_ec_privkey_negate - fix documentation

6 years agoPortability fix for the configure scripts generated
Pierre Pronchery [Mon, 26 Feb 2018 01:22:11 +0000 (02:22 +0100)]
Portability fix for the configure scripts generated

Found thanks to the developer checks from the pkgsrc software
distribution (for NetBSD, SmartOS, Minix, MacOS X, Linux, and more).

6 years agoadd a couple missing `const`s to ecmult_pippenger_wnaf
Andrew Poelstra [Sat, 24 Feb 2018 17:29:34 +0000 (17:29 +0000)]
add a couple missing `const`s to ecmult_pippenger_wnaf

6 years agoMerge #460: [build] Update ax_jni_include_dir.m4 macro
Gregory Maxwell [Tue, 6 Feb 2018 23:06:08 +0000 (23:06 +0000)]
Merge #460: [build] Update ax_jni_include_dir.m4 macro

e7daa9b [build] Tweak JNI macro to warn instead of error for JNI not found. (Karl-Johan Alm)
5b22977 [build] Update ax_jni_include_dir.m4 macro to deal with recent versions of macOS (Karl-Johan Alm)

Pull request description:

  Prior to this patch, this macro fails to find a working directory for the JNI headers, and results in compile failure when doing
  ```
  ./configure --enable-experimental --enable-module-ecdh --enable-jni
  ```
  on more recent macOS versions. The relevant commit upstream is [here](http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=commit;h=ab23d25b1f1ae544fffdaa0a94a794798695c672) from the [GNU.org page for the macro](https://www.gnu.org/software/autoconf-archive/ax_jni_include_dir.html). The original (identical to the version in this commit) is [here](http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_jni_include_dir.m4).

  The compile failure:
  ```Bash
  $ make
  gcc -I. -g -O2 -Wall -Wextra -Wno-unused-function -c src/gen_context.c -o gen_context.o
  gcc gen_context.o -o gen_context
  ./gen_context
    CC       src/libsecp256k1_la-secp256k1.lo
    CC       src/java/libsecp256k1_jni_la-org_bitcoin_NativeSecp256k1.lo
  In file included from src/java/org_bitcoin_NativeSecp256k1.c:4:
  In file included from src/java/org_bitcoin_NativeSecp256k1.h:2:
  /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Headers/jni.h:45:10: fatal error:
        'jni_md.h' file not found
  #include "jni_md.h"
           ^
  1 error generated.
  make: *** [src/java/libsecp256k1_jni_la-org_bitcoin_NativeSecp256k1.lo] Error 1
  ```

Tree-SHA512: 9a8305b3ed67eba0de728f91cf435857a676ba10507ab8481a3c03b50e1ce0469a3d79e751d0a697018789f21e2aa48b7eccca4d225520a3863fcf23f1fd487a

6 years agoMerge #498: tests: Avoid calling fclose(...) with an invalid argument
Gregory Maxwell [Tue, 6 Feb 2018 23:04:39 +0000 (23:04 +0000)]
Merge #498: tests: Avoid calling fclose(...) with an invalid argument

5aae5b5 Avoid calling fclose(...) with an invalid argument (practicalswift)

Pull request description:

  Avoid calling `fclose(...)` with an invalid argument.

Tree-SHA512: f1a057b8c52089a3af1d9bfe97b751a4003b944d293147855eca452d1766c4ead5701d06f546153e654c9cb07b3fe2bcc4e28c8a54a27263d1e2434be123ca3b

6 years agoMerge #499: tests: Make sure we get the requested number of bytes from /dev/urandom
Gregory Maxwell [Tue, 6 Feb 2018 22:56:47 +0000 (22:56 +0000)]
Merge #499: tests: Make sure we get the requested number of bytes from /dev/urandom

82a96e4 tests: Make sure we get the requested number of bytes from /dev/urandom (practicalswift)

Pull request description:

  Make sure we get the requested number of bytes from `/dev/urandom`.

Tree-SHA512: 1b035942fd2a6ee2423fb2a2a0a0f294682c51434f86e5c106fb493d77f45aa8070662190aca6441fe389b8cdcc132d432517b8e826be2ac530a1511cd0c8919

6 years agoMerge #472: [build] Set --enable-jni to no by default instead of auto.
Gregory Maxwell [Tue, 6 Feb 2018 22:51:01 +0000 (22:51 +0000)]
Merge #472: [build] Set --enable-jni to no by default instead of auto.

57752d2 [build] Set --enable-jni to no by default instead of auto. (Karl-Johan Alm)

Pull request description:

  Having `--enable-jni` be `auto` doesn't make a lot of sense, and results in things like https://github.com/bitcoin/bitcoin/pull/11056.

Tree-SHA512: 27d6ea041f5d6e249857869ab87b8f7b1f6d18ec5ec82d2c46e692cd690b9f5c5857886725901a29d3539d427d8b6154d0c7909cfa2ce30bb3d4460c05708386

6 years agoMerge #494: Support OpenSSL versions >= 1.1 for ENABLE_OPENSSL_TESTS
Gregory Maxwell [Tue, 6 Feb 2018 22:43:19 +0000 (22:43 +0000)]
Merge #494: Support OpenSSL versions >= 1.1 for ENABLE_OPENSSL_TESTS

31abd3a Support OpenSSL versions >= 1.1 for ENABLE_OPENSSL_TESTS (Alexander Block)

Pull request description:

  The only reason OpenSSL 1.1 was not supported was the removal of direct
  access to r and s in ECDSA_SIG. This commit adds a simplified version of
  ECDSA_SIG_get0 for < 1.1 that can be used like ECDSA_SIG_get0 in >= 1.1

Tree-SHA512: 7ee49cd8424086bb96968c632b5babce50af98e13c414c4d5028a30fb86896956f829415a92c66387cde57941ab6999b0db823752cb36dd8932d15dd32980763

6 years agoMerge #495: Add bench_ecmult to .gitignore
Gregory Maxwell [Tue, 6 Feb 2018 22:26:47 +0000 (22:26 +0000)]
Merge #495: Add bench_ecmult to .gitignore

cb32940 Add bench_ecmult to .gitignore (Tony Rizko)

Pull request description:

Tree-SHA512: d346d3e99c9bd34a29741652e0f961dfdfce2c97aa8b26744a631a4eebfdf58afa127252b8a1c0772a89db74d1e26f55037794e9c2ab697511a66bffb5991909

This page took 0.074808 seconds and 4 git commands to generate.