Commit Graph

794 Commits

Author SHA1 Message Date
Howard Chu 110b683152
Resolve #92 add ability to create wallets thru RPC
Reviewed and squashed. Open/Create is only allowed if no walletfile
was specified at startup.
2017-04-11 01:22:44 +01:00
Riccardo Spagni 4be94be168
Merge pull request #1951
0a7885bf Wallet API: fix Cold signing split tx (Jaquee)
2017-04-11 00:26:47 +02:00
Riccardo Spagni e9ca165b1a
Merge pull request #1950
f5bd3465 IOS CMAKE build settings (Jaquee)
d8a88d05 add IOS CMAKE toolchain (Jaquee)
2017-04-11 00:26:15 +02:00
moneromooo-monero 89d707566a
wallet2: fix spurious output splitting when not merging destinations 2017-04-08 11:13:28 +01:00
moneromooo-monero 10e137be3a
wallet2: mention escaping/quoting --password in help string 2017-04-06 21:24:55 +01:00
Jaquee f5bd346573
IOS CMAKE build settings 2017-04-03 18:38:50 +02:00
Jaquee 0a7885bf19
Wallet API: fix Cold signing split tx 2017-04-02 14:19:21 +02:00
moneromooo-monero 0ee018b407
wallet2: do not go over the target tx size if many destinations
If using a large input and many destinations, the code would
generate as many outputs as it could using that input, even if
it would bring the resulting tx above the max tx size.
2017-04-02 11:13:15 +01:00
moneromooo-monero a50c4a4fad
wallet: option to merge destinations
With the change from the original transfer method to the new
algorithm, payments to the same destination were merged. It
seemed like a good idea, optimizing space. However, it is a
useful tool for people who want to split large outputs into
several smaller ones (ie, service providers making frequent
payments, and who do not like a large chunk of their balance
being locked for 10 blocks after each payment).

Default to off, which is a change from the previous behavior.
2017-03-25 11:44:04 +00:00
moneromooo-monero 0ad87db01f
wallet: try to save large outputs when using an unneeded second input
When a single input is enough to satisfy a transfer, the code would
previously try to add a second input, to match the "canonical" makeup
of a transaction with two inputs and two outputs. This would cause
wallets to slowly merge outputs till all the monero ends up in a
single output, which causes trouble when making two transactions
one after the other, since change is locked for 10 blocks, and an
increasing portion of the remaining balance would end up locked on
each transaction.

There are two new settings (min-output-count and min-output-value)
which can control when to stop adding such unneeded second outputs.
The idea is that small "dust" outputs will still get added, but
larger ones will not.

Enable with, eg:

set min-output-count 10
set min-output-value 30

to avoid using an unneeded second output of 30 monero or more, if
there would be less than 10 such outputs left.

