Commit Graph

1371 Commits

Author SHA1 Message Date
stoffu
3d623a86d1
wallet: prevent the same wallet file from being opened by multiple processes 2018-06-28 09:41:43 +09:00
moneromooo-monero
9a39b7dd7f
wallet2: fix build for windows (std::max again) 2018-06-28 00:47:48 +01:00
moneromooo-monero
9b38551c3c
wallet_rpc_server: fix build - forgot to build rpc version 2018-06-27 23:34:02 +01:00
luigi1111
2329d2f4c8
Merge pull request #3907
dcbc17e wallet: include a suggested number of confirmations based on amount (moneromooo-monero)
2018-06-27 16:32:33 -05:00
luigi1111
8a27caeb22
Merge pull request #3998
8db23df wallet: on first refresh, start off with a quantized height (moneromooo-monero)
2018-06-27 16:30:38 -05:00
luigi1111
9453573581
Merge pull request #3995
0a5292c wallet2: use decoded amount when reporting repeated output key (stoffu)
2018-06-27 16:28:57 -05:00
luigi1111
c28a2b0d7d
Merge pull request #3992
25c15dc wallet2: use correct fee for split txes (stoffu)
2018-06-27 16:26:23 -05:00
luigi1111
5eb2e01216
Merge pull request #3991
798dfcf wallet: allow unspendable unmixable outputs to be discarded (stoffu)
2018-06-27 16:25:03 -05:00
luigi1111
3ad4ecd4ff
Merge pull request #3982
08b85a8 cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X (stoffu)
0cf80ba net_node: resolve host for node addresses given via command line flags (stoffu)
2018-06-27 15:38:23 -05:00
moneromooo-monero
dcbc17e97e
wallet: include a suggested number of confirmations based on amount
This is based on how much an attacking miner stands to lose in block
rewardy by mining a private chain which double spends a payment.
This is not foolproof, since mining is based on luck, and breaks
down as the attacking miner nears 50% of the network hash rate,
and the estimation is based on a constant block reward.
2018-06-27 21:38:21 +01:00
luigi1111
a844844cda
Merge pull request #3716
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27 15:33:01 -05:00
moneromooo-monero
0e4c7d0fae
wallet2: cache ringdb key while refreshing
Speeds up syncing with a lot of outgoing outputs as key generation
runs Cryptonight.
2018-06-26 22:15:38 +01:00
moneromooo-monero
2771a18e85
threadpool: allow leaf functions to run concurrently
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
2018-06-26 22:15:22 +01:00
moneromooo-monero
2704624eae
wallet2: remove unneeded divisions 2018-06-26 22:15:20 +01:00
moneromooo-monero
5d3e70229e
wallet2: remove old blockchain size cache hack 2018-06-26 22:15:18 +01:00
moneromooo-monero
dcfd299239
wallet2: speedup refresh
key derivation and checking for incoming outputs are threaded
in batch before adding blocks to the local blockchain. Other
minor bits and bobs are also cached.
2018-06-26 22:15:16 +01:00
moneromooo-monero
f025ae9760
wallet2: avoid re-parsing blocks when refreshing in a loop 2018-06-26 22:15:12 +01:00
moneromooo-monero
41be339655
wallet2: avoid duplicate parsing of tx extra 2018-06-26 22:15:10 +01:00
moneromooo-monero
f7f1917ed4
wallet2: remove useless device locking 2018-06-26 22:14:35 +01:00
moneromooo-monero
ba8331ce41
wallet2: parse blocks in the RPC thread, not the processing thread
Processing typically is the bottleneck
2018-06-26 22:14:33 +01:00
moneromooo-monero
31a895e876
wallet2: simplify/speedup process_blocks 2018-06-26 22:14:31 +01:00
moneromooo-monero
57ea90285c
wallet: don't process miner tx if we're refreshing with no-coinbase 2018-06-26 22:14:26 +01:00
moneromooo-monero
ed2c81ed95
replace std::list with std::vector on some hot paths
also use reserve where appropriate
2018-06-26 22:14:21 +01:00
moneromooo-monero
6795bd0d4e
rpc: add option to skip coinbase info in get_blocks.bin 2018-06-26 22:14:16 +01:00
moneromooo-monero
a2b557fe5c
wallet2: use std::move on containers where appropriate 2018-06-26 22:14:14 +01:00
luigi1111
506be80601
Merge pull request #3955
d7a6b72 wallet2: fix bulletproof cold signing (moneromooo-monero)
2018-06-25 15:09:48 -05:00
luigi1111
26562e9f3c
Merge pull request #3941
bf26920 wallet2: fix get_approximate_blockchain_height for stagenet (stoffu)
2018-06-25 14:54:54 -05:00
moneromooo-monero
df9d50a8a4
wallet2: fix read buffer overflow in import_key_images 2018-06-23 09:22:20 +01:00
moneromooo-monero
3e46db97e5
rpc: add a non binary get_transaction_pool_hashes RPC 2018-06-21 09:02:42 +01:00
stoffu
46e90b7780
Wallet API: add support for wallet creation from hardware device 2018-06-21 12:36:27 +09:00
stoffu
8fc0cdb96f
wallet2: lower default for subaddress lookahead when restoring with hardware 2018-06-21 12:35:23 +09:00
stoffu
66df13a58b
wallet-rpc.getaddress: throw if index is out of bound 2018-06-21 10:49:03 +09:00
luigi1111
9a3712541e
Merge pull request #3939
62c8c07 wallet: do not log by default if we're not asked to log to console (moneromooo-monero)
2018-06-20 14:52:55 -05:00
luigi1111
51cdd76bbd
Merge pull request #3897
63d0ab0 mlog: --max-log-files to set the max number of rotated log files (stoffu)
2018-06-20 14:19:30 -05:00
moneromooo-monero
2a19697bd4
wallet2: fix double header in unsigned transfer file 2018-06-19 22:30:02 +01:00
luigi1111
896512b2b6
Merge pull request #3878
5a412b7 disable file size sanity check when loading the wallet cache (moneromooo-monero)
2018-06-19 12:57:59 -05:00
luigi1111
d841339b09
Merge pull request #3829
4764929 use deterministic viewkey if not supplied (cryptochangements34)
2018-06-19 12:43:10 -05:00
luigi1111
9226acca4b
Merge pull request #3804
89e51ec simple-wallet-cli: Add warnings about inaccurate balances to to watch-only wallet (jcktm)
2018-06-16 14:15:52 -05:00
luigi1111
4e7897e57c
Merge pull request #3780
9c2a7b4 wallet-rpc: watch-only and cold wallet features added (ph4r05)
2018-06-16 14:12:57 -05:00
luigi1111
e3012444fb
Merge pull request #3762
eb9f3a3 check_spend_proof (itssteven)
2018-06-16 14:10:11 -05:00
luigi1111
7af0b7fffc
Merge pull request #3735
4812c06 add .load() to make Boost 1.67 happy with its new is_integral check (Teutone)
2018-06-16 14:07:25 -05:00
Howard Chu
b85acb4cb8
Fix RPC crashes that didn't check for an open wallet 2018-06-15 20:18:41 +01:00
moneromooo-monero
bc443494f3
wallet2: fix out of sync account tag cache
This would cause crashes when trying to tag an account that was
just created
2018-06-15 20:18:12 +01:00
moneromooo-monero
8db23df581
wallet: on first refresh, start off with a quantized height
for privacy reasons, so an untrusted node can't easily track
wallets from IP address to IP address, etc. The granularity
is 1024 blocks, which is about a day and a half.
2018-06-13 22:44:27 +01:00
stoffu
63d0ab09b5
mlog: --max-log-files to set the max number of rotated log files 2018-06-13 12:44:27 +09:00
stoffu
798dfcfe79
wallet: allow unspendable unmixable outputs to be discarded 2018-06-13 11:56:40 +09:00
stoffu
0a5292c339
wallet2: use decoded amount when reporting repeated output key 2018-06-13 01:06:44 +09:00
stoffu
25c15dca5c
wallet2: use correct fee for split txes 2018-06-12 12:06:51 +09:00
stoffu
08b85a8e00
cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X 2018-06-11 20:17:02 +09:00
luigi1111
6884db7b31
Merge pull request #3599
8787fd8 WalletApi: publicMultisigSignerKey method (naughtyfox)
2018-06-08 14:45:46 -05:00
luigi1111
00635bd68b
Merge pull request #3598
b21bc00 Wallet: added methods to sign and verify arbitrary message with multisig public signer's key (libwallet & wallet api) (naughtyfox)
2018-06-08 14:40:06 -05:00
luigi1111
1af890287b
Merge pull request #3890
f80b157 wallet2: don't ask for pruned txes yet, we still parse the entire tx (moneromooo-monero)
2018-06-07 12:12:28 -05:00
moneromooo-monero
d7a6b72c15
wallet2: fix bulletproof cold signing
Cold signing was always using Borromean range proofs, causing
a larger tx, and an incorrect fee
2018-06-07 12:29:30 +01:00
stoffu
bf26920f27
wallet2: fix get_approximate_blockchain_height for stagenet 2018-06-06 20:33:01 +09:00
moneromooo-monero
62c8c07c47
wallet: do not log by default if we're not asked to log to console
This means monero-wallet-rpc still does, but the user level program
does not.
2018-06-06 10:15:13 +01:00
cryptochangements34
4764929ecb use deterministic viewkey if not supplied 2018-06-05 19:32:03 -04:00
Dusan Klinec
9c2a7b4638 wallet-rpc: watch-only and cold wallet features added
- unsigned_txset, signed_txset in transfer / submit_transfer / sign_transfer
- export_outputs, import_outputs

