aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-01-16Fix --db-sync-mode on Windows64Howard Chu1-1/+1
only "fastest" mode was working, others would SEGV.
2016-01-16Fix 30f92f5630bbc7507708275a29a9ae7acf633a5bHoward Chu1-0/+1
Needed to add the corresponding (dummy) method to unit test hardfork
2016-01-15Merge pull request #613v0.9.1Riccardo Spagni6-0/+30
30f92f5 Fix hf when import with verify off (Howard Chu)
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-15Merge pull request #612Riccardo Spagni1-0/+8
b9c7ba1 added checkpoints (Riccardo Spagni)
2016-01-15added checkpointsRiccardo Spagni1-0/+8
2016-01-15Merge pull request #611Riccardo Spagni1-1/+1
a583a96 bumped version to 0.9.1 for point release (Riccardo Spagni)
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-15Merge pull request #609Riccardo Spagni3-2/+4
0100e95 'max limit of...' is redundant wording, rephrase (binaryFate) 80e3889 Print msg when successfully updating out_peers (binaryFate)
2016-01-15Merge pull request #608Riccardo Spagni2-0/+2
e98a3f2 Fix da0bce34 (Howard Chu)
2016-01-15Merge pull request #607Riccardo Spagni1-1/+0
0b6be41 There has never been any such function "fnctl" (Howard Chu)
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-12There has never been any such function "fnctl"Howard Chu1-1/+0
It was only a typo of fcntl. Get rid of this test.
2016-01-12Fix da0bce34Howard Chu2-0/+2
Windows doesn't define a default linker
2016-01-12Merge pull request #606Riccardo Spagni2-25/+65
8ce12a9 Fix arm asm (Howard Chu) 94de39f Tweak arm6 flags (Howard Chu)
2016-01-12Merge pull request #605Riccardo Spagni2-2/+5
fcf31f3 Cleanup symbol clashes, stdlib header (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-12Merge pull request #601Riccardo Spagni5-11/+64
664dc42 rpc: fix missing target information in RPC call (moneromooo-monero) eaf4dcd daemon: fix status command when run from command line (moneromooo-monero) 67bbb56 wallet2: decide at runtime which upper tx size to use (moneromooo-monero) a44d94d rpc: is_key_image_spent now checks the tx pool too (moneromooo-monero)
2016-01-11Fix arm asmHoward Chu1-24/+64
About 10% faster than plain C mul128 on raspi1B
2016-01-11Tweak arm6 flagsHoward Chu1-1/+1
2016-01-11Cleanup symbol clashes, stdlib headerHoward Chu2-2/+5
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-03Merge branch 'LMDB-tweaks'Riccardo Spagni7-25/+23
2016-01-03fixed conflictsRiccardo Spagni7-25/+23
2016-01-03Merge pull request #595Riccardo Spagni1-2/+6
a52cf36 fix: cmake parse error on Ubuntu 14.04 (moneroexamples)
2016-01-03Merge pull request #594Riccardo Spagni1-1/+1
7f8e5ce daemon: fix ban length using wrong parameter (moneromooo-monero)
2016-01-03Merge pull request #593Riccardo Spagni1-1/+2
a8caab1 unit_tests: initialize db object in ctor, not open (moneromooo-monero)
2016-01-03ARMv7 optimization flags are too aggressiveHoward Chu1-2/+2
2016-01-03ARM chars are unsignedHoward Chu1-1/+1
2016-01-03Use CMAKE_LINKER, not hardcoded "ld"Howard Chu2-4/+4
2016-01-03Avoid cmake-3.x block comment syntaxHoward Chu1-4/+6
2016-01-03fix: cmake parse error on Ubuntu 14.04moneroexamples1-2/+6
Parse error. Expected a command name, got unquoted argument with text "]]" Reason: Block comments are avaliable in cmake 3.0 not in 2.8 which is used in Ubuntu 14.04
2016-01-02Fix release flagsHoward Chu1-2/+6
flags were being accumulated instead of being set. Win32 was getting -O2 -DNDEBUG -Ofast -DNDEBUG etc... Also for Win32, stay compatible to WinXP
2016-01-02daemon: fix ban length using wrong parametermoneromooo-monero1-1/+1
2016-01-02unit_tests: initialize db object in ctor, not openmoneromooo-monero1-1/+2
open isn't actually called in those tests
2016-01-02IP_TOS not supported before Windows7Howard Chu1-1/+4
2016-01-02Get rid of doubly-defined NDEBUGHoward Chu1-7/+0
2016-01-01Merge pull request #588v0.9.0Riccardo Spagni13-17/+22
e6dc448 updated readme, note CMake minimum version increase (Riccardo Spagni) 5c71f5d update version (Riccardo Spagni)
2016-01-01updated readme, note CMake minimum version increaseRiccardo Spagni1-2/+6
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-31Merge pull request #586Riccardo Spagni2-1/+7
40f97ce core: do not use the persistent pool state for tests (moneromooo-monero)
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 #585Riccardo Spagni2-4/+1
88b0fb1 let miniupnp's cmakelist handle defaults (Riccardo Spagni)
2015-12-31let miniupnp's cmakelist handle defaultsRiccardo Spagni2-4/+1
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-31Merge pull request #583Riccardo Spagni1-3/+11
2c82eb7 fix miniupnpc cmakelist (Riccardo Spagni)
2015-12-31fix miniupnpc cmakelistRiccardo Spagni1-3/+11
2015-12-31Merge pull request #582Riccardo Spagni348-337/+337
de03926 updated copyright year (Riccardo Spagni) 810a112 fixed copyrights with bad year references (Riccardo Spagni)
2015-12-31updated copyright yearRiccardo Spagni339-328/+328
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.