Commit Graph

11805 Commits

Author SHA1 Message Date
Homu 52e2f2cec9 Auto merge of #3416 - charlieok:3415_fix_double_slash_error, r=bitcartel
Remove extra slash from lockfile path

Issue: https://github.com/zcash/zcash/issues/3415

After this change I can successfully run `fetch-params` in an msys2 environment.
2018-07-26 08:42:57 -07:00
Homu 3eefe12c79 Auto merge of #3353 - Eirik0:3062-cache-sapling-witnesses, r=bitcartel
Cache Sapling witnesses in the wallet

Closes #3062

I have not update the tests in test_wallet.cpp. Also, there are several other methods in the wallet that have to do with witnesses and note data which will need to be updated, but this PR focuses on IncrementNoteWitnesses and DecrementNoteWitnesses.
2018-07-25 23:40:11 -07:00
Simon 2f0b2a256d Clean up for rebase: rename mapNoteData to mapSproutNoteData. 2018-07-25 20:47:41 -07:00
Simon d9fe33b86f Only check for a valid Sapling anchor after Sapling activation.
Before Sapling activates, hashFinalSaplingRoot is 0x0, which is
not a valid anchor.  After Sapling activates, the empty root value
of 0x3e49... is a valid anchor.
2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley 3a5f66c880 Add parameter for version in GetValidReceive 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley e6b0a8b9ee Add getter and setter for sapling note data and update tests 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley 29523dc778 Remove extra indentation 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley 8e8279e728 Rename sprout specific methods 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley 45de2eda07 Increment sapling note witnesses 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley f86ee1c252 Pass sapling merkle tree when incrementing witnesses 2018-07-25 20:47:41 -07:00
Eirik Ogilvie-Wigley 4a0bc6047e Extract method for incrementing witness heights 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley f6d0d5ec43 Extract methods for incrementing witnesses 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley b538024806 Extract method for copying previous witnesses 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 403b9b4e4d Clear sapling witness cache 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 9d804cc619 Decrement sapling note witnesses 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley be43b7469d Add sapling note data and map 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 00ed92343d Add out point for sapling note data 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 3c868d2b03 Consolidate for loops 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 49695a97b5 Remove redundant curly braces 2018-07-25 20:47:40 -07:00
Eirik Ogilvie-Wigley 005f3ad1dd Rename note data to include sprout 2018-07-25 20:47:40 -07:00
Jack Grigg e691e21f40
TransactionBuilder with support for creating Sapling-only transactions 2018-07-25 11:35:10 +02:00
Charlie OKeefe eb20680502 Remove extra slash from lockfile path 2018-07-24 16:18:30 -06:00
Jack Grigg 70a7535ae8
Expose note position in IncrementalMerkleWitness 2018-07-24 14:54:07 +02:00
Jack Grigg 66a519f55d
Alter SaplingNote::nullifier() to take a SaplingFullViewingKey
This means the API will work if you only have a SaplingExtendedSpendingKey,
as will be the case with ZIP 32.
2018-07-24 14:54:01 +02:00
Homu a7a62b724b Auto merge of #3391 - bitcartel:3061_sapling_note_encryption, r=ebfull
Sapling note plaintext (encryption and decryption)

Add encryption and decryption of SaplingNotePlaintext and SaplingOutgoingPlaintext classes.

This is part of #3061 to add Sapling note functionality.
2018-07-24 03:27:28 -07:00
Homu 5d1007a5a3 Auto merge of #3408 - LarryRuane:2929-python-test-nondeterministic, r=bitcartel
Add call to sync_all() after (z_sendmany, wait)

Closes #2929. Add missing call to `self.sync_all()` after sending coins (and waiting for the transaction to complete). This matches what is done in other python test scripts.
2018-07-23 23:09:48 -07:00
Simon e739ca2ef2 Rename AttemptSaplingEncDecryptionUsingFullViewingKey and use function overloading. 2018-07-23 10:48:26 -07:00
Simon 7b913c3e5e Implement Sapling note decryption using full viewing key. 2018-07-20 16:31:48 -07:00
Larry Ruane cb3a815b29 Add call to sync_all() after (z_sendmany, wait) 2018-07-20 12:00:41 -06:00
Homu cd0484e023 Auto merge of #3350 - str4d:rpc-reorg, r=bitcartel
RPC code refactor

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#7307
- bitcoin/bitcoin#7348
- bitcoin/bitcoin#7766
2018-07-18 12:10:55 -07:00
Wladimir J. van der Laan a9496b08b6
rpc: Register calls where they are defined
Split out methods to every module, apart from 'help' and 'stop' which
are implemented in rpcserver.cpp itself.

