Commit Graph

11908 Commits

Author SHA1 Message Date
Homu 871e1726c6 Auto merge of #3340 - Eirik0:rename-merkle-typedefs, r=str4d
Rename merkle tree typedefs to include Sprout

This is to be consistent with the naming convention we have been using to distinguish Sprout/Sapling.
2018-08-01 20:48:17 -07:00
Homu 16117c0d5a Auto merge of #3439 - ebfull:fix-ecc, r=ebfull
Don't call ECC_Start/ECC_Stop outside the test harness.
2018-08-01 17:23:14 -07:00
Sean Bowe 80bd573dc2 Make changes to gtest ECC behavior suggested by @str4d. 2018-08-01 16:53:27 -06:00
Sean Bowe 262d21bcbb Don't call ECC_Start/ECC_Stop outside the test harness. 2018-08-01 16:45:12 -06:00
Homu 0361f789fe Auto merge of #3246 - str4d:checkpoint-304600, r=bitcartel
Add some more checkpoints, up to the 1.1.0 release
2018-08-01 13:55:34 -07:00
Homu 066cc9c6c7 Auto merge of #3429 - str4d:3217-sapling-address-creation, r=str4d
Add Sapling support to z_getnewaddress and z_listaddresses

Closes #3217.
2018-08-01 12:01:39 -07:00
Jack Grigg 40dc060cb0
test: Update rpc_wallet_z_importexport to account for Sapling changes 2018-08-01 19:59:57 +01:00
Jack Grigg 4aabeebc1f
test: Fix permissions of wallet_addresses 2018-08-01 19:56:01 +01:00
Eirik Ogilvie-Wigley 7d379f18c5 Rename test objects to include sprout or sapling 2018-08-01 10:52:58 -06:00
Eirik Ogilvie-Wigley 8ea8ef9850 Rename Witnesses to include sprout or sapling 2018-08-01 10:41:36 -06:00
Eirik Ogilvie-Wigley 4fc309f0f5 Rename Merkle Trees to include sprout or sapling 2018-08-01 10:31:09 -06:00
Jack Grigg 4fab49e173
test: Another assert in wallet_zkeys_tests.store_and_load_sapling_zkeys 2018-08-01 09:46:32 +01:00
Jack Grigg d75e69da5a
test: Deduplicate logic in wallet_addresses RPC test 2018-08-01 09:44:31 +01:00
Homu d84f14ec4a Auto merge of #3417 - str4d:sapling-tx-builder, r=ebfull
TransactionBuilder for Sapling and transparent transactions

This PR includes zcash/librustzcash#24, and will create a testnet chain split once merged into master (and once a Sapling transaction is mined).
2018-07-31 23:44:29 -07:00
Sean Bowe a310f6c5fa Relocate ECC_Start() to avoid test failures. 2018-08-01 00:42:02 -06:00
Jack Grigg fbd029d99d
Formatting 2018-07-31 23:28:42 +01:00
Homu ece49a49a5 Auto merge of #3430 - ebfull:check-valuebalance, r=ebfull
Ensure sum of valueBalance and all vpub_new's does not exceed MAX_MONEY

HT to @daira for noticing that we don't check this in `CheckTransactionWithoutProofVerification`. We actually do check it in `GetShieldedValueIn` (by throwing an exception) but these exceptions are not handled by `CheckTxInputs`, which may cause a remote DoS.

Not exploitable assuming our proving system is secure, but definitely worthy of a fix.
2018-07-31 07:34:44 -07:00
Sean Bowe 3d75e8b3e7 Move `extern params` to beginning of `test_checktransaction`. 2018-07-31 08:33:33 -06:00
Sean Bowe 291895fac7 Ensure sum of valueBalance and all vpub_new's does not exceed MAX_MONEY inside of CheckTransactionWithoutProofVerification. 2018-07-30 22:35:31 -06:00
Sean Bowe 04ed758e37 Fix bug in return value. 2018-07-30 22:03:40 -06:00
Sean Bowe b7b088c46b Update librustzcash and sapling-crypto. 2018-07-30 21:59:12 -06:00
Homu a11e6aaacc Auto merge of #3336 - arcalinea:expiryheight-createrawtransaction, r=bitcartel
Take expiryheight as param to createrawtransaction

