Commit Graph

151 Commits

Author SHA1 Message Date
Andrew Poelstra 40c31342f2 ffi: make function types nullable 2020-12-23 17:59:52 +00:00
Andrew Poelstra 29316efff5 add warning about fuzzing being enabled 2020-12-22 17:34:50 +00:00
Andrew Poelstra 85075a654c replace `fuzztarget` Cargo feature with a rustc --cfg flag
It's super dangerous to use Cargo features for this, since they can be set
accidentally (or maliciously by any crate in a user's entire dep tree). Instead
we can just require users set `RUSTFLAGS` appropriately, which we can easily
do in our fuzzing scripts.
2020-12-22 15:42:02 +00:00
Andrew Poelstra d77483f00e replace cargo `external-symbols` feature with a rustc --cfg flag
This feature was not useful for Cargo users, since Cargo does not give you
the kind of fine-grained control over C library linkage that you need. So
it was just unnecessarily confusing and would cause the build to break if
you enabled it accidentally, say, with --all-features.
2020-12-22 15:35:16 +00:00
Tobin Harding 02dec3eb9b
Implement AsRef instead of custom method
Clippy emits a warning since we define a method that has the same name
as a standard trait. Implement the trait `AsRef` instead of using a
custom method.
2020-12-22 12:56:11 +11:00
Tobin Harding 3afc172096
Conditionally compile fn strlen
`strlen` is only used under certain feature flags, use `cfg` to
conditionally build it in.

Clears clippy warning.
2020-12-22 12:55:37 +11:00
Tobin Harding 617bff9df3
Conditionally include ALIGN_TO
This const is only used under specific features, use `cfg` to
conditionally build it in.

Removes clippy warning.
2020-12-22 12:54:08 +11:00
Tobin Harding f67081a01c
Allow unnecessary parentheses
Clippy emits:

	warning: unnecessary parentheses around assigned value

Add a attribute to allow unnecessary parentheses.
2020-12-22 12:53:29 +11:00
Elichai Turkel 7b99784837
Add AligneType and redo secp256k1_context_create with alloc 2020-12-18 12:48:16 +02:00
Andrew Poelstra 0ec8fab82c stop explicitly casting references to rawptrs 2020-11-30 02:47:34 +00:00
Andrew Poelstra 12b0abbcf8 make `ffi::Type::new` functions all unsafe, expand documentation 2020-11-27 18:42:12 +00:00
Tibo-lg 45a4459baf Update secp256k1-sys to add schnorr/extra-keys 2020-11-09 16:00:28 +09:00
Tibo-lg cfb565126a Update depend folder to latest master 2020-10-12 21:35:28 +09:00
Matt Corallo 3a2dba0e7f Use wasm sysroot for wasm32-wasi target as well 2020-10-05 16:14:36 -04:00
Elichai Turkel 6511fad231
Sort Cargo.toml files 2020-08-27 22:58:00 +03:00
Elichai Turkel 48dd77e47b
Remove old deprecated blank functions 2020-08-27 22:52:16 +03:00
Elichai Turkel 9e5a351ea7
remove redundant code after MSRV bump 2020-08-27 22:51:36 +03:00
Andrew Poelstra 19f5138925 Update MSRV to 1.29; increase version to 0.19 and -sys version to 0.3 2020-08-27 14:18:06 +00:00
Elichai Turkel 1605bde420 replace privkey functions with seckey functions, deprecate privkey functions 2020-08-26 20:55:18 +00:00
Andrew Poelstra f19c6bbece bump secp-sys version to 0.2.0 2020-08-26 18:07:44 +00:00
Andrew Poelstra 1a9aece312 secp256k1-sys: update upstream to 670cdd3f8be25f81472b2d16dcd228b0d24a5c45 2020-08-26 18:07:41 +00:00
Andrew Poelstra 89541ec4b2
Merge pull request #215 from rust-bitcoin/real-or-random-patch-1
Define ECMULT_GEN_PREC_BITS
2020-08-26 17:46:39 +00:00
Andrew Poelstra 3692c94a0f
Merge pull request #220 from rantan/add_negate_support
Add negate support
2020-08-26 17:43:46 +00:00
Kohei Taniguchi 1742973a1f Add fuzztarget for negation 2020-06-09 11:06:11 +09:00
Kohei Taniguchi d45f709cd4 Add negation support 2020-06-09 10:05:07 +09:00
Matt Corallo 0052bc92fb Expose the underlying array in addition to a ptr to the same 2020-06-01 14:35:31 -04:00
Andrew Poelstra e6a82fa089
Merge pull request #204 from ordian/master
secp256k1-sys: remove restriction on cc version
2020-05-13 18:56:23 +00:00
Tim Ruffing 489e3ff8d2
Define ECMULT_GEN_PREC_BITS
This is configurable in upstream now.

Fixes #214.

So far, this just sets it to `4`. It's tempting to set it to `2` when `lowmemory` is enabled
but `lowmemory` is about RAM and not about binary size. This is better addressed by
a resolution of #193.
2020-05-13 10:40:39 +02:00
Elichai Turkel affc6b4027 Add sanity checks for wasm32 for size and alignment of types 2020-04-29 15:32:57 -04:00
Elichai Turkel 931253d41e Add a size_t type to types 2020-04-29 15:32:57 -04:00
Matt Corallo d9d398ccc9 Re-support WASM via simple stub headers
libsecp256k1 really only barely uses libc at all, and in practice,
things like memcpy/memcmp get optimized into something other than a
libc call. Thus, if we provide simple stub headers, things seem to
work with wasm-pack just fine.
2020-04-29 15:32:54 -04:00
Andronik Ordian b22b9e5709
Merge remote-tracking branch 'rust-bitcoin/master'
* rust-bitcoin/master:
  Fix no-std raw test, after removal of lang items
  Fix broken benchmarks
  Disable emscripten tests until they work again https://github.com/rust-lang/rust/issues/66916 https://github.com/rustwasm/team/issues/291
  Add constant of the prime of the curve field.
  Simplify callback logic to returning raw coordinates
  Removed no longer used dont_replace_c_symbols feature
  Fix wrong feature name external-symbols
  Fix missing return c_int in NonceFn
2020-04-09 15:13:43 +02:00
Andrew Poelstra 9aa768df10
Merge pull request #195 from elichai/patch-1
Missing return c_int in NonceFn
2020-04-06 14:49:58 +00:00
Andronik Ordian ba013945d5
readme: add an example for travis 2020-03-17 22:33:29 +01:00
Andronik Ordian 37b9e2dfe9
move the note to the main readme 2020-03-16 11:46:53 +01:00
Andronik Ordian fd8b3ff572
secp256k1-sys: remove restriction on cc version 2020-03-14 20:46:26 +01:00
Elichai Turkel 2f897d8a93
Removed no longer used dont_replace_c_symbols feature 2020-02-09 16:37:59 +02:00
Elichai Turkel 889e9a8740
Fix wrong feature name external-symbols 2020-02-09 16:37:39 +02:00
Elichai Turkel f277530669
Fix missing return c_int in NonceFn 2020-01-26 14:20:26 +02:00
Elichai Turkel 6bcb510d9a
Bump secp256k1-sys to 0.1.2 2020-01-09 18:10:12 +02:00
Elichai Turkel 89271c9c3c
Fix fuzztarget symbols 2020-01-09 16:56:10 +02:00
Steven Roose ebc660bf94
Bump to v0.17.1 2019-12-11 18:57:21 +01:00
Steven Roose 987d556a67
Bump secp256k1-sys to v0.1.1 2019-12-11 15:55:00 +00:00
Steven Roose 65fe733ad0
Update Cargo.toml link in vendor script 2019-12-11 15:54:30 +00:00
Andrew Poelstra 72b9ec17fa remove some keywoards from secp-sys Cargo.toml 2019-12-10 19:48:29 +00:00
Elichai Turkel ca8ea92418
Fixed secp256k1_ecdh fuzztarget 2019-12-05 18:05:36 +02:00
Elichai Turkel 9759cb07f5
Replace SharedSecret with a more generic alternative 2019-12-05 17:45:24 +02:00
Steven Roose bf3fba71cb
Add external-symbols feature to support external libsecp
This feature disables using the bundles sources and will link into
existing libsecp256k1 symbols.
2019-11-27 21:04:32 +00:00
Steven Roose 55fab77029
Add vendor script to prefix secp256k1 sources 2019-11-27 21:03:48 +00:00
Steven Roose 80e1935ca0
Add secp256k1-sys README and LICENSE files 2019-11-27 21:02:44 +00:00
Steven Roose 724c49fff9
Add secp256k1-sys 2019-11-27 21:02:42 +00:00