aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
2016-01-19db_lmdb: Continue when tx has no outputswarptangent1-4/+6
2016-01-15Fix hf when import with verify offHoward Chu6-0/+30
Delete the hf tables, so the next open will rescan and regenerate
2016-01-15added checkpointsRiccardo Spagni1-0/+8
2016-01-15bumped version to 0.9.1 for point releaseRiccardo Spagni1-1/+1
2016-01-15Merge pull request #610Riccardo Spagni1-2/+1
945ac78 hardfork: fix accepting v2 blocks too early (moneromooo-monero)
2016-01-15hardfork: fix accepting v2 blocks too earlymoneromooo-monero1-2/+1
2016-01-14'max limit of...' is redundant wording, rephrasebinaryFate3-3/+3
2016-01-14Print msg when successfully updating out_peersbinaryFate1-0/+2
2016-01-12Merge pull request #606Riccardo Spagni1-24/+64
8ce12a9 Fix arm asm (Howard Chu) 94de39f Tweak arm6 flags (Howard Chu)
2016-01-12Merge pull request #603Riccardo Spagni1-0/+25
c5baf30 use load_file_to_string and exit with error on file read errors (Fabian Hirschmann) 7b2d27f remove new lines at the end of the password only (Fabian Hirschmann) 302cc9c add --password-file option (Fabian Hirschmann)
2016-01-11Fix arm asmHoward Chu1-24/+64
About 10% faster than plain C mul128 on raspi1B
2016-01-11rpc: fix missing target information in RPC callmoneromooo-monero2-0/+3
which fixes the status command via RPC too. Turns out there are two versions of the GET_INFO call. I'd never noticed before.
2016-01-11daemon: fix status command when run from command linemoneromooo-monero1-1/+1
2016-01-10wallet2: decide at runtime which upper tx size to usemoneromooo-monero2-6/+20
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-09use load_file_to_string and exit with error on file read errorsFabian Hirschmann1-3/+9
2016-01-09remove new lines at the end of the password onlyFabian Hirschmann1-2/+2
2016-01-09add --password-file optionFabian Hirschmann1-0/+19
2016-01-05rpc: is_key_image_spent now checks the tx pool toomoneromooo-monero3-4/+40
2016-01-03fixed conflictsRiccardo Spagni2-4/+4
2016-01-03Use CMAKE_LINKER, not hardcoded "ld"Howard Chu2-4/+4
2016-01-02daemon: fix ban length using wrong parametermoneromooo-monero1-1/+1
2015-12-31update versionRiccardo Spagni12-15/+16
2015-12-31Merge pull request #587Riccardo Spagni3-31/+25
1e07110 Nicer looking exit when blockchain.bin is found (moneromooo-monero)
2015-12-31Nicer looking exit when blockchain.bin is foundmoneromooo-monero3-31/+25
Do not print the exception message, and write the important bit in red, since people will only read the last line otherwise.
2015-12-31core: do not use the persistent pool state for testsmoneromooo-monero2-1/+7
Fixes intermittent test failures when the pool contains unexpected transactions that were brought in from the live pool.
2015-12-31Merge pull request #584Riccardo Spagni1-1/+3
5c67c48 wallet: don't forget to close the file after storing cache (moneromooo-monero)
2015-12-31wallet: don't forget to close the file after storing cachemoneromooo-monero1-1/+3
Also add some flags to open, as epee's save_string_to_file does, to truncate file, etc.
2015-12-31updated copyright yearRiccardo Spagni201-200/+200
2015-12-31fixed copyrights with bad year referencesRiccardo Spagni9-9/+9
2015-12-30blockchain: kill ioservice on scope end, rather than manuallymoneromooo-monero1-6/+7
This ensures this will be done without fail, as the error prone matching of every return with a call to KILL_IOSERVICE leads to hard to debug corruption when one is missing.
2015-12-30miner: minor fixes on stopmoneromooo-monero1-1/+4
- only try to stop if actually started - print number of threads before zeroing it This fixes the suspiciously doubled "Mining has been stopped" message on exit.
2015-12-30wallet: add a rescan_bc command and rescan_blockchain RPCmoneromooo-monero7-13/+84
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-30wallet: protect against exceptions in the block pull threadmoneromooo-monero2-14/+30
This can happen when the daemon exits, which would also cause the wallet to crash via unhandled exception
2015-12-30net_peerlist: move a couple functions from public to privatemoneromooo-monero1-2/+2
They do not take the object lock, and are meant to be used only internally, called from a function which does take the lock.
2015-12-30no longer need to pass the size to rapidjsonRiccardo Spagni1-2/+2
2015-12-30Merge pull request #575Riccardo Spagni1-6/+8
61befc2 wallet: store cache to file without unnecessary memory buffer (moneromooo-monero)
2015-12-30Merge pull request #574Riccardo Spagni2-6/+11
61ce8d6 wallet_rpc_server: exit async, so we reply to stop_wallet RPC (moneromooo-monero) 9847db6 wallet: do not return error if incoming_transfers finds none (moneromooo-monero)
2015-12-30Merge pull request #573Riccardo Spagni1-0/+22
0953355 blockchain_db: inform user about new format if blockchain.bin is found (moneromooo-monero)
2015-12-30Merge pull request #572Riccardo Spagni2-3/+11
b39aae7 Tweak 45800a25e9374e63caaabba05c89585c86acd668 (hyc) 4a5a5ff blockchain: always stop the ioservice before returning (moneromooo-monero) 78b65cf db_lmdb: safety close db at exit (moneromooo-monero) 45800a2 db_lmdb: fix a strdup/delete[] mistmatch (moneromooo-monero)
2015-12-30Merge pull request #570Riccardo Spagni1-1/+1
fc34132 Remove assert from status command (hyc)
2015-12-30Merge pull request #569Riccardo Spagni6-0/+32
ee9d71e BlockchainDB: skip fixup check if read-only database (warptangent)
2015-12-30Merge pull request #568Riccardo Spagni2-9/+2
b0541a5 blockchain: remove obsolete containers (moneromooo-monero) 18a5211 blockchain: Fix height in call to on_blockchain_dec (moneromooo-monero)
2015-12-29wallet: store cache to file without unnecessary memory buffermoneromooo-monero1-6/+8
2015-12-29Tweak 45800a25e9374e63caaabba05c89585c86acd668hyc1-5/+5
trivial cleanup
2015-12-28wallet_rpc_server: exit async, so we reply to stop_wallet RPCmoneromooo-monero2-1/+11
Reported by saddam
2015-12-28blockchain_db: inform user about new format if blockchain.bin is foundmoneromooo-monero1-0/+22
2015-12-28blockchain: always stop the ioservice before returningmoneromooo-monero1-0/+2
Fixes a use after free
2015-12-28wallet: do not return error if incoming_transfers finds nonemoneromooo-monero1-5/+0
reported by saddam
2015-12-28db_lmdb: safety close db at exitmoneromooo-monero1-0/+3
Noticed by hyc Also set m_open to false when closed
2015-12-28db_lmdb: fix a strdup/delete[] mistmatchmoneromooo-monero1-3/+6
2015-12-27Remove assert from status commandhyc1-1/+1
Crashes every time...
2015-12-26BlockchainDB: skip fixup check if read-only databasewarptangent6-0/+32
2015-12-26blockchain: remove obsolete containersmoneromooo-monero2-8/+1
2015-12-26blockchain: Fix height in call to on_blockchain_decmoneromooo-monero1-1/+1
It was a noop anyway
2015-12-26hardfork: ensure current_fork_index can not become negative on rescanmoneromooo-monero1-1/+1
2015-12-26Merge pull request #565Riccardo Spagni5-45/+101
79beed2 tests: fix various tests by using parameters better suited to monero (moneromooo-monero) d0a8362 tests: fix some double spending tests (moneromooo-monero) 2358d0d tests: use 255 as a "too high" block version (moneromooo-monero) f33a88c blockchain: fix a few block addition bugs (moneromooo-monero) a9ff11c blockchain: fix an off by one error in unlocked time check (moneromooo-monero) f294be3 blockchain: reinstate double spending checks in check_tx_inputs (moneromooo-monero) 737b6d6 blockchain: make some flag twiddling code closer to the original (moneromooo-monero) 81cb0fc blockchain: fix bitflipping test with quantized block rewards (moneromooo-monero) 22ddf09 blockchain: add missing m_tx_pool.on_blockchain_dec (moneromooo-monero) d837c0c blockchain: fix switch to alternative blockchain for more than one block (moneromooo-monero) 5cec076 blockchain: add a missing validity check to rollback_blockchain_switching (moneromooo-monero) 3cabdb5 core: catch exceptions from get_output_key (moneromooo-monero) 5eef645 db: throw when given a non txout_to_key output to add (moneromooo-monero)
2015-12-25blockchain: fix a few block addition bugsmoneromooo-monero2-34/+46
If the block reward was too high, the verification failed flag was set, but the function continued. The code which was supposed to trap this flag and return failure failed to trap it, and, while the block was not added to the chain, the function would return success. The reason for avoiding returning when the block reward problem was detected was to be able to return any transactions to the pool if needed. This is now mooted by moving the transaction return code to a separate function, which is now called at all appropriate points, making the logic much simpler, and hopefully correct now. We also move the hard fork version check after the prev_id check, as block which does not go on the top of the chain might not have the expected version there, without being invalid just for this reason. Last, we trap the case where a block fails to be added due to using already spent key images, to set the verification failed flag.
2015-12-25blockchain: fix an off by one error in unlocked time checkmoneromooo-monero1-1/+1
2015-12-25blockchain: reinstate double spending checks in check_tx_inputsmoneromooo-monero1-3/+7
This fixes some double spending tests. This may or may not be unneeded in normal (non test) circumstances, to be determined later. Keeping these for now may be slower, but safer.
2015-12-25blockchain: make some flag twiddling code closer to the originalmoneromooo-monero1-2/+2
Probably paranoid and unnecessary
2015-12-25blockchain: fix bitflipping test with quantized block rewardsmoneromooo-monero3-2/+6
Block reward may now be less than the full amount allowed. This was breaking the bitflipping test. We now keep track of whether a block which was accepted by the core has a lower than allowed block reward, and allow this in the test.
2015-12-25blockchain: add missing m_tx_pool.on_blockchain_decmoneromooo-monero1-0/+1
It was missing in the port to DB. This is actually a noop, so should not have functional changes.
2015-12-25blockchain: fix switch to alternative blockchain for more than one blockmoneromooo-monero1-1/+1
When rolling over more than one block, the db height will decrease, but the split height should be constant, as per the original code.
2015-12-25blockchain: add a missing validity check to rollback_blockchain_switchingmoneromooo-monero1-0/+6
It was present in the original code
2015-12-25core: catch exceptions from get_output_keymoneromooo-monero1-2/+18
This can happen when trying to find an amount that does not exist, and fixes a core test.
2015-12-25db: throw when given a non txout_to_key output to addmoneromooo-monero3-0/+13
The check was explicit in the original version, so it seems safer to make it explicit here, especially as it is now done implicitely in a different place, away from the original check.
2015-12-25Merge pull request #562Riccardo Spagni1-3/+5
d4c2fae BlockchainDB: Remove txs in reverse order (warptangent)
2015-12-25Merge pull request #561Riccardo Spagni1-9/+10
ffcf6bd BlockchainLMDB: When removing, find amount output index fast by starting at end (warptangent) f11def0 BlockchainLMDB: Remove tx outputs in reverse order (warptangent)
2015-12-25Merge pull request #557Riccardo Spagni3-1/+35
791e7fb changed height to uint64_t (Brendan Telzrow) 4cd7913 added RPC wallet command getheight (Brendan Telzrow)
2015-12-24BlockchainDB: Remove txs in reverse orderwarptangent1-3/+5
Data should be removed in the reverse order it was added. Not doing so breaks assumptions and can cause problems in other DB implementations. This matches the order of tx removal in blockchain_storage::purge_block_data_from_blockchain.
2015-12-24BlockchainLMDB: When removing, find amount output index fast by starting at endwarptangent1-4/+5
This improves blockchain reorganization time by allowing one of the more expensive DB lookups when popping a block to not have to seek through a long dup list in the "output_amounts" subdb. This is most noticeable for HDDs. As before, the dup list is still walked if necessary (but in reverse), and the global output index still confirmed to be the one looked for. But under proper use, the result will be found at the end of the dup list, so we start there. Removing an amount output index is always done in the context of popping a block, so the global output index being looked for should be the last one in that amount key's dup list. Even if the txs themselves aren't removed in reverse order (supposed to be according to original implementation), the specified amount output index will still be near the end, because the txs are in the same block. TEST: Pop blocks with blockchain_import. Blocks should be successfully removed with no errors shown. bitmonerod should be able to start syncing from the reduced blockchain height.
2015-12-24BlockchainLMDB: Remove tx outputs in reverse orderwarptangent1-5/+5
Data should be removed in the reverse order it was added. This matches the order of removal in blockchain_storage::pop_transaction_from_global_index.
2015-12-24fixed missing parenthesisRiccardo Spagni1-1/+1
2015-12-24fix for 'failed to generate new wallet: failed to save file' error during ↵Lex Kalinkin1-3/+5
wallet generation
2015-12-23changed height to uint64_tBrendan Telzrow1-4/+4
2015-12-23added RPC wallet command getheightBrendan Telzrow3-1/+35
2015-12-22net_node: fix a hang on exitmoneromooo-monero1-1/+1
One loop was not paying attention to the stop signal, and could end up looping forever
2015-12-22Merge pull request #552Riccardo Spagni8-24/+4
9428d53 Strip redundant includes (hyc)
2015-12-22Merge pull request #550Riccardo Spagni1-2/+5
8c93608 wallet: fix load/save versioning bug for recently added tx data (moneromooo-monero)
2015-12-22Merge pull request #547Riccardo Spagni15-20/+75
8ea7af1 Allow the wallet to access hard fork information (moneromooo-monero) 760331b epee: make log macros behave like statements (moneromooo-monero) 3f2970f Add missing semicolons after log statements (moneromooo-monero)
2015-12-22Merge pull request #545Riccardo Spagni3-1/+11
0ab56b8 print top block hash in daemon diff command (moneromooo-monero)
2015-12-21Strip redundant includeshyc8-24/+4
In particular, <boost/program_options.hpp> blows up daemon.cpp.obj, making it too big to compile in debug mode on Win32. Even on a release build it drops daemon.cpp.o on Linux from 31MB to 20MB. This has no effect on the final linked binary size.
2015-12-20wallet: fix load/save versioning bug for recently added tx datamoneromooo-monero1-2/+5
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-19Allow the wallet to access hard fork informationmoneromooo-monero8-8/+63
And make it change behavior slightly when close/after first hard fork
2015-12-19Add missing semicolons after log statementsmoneromooo-monero8-12/+12
2015-12-18print top block hash in daemon diff commandmoneromooo-monero3-1/+11
and add top block hash in get_info RPC
2015-12-18Merge pull request #544Riccardo Spagni2-3/+3
01e92eb replace std::auto_ptr with std::unique_ptr (moneromooo-monero)
2015-12-18Merge pull request #543Riccardo Spagni2-2/+2
63cb1a5 move another non user useful log to L1 (moneromooo-monero) 02827d5 p2p: minor log formatting fix (moneromooo-monero)
2015-12-18Merge pull request #542Riccardo Spagni2-1/+20
9b4f8b4 wallet: save to a temporary file, then rename (moneromooo-monero)
2015-12-17replace std::auto_ptr with std::unique_ptrmoneromooo-monero2-3/+3
The former is obsolete
2015-12-17move another non user useful log to L1moneromooo-monero1-1/+1
2015-12-17p2p: minor log formatting fixmoneromooo-monero1-1/+1
2015-12-17wallet: save to a temporary file, then renamemoneromooo-monero2-1/+20
This should avoid most of wallet cache corruption cases
2015-12-16Merge pull request #541Riccardo Spagni1-28/+49
5131b26 Replace tabs and remove trailing whitespace (warptangent) 0d40de4 Optionally restrict DNS queries to TCP (warptangent)
2015-12-16Merge pull request #536Riccardo Spagni25-3506/+3502
9079a32 Fix typo (warptangent) 3796941 blockchain.cpp: Change indentation from 4 to 2 spaces (warptangent) 725acc7 Replace tabs with two spaces for consistency with rest of codebase (warptangent)
2015-12-15Replace tabs and remove trailing whitespacewarptangent1-24/+24
2015-12-15Optionally restrict DNS queries to TCPwarptangent1-3/+24
Sample use: DNS_PUBLIC=tcp torsocks bin/bitmonerod --p2p-bind-ip 127.0.0.1 Test: Run above with --log-level 4 with and without DNS_PUBLIC environment variable set. DNS debugging info should show successful DNS lookups only when DNS_PUBLIC is set to "tcp": DNS lookup for seeds.moneroseeds.se: 17 results DNS lookup for seeds.moneroseeds.ae.org: 17 results DNS lookup for seeds.moneroseeds.ch: 12 results DNS lookup for seeds.moneroseeds.li: 12 results
2015-12-15Fix typowarptangent2-2/+2
2015-12-15blockchain.cpp: Change indentation from 4 to 2 spaceswarptangent1-2255/+2253
2015-12-15Replace tabs with two spaces for consistency with rest of codebasewarptangent25-1308/+1306
Remove trailing whitespace in same files.
2015-12-15Merge pull request #540Riccardo Spagni1-1/+1
75fd96d Revert connection limit to more customary 8 (Javier Smooth)
2015-12-15Merge pull request #538Riccardo Spagni1-290/+127
d462c62 db_lmdb: always use a batch tx if possible (moneromooo-monero)
2015-12-15Merge pull request #537Riccardo Spagni1-0/+1
a74cc1b hardfork: only accept major versions we know about (moneromooo-monero)
2015-12-15Merge pull request #535Riccardo Spagni3-6/+14
cb4ee1b Tone down L0 logs during daemon sync some more (moneromooo-monero) 2177923 Tone down a bit L0 logs during daemon sync (moneromooo-monero)
2015-12-14Revert connection limit to more customary 8Javier Smooth1-1/+1
2015-12-14db_lmdb: always use a batch tx if possiblemoneromooo-monero1-290/+127
Also wrap that code in two prefix/suffix macros so they are easier to use and not forget. Also add consts to returned data casts where applicable.
2015-12-14Tone down L0 logs during daemon sync some moremoneromooo-monero2-3/+3
2015-12-14hardfork: only accept major versions we know aboutmoneromooo-monero1-0/+1
2015-12-14Tone down a bit L0 logs during daemon syncmoneromooo-monero2-3/+11
2015-12-13daemon: fix crash exiting with ^Cmoneromooo-monero1-1/+1
We need to stop the p2p layer, which causes the rest to shutdown gracefully. Hitting ^C was still going through another path.
2015-12-13Merge pull request #533Riccardo Spagni1-1/+1
7f77b23 posix_daemonizer: only create the main daemon object in the last child (moneromooo-monero)
2015-12-13Merge pull request #532Riccardo Spagni1-68/+74
79ff6a5 Add LMDB error string to database transaction exception message (warptangent)
2015-12-13Merge pull request #531Riccardo Spagni9-15/+95
cbded43 core_tests: fix ring_signature_1 tests (moneromooo-monero) c3d208f core_tests: bump default test fee to 0.02 monero (moneromooo-monero) 10da0a0 add a --fakechain argument for tests (moneromooo-monero) eee44e6 unit_tests: fix block reward test using post hard fork settings (moneromooo-monero) 595893f blockchain: log block (not chain) height in "BLOCK SUCCESFULLY ADDED" (moneromooo-monero) 2369968 blockchain: fix off by one in get_blocks (moneromooo-monero) 8af913a db_lmdb: implement BlockchainLMDB::reset (moneromooo-monero) 4833f4f db_bdb: implement BlockchainBDB::reset (moneromooo-monero) 18bf06e tx_pool: fix "minumim" typo in message (moneromooo-monero) 44f1267 tests: fix a typo in test name (moneromooo-monero) 1494557 db_lmdb: create all needed directories, not just the leaf one (moneromooo-monero) 015b68a db_bdb: create all needed directories, not just the leaf one (moneromooo-monero) f141869 tests: remove data-dir argument registration (moneromooo-monero)
2015-12-13Merge pull request #530Riccardo Spagni1-121/+121
0198306 Stop displaying internal commands for --help (luigi1111) 189d516 simplewallet help & error cleanup (luigi1111)
2015-12-13posix_daemonizer: only create the main daemon object in the last childmoneromooo-monero1-1/+1
This prevents the intermediate thread from exiting properly, as fork creates a child process with only one thread, so any existing data_logger thread will not be in the child. Since this thread sets a flag the data_logger dtor blocks on, all children threads will hang on exit.
2015-12-13Add LMDB error string to database transaction exception messagewarptangent1-68/+74
When throwing an exception from being unable to begin an LMDB transaction, include the reason. It's often been due to a write transaction attempted within a write transaction (batch mode), but there can be other reasons such as write transaction attempted while database was opened read only, or environment's map needs to be resized.
2015-12-13add a --fakechain argument for testsmoneromooo-monero6-8/+23
The core tests use the blockchain, and reset it to be able to add test data to it. This does not play nice with the databases, since those will save that data without an explicit save call. We add a fakechain flag that the tests will set, which tells the core and blockchain code to use a separate database, as well as skip a few things like checkpoints and fixup, which only make sense for real data.
2015-12-13blockchain: log block (not chain) height in "BLOCK SUCCESFULLY ADDED"moneromooo-monero1-1/+1
This makes it log the same height as the original code, which is less confusing when comparing behaviors.
2015-12-13blockchain: fix off by one in get_blocksmoneromooo-monero1-1/+1
2015-12-13db_lmdb: implement BlockchainLMDB::resetmoneromooo-monero1-1/+27
It is needed by the core tests
2015-12-13db_bdb: implement BlockchainBDB::resetmoneromooo-monero1-1/+40
It is needed by the core tests
2015-12-13tx_pool: fix "minumim" typo in messagemoneromooo-monero1-1/+1
2015-12-13db_lmdb: create all needed directories, not just the leaf onemoneromooo-monero1-1/+1
2015-12-13db_bdb: create all needed directories, not just the leaf onemoneromooo-monero1-1/+1
2015-12-11Stop displaying internal commands for --helpluigi11111-1/+1
Displaying in-program commands with --help doesn't match daemon behaviour (or make sense)
2015-12-11simplewallet help & error cleanupluigi11111-120/+120
Typos, grammar, consistency. I don't claim to have gotten everything.
2015-12-10Fix data refs in read-only txnsHoward Chu1-16/+42
Data is only guaranteed to be valid within the lifetime of a txn. You cannot use data returned from LMDB after the txn ends. Also, fixed a missing txn.commit BlockchainLMDB::get_tx_unlock_time()
2015-12-09Merge pull request #527Riccardo Spagni7-69/+76
336b375 Register daemon command line arguments to core if they're used in core (moneromooo-monero)
2015-12-08Register daemon command line arguments to core if they're used in coremoneromooo-monero7-69/+76
This fixes coretests, which does not register daemon specific arguments, but uses core, which uses those arguments. Also gets rid of an unwanted dependency on daemon code from core.
2015-12-08Merge pull request #526Riccardo Spagni2-0/+12
2c83055 net_node: add a --offline argument (moneromooo-monero)
2015-12-08Merge pull request #525Riccardo Spagni1-8/+22
f746434 daemon: add mining status to the status command (moneromooo-monero)
2015-12-08Merge pull request #524Riccardo Spagni1-3/+3
1c8262c db_bdb: move log_set_config call before open (moneromooo-monero)
2015-12-08Merge pull request #523Riccardo Spagni1-0/+34
8620b31 db_bdb: support for libdb without DB_FORCESYNC (moneromooo-monero)
2015-12-08Merge pull request #522Riccardo Spagni1-2/+11
34e3889 p2p: failure to load p2pstate.bin is not fatal anymore (moneromooo-monero)
2015-12-08Merge pull request #520Riccardo Spagni7-0/+605
a98e976 blockchain_db: fixup missing key images in early DB version (moneromooo-monero)
2015-12-07net_node: add a --offline argumentmoneromooo-monero2-0/+12
It will not try to connect to the monero network, nor listen
2015-12-07daemon: add mining status to the status commandmoneromooo-monero1-8/+22
2015-12-07db_bdb: move log_set_config call before openmoneromooo-monero1-3/+3
This is a precaution for older Berkeley DB versions. - smooth reports an issue running with 4.7: DB_ENV->log_set_config: DB_LOG_IN_MEMORY: method not permitted after handle's open method - this works just fine with 5.3 - we do not use DB_LOG_IN_MEMORY, but we use DB_LOG_AUTO_REMOVE - libdb docs say some flags must be set before open, and some may be set at any time, but never say some must be set after open - moving the call to log_set_config before open works with 5.3 Therefore, it seems best to move the call before open.
2015-12-07db_bdb: support for libdb without DB_FORCESYNCmoneromooo-monero1-0/+34
2015-12-07p2p: failure to load p2pstate.bin is not fatal anymoremoneromooo-monero1-2/+11
Clear any partially loaded data, and start with a default config
2015-12-06blockchain_db: fixup missing key images in early DB versionmoneromooo-monero7-0/+605
Early DB versions did not store key images for inputs if the transaction spending them had no outputs (ie, all fee). This is not correct, as this would allow these outputs to be double spent. This was fixed in 533acc30eda7792c802ea8b6417917fa99b8bc2b a few months ago, but databases having synced blocks 2021612 and 685498 with a faulty version will be missing those key images in the spent keys database. This code checks for this, and adds those key images if they are missing.
2015-12-05wallet: make the wallet refresh type a wallet settingmoneromooo-monero4-34/+93
instead of a command line setting. It makes sense that is is a long lived setting.
2015-12-05wallet: default auto-refresh to true for old walletsmoneromooo-monero1-0/+1
2015-12-05Merge pull request #518Riccardo Spagni3-0/+40
1965fce wallet: add a stop_wallet RPC call (moneromooo-monero)
2015-12-05blockchain_db: make the indexing base a BlockchainDB virtual functionmoneromooo-monero3-3/+6
2015-12-05wallet: add a stop_wallet RPC callmoneromooo-monero3-0/+40
2015-12-05blockchain_dump: fix output key dump for BDB 1-based indicesmoneromooo-monero1-2/+5
Berkeley DB uses 1 based indices for RECNO databases, and the implementation of BlockchainDB for Berkeley DB assumes 1 based indices are passed to the API, whereas the LMDB one assumes 0 based indices. This is all internally consisteny, but since the BDB code stores 1 based indices in the database, external users have to be aware of this, as the indices will be off by one depending on which DB is used.
2015-12-04db_bdb: read 32 bit heights from keysmoneromooo-monero1-1/+1
Keys in Berkeley DB are 32 bits. We don't want to read random bits in the high part.
2015-11-30Merge pull request #515Riccardo Spagni1-0/+5
0921f5b util: use putenv instead of setenv for mingw (moneromooo-monero)
2015-11-30wallet2: default auto-refresh to true for preexisting walletsmoneromooo-monero1-1/+1
2015-11-30Revert "Merge pull request #506"Riccardo Spagni1-2/+2
This reverts commit c6bf73131aaf804cb17f24c856f826be2761a566, reversing changes made to 8a52cf4055d247dd4b162985c931e99683992e3c.
2015-11-30Merge pull request #512Riccardo Spagni1-8/+8
36a298c simplewallet: add tr markers in a few missing user visible strings (moneromooo-monero)
2015-11-29wallet: cancellable refreshmoneromooo-monero5-14/+58
^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-30Merge pull request #511Riccardo Spagni1-1/+1
66849ac simplewallet: swap colors in show_transfers (moneromooo-monero)
2015-11-29simplewallet: add tr markers in a few missing user visible stringsmoneromooo-monero1-8/+8
2015-11-30Merge pull request #509Riccardo Spagni1-0/+8
3030e3e wallet2: remove confirmed transactions from detached blocks (moneromooo-monero)
2015-11-30Merge pull request #507Riccardo Spagni4-11/+122
62e49a5 wallet: optional automatic refresh from the daemon (moneromooo-monero)
2015-11-30Merge pull request #506Riccardo Spagni1-2/+2
e45a8c9 core: serialize block major/minor versions as bytes, not varints (moneromooo-monero)
2015-11-30Merge pull request #505Riccardo Spagni2-12/+22
7574297 core_rpc_server: add a --restricted-rpc option (moneromooo-monero)
2015-11-30Merge pull request #504Riccardo Spagni2-25/+117
9ee48e9 wallet2: speed up wallet refresh for large miners (moneromooo-monero) 4905903 wallet2: parallelize pulling blocks and processing them on refresh (moneromooo-monero) d0eaf1d wallet2: maintain the short chain manually when refreshing (moneromooo-monero) a4e9506 wallet2: split pull blocks between pulling and processing (moneromooo-monero)
2015-11-30Merge pull request #503Riccardo Spagni3-2/+4
55e5a33 rpc: pass current block target in rpc (moneromooo-monero)
2015-11-29simplewallet: swap colors in show_transfersmoneromooo-monero1-1/+1
Green is now used for incoming transfers, and magenta for outgoing transfers. This is consistent to the scheme used by other logging.
2015-11-29wallet2: remove confirmed transactions from detached blocksmoneromooo-monero1-0/+8
2015-11-28wallet2: speed up wallet refresh for large minersmoneromooo-monero1-14/+47
2015-11-28wallet: optional automatic refresh from the daemonmoneromooo-monero4-11/+122
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-27core: serialize block major/minor versions as bytes, not varintsmoneromooo-monero1-2/+2
This allows them to be saved as a fixed (one byte) chunk whatever the value. Using a varint will use two bytes as the high bit gets set. This is backward compatible with current usage (0-2 values).
2015-11-27core_rpc_server: add a --restricted-rpc optionmoneromooo-monero2-12/+22
It does not expose the RPC for commands like start_mining, etc (ie, commands a public node operator might want to be restricted)
2015-11-27wallet2: parallelize pulling blocks and processing them on refreshmoneromooo-monero2-13/+49
This needed locking the use of m_http_client, to avoid collisions in I/O.
2015-11-27wallet2: maintain the short chain manually when refreshingmoneromooo-monero2-4/+17
2015-11-27wallet2: split pull blocks between pulling and processingmoneromooo-monero2-10/+20
2015-11-26rpc: pass current block target in rpcmoneromooo-monero3-2/+4
This fixes the hash rate being wrong on testnet after the switch to 2 minute blocks
2015-11-26add RPC calls and commands to get/set bansmoneromooo-monero11-4/+302
2015-11-25net_node: allow bans for custom amounts of timemoneromooo-monero2-4/+4
m_blocked_ips now stores the unblocking time, rather than the blocking time. Also change > to >=, since banning for 0 seconds should not ban
2015-11-25util: use putenv instead of setenv for mingwmoneromooo-monero1-0/+5
2015-11-24Merge pull request #501Riccardo Spagni9-30/+142
d887c18 hardfork: fix more major/minor issues (moneromooo-monero) 3b47ca2 hardfork: fix rescan on load (moneromooo-monero) 4cea2b1 Add IP blocking for misbehaving nodes (adapted from Boolberry) (Javier Smooth) 9c64b12 quiet down p2p logging a bit (Javier Smooth) 53c75ab blockchain: log versions as numbers, not characters (moneromooo-monero) edade8d hardfork: fix actual/voting confusion (moneromooo-monero)
2015-11-24Merge pull request #500Riccardo Spagni1-1/+1
06c8b94 daemon: fix blockchain height display not updating after sync (moneromooo-monero)
2015-11-24Merge pull request #499Riccardo Spagni2-0/+196
410c6cf cn_deserialize: a new tool to decode blocks and transactions (moneromooo-monero)
2015-11-24Merge pull request #498Riccardo Spagni1-0/+1
3d0b3c5 add recent static checkpoint (Javier Smooth)
2015-11-24Merge pull request #497Riccardo Spagni4-40/+262
9b945f5 wallet: make the refresh optimizations selectable via command line (moneromooo-monero) d2c0313 wallet: speedup refresh from daemon (moneromooo-monero) ea707c7 wallet2: minor cleanup (moneromooo-monero) 55a2da7 wallet2: speedup refresh a bit (moneromooo-monero)
2015-11-24hardfork: fix more major/minor issuesmoneromooo-monero3-24/+26
Also add some more tests, and rename some instances of "version" and "add" for clarity. NOTE: the starting height values are sometimes wrong. I suspect this is due to the hard fork reorg code being buggy, since they're good when syncing after the fact. However, they're not actually used by the consensus code, so I'm ignoring this for now, but this needs debugging.
2015-11-23hardfork: fix rescan on loadmoneromooo-monero1-1/+1
2015-11-23Add IP blocking for misbehaving nodes (adapted from Boolberry)Javier Smooth6-2/+107
With minor cleanup and fixes (spelling, indent) by moneromooo
2015-11-23quiet down p2p logging a bitJavier Smooth1-1/+1
2015-11-23blockchain: log versions as numbers, not charactersmoneromooo-monero1-1/+1
2015-11-23hardfork: fix actual/voting confusionmoneromooo-monero1-3/+8
2015-11-23daemon: fix blockchain height display not updating after syncmoneromooo-monero1-1/+1
2015-11-22cn_deserialize: a new tool to decode blocks and transactionsmoneromooo-monero2-0/+196
2015-11-22add recent static checkpointJavier Smooth1-0/+1
2015-11-22wallet: make the refresh optimizations selectable via command linemoneromooo-monero4-6/+62
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-22Merge pull request #495Riccardo Spagni3-5/+8
328636c fixed testnet fork point, added comment data back in (Riccardo Spagni) aed3038 disable time-stats by default, tweak fast-block-sync description (Riccardo Spagni) 8fe1111 update v2 testnet fork height (Riccardo Spagni) 4d74510 checkpoints update (Riccardo Spagni)
2015-11-22wallet: speedup refresh from daemonmoneromooo-monero2-38/+59
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-22wallet2: minor cleanupmoneromooo-monero1-7/+4
- use std::vector::std::deque to not leak when exceptions happen - use std::unique_ptr instead of the deprecated std::auto_ptr
2015-11-22wallet2: speedup refresh a bitmoneromooo-monero2-3/+151
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-22fixed testnet fork point, added comment data back inRiccardo Spagni1-3/+3
2015-11-22Merge pull request #496Riccardo Spagni4-32/+130
db1fb66 wallet: storing outgoing tx info now defaults to enabled (moneromooo-monero) 9156ba3 wallet: rename store-tx-keys to store-tx-info (moneromooo-monero) b3d4d41 wallet: improve show_transfers (moneromooo-monero) 725ae4e wallet: use incoming blocks to keep track of payments too (moneromooo-monero) 00790a8 simplewallet: lessen display flicker confusion (moneromooo-monero)
2015-11-22wallet: storing outgoing tx info now defaults to enabledmoneromooo-monero1-2/+2
The info is stored encrypted, and is pretty useful, often after the fact.
2015-11-22wallet: rename store-tx-keys to store-tx-infomoneromooo-monero4-18/+19
With backward compatibility
2015-11-22wallet: improve show_transfersmoneromooo-monero3-14/+89
More information is now saved and displayed
2015-11-21wallet: use incoming blocks to keep track of payments toomoneromooo-monero3-5/+27
2015-11-21disable time-stats by default, tweak fast-block-sync descriptionRiccardo Spagni1-2/+2