bbe67d8b29
Make secp256k1_eckey_pubkey_serialize fail for infinity
2014-11-18 12:37:38 +01:00
11a78460f4
Merge pull request #107
...
f49b2ef
Add DETERMINISTIC to avoid line number/source dependent binaries (Pieter Wuille)
2014-11-18 11:42:05 +01:00
f49b2ef840
Add DETERMINISTIC to avoid line number/source dependent binaries
...
This will make it easier to detect changes without semantic impact.
2014-11-18 11:08:44 +01:00
a5f7483d3e
Merge pull request #108
...
6c7f0c6
Update README.md (Pieter Wuille)
2014-11-18 09:56:25 +01:00
6c7f0c621c
Update README.md
2014-11-17 14:04:45 +01:00
c48cdc4cb3
Merge pull request #105
...
71712b2
Switch to C89 comments in prep for making the whole codebase C89 compatible. (Gregory Maxwell)
2014-11-17 13:26:37 +01:00
e5b9357b60
Merge pull request #106
...
8ca6a9c
Correct .gitignore to correctly account for build-aux. (Phillip Mienk)
2014-11-16 14:54:50 +01:00
8ca6a9c06f
Correct .gitignore to correctly account for build-aux.
2014-11-15 19:47:03 -08:00
71712b27e5
Switch to C89 comments in prep for making the whole codebase C89 compatible.
...
This should be whitespace/comment only changes and should produce the same
object code.
2014-11-15 07:33:07 -08:00
21288f2d05
Merge pull request #103
...
f8cce95
Add overflow analysis to field_10x26_impl.h (Pieter Wuille)
a518598
Add overflow analysis to field_5x52_int128_impl.h (Pieter Wuille)
fa0d620
Add equalities relating input and output variables (Pieter Wuille)
5dd421b
Rewrite mul/sqr for 32bit/64bit (Peter Dettman)
2014-11-15 01:29:44 +01:00
f8cce95650
Add overflow analysis to field_10x26_impl.h
2014-11-14 17:52:39 +01:00
a51859871a
Add overflow analysis to field_5x52_int128_impl.h
2014-11-13 07:47:40 -08:00
fa0d620668
Add equalities relating input and output variables
2014-11-13 07:00:44 -08:00
5dd421bab5
Rewrite mul/sqr for 32bit/64bit
...
- interleave calculation of the lower and upper partial product ranges, and reduction
- less registers needed, more opportunities for parallel ops
2014-11-13 04:46:17 -08:00
027eb9c610
Merge pull request #102
...
a099073
Enable warnings. (Gregory Maxwell)
861f9a5
field_gmp's negate doesn't need to use the magnitude argument. (Gregory Maxwell)
f0709ac
Avoid forward static decl of undefined functions, also fix a paren warning in the tests. (Gregory Maxwell)
3276e7d
Signed/unsigned comparisons in tests. (Gregory Maxwell)
850562e
Avoid unsigned comparison in scalar arith. (Gregory Maxwell)
65a14ab
Fix varrious signed/unsigned comparisons. (Gregory Maxwell)
e9e0e21
Avoid a shadowed variable. (Gregory Maxwell)
e28a8b8
Remove a VERIFY_CHECK for >=0ness on an unsigned type. (Gregory Maxwell)
2cad067
Correct function prototypes and avoid unused parameter warnings. (Gregory Maxwell)
a4a43d7
Reorder static to comply with C99 and switch to the inline macro. (Gregory Maxwell)
2014-11-13 04:41:08 -08:00
a099073a7e
Enable warnings.
...
Wno-unused-function is used for the moment because of the checking
functions which are currently only used by VERIFY but are not (yet?)
ifdefed out in normal builds.
2014-11-13 01:45:57 -08:00
861f9a59cc
field_gmp's negate doesn't need to use the magnitude argument.
2014-11-13 01:45:56 -08:00
f0709ac57e
Avoid forward static decl of undefined functions, also fix a paren warning in the tests.
2014-11-13 01:45:49 -08:00
3276e7d4e2
Signed/unsigned comparisons in tests.
2014-11-12 15:47:12 -08:00
850562e3f1
Avoid unsigned comparison in scalar arith.
2014-11-12 15:47:12 -08:00
65a14abb48
Fix varrious signed/unsigned comparisons.
2014-11-12 15:47:12 -08:00
e9e0e21a6f
Avoid a shadowed variable.
2014-11-12 15:47:12 -08:00
e28a8b86c7
Remove a VERIFY_CHECK for >=0ness on an unsigned type.
2014-11-12 15:47:12 -08:00
2cad067a36
Correct function prototypes and avoid unused parameter warnings.
2014-11-12 15:47:06 -08:00
f79d80a724
Merge pull request #101
...
8563713
Add non-null and unused-result warnings for the external API. (Gregory Maxwell)
2014-11-12 14:06:04 -08:00
a4a43d7543
Reorder static to comply with C99 and switch to the inline macro.
2014-11-12 13:07:55 -08:00
8563713a4f
Add non-null and unused-result warnings for the external API.
...
GCC (and clang) supports extensions to annotate functions so that their
results must be used and so that their arguments can't be statically
provable to be null. If a caller violates these requirements they
get a warning, so this helps them write correct code.
I deployed this in libopus a couple years ago with good success, and
the implementation here is basically copied straight from that.
One consideration is that the non-null annotation teaches the optimizer
and will actually compile out runtime non-nullness checks as dead-code.
Since this is usually not whats wanted, the non-null annotations are
disabled when compiling the library itself.
The commit also removes some dead inclusions of assert.h and introduces
compatibility macros for restrict and inline in preparation for some
portability improvements.
2014-11-12 12:23:09 -08:00
8ed7c33cd6
Merge pull request #96
...
6fac238
Use same build template as bitcoin. Add bitcoin_secp.m4. (kiwigb)
f9aac5b
Remove INCLUDES. Obsolete, appears unused anyway. (kiwigb)
db72c18
Add autoreconf warnings. Replace obsolete AC_TRY_COMPILE. Remove redundant checks (already done by LT_INIT). (kiwigb)
2014-11-12 11:35:33 -08:00
28515b8848
Merge pull request #99
...
c27fdc0
Document some preconditions (Pieter Wuille)
2014-11-12 11:23:18 -08:00
c27fdc0b97
Document some preconditions
2014-11-12 03:20:15 -08:00
7ff4770e15
Merge pull request #98
...
fb1bb0b
Rearrange _gej_add_ge to save an _fe_negate (Peter Dettman)
9338dbf
Branch-free point addition (Pieter Wuille)
2014-11-12 02:44:56 -08:00
fb1bb0b445
Rearrange _gej_add_ge to save an _fe_negate
2014-11-12 02:16:36 -08:00
9338dbf791
Branch-free point addition
2014-11-11 14:28:22 -08:00
6fac238f03
Use same build template as bitcoin. Add bitcoin_secp.m4.
2014-11-07 01:55:27 +13:00
f9aac5b034
Remove INCLUDES. Obsolete, appears unused anyway.
2014-11-06 22:35:41 +13:00
db72c181bb
Add autoreconf warnings. Replace obsolete AC_TRY_COMPILE.
...
Remove redundant checks (already done by LT_INIT).
2014-11-06 22:20:05 +13:00
ef6f677679
Merge pull request #95
...
79ad6d4
Remove some dead variables in the tests. (Gregory Maxwell)
9974d86
Misc. Warning and cosmetic error cleanups. (Gregory Maxwell)
2014-11-04 23:29:08 -08:00
985fd63a73
Merge pull request #77
...
1d52a8b
Implementations for scalar without data-dependent branches. (Pieter Wuille)
2014-11-04 23:26:52 -08:00
79ad6d44ea
Remove some dead variables in the tests.
2014-11-04 13:47:23 -08:00
9974d8693e
Misc. Warning and cosmetic error cleanups.
...
This fixes a cosmetic precedence bug in the tests along with some
type warnings.
It also adds a dummy cast to the CHECK macro to avoid hundreds
of statement with no effect warnings on compilers that warn about
such things.
2014-11-04 13:17:45 -08:00
1d52a8b155
Implementations for scalar without data-dependent branches.
2014-11-04 03:01:55 -08:00
0ce80ef47e
Merge pull request #94
...
da55986
Label variable-time functions correctly and don't use those in sign (Pieter Wuille)
2014-11-04 03:01:38 -08:00
da55986fdf
Label variable-time functions correctly and don't use those in sign
2014-11-04 02:50:06 -08:00
784e62f3b2
Fix typo
2014-11-04 02:28:34 -08:00
aee112a24e
Merge pull request #92
...
137e77a
Address 'constant-time' TODOs in field impls (Peter Dettman)
2014-11-04 02:27:25 -08:00
137e77afb4
Address 'constant-time' TODOs in field impls
2014-11-04 14:57:04 +07:00
112510dfab
Merge pull request #93
...
5362875
warnings: enable quiet builds (Cory Fields)
2014-11-03 23:35:35 -08:00
53628757f3
warnings: enable quiet builds
2014-11-03 23:29:24 -08:00
cc20075ef7
Merge pull request #85
...
7a8e385
Fix interaction between magnitudes and negation (Pieter Wuille)
2014-11-03 01:44:27 -08:00
47ebd6b7fa
Merge pull request #89
...
501d58f
Get rid of {num,scalar,ecdsa_sig}_{init,free} (Pieter Wuille)
2014-11-03 01:41:54 -08:00