Commit Graph
7329 Commits
Author SHA1 Message Date
Jack Grigg bec2235148 Cleanup: Add braces for clarity 2017-12-20 11:18:59 +00:00
Jack Grigg 7b8d4f87ec Modify zcrawkeygen RPC method to set "zcviewingkey" to the viewing key
The "zcviewingkey" field has never been documented before, and the method itself
is deprecated; this just ensures it is consistent with the rest of the RPC.
2017-12-20 00:46:41 +00:00
Jack Grigg 44e37656bf Add watch-only support to Zcash RPC methods
Balance totals do not include spends linked to viewing key addresses, as
nullifiers cannot be calculated and therefore spends cannot be detected.
2017-12-20 00:46:37 +00:00
Jack Grigg 9a2b8ae57f Update wallet logic to account for viewing keys
The wallet code previously assumed that an unlocked wallet would always
have a spending key associated with a note decryptor. Viewing keys break
this assumption.
2017-12-20 00:46:37 +00:00
Jack Grigg e85b33a52e Add RPC methods for exporting/importing viewing keys 2017-12-20 00:46:37 +00:00
Jack Grigg 167cd33374 Implement viewing key storage in the wallet 2017-12-20 00:46:37 +00:00
Jack Grigg 49cf707d2c Add Base58 encoding of viewing keys 2017-12-20 00:46:33 +00:00
Jack Grigg 13933e4c13 Factor out common logic from CZCPaymentAddress and CZCSpendingKey 2017-12-04 17:17:18 +00:00
Jack Grigg aa666c9673 Implement viewing key storage in the keystore 2017-12-04 17:17:18 +00:00
Jack Grigg 642a1caf93 ViewingKey -> ReceivingKey per zcash/zips#117 2017-12-04 17:17:18 +00:00
Jack Grigg c6b39fbbd6 Include endian-ness compatibility layer in Equihash implementation 2017-11-29 17:28:44 +00:00
Jack Grigg d3096198c8 [libsnark] Use POSIX-compliant ar arguments 2017-11-29 17:28:44 +00:00
Jack Grigg daad2c2736 Check if OpenMP is available before using it 2017-11-29 17:28:44 +00:00
Cory Fields 4bfe8a744b c++11: CAccountingEntry must be defined before use in a list
c++11ism. This fixes builds against libc++.
2017-11-29 17:24:59 +00:00
Cory Fields 4165af1b73 c++11: don't throw from the reverselock destructor
noexcept is default for destructors as of c++11. By throwing in reverselock's
destructor if it's lock has been tampered with, the likely result is
std::terminate being called. Indeed that happened before this change.