Addresses #3333
2018-07-30 13:56:34 -07:00
Simon f01c11bd0f Add tests for expiryheight parameter of RPC createrawtransaction. 2018-07-30 10:24:10 -07:00
Jack Grigg 3f4ad5967b
Fix block hash for checkpoint at height 270000 2018-07-30 17:45:04 +01:00
Jack Grigg eec85c4388
Add Sapling support to z_getnewaddress and z_listaddresses 2018-07-30 16:24:20 +01:00
Jack Grigg 281b51e567
Raise the 90-character limit on Bech32 encodings
Regtest addresses are 91 characters, and ZIP 32's Bech32 encoding will
be significantly longer.
2018-07-30 16:01:22 +01:00
Jack Grigg 4715b31c76
Implement CKeyStore::GetSaplingPaymentAddresses() 2018-07-30 16:01:22 +01:00
Jack Grigg 54a868cf0a
Rename xsk to expsk
xsk will be used for ZIP 32 extended spending keys, so renaming here to
reduce confusion.
2018-07-30 14:26:29 +01:00
Jack Grigg a8dd4b0cf1
TransactionBuilder: Make fee configurable 2018-07-30 12:52:48 +01:00
Jack Grigg 45c0d1ec84
TransactionBuilder: Add change output to transaction 2018-07-30 12:46:18 +01:00
Homu 6b9c962725 Auto merge of #3410 - LarryRuane:3399-peer-ban, r=bitcartel
don't ban peers when loading pre-overwinter blocks

Addresses #3399. If we see an invalid transaction (from our peers who are up to date, post-overwinter) during initial block download, don't invoke DoS (logging messages, blocking these peers). Instead, simply ignore the transaction.
2018-07-30 03:46:37 -07:00
Jack Grigg 3466b4677e
TransactionBuilder: Add support for transparent inputs and outputs 2018-07-30 11:03:29 +01:00
Homu bb9658c88c Auto merge of #3402 - mdr0id:3401_fix_auto_senescence, r=bitcartel
Fix minor references to auto-senescence in code

Fix references
2018-07-30 01:36:32 -07:00
Homu 28a8d1d1c9 Auto merge of #3392 - arcalinea:sapling_z_importexport_keys, r=bitcartel
Add Sapling support to z_importkey, z_exportkey

Add Sapling support to `z_importkey` and `z_exportkey`
2018-07-29 21:04:14 -07:00
Simon 87d55e1322 Clean up help messages for RPC createrawtransaction.
Also return error if expiryheight used when Overwinter not active.
2018-07-29 20:57:33 -07:00
Jay Graber 76277ad8af Take expiryheight as param to createrawtransaction 2018-07-29 19:13:54 -07:00
Jay Graber 501de644ab Refactor into visitors and throw errors for invalid key or address. 2018-07-29 18:42:41 -07:00
Jay Graber 8dd1dbcfe4 Add Sapling to rpc_wallet_z_importexport test 2018-07-29 16:15:06 -07:00
Jay Graber dd4c8a3c70 Add Sapling support to z_importkey 2018-07-29 16:15:06 -07:00
Jay Graber 2afc8eb0ec Add Sapling support to z_exportkey 2018-07-29 16:15:06 -07:00
mdr0id e18f25e352 Fix minor references to auto-senescence in code
Update typo in rc-notes-1.0.13

Fix typo in rc-notes-1.0.13

Fix typo in rc-notes-1.0.13

Fix typo in rc-notes-1.1.0

Fix typo in rc-notes-1.1.0

Fix typo in make-release

Revert prior release note term to original auto-senescence
2018-07-29 06:32:08 -07:00
Jack Grigg 3fd0a269e1
test: Move ECC_Start() call into src/gtest/main.cpp 2018-07-27 17:18:49 +02:00
Jack Grigg 25bb05de23
Formatting 2018-07-27 12:17:14 +02:00
Jack Grigg e5dc5228ea
TransactionBuilder: Check that all anchors in a transaction are identical
This reduces the amount of information that is leaked by the choice of anchor.
In future we will make a protocol change to enforce that all inputs use the
same anchor.
2018-07-27 09:46:38 +02:00
Larry Ruane 772f87aaeb don't ban peers when loading pre-overwinter blocks 2018-07-26 12:29:04 -06:00
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