Commit graph

14425 commits

Author SHA1 Message Date
Pieter Wuille
525282769e Update to latest libsecp256k1 2017-05-05 11:12:58 -07:00
Pieter Wuille
e7c1b4490f Squashed 'src/secp256k1/' changes from 8225239..84973d3
84973d3 Merge #454: Remove residual parts from the schnorr expirement.
5e95bf2 Remove residual parts from the schnorr expirement.
cbc20b8 Merge #452: Minor optimizations to _scalar_inverse to save 4M
4cc8f52 Merge #437: Unroll secp256k1_fe_(get|set)_b32 to make them much faster.
465159c Further shorten the addition chain for scalar inversion.
a2b6b19 Fix benchmark print_number infinite loop.
8b7680a Unroll secp256k1_fe_(get|set)_b32 for 10x26.
aa84990 Unroll secp256k1_fe_(get|set)_b32 for 5x52.
cf12fa1 Minor optimizations to _scalar_inverse to save 4M
1199492 Merge #408: Add `secp256k1_ec_pubkey_negate` and `secp256k1_ec_privkey_negate`
6af0871 Merge #441: secp256k1_context_randomize: document.
ab31a52 Merge #444: test: Use checked_alloc
eda5c1a Merge #449: Remove executable bit from secp256k1.c
51b77ae Remove executable bit from secp256k1.c
5eb030c test: Use checked_alloc
72d952c FIXUP: Missing "is"
70ff29b secp256k1_context_randomize: document.
9d560f9 Merge #428: Exhaustive recovery
8e48aa6 Add `secp256k1_ec_pubkey_negate` and `secp256k1_ec_privkey_negate`
2cee5fd exhaustive tests: add recovery module
678b0e5 exhaustive tests: remove erroneous comment from ecdsa_sig_sign
03ff8c2 group_impl.h: remove unused `secp256k1_ge_set_infinity` function
a724d72 configure: add --enable-coverage to set options for coverage analysis
b595163 recovery: add tests to cover API misusage
6f8ae2f ecdh: test NULL-checking of arguments
25e3cfb ecdsa_impl: replace scalar if-checks with VERIFY_CHECKs in ecdsa_sig_sign

git-subtree-dir: src/secp256k1
git-subtree-split: 84973d393ac240a90b2e1a6538c5368202bc2224
2017-05-05 11:12:58 -07:00
Matt Corallo
91700aa1df Re-enable upnp support in contrib/debian 2017-05-05 13:29:38 -04:00
Matt Corallo
c5071e1f03 Build with QT5 on Debian-based systems using contrib/debian 2017-05-05 13:29:38 -04:00
John Newbery
965a124427 [tests] Fix abandonconflict.py intermittency 2017-05-05 13:01:27 -04:00
Luke Dashjr
a637734ba2 rpc/wallet: Workaround older UniValue which returns a std::string temporary for get_str 2017-05-05 00:21:00 +00:00
Matt Corallo
a8e928699a Bump minimum boost version in contrib/debian 2017-05-04 17:16:01 -04:00
Russell Yanofsky
c1235e3f2d Add RecursiveDynamicUsage overload for std::shared_ptr
This simplifies a few usage expressions.
2017-05-04 16:50:52 -04:00
Suhas Daftuar
71f1903353 Store disconnected block transactions outside mempool during reorg
Rather than re-add disconnected block transactions back to the mempool
immediately, store them in a separate disconnectpool for later processing,
because we expect most such transactions to reappear in the chain that is
still to be connected (and thus we can avoid the work of reprocessing those
transactions through the mempool altogether).
2017-05-04 16:50:52 -04:00
Suhas Daftuar
9decd648ac [qa] Relax assumptions on mempool behavior during reorg
Policy limits (such as chain limits and mempool total size) could reasonably
be enforced more aggressively during a reorg, so use resendwallettransactions
to repopulate the mempool to avoid mined blocks being too small, and increase
the chain limits from the default for this test.

This is in preparation for a change in mempool behavior during a reorg.
2017-05-04 16:50:50 -04:00
Pieter Wuille
97477c537e Maintain state across GetStrongRandBytes calls 2017-05-04 10:13:40 -07:00
Cory Fields
0f3471f3ad net: make CNode's id private 2017-05-04 01:04:47 -04:00
Cory Fields
9ff0a51164 scripted-diff: net: Use accessor rather than node's id directly
-BEGIN VERIFY SCRIPT-
sed -i "s/\(node\|to\|from\)->id/\1->GetId()/" src/net.cpp src/net_processing.cpp
-END VERIFY SCRIPT-
2017-05-04 01:04:47 -04:00
Cory Fields
e50c33ea27 devtools: add script to verify scriptable changes 2017-05-04 01:04:47 -04:00
Thomas Snider
6c914ac176 [wallet] Securely erase potentially sensitive keys/values 2017-05-03 11:35:51 -07:00
John Newbery
95836c5eba Use shared config file for functional and util tests
The functional tests and util tests both require a config file that is
generated by ./configure. This commit merges those two config
files into a single configuration file that can be shared by both tests.