Once reverselock has taken another lock (its ctor didn't throw), it makes no
sense to try to grab or lock the parent lock. That is be broken/undefined
behavior depending on the parent lock's implementation, but it shouldn't cause
the reverselock to fail to re-lock when destroyed.

To avoid those problems, simply swap the parent lock's contents with a dummy
for the duration of the lock. That will ensure that any undefined behavior is
caught at the call-site rather than the reverse lock's destruction.

Barring a failed mutex unlock which would be indicative of a larger problem,
the destructor should now never throw.
2017-11-29 17:24:59 +00:00
Homu 37ffef4628 Auto merge of #2767 - syd0:cleanup-reserved-include-guards, r=str4d
Get rid of underscore prefixes for include guards.

This is because they may conflict with reserved names. Also took
this opportunity to make the guards in the zcash subdir a bit
more uniform by having them all conform to ZC_<...>_H_

This closes #1272
2017-11-29 06:52:52 -08:00
Homu 213ac8d1fe Auto merge of #2764 - syd0:remove-old-boost-defines, r=str4d
Remove Boost conditional compilation.

Boost is currently at version 106200 in the depends subsystem
so it is safe to remove code the refers to earlier versions.

This closes #2445
2017-11-28 12:19:27 -08:00
syd 4e4aa5b6ec Get rid of underscore prefixes for include guards.
This is because they may conflict with reserved names. Also took
this opportunity to make the guards in the zcash subdir a bit
more uniform by having them all conform to ZC_<...>_H_

This closes #1272
2017-11-28 14:57:58 -05:00
Homu 2ff8ab7dfb Auto merge of #2751 - syd0:upgrade-googletest-1.8.0, r=str4d
Upgrade googletest to 1.8.0

Closes #1432.
2017-11-28 07:37:20 -08:00
syd d52dcf5d0c InitGoogleMock instead of InitGoogleTest per CR 2017-11-27 11:08:34 -05:00
Homu 9ce4859459 Auto merge of #2766 - syd0:remove-fPowAllowMinDifficultyBlocks, r=str4d
Get rid of consensus.fPowAllowMinDifficultyBlocks.

This closes #1380
2017-11-27 04:06:27 -08:00
syd 5163fd9d07 Get rid of fp3 from libsnark, it is not used.
This is for #1544
2017-11-25 15:08:01 -05:00
syd a10c2f46a5 Add gtests to .gitignore 2017-11-25 11:05:01 -05:00
syd 7c591c6d2f Don't compile libgtest.a when building libsnark.
Previously libsnark would try to build libgtest if /usr/src/gtest
exists on the build machine. This caused issues because the
version of libgtest in /usr/src isn't necessarily the same as
the one that the rest of zcash's gtests were built with.
2017-11-25 10:58:37 -05:00
syd dffc025d38 Get rid of consensus.fPowAllowMinDifficultyBlocks.
This closes #1380
2017-11-23 12:20:50 -05:00
syd 6df5f51b7c Update to address @daira comments wrt fixing configure.ac
Since we're enforcing Boost >= 1.62, we no longer need HAVE_WORKING_BOOST_SLEEP_FOR.
2017-11-23 11:58:25 -05:00
syd c72a4732cc Remove Boost conditional compilation.
Boost is currently at version 106200 in the depends subsystem
so it is safe to remove code the refers to earlier versions.

This closes #2445
2017-11-23 00:05:21 -05:00
Homu df1c3debcc Auto merge of #2752 - syd0:fix-sec-hard-tests, r=daira
Get the sec-hard tests to run correctly.

This fixes the way arguments were passed to security-check, and also
a typo in how BIND_NOW was being searched for in a list.

Also fix how symbol-check is invoked although that script isn't
currently used.
2017-11-22 15:22:10 -08:00
Jack Grigg 0523d21d22 make-release.py: Versioning changes for 1.0.13. 2017-11-20 12:23:45 +00:00
syd 2d342736dc Get the sec-hard tests to run correctly.
This fixes the way arguments were passed to security-check, and also
a typo in how BIND_NOW was being searched for in a list.

Also fix how symbol-check is invoked although that script isn't
currently used.
2017-11-20 00:48:12 -05:00
Jack Grigg e70c8d2ea3 make-release.py: Versioning changes for 1.0.13-rc2. 2017-11-17 17:49:28 +00:00
Jack Grigg fee8835388 Mark libsnark includes as library includes 2017-11-15 16:49:10 +00:00
Jack Grigg 8f23c734e6 Pass correct dependencies path to libsnark from both Gitian and build.sh 2017-11-15 15:30:21 +00:00
Jack Grigg 83bef3fcbe Move libsnark from DIST_SUBDIRS into EXTRA_DIST 2017-11-15 11:10:19 +00:00
Jack Grigg 66a9fd8b72 Change auto-senescence cycle to 16 weeks
Closes #2686
2017-11-15 00:37:02 +00:00
Jack Grigg c5b04132bd make-release.py: Versioning changes for 1.0.13-rc1. 2017-11-14 23:53:45 +00:00
Homu c8ecd49574 Auto merge of #2159 - bitcartel:1.0.7_payment_disclosure, r=str4d
Payment disclosure (experimental feature)
2017-11-14 14:06:22 -08:00
Simon 45232b1961 Add payment disclosure as experimental feature. 2017-11-14 13:29:05 -08:00
Homu 064600ec8a Auto merge of #2649 - bitcartel:2576_security_url, r=str4d
Closes #2576. Update link to security info on z.cash website.
2017-11-09 15:19:41 -08:00
Homu 6f9f09dfb0 Auto merge of #2670 - arielgabizon:lowmemprover, r=daira
Low memory prover

This PR integrates @ebfull 's low memory changes:  https://github.com/zcash/zcash/pull/2243/commits
on top of @str4d 's work bringing in libsnark as a subtree
https://github.com/zcash/zcash/pull/2652/commits/4699d0eb36e2049f692ead9f44c5886ba87a007c
2017-11-06 04:22:20 -08:00
Jack Grigg bef1b5ce1b Fix NPE in rpc_wallet_tests 2017-11-05 12:02:21 -05:00
Simon c5dabd2b66 Closes #2639. Adds optional limit parameter with a default value of 50.
The new parameter is to satisfy the principle of least astonishment
by providing a sensible default for the maximum number of transparent
inputs to shield.  If users do not configure -mempooltxinputlimit
it is possible for them to create transactions with hundreds of
inputs which suffer from mining delay, due to the current state of
the network where some miners have configured -mempooltxinputlimit
as a way to deal with the problem of quadratic hashing.
2017-11-01 10:40:24 -07:00
Simon 1051242926 Closes #2576. Update link to security info on z.cash website. 2017-10-31 20:31:40 -07:00
Ariel Gabizon 4305a56221 boost::format -> tinyformat 2017-11-01 02:11:49 +13:00
Sean Bowe 394f41853b Integrate low memory prover. 2017-11-01 02:11:49 +13:00
Sean Bowe c8a7f74753 Add streaming prover. 2017-11-01 02:11:49 +13:00
Sean Bowe abf4af12df Refactor proof generation function. 2017-11-01 02:11:46 +13:00
Simon c2d3bafeaa Closes #2639. z_shieldcoinbase is now supported, no longer experimental.
This reverts commit 5023af7bd5.
2017-10-26 11:29:36 -07:00
Homu fb2f98e00b Auto merge of #2555 - jasondavies:fix-2554, r=str4d
Fix various thread assertion errors caused during shutdown.

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6719
- bitcoin/bitcoin#6990
- bitcoin/bitcoin#8421
  - Second commit only in this PR
- bitcoin/bitcoin#11006

I've cherry-picked the relevant commits, along with a note in each commit referring to the original Bitcoin commit ID (and the Zcash issue numbers where applicable).  I've tested each issue with/without these patches applied.

Closes #2214, #2334, and #2554.
2017-10-23 15:15:14 -07:00
João Barbosa d3c8109b41 Improve shutdown process
Zcash: cherry-picked from commit 793667af1c31835e0eefcdd283930bb89cfeda8f
2017-10-23 14:14:45 +01:00