Commit Graph

13294 Commits

Author SHA1 Message Date
Sean Bowe faca79eb2f
Initialize ThreadNotifyWallets before additional blocks are imported.
Co-authored-by: Daira Hopwood <daira@electriccoin.co>
2020-02-26 11:20:12 -07:00
Taylor Hornby 171ce8336b Have make clean delete AFL output directories. 2020-02-26 09:31:28 -07:00
Taylor Hornby 967b9a40f3 Add AFL build directory to .gitignore 2020-02-26 09:29:05 -07:00
Taylor Hornby eb6c722e78 Have make clean delete temporary AFL build directory 2020-02-26 09:27:44 -07:00
Homu 77c2e1c251 Auto merge of #3481 - LarryRuane:fetch-params-testnet-arg, r=mdr0id
zcutil/fetch-params.sh unneeded --testnet arg should warn user

If fetch-params.sh user doesn't know that testnet and mainnet params are the same, and user specifies --testnet, it's confusing that the argument is ignored.
2020-02-25 20:40:49 +00:00
Daira Hopwood ee4d73b841 Sort entries in zcash_gtest_SOURCES (other than test_tautology which is deliberately first).
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-25 17:00:10 +00:00
Daira Hopwood 7fa7225509 Update GetAdjustedTime() to GetTime().
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-25 16:57:22 +00:00
Daira Hopwood d631187b39 Replace time adjustment with warning only.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-25 16:48:16 +00:00
Daira Hopwood e1fa4c98fd Remove uses of GetTimeOffset().
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-24 16:27:07 +00:00
Daira Hopwood ddc2bbf742 Revert "Add -maxtimeadjustment with default of 0 instead of the 4200 seconds used in Bitcoin Core."
This reverts commit eb5e328073.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-24 16:27:07 +00:00
Homu 69e0e7ee62 Auto merge of #4369 - daira:port-strMiscraceless, r=str4d
Upstream PRs relating to strMiscWarning

This pulls in upstream PRs bitcoin/bitcoin#7114 and bitcoin/bitcoin#9236 (non-QT parts).

* Fixes bitcoin/bitcoin#6809 - run-of-the-mill exceptions should not get into `strMiscWarning` (which is reported by `getinfo`).
* Eliminate data races for `strMiscWarning` and `fLargeWork*Found`. This moves all access to these data structures through accessor functions and protects them with a lock.
2020-02-21 19:06:29 +00:00
Gregory Maxwell 9f4ad7e1c6 Move GetWarnings() into its own file.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-21 01:31:16 +00:00
Gregory Maxwell d6a48adb76 Eliminate data races for strMiscWarning and fLargeWork*Found.
This moves all access to these datastructures through accessor functions
and protects them with a lock.

Relative to the upstream commit, we also add GetMiscWarning() to make this accessible to tests.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-21 01:30:23 +00:00
Gregory Maxwell 05882459c0 Move GetWarnings and related globals to util.
This is a first step in avoiding racy accesses to strMiscWarning.

By itself this commit causes a link error because global variables relating to alerts
are only accessible in the zcashd server, but util is used in other binaries.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-21 01:28:13 +00:00
Wladimir J. van der Laan f08e31382b util: Don't set strMiscWarning on every exception
Fixes bitcoin/bitcoin#6809 - run-of-the-mill exceptions should not get into
strMiscWarning (which is reported by `getinfo`).
2020-02-21 01:06:00 +00:00
Homu 55354537b7 Auto merge of #4366 - str4d:z_viewtransaction-release-notes, r=str4d
Add release notes for z_viewtransaction
2020-02-20 23:52:09 +00:00
Homu e50639517f Auto merge of #4362 - str4d:3060-zcash-address-refactor, r=str4d
Refactor shielded address logic

This gets the more menial work out of the way in order to simplify the viewing key PR.

Part of #3060.
2020-02-20 22:28:39 +00:00
Homu d75fe844e3 Auto merge of #4356 - oxarbitrage:issue4286, r=str4d
remove debug noise from gtests

Closes #4286.
2020-02-20 13:28:14 +00:00
Jack Grigg 7de06244e6 test: Add test for CBasicKeyStore::AddSaplingFullViewingKey 2020-02-20 13:01:49 +00:00
Jack Grigg b62bb98087 Remove default address parameter from Sapling keystore methods
Now that we store SaplingExtendedFullViewingKey internally, we have
access to the default address everywhere we require it.
2020-02-20 13:01:49 +00:00
Jack Grigg d74fdd76eb SaplingFullViewingKey -> SaplingExtendedFullViewingKey in keystore maps
All of these maps are created from scratch on wallet load, so we can
alter their contents without compatibility concerns. With this change,
we can use the existing maps to implement viewing key support. The
downside is that the wallet will take more space in memory, but that can
easily be improved in future by storing ExtFVK fingerprints in some of
the maps (which would improve memory usage even compared to the original
layout).
2020-02-20 13:01:49 +00:00
Jack Grigg 9658c87d4a Move ZIP 32 classes inside zcash/Address.hpp
This fixes the dependency graph between the general address-handling
logic, ZIP 32, and the core Sapling address classes.
2020-02-20 12:26:58 +00:00
Jack Grigg 42b423c3a5 Move Sprout and Sapling address logic into separate files 2020-02-20 12:26:58 +00:00
Jack Grigg 4964328210 Deduplicate some wallet keystore logic 2020-02-20 12:26:58 +00:00
Homu 6a6114f954 Auto merge of #4355 - rex4539:fix-lf, r=str4d
End diff with LF character

