Commit Graph

12425 Commits

Author SHA1 Message Date
Russell Yanofsky 07df40babb [test] Add CCoinsViewCache Access/Modify/Write tests
Add more comprehensive unit tests for CCoinsViewCache. Right now it is hard to
refactor caching code or fix bugs in the caching logic because you have to try
to mentally enumerate all the different states the cache might be in to make
sure a change doesn't cause unintended consequences. The new tests explicitly
enumerate relevant cache states, documenting and verifying the behavior in each
state, so it will be safer and easier to make changes to the caching code in
the future.
2016-12-05 18:30:46 -05:00
Wladimir J. van der Laan 7f72568e6b Merge #9236: Fix races for strMiscWarning and fLargeWork*Found, make QT runawayException use GetWarnings
749be01 Move GetWarnings() into its own file. (Gregory Maxwell)
e3ba0ef Eliminate data races for strMiscWarning and fLargeWork*Found. (Gregory Maxwell)
c63198f Make QT runawayException call GetWarnings instead of directly access strMiscWarning. (Gregory Maxwell)
2016-12-19 12:40:01 +01:00
Wladimir J. van der Laan a336d13a58 Merge #9311: Flush wallet after abandontransaction
0632939 Flush wallet after abandontransaction (Alex Morcos)
2016-12-19 09:43:54 +01:00
Wladimir J. van der Laan db45ad8516 Merge #9329: [Qt] Console: allow empty arguments
390bd14 [Qt] Console: don't allow empty arguments when using the comma-syntax (Jonas Schnelli)
6a32c0f Qt/Test: Check handling of empty arguments in RPC debug console (Luke Dashjr)
89c8d2c [Qt] Console: allow empty arguments (Jonas Schnelli)
2016-12-19 09:08:20 +01:00
Wladimir J. van der Laan a7f76512d9 Merge #9352: Attempt reconstruction from all compact block announcements
813ede9 [qa] Update compactblocks test for multi-peer reconstruction (Suhas Daftuar)
7017298 Allow compactblock reconstruction when block is in flight (Suhas Daftuar)
2016-12-19 08:52:42 +01:00
Wladimir J. van der Laan b416095371 Merge #9354: Make fuzzer actually test CTxOutCompressor
5dd626a Make fuzzer actually test CTxOutCompressor (Pieter Wuille)
2016-12-19 08:50:27 +01:00
Wladimir J. van der Laan 79da3979b7 Merge #9366: Fix: OSX QT compile: use built-in swap if available, or defer
815f414 Uses built-in byte swap if available (Apple) and if bswap_XX is undefined. (Karl-Johan Alm)
2016-12-19 08:29:52 +01:00
Karl-Johan Alm 815f4148b2 Uses built-in byte swap if available (Apple) and if bswap_XX is undefined.
Defers to pre-defined version if found (e.g. protobuf). For protobuf case, the definitions are identical and thus include order should not affect results.
2016-12-17 12:27:00 +09:00
Pieter Wuille b99a093afe Merge #9346: Batch construct batches
ed58969 Batch construct batches (Pieter Wuille)
2016-12-16 12:32:33 -08:00
Wladimir J. van der Laan 8c7947e09f Merge #9367: If we don't allow free txs, always send a fee filter (take 2)
fa16b8f If we don't allow free txs, always send a fee filter (take 2) (MarcoFalke)
2016-12-16 17:09:47 +01:00
MarcoFalke fa16b8fdba If we don't allow free txs, always send a fee filter (take 2) 2016-12-16 14:27:55 +01:00
Wladimir J. van der Laan c9e00591cd Merge #9322: [qa] Don't set unknown rpcserialversion
fa615d3 [qa] Don't set unknown rpcserialversion (MarcoFalke)
80d073c Complain when unknown rpcserialversion is specified (Pieter Wuille)
2016-12-15 20:10:36 +01:00
Wladimir J. van der Laan 756374c522 Merge #9313: If we don't allow free txs, always send a fee filter
01fea7a If we don't allow free txs, always send a fee filter (Alex Morcos)
2016-12-15 19:45:54 +01:00
Pieter Wuille 5dd626a6d3 Make fuzzer actually test CTxOutCompressor 2016-12-15 09:18:31 -08:00
Suhas Daftuar 813ede91e1 [qa] Update compactblocks test for multi-peer reconstruction 2016-12-15 11:47:04 -05:00
Suhas Daftuar 7017298eb2 Allow compactblock reconstruction when block is in flight 2016-12-15 11:47:04 -05:00
Wladimir J. van der Laan c6fd923886 Merge #9331: [qa] Add test for rescan feature of wallet key import RPCs
d8c0b9f [qa] Add test for rescan feature of wallet key import RPCs (Russell Yanofsky)
2016-12-15 17:06:53 +01:00
Wladimir J. van der Laan 1eef038b1b Merge #7562: Bump transaction version default to 2
c5c92c4 Update python tests for default tx version=2 (BtcDrak)
dab207e Preserve tx version=1 for certain tests (BtcDrak)
c5d746a tiny test fix for mempool_tests (Alex Morcos)
1f0ca1a Bump default transaction version to 2 (BtcDrak)
2016-12-15 17:03:31 +01:00
Wladimir J. van der Laan 5bc209c73f Merge #9172: Resurrect pstratem's "Simple fuzzing framework"
8b15434 doc: Add bare-bones documentation for fuzzing (Wladimir J. van der Laan)
a4153e2 Simple fuzzing framework (Patrick Strateman)
2016-12-15 16:57:06 +01:00
Wladimir J. van der Laan 8b15434b59 doc: Add bare-bones documentation for fuzzing 2016-12-15 13:29:03 +01:00
Patrick Strateman a4153e20ec Simple fuzzing framework 2016-12-15 13:29:03 +01:00
Pieter Wuille b83264d9c7 Merge #8895: Better SigCache Implementation
67dac4e Add unit tests for the CuckooCache (Jeremy Rubin)
c9e69fb Add CuckooCache implementation and replace the sigcache map_type with it (Jeremy Rubin)
2016-12-14 18:14:02 -08:00
Jeremy Rubin 67dac4e193 Add unit tests for the CuckooCache
SQUASHME: Update Tests for other SQUASHMEs
2016-12-14 16:02:22 -05:00
Jeremy Rubin c9e69fbf39 Add CuckooCache implementation and replace the sigcache map_type with it
SQUASHME: Change cuckoocache to only work for powers of two, to avoid mod operator
SQUASHME: Update Documentation and simplify logarithm logic
SQUASHME: OSX Build Errors
SQUASHME: minor Feedback from sipa + bluematt
SQUASHME: DOCONLY: Clarify a few comments.
2016-12-14 16:02:05 -05:00
Wladimir J. van der Laan b68685a16a Merge #9273: Remove unused CDiskBlockPos* argument from ProcessNewBlock
a13fa4c Remove unused CDiskBlockPos* argument from ProcessNewBlock (Matt Corallo)
2016-12-14 10:56:28 +01:00
Pieter Wuille 57e337d40e Merge #9290: Make RelayWalletTransaction attempt to AcceptToMemoryPool.
f692fce Make RelayWalletTransaction attempt to AcceptToMemoryPool. (Gregory Maxwell)
2016-12-14 01:28:09 -08:00
Wladimir J. van der Laan 47e6a19e6b Merge #9330: [Qt] Console: add security warning
ed6b377 [Qt] Console: add security warning (Jonas Schnelli)
2016-12-14 09:34:31 +01:00
Wladimir J. van der Laan 82ccac739e Merge #9344: Do not run functions with necessary side-effects in assert()
da9cdd2 Do not run functions with necessary side-effects in assert() (Gregory Maxwell)
2016-12-14 09:33:31 +01:00
Pieter Wuille ed5896976a Batch construct batches
Reuse the serialization buffers used for constructing the LevelDB
write batch. This avoids 2 allocations per utxo write.
2016-12-14 00:31:28 -08:00
Jonas Schnelli 390bd14684 [Qt] Console: don't allow empty arguments when using the comma-syntax 2016-12-14 09:00:09 +01:00
Gregory Maxwell da9cdd2c9c Do not run functions with necessary side-effects in assert() 2016-12-14 01:50:00 +00:00
Wladimir J. van der Laan 26fe5c98ab Merge #9326: Update for OpenSSL 1.1 API.
b05b1af Fix qt/paymentrequestplus.cpp for OpenSSL 1.1 API. (Gregory Maxwell)
bae1eef Fix wallet/test/crypto_tests.cpp for OpenSSL 1.1 API. (Gregory Maxwell)
2016-12-13 12:22:30 +01:00
Wladimir J. van der Laan 5233aefa3f Merge #9305: Refactor: Removed begin/end_ptr functions.
8c1dbc5 Refactor: Removed begin/end_ptr functions. (Karl-Johan Alm)
2016-12-13 12:21:18 +01:00
Wladimir J. van der Laan cfd5e6b1dc Merge #9334: Update to latest libsecp256k1
7b49f22 Squashed 'src/secp256k1/' changes from 7a49cac..8225239 (Pieter Wuille)
2016-12-13 12:16:47 +01:00
Wladimir J. van der Laan b6abdc77d3 Merge #9302: Return txid even if ATMP fails for new transaction
b3a7410 Return txid even if ATMP fails for new transaction (Pieter Wuille)
2016-12-13 12:15:27 +01:00
MarcoFalke e6ba5068f1 Merge #9335: Fix typo in test/data/tx_valid.json
e49a252 Fix spelling. (Richard Kiss)
2016-12-13 11:05:49 +01:00
Luke Dashjr 6a32c0f69d Qt/Test: Check handling of empty arguments in RPC debug console 2016-12-13 09:18:13 +01:00
Jonas Schnelli 89c8d2c12c [Qt] Console: allow empty arguments 2016-12-13 09:17:35 +01:00
Richard Kiss e49a252bae Fix spelling. 2016-12-12 16:06:59 -05:00
Gregory Maxwell b05b1af10b Fix qt/paymentrequestplus.cpp for OpenSSL 1.1 API.
This avoids a compile failure on newly installed debian stretch systems.
2016-12-12 19:24:34 +00:00
Pieter Wuille 547a53d135 Update libsecp256k1 to master 2016-12-12 11:08:47 -08:00
Pieter Wuille 7b49f22bdb Squashed 'src/secp256k1/' changes from 7a49cac..8225239
8225239 Merge #433: Make the libcrypto detection fail the newer API.
12de863 Make the libcrypto detection fail the newer API.
2928420 Merge #427: Remove Schnorr from travis as well
8eecc4a Remove Schnorr from travis as well
a8abae7 Merge #310: Add exhaustive test for group functions on a low-order subgroup
b4ceedf Add exhaustive test for verification
83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group
20b8877 Add exhaustive test for group functions on a low-order subgroup
80773a6 Merge #425: Remove Schnorr experiment
e06e878 Remove Schnorr experiment
04c8ef3 Merge #407: Modify parameter order of internal functions to match API parameter order
6e06696 Merge #411: Remove guarantees about memcmp-ability
40c8d7e Merge #421: Update scalar_4x64_impl.h
a922365 Merge #422: Restructure nonce clearing
3769783 Restructure nonce clearing
0f9e69d Restructure nonce clearing
9d67afa Update scalar_4x64_impl.h
7d15cd7 Merge #413: fix auto-enabled static precompuatation
00c5d2e fix auto-enabled static precompuatation
91219a1 Remove guarantees about memcmp-ability
353c1bf Fix secp256k1_ge_set_table_gej_var parameter order
541b783 Fix secp256k1_ge_set_all_gej_var parameter order
7d893f4 Fix secp256k1_fe_inv_all_var parameter order

