Riccardo Spagni
b06c1abaa6
Merge pull request #1278
...
43ec2d0
Wallet API: added walletExists logic (Jacob Brydolf)
2016-11-01 15:29:44 +02:00
Riccardo Spagni
6f85b20d92
Merge pull request #1283
...
4869db7
adding static_assert to pod functions in string tools (Lee Clagett)
2016-11-01 15:13:10 +02:00
Riccardo Spagni
d53bc2eddf
Merge pull request #1281
...
bb560dd
wallet: new import_outputs/export_outputs commands (moneromooo-monero)
2016-11-01 15:12:03 +02:00
Lee Clagett
4869db702a
adding static_assert to pod functions in string tools
2016-10-31 13:22:21 -04:00
moneromooo-monero
18f66f44ef
wallet: use the dynamic per kB fee
2016-10-31 08:38:06 +00:00
moneromooo-monero
bb560dd814
wallet: new import_outputs/export_outputs commands
...
The intended use is to export outputs from a hot wallet, which
can scan incoming transfers from the network, and import them
in the cold wallet, which can't. The cold wallet can then compute
key images for those outputs, which can then be exported with
export_key_images, etc.
2016-10-30 19:37:09 +00:00
Jacob Brydolf
43ec2d002a
Wallet API: added walletExists logic
2016-10-30 15:34:50 +01:00
moneromooo-monero
7e6d3cf441
wallet: set incoming outputs' key image to 0 on view wallets
...
This allows rescan_spent to know the daemon response to those
is not valid.
2016-10-30 12:14:33 +00:00
moneromooo-monero
1f9e6a46d8
wallet: print tx overview on submit_transfer too
...
This is on the potentially compromised wallet, but still guards
against stupid mistakes.
2016-10-30 10:49:22 +00:00
Riccardo Spagni
83b0511731
Merge pull request #1270
...
fdef09f
Wallet API: make sure path exists before searching for wallets (Jacob Brydolf)
2016-10-29 11:35:48 +02:00
Jacob Brydolf
fdef09f11c
Wallet API: make sure path exists before searching for wallets
2016-10-28 22:29:33 +02:00
moneromooo-monero
069d688cf7
simplewallet: log transactions to submit in submit_transfer
...
Not as trustworthy as this is in the view wallet, the one
that's considered compromised.
2016-10-26 13:17:29 +01:00
moneromooo-monero
31abac4daf
wallet: fix pre-rct cold wallet signing not splitting change
...
Re-creating the transaction on the cold wallet was not splitting
the change, causing the transaction to be rejected by the network.
This worked on testnet since amounts do not have to be split.
Also add selected_transfers, which can now be saved since they're
size_t rather than iterators. This allows the view wallet to
properly set the sent outputs as spent and update balance.
Bump transfer file version numbers to match.
2016-10-25 21:44:31 +01:00
Riccardo Spagni
4e98d2958c
Merge pull request #1246
...
372f338
wallet: sanity check on selected transfer indices in signed ptx (moneromooo-monero)
2016-10-23 19:09:18 +02:00
Riccardo Spagni
92095104fe
Merge pull request #1230
...
06b642d
wallet_api: add address validation functions (moneromooo-monero)
2016-10-23 19:04:01 +02:00
Riccardo Spagni
4f6ea2eb6a
Merge pull request #1229
...
b6b86ab
wallet2_api: recognize full size payment ids as valid (moneromooo-monero)
2016-10-22 22:19:43 +02:00
Riccardo Spagni
b3d4505ae1
Merge pull request #1228
...
2bf65df
wallet_api: do not override invalid payment id (moneromooo-monero)
2016-10-22 22:18:36 +02:00
Riccardo Spagni
09f62ed33e
Merge pull request #1225
...
04da979
Always confirm transfers defaults to ON/YES (NanoAkron)
2016-10-22 22:16:39 +02:00
Riccardo Spagni
f800390ccc
Merge pull request #1224
...
8231997
simplewallet: fix sweep_all misreporting sweeped amount for rct outputs (moneromooo-monero)
985f61a
wallet: force 0 mixin transactions to use pre-rct txes (moneromooo-monero)
2016-10-22 22:15:50 +02:00
Riccardo Spagni
7c5431624e
Merge pull request #1223
...
0950be9
wallet: speed up output selection, and fix bug with relatedness calculation (moneromooo-monero)
0eba133
wallet: fix mixup between mixin 2 and 4 before/after v5 (moneromooo-monero)
2016-10-22 22:15:16 +02:00
Riccardo Spagni
9feb358e46
Merge pull request #1220
...
e76dcdd
wallet: improve error messages when not enough money for transfer (moneromooo-monero)
2016-10-22 22:12:17 +02:00
Riccardo Spagni
e48ef1684c
Merge pull request #1219
...
2d7083c
wallet_api: fix wrong amount in tx history (moneromooo-monero)
b5f2001
simplewallet: fix wrong amount in show_transfers (moneromooo-monero)
2016-10-22 22:11:12 +02:00
Riccardo Spagni
b53c9e5549
Merge pull request #1200
...
a3748f4
Rewrote add_wallet_create_if_needed for clearer flow and behaviour (NanoAkron)
2016-10-22 22:07:38 +02:00
moneromooo-monero
372f338682
wallet: sanity check on selected transfer indices in signed ptx
2016-10-22 18:07:26 +01:00
moneromooo-monero
06b642dfe4
wallet_api: add address validation functions
...
The payment id from integrated addresses is also parsed
2016-10-16 16:52:45 +01:00
moneromooo-monero
b6b86ab347
wallet2_api: recognize full size payment ids as valid
2016-10-16 13:54:53 +01:00
moneromooo-monero
2bf65dfb8d
wallet_api: do not override invalid payment id
...
Instead, return an empty string to mark the error
2016-10-16 13:17:29 +01:00
NanoAkron
a3748f40ea
Rewrote add_wallet_create_if_needed for clearer flow and behaviour
2016-10-15 22:29:28 +01:00
NanoAkron
04da979f46
Always confirm transfers defaults to ON/YES
2016-10-15 20:38:07 +01:00
moneromooo-monero
8231997b66
simplewallet: fix sweep_all misreporting sweeped amount for rct outputs
...
RingCT outputs will be 0 in the vin, so we need to get the actual
amount from elsewhere.
2016-10-15 19:18:52 +01:00
moneromooo-monero
985f61a4ec
wallet: force 0 mixin transactions to use pre-rct txes
...
rct transactions does not support 0 mixin, and those are
now typically dust sweep transactions, for which a lower
fee is a must.
2016-10-15 18:42:04 +01:00
moneromooo-monero
88faec75fe
wallet: select part of the fake outs from recent outputs
...
25% of the outputs are selected from the last 5 days (if possible),
in order to avoid the common case of sending recently received
outputs again. 25% and 5 days are subject to review later, since
it's just a wallet level change.
2016-10-15 18:17:16 +01:00
moneromooo-monero
0950be9e34
wallet: speed up output selection, and fix bug with relatedness calculation
2016-10-15 16:32:08 +01:00
moneromooo-monero
0eba1335be
wallet: fix mixup between mixin 2 and 4 before/after v5
2016-10-15 16:07:18 +01:00
moneromooo-monero
e76dcdd810
wallet: improve error messages when not enough money for transfer
2016-10-15 14:31:40 +01:00
moneromooo-monero
2d7083ca56
wallet_api: fix wrong amount in tx history
2016-10-15 13:56:25 +01:00
Jacob Brydolf
a8cd65646c
Wallet API: added setRecoveringFromSeed();
2016-10-10 19:37:10 +02:00
Riccardo Spagni
0673db16ad
Merge pull request #1195
...
697ce1d
libwallet_api: reverted deleted curly brace (Ilya Kitaev)
bb9094f
libwallet_api: fixes for transaction history (Ilya Kitaev)
62b3708
libwallet_api: do not signal on sent/received tx until wallet completely synchronized (Ilya Kitaev)
11fab41
libwallet_api: TransactionHistory: read/write syncchronization (Ilya Kitaev)
559f379
libwallet_api: test: adjusted mixin_count=4 as it's minumum allowed (Ilya Kitaev)
8b0cb8c
libwallet_api: some renamings (Ilya Kitaev)
db3282c
Initialize transaction history if empty (Ilya Kitaev)
85f5e73
libwallet_api: fixes for transaction history (Ilya Kitaev)
2016-10-09 14:34:59 +02:00
Riccardo Spagni
8cd01bc378
Merge pull request #1192
...
36a89ab
libwallet_api: Added option to restore from specific height (Jacob Brydolf)
2016-10-09 14:33:17 +02:00
Riccardo Spagni
0589209eb4
Merge pull request #1191
...
9f31e2d
wallet: do not announce pool txes as money spent/received (yet) (moneromooo-monero)
2016-10-09 14:29:16 +02:00
Jacob Brydolf
36a89ab435
libwallet_api: Added option to restore from specific height
2016-10-08 00:57:09 +02:00
moneromooo-monero
9f31e2d8c0
wallet: do not announce pool txes as money spent/received (yet)
2016-10-07 19:52:05 +01:00
Ilya Kitaev
697ce1d435
libwallet_api: reverted deleted curly brace
2016-10-07 00:43:45 +03:00
Ilya Kitaev
a4390dae07
resolved conflict with 'develop' of https://github.com/mbg033/monero
2016-10-07 00:36:36 +03:00
Ilya Kitaev
62b3708ea5
libwallet_api: do not signal on sent/received tx until wallet completely
...
synchronized
2016-10-07 00:29:13 +03:00
Ilya Kitaev
11fab41c36
libwallet_api: TransactionHistory: read/write syncchronization
2016-10-06 23:25:43 +03:00
Ilya Kitaev
8b0cb8caa4
libwallet_api: some renamings
2016-10-06 15:47:29 +03:00
Ilya Kitaev
db3282cdf0
Initialize transaction history if empty
2016-10-06 15:47:29 +03:00
Ilya Kitaev
85f5e73d9c
libwallet_api: fixes for transaction history
2016-10-06 15:47:29 +03:00
Ilya Kitaev
bb9094f1fe
libwallet_api: fixes for transaction history
2016-10-04 23:11:19 +03:00
moneromooo-monero
4e6d70808d
wallet: better implementation of sweep_unmixable
...
This was still using the old transaction creation algorithm,
coupled with a deterministic output selection scheme, which
made it ill suited to the job, since it'd loop indefinitely
in case the fee increased between the test tx and adding the
fee.
2016-10-04 17:44:56 +01:00
Riccardo Spagni
2723cd12e1
Merge pull request #1173
...
65ea836
wallet2_api: added Wallet::daemonBlockChainTargetHeight() libwallet_api: Wallet::blockChainTargetHeight (Jacob Brydolf)
2016-10-04 12:15:02 +02:00
Riccardo Spagni
bfdac4b5ff
Merge pull request #1160
...
80b4da3
wallet: wallet option to confirm transfers with no payment id (moneromooo-monero)
2016-10-04 12:11:32 +02:00
Riccardo Spagni
4cb1348548
Merge pull request #1139
...
01ec195
Update CMakeLists.txt (codehalo)
446ebbc
Update CMakeLists.txt (codehalo)
bd773e7
Update CMakeLists.txt (codehalo)
3627cea
Cleanup. Dropped "bit" from bitmonero. (Randi Joseph)
2a51396
Dropped "bit" from bitmonero. (Randi Joseph)
78b13d6
Cleanup. Dropped "bit" from bitmonero. (Randi Joseph)
1e6aedb
Cleanup. Dropped "bit" from bitmonero. (Randi Joseph)
9e54616
Dropped "bit" from bitmonero. (Randi Joseph)
2016-10-04 12:11:03 +02:00
Riccardo Spagni
60e527f1c2
Merge pull request #1125
...
7b09e9f
wallet: update min mixin for sweep_unmixable on v4 (moneromooo-monero)
2016-10-04 12:06:04 +02:00
Riccardo Spagni
db90a16f03
Merge pull request #1152
...
8b20cbf
libwallet_api: do not use fast-refresh on recovery (Ilya Kitaev)
10fe626
libwallet_api: fast-refresh in case of opening non-synced wallet (Ilya Kitaev)
0019e31
libwallet_api: fix unhandled exception on address check (Ilya Kitaev)
1f73f80
libwallet_api: fast-refresh for new wallet (Ilya Kitaev)
4789347
libwallet_api: test for create/init wallet on mainnet (Ilya Kitaev)
2016-10-04 11:37:18 +02:00
Riccardo Spagni
2ef81914b5
Merge pull request #1140
...
bba6af9
wallet: cold wallet transaction signing (moneromooo-monero)
9872dcb
wallet: fix log confusion between bytes and kilobytes (moneromooo-monero)
d9b0bf9
cryptonote_core: make extra field removal more generic (moneromooo-monero)
98f19d4
serialization: add support for serializing std::pair and std::list (moneromooo-monero)
2016-10-04 11:27:38 +02:00
Jacob Brydolf
65ea8364f8
wallet2_api: added Wallet::daemonBlockChainTargetHeight()
...
libwallet_api: Wallet::blockChainTargetHeight
Signed-off-by: Jacob Brydolf <jacob@brydolf.net>
2016-10-03 20:47:41 +02:00
Ilya Kitaev
8b20cbfa7d
libwallet_api: do not use fast-refresh on recovery
2016-10-01 21:04:49 +03:00
moneromooo-monero
80b4da3330
wallet: wallet option to confirm transfers with no payment id
...
set confirm-missing-payment-id 0|1
Defaults to true.
2016-10-01 17:03:53 +01:00
Ilya Kitaev
10fe626e13
libwallet_api: fast-refresh in case of opening non-synced wallet
2016-09-30 22:42:15 +03:00
Ilya Kitaev
0019e3106b
libwallet_api: fix unhandled exception on address check
2016-09-30 21:43:57 +03:00
Ilya Kitaev
1f73f80c94
libwallet_api: fast-refresh for new wallet
2016-09-30 02:11:28 +03:00
Ilya Kitaev
2dacb193d0
wallet2: wallet2::get_daemon_blockchain_height() clean error message on
...
success
2016-09-28 00:39:06 +03:00
Ilya Kitaev
25e5efc238
libwallet_api: Wallet::setAutoRefreshInterval sanity check
2016-09-28 00:35:10 +03:00
Ilya Kitaev
a6688200fb
libwallet_api: explicitly return 0 in Wallet::daemonBlockChainHeight()
...
on error
2016-09-28 00:31:21 +03:00
moneromooo-monero
bba6af9064
wallet: cold wallet transaction signing
...
This change adds the ability to create a new unsigned transaction
from a watch only wallet, and save it to a file. This file can
then be moved to another computer/VM where a cold wallet may load
it, sign it, and save it. That cold wallet does not need to have
a blockchain nor daemon. The signed transaction file can then be
moved back to the watch only wallet, which can load it and send
it to the daemon.
Two new simplewallet commands to use it:
sign_transfer (on the cold wallet)
submit_transfer (on the watch only wallet)
The transfer command used on a watch only wallet now writes an
unsigned transaction set in a file called 'unsigned_monero_tx'
instead of submitting the tx to the daemon as a normal wallet does.
The signed tx file is called 'signed_monero_tx'.
2016-09-27 07:46:39 +01:00
moneromooo-monero
9872dcbbe3
wallet: fix log confusion between bytes and kilobytes
2016-09-26 23:12:43 +01:00
Randi Joseph
9e54616924
Dropped "bit" from bitmonero.
2016-09-26 17:22:30 -04:00
Ilya Kitaev
cda4cb969a
formatting: 2-spaces indentation
2016-09-26 23:46:07 +03:00
Ilya Kitaev
545a48f098
formatting: 2-spaces indentation
2016-09-26 23:29:53 +03:00
Ilya Kitaev
3079c5756b
wallet2_api: milliseconds resolution for auto-refresh interval
2016-09-26 23:19:25 +03:00
Ilya Kitaev
7b4a85b309
wallet2_api: added Wallet::daemonBlockChainHeight()
2016-09-26 23:19:25 +03:00
Ilya Kitaev
9de3ec3e2a
libwallet_api: Wallet::blockChainHeight, WalletListener::newBlock
2016-09-26 23:19:25 +03:00
moneromooo-monero
7b09e9ff77
wallet: update min mixin for sweep_unmixable on v4
2016-09-24 14:48:34 +01:00
Ilya Kitaev
d5d0856ce6
wallet2_api: getter and setter for "refresh interval"
2016-09-20 20:40:58 +03:00
Ilya Kitaev
cdb6c96f89
wallet2_api: fixed deadlock while closing wallet
2016-09-20 20:08:33 +03:00
moneromooo-monero
eeb2bbc0fc
epee: optionally restrict HTTP service to a configurable user agent
...
This is intended to catch traffic coming from a web browser,
so we avoid issues with a web page sending a transfer RPC to
the wallet. Requiring a particular user agent can act as a
simple password scheme, while we wait for 0MQ and proper
authentication to be merged.
2016-09-18 20:32:02 +01:00
Riccardo Spagni
68e6678ab7
Merge pull request #1099
...
c2faab5
fix v5 height (Riccardo Spagni)
70bd7d8
remove dead backup seed nodes, add new ones (Riccardo Spagni)
cebbcf0
fix v5 fork date description (Riccardo Spagni)
eb60fa2
update version (Riccardo Spagni)
c41098a
updated fork heights for v4 and v5 (Riccardo Spagni)
c69b8a1
update block headers (Riccardo Spagni)
f148af2
add checkpoints (Riccardo Spagni)
c15da0e
switch wallet API from std thread/mutex to boost (Riccardo Spagni)
8a274ea
switch wallet API from std thread/mutex to boost (Riccardo Spagni)
2016-09-18 20:26:39 +02:00
Riccardo Spagni
6b744c349f
Merge pull request #1098
...
1dd5b0b
wallet: keep change dest separate from other dests (moneromooo-monero)
2016-09-18 17:42:32 +02:00
Riccardo Spagni
a6914c140c
Merge pull request #1097
...
5f5d727
wallet: fix empty tx in corner case sending nothing (moneromooo-monero)
2016-09-18 17:42:10 +02:00
Riccardo Spagni
8a274eab3f
switch wallet API from std thread/mutex to boost
2016-09-18 17:37:47 +02:00
moneromooo-monero
1dd5b0b7df
wallet: keep change dest separate from other dests
...
This fixes misreporting of amount/fee in rct txes, as the rct
tx construction code was lumping all dests (whether change or
not) in the same dests vector, while the pre-rct code was
keeping it separate.
2016-09-18 12:04:23 +01:00
moneromooo-monero
5f5d7279b6
wallet: fix empty tx in corner case sending nothing
2016-09-18 10:44:32 +01:00
redfish
e1c7af35d4
cmake: transitive deps and remove deprecated LINK_*
...
Keep the immediate direct deps at the library that depends on them,
declare deps as PUBLIC so that targets that link against that library
get the library's deps as transitive deps.
Break dep cycle between blockchain_db <-> crytonote_core.
No code refactoring, just hide cycle from cmake so that
it doesn't complain (cycles are allowed only between
static libs, not shared libs).
This is in preparation for supproting BUILD_SHARED_LIBS cmake
built-in option for building internal libs as shared.
2016-09-18 02:56:26 -04:00
moneromooo-monero
9c7b0cb28e
wallet: change priority/fee to ArticMine's recommendation
...
We keep 1, 2, 3 multipliers till the fee decrase from 0.01/kB
to 0.002/kB, where we start using 1, 20, 166 multipliers.
This ensures the higher multiplier will compensate for the
block reward penalty when pushing past 100% of the past median.
The fee-multiplier wallet setting is now rename to priority,
since it keeps its [0..3] range, but maps to different multiplier
values.
2016-09-16 11:50:52 +01:00
Riccardo Spagni
7c899ec33a
Merge pull request #1074
...
cd01bae
Decrease minimum fee from 0.01/kB to 0.002/kB (moneromooo-monero)
2016-09-15 15:23:49 +02:00
moneromooo-monero
cd01bae735
Decrease minimum fee from 0.01/kB to 0.002/kB
...
The wallet will start using that fee about two weeks after hard
fork 3, when most people will likely have updated their daemons.
2016-09-15 09:28:33 +01:00
moneromooo-monero
70b78bb2c8
wallet: fix misdetection of duplicates
2016-09-14 20:23:28 +01:00
Riccardo Spagni
aa996e3a60
Merge pull request #1038
...
43677f9
gui/libwallet_merged: libunbound is one more dependency (Ilya Kitaev)
2016-09-03 14:11:26 +02:00
Ilya Kitaev
43677f9d68
gui/libwallet_merged: libunbound is one more dependency
2016-09-03 13:32:06 +03:00
Riccardo Spagni
6c608c352c
Merge pull request #1033
...
4d17949
wallet_merged: ringct added to dependencies (Ilya Kitaev)
2016-09-01 23:00:21 +02:00
Ilya Kitaev
4d17949d4f
wallet_merged: ringct added to dependencies
2016-09-01 23:06:36 +03:00
luigi1111
34bb78956f
Re-add s to rangesigs
...
Whoops.
2016-09-01 13:53:53 -05:00
luigi1111
dbf017a5f7
Fix some rct tx size calculations
...
Some variance is still expected
2016-09-01 13:14:31 -05:00
Riccardo Spagni
27c8713f56
Merge pull request #1027
...
85dc0ce
wallet: sanity check on histogram response (moneromooo-monero)
2016-09-01 11:31:58 +02:00
Riccardo Spagni
e858c4c745
Merge pull request #1016
...
3112e24
wallet: interpret 0 fee multiplier as default for sweep_all too (moneromooo-monero)
2016-09-01 11:28:29 +02:00
Riccardo Spagni
9b579773d7
Merge pull request #1007
...
1de812a
cmake: merge libs via virtual object libraries (redfish)
a7498ad
cmake: comply with the new policy CMP0026 (redfish)
2016-09-01 11:21:38 +02:00
moneromooo-monero
85dc0ce3a5
wallet: sanity check on histogram response
2016-09-01 09:04:45 +01:00
redfish
1de812a92a
cmake: merge libs via virtual object libraries
...
CMake issued a warming about policy CMP0026: access of LOCATION
target property at config time was disallowed. Offending code
was the code that merged static libraries to generate
libwallet_merged.a.
This patch does that same merge task in a much simpler way. And,
since it doesn't violate the policy, the warning went away.
2016-08-30 23:01:48 -04:00
moneromooo-monero
3112e24aa7
wallet: interpret 0 fee multiplier as default for sweep_all too
2016-08-30 13:19:20 +01:00
moneromooo-monero
73b9b4ba34
wallet: fix not finding enough rct fake outputs
...
If picking coinbase outputs, those are locked for a longer time
than other outputs, so we ask for more of those
2016-08-29 20:51:21 +01:00
moneromooo-monero
adca903589
wallet_rpc_server: return payment id in make_integrated_address RPC
...
It is useful, especially when requesting a random one
2016-08-29 12:18:22 +01:00
moneromooo-monero
fbd7c359ee
wallet: fix some "may be used uninitialized" warnings
...
The compiler can't always work out the _found booleans are
set iff the value is initialized.
2016-08-28 21:30:44 +01:00
moneromooo-monero
4a41dd4068
wallet: do not generate 0 change
2016-08-28 21:30:42 +01:00
moneromooo-monero
45349b6f7c
wallet: do not ask for duplicate histograms
2016-08-28 21:30:36 +01:00
moneromooo-monero
b951bc8780
wallet: transfer_selected_rct now also selects fake outs
2016-08-28 21:30:34 +01:00
moneromooo-monero
c3b3260ae5
New "Halfway RingCT" outputs for coinbase transactions
...
When RingCT is enabled, outputs from coinbase transactions
are created as a single output, and stored as RingCT output,
with a fake mask. Their amount is not hidden on the blockchain
itself, but they are then able to be used as fake inputs in
a RingCT ring. Since the output amounts are hidden, their
"dustiness" is not an obstacle anymore to mixing, and this
makes the coinbase transactions a lot smaller, as well as
helping the TXO set to grow more slowly.
Also add a new "Null" type of rct signature, which decreases
the size required when no signatures are to be stored, as
in a coinbase tx.
2016-08-28 21:30:26 +01:00
moneromooo-monero
d4b62a1e29
rct amount key modified as per luigi1111's recommendations
...
This allows the key to be not the same for two outputs sent to
the same address (eg, if you pay yourself, and also get change
back). Also remove the key amounts lists and return parameters
since we don't actually generate random ones, so we don't need
to save them as we can recalculate them when needed if we have
the correct keys.
2016-08-28 21:30:19 +01:00
moneromooo-monero
3ab2ab3e76
rct: change the simple flag to a type
...
for future expansion
2016-08-28 21:30:14 +01:00
moneromooo-monero
a47ceee83b
wallet: do not store signatures in the wallet cache
...
Saves some substantial space.
Also avoid calculating tx hashes we don't need.
2016-08-28 21:30:10 +01:00
moneromooo-monero
2c9d9519f1
wallet2: factor m_spent changes
...
Makes it easier to track what is going on.
2016-08-28 21:30:04 +01:00
moneromooo-monero
1303cda646
wallet: always use new algorithm for RPC transfers
...
This ensures we get rct transactions when appropriate
2016-08-28 21:30:03 +01:00
moneromooo-monero
230fca2d56
wallet: use the prefered rct case only when enough rct outs exist
2016-08-28 21:29:55 +01:00
moneromooo-monero
c27194a444
wallet: do not try to use rct txes a few blocks before the fork
2016-08-28 21:29:53 +01:00
moneromooo-monero
37bdf6ebe3
change fork settings to allow pre-rct txes for one more fork cycle
2016-08-28 21:29:50 +01:00
moneromooo-monero
9b70856ccb
rct: make the amount key derivable by a third party with the tx key
...
Scheme design from luigi1114.
2016-08-28 21:29:46 +01:00
moneromooo-monero
cf33e1a52a
rct: do not serialize public keys in outPk
...
They can be reconstructed from vout
2016-08-28 21:29:43 +01:00
moneromooo-monero
83ab3151e8
wallet2_api: zero amounts are now allowed with rct
2016-08-28 21:29:41 +01:00
moneromooo-monero
096ac06521
wallet2_api: update on_money_{received,spent} prototypes for rct changes
2016-08-28 21:29:40 +01:00
moneromooo-monero
3cb2edec66
rpc: send global indices along with blocks/transacions on refresh
...
This plugs a privacy leak, where the wallet tells the daemon
which transactions contain outputs for the wallet by asking
for additional information for that particular transaction.
As a nice bonus, this actually makes refresh slightly faster.
2016-08-28 21:29:38 +01:00
moneromooo-monero
84c82cd775
wallet: better tx input selection
...
We try to avoid related inputs, when possible
2016-08-28 21:29:32 +01:00
moneromooo-monero
07d353dfc6
wallet: handle 0 change properly
...
With RCT, we allow 0 size outputs, to try and encourage txes
with two inputs and two outputs. Consolidation would then
have two non zero inputs, one zero output, and one larger
output.
2016-08-28 21:29:27 +01:00
moneromooo-monero
e81a2b2cfa
port get_tx_key/check_tx_key to rct
2016-08-28 21:29:24 +01:00
moneromooo-monero
a4d4d6194b
integrate simple rct api
2016-08-28 21:29:20 +01:00
moneromooo-monero
37c895e5e3
wallet: rct specific output selection
...
Before the normal selection, we attempt to find either one or two
suitable outputs to use as inputs to the rct tx. The intent is that
most rct txes will have one or two inputs, and we want all to look
the same if possible.
When two outputs are needed, we try to find a pair which are not
related (ie, by being from the same or similar block height).
2016-08-28 21:29:11 +01:00
moneromooo-monero
1181c57967
wallet: make sweep_all work with rct txes too
2016-08-28 21:29:09 +01:00
moneromooo-monero
1017a75460
wallet: factor transfer_rct code with transfer code
...
The "transfer" simplewallet command is renamed to "transfer_original".
"transfer_new" is renamed "transfer", "transfer_rct" is removed,
and the new "transfer" now selects rct or non rct transactions
based on the current block height.
2016-08-28 21:29:05 +01:00
moneromooo-monero
20e50ec7f7
ringct: do not serialize what can be reconstructed
...
The mixRing (output keys and commitments) and II fields (key images)
can be reconstructed from vin data.
This saves some modest amount of space in the tx.
2016-08-28 21:28:55 +01:00
moneromooo-monero
acbe06d8e9
wallet: update spent status when an accepted tx disappears
2016-08-28 21:28:49 +01:00
moneromooo-monero
089df4af83
wallet: reset output spent status on blockchain reorg
...
If the blockchain gets reorganized, all outputs spent in the part
of the blockchain that's blown away need to be reset to unspent
(they may end up spent again on the blocks that replace the blocks
that are removed, however).
2016-08-28 21:28:47 +01:00
moneromooo-monero
dc4aad7eb5
add rct to the protocol
...
It is not yet constrained to a fork, so don't use on the real network
or you'll be orphaned or rejected.
2016-08-28 21:28:37 +01:00
Riccardo Spagni
9308b4e8b9
Merge pull request #978
...
99dd572
libwallet_api: tests: checking for result while opening wallet (Ilya Kitaev)
bcf7b67
libwallet_api: Wallet::amountFromString fixed (Ilya Kitaev)
32bc7b4
libwallet_api: helper method to return maximumAllowedAmount (Ilya Kitaev)
cbe534d
libwallet_api: tests: removed logged passwords (Ilya Kitaev)
b1a5a93
libwallet_api: do not store wallet on close if status is not ok (Ilya Kitaev)
2016-08-26 10:32:00 +02:00
Ilya Kitaev
bcf7b67cd6
libwallet_api: Wallet::amountFromString fixed
2016-08-23 13:47:21 +03:00
Ilya Kitaev
32bc7b41c0
libwallet_api: helper method to return maximumAllowedAmount
2016-08-23 12:35:45 +03:00
Riccardo Spagni
79cdedb90c
Merge pull request #970
...
25f529a
wallet: store key images after importing them (moneromooo-monero)
2016-08-22 22:55:24 +02:00
Ilya Kitaev
b1a5a937ff
libwallet_api: do not store wallet on close if status is not ok
2016-08-22 22:47:59 +03:00
moneromooo-monero
25f529aa67
wallet: store key images after importing them
...
It avoids rescan_spent resetting spent status, for example.
2016-08-17 08:37:56 +01:00
moneromooo-monero
9cca53ac29
wallet: fix build on Mac and Windows (missing include)
...
Reported by RaskaRuby, tested by iDunk5400.
2016-08-17 08:08:49 +01:00
Riccardo Spagni
0faf572db8
Merge pull request #948
...
11dc091
Fake outs set is now decided by the wallet (moneromooo-monero)
1593553
new unlocked parameter to output_histogram (moneromooo-monero)
2016-08-11 22:43:14 +02:00
moneromooo-monero
11dc091464
Fake outs set is now decided by the wallet
...
This plugs a privacy leak from the wallet to the daemon,
as the daemon could previously see what input is included
as a transaction input, which the daemon hadn't previously
supplied. Now, the wallet requests a particular set of
outputs, including the real one.
This can result in transactions that can't be accepted if
the wallet happens to select too many outputs with non standard
unlock times. The daemon could know this and select another
output, but the wallet is blind to it. It's currently very
unlikely since I don't think anything uses non default
unlock times. The wallet requests more outputs than necessary
so it can use spares if any of the returns outputs are still
locked. If there are not enough spares to reach the desired
mixin, the transaction will fail.
2016-08-11 14:35:27 +01:00
moneromooo-monero
663fc32809
wallet2: if importing key images fails, print failure index
2016-08-04 08:19:29 +01:00
moneromooo-monero
1593553e03
new unlocked parameter to output_histogram
...
This constrains the number of instances of any amount
to the unlocked ones (as defined by the default unlock time
setting: outputs with non default unlock time are not
considered, so may be counted as unlocked even if they are
not actually unlocked).
2016-08-01 22:16:00 +01:00
Riccardo Spagni
b34506da81
Merge pull request #928
...
ebf97d7
wallet: new {ex,im}port_key_images commands and RPC calls (moneromooo-monero)
2016-07-26 08:55:25 +02:00
moneromooo-monero
ebf97d76f0
wallet: new {ex,im}port_key_images commands and RPC calls
...
They are used to export a signed set of key images from a wallet
with a private spend key, so an auditor with the matching view key
may see which of those are spent, and which are not.
2016-07-24 09:23:30 +01:00
redfish
8bed9a42f7
cmake: wallet: libunbound is not always static
...
It is not clear why libunbound was added to this in the first place,
since it wasn't here before and #915 doesn't seem to introduce any
new dependency on it.
Tested build with STATIC=OFF (with and without libunbound-dev libunbound8
installed) and STATIC=ON, on Ubuntu Trusty, Debian Jessie, and Arch
Linux. For static builds, beware of #926 and #907 .
If this hack was introduced to make it build on some other system
(Windows? OS X?), then it will have to be dealt with, but not this way.
2016-07-23 15:04:15 -04:00
Riccardo Spagni
07f974a499
Merge pull request #916
...
b89b963
wallet: add unconfirmed incoming txes from the txpool (moneromooo-monero)
2016-07-23 09:19:39 +02:00
Riccardo Spagni
b582764bd6
Merge pull request #915
...
d7597c5
refreshing wallet even if error happened (Ilya Kitaev)
6d32a3d
wallet_api: async init, Wallet::connected status, log level (Ilya Kitaev)
193d251
libwallet_api cmake: conditionally creating libwallet_merged2 only for STATIC build (Ilya Kitaev)
10c06dd
wallet_api: segfault on refresh fixed (Ilya Kitaev)
9d2cb4f
WalletListener functionality (Ilya Kitaev)
d27b883
hack to successfull linking for MSYS2 (Ilya Kitaev)
083380c
Transaction fee multiplier aka priority integraged (Ilya Kitaev)
00ed12b
Wallet::paymentIdValid (Ilya Kitaev)
2016-07-23 09:17:21 +02:00
moneromooo-monero
b89b96394a
wallet: add unconfirmed incoming txes from the txpool
...
Shown in show_transfers simplewallet command, and get_transfers
RPC command, if req.pool is true.
2016-07-20 19:14:44 +01:00
Riccardo Spagni
38e5156392
Merge pull request #914
...
87b1153
wallet2_api: use uint64_t for amounts (moneromooo-monero)
2016-07-20 14:29:33 +02:00
Riccardo Spagni
fc3e135b83
Merge pull request #902
...
014f3a0
Add a daemon RPC version, and make simplewallet check it (moneromooo-monero)
2016-07-20 13:55:59 +02:00
Riccardo Spagni
07f1d4e04d
Merge pull request #899
...
a95a2cb
wallet_rpc_server: add payment id from integrated addresses to extra (moneromooo-monero)
2016-07-20 13:52:54 +02:00
moneromooo-monero
89d9f382a0
wallet: add command and RPC to sign/verify data
...
Signing is done using the spend key, since the view key may
be shared. This could be extended later, to let the user choose
which key (even a per tx key).
simplewallet's sign/verify API uses a file. The RPC uses a
string (simplewallet can't easily do strings since commands
receive a tokenized set of arguments).
2016-07-19 20:39:03 +01:00
Ilya Kitaev
d7597c5961
refreshing wallet even if error happened
2016-07-18 23:03:09 +03:00
Ilya Kitaev
6d32a3d16b
wallet_api: async init, Wallet::connected status, log level
2016-07-18 23:03:09 +03:00
Ilya Kitaev
193d251360
libwallet_api cmake: conditionally creating libwallet_merged2 only for
...
STATIC build
2016-07-18 23:03:09 +03:00
Ilya Kitaev
10c06ddac7
wallet_api: segfault on refresh fixed
2016-07-18 23:03:09 +03:00
Ilya Kitaev
9d2cb4f36c
WalletListener functionality
2016-07-18 23:02:47 +03:00
Ilya Kitaev
d27b883b2d
hack to successfull linking for MSYS2
2016-07-18 23:02:47 +03:00
Ilya Kitaev
083380cb8f
Transaction fee multiplier aka priority integraged
2016-07-18 23:02:18 +03:00
Ilya Kitaev
00ed12bd6c
Wallet::paymentIdValid
2016-07-18 23:02:18 +03:00
moneromooo-monero
87b1153f37
wallet2_api: use uint64_t for amounts
2016-07-17 09:33:31 +01:00
moneromooo-monero
014f3a0d39
Add a daemon RPC version, and make simplewallet check it
...
If the version is different, simplewallet will refuse to use that
daemon, unless --allow-mismatched-daemon-version is used.
2016-07-10 16:49:40 +01:00
moneromooo-monero
a95a2cbc4d
wallet_rpc_server: add payment id from integrated addresses to extra
2016-07-10 13:46:18 +01:00
moneromooo-monero
a0bf85d09d
wallet2_api: make this build (smatch needs .str() for /=)
2016-07-07 22:42:59 +01:00
Riccardo Spagni
3923cbddaf
Merge pull request #878
...
945c272
wallet: add a fee multiplier (moneromooo-monero)
2016-07-06 18:14:34 +02:00
Ilya Kitaev
beb6d9200d
CMake: GPL 'libutils' script removed
2016-06-24 14:49:23 +03:00
Ilya Kitaev
ab61ba0c9b
Merge branch 'master' of https://github.com/mbg033/bitmonero
2016-06-23 16:23:09 +03:00
Ilya Kitaev
d60864785f
WalletManager::findWallets: searching by "keys" files instead of
...
"address.txt" files
2016-06-23 16:01:41 +03:00
Ilya Kitaev
ca61153003
Wallet: payment id and integrated address
2016-06-23 16:01:41 +03:00
Ilya Kitaev
23cbf6fd97
PendingTransactionImpl: pointer->reference
2016-06-23 16:01:41 +03:00
Ilya Kitaev
c1d9e7cd2a
commented regex
2016-06-23 16:01:41 +03:00
Ilya Kitaev
563baf1b68
Typo fixed
2016-06-23 16:01:41 +03:00
Ilya Kitaev
2efec04f74
Wallet::createTransaction: added mixin_count param
2016-06-23 16:01:41 +03:00
Ilya Kitaev
85a632244e
double/string to monero integer convertion methods
2016-06-23 16:01:41 +03:00
Ilya Kitaev
e7d8f2a085
wallet::default_mixin exposed to public interface as
...
Wallet::setDefaultMixin, Wallet::defaultMixin;
wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-23 16:01:41 +03:00
Ilya Kitaev
a5374897f8
Wallet::filename, Wallet::keysFilename, tests for move wallet
2016-06-23 16:01:41 +03:00
Ilya Kitaev
a1eddcd693
removed unused "using"
2016-06-23 16:01:41 +03:00
Ilya Kitaev
8390bfa770
Wallet API : WalletManager::findWallets() added
2016-06-23 16:01:41 +03:00
Ilya Kitaev
dbc0b039b4
installing wallet_api header
2016-06-23 16:01:33 +03:00
Ilya Kitaev
191cb594de
all wallet dependencies merged to single static lib
2016-06-23 16:01:33 +03:00
Ilya Kitaev
64348a2d11
WalletListener::moneySpent test
2016-06-23 16:01:33 +03:00
Ilya Kitaev
060bb62e29
WalletListener::moneySpent(), WalletListener::moneyReceived()
2016-06-23 16:01:33 +03:00
Ilya Kitaev
214014c048
i_wallet_callback: virtual dtor
2016-06-23 16:01:33 +03:00
Ilya Kitaev
374577018d
started WalletListener
2016-06-23 16:01:33 +03:00
Ilya Kitaev
e6fdd5dd10
TransactionHistory continued
2016-06-23 16:01:26 +03:00
Ilya Kitaev
3dd4b4ccf9
merged with upstream
2016-06-23 15:50:40 +03:00
Ilya Kitaev
d500272fa8
Wallet API : transaction history in progress
2016-06-23 15:50:33 +03:00
Ilya Kitaev
663ed04eb8
transaction history api in progress
2016-06-23 15:50:17 +03:00
Ilya Kitaev
12345d382c
api implementation splitted over separate files
2016-06-23 15:50:17 +03:00
Ilya Kitaev
60508e6bae
TransactionInfo / TransactionHistory APIs design
2016-06-23 15:50:17 +03:00
Ilya Kitaev
951f3b5d83
Wallet::createTransaction API introduced
...
Transaction API continued
TODOs for Transaction/Transfer interface
2016-06-23 15:49:54 +03:00
Ilya Kitaev
7c51227f88
Wallet::transfer in progress
2016-06-23 15:49:36 +03:00
Ilya Kitaev
e04c67ac4c
Wallet::refresh + tests
2016-06-23 15:49:36 +03:00
Ilya Kitaev
9cdf0b7d7f
"testnet" is default parameter
2016-06-23 15:49:36 +03:00
Ilya Kitaev
caf0e02787
testnet option, Wallet::balance(), Wallet::unlockedBalance()
2016-06-23 15:49:22 +03:00
Ilya Kitaev
8df820b301
- testnet option added to api;
2016-06-23 15:49:07 +03:00
Ilya Kitaev
94eaeb50b2
wallet2::store() implemented within wallet2::store_to
2016-06-23 15:40:48 +03:00
moneromooo-monero
945c272f6c
wallet: add a fee multiplier
...
Fee can now be multiplied by 2 or 3, if users want to give
priority to their transactions. There are only three levels
to avoid too much fingerprinting. Default is 1 (minimum fee).
The default multiplier can be set by "set fee-multiplier X".
2016-06-22 22:21:30 +01:00
Ilya Kitaev
4e5521d87d
PendingTransactionImpl: pointer->reference
2016-06-22 15:50:59 +03:00
Ilya Kitaev
7b7cf21644
commented regex
2016-06-22 15:06:19 +03:00
Ilya Kitaev
eec0f57d60
Typo fixed
2016-06-22 14:37:53 +03:00
Ilya Kitaev
f1c4a376af
Wallet::createTransaction: added mixin_count param
2016-06-20 22:56:30 +03:00
moneromooo-monero
5dc09f2666
wallet_rpc_server: fix some string values being returned between <>
2016-06-19 17:52:46 +01:00
Ilya Kitaev
3318addafa
double/string to monero integer convertion methods
2016-06-16 16:42:33 +03:00
Ilya Kitaev
3ac20a46b3
wallet::default_mixin exposed to public interface as
...
Wallet::setDefaultMixin, Wallet::defaultMixin;
wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-10 13:52:10 +03:00
Ilya Kitaev
c554055ce4
Wallet::filename, Wallet::keysFilename, tests for move wallet
2016-06-10 12:51:09 +03:00
Ilya Kitaev
8f9d98b3e0
removed unused "using"
2016-06-03 16:56:13 +03:00
Ilya Kitaev
2facbe77e4
Wallet API : WalletManager::findWallets() added
2016-06-03 14:52:58 +03:00
Ilya Kitaev
bc4584c1ff
Merge remote-tracking branch 'upstream/master'
2016-05-27 11:33:08 +03:00
Ilya Kitaev
4327548915
installing wallet_api header
2016-05-27 10:58:07 +03:00
Ilya Kitaev
d43ad22595
all wallet dependencies merged to single static lib
2016-05-27 10:00:01 +03:00
Riccardo Spagni
ae205020f6
Merge pull request #827
...
f1e70d1
Only log 1/N skipped blocks (Howard Chu)
cebb97c
Move refresh height to keys file from cache file (Howard Chu)
590c439
Make fast_refresh interruptible (Howard Chu)
687855d
Set refresh height earlier (Howard Chu)
2fb00c0
Fix 19fe8ae3ef
(Howard Chu)
2016-05-17 19:04:41 +02:00
Ilya Kitaev
40087a745f
WalletListener::moneySpent test
2016-05-16 13:11:44 +03:00
Ilya Kitaev
27d86b73c6
WalletListener::moneySpent(), WalletListener::moneyReceived()
2016-05-13 16:25:31 +03:00
Ilya Kitaev
ff52c67aa9
i_wallet_callback: virtual dtor
2016-05-13 12:59:29 +03:00
Ilya Kitaev
2d799097ca
Merge remote-tracking branch 'upstream/master'
2016-05-12 15:14:30 +03:00
Ilya Kitaev
5dbd2b8fc3
started WalletListener
2016-05-05 22:24:00 +03:00
Howard Chu
f1e70d15ca
Only log 1/N skipped blocks
2016-04-29 16:50:51 +01:00
Howard Chu
cebb97c913
Move refresh height to keys file from cache file
2016-04-29 15:33:28 +01:00
Howard Chu
590c43988c
Make fast_refresh interruptible
2016-04-29 15:33:28 +01:00
Ilya Kitaev
93119344ec
TransactionHistory continued
2016-04-29 16:26:14 +03:00
Riccardo Spagni
5b734c2a3a
Merge pull request #825
...
513a658
add a --max-concurrency flag (moneromooo-monero)
2016-04-29 10:43:48 +02:00
moneromooo-monero
513a658c87
add a --max-concurrency flag
...
It sets the max number of threads to use for a parallel job.
This is different that the number of total threads, since monero
binaries typically start a lot of them.
2016-04-28 20:33:59 +01:00
moneromooo-monero
09dddf281a
wallet: add a filter_by_height field to get_transfers
...
It allows a simple get_transfers (with default 0 min_height and
max_height) to return all transactions, instead of the unexpected
set of txes in block 0, which is probably none at all.
2016-04-27 23:43:39 +01:00
moneromooo-monero
48ab3f93ff
wallet: add get_transfers rpc call
...
Allows getting in, out, pending, and failed transfers, similarly
to the show_transfers command.
2016-04-26 22:39:52 +01:00
moneromooo-monero
7baed9bd89
wallet: allow attaching notes to txids
2016-04-26 19:07:33 +01:00
moneromooo-monero
ce6f8a6324
wallet: add GMT timestamps to transfers/payments
2016-04-26 19:07:25 +01:00
Riccardo Spagni
714dcc2866
Merge pull request #815
...
b0850a9
wallet: add a new sweep_all command and RPC command (moneromooo-monero)
2016-04-26 18:08:09 +02:00
Riccardo Spagni
7098ad6804
Merge pull request #814
...
68cbe15
modified: src/wallet/wallet2.cpp modified: src/wallet/wallet2.h (awfulcrawler)
4b325bd
modified: src/simplewallet/simplewallet.cpp modified: src/wallet/wallet2.cpp modified: src/wallet/wallet2.h (awfulcrawler)
2016-04-26 18:04:00 +02:00
Riccardo Spagni
0922ae2b43
Merge pull request #811
...
672162d
tests: fix compile failure on wallet2::transfer (moneromooo-monero)
b0c18ef
wallet2: move output selection api public (moneromooo-monero)
2016-04-26 18:02:26 +02:00
Ilya Kitaev
566166aafd
merged with upstream
2016-04-26 13:46:20 +03:00
Ilya Kitaev
dce5374660
Merge remote-tracking branch 'upstream/master' into develop
2016-04-26 11:08:40 +03:00
Ilya Kitaev
53a97bdcd3
Wallet API: transaction history in progress
2016-04-22 13:33:09 +03:00
Ilya Kitaev
02c9df5de2
Wallet API : transaction history in progress
2016-04-22 13:21:08 +03:00
Ilya Kitaev
a213887476
transaction history api in progress
2016-04-20 13:33:54 +03:00
Ilya Kitaev
b6aaf53a60
transaction history api in progress
2016-04-20 13:17:27 +03:00
Ilya Kitaev
f83f3cbd96
api implementation splitted over separate files
2016-04-20 13:01:00 +03:00
moneromooo-monero
b0850a9bea
wallet: add a new sweep_all command and RPC command
...
This sends all outputs in a wallet to a given address, alleviating
the difficulty people have had trying to send all monero but
being left with some small amount left.
2016-04-19 21:20:27 +01:00
Ilya Kitaev
4e1c2dc365
TransactionInfo / TransactionHistory APIs design
2016-04-19 12:25:03 +03:00
awfulcrawler
68cbe1579e
modified: src/wallet/wallet2.cpp
...
modified: src/wallet/wallet2.h
Removed working comments
2016-04-18 20:20:31 +12:00
awfulcrawler
4b325bdb66
modified: src/simplewallet/simplewallet.cpp
...
modified: src/wallet/wallet2.cpp
modified: src/wallet/wallet2.h
Update to fix unconfirmed balance and give a slightly more verbose and informative confirmation message for transfers
2016-04-18 14:57:47 +12:00
Howard Chu
b7140daea2
Add GET_HASHES_FAST rpc, use it in wallet
...
When m_refresh_from_block_height has been set, only hashes will be
retrieved up to that height, instead of full blocks. The same will
be done for "refresh <height>" when the specified height is beyond
the current local blockchain.
2016-04-17 15:25:46 +01:00
moneromooo-monero
b0c18ef9cd
wallet2: move output selection api public
2016-04-17 11:20:44 +01:00
Riccardo Spagni
8f78f1407e
Merge pull request #784
...
087373e
Fix potential race with parallel processing of txes/signatures/blocks (moneromooo-monero)
2016-04-14 16:25:53 +09:00
Riccardo Spagni
6bfb8799c3
Merge pull request #783
...
48d0747
wallet: better output selection for transfer/transfer_new (moneromooo-monero)
2016-04-14 16:25:38 +09:00
Ilya Kitaev
1774d9574b
TODOs for Transaction/Transfer interface
2016-04-12 22:30:20 +03:00
Ilya Kitaev
d97e9ef8a5
Transaction API continued
2016-04-06 13:56:57 +03:00
moneromooo-monero
5c9dd23b1c
rpc: add a do_not_relay boolean to tx submission
...
Just to make it easier
2016-04-05 20:15:54 +01:00
Ilya Kitaev
079fbd3d42
Wallet::createTransaction API introduced
2016-04-05 15:24:44 +03:00
Ilya Kitaev
ee5bb17f26
Wallet::transfer() continued
2016-04-04 14:56:17 +03:00
Ilya Kitaev
c37c856d6d
Wallet::transfer in progress
2016-04-03 14:34:38 +03:00
moneromooo-monero
087373eccf
Fix potential race with parallel processing of txes/signatures/blocks
2016-04-02 14:20:51 +01:00
moneromooo-monero
48d0747d00
wallet: better output selection for transfer/transfer_new
...
This now requests the set of outputs that can be mixed first,
to avoid trying non dust but unmixable outputs, which we know
will fail.
2016-04-02 14:17:02 +01:00
Riccardo Spagni
4ac6bdbb3f
Merge pull request #769
...
b4eada9
wallet: make load_keys check types when loading JSON (moneromooo-monero)
3e55725
wallet: make the JSON reading type safe (moneromooo-monero)
f8d05f3
common: new json_util.h (moneromooo-monero)
2016-04-02 12:02:49 +09:00
Riccardo Spagni
a38ad63f8f
Merge pull request #767
...
24b3e90
Convey tx verification failure reasons to the RPC client (moneromooo-monero)
2016-04-02 12:02:07 +09:00
Ilya Kitaev
830c19c934
Wallet::refresh + tests
2016-03-31 16:38:57 +03:00
Ilya Kitaev
1ae9cdc6bf
"testnet" is default parameter
2016-03-31 15:39:28 +03:00
Ilya Kitaev
2157a9ac48
testnet option, Wallet::balance(), Wallet::unlockedBalance()
2016-03-31 12:48:41 +03:00
Ilya Kitaev
df6026182a
Merge remote-tracking branch 'upstream/master'
2016-03-31 12:01:19 +03:00
moneromooo-monero
878ab5d896
wallet: fix --generate-from-keys saving as watch only
2016-03-28 16:46:37 +01:00
moneromooo-monero
b4eada907c
wallet: make load_keys check types when loading JSON
2016-03-27 23:39:34 +01:00
moneromooo-monero
24b3e9007a
Convey tx verification failure reasons to the RPC client
...
This allows appropriate action to be taken, like displaying
the reason to the user.
Do just that in simplewallet, which should help a lot in
determining why users fail to send.
Also make it so a tx which is accepted but not relayed is
seen as a success rather than a failure.
2016-03-27 12:37:18 +01:00
moneromooo-monero
25672d3f10
wallet: pass std::function by const ref, not value
...
Because we can.
2016-03-26 23:32:45 +00:00
moneromooo-monero
0be6e08dd0
wallet: do not leak owned amounts to the daemon unless --trusted-daemon
...
This will be slower, though more private.
New trusted_daemon parameter to the matching RPC call, false by default.
2016-03-26 23:29:29 +00:00
moneromooo-monero
12146daeed
wallet: change sweep_dust to sweep_unmixable
...
With the change in mixin rules for v2, the "annoying" outputs are
slightly changed. There is high correlation between dust and
unmixable, but no equivalence.
2016-03-26 21:15:47 +00:00
moneromooo-monero
f9a2fd2ff5
wallet: handle rare case where fee adjustment can bump to the next kB
...
It resulted in a tx being sent with too low a fee, and thus rejected.
2016-03-26 11:51:58 +00:00
moneromooo-monero
f26651ab8a
wallet: factor fee calculation
2016-03-26 11:44:43 +00:00
Ilya Kitaev
8790904cf9
- testnet option added to api;
2016-03-25 17:06:30 +03:00
moneromooo-monero
a2e378b91b
wallet: add a --generate-from-json flag
...
It takes a filename containing JSON data to generate a wallet.
The following fields are valid:
version: integer, should be 1
filename: string, path/filename for the newly created wallet
scan_from_height: 64 bit unsigned integer, optional
password: string, optional
viewkey: string, hex representation
spendkey: string, hex representation
seed: string, optional, list of words separated by spaces
Either seed or private keys should be given. If using private
keys, the spend key may be omitted (the wallet will not be
able to spend, but will see incoming transactions).
If scan_from_height is given, blocks below this height will not
be checked for transactions as an optimization.
2016-03-25 00:56:11 +00:00
Ilya Kitaev
2cce32995b
wallet2::store() implemented within wallet2::store_to
2016-03-21 16:17:03 +03:00
moneromooo-monero
f7301c3563
Revert "Print stack trace upon exceptions"
...
Ain't nobody got time for link/cmake skullduggery.
This reverts commit fff238ec94
.
2016-03-21 10:12:23 +00:00
moneromooo-monero
fff238ec94
Print stack trace upon exceptions
...
Useful for debugging users' logs
2016-03-19 21:48:36 +00:00
Ilya Kitaev
62606f11f5
Wallet::store_to(path, password) implemented;
2016-03-16 14:29:06 +03:00
Ilya Kitaev
19fcc74912
Wallet::address implemented
2016-03-16 14:29:06 +03:00
Ilya Kitaev
180ac6e438
WalletManager::recoveryWallet implemented
2016-03-16 14:29:06 +03:00
Ilya Kitaev
5a4f099540
Wallet::setPassword() method for wallet2_api
2016-03-16 14:29:06 +03:00
Ilya Kitaev
57d7ffc4d6
changes in wallet2_api + implemented WalletManager::openWallet
2016-03-16 14:27:57 +03:00
Ilya Kitaev
f1f9279d90
get_seed() included to interface
2016-03-16 14:27:57 +03:00
Ilya Kitaev
930bed7074
tests for wallet2_api
2016-03-16 14:27:57 +03:00
Ilya Kitaev
318660dd89
wallet2 public api. initial commit
2016-03-16 14:27:57 +03:00
moneromooo-monero
8bc1bd6b65
wallet: use minimum mixin when RPC asks for too low mixin
...
After the fork, normal transfer functions called via RPC
use the minimum mixin 2 if 0 or 1 is requested. While the
incoming transaction may be valid (eg, it has an unmixable
and at most a mixable input), it is a simple way to make
sure RPC users can't get a seemingly random accept/reject
behavior if they don't update their requested mixin.
2016-03-11 21:32:16 +00:00
moneromooo-monero
31d2e0f84d
wallet_rpc_server: make use_fork_rules public
...
We will need it in the wallet RPC server
2016-03-11 21:31:50 +00:00
Howard Chu
b937a2c915
Use boost::thread instead of std::thread
...
and all other associated IPC
2016-03-11 15:09:50 +00:00
luigi1111
e2b7e55be6
get_payments short ID
...
Add support for short/integrated/encrypted IDs to get_payments RPC
2016-03-05 13:30:48 -06:00
moneromooo-monero
4513b4cd2b
simplewallet: add a new --restore-from-keys option
...
It is similar in use to --restore-from-view-key, but also expects
a spend private key.
Requested by luigi1112, and useful to restore MyMonero wallets.
2016-02-22 22:10:55 +00:00
moneromooo-monero
8f09b71b9b
wallet: clear missing data on rescan_bc
2016-02-15 20:51:30 +00:00
moneromooo-monero
c7b96b91ed
wallet: check a key image isn't already present when adding one
...
If it is, it points to reuse of a tx key, which isn't meant to happen.
If it does, a key image collision means that only one of those
outputs is spendable, so the wallet selects the larger amount,
unless that output was spent already.
This causes a discrepancy betewen reported received inputs and
payment total.
Since tx keys are 256 bits, this should never happen except if
done on purpose, or if a sender uses a bad PRNG.
2016-02-05 16:24:23 +00:00
Riccardo Spagni
616df496e9
Revert "Merge pull request #632 "
...
This reverts commit 58f890652e
, reversing
changes made to 39d73d2a27
.
2016-01-31 15:49:11 +02:00
Riccardo Spagni
569316aea3
Merge pull request #634
...
7fc6fa3
wallet: forbid dust altogether in output selection where appropriate (moneromooo-monero)
5e1a739
blockchain: log number of outputs available for a new tx (moneromooo-monero)
2016-01-31 15:21:45 +02:00
Riccardo Spagni
8d976a0683
Merge pull request #633
...
80882ac
wallet: guard against exception in process_blocks (moneromooo-monero)
2016-01-31 15:21:13 +02:00
Riccardo Spagni
58f890652e
Merge pull request #632
...
2cf8b32
wallet: guard against exception in process_blocks (moneromooo-monero)
2016-01-31 15:20:47 +02:00
moneromooo-monero
7fc6fa3fa2
wallet: forbid dust altogether in output selection where appropriate
2016-01-31 11:03:09 +00:00
moneromooo-monero
80882ac6dd
wallet: guard against exception in process_blocks
...
If an exception occurs, the thread needs to be joined, or it
will be deleted while still live, and terminate the process.
2016-01-30 23:52:43 +00:00
moneromooo-monero
2cf8b32229
wallet: guard against exception in process_blocks
...
If an exception occurs, the thread needs to be joined, or it
will be deleted while still live, and terminate the process.
2016-01-30 23:34:23 +00:00
moneromooo-monero
b11539fda7
wallet: detect and handle failed outgoing transfers
...
When a transaction is not found in the pool anymore, it is marked
as failed, and displayed as such in show_transfers.
2016-01-29 19:44:48 +00:00
moneromooo-monero
3b1d7e03fc
Fix V1/V2 use of hard fork related parameters
...
Some of it uses hardcoded height, which will need some thinking
for next (voted upon) fork.
2016-01-29 17:21:11 +00:00
moneromooo-monero
15d9ac8abd
wallet2: update spent comparison now that we have two spent states
2016-01-24 19:55:18 +00:00
moneromooo-monero
67bbb56a6c
wallet2: decide at runtime which upper tx size to use
...
The value will be different depending on whether we've reached
the first hard fork, which allows a larger size, or not.
This fixes transactions being rejected by the daemon on mainnet
where the first hard fork is not yet active.
2016-01-10 11:56:13 +00:00
moneromooo-monero
a44d94d390
rpc: is_key_image_spent now checks the tx pool too
2016-01-05 22:16:24 +00:00
Riccardo Spagni
ac7d27d4f9
Merge pull request #584
...
5c67c48
wallet: don't forget to close the file after storing cache (moneromooo-monero)
2015-12-31 12:43:15 +02:00
moneromooo-monero
5c67c486e8
wallet: don't forget to close the file after storing cache
...
Also add some flags to open, as epee's save_string_to_file does,
to truncate file, etc.
2015-12-31 10:34:17 +00:00
Riccardo Spagni
de03926850
updated copyright year
2015-12-31 08:39:56 +02:00
moneromooo-monero
bc8a52efd8
wallet: add a rescan_bc command and rescan_blockchain RPC
...
Blockchain hashes and key images are flushed, and blocks are
pulled anew from the daemon.
The console command is shortened to match bc_height.
This should make it a lot easier on users who are currently
told to remove this particular cache file but keep the keys
one, etc, etc.
2015-12-30 15:06:03 +00:00
moneromooo-monero
92ef6b54fe
wallet: protect against exceptions in the block pull thread
...
This can happen when the daemon exits, which would also cause
the wallet to crash via unhandled exception
2015-12-30 12:43:15 +00:00
Riccardo Spagni
32a26332f8
no longer need to pass the size to rapidjson
2015-12-30 12:25:29 +02:00
Riccardo Spagni
9e45eadb98
Merge pull request #575
...
61befc2
wallet: store cache to file without unnecessary memory buffer (moneromooo-monero)
2015-12-30 09:40:33 +02:00
moneromooo-monero
61befc2293
wallet: store cache to file without unnecessary memory buffer
2015-12-29 15:46:37 +00:00
moneromooo-monero
61ce8d6fde
wallet_rpc_server: exit async, so we reply to stop_wallet RPC
...
Reported by saddam
2015-12-28 23:38:30 +00:00
moneromooo-monero
9847db6920
wallet: do not return error if incoming_transfers finds none
...
reported by saddam
2015-12-28 20:27:06 +00:00
Riccardo Spagni
719a6a89c6
Merge pull request #557
...
791e7fb
changed height to uint64_t (Brendan Telzrow)
4cd7913
added RPC wallet command getheight (Brendan Telzrow)
2015-12-25 21:48:25 +02:00
Riccardo Spagni
47ca455ea8
fixed missing parenthesis
2015-12-24 18:11:11 +02:00
Lex Kalinkin
a004130a04
fix for 'failed to generate new wallet: failed to save file' error during wallet generation
2015-12-24 16:12:42 +02:00
Brendan Telzrow
791e7fb263
changed height to uint64_t
2015-12-23 13:10:59 -06:00
Brendan Telzrow
4cd7913a04
added RPC wallet command getheight
2015-12-23 10:04:04 -06:00
Riccardo Spagni
c41f785d56
Merge pull request #550
...
8c93608
wallet: fix load/save versioning bug for recently added tx data (moneromooo-monero)
2015-12-22 10:27:44 +02:00
moneromooo-monero
8c93608f2f
wallet: fix load/save versioning bug for recently added tx data
...
The version number passed to those data's serialize function
was always 0, not the wallet's version as I had expected.
A version number now exists for these structures so they're
versioned correctly.
2015-12-20 14:03:15 +00:00
moneromooo-monero
8ea7af1ba3
Allow the wallet to access hard fork information
...
And make it change behavior slightly when close/after first hard fork
2015-12-19 14:52:30 +00:00
Riccardo Spagni
5d33b43d8d
Merge pull request #544
...
01e92eb
replace std::auto_ptr with std::unique_ptr (moneromooo-monero)
2015-12-18 12:18:00 +02:00
moneromooo-monero
01e92ebdb0
replace std::auto_ptr with std::unique_ptr
...
The former is obsolete
2015-12-17 22:47:13 +00:00
moneromooo-monero
9b4f8b4b7e
wallet: save to a temporary file, then rename
...
This should avoid most of wallet cache corruption cases
2015-12-17 22:32:54 +00:00
moneromooo-monero
c6cfe0f26d
wallet: make the wallet refresh type a wallet setting
...
instead of a command line setting. It makes sense that is is
a long lived setting.
2015-12-05 21:44:25 +00:00
moneromooo-monero
fef2493617
wallet: default auto-refresh to true for old wallets
2015-12-05 21:10:12 +00:00
moneromooo-monero
1965fce402
wallet: add a stop_wallet RPC call
2015-12-05 14:53:37 +00:00
moneromooo-monero
41029d6d74
wallet2: default auto-refresh to true for preexisting wallets
2015-11-30 11:08:15 +00:00
moneromooo-monero
d68a63e404
wallet: cancellable refresh
...
^C while in manual refresh will cancel the refresh, since that's
often an annoying thing to have to wait for. Also, a manual refresh
command will interrupt any running background refresh and take
over, rather than wait for the background refresh to be done, and
look to be hanging.
2015-11-29 23:24:56 +00:00
Riccardo Spagni
5275db0786
Merge pull request #509
...
3030e3e
wallet2: remove confirmed transactions from detached blocks (moneromooo-monero)
2015-11-30 00:23:58 +02:00
Riccardo Spagni
bc1bc4adb2
Merge pull request #507
...
62e49a5
wallet: optional automatic refresh from the daemon (moneromooo-monero)
2015-11-30 00:19:47 +02:00
moneromooo-monero
3030e3ecff
wallet2: remove confirmed transactions from detached blocks
2015-11-29 12:07:54 +00:00
moneromooo-monero
9ee48e9071
wallet2: speed up wallet refresh for large miners
2015-11-28 21:15:07 +00:00
moneromooo-monero
62e49a5f02
wallet: optional automatic refresh from the daemon
...
The daemon will be polled every 90 seconds for new blocks.
It is enabled by default, and can be turned on/off with
set auto-refresh 1 and set auto-refresh 0 in the wallet.
2015-11-28 12:41:06 +00:00
moneromooo-monero
490590306e
wallet2: parallelize pulling blocks and processing them on refresh
...
This needed locking the use of m_http_client, to avoid collisions
in I/O.
2015-11-27 17:25:15 +00:00
moneromooo-monero
d0eaf1d4e1
wallet2: maintain the short chain manually when refreshing
2015-11-27 00:35:41 +00:00
moneromooo-monero
a4e9506069
wallet2: split pull blocks between pulling and processing
2015-11-27 00:03:43 +00:00
moneromooo-monero
9b945f5211
wallet: make the refresh optimizations selectable via command line
...
Take the opportunity to add a no-coinbase case too, for even faster
sync when an address is known to never have mined to.
2015-11-22 19:03:10 +00:00
moneromooo-monero
d2c031332e
wallet: speedup refresh from daemon
...
Assume the whole of a coinbase goes to the same address (so that
if the first output isn't for us, none of it is), and only look
for payment id when we received something in the transaction.
2015-11-22 18:07:19 +00:00
moneromooo-monero
ea707c779c
wallet2: minor cleanup
...
- use std::vector::std::deque to not leak when exceptions happen
- use std::unique_ptr instead of the deprecated std::auto_ptr
2015-11-22 18:07:14 +00:00
moneromooo-monero
55a2da7475
wallet2: speedup refresh a bit
...
Use the NoodleDoodle threading technique to speedup a couple
code blocks on the main path when refreshing blocks without
any transactions for us.
2015-11-22 18:07:07 +00:00
moneromooo-monero
db1fb66e66
wallet: storing outgoing tx info now defaults to enabled
...
The info is stored encrypted, and is pretty useful, often after
the fact.
2015-11-22 12:40:03 +00:00
moneromooo-monero
9156ba3a3c
wallet: rename store-tx-keys to store-tx-info
...
With backward compatibility
2015-11-22 12:26:27 +00:00
moneromooo-monero
b3d4d41e29
wallet: improve show_transfers
...
More information is now saved and displayed
2015-11-22 12:13:59 +00:00
moneromooo-monero
725ae4e710
wallet: use incoming blocks to keep track of payments too
2015-11-21 23:22:15 +00:00
moneromooo-monero
3f611bc3dc
wallet: track outgoing payments and add a show_transfers command
...
It's a user friendly display of incoming and outgoing transfers,
listed by height, within an optional height range.
2015-11-15 21:59:40 +00:00
moneromooo-monero
c7dc6ef8e8
simplewallet: add a set default-mixin command
...
The default default mixin is 4. It can now be changed per wallet.
2015-10-30 21:16:51 +00:00
moneromooo-monero
5f8baba26e
wallet2: fix CLANG compile error
2015-10-30 14:35:55 +00:00
moneromooo-monero
6df4e67cd2
Fix a possibly-unused warning, and rationalize types
2015-10-27 09:05:07 +00:00
moneromooo-monero
ecbb732faa
Fix leak on real output when using a very recent output
...
The wallet and the daemon applied different height considerations
when selecting outputs to use. This can leak information on which
input in a ring signature is the real one.
Found and originally fixed by smooth on Aeon.
2015-10-25 16:34:57 +00:00
moneromooo-monero
5ea2f936ae
wallet2: really include non canonical outputs in dust sweep
2015-10-14 00:58:08 +01:00
moneromooo-monero
ac90d488e7
from hard fork 2, all outputs must be decomposed
...
The wallet decomposes fully as of now too.
2015-10-11 13:02:55 +01:00
moneromooo-monero
5dc53c2cb0
wallet: use mutex protected random generation api
2015-08-26 08:28:58 +01:00