- This makes it easier to add or remove RPC commands - no longer everything that includes
    rpcserver.h has to be rebuilt when there's a change there.
- Cleans up `rpc/server.h` by getting rid of the huge cluttered list of function definitions.
- Removes most of the bitcoin-specific code from rpcserver.cpp and .h.

Continues #7307 for the non-wallet.
2018-07-18 11:07:18 -06:00
Daniel Cousens 4b184205e3
rpc: update inline comments to refer to new file paths 2018-07-18 11:07:17 -06:00
Daniel Cousens 4519a766b6
move rpc* to rpc/ 2018-07-18 11:07:16 -06:00
Jonas Schnelli 34aca1b03c
[RPC, Wallet] Move RPC dispatch table registration to wallet/ code
Allow extending the rpc dispatch table by appending commands when server is not running.
2018-07-18 11:07:15 -06:00
Homu aad4b86e95 Auto merge of #3376 - LarryRuane:2728-help-message-experimental, r=bitcartel
add extra help how to enable experimental features

Closes #2728. When the user attempts to execute a disabled experimental RPC, print some nice text explaining how to enable the RPC (either command-line or adding lines to zcash.conf).
2018-07-18 07:45:46 -07:00
Homu cc9cddbf49 Auto merge of #3371 - kozyilmaz:clang, r=str4d
Add -Wl,-pie linker option for macOS and use it instead of -pie

fixes linker error (see below) due to "-pie" usage, replaced it with "-Wl,-pie" for macOS platform
```
clang: error: argument unused during compilation: '-pie' [-Werror,-Wunused-command-line-argument]
```
2018-07-17 21:41:36 -07:00
Homu efa7b914fb Auto merge of #3243 - pejvan:patch-1, r=bitcartel
Update README.md

Added default options to build zcash with as many parallel compilation units as there are cpu cores.
This makes compiling zcash multiple times faster.
2018-07-17 19:57:32 -07:00
Homu b9bd5ab42c Auto merge of #3354 - leto:absurd_fee_bug, r=bitcartel
Fix absurd fee bug reported in #3281, with tests

This was ported from the Hush `absurd_fee_bug` PR: https://github.com/MyHush/hush/pull/136

Tests executed with `./qa/pull-tester/rpc-tests.sh wallet` and pass on Ubuntu 16.04. Some tests were added for previously untested behavior as well.

Closes #3281.
2018-07-17 15:03:08 -07:00
Simon 687bd96cbd Minor update to address nits in review. 2018-07-17 14:26:38 -07:00
Homu 3835cbb57f Auto merge of #3263 - str4d:ibd-upstream-changes, r=bitcartel
InitialBlockDownload upstream changes

Cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#7208
- bitcoin/bitcoin#8007
- bitcoin/bitcoin#9053
  - Excluding second commit (requires bitcoin/bitcoin#8865)
- bitcoin/bitcoin#10388
2018-07-17 13:17:27 -07:00
Simon 0b6eeac330 Update and fix per review comments, the test for absurd fee. 2018-07-17 13:00:42 -07:00
Homu 13b41a6760 Auto merge of #3156 - Eirik0:2935-change-indicator, r=bitcartel
Add change indicator

This adds to the json returned when calling z_listreceivedbyaddress and z_listuspent an additional field entitiled 'change' which will be either true or false depending on whether or not the note was change from another transaction.
2018-07-17 11:41:03 -07:00
Pejvan 642f3681ca
Update README.md
updated to use parenthesis as suggested by @bitcartel
2018-07-17 13:08:54 +02:00
Larry Ruane 66dfcc1369 add extra help how to enable experimental features 2018-07-16 21:31:55 -06:00
Sean Bowe f23e783600 Decryption and tests of note/outgoing encryption. 2018-07-16 18:34:14 -06:00
Homu ea0bd9d3b8 Auto merge of #3345 - str4d:sapling-z_validateaddress, r=bitcartel
Add Sapling support to z_validateaddress

Part of #3217.
2018-07-16 15:04:54 -07:00
Eirik Ogilvie-Wigley 62d707d1fd Fix test broken by change indicator 2018-07-16 14:50:06 -06:00
Eirik Ogilvie-Wigley 0646f749f9 Add change indicator for notes 2018-07-16 14:49:29 -06:00
Homu b7d058cef3 Auto merge of #3334 - arielgabizon:add_groth_tests, r=bitcartel
Extend JoinSplit tests to Groth

As we now have both PGHR and Groth proofs for Sprout - make the joinsplit tests check the Groth proofs as well.
See https://github.com/zcash/zcash/issues/3266
2018-07-16 12:11:12 -07:00
Duke Leto 4b8c52c65c Improve error message 2018-07-14 05:16:28 +00:00