aboutsummaryrefslogtreecommitdiff
path: root/src/wallet (follow)
AgeCommit message (Collapse)AuthorFilesLines
2016-09-01Merge pull request #1033Riccardo Spagni1-1/+1
4d17949 wallet_merged: ringct added to dependencies (Ilya Kitaev)
2016-09-01wallet_merged: ringct added to dependenciesIlya Kitaev1-1/+1
2016-09-01Re-add s to rangesigsluigi11111-2/+2
Whoops.
2016-09-01Fix some rct tx size calculationsluigi11111-9/+6
Some variance is still expected
2016-09-01Merge pull request #1027Riccardo Spagni1-0/+2
85dc0ce wallet: sanity check on histogram response (moneromooo-monero)
2016-09-01Merge pull request #1016Riccardo Spagni1-1/+3
3112e24 wallet: interpret 0 fee multiplier as default for sweep_all too (moneromooo-monero)
2016-09-01Merge pull request #1007Riccardo Spagni1-2/+5
1de812a cmake: merge libs via virtual object libraries (redfish) a7498ad cmake: comply with the new policy CMP0026 (redfish)
2016-09-01wallet: sanity check on histogram responsemoneromooo-monero1-0/+2
2016-08-30cmake: merge libs via virtual object librariesredfish1-2/+5
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-30wallet: interpret 0 fee multiplier as default for sweep_all toomoneromooo-monero1-1/+3
2016-08-29wallet: fix not finding enough rct fake outputsmoneromooo-monero1-3/+8
If picking coinbase outputs, those are locked for a longer time than other outputs, so we ask for more of those
2016-08-29wallet_rpc_server: return payment id in make_integrated_address RPCmoneromooo-monero2-0/+3
It is useful, especially when requesting a random one
2016-08-28wallet: fix some "may be used uninitialized" warningsmoneromooo-monero1-16/+15
The compiler can't always work out the _found booleans are set iff the value is initialized.
2016-08-28wallet: do not generate 0 changemoneromooo-monero1-3/+6
2016-08-28wallet: do not ask for duplicate histogramsmoneromooo-monero1-0/+3
2016-08-28wallet: transfer_selected_rct now also selects fake outsmoneromooo-monero2-171/+90
2016-08-28New "Halfway RingCT" outputs for coinbase transactionsmoneromooo-monero2-2/+34
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-28rct amount key modified as per luigi1111's recommendationsmoneromooo-monero4-61/+20
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-28rct: change the simple flag to a typemoneromooo-monero1-2/+8
for future expansion
2016-08-28wallet: do not store signatures in the wallet cachemoneromooo-monero4-28/+71
Saves some substantial space. Also avoid calculating tx hashes we don't need.
2016-08-28wallet2: factor m_spent changesmoneromooo-monero2-26/+31
Makes it easier to track what is going on.
2016-08-28wallet: always use new algorithm for RPC transfersmoneromooo-monero2-7/+2
This ensures we get rct transactions when appropriate
2016-08-28wallet: use the prefered rct case only when enough rct outs existmoneromooo-monero2-1/+27
2016-08-28wallet: do not try to use rct txes a few blocks before the forkmoneromooo-monero3-22/+31
2016-08-28change fork settings to allow pre-rct txes for one more fork cyclemoneromooo-monero1-2/+2
2016-08-28rct: make the amount key derivable by a third party with the tx keymoneromooo-monero2-17/+34
Scheme design from luigi1114.
2016-08-28rct: do not serialize public keys in outPkmoneromooo-monero1-3/+3
They can be reconstructed from vout
2016-08-28wallet2_api: zero amounts are now allowed with rctmoneromooo-monero1-6/+0
2016-08-28wallet2_api: update on_money_{received,spent} prototypes for rct changesmoneromooo-monero1-4/+2
2016-08-28rpc: send global indices along with blocks/transacions on refreshmoneromooo-monero2-35/+42
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-28wallet: better tx input selectionmoneromooo-monero2-29/+77
We try to avoid related inputs, when possible
2016-08-28wallet: handle 0 change properlymoneromooo-monero1-7/+8
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-28port get_tx_key/check_tx_key to rctmoneromooo-monero4-7/+101
2016-08-28integrate simple rct apimoneromooo-monero1-6/+24
2016-08-28wallet: rct specific output selectionmoneromooo-monero2-3/+125
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-28wallet: make sweep_all work with rct txes toomoneromooo-monero1-7/+21
2016-08-28wallet: factor transfer_rct code with transfer codemoneromooo-monero2-254/+40
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-28ringct: do not serialize what can be reconstructedmoneromooo-monero1-5/+8
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-28wallet: update spent status when an accepted tx disappearsmoneromooo-monero1-0/+19
2016-08-28wallet: reset output spent status on blockchain reorgmoneromooo-monero2-11/+61
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-28add rct to the protocolmoneromooo-monero3-54/+659
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-26Merge pull request #978Riccardo Spagni2-4/+12
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-23libwallet_api: Wallet::amountFromString fixedIlya Kitaev1-1/+1
2016-08-23libwallet_api: helper method to return maximumAllowedAmountIlya Kitaev2-0/+6
2016-08-22Merge pull request #970Riccardo Spagni1-0/+3
25f529a wallet: store key images after importing them (moneromooo-monero)
2016-08-22libwallet_api: do not store wallet on close if status is not okIlya Kitaev1-3/+5
2016-08-17wallet: store key images after importing themmoneromooo-monero1-0/+3
It avoids rescan_spent resetting spent status, for example.
2016-08-17wallet: fix build on Mac and Windows (missing include)moneromooo-monero1-0/+1
Reported by RaskaRuby, tested by iDunk5400.
2016-08-11Merge pull request #948Riccardo Spagni4-57/+183
11dc091 Fake outs set is now decided by the wallet (moneromooo-monero) 1593553 new unlocked parameter to output_histogram (moneromooo-monero)
2016-08-11Fake outs set is now decided by the walletmoneromooo-monero4-52/+177
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-04wallet2: if importing key images fails, print failure indexmoneromooo-monero1-1/+2
2016-08-01new unlocked parameter to output_histogrammoneromooo-monero2-5/+6
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-07-26Merge pull request #928Riccardo Spagni6-1/+255
ebf97d7 wallet: new {ex,im}port_key_images commands and RPC calls (moneromooo-monero)
2016-07-24wallet: new {ex,im}port_key_images commands and RPC callsmoneromooo-monero6-1/+255
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-23cmake: wallet: libunbound is not always staticredfish1-22/+4
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-23Merge pull request #916Riccardo Spagni4-52/+215
b89b963 wallet: add unconfirmed incoming txes from the txpool (moneromooo-monero)
2016-07-23Merge pull request #915Riccardo Spagni5-30/+251
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-20wallet: add unconfirmed incoming txes from the txpoolmoneromooo-monero4-52/+215
Shown in show_transfers simplewallet command, and get_transfers RPC command, if req.pool is true.
2016-07-20Merge pull request #914Riccardo Spagni1-2/+2
87b1153 wallet2_api: use uint64_t for amounts (moneromooo-monero)
2016-07-20Merge pull request #902Riccardo Spagni2-9/+26
014f3a0 Add a daemon RPC version, and make simplewallet check it (moneromooo-monero)
2016-07-20Merge pull request #899Riccardo Spagni1-1/+8
a95a2cb wallet_rpc_server: add payment id from integrated addresses to extra (moneromooo-monero)
2016-07-19wallet: add command and RPC to sign/verify datamoneromooo-monero6-1/+125
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-18refreshing wallet even if error happenedIlya Kitaev2-6/+18
2016-07-18wallet_api: async init, Wallet::connected status, log levelIlya Kitaev4-18/+91
2016-07-18libwallet_api cmake: conditionally creating libwallet_merged2 only forIlya Kitaev2-9/+17
STATIC build
2016-07-18wallet_api: segfault on refresh fixedIlya Kitaev2-5/+9
2016-07-18WalletListener functionalityIlya Kitaev3-13/+105
2016-07-18hack to successfull linking for MSYS2Ilya Kitaev1-2/+6
2016-07-18Transaction fee multiplier aka priority integragedIlya Kitaev3-4/+25
2016-07-18Wallet::paymentIdValidIlya Kitaev2-0/+7
2016-07-17wallet2_api: use uint64_t for amountsmoneromooo-monero1-2/+2
2016-07-10Add a daemon RPC version, and make simplewallet check itmoneromooo-monero2-9/+26
If the version is different, simplewallet will refuse to use that daemon, unless --allow-mismatched-daemon-version is used.
2016-07-10wallet_rpc_server: add payment id from integrated addresses to extramoneromooo-monero1-1/+8
2016-07-07wallet2_api: make this build (smatch needs .str() for /=)moneromooo-monero1-1/+1
2016-07-06Merge pull request #878Riccardo Spagni5-27/+66
945c272 wallet: add a fee multiplier (moneromooo-monero)
2016-06-24CMake: GPL 'libutils' script removedIlya Kitaev1-2/+4
2016-06-23Merge branch 'master' of https://github.com/mbg033/bitmoneroIlya Kitaev4-12/+13
2016-06-23WalletManager::findWallets: searching by "keys" files instead ofIlya Kitaev1-5/+3
"address.txt" files
2016-06-23Wallet: payment id and integrated addressIlya Kitaev3-11/+68
2016-06-23PendingTransactionImpl: pointer->referenceIlya Kitaev2-4/+4
2016-06-23commented regexIlya Kitaev1-1/+1
2016-06-23Typo fixedIlya Kitaev1-1/+1
2016-06-23Wallet::createTransaction: added mixin_count paramIlya Kitaev3-10/+23
2016-06-23double/string to monero integer convertion methodsIlya Kitaev2-0/+19
2016-06-23wallet::default_mixin exposed to public interface asIlya Kitaev3-1/+22
Wallet::setDefaultMixin, Wallet::defaultMixin; wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-23Wallet::filename, Wallet::keysFilename, tests for move walletIlya Kitaev3-0/+29
2016-06-23removed unused "using"Ilya Kitaev1-1/+0
2016-06-23Wallet API : WalletManager::findWallets() addedIlya Kitaev4-4/+57
2016-06-23installing wallet_api headerIlya Kitaev1-2/+2
2016-06-23all wallet dependencies merged to single static libIlya Kitaev1-2/+15
2016-06-23WalletListener::moneySpent testIlya Kitaev2-2/+10
2016-06-23WalletListener::moneySpent(), WalletListener::moneyReceived()Ilya Kitaev2-2/+22
2016-06-23i_wallet_callback: virtual dtorIlya Kitaev1-0/+1
2016-06-23started WalletListenerIlya Kitaev3-1/+65
2016-06-23TransactionHistory continuedIlya Kitaev4-12/+103
2016-06-23merged with upstreamIlya Kitaev5-3/+106
2016-06-23Wallet API : transaction history in progressIlya Kitaev7-32/+87
2016-06-23transaction history api in progressIlya Kitaev7-16/+110
2016-06-23api implementation splitted over separate filesIlya Kitaev13-315/+710
2016-06-23TransactionInfo / TransactionHistory APIs designIlya Kitaev2-130/+188
2016-06-23Wallet::createTransaction API introducedIlya Kitaev2-132/+214
Transaction API continued TODOs for Transaction/Transfer interface
2016-06-23Wallet::transfer in progressIlya Kitaev2-2/+198
2016-06-23Wallet::refresh + testsIlya Kitaev2-0/+16
2016-06-23"testnet" is default parameterIlya Kitaev2-3/+11
2016-06-23testnet option, Wallet::balance(), Wallet::unlockedBalance()Ilya Kitaev2-6/+15
2016-06-23- testnet option added to api;Ilya Kitaev4-13/+54
2016-06-23wallet2::store() implemented within wallet2::store_toIlya Kitaev3-69/+62
2016-06-22wallet: add a fee multipliermoneromooo-monero5-27/+66
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-22PendingTransactionImpl: pointer->referenceIlya Kitaev2-4/+4
2016-06-22commented regexIlya Kitaev1-1/+1
2016-06-22Typo fixedIlya Kitaev1-1/+1
2016-06-20Wallet::createTransaction: added mixin_count paramIlya Kitaev3-10/+23
2016-06-19wallet_rpc_server: fix some string values being returned between <>moneromooo-monero1-10/+10
2016-06-16double/string to monero integer convertion methodsIlya Kitaev2-0/+19
2016-06-10wallet::default_mixin exposed to public interface asIlya Kitaev3-1/+22
Wallet::setDefaultMixin, Wallet::defaultMixin; wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-10Wallet::filename, Wallet::keysFilename, tests for move walletIlya Kitaev3-0/+29
2016-06-03removed unused "using"Ilya Kitaev1-1/+0
2016-06-03Wallet API : WalletManager::findWallets() addedIlya Kitaev4-4/+57
2016-05-27Merge remote-tracking branch 'upstream/master'Ilya Kitaev2-5/+15
2016-05-27installing wallet_api headerIlya Kitaev1-2/+2
2016-05-27all wallet dependencies merged to single static libIlya Kitaev1-2/+15
2016-05-17Merge pull request #827Riccardo Spagni2-5/+15
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 19fe8ae3ef1aa46ae8fdd4e4d6862510390ddab7 (Howard Chu)
2016-05-16WalletListener::moneySpent testIlya Kitaev2-2/+10
2016-05-13WalletListener::moneySpent(), WalletListener::moneyReceived()Ilya Kitaev2-2/+22
2016-05-13i_wallet_callback: virtual dtorIlya Kitaev1-0/+1
2016-05-12Merge remote-tracking branch 'upstream/master'Ilya Kitaev7-24/+664
2016-05-05started WalletListenerIlya Kitaev3-1/+65
2016-04-29Only log 1/N skipped blocksHoward Chu1-2/+4
2016-04-29Move refresh height to keys file from cache fileHoward Chu2-1/+8
2016-04-29Make fast_refresh interruptibleHoward Chu1-2/+3
2016-04-29TransactionHistory continuedIlya Kitaev4-12/+103
2016-04-29Merge pull request #825Riccardo Spagni1-2/+2
513a658 add a --max-concurrency flag (moneromooo-monero)
2016-04-28add a --max-concurrency flagmoneromooo-monero1-2/+2
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-27wallet: add a filter_by_height field to get_transfersmoneromooo-monero2-2/+12
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-26wallet: add get_transfers rpc callmoneromooo-monero3-0/+151
Allows getting in, out, pending, and failed transfers, similarly to the show_transfers command.
2016-04-26wallet: allow attaching notes to txidsmoneromooo-monero6-1/+130
2016-04-26wallet: add GMT timestamps to transfers/paymentsmoneromooo-monero2-11/+26
2016-04-26Merge pull request #815Riccardo Spagni5-0/+224
b0850a9 wallet: add a new sweep_all command and RPC command (moneromooo-monero)
2016-04-26Merge pull request #814Riccardo Spagni2-6/+21
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-26Merge pull request #811Riccardo Spagni1-4/+6
672162d tests: fix compile failure on wallet2::transfer (moneromooo-monero) b0c18ef wallet2: move output selection api public (moneromooo-monero)
2016-04-26merged with upstreamIlya Kitaev5-3/+106
2016-04-26Merge remote-tracking branch 'upstream/master' into developIlya Kitaev5-96/+107
2016-04-22Wallet API: transaction history in progressIlya Kitaev4-7/+15
2016-04-22Wallet API : transaction history in progressIlya Kitaev7-25/+72
2016-04-20transaction history api in progressIlya Kitaev2-0/+42
2016-04-20transaction history api in progressIlya Kitaev6-16/+68
2016-04-20api implementation splitted over separate filesIlya Kitaev13-315/+710
2016-04-19wallet: add a new sweep_all command and RPC commandmoneromooo-monero5-0/+224
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-19TransactionInfo / TransactionHistory APIs designIlya Kitaev2-130/+188
2016-04-18 modified: src/wallet/wallet2.cppawfulcrawler2-5/+6
modified: src/wallet/wallet2.h Removed working comments
2016-04-18 modified: src/simplewallet/simplewallet.cppawfulcrawler2-6/+20
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-17Add GET_HASHES_FAST rpc, use it in walletHoward Chu3-0/+94
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-17wallet2: move output selection api publicmoneromooo-monero1-4/+6
2016-04-14Merge pull request #784Riccardo Spagni1-0/+1
087373e Fix potential race with parallel processing of txes/signatures/blocks (moneromooo-monero)
2016-04-14Merge pull request #783Riccardo Spagni4-71/+58
48d0747 wallet: better output selection for transfer/transfer_new (moneromooo-monero)
2016-04-12TODOs for Transaction/Transfer interfaceIlya Kitaev2-19/+25
2016-04-06Transaction API continuedIlya Kitaev2-4/+21
2016-04-05rpc: add a do_not_relay boolean to tx submissionmoneromooo-monero1-0/+1
Just to make it easier
2016-04-05Wallet::createTransaction API introducedIlya Kitaev2-124/+183
2016-04-04Wallet::transfer() continuedIlya Kitaev2-6/+161
2016-04-03Wallet::transfer in progressIlya Kitaev2-1/+42
2016-04-02Fix potential race with parallel processing of txes/signatures/blocksmoneromooo-monero1-0/+1
2016-04-02wallet: better output selection for transfer/transfer_newmoneromooo-monero4-71/+58
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-02Merge pull request #769Riccardo Spagni2-23/+38
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-02Merge pull request #767Riccardo Spagni2-2/+9
24b3e90 Convey tx verification failure reasons to the RPC client (moneromooo-monero)
2016-03-31Wallet::refresh + testsIlya Kitaev2-0/+16
2016-03-31"testnet" is default parameterIlya Kitaev2-3/+11
2016-03-31testnet option, Wallet::balance(), Wallet::unlockedBalance()Ilya Kitaev2-6/+15
2016-03-31Merge remote-tracking branch 'upstream/master'Ilya Kitaev5-45/+134
2016-03-28wallet: fix --generate-from-keys saving as watch onlymoneromooo-monero1-1/+1
2016-03-27wallet: make load_keys check types when loading JSONmoneromooo-monero2-23/+38
2016-03-27Convey tx verification failure reasons to the RPC clientmoneromooo-monero2-2/+9
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-26wallet: pass std::function by const ref, not valuemoneromooo-monero2-2/+2
Because we can.
2016-03-26wallet: do not leak owned amounts to the daemon unless --trusted-daemonmoneromooo-monero4-7/+10
This will be slower, though more private. New trusted_daemon parameter to the matching RPC call, false by default.
2016-03-26wallet: change sweep_dust to sweep_unmixablemoneromooo-monero4-16/+106
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-26wallet: handle rare case where fee adjustment can bump to the next kBmoneromooo-monero1-2/+3
It resulted in a tx being sent with too low a fee, and thus rejected.
2016-03-26wallet: factor fee calculationmoneromooo-monero1-22/+11
2016-03-25- testnet option added to api;Ilya Kitaev4-13/+54
2016-03-25wallet: add a --generate-from-json flagmoneromooo-monero2-4/+10
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-21wallet2::store() implemented within wallet2::store_toIlya Kitaev3-69/+62
2016-03-21Revert "Print stack trace upon exceptions"moneromooo-monero3-5/+2
Ain't nobody got time for link/cmake skullduggery. This reverts commit fff238ec94ac6d45fc18c315d7bc590ddfaad63d.
2016-03-19Print stack trace upon exceptionsmoneromooo-monero3-2/+5
Useful for debugging users' logs
2016-03-16Wallet::store_to(path, password) implemented;Ilya Kitaev5-17/+113
2016-03-16Wallet::address implementedIlya Kitaev2-0/+7
2016-03-16WalletManager::recoveryWallet implementedIlya Kitaev2-5/+42
2016-03-16Wallet::setPassword() method for wallet2_apiIlya Kitaev4-9/+58
2016-03-16changes in wallet2_api + implemented WalletManager::openWalletIlya Kitaev2-28/+130
2016-03-16get_seed() included to interfaceIlya Kitaev2-14/+31
2016-03-16tests for wallet2_apiIlya Kitaev3-6/+40
2016-03-16wallet2 public api. initial commitIlya Kitaev3-2/+227
2016-03-11wallet: use minimum mixin when RPC asks for too low mixinmoneromooo-monero1-3/+13
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-11wallet_rpc_server: make use_fork_rules publicmoneromooo-monero1-1/+2
We will need it in the wallet RPC server
2016-03-11Use boost::thread instead of std::threadHoward Chu3-6/+7
and all other associated IPC
2016-03-05get_payments short IDluigi11111-8/+17
Add support for short/integrated/encrypted IDs to get_payments RPC
2016-02-22simplewallet: add a new --restore-from-keys optionmoneromooo-monero2-0/+45
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-15wallet: clear missing data on rescan_bcmoneromooo-monero1-0/+4
2016-02-05wallet: check a key image isn't already present when adding onemoneromooo-monero1-12/+49
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-01-31Revert "Merge pull request #632"Riccardo Spagni1-9/+1
This reverts commit 58f890652e86039e98dff2d48d217c9ea9e84eca, reversing changes made to 39d73d2a27730e6a5844c259d81a0ed9d4ee3000.
2016-01-31Merge pull request #634Riccardo Spagni2-5/+14
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-31Merge pull request #633Riccardo Spagni1-0/+2
80882ac wallet: guard against exception in process_blocks (moneromooo-monero)