aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-12-31fixed copyrights with bad year referencesRiccardo Spagni9-9/+9
2015-12-31Merge pull request #581Riccardo Spagni2-7/+2
10ae003 isblank doesn't need a special case test (Howard Chu) a090ee9 Fix 3edbf57b62feeaba1f31683f24b9d76d75e03902 (Howard Chu)
2015-12-31Merge pull request #580Riccardo Spagni1-1/+1
1813736 unit_tests: remove an unused variable (moneromooo-monero) 70dd346 unit_tests: fix hardfork test build (moneromooo-monero)
2015-12-31Merge pull request #579Riccardo Spagni11-37/+130
576effe blockchain: kill ioservice on scope end, rather than manually (moneromooo-monero) ed5d017 miner: minor fixes on stop (moneromooo-monero) b245215 core_tests: deinit core before destroying it (moneromooo-monero) bc8a52e wallet: add a rescan_bc command and rescan_blockchain RPC (moneromooo-monero) 92ef6b5 wallet: protect against exceptions in the block pull thread (moneromooo-monero) af21061 net_peerlist: move a couple functions from public to private (moneromooo-monero)
2015-12-31isblank doesn't need a special case testHoward Chu1-6/+1
2015-12-31Fix 3edbf57b62feeaba1f31683f24b9d76d75e03902Howard Chu1-1/+1
The test for isblank was being ignored
2015-12-30unit_tests: remove an unused variablemoneromooo-monero1-1/+0
2015-12-30unit_tests: fix hardfork test buildmoneromooo-monero1-0/+1
The dummy blockchain class needed to have the newly added is_read_only virtual function.
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-30core_tests: deinit core before destroying itmoneromooo-monero1-1/+3
This fixes a use after free by ioservice threads
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-30Merge pull request #578Riccardo Spagni101-3175/+4811
3edbf57 fix missing unbound tests (Riccardo Spagni) 2d43ae8 update unbound, fix unbound openssl issue on OS X (Riccardo Spagni)
2015-12-30fix missing unbound testsRiccardo Spagni2-1/+9
2015-12-30update unbound, fix unbound openssl issue on OS XRiccardo Spagni101-3175/+4803
2015-12-30Merge pull request #577Riccardo Spagni85-2575/+6420
32a2633 no longer need to pass the size to rapidjson (Riccardo Spagni) bd8e0fd add missing miniupnpc files, modify cmake to not build miniupnpc tests and to fix an issue with finding miniupnpcstrings (Riccardo Spagni) 7da9905 updated miniupnpc (Riccardo Spagni)
2015-12-30no longer need to pass the size to rapidjsonRiccardo Spagni31-1142/+3762
2015-12-30add missing miniupnpc files, modify cmake to not build miniupnpc tests and ↵Riccardo Spagni11-2/+629
to fix an issue with finding miniupnpcstrings
2015-12-30updated miniupnpcRiccardo Spagni45-1452/+2050
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 #571Riccardo Spagni2-75/+75
b773e66 MDB_VL32 - resync with master (Howard Chu)
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-29Merge pull request #566Riccardo Spagni3-1/+85
50ee591 hardfork: ensure current_fork_index can not become negative on rescan (moneromooo-monero) b90e14d tests: add a unit test for canonical decomposed amounts (moneromooo-monero)
2015-12-29Merge pull request #1 from LMDB/crash-fixmoneromooo-monero1-5/+5
Tweak 45800a25e9374e63caaabba05c89585c86acd668
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-28MDB_VL32 - resync with masterHoward Chu2-75/+75
WIN32 - close file mapping handle in env_close cursor_unref - ignore cursor with empty stack
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-26tests: add a unit test for canonical decomposed amountsmoneromooo-monero2-0/+84
2015-12-26Merge pull request #565Riccardo Spagni9-63/+121
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-25tests: fix various tests by using parameters better suited to moneromoneromooo-monero3-8/+8
Either smaller coin values (as monero has smaller block rewards), or pre-hard fork values (full reward zone), or post-Bytecoin values (emission speed).
2015-12-25tests: fix some double spending testsmoneromooo-monero1-7/+8
Some tests assume the first output in a transaction goes to the recipient. However, it can be the change. When it is, the recipient's keys will not recognize this output. To fix this, we send all we have, to ensure there is no change, and the first output goes to the recipient. I'm not sure why this worked with Cryptonote. The tests sent 17 coins, which seems way smaller than the first Bytecoin block reward, so there would have been change too. Maybe outputs were not shuffled originally.
2015-12-25tests: use 255 as a "too high" block versionmoneromooo-monero1-2/+2
While the original cryptonote accepted only the current major version, we can accept higher ones.
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-monero4-3/+8
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 #564Riccardo Spagni58-16992/+2464
ba4e217 Update liblmdb, unify 32/64 sources (Howard Chu)
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 Spagni4-1/+36
791e7fb changed height to uint64_t (Brendan Telzrow) 4cd7913 added RPC wallet command getheight (Brendan Telzrow)
2015-12-25Update liblmdb, unify 32/64 sourcesHoward Chu58-16992/+2464
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-24Merge pull request #560Riccardo Spagni3-1/+171
6c86859 unit_tests: fix hard fork tests (moneromooo-monero) 8b0200a unit_tests: new test for IP blocking (moneromooo-monero)
2015-12-24Merge pull request #559Riccardo Spagni1-1/+1
47ca455 fixed missing parenthesis (Riccardo Spagni)
2015-12-24unit_tests: fix hard fork testsmoneromooo-monero1-1/+2
A couple stopped passing when the hard fork code was made to reject incoming hard fork versions it did not know about.
2015-12-24fixed missing parenthesisRiccardo Spagni1-1/+1
2015-12-24unit_tests: new test for IP blockingmoneromooo-monero2-0/+169
2015-12-24Merge pull request #558Riccardo Spagni1-3/+5
a004130 fix for 'failed to generate new wallet: failed to save file' error during wallet generation (Lex Kalinkin)
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 Telzrow4-1/+36
2015-12-23Merge pull request #556Riccardo Spagni2-4/+23
22581a0 epee: regularly cleanup connections we kept a reference to (moneromooo-monero)
2015-12-23epee: regularly cleanup connections we kept a reference tomoneromooo-monero2-4/+23
Since connections from the ::connect method are now kept in a deque to be able to cancel them on exit, this leaks both memory and a file descriptor. Here, we clean those up after 30 seconds, to avoid this. 30 seconds is higher then the 5 second timeout used in the async code, so this should be safe. However, this is an assumption which would break if that async code was to start relying on longer timeouts.
2015-12-22Merge pull request #554Riccardo Spagni1-2/+2
26c5118 README.md: mention --no-igd in the Tor paragraph (moneromooo-monero)
2015-12-22Merge pull request #553Riccardo Spagni3-2/+26
1e2f2d7 epee: fix hang on exit (moneromooo-monero) 17ff6f2 net_node: fix a hang on exit (moneromooo-monero)
2015-12-22README.md: mention --no-igd in the Tor paragraphmoneromooo-monero1-2/+2
2015-12-22epee: fix hang on exitmoneromooo-monero2-1/+25
When the boost ioservice is stopped, pending work notifications will not happen. This includes deadline timers, which would otherwise time out the now cancelled I/O operations. When this happens just after starting a new connect operation, this can leave that operations in a state where it won't receive either the completion notification nor a timeout, causing a hang. This is fixed by keeping a list of connections corresponding to the connect operations, and cancelling them before stopping the boost ioservice. Note that the list of these connections can grow unbounded, as they're never cleaned up. Cleaning them up would involve working out which connections do not have any pending work, and it's not quite clear yet how to go about this.
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 #551Riccardo Spagni1-0/+1
cfe15b8 Also set stacksize for Win32 not on MSVC (Howard Chu)
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 #549Riccardo Spagni1-2/+3
af1da98 README.md: fix Tor paragraph to use warptangent's TCP DNS changes (moneromooo-monero)
2015-12-22Merge pull request #547Riccardo Spagni16-42/+97
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 #546Riccardo Spagni1-0/+5
bd15f97 README.md: mention rlwrap usage (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-20Also set stacksize for Win32 not on MSVCHoward Chu1-0/+1
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-19README.md: mention rlwrap usagemoneromooo-monero1-0/+5
2015-12-19README.md: fix Tor paragraph to use warptangent's TCP DNS changesmoneromooo-monero1-2/+3
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-19epee: make log macros behave like statementsmoneromooo-monero1-22/+22
In particular, make this kind of thing do what one expects it to do: if (x) LOG_PRINT("True"); else LOG_PRINT("No");
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 Spagni26-3554/+3550
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 codebasewarptangent26-1356/+1354
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 #539Riccardo Spagni1-0/+5
bf45505 README.md: add a bit of info about using bitmonerod with Tor (moneromooo-monero)
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 Spagni4-6/+15
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-15Merge pull request #534Riccardo Spagni1-1/+1
fefc0b5 daemon: fix crash exiting with ^C (moneromooo-monero)
2015-12-14Revert connection limit to more customary 8Javier Smooth1-1/+1
2015-12-14README.md: add a bit of info about using bitmonerod with Tormoneromooo-monero1-0/+5
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-monero3-3/+12
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 Spagni13-41/+124
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-13Merge pull request #528Riccardo Spagni1-16/+42
d98d5e7 Fix data refs in read-only txns (Howard Chu)
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-13core_tests: fix ring_signature_1 testsmoneromooo-monero1-8/+8
They were trying to send too much monero, and thus failing. The parameters were set in such a way that the (simple) output gathering code could fulfill them for 4 block rewards for the original Bytecoin emission, but that does not work with monero so we need to use smaller values.
2015-12-13core_tests: bump default test fee to 0.02 moneromoneromooo-monero1-1/+1
The current monero consensus uses 0.01 per kB fees, so use enough for 2 kB transactions for now. It'll probably have to be either bumped further or changed to calculate the proper fee.
2015-12-13add a --fakechain argument for testsmoneromooo-monero7-8/+27
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-13unit_tests: fix block reward test using post hard fork settingsmoneromooo-monero1-15/+15
This would fail, as the post hard fork settings would yield different data, and the test expects pre hard fork 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-13tests: fix a typo in test namemoneromooo-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-09tests: remove data-dir argument registrationmoneromooo-monero1-1/+0
It is already registered in cryptonote::core::init_options, which we now call
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 #521Riccardo Spagni1-32/+37
4cede18 console_handler: catch exception inside the input loop (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-08Merge pull request #519Riccardo Spagni4-34/+94
c6cfe0f wallet: make the wallet refresh type a wallet setting (moneromooo-monero) fef2493 wallet: default auto-refresh to true for old wallets (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-06console_handler: catch exception inside the input loopmoneromooo-monero1-32/+37
This prevents an exception from existing the loop without calling the exit handler, if one is defined. The daemon defines one, which stops the p2p layer, and will only exit once the p2p layer is shut down. This would cause a hang upon an exception, as the input thread would have exited and the daemon would wait forever with no console user input.
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-05Merge pull request #517Riccardo Spagni5-3/+10
a3c5ca0 blockchain_db: make the indexing base a BlockchainDB virtual function (moneromooo-monero) a702118 blockchain_dump: fix output key dump for BDB 1-based indices (moneromooo-monero) 3bf35e1 db_bdb: read 32 bit heights from keys (moneromooo-monero)
2015-12-05blockchain_db: make the indexing base a BlockchainDB virtual functionmoneromooo-monero4-3/+7
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-30Merge pull request #514Riccardo Spagni1-1/+1
41029d6 wallet2: default auto-refresh to true for preexisting wallets (moneromooo-monero)
2015-11-30wallet2: default auto-refresh to true for preexisting walletsmoneromooo-monero1-1/+1
2015-11-30Merge pull request #513Riccardo Spagni1-2/+2
2ea8d73 Revert "Merge pull request #506" (Riccardo Spagni)
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-30Merge pull request #510Riccardo Spagni5-14/+58
d68a63e wallet: cancellable refresh (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 Spagni5-20/+143
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 Spagni3-14/+26
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-30Merge pull request #502Riccardo Spagni11-6/+304
38ceb73 add RPC calls and commands to get/set bans (moneromooo-monero) 7bc4dce net_node: allow bans for custom amounts of time (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-monero5-20/+143
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-monero3-14/+26
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