Squashed commits:
[f4d9f3d4] wallet-rpc: do_not_relay removed from submit_transfer
[5b16a86f] wallet-rpc: review-fix - method signature changes, renaming
[b7fbb10a] wallet-rpc: naming fixes (unsigned vs signed), consts renamed
[8c7d2727] wallet-rpc: sign_transfer added
[481d024a] wallet2: sign_tx splitted to work with strings and structs, more granular
[2a474db9] wallet-rpc: wallet2::load_unsigned_tx split to load from str, file
[b1e3a018] wallet-rpc: review fix, load_tx_from_str variable rename
[1f6373be] wallet-rpc: review fix: save_tx_to_{str,file}
[2a08eafc] wallet-rpc: review comments fixes
- redundant this removed from wallet2.cpp
- load_tx_from_str, load_tx_from_file
[43498052] wallet-rpc: submit_transfer added
[9c45d1ad] wallet-rpc: watch_only check, return unsigned_txset
[62831396] wallet2: added string variants to load_tx, save_tx

- analogously to save_multisig_tx
- required for monero-wallet-rpc to support watch-only wallet
2018-06-03 13:21:00 +02:00
luigi1111
503d2693fd
Merge pull request #3640
f36132a wallet cli/rpc: terminate execution with code 0 when --help or --version is given (stoffu)
2018-05-31 14:44:54 -05:00
luigi1111
3ee6a1b706
Merge pull request #3635
c1bda09 wallet_rpc_server: add a get_version RPC (moneromooo-monero)
2018-05-31 14:43:18 -05:00
luigi1111
b6eb7484d1
Merge pull request #3592
90a16b1 crypto: fix initialization order issue with random mutex (moneromooo-monero)
6a61f52 unit_tests: add ringdb unit tests (moneromooo-monero)
2018-05-31 14:41:17 -05:00
luigi1111
3a373c3d3a
Merge pull request #3489
47fdb74 WalletApi: getMultisigInfo entry for gui wallets... (naughtyfox)
47fdb74 Refactored: work with wallet api statuses to make setting and getting operations atomic along with error strings (naughtyfox)
2018-05-31 14:34:34 -05:00
moneromooo-monero
f80b1571c6
wallet2: don't ask for pruned txes yet, we still parse the entire tx 2018-05-31 16:46:58 +01:00
stoffu
0da5d37bf3
wallet: fix shared ring db path 2018-05-31 08:16:45 +09:00
luigi1111
5b189ce2a8
Merge pull request #3405
80d2f80 wallet2: Update function parameter documentation (leonklingele)
2018-05-29 12:52:43 -05:00
moneromooo-monero
5a412b7a3f
disable file size sanity check when loading the wallet cache 2018-05-28 14:58:22 +01:00
Riccardo Spagni
709658d166
Merge pull request #3832
cb9c7972 Fix output shuffling for multisig (stoffu)
2018-05-21 20:57:52 +02:00
Riccardo Spagni
d6cefbd1b8
Merge pull request #3745
b13bddc3 Wallet API: allow log path to be non-default & console output to be configurable (stoffu)
2018-05-21 20:56:20 +02:00
stoffu
cb9c7972b6
Fix output shuffling for multisig 2018-05-20 09:38:41 +09:00
jcktm
89e51ecd38 simple-wallet-cli: Add warnings about inaccurate balances to to watch-only wallet 2018-05-15 15:28:42 +10:00
moneromooo-monero
a58d9738c9
wallet2: consider 6 outputs or less to be unmixable from v7 2018-05-10 21:19:33 +01:00
itssteven
eb9f3a3294
check_spend_proof
My intention is to mitigate #3761 by returning "bad signature", rather than throwing an error, as the error is triggered inappropriately in the case of checking a different txid than the one used to create the signature, which causes issues for monerophp: https://github.com/monero-integrations/monerophp/issues/72 & my temp fix: https://github.com/monero-integrations/monerophp/pull/74
2018-05-06 17:42:27 +01:00
Teutone
4812c062c5 add .load() to make Boost 1.67 happy with its new is_integral check 2018-05-05 21:44:28 +02:00
stoffu
b13bddc3c9
Wallet API: allow log path to be non-default & console output to be configurable 2018-05-04 10:21:25 +09:00
Riccardo Spagni
93e76e14a2
Merge pull request #3685
ffeeefde speedup get_output_histogram for all amounts when min_count > 0 (moneromooo-monero)
2dae0f20 wallet2: add missing parameters to get_output_histogram (moneromooo-monero)
2018-04-28 16:56:22 +02:00
Riccardo Spagni
35299644b2
Merge pull request #3650
5bd7f760 import_multisig_info: fix sanity check crash in detach_blockchain (Mikhail Mitkevichl)
2018-04-28 16:54:37 +02:00
naughtyfox
b21bc00704 Wallet: added methods to sign and verify arbitrary message with multisig public signer's key (libwallet & wallet api) 2018-04-25 17:55:54 +03:00
moneromooo-monero
2dae0f203a
wallet2: add missing parameters to get_output_histogram 2018-04-23 10:54:25 +01:00
stoffu
f36132a837
wallet cli/rpc: terminate execution with code 0 when --help or --version is given 2018-04-22 11:48:44 +09:00
Mikhail Mitkevichl
5bd7f760e9 import_multisig_info: fix sanity check crash in detach_blockchain 2018-04-21 23:25:01 +03:00
Riccardo Spagni
a3a617f35f
Merge pull request #3576
f82c10dc WalletManagerImpl: reuse existing connection to daemon instead of reconnectivng every time (stoffu)
2018-04-21 21:58:10 +02:00
Riccardo Spagni
03ff3be10e
Merge pull request #3672
875c1cab wallet2: increase rpc timeout for get_output_distribution (moneromooo-monero)
70f23217 add top height to get_output_distribution, and cache it for rct (moneromooo-monero)
8c7363fb rpc: add missing perf timer for get_output_distribution (moneromooo-monero)
2018-04-21 21:54:08 +02:00
moneromooo-monero
875c1cabb9
wallet2: increase rpc timeout for get_output_distribution 2018-04-19 16:06:26 +01:00
moneromooo-monero
70f2321763
add top height to get_output_distribution, and cache it for rct
This should cache the vast majority of calls for long running wallets
2018-04-19 16:06:22 +01:00
moneromooo-monero
c1bda097c1
wallet_rpc_server: add a get_version RPC 2018-04-14 13:34:05 +01:00
naughtyfox
8787fd899b WalletApi: publicMultisigSignerKey method 2018-04-13 13:15:20 +03:00
stoffu
b5d6c723e9
wallet2: store subaddress lookahead settings 2018-04-12 22:23:53 +09:00
cslashm
94b899db26 Use 'boost' mutex instead of 'std' mutex 2018-04-12 13:58:57 +02:00
cslashm
2c274e05fe Fix sub-address tx scan.
When additional keys was needed, the TX scan failed because the
derivation data was always recomputed with the main tx_key and not
the corresponding additional one.