This does not invalidate any other reason why such outputs would
be used (ie, when they're really needed to satisfy a transfer, or
when randomly picked in the normal course of selection). This may
be improved in the future.
2017-03-24 21:04:08 +00:00
Riccardo Spagni 92c2d79d10
Merge pull request #1915
a8646b09 Wallet API: add hard fork info functions (Jaquee)
2017-03-24 14:34:55 +02:00
Riccardo Spagni f543377789
Merge pull request #1894
8bbcbcfb wallet rpc: enable solo mining (stoffu)
2017-03-24 14:33:47 +02:00
Jaquee a8646b0957
Wallet API: add hard fork info functions 2017-03-24 09:59:26 +01:00
moneromooo-monero 558cfc31ca
core, wallet: faster tx pool scanning
Includes a new RPC to get tx pool hashes fast.
2017-03-23 09:25:22 +00:00
Riccardo Spagni 70e71a1845
Merge pull request #1904
995969b1 wallet: fix set_log not handling 0,xxx style settings (moneromooo-monero)
2017-03-21 14:09:42 +02:00
Riccardo Spagni 7769a6e757
Merge pull request #1903
350e99ae wallet2: cache which pool txes were scanned already (moneromooo-monero)
2017-03-21 14:09:19 +02:00
Riccardo Spagni 9d157b519d
Merge pull request #1899
c1e9ccc7 wallet2: speed up transactions using remote nodes (moneromooo-monero)
2017-03-21 14:08:36 +02:00
moneromooo-monero 995969b190
wallet: fix set_log not handling 0,xxx style settings 2017-03-21 11:17:05 +00:00
moneromooo-monero 350e99ae57
wallet2: cache which pool txes were scanned already
This massively speeds up the wallet updating the pool on mainnet,
where the tx backlog is more than 500 txes.
2017-03-21 10:30:25 +00:00
moneromooo-monero 5b7c6ced80
wallet2: start using new fee priorities at v5, not 14 days laer
Waiting would mean the fee used is 1x base, but the base will
have suddenly dropped
2017-03-20 18:34:56 +00:00
moneromooo-monero c1e9ccc794
wallet2: speed up transactions using remote nodes
Asking for a full histogram from a remote node (since it's
untrusted) is pretty slow, and spams the remote node, so
we replace it by only adding a second input if we have rct
ones, which are for all intents and purposes always mixable.
2017-03-20 08:44:28 +00:00
stoffu 8bbcbcfb0d
wallet rpc: enable solo mining 2017-03-20 09:47:16 +09:00
Riccardo Spagni 45fa27b56a
Merge pull request #1892
df810a82 wallet-rpc bugfix: get_transfer_by_txid previously checking against payment id (kenshi84)
2017-03-19 22:58:55 +02:00
kenshi84 df810a8250
wallet-rpc bugfix: get_transfer_by_txid previously checking against payment id 2017-03-19 17:45:39 +09:00
moneromooo-monero 24ae71404f
wallet: increase node_rpc_proxy timeout to match wallet2 2017-03-18 23:06:06 +00:00
Riccardo Spagni a6f1959d1c
Merge pull request #1884
e9175cec wallet_rpc_server: make a few RPCs unavailable in restricted mode (moneromooo-monero)
2017-03-18 20:30:50 +02:00
Riccardo Spagni f33a696ec7
Merge pull request #1883
d0238313 use const references in catch blocks (moneromooo-monero)
2017-03-18 20:30:19 +02:00
Riccardo Spagni 9aac64c238
Merge pull request #1882
3fa59755 wallet2: call is_key_image_spent in blocks in rescan_spent (moneromooo-monero)
9d134e86 wallet_rpc_server: add a rescan_spent RPC (moneromooo-monero)
2017-03-18 20:29:22 +02:00
moneromooo-monero e9175cec07
wallet_rpc_server: make a few RPCs unavailable in restricted mode
Address book modification, setting tx nodes, importing key images
2017-03-18 13:01:53 +00:00
moneromooo-monero d023831327
use const references in catch blocks 2017-03-18 12:56:07 +00:00
moneromooo-monero 3fa5975520
wallet2: call is_key_image_spent in blocks in rescan_spent
This is a potentially long lasting daemon RPC call
2017-03-18 12:47:07 +00:00
moneromooo-monero 9d134e8647
wallet_rpc_server: add a rescan_spent RPC 2017-03-18 12:04:17 +00:00
stoffu 250c4cb3e0
wallet-rpc: enable openalias 2017-03-17 10:42:10 +09:00
Riccardo Spagni c642d3224c
Merge pull request #1869
3396a9f2 Add intervening v5 fork for increased min block size (moneromooo-monero)
2017-03-15 18:23:51 +01:00
moneromooo-monero 3396a9f2af
Add intervening v5 fork for increased min block size
Minimum mixin 4 and enforced ringct is moved from v5 to v6.
v5 is now used for an increased minimum block size (from 60000
to 300000) to cater for larger typical/minimum transaction size.

