Simon
b11bb0e26a
Replace GetTxid() with GetHash()
2016-09-08 21:54:34 -07:00
Simon
6114cfe767
Improve check that user supplied memo field is too long.
2016-09-08 21:46:15 -07:00
Simon
e79ded8a47
Remove line of commented out code we don't need
2016-09-08 21:46:15 -07:00
Simon
dfc0080d06
Update comment with ticket issue number
2016-09-08 21:46:15 -07:00
Simon
1eb8789789
Add assert
2016-09-08 21:46:15 -07:00
Simon
ed42053a6c
Fix formatting
2016-09-08 21:46:15 -07:00
Simon
2ad0b7bfe2
Use zcash constants
2016-09-08 21:46:15 -07:00
Simon
b99d4f9b17
Improve error reporting when attempting to spend coinbase utxos.
2016-09-08 21:46:15 -07:00
Simon
9fb18458e8
Add assert for two mutually exclusive member variables.
2016-09-08 21:46:15 -07:00
Simon
cc59ac12a9
Add ticket number to issues raised in comment.
2016-09-08 21:46:15 -07:00
Simon
00edda4ac6
Remove unused varible.
2016-09-08 21:46:15 -07:00
Simon
e2574666f6
Add lock for member variables.
...
Clean up and clarify that id_ and creation_time_ are never to be mutated anywhere.
Fix incomplete copy/assignment constructors.
2016-09-08 21:46:15 -07:00
Simon
da5e7e5185
Formatting and updated test per review.
2016-09-08 21:46:15 -07:00
Simon
03812fefe4
Fix incorrect default value for argument of GetFilteredNotes.
2016-09-08 21:46:15 -07:00
Simon
a101ef7979
Update log statement to include fee.
2016-09-08 21:46:15 -07:00
Simon
9bdad43462
Fix formatting
2016-09-08 21:46:15 -07:00
Simon
e883ffef91
Add test for calling RPC z_getbalance, z_gettotalbalance, z_listreceivedbyaddress with invalid parameters.
2016-09-08 21:46:15 -07:00
Simon
12448b6457
Add extra RPC parameter checks for minconf<0 and zaddr not belonging to wallet.
2016-09-08 21:46:15 -07:00
Simon
5e363861e0
Replace unique_lock with lock_guard, where appropriate, for consistency
2016-09-08 21:46:15 -07:00
Simon
a50fd5fdb7
Add lock guard to getNumberOfWorkers()
2016-09-08 21:46:15 -07:00
Simon
e91048f28d
Fix formatting
2016-09-08 21:46:15 -07:00
Simon
69a4cb448a
Move lock guard to start of addOperation to protect isClosed() and isFinishing()
2016-09-08 21:46:15 -07:00
Simon
61ea2abaf5
Update formatting and documentation.
2016-09-08 21:46:15 -07:00
Simon
ca0ec80b4c
Add 'DEPRECATED' to help message of zcraw* commands
2016-09-08 21:46:15 -07:00
Simon
6c41028f7c
Add z_listreceivedbyaddress RPC call
2016-09-08 21:46:15 -07:00
Simon
1b141933e5
Rename GetUnspentNotes to GetFilteredNotes
...
Added parameter to ignore spent notes, which is true by default.
2016-09-08 21:46:15 -07:00
Simon
6d2d045c6b
Disable z_sendmany in safe mode
2016-09-08 21:46:15 -07:00
Simon
fc46069e81
Add more logging.
2016-09-08 21:46:14 -07:00
Simon
a9743bc8bf
Refactor async sendmany and getbalance calls to use GetUnspentNotes().
2016-09-08 21:46:14 -07:00
Simon
fe2f198277
Add test for GetUnspentNotes() in wallet.
2016-09-08 21:46:14 -07:00
Simon
a5ac2e25a0
Add GetUnspentNotes to wallet.
2016-09-08 21:46:14 -07:00
Simon
7b79275eba
Add tests to try and improve coverage of perform_joinsplit.
2016-09-08 21:46:14 -07:00
Simon
269310ce3c
Replace zcashParams_ with global.
2016-09-08 21:46:14 -07:00
Simon
5f8118c8a4
Revert "Reduce use of global pzcashParams with private member variable"
...
This reverts commit 4d71ba58d37eb4f93d68b5e437086ce14fb24825.
2016-09-08 21:46:14 -07:00
Simon
4b32c16ba5
Reduce use of global pzcashParams with private member variable
2016-09-08 21:46:14 -07:00
Simon
485145ea78
Disable proof generation when testmode is enabled in async SendMany operation.
2016-09-08 21:46:14 -07:00
Simon
4cff8a5c50
Fix typo in error message
2016-09-08 21:46:14 -07:00
Simon
a0a3334c4d
Add z_getbalance and z_gettotalbalance RPC calls to close #1201 .
2016-09-08 21:46:14 -07:00
Simon
cff6f0ac46
Add friend class for testing private members of AsyncRPCOperation_sendmany.
2016-09-08 21:46:14 -07:00
Simon
9bb6162626
Add extra checking of memo data in hexadecimal string format.
2016-09-08 21:46:14 -07:00
Simon
a5905772c8
Add logging under the category "asyncrpc".
2016-09-08 21:46:14 -07:00
Simon
39c7f954d0
Remove redundant call.
2016-09-08 21:46:14 -07:00
Simon
fc4b127ed3
Add tests for async queue and rpc commands: z_getoperationstatus, z_getoperationresult, z_listoperationids, z_sendmany
2016-09-08 21:46:14 -07:00
Simon
15c83ac6b4
Remove redundant check when getting spending key for a payment address.
2016-09-08 21:46:14 -07:00
Simon
f86f625dce
Update RPCServer to use AsyncRPCQueue's shared queue.
2016-09-08 21:46:14 -07:00
Simon
423a63d0a9
Add shared queue to AsynRPCQueue.
2016-09-08 21:46:14 -07:00
Simon
b922924d14
Add test for AsyncRPCQueue and AsyncRPCOperation.
2016-09-08 21:46:14 -07:00
Simon
017b3ede33
Clear the operation queue when closing it.
2016-09-08 21:46:14 -07:00
Simon
87f7c98795
Refactor to use wallet note tracking from commit a72379
2016-09-08 21:46:14 -07:00
Simon
97b6f365a1
Fix bug where wallet was not persisting witnesses to disk.
...
Author: str4d
2016-09-08 21:46:14 -07:00
Simon
9cd713439a
Added option to close a queue and wait for queued up operations to finish,
...
rather than just closing a queue and immediately cancelling all operations.
2016-09-08 21:46:14 -07:00
Simon
c93d8bdf9c
Fix bug where call to sign and send a transaction was in wrong scope.
2016-09-08 21:46:14 -07:00
Simon
3fd5a615ac
Coinbase utxos can only be spent when sending to a single zaddr.
...
Change from the transaction will be sent to the same zaddr.
2016-09-08 21:46:14 -07:00
Simon
008fccfa48
Disable option to allow multiple async rpc workers.
2016-09-08 21:46:13 -07:00
Simon
14af21e9f7
Add chaining of JoinSplits within a transaction.
2016-09-08 21:46:13 -07:00
Simon
c1eae2806c
Closes #1293 by adding z_getoperationresult and making z_getoperationstatus idempotent.
2016-09-08 21:46:13 -07:00
Simon
3b54bf5813
Refactoring and small improvements to async rpc operations.
...
Added AsyncRPCQueue::closeAndWait() so rpcserver can block on worker threads when shutting down.
AsyncRPCOperation is no longer copyable - copy constructor and assignment operators now private.
Refactoring: renamed methods, renamed member variables
Tidy up: comments, const, size_t, braces
2016-09-08 21:46:13 -07:00
Simon
34f0001ccc
Implement RPC call z_listoperationids and update z_getoperationstatus to take a list parameter.
2016-09-08 21:46:13 -07:00
Simon
861513a01f
Add public method to AsycnRPCQueue to retrieve all the known operation ids.
2016-09-08 21:46:13 -07:00
Simon
c72a427274
Add public method to get state as a human readable string from an AsyncRPCOperation.
2016-09-08 21:46:13 -07:00
Simon
15d345466d
Successful result of z_sendmany returns txid so it doesn't need to return raw hex.
2016-09-08 21:46:13 -07:00
Simon
b7d7b2ad9d
z_sendmany from a taddr now routes change to a new address instead of back to the sender's taddr,
2016-09-08 21:46:13 -07:00
Simon
4876de6c6d
Update find_unspent_notes() as mapNoteAddrs_t has been replaced by mapNoteData_t.
2016-09-08 21:46:13 -07:00
Simon
dafb81614b
Implement z_sendmany RPC call.
...
Simple implementation does not try to optimize coin or note selection.
Caller can send from a taddr or zaddr to multiple recipients.
Currently only one of the recipients can be a zaddr.
2016-09-08 21:46:13 -07:00
Simon
4eb1a96f9a
Add public field 'memo' to JSOutput to enable creation of notes with custom memos.
2016-09-08 21:46:13 -07:00
Simon
8d08172d0d
Add config option 'rpcasyncthreads' to specify number of async rpc workers. Default is 1.
2016-09-08 21:46:13 -07:00
Simon
2e6321a154
Add prefix to async operation id so it is easier to manage on cli.
2016-09-08 21:46:13 -07:00
Simon
fc72c078be
Add async RPC queue and operation classes.
...
Add z_getoperationstatus RPC command.
Add z_sendmany RPC command (dummy implementation, does not send actual
coins).
2016-09-08 21:46:13 -07:00
bitcartel
4ab24d3625
Update payment API documentation for beta 1
2016-09-07 16:53:24 -07:00
Simon
fa511e1084
Replace GetTxid() with GetHash() after rebase on latest.
2016-09-07 15:12:20 -07:00
Simon
33264f5b46
Remove GetTxid() from CTransaction and update test_txid
2016-09-07 15:12:09 -07:00
Simon
805344dcf4
Refactor: replace calls to GetTxid() with GetHash()
2016-09-07 15:12:09 -07:00
Simon
6c79b9a12a
Update txid gtest to verify #1144 has been removed: GetTxid() and
...
GetHash() return the same result.
2016-09-07 15:12:09 -07:00
Simon
a64f681f2c
Remove #1144 from input data of script_tests.
...
Revert script_invalid.json to commit df1609f .
Revert script_valid.json to commit 1c54757 .
2016-09-07 15:12:09 -07:00
Simon
5316bd3560
Remove #1144 from bloom_tests by reverting to commit 5012190.
2016-09-07 15:12:09 -07:00
Simon
3bdb071cc3
Remove #1144 from transaction.cpp by reverting back to commit 942bc46.
2016-09-07 15:12:09 -07:00
Simon
82f3c490b1
Remove #1144 from transaction.h.
...
Reverts to 4bc00dc with commits f0dab51 (snark) and f5e5707 (joinsplit) retained.
GetTxid() is now an alias for GetHash().
2016-09-07 15:12:09 -07:00
bitcartel
8962f2a902
Update security-warnings.md about REST interface
2016-09-01 11:12:48 -07:00
bitcartel
6555546edf
Update payment-api.md
2016-08-30 19:57:16 -07:00
Simon
5d50130bc9
Closes #1315 . RPC getblocksubsidy height parameter is now optional and
...
a test has been added to verify parameter input and results.
2016-08-30 15:11:07 -07:00
Simon
1f882153b6
Throw a domain error as json_spirit is a third-party library.
2016-08-27 09:14:25 -07:00
Simon
df3af446e7
Fixes #1122 where json_spirit could stack overflow because there
...
was no maximum limit set on the number of nested compound elements.
2016-08-26 23:35:45 -07:00
Simon
d1f16ffe85
Fix formatting.
2016-08-24 21:47:46 -07:00
Simon
3bff998b38
Rename methods to avoid using prefix of _ underscore which is reserved.
...
Added logging of explicit exception rather than a catch all.
Removed redundant spending key check.
Updated user facing help message.
2016-08-24 11:55:26 -07:00
Simon
4b2e557181
Fix comments.
2016-08-24 11:19:34 -07:00
Simon
309b0ecd80
Add "zkey" to list of key types (used by the wallet to decide
...
whether or not it can be recovered if it detects bad records).
2016-08-24 11:19:34 -07:00
Simon
79d769a382
Remove one line of dead code.
2016-08-24 11:19:34 -07:00
Simon
2e0cc87acf
Fix comment.
2016-08-24 11:19:34 -07:00
Simon
badb9a9c2f
Add test coverage for RPC call z_getnewaddress.
2016-08-24 11:19:34 -07:00
Simon
60f762a549
Added wallet rpc tests to cover:
...
z_importwallet, z_exportwallet
z_importkey, z_exportkey
z_listaddresses
2016-08-24 11:19:34 -07:00
Simon
0feffd1424
Don't mark wallet as dirty if key already exists.
...
Fix incorrect method name used in error message.
2016-08-24 11:19:33 -07:00
Simon
4cea36bef3
Add gtest to cover new methods in:
...
CWallet
- GenerateNewZKey()
- AddZKey()
- LoadZKey()
- LoadZKeyMetadata()
CWalletDB
- WriteZKey()
2016-08-24 11:19:33 -07:00
Simon
e709997ff2
Implemented z_listaddresses to return all the zaddr in the wallet.
2016-08-24 11:19:33 -07:00
Simon
92444edc00
Add z_importwallet and z_exportwallet to handle keys for both
...
taddr and zaddr. Restore behaviour of dumpwallet and importwallet
to only handle taddr.
2016-08-24 11:19:33 -07:00
Simon
c1c4594371
Implemented RPC calls z_importkey, z_exportkey, z_getnewaddress.
...
Modified RPC calls dumpwallet and importwallet to include spending keys.
2016-08-24 11:19:33 -07:00
bitcartel
5f3f741e47
Add note about zkey and encrypted wallets in z9 alpha.
2016-08-23 15:33:05 -07:00
Simon
73f9e32b86
Closes #701 by adding documentation about the Payment RPC interface.
2016-08-23 00:37:43 -07:00
Simon
75c2f26887
Update variable.
2016-08-08 00:51:27 -07:00
Simon
822b84b616
Fixes #1193 so that during verification benchmarking it does not
...
unncessarily create thousands of CTransaction objects.
2016-08-07 23:57:39 -07:00
Simon
a8270035c0
Release process for z8. Issue #1140 .
2016-08-06 15:37:24 -07:00