The config from config.ini is put into a Namespace object to maintain
the interface with bctest.py. A future commit could change this
interface to use a dictionary instead of a namespace.
2017-05-03 14:18:30 -04:00
John Newbery
89fcd3586c Use an .ini config file for environment vars in bitcoin-util-test.py 2017-05-03 14:18:14 -04:00
John Newbery
e9265df15b Change help_text in bitcoin-util-test.py to a docstring. 2017-05-03 14:14:50 -04:00
John Newbery
ce58e93ec0 Change bitcoin-util-test.py to use Python3 2017-05-03 14:14:04 -04:00
Jorge Timón
c1082a7d35
Chainparams: Use the factory for pow tests 2017-05-03 18:18:09 +02:00
Jorge Timón
2351a064a6
Chainparams: Get rid of CChainParams& Params(std::string) 2017-05-03 18:15:54 +02:00
Jorge Timón
f87f3626e3
Chainparams: Use a regular factory for creating chainparams 2017-05-03 18:15:47 +02:00
Jorge Timón
381a46e38f
Consensus: Policy: MOVEONLY: Move CFeeRate out of the consensus module
...from amount.o to policy/feerate.o

Policy, because it moves policy code to the policy directory (common module)
2017-05-03 18:00:13 +02:00
Jorge Timón
330bb5a456
Consensus: Minimal way to move dust out of consensus 2017-05-03 17:55:52 +02:00
Matt Corallo
997021986e Update contrib/debian to latest Ubuntu PPA upload.
This:
 * Partially reverts 9f68ed6 (which fixed spelling in a changelog,
   though generally changelogs should be append-only).
 * Disables UPnP support (PPA has not had it for a while, and I
   still don't trust miniupnpc, plus it seems uneccessary - its
   been a while since we needed to care about Bitcoin-Qt home users
   getting their inbound ports auto-mapped).
 * Enables ZMQ.
 * Forces GUI to Qt4 to fix various issues people have been seeing
   on Ubuntu and elsewhere with Qt5.
 * Reverts 70899d70b (Bitcoin does not enable "instant payments",
   not is transaction management "carried out collectively by the
   network", for whatever "transaction management" means, finally
   Bitcoin Core is not the only way to use the Bitcoin currency,
   as seemingly implied in the description).
2017-05-03 10:01:56 -04:00
Wladimir J. van der Laan
35da2aeed7
Merge #10327: [tests] remove import-abort-rescan.py
981e586 [tests] remove import-abort-rescan.py (John Newbery)

Tree-SHA512: 8658d42b5ecdefbb71c55849036ee4e8e113abbc9c549730524009fb6eacc50340ffb7ef99fb35809d4abd6b304d491a618e45ff6ded1990f01f18cbcebf2b12
2017-05-03 15:42:58 +02:00
John Newbery
981e586ab8 [tests] remove import-abort-rescan.py
Reverts PR 10225
2017-05-03 09:16:42 -04:00
John Newbery
3e3c22f09d [tests] fix wait_for_inv() 2017-05-03 09:08:29 -04:00
fanquake
355c11679b
[depends] dbus 1.10.18 2017-05-03 18:19:08 +08:00
fanquake
a8d7474ff2
[depends] ccache 3.3.4 2017-05-03 18:19:07 +08:00
fanquake
daeb767f24
[depends] libevent 2.1.8-stable 2017-05-03 18:19:07 +08:00
fanquake
d78269ac99
[depends] Boost 1.64.0 2017-05-03 18:19:07 +08:00
fanquake
7d92c6f3bc
[depends] Latest config.guess and config.sub 2017-05-03 18:19:07 +08:00
Wladimir J. van der Laan
22d870016e
Merge #10311: Remove unused args from GetFetchFlags()
1ff2bb4 Remove unused args from GetFetchhFlags() (BtcDrak)

Tree-SHA512: 75ed1076651f4e255720425386cbce0677c2e38c789a94cda95f51a8e5ed9cb7213f21a974c65539f256da9b91ccbc2fcc16b164815b46cd499b733becbddc57
2017-05-03 11:47:35 +02:00
Wladimir J. van der Laan
0912620888
Merge #10302: [Makefile] Alphabetically Reorder addrdb.cpp
56f09df [Makefile] Alphabetically Reorder addrdb.cpp (Spencer Lievens)

Tree-SHA512: cedf64f5b4a6b20c07881f7e9c1c36421ee04a1ba17319946bae0197f9475dba6d5bda05f8f5d72539fbffcaa0adf8f474ecb2089106215c996576ab1235e8e1
2017-05-03 11:40:29 +02:00
Wladimir J. van der Laan
2a183de0ec
Merge #9966: Control mempool persistence using a command line parameter
a750d77 Add tests for mempool persistence (John Newbery)
91c91e1 Control mempool persistence using a command line parameter. (John Newbery)