git-subtree-dir: src/secp256k1
git-subtree-split: 8225239f490f79842a5a3b82ad6cc8aa11d5208e
2016-12-12 11:08:47 -08:00
Russell Yanofsky d8c0b9f525 [qa] Add test for rescan feature of wallet key import RPCs
Covers importaddress, importpubkey, importprivkey, and importmulti RPCs.
2016-12-12 10:18:11 -05:00
Jonas Schnelli ed6b377ae2 [Qt] Console: add security warning 2016-12-12 15:58:40 +01:00
Gregory Maxwell bae1eef752 Fix wallet/test/crypto_tests.cpp for OpenSSL 1.1 API.
This avoids a compile failure on newly installed debian stretch systems.
2016-12-12 08:10:27 +00:00
MarcoFalke fa615d39b5 [qa] Don't set unknown rpcserialversion 2016-12-11 14:18:07 +01:00
MarcoFalke 76fcd9d503 Merge #9309: [qa] Wallet needs to stay unlocked for whole test
9359f8a Wallet needs to stay unlocked for whole test (Alex Morcos)
2016-12-10 18:47:36 +01:00
Pieter Wuille a1dcf2e108 Merge #9240: Remove txConflicted
a874ab5 remove internal tracking of mempool conflicts for reporting to wallet (Alex Morcos)
bf663f8 remove external usage of mempool conflict tracking (Alex Morcos)
2016-12-09 16:31:03 -08:00
Pieter Wuille d38b0d7a6b Merge #9307: Remove undefined FetchCoins method declaration
fe41f58 Remove undefined FetchCoins method declaration (Russell Yanofsky)
2016-12-09 16:21:28 -08:00
Pieter Wuille 815640ec6a Merge #9295: [Wallet] Bugfix: Fundrawtransaction: don't terminate when keypool is empty
1a6eacb [QA] add fundrawtransaction test on a locked wallet with empty keypool (Jonas Schnelli)
c24a4f5 [Wallet] Bugfix: FRT: don't terminate when keypool is empty (Jonas Schnelli)
2016-12-09 16:14:54 -08:00