The fee algorithm is also changed to decrease the base per kB
fee, and add a cheap tier for those transactions which we do
not care if they get delayed (or even included in a block).
2017-03-15 08:32:51 +00:00
Arne Brutschy badec326d8 Adds a config file option to the wallet 2017-03-12 21:45:59 +01:00
Riccardo Spagni 5bcb25f3f8
Merge pull request #1846
4b48565c wallet: add password command (moneromooo-monero)
2017-03-06 15:14:59 +00:00
Riccardo Spagni 8cb58dbb69
Merge pull request #1842
223fe5bb wallet: fix get_tranfers with multiple incoming txes with same pid (moneromooo-monero)
2017-03-05 17:52:42 +02:00
moneromooo-monero 4b48565c9e
wallet: add password command
Also tweak wallet2 password code to verify password without
saying it's a new wallet, because it's assuming things.
2017-03-05 14:53:46 +00:00
moneromooo-monero 223fe5bbe2
wallet: fix get_tranfers with multiple incoming txes with same pid 2017-03-04 21:47:53 +00:00
moneromooo-monero c7dd0b1535
Revert "wallet: fix insertion of pool transactions"
This reverts commit d47dac9a88.

Callers actually expect the key to be payment id, so this
needs a lot more changes (like storing payment ids in the
structure, and possibly also to other existing structures
which do the same thing).
2017-03-04 12:41:19 +00:00
Jaquee 9ae33b51fb
wallet api: fix parameters in wallet2callbackImpl 2017-03-03 15:49:12 +01:00
Jaquee 1cf2f5a5c2 use txid in wallet2::process_new_transaction() 2017-03-03 15:48:32 +01:00
Riccardo Spagni e24cd86c18
Merge pull request #1827
db1c7d80 wallet api: add missing mining options (Jaquee)
2017-03-03 14:31:28 +02:00
Riccardo Spagni d35d626181
Merge pull request #1826
2c468dd4 allow user I/O in millinero, micronero, nanonero, piconero (moneromooo-monero)
2017-03-03 14:31:04 +02:00
Riccardo Spagni 2f9ecd4fba
Merge pull request #1823
d47dac9a wallet: fix insertion of pool transactions (moneromooo-monero)
2017-03-03 14:30:24 +02:00
Riccardo Spagni 78a99fe7da
Merge pull request #1820
7a44f38a Add support for the wallet to refresh pruned blocks (moneromooo-monero)
da18898f ringct: do not require range proof in decodeRct/decodeRctSimple (moneromooo-monero)
b49c6ab4 rpc: add a default category for daemon rpc (moneromooo-monero)
f113b92b core: add functions to serialize base tx info (moneromooo-monero)
6fd4b827 node_rpc_proxy: allow caching daemon RPC version (moneromooo-monero)
b5c74e40 wallet: invalidate node proxy cache when reconnecting (moneromooo-monero)
2017-03-03 14:30:02 +02:00
Riccardo Spagni 460836a2b7
Merge pull request #1813
b8a08f19 wallet: fix --log-file not working (moneromooo-monero)
2017-03-03 14:14:09 +02:00
Riccardo Spagni 14c6c910d7
Merge pull request #1803
53105743 Wallet API: Add support for daemon rpc login (Jaquee)
2017-03-03 14:10:44 +02:00
moneromooo-monero 2c468dd429
allow user I/O in millinero, micronero, nanonero, piconero 2017-03-02 19:02:41 +00:00
Jaquee db1c7d80b1
wallet api: add missing mining options 2017-03-02 14:09:04 +01:00
moneromooo-monero d47dac9a88
wallet: fix insertion of pool transactions
They were inserted using payment id as key, not txid
2017-02-28 21:19:24 +00:00
moneromooo-monero b8a08f199a
wallet: fix --log-file not working 2017-02-28 09:07:56 +00:00
moneromooo-monero 7a44f38a7f
Add support for the wallet to refresh pruned blocks 2017-02-27 22:29:00 +00:00
moneromooo-monero 6fd4b827fb
node_rpc_proxy: allow caching daemon RPC version 2017-02-27 17:57:18 +00:00
moneromooo-monero b5c74e4041
wallet: invalidate node proxy cache when reconnecting 2017-02-27 17:46:55 +00:00
Jaquee 5310574382
Wallet API: Add support for daemon rpc login 2017-02-25 22:17:35 +01:00
moneromooo-monero cf2b151116
wallet: avoid pre-log-init spew on --version 2017-02-24 19:08:02 +00:00
Riccardo Spagni 57f15994a5
Merge pull request #1797
ada6a8a2 wallet_rpc_server: new --trusted-daemon flag (moneromooo-monero)
2017-02-24 20:33:04 +02:00
moneromooo-monero ada6a8a2de
wallet_rpc_server: new --trusted-daemon flag
and remove trusted_daemon fields from transfer RPCs,
it is much friendlier on users
2017-02-24 18:20:14 +00:00
Riccardo Spagni 3435038a4d
add rpc timeouts to calls that might timeout 2017-02-24 19:17:22 +02:00
Jaquee e4dbea976e
wallet2: fix wrong status on daemon shutdown/startup 2017-02-23 12:41:21 +01:00
moneromooo-monero 14d0e00235
wallet2_api: add updates check api 2017-02-22 13:03:45 +00:00
Riccardo Spagni c3599fa7b9
update copyright year, fix occasional lack of newline at line end 2017-02-21 19:38:18 +02:00
Riccardo Spagni 50fadea8fa
Merge pull request #1747
26bd7aac wallet_api: fix logging init via api (moneromooo-monero)
2017-02-21 11:28:58 +02:00
Riccardo Spagni d596722dfa
Merge pull request #1749
5a3b1e98 wallet2: fix failure to send (relatedness check in wrong case) (moneromooo-monero)
2017-02-21 11:15:40 +02:00
moneromooo-monero 5a3b1e983c
wallet2: fix failure to send (relatedness check in wrong case)
A relatedness check was meant to be done in the case of adding
an extra output if just one was enough. This was mistakenly
added to the "preferred output" case.
2017-02-19 09:31:54 +00:00
moneromooo-monero 26bd7aac03
wallet_api: fix logging init via api 2017-02-18 20:44:23 +00:00
moneromooo-monero 83ec209f42
simplewallet: validate hex input size 2017-02-14 19:45:46 +00:00
iDunk5400 b2ac939eb3
Fix GUI building after libcryptonote_core was split (#1626) 2017-02-11 17:00:55 +01:00
Riccardo Spagni eacf2124b6 Merge pull request #1689
ce7fcbb4 Add server auth to monerod, and client auth to wallet-cli and wallet-rpc (Lee Clagett)
2017-02-11 00:35:25 +02:00
Riccardo Spagni 9296960081
Merge pull request #1686
bceaf4b7 wallet2: fix transactions not considering rct inputs (moneromooo-monero)
2017-02-11 00:22:17 +02:00
Riccardo Spagni 9781ecaa70
Merge pull request #1685
7549116e Wallet API: Easylogger wrapper for gui (Jaquee)
2017-02-11 00:21:51 +02:00
kenshi84 8027ce0c75 extract some basic code from libcryptonote_core into libcryptonote_basic 2017-02-08 22:45:15 +09:00
Riccardo Spagni 99ee3fd17e
Merge pull request #1679
4efc926d Wallet API: Catch error from tools::is_local_address (Jaquee)
2017-02-08 12:53:57 +02:00
moneromooo-monero bceaf4b788
wallet2: fix transactions not considering rct inputs
I broke this very recently in 2bf029be17
and didn't notice in time
2017-02-06 20:20:22 +00:00
Lee Clagett ce7fcbb4ae Add server auth to monerod, and client auth to wallet-cli and wallet-rpc 2017-02-06 01:15:41 -05:00
Jaquee 7549116ec3
Wallet API: Easylogger wrapper for gui 2017-02-05 20:12:01 +01:00
Jaquee 4efc926d28
Wallet API: Catch error from tools::is_local_address 2017-02-05 11:08:05 +01:00
Jaquee 0cc50bdd11 GUI: Improved refresh performance 2017-02-04 23:25:05 +01:00
Jaquee 805625b541 wallet api: Remove initAsync() and don't start refresh automatically on init 2017-02-04 23:25:03 +01:00
Jaquee 031b060af0 wallet2::init() - disconnect before init if connected
Makes it possible for GUI to reinit with new daemon without closing and reopening wallet.
2017-02-04 23:10:20 +01:00
Riccardo Spagni e56bf442c3
Merge pull request #1669
4f5b130d wallet_rpc_server: add address book RPC calls (moneromooo-monero)
2017-02-04 17:28:53 +02:00
Riccardo Spagni 31cf4e7362
Merge pull request #1640
f97526e6 simplewallet: option to always ask password for any crytical operations (kenshi84)
2017-02-04 17:18:38 +02:00
moneromooo-monero 4f5b130de9
wallet_rpc_server: add address book RPC calls 2017-02-04 11:40:49 +00:00
kenshi84 f97526e641 simplewallet: option to always ask password for any crytical operations 2017-02-03 09:38:12 +09:00
Riccardo Spagni 58c87786ae
Merge pull request #1652
fba9332d Changed console output for transaction from L0 to L1 (NanoAkron)
2017-02-02 21:36:56 +02:00
Riccardo Spagni 011c5a8a7c
Merge pull request #1647
2bf029be wallet2: fix corner case failing to send a second output (moneromooo-monero)
2017-02-02 21:35:31 +02:00
Riccardo Spagni 10b625079b
Merge pull request #1645
9bd9906e Factor is_address_local code into a tools function (moneromooo-monero)
2017-02-02 21:27:45 +02:00
Riccardo Spagni 614400e5af
Merge pull request #1643
69d2ad39 wallet_rpc_server: fix logs going to the wrong file (moneromooo-monero)
2017-02-02 21:26:56 +02:00
Riccardo Spagni 5bb95fc613
Merge pull request #1634
99f58437 Fix invalid + of std::string and int (Timothy D. Prime)
2017-02-02 19:43:05 +02:00
Riccardo Spagni 5fb3f97a55
Merge pull request #1629
c02e1cb9 Updates to epee HTTP client code   - http_simple_client now uses std::chrono for timeouts   - http_simple_client accepts timeouts per connect / invoke call   - shortened names of epee http invoke functions   - invoke command functions only take relative path, connection     is not automatically performed (Lee Clagett)
2017-02-02 19:32:01 +02:00
Riccardo Spagni f9e60dcd55
Merge pull request #1617
0644eed7 Remove boost/foreach.cpp includes (Miguel Herranz)
36dd3e23 Replace BOOST_REVERSE_FOREACH with ranged for (Miguel Herranz)
629e3101 Replace BOOST_FOREACH with C++11 ranged for (Miguel Herranz)
2017-02-02 18:16:39 +02:00
luigi1111 3cef7fbbb6
Merge pull request 1635
774a213 Wallet API: Create wallet from keys (Jaqueeee)
2017-01-30 17:09:38 -06:00
Jaquee 774a21394a
Wallet API: Create wallet from keys 2017-01-30 23:28:09 +01:00
NanoAkron fba9332de8
Changed console output for transaction from L0 to L1 2017-01-30 03:24:51 +00:00
moneromooo-monero 8c8482ac98
wallet_rpc_server: fix short payment id validation in transfer 2017-01-29 16:10:20 +00:00
moneromooo-monero 2bf029be17
wallet2: fix corner case failing to send a second output
If a rct transaction can be made with just one input, a second
output will be added. This output will be the smallest amount
output available. However, if this output is a non rct output
with less available fake outs than requested, the transaction
will be rejected. We now check the histogram to only consider
outputs with enough available fake outs in the first place.
2017-01-28 15:07:15 +00:00
moneromooo-monero 9bd9906e8f
Factor is_address_local code into a tools function 2017-01-28 14:57:47 +00:00
moneromooo-monero 69d2ad3967
wallet_rpc_server: fix logs going to the wrong file 2017-01-28 11:37:21 +00:00