Moreover this patch avoid perf decreasing when not using HW device.
2018-04-12 13:58:57 +02:00
Riccardo Spagni
5e08fd89ea
Merge pull request #3549
73951cbd wallet2: request transactions in slices when scanning for known rings (moneromooo-monero)
25fe67e4 rpc: allow getting pruned blocks from gettransactions (moneromooo-monero)
2018-04-12 13:49:33 +02:00
Riccardo Spagni
14c870ee5f
Merge pull request #3615
24acb66e wallet2: fix misc issues when the ringdb can't be initialized (moneromooo-monero)
2018-04-12 13:47:54 +02:00
Riccardo Spagni
3b8704b0fa
Merge pull request #3555
0b26c4d5 wallet2: move segregation height to v7 (moneromooo-monero)
2018-04-12 13:47:39 +02:00
Riccardo Spagni
5d8439e310
Merge pull request #3534
eecfb57d wallet: warn if not using the default ring size (moneromooo-monero)
2018-04-12 13:47:20 +02:00
Riccardo Spagni
8703f1d80e
Merge pull request #3516
1e0958c0 wallet: fix default mixin (4 -> 6) (sneurlax)
2018-04-12 13:46:18 +02:00
moneromooo-monero
24acb66eac
wallet2: fix misc issues when the ringdb can't be initialized 2018-04-12 11:07:07 +01:00
Riccardo Spagni
5053f8f40b
Merge pull request #3502
11c933e1 fix lambda compile error on openbsd (moneromooo-monero)
2018-04-12 11:14:43 +02:00
Riccardo Spagni
96b2fee721
Merge pull request #3536
c77d2bfa Add the possibility to export private view key for fast scan. (cslashm)
100b7bc1 Change mutex lock model to avoid dead lock and ensure locks are always released. (cslashm)
641dfc99 Automatic height setup when creating/restoring hw device. (cslashm)
2018-04-12 11:12:33 +02:00
Riccardo Spagni
1b4dc46129
Merge pull request #3473
eaa8bfe7 wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly The previous expression (stoffu)
0a619f78 wallet2: enable the mitigation only after the fork height (stoffu)
2018-04-12 11:05:31 +02:00
Riccardo Spagni
ebb55f797b
Merge pull request #3468
0098ed33 wallet2: fix for loading settings of key reuse mitigation (stoffu)
2018-04-12 11:00:47 +02:00
moneromooo-monero
6a61f520e2
unit_tests: add ringdb unit tests 2018-04-11 11:43:39 +01:00
moneromooo-monero
73951cbd39
wallet2: request transactions in slices when scanning for known rings
This avoid massive memory consumption for huge wallets
2018-04-07 08:31:46 +01:00