Fixes https://github.com/zcash/zcash/issues/4354.
2020-02-20 12:21:22 +00:00
Jack Grigg 85548eca62 Add release notes for z_viewtransaction 2020-02-20 11:39:28 +00:00
Homu 27c04c8f9c Auto merge of #4146 - str4d:z_viewtransaction, r=str4d
z_viewtransaction

This RPC method returns all decryptable information for any transaction in the wallet.

Several values are conditionally included in the output for convenience:
- `recovered`: True if an output is not for a Sapling address in the wallet.
- `memoStr`: The text form of an output's memo, if it is valid UTF-8.
- Values are provided both in decimal currency units, and integer zatoshis.
2020-02-19 20:52:47 +00:00
Homu 3f270a2afa Auto merge of #4360 - oxarbitrage:issue3235, r=str4d
Add destination wrapper functions

Closes #3235.
2020-02-19 17:53:54 +00:00
Alfredo Garcia 11de2d33e7 change tuples to classes 2020-02-19 10:12:26 -03:00
Homu 0e57ffa710 Auto merge of #4353 - daira:blossom-tests, r=str4d
Add missing cases for Blossom in ContextualCheckBlock tests

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-19 12:12:32 +00:00
Alfredo Garcia d53d4d880a add destination wrappers 2020-02-18 13:20:43 -03:00
Jack Grigg 0f12f47f58 Patch libsodium 1.0.15 signature validation onto 1.0.18 2020-02-18 01:18:37 +00:00
Jack Grigg 4fe5969157 Patch libsodium 1.0.15 pubkey validation onto 1.0.18 2020-02-18 01:18:37 +00:00
ca333 d4644e7ed0 update libsodium to v1.0.18
according to changelogs backwards compatible and containing various optimizations:

https://github.com/jedisct1/libsodium/releases
https://fossies.org/diffs/libsodium/1.0.15_vs_1.0.16/ChangeLog-diff.html
https://fossies.org/diffs/libsodium/1.0.16_vs_1.0.17/ChangeLog-diff.html
https://fossies.org/diffs/libsodium/1.0.17_vs_1.0.18/ChangeLog-diff.html

(EDIT by str4d): The update is not in fact backwards-compatible; the
passing test cases added in the previous commit fail as of this commit.
2020-02-18 01:18:37 +00:00
Jack Grigg 7893f7b752 Add test vectors for small-order Ed25519 pubkeys
I'm not adding test vectors for non-canonical pubkeys, as that would
require grinding to find a private key corresponding to one of the 19
pubkeys that can be non-canonical.
2020-02-18 01:18:37 +00:00
Homu 5dde1a7702 Auto merge of #4328 - oxarbitrage:issue3344, r=str4d
Reduce duplication in key_io decode

Attempt to fix https://github.com/zcash/zcash/issues/3344 by adding a new `DecodeAny` template function with arguments that will handle all the cases. Then on each decoding this new function is called with the appropriate arguments resulting in reducing code duplication.

Some of the complexity(`boost::optional`) will be removed if `ViewingKey` is implemented for sapling.
2020-02-17 21:50:45 +00:00
Alfredo Garcia 0987bf349a add missing calls to DecodeAny 2020-02-17 14:54:08 -03:00
Alfredo Garcia df38c039f5 make type and size a pair in DecodeAny arguments 2020-02-17 14:27:56 -03:00
Alfredo Garcia 9ba20840e9 remove debug noise from 2 gtests 2020-02-17 13:57:49 -03:00
Alfredo Garcia a8f6b8c2e5 fix rpx_wallet_tests 2020-02-17 09:52:40 -03:00
Dimitris Apostolou daff771ca4
End diff with LF character 2020-02-16 21:14:42 +02:00
Daira Hopwood fd164f56f2 Add missing cases for Blossom in ContextualCheckBlock tests.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2020-02-16 18:38:56 +00:00
Homu a830563309 Auto merge of #4316 - str4d:worst-case-benchmarks, r=str4d
Worst-case block verification benchmarks

The micro-benchmark framework from #3858 is used to measure the time to verify various transaction components. These are leveraged by a script that simulates the verification cost of different compositions of full blocks.
2020-02-14 23:42:44 +00:00
Jack Grigg ec32287fe7 bench: "Use" result of crypto_sign_verify_detached
This fixes compilation with --enable-werror.
2020-02-14 16:48:32 +00:00
Alfredo Garcia e992825e0a add txexpirynotify 2020-02-13 21:42:25 -03:00
Jack Grigg ef5fb6a93c test: Fix pyflakes warnings 2020-02-13 20:04:33 +00:00
Jack Grigg 0d5d329312 test: Hard-code hex memo in wallet_listreceived for Python3 compatibility 2020-02-13 20:04:33 +00:00
Homu bfa54b28f4 Auto merge of #4348 - rex4539:typos, r=str4d
Fix typo
2020-02-13 15:44:38 +00:00
Dimitris Apostolou 3247e3c901
Fix typo 2020-02-13 17:14:19 +02:00
Homu c5d20b5da0 Auto merge of #4335 - rex4539:remove-libsnark-flags, r=str4d
Remove libsnark preprocessor flags

Closes https://github.com/zcash/zcash/issues/4285.
2020-02-11 23:47:52 +00:00