Tree-SHA512: 157d01cefd1903b8bfc5cbab42a3cc5e9c1094179bf4b64b3d34c0d4d9b976d593755bfea5c41c631cb758e1de17c6c2058c130d487d20560b7c0bafcddfa520
2017-05-03 11:03:48 +02:00
Wladimir J. van der Laan
d3dce0eb67
Merge #10115: Avoid reading the old hd master key during wallet encryption
185c7f0 Avoid reading the old hd master key during wallet encryption (Matt Corallo)

Tree-SHA512: b744e8490c0e948355bb77b2695902bb99f89a68af46aa2be9120bd2ccf3c340eb8a56340fec117f9a935192298028945c9b18120ee6b8b23e7da8ffdb635745
2017-05-03 09:11:45 +02:00
Wladimir J. van der Laan
83073de4bd
Merge #10307: [tests] allow zmq test to be run in out-of-tree builds
b8251f6 [tests] allow zmq test to be run in out-of-tree builds (John Newbery)

Tree-SHA512: 6946d23bc8a0b57e841a6811989182732d0534989e0e3b94421387f7971379b25a25d238cad22272e04076293275f6e980c8a713fce87ba48c1c4463d9243051
2017-05-03 08:47:37 +02:00
Wladimir J. van der Laan
d4732f3232
Merge #9733: Add getchaintxstats RPC
bd1f138 Add getchaintxstats RPC (Pieter Wuille)

Tree-SHA512: 270785b25e7e2faad4528b5ef591d9dc6266f15236563e3f02dac1f2d9ce3732c4d44903fcccf38549f7921f29d1a93cb0a118b7453ccc5afd79739b51e68f46
2017-05-03 08:14:56 +02:00
Pieter Wuille
bd1f138e73 Add getchaintxstats RPC 2017-05-03 08:08:27 +02:00
Pieter Wuille
431a548faa
Merge #10297: Simplify DisconnectBlock arguments/return value
db994b2 Simplify DisconnectBlock arguments/return value (Pieter Wuille)

Tree-SHA512: 62ce1a85bde2a5baffb9173ed28f2d8008200ecf8b09332122f1516fe68b33b9d7223cc1c2fffe804e38f767874c6353b76bd483e8ad7d48c4a5e80d6b683039
2017-05-02 20:42:15 -07:00
practicalswift
6345f0b7ec Remove unused argument from MarkBlockAsInFlight(...) 2017-05-02 23:00:14 +02:00
practicalswift
0c60c63de0 Remove unused Python imports 2017-05-02 21:12:36 +02:00
MarcoFalke
75171f099e
Merge #10137: Remove unused import. Remove accidental trailing semicolons.
73b3721 Remove accidental trailing semicolons (practicalswift)
b8d9a86 Remove unused import (practicalswift)

Tree-SHA512: 36ac38952f8a10f36d2300519c583ef77703cff761be97470be97cfda2fec9d5b7ac604e454f174cc2601160e5cef3f227021ab5d3a6febc97fcb486d78754d3
2017-05-02 20:51:16 +02:00
John Newbery
b7dd44c528 Add start and stop node methods to BitcoinTestFramework 2017-05-02 14:20:13 -04:00
John Newbery
b111324acd move initialize_chain() and initialize_chain_clean() to be methods of BitcoinTestFramework 2017-05-02 14:18:55 -04:00
MarcoFalke
3c5e6c94ca
Merge #10255: [test] Add test for listaddressgroupings
dadfee3 [test] Add test for listaddressgroupings (Jimmy Song)

Tree-SHA512: 21cf0233c7fcf585f9a31306612ae1113ea916d2972b834efef0cb2154bd4dd24d9746d0632c778c699328f7e7a336d2da6e2bac9f0fb657c30290757563ad22
2017-05-02 20:18:34 +02:00
MarcoFalke
dc8fc0c73b
Merge #10198: [tests] Remove is_network_split from functional test framework
c9cc76d [tests] Remove is_network_split from funtional test cases (John Newbery)

Tree-SHA512: a43ec63a7dc20cbe9048f8d3af755aef55e9247f605d6481e6d665112882a749af7514f29c83ca9d761421b8e0f7282e5b9f8fc471985d222de826da7cc80ccf
2017-05-02 20:03:03 +02:00
Jimmy Song
ed36de59e4 [tests] Update Unit Test for addrman.h/addrman.cpp
Add test for adding multiple addresses to address manager
Clean up unnecessary modulo operations
Add test for GetNewBucket's alternate method signature
2017-05-02 11:01:39 -07:00
Gregory Sanders
cb184b3a54 Add constant for maximum stack size 2017-05-02 13:37:41 -04:00