aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
2016-04-05tx_pool: ensure no txes that fail check_inputs get in the block templatemoneromooo-monero1-1/+1
2016-04-04Wallet::transfer() continuedIlya Kitaev2-6/+161
2016-04-03Wallet::transfer in progressIlya Kitaev2-1/+42
2016-04-02simplewallet: optional address in --generate-from-jsonmoneromooo-monero1-5/+66
When present, it can be used to validate the keys, as well as deduce the spend key, if it is absent (watch wallet).
2016-04-02Fix potential race with parallel processing of txes/signatures/blocksmoneromooo-monero2-0/+2
2016-04-02wallet: better output selection for transfer/transfer_newmoneromooo-monero5-73/+60
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-02core: keep the acc loop for the genesis blockmoneromooo-monero1-1/+13
For unknown reasons, it was generated with a block reward consisting of a single large dusty output.
2016-04-02bumped version numberRiccardo Spagni1-1/+1
2016-04-02Merge pull request #779Riccardo Spagni1-5/+1
daac1cc core: remove the block reward accumulation loop (moneromooo-monero)
2016-04-02Merge pull request #778Riccardo Spagni1-1/+3
efbdde2 Detect map resize failures (Howard Chu)
2016-04-02Merge pull request #777Riccardo Spagni2-0/+4
8757e46 add blockhashing blob to getblocktemplate (Howard Chu)
2016-04-02Merge pull request #772Riccardo Spagni1-0/+34
ead6956 simplewallet: always gracefully exit on EOF (moneromooo-monero)
2016-04-02Merge pull request #769Riccardo Spagni4-64/+122
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 Spagni10-23/+98
24b3e90 Convey tx verification failure reasons to the RPC client (moneromooo-monero)
2016-04-02Merge pull request #766Riccardo Spagni1-0/+42
77d1c6b simplewallet: default to trusted daemon for loopback address (moneromooo-monero)
2016-04-02Merge pull request #764Riccardo Spagni2-74/+374
f746c9d minor corrections/clarifications (Thomas Winget) c6bb201 Transaction pool documentation (and some cleanup) (Thomas Winget)
2016-04-01core: remove the block reward accumulation loopmoneromooo-monero1-5/+1
This can generate non decomposed outputs for very large block rewards (or not so large ones if a miner decides to not quantize the block rewards). Out of an abundance of caution, we refuse to generate those. They are still accepted by the consensus code, however.
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 Kitaev40-1177/+3629
2016-03-30Detect map resize failuresHoward Chu1-1/+3
2016-03-30minor corrections/clarificationsThomas Winget2-4/+6
2016-03-30add blockhashing blob to getblocktemplateHoward Chu2-0/+4
2016-03-29simplewallet: always gracefully exit on EOFmoneromooo-monero1-0/+34
2016-03-28connection_basic: avoid gratuitous exceptionmoneromooo-monero1-2/+2
The remote endpoint is usually invalid, so use a version of the call that returns an error code instead.
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-27wallet: make the JSON reading type safemoneromooo-monero1-41/+31
2016-03-27common: new json_util.hmoneromooo-monero1-0/+53
With code to help factor out reading typed fields from JSON
2016-03-27Merge pull request #765Riccardo Spagni22-54/+389
d5d46e6 tests: obligatory hardfork unit build fix after interface change (moneromooo-monero) 25672d3 wallet: pass std::function by const ref, not value (moneromooo-monero) 0be6e08 wallet: do not leak owned amounts to the daemon unless --trusted-daemon (moneromooo-monero) 12146da wallet: change sweep_dust to sweep_unmixable (moneromooo-monero) 600a3cf New RPC and daemon command to get output histogram (moneromooo-monero) f9a2fd2 wallet: handle rare case where fee adjustment can bump to the next kB (moneromooo-monero) f26651a wallet: factor fee calculation (moneromooo-monero)
2016-03-27Convey tx verification failure reasons to the RPC clientmoneromooo-monero10-26/+101
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-27simplewallet: default to trusted daemon for loopback addressmoneromooo-monero1-0/+42
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-monero5-8/+11
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-monero6-30/+129
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-26New RPC and daemon command to get output histogrammoneromooo-monero15-0/+243
This is a list of existing output amounts along with the number of outputs of that amount in the blockchain. The daemon command takes: - no parameters: all outputs with at least 3 instances - one parameter: all outputs with at least that many instances - two parameters: all outputs within that many instances The default starts at 3 to avoid massive spamming of all dust outputs in the blockchain, and is the current minimum mixin requirement. An optional vector of amounts may be passed, to request histogram only for those outputs.
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-25blockchain: for v3, require miner tx to have well behaved outsmoneromooo-monero2-3/+13
This was meant to go in v2, but the miner tx slipped through the cracks as it doesn't go through the main tx verification since it doesn't get added to the pool.
2016-03-25core: fix miner tx block reward with feesmoneromooo-monero1-8/+7
2016-03-25- testnet option added to api;Ilya Kitaev4-13/+54
2016-03-25remove connectivity tool, comment it out from munin plugins tooRiccardo Spagni3-424/+0
2016-03-25Merge pull request #749Riccardo Spagni14-587/+2902
bfd4a28 Update BlockchainDB documentation (Thomas Winget) 797357e Change Doxyfile, Blockchain not blockchain_storage (Thomas Winget) c835215 remove defunct code from cryptonote::core (Thomas Winget) 50dba6d cryptonote::core doxygen documentation (Thomas Winget) 8ac329d doxygen documentation for difficulty functions (Thomas Winget) 540a76c Move checkpoint functions into checkpoints class (Thomas Winget) 1b0c98e doxygen documentation for checkpoints.{h,cpp} (Thomas Winget) 89c24ac Remove unnecessary or defunct code (Thomas Winget) ab0ed14 doxygen include private and static members (Thomas Winget) 3a48449 Updated documentation for blockchain.* (Thomas Winget)
2016-03-25Revert "Merge pull request #749"Riccardo Spagni14-2902/+587
This reverts commit 7fa63a82a1c3a0243f6757c1689855ed3ca61695, reversing changes made to cb6be986c36b78eddb4b7f16e9ad440af8567dc4.
2016-03-25Merge pull request #756Riccardo Spagni4-10/+192
a2e378b wallet: add a --generate-from-json flag (moneromooo-monero)
2016-03-25Merge pull request #749Riccardo Spagni14-587/+2902
bfd4a28 Update BlockchainDB documentation (Thomas Winget) 797357e Change Doxyfile, Blockchain not blockchain_storage (Thomas Winget) c835215 remove defunct code from cryptonote::core (Thomas Winget) 50dba6d cryptonote::core doxygen documentation (Thomas Winget) 8ac329d doxygen documentation for difficulty functions (Thomas Winget) 540a76c Move checkpoint functions into checkpoints class (Thomas Winget) 1b0c98e doxygen documentation for checkpoints.{h,cpp} (Thomas Winget) 89c24ac Remove unnecessary or defunct code (Thomas Winget) ab0ed14 doxygen include private and static members (Thomas Winget) 3a48449 Updated documentation for blockchain.* (Thomas Winget)
2016-03-25Merge pull request #748Riccardo Spagni1-1/+1
cc4b19c blockchain: fix partial block reward detection (moneromooo-monero)
2016-03-25wallet: add a --generate-from-json flagmoneromooo-monero4-10/+192
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-24Transaction pool documentation (and some cleanup)Thomas Winget2-74/+372
tx_pool.h doxygen documentation completed. Many notes made on areas for improvement, be that functionality or code clarity. Commented code and unused code removed.
2016-03-24Update BlockchainDB documentationThomas Winget1-155/+937
BlockchainDB is now Doxygen-compliant and its documentation is up-to-date with recent changes.
2016-03-24remove defunct code from cryptonote::coreThomas Winget2-22/+0
2016-03-24cryptonote::core doxygen documentationThomas Winget2-26/+617
2016-03-24doxygen documentation for difficulty functionsThomas Winget2-2/+16
2016-03-24Move checkpoint functions into checkpoints classThomas Winget9-359/+327
The functions in src/cryptonote_core/checkpoints_create.{h,cpp} should be member functions of the checkpoints class, if nothing else for the sake of keeping their documentation together. This commit covers moving those functions to be member functions of the checkpoints class as well as documenting those functions.
2016-03-22doxygen documentation for checkpoints.{h,cpp}Thomas Winget2-6/+99
All functions in src/cryptonote_core/checkpoints.h are now documented in doxygen style. checkpoints.cpp has been reviewed, one function has been marked for discussion on correctness.
2016-03-22Remove unnecessary or defunct codeThomas Winget2-22/+0
2016-03-22Updated documentation for blockchain.*Thomas Winget2-14/+925
All functions are now documented in doxygen format. Comments have been updated to reflect the current state of the code. Many areas for improvement in clarity and design have been noted, as well as cruft to be removed. These changes are not reflected in this commit both to allow time for comment and to keep commits organized by purpose.
2016-03-22blockchain: fix partial block reward detectionmoneromooo-monero1-1/+1
2016-03-21update version numberRiccardo Spagni1-1/+1
2016-03-21wallet2::store() implemented within wallet2::store_toIlya Kitaev3-69/+62
2016-03-21Merge pull request #743Riccardo Spagni1-1/+1
a1c3829 also maybe do the block height this time, you know, just so that it actually works. (Riccardo Spagni)
2016-03-21also maybe do the block height this time, you know, just so that it actually ↵Riccardo Spagni1-1/+1
works.
2016-03-21Merge pull request #742Riccardo Spagni1-1/+1
23d1538 also update the timestamp for the hard fork (Riccardo Spagni)
2016-03-21also update the timestamp for the hard forkRiccardo Spagni1-1/+1
2016-03-21Merge pull request #741Riccardo Spagni1-0/+3
eda51a0 set fork date for September, add hyc's GPG key, remove aabramov's (Riccardo Spagni)
2016-03-21set fork date for September, add hyc's GPG key, remove aabramov'sRiccardo Spagni1-0/+3
2016-03-21Revert "Print stack trace upon exceptions"moneromooo-monero28-201/+46
Ain't nobody got time for link/cmake skullduggery. This reverts commit fff238ec94ac6d45fc18c315d7bc590ddfaad63d.
2016-03-20Merge pull request #738Riccardo Spagni1-40/+47
79117d4 db_lmdb: include the error codes from lmdb api in error logs (moneromooo-monero)
2016-03-20Merge pull request #737Riccardo Spagni1-1/+1
1c3ed4c cryptonote_protocol: clarify height wording (moneromooo-monero)
2016-03-20Merge pull request #735Riccardo Spagni1-1/+1
d2aa427 rpc: fix print_tx in command line mode (moneromooo-monero)
2016-03-20Merge pull request #734Riccardo Spagni1-42/+54
b525457 simplewallet: make --password-file work in RPC mode (moneromooo-monero)
2016-03-20db_lmdb: include the error codes from lmdb api in error logsmoneromooo-monero1-40/+47
2016-03-20cryptonote_protocol: clarify height wordingmoneromooo-monero1-1/+1
It's logging the blockchain height, not the top block height
2016-03-19rpc: fix print_tx in command line modemoneromooo-monero1-1/+1
It was only filling the input in non rpc mode
2016-03-19simplewallet: make --password-file work in RPC modemoneromooo-monero1-42/+54
2016-03-19Print stack trace upon exceptionsmoneromooo-monero28-46/+201
Useful for debugging users' logs
2016-03-19Reduce log noiseHoward Chu1-2/+3
2016-03-19Fix issue #706Howard Chu1-0/+1
2016-03-16bump the versionRiccardo Spagni1-1/+1
2016-03-16baked-in block headers now go all the way up to 1 million. 1 MILLIONRiccardo Spagni1-0/+0
2016-03-16Merge pull request #728Riccardo Spagni6-3/+570
7df2baf fixed "undefined reference" for boost::system library (Ilya Kitaev) 62606f1 Wallet::store_to(path, password) implemented; (Ilya Kitaev) 19fcc74 Wallet::address implemented (Ilya Kitaev) 180ac6e WalletManager::recoveryWallet implemented (Ilya Kitaev) 5a4f099 Wallet::setPassword() method for wallet2_api (Ilya Kitaev) 57d7ffc changes in wallet2_api + implemented WalletManager::openWallet (Ilya Kitaev) f1f9279 get_seed() included to interface (Ilya Kitaev) 930bed7 tests for wallet2_api (Ilya Kitaev) 318660d wallet2 public api. initial commit (Ilya Kitaev)
2016-03-16Add destructor for readtxnsHoward Chu2-10/+21
Only if we created the readtxn. Was missing cleanups from exceptions before.
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-15Merge pull request #727Riccardo Spagni1-46/+50
6b0a903 Small cleanups (Howard Chu) 01c1512 More for 92dd4ec6d6251b15954002e72a7c7faa5059a3ab (Howard Chu)
2016-03-15Small cleanupsHoward Chu1-24/+28
Only one return and TXN_POSTFIX_RDONLY() per function Only log rtxn_start if the rtxn wasn't already active
2016-03-15More for 92dd4ec6d6251b15954002e72a7c7faa5059a3abHoward Chu1-22/+22
Make sure we stop the right txn too
2016-03-14fix formatting error on bitmonero print_block returnMike C1-1/+1
Example of current return for `print_block 912345`: timestamp: 1452793716 previous hash: b61c58b2e0be53fad5ef9d9731a55e8a81d972b8d90ed07c04fd37ca6403ff78 nonce: 1646 is orphan: 0 height: 912345 depth: 85434 hash: e22cf75f39ae720e8b71b3d120a5ac03f0db50bba6379e2850975b4859190bc6difficul ty: 815625611 reward: 7388968946286 { "major_version": 1, "minor_version": 2, … Without `std::endl`, the difficulty gets smashed on the end of the hash.
2016-03-14Fix typo on bitmonerod rpc method error.Mike C1-3/+3
2016-03-14Merge pull request #723Riccardo Spagni2-21/+21
2abdb2c avoid some val copies (Howard Chu)
2016-03-14Hack for read/write txn mixupHoward Chu2-42/+31
save the thread ID of the writer thread so we don't try to use the writetxn from reader threads
2016-03-14avoid some val copiesHoward Chu2-21/+21
2016-03-12switch default utilities DB to lmdb, update checkpoints.datRiccardo Spagni2-3/+6
2016-03-12Merge pull request #718Riccardo Spagni1-0/+1
41ea91a simplewallet: fix hang when setting auto-refresh to 0 (moneromooo-monero)
2016-03-12Merge pull request #717Riccardo Spagni1-0/+4
28bfc90 simplewallet: special ^C handling for windows (moneromooo-monero)
2016-03-12simplewallet: fix hang when setting auto-refresh to 0moneromooo-monero1-0/+1
It would try to join the auto refresh thread, which would only happen after it was done, which would take a long time when doing so on a newly created wallet.
2016-03-12Merge pull request #716Riccardo Spagni3-7/+10
789e275 rpc: do not return bans if they're effectively spent (moneromooo-monero) 474e4c0 p2p: lock access to the blocked ips map (moneromooo-monero)
2016-03-12Merge pull request #715Riccardo Spagni2-4/+15
8bc1bd6 wallet: use minimum mixin when RPC asks for too low mixin (moneromooo-monero) 31d2e0f wallet_rpc_server: make use_fork_rules public (moneromooo-monero)
2016-03-12simplewallet: special ^C handling for windowsmoneromooo-monero1-0/+4
Because obviously it doesn't work as other POSIX platforms. Reported and tested by luigi1111.
2016-03-12rpc: do not return bans if they're effectively spentmoneromooo-monero1-4/+7
The blocked ip list will still hold them till next time a connection attempt is made with that IP, so the effective length of the ban may be negative.
2016-03-12p2p: lock access to the blocked ips mapmoneromooo-monero2-3/+3
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-11minor tweaks, add readme for crypto_ops_builderRiccardo Spagni3-4/+25
2016-03-11Merge pull request #712Riccardo Spagni23-70/+75
66c2fc7 Need to link boost::chrono in more places now (Howard Chu) b937a2c Use boost::thread instead of std::thread (Howard Chu)
2016-03-11Need to link boost::chrono in more places nowHoward Chu3-0/+3
2016-03-11Use boost::thread instead of std::threadHoward Chu20-70/+72
and all other associated IPC
2016-03-09More for bdec7cbHoward Chu1-14/+14
More uses of db error helper
2016-03-05Merge pull request #705Riccardo Spagni1-4/+54
f7ed167 blockchain_utilities: Update documentation (warptangent)
2016-03-05Merge pull request #704Riccardo Spagni1-8/+17
e2b7e55 get_payments short ID (luigi1111)
2016-03-05Merge pull request #702Riccardo Spagni2-6/+67
0485d17 blockchain_export: Support BerkeleyDB (warptangent) 41487e3 blockchain_export: Move DB implementation includes (warptangent)
2016-03-05blockchain_utilities: Update documentationwarptangent1-4/+54
2016-03-05Merge pull request #700Riccardo Spagni2-34/+35
bdec7cb BlockchainLMDB: Use DB error helper consistently (warptangent) c5932eb BlockchainLMDB: Add DB error to exception (warptangent) a49c355 Blockchain: Omit verbose time stats messages by default (warptangent)
2016-03-05Merge pull request #698Riccardo Spagni1-57/+14
ee7a8b8 Get rid of lmdb_cur (Howard Chu)
2016-03-05Merge pull request #696Riccardo Spagni1-1/+1
d57ec75 Fix language (Howard Chu)
2016-03-05get_payments short IDluigi11111-8/+17
Add support for short/integrated/encrypted IDs to get_payments RPC
2016-03-05blockchain_export: Support BerkeleyDBwarptangent1-4/+65
TEST: blockchain_export -h This should show "berkeley" as an available option to --database. With an existing BerkeleyDB database, run: blockchain_export --database berkeley
2016-03-05blockchain_export: Move DB implementation includeswarptangent2-2/+2
2016-03-03BlockchainLMDB: Use DB error helper consistentlywarptangent1-28/+27
2016-03-03BlockchainLMDB: Add DB error to exceptionwarptangent1-5/+7
2016-03-03Blockchain: Omit verbose time stats messages by defaultwarptangent1-1/+1
This is already the default for the daemon, but by checking a command line argument and calling a Blockchain member function setter. Initialize the variable to false so it's not dependent on an external command-line argument check. This allows utilities like blockchain_import to have a reasonable default without code changes.
2016-03-03Get rid of lmdb_curHoward Chu1-57/+14
We don't need it now with per-txn cursors.
2016-03-03Fix languageHoward Chu1-1/+1
2016-03-03More for df239428c0f43e2664f2be273996a734ca12c686Howard Chu1-0/+6
Let ARMv7 work again
2016-03-01Make partial revert consistentwarptangent1-1/+1
If user-defined comparator is used, subdb shouldn't be opened with MDB_INTEGERKEY. TODO: Again, this will be added back with future schema updates.
2016-02-29Revert part of 7db89ed2eee2ce31f039783323d665fe7c24d441warptangent1-2/+14
For now, so existing databases work. TODO: add these back with future schema updates.
2016-02-29BlockchainLMDB: Add height and db error to exceptionwarptangent1-1/+1
2016-02-29Merge pull request #688Riccardo Spagni6-20/+172
c2a1fee simplewallet: prompt for private keys when generating wallets (moneromooo-monero) 4513b4c simplewallet: add a new --restore-from-keys option (moneromooo-monero)
2016-02-29Merge pull request #687Riccardo Spagni10-18/+1
5e3557d move g_test_dbg_lock_sleep from a global to a function level static (moneromooo-monero)
2016-02-29Merge pull request #686Riccardo Spagni8-197/+379
7db89ed ARMv7: fix unaligned accesses (Howard Chu) 5a07cef Wrap some more actions in a larger read txn (Howard Chu) 8cc7a36 read txn/cursor stuff (Howard Chu) 86a7f2b core: check whether an update is needed straight away (moneromooo-monero) ea5fa5e core: print "update needed" hard fork notifications in red (moneromooo-monero)
2016-02-27simplewallet: prompt for private keys when generating walletsmoneromooo-monero1-32/+33
instead of supplying them on the command line. It's more unwieldy, but better protects against information leaks.
2016-02-25ARMv7: fix unaligned accessesHoward Chu1-20/+15
And cleanup some key comparators
2016-02-23Wrap some more actions in a larger read txnHoward Chu1-11/+25
2016-02-23read txn/cursor stuffHoward Chu8-166/+339
Could wrap more later.
2016-02-23core: check whether an update is needed straight awaymoneromooo-monero1-1/+1
2016-02-23core: print "update needed" hard fork notifications in redmoneromooo-monero1-2/+2
2016-02-23dns_utils: const compatibility with older libunboundmoneromooo-monero1-22/+16
https://www.nlnetlabs.nl/bugs-script/show_bug.cgi?id=515
2016-02-22simplewallet: add a new --restore-from-keys optionmoneromooo-monero6-6/+157
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-22move g_test_dbg_lock_sleep from a global to a function level staticmoneromooo-monero10-18/+1
This avoids the need to define that variable in every program which uses epee.
2016-02-20db_bdb: add missing include for std::condition_variablemoneromooo-monero1-0/+1
2016-02-20Merge pull request #680Riccardo Spagni1-3/+12
360f72f simplewallet: wording change for single tx confirmation (moneromooo-monero)
2016-02-20Merge pull request #678Riccardo Spagni4-5/+6
11d555c Fix crash in std::map for connections_map (Howard Chu) 014f886 std::condvar is broken on Win32 with gcc/g++ 4.8 too (Howard Chu) 7c86c59 Use boost::thread instead of std::thread (Howard Chu)
2016-02-20Merge pull request #677Riccardo Spagni1-4/+85
57e75fa BlockchainBDB: Check if hard fork subdbs need reset (warptangent) 47f6cf8 BlockchainBDB: Support blockchain_import --drop-hard-fork command (warptangent)
2016-02-20simplewallet: wording change for single tx confirmationmoneromooo-monero1-3/+12
2016-02-18std::condvar is broken on Win32 with gcc/g++ 4.8 tooHoward Chu1-2/+2
Use boost...
2016-02-18Use boost::thread instead of std::threadHoward Chu3-3/+4
std::thread crashes on (at least) ARMv6 g++ 4.8/4.9
2016-02-18BlockchainBDB: Check if hard fork subdbs need resetwarptangent1-1/+50
See f7e337e6254c1c4115a8430964a6f6b54305b3ae for LMDB equivalent.
2016-02-18BlockchainBDB: Support blockchain_import --drop-hard-fork commandwarptangent1-3/+35
See c657e772c4efbfee8ff698883f1532a38117a70a for LMDB equivalent.
2016-02-18blockchain_import: Pass ARCH_WIDTH macro if 32-bit or not.warptangent1-4/+4
This also avoids warnings.
2016-02-18Merge pull request #675Riccardo Spagni2-3/+3
27d4e50 core: check whether an update is needed straight away (moneromooo-monero) 8892173 core: print "update needed" hard fork notifications in red (moneromooo-monero)
2016-02-18Merge pull request #674Riccardo Spagni3-4/+14
05e7ac0 blockchain_import: Check bit width for more than just WIN32 (warptangent)
2016-02-17core: check whether an update is needed straight awaymoneromooo-monero1-1/+1
2016-02-17core: print "update needed" hard fork notifications in redmoneromooo-monero1-2/+2
2016-02-17Fix cffc411c9025e1d28a8b6e32c53c83ba113d9204Howard Chu1-0/+2
Don't include bdb header unless defined(BERKELEY_DB)
2016-02-17blockchain_import: Check bit width for more than just WIN32warptangent3-4/+14
Pass the CMake bit width setting to compile flags for blockchain_import and blockchain_converter. For LMDB on 32-bit, hyc has found that batch size of 100 appears to be a good default.
2016-02-17Use MDB_PREV_MULTIPLEHoward Chu1-12/+41
in get_global_output_indices
2016-02-17Fixup after lmdb master resyncHoward Chu1-6/+6
2016-02-17Merge pull request #672Riccardo Spagni3-27/+114
3b13a74 Shutup about VERSION 0 (Howard Chu) 1537477 Use cursor in get_output_key (Howard Chu) f2faf8c Use MDB_APPEND mode where possible (Howard Chu) 090b548 Use cursors in write txns (Howard Chu) ed08d21 Keep a running blocksize count (Howard Chu) 0fc9334 Win32 import batchsize tweaks (Howard Chu)
2016-02-17Merge pull request #671Riccardo Spagni1-0/+4
8f09b71 wallet: clear missing data on rescan_bc (moneromooo-monero)
2016-02-17Merge pull request #666Riccardo Spagni2-50/+160
27f76e2 blockchain_import: Build string for db type list (warptangent) 1aa8a9d blockchain_import: Add mode argument representing multiple DB flags (warptangent) cffc411 blockchain_import: Support BerkeleyDB (warptangent) 19c1aaa blockchain_import: Add database type argument (warptangent) 0fedce0 blockchain_import: Make LMDB-specific names general (warptangent)
2016-02-17Shutup about VERSION 0Howard Chu2-2/+6
2016-02-17Use cursor in get_output_keyHoward Chu1-1/+2
2016-02-17Use MDB_APPEND mode where possibleHoward Chu1-5/+9
When keys are contiguous and monotonically increasing, this gets denser page utilization (doesn't leave padding in page splits). Can't be used for keys that are inserted in random order (e.g. hashes) In total this only saves around 1.5% of space compared to original DB code. The previous patch accounted for 0.8% savings on its own; the blocks tables just aren't that big.
2016-02-17Use cursors in write txnsHoward Chu2-22/+100
Saves a bit of seek overhead. LMDB frees them automatically in txn_(commit|abort) so they need no cleanup.
2016-02-17Keep a running blocksize countHoward Chu2-0/+15
Used in batch size estimation, avoids rereading already processed blocks during import
2016-02-17Win32 import batchsize tweaksHoward Chu1-3/+6
Reduce frequency of resizes: bump minimum increase from 128MB to 512MB Use a bigger safety margin at small batch sizes
2016-02-15wallet: clear missing data on rescan_bcmoneromooo-monero1-0/+4
2016-02-14blockchain_import: Build string for db type listwarptangent1-2/+15
2016-02-14blockchain_import: Add mode argument representing multiple DB flagswarptangent1-31/+82
These modes match those optionally provided as part of the daemon's --db-type argument. Argument after the # is interpreted as a composite mode if there's only one (no comma separated arguments). Sample usage: blockchain_import --database lmdb#fastest blockchain_import --database berkeley#fastest Multiple specific DB flags are still supported, e.g. blockchain_import --database lmdb#nosync,nordahead blockchain_import --database berkeley#txn_nosync
2016-02-15Keep a running blocksize countHoward Chu2-0/+15
Used in batch size estimation, avoids rereading already processed blocks during import
2016-02-14blockchain_import: Support BerkeleyDBwarptangent2-21/+67
2016-02-14blockchain_import: Add database type argumentwarptangent2-4/+4
Default to LMDB.
2016-02-14blockchain_import: Make LMDB-specific names generalwarptangent2-33/+33
Also update terms to better distinguish blockchain management/engine from database type.
2016-02-14Win32 import batchsize tweaksHoward Chu1-3/+6
Reduce frequency of resizes: bump minimum increase from 128MB to 512MB Use a bigger safety margin at small batch sizes
2016-02-13Merge pull request #657Riccardo Spagni2-12/+50
1995923 BlockchainLMDB: Deal with DB exceptions at block level with particularity (warptangent) c16cc20 BlockchainLMDB: Add sanity check for inconsistent state (warptangent) 9118d0a BlockchainLMDB: Call destructor on allocated txn if setup fails (warptangent) f5581c3 BlockchainLMDB: Replace remaining txn pointer NULLs with nullptr (warptangent)
2016-02-13Merge pull request #656Riccardo Spagni1-9/+0
9832d18 cmake: Include OpenSSL libraries in static linking (warptangent) c2f2437 cmake: Remove unused variable (warptangent) 7205210 cmake: Fix unbound config compile settings (warptangent) 3e72d97 cmake: Fix overly broad use of dynamic link settings (warptangent)
2016-02-13Merge pull request #652Riccardo Spagni1-1/+21
c7e6b77 crypto: only check MONERO_USE_SOFTWARE_AES once (moneromooo-monero) 74aef21 crypto: use software AES based on the MONERO_USE_SOFTWARE_AES env var (moneromooo-monero)
2016-02-13BlockchainLMDB: Deal with DB exceptions at block level with particularitywarptangent2-2/+21
Add another DB error exception type to distinguish failed txn setup from general use of txn. This keeps the error handling flow the same as before the block-level txn setup changes that moved control up a layer to BlockchainDB.
2016-02-13BlockchainLMDB: Add sanity check for inconsistent statewarptangent1-2/+13
This hasn't been known to occur in block-level txn abort, but throw exception if it does.
2016-02-13BlockchainLMDB: Call destructor on allocated txn if setup failswarptangent1-0/+8
2016-02-13BlockchainLMDB: Replace remaining txn pointer NULLs with nullptrwarptangent1-9/+9
For consistency.
2016-02-12cmake: Fix overly broad use of dynamic link settingswarptangent1-9/+0
Remove LINK_SEARCH_START_STATIC and LINK_SEARCH_END_STATIC. This is more appropriate when the compiler flag -static is used. This had been causing CMake to omit the linker flags necesssary to distinguish static and dynamic library linking. CMake had assumed static linking for the target, causing it to omit explicit static link flags. That is problematic without the -static compile flag being set. With a library located in system directories, like libboost_date_time, the full static path (.a), though found correctly by CMake, was treated by the linker as a dynamic library. This is because target_link_libraries() transforms the full path to -l<libname> if it's in a system directory. Without -static or explicit linker flags, the dynamic library (.so) is linked. Removing the above two properties removes the assumption of static. So -Wl;-Bstatic is inserted where needed. This causes -l<libname> to properly refer to the static library instead of dynamic.
2016-02-09crypto: only check MONERO_USE_SOFTWARE_AES oncemoneromooo-monero1-5/+15
2016-02-09crypto: use software AES based on the MONERO_USE_SOFTWARE_AES env varmoneromooo-monero1-1/+11
Setting to no or 0 also works. If set, any other value enables it. Useful for running with valgrind in cases where it fails at properly implementing AES-NI.
2016-02-08hardfork: add a default fork entry for v1 if none existmoneromooo-monero1-0/+5
To avoid special cases
2016-02-08blockchain: initialize m_hardfork to NULLmoneromooo-monero1-1/+1
It can now be set by some other code, and is thus tested
2016-02-08blockchain_db: pass hard fork object as a simple pointermoneromooo-monero2-2/+2
2016-02-08core_tests: add tests for hard fork behaviors (MRL-0004)moneromooo-monero6-18/+26
We also replace the --fakechain option with an optional structure containing details about configuration for the core/blockchain, for test purposes. This seems more future friendly.
2016-02-08blockchain_utilities: remove unused num_blocks variablemoneromooo-monero1-2/+0
2016-02-08blockchain: reset hardfork object when resetting blockchainmoneromooo-monero1-0/+1
Not doing so will prevent the new genesis block from being reset if a switch past v1 had occured already.
2016-02-08Blockchain: Update comments on removing blockwarptangent1-0/+5
2016-02-08blockchain_import: Get hard fork version from HardForkwarptangent1-4/+1
Replace temporary assignment that used hardcoded values.
2016-02-08Move HardFork DB update to BlockchainDB::add_block()warptangent3-6/+1
Ensures the database is consistent. Also simplifes blockchain_import in that verify mode off has less to work around.