Age | Commit message (Collapse) | Author | Files | Lines |
|
Despite being C++, the stats object is allocated by the underlying
C layer using malloc(3).
|
|
- Blockchain should store if it's running on testnet or not
- moved loading compiled-in block hashes to its own function for clarity
- on handle_get_objects, should now correctly return false if a block's
transactions are missing
- replace instances of BOOST_FOREACH with C++11 for loops in Blockchain.
|
|
Some word triplets, such as "mugged names nail", are not valid
results from any 32 bit value. If used to decode a 32 bit value,
the result will therefore encode to a different word triplet.
Fix this by using random words converted from an actual random
bitstring, ensuring we always get valid triplets.
|
|
616df49 Revert "Merge pull request #632" (Riccardo Spagni)
|
|
This reverts commit 58f890652e86039e98dff2d48d217c9ea9e84eca, reversing
changes made to 39d73d2a27730e6a5844c259d81a0ed9d4ee3000.
|
|
8b3539b core: prevent the database from being used by multiple daemons (moneromooo-monero)
|
|
7fc6fa3 wallet: forbid dust altogether in output selection where appropriate (moneromooo-monero)
5e1a739 blockchain: log number of outputs available for a new tx (moneromooo-monero)
|
|
80882ac wallet: guard against exception in process_blocks (moneromooo-monero)
|
|
2cf8b32 wallet: guard against exception in process_blocks (moneromooo-monero)
|
|
bcac101 daemon: fix a few issues reported by valgrind (moneromooo-monero)
a7e8174 tx_pool: fix serialization of new relayed data (moneromooo-monero)
601ad76 hardfork: fix mixup in indexing variable in get_voting_info (moneromooo-monero)
444e22f blockchain: remove unused timer (moneromooo-monero)
7edfdd8 blockchain: fix m_sync_counter uninitialized variable use (moneromooo-monero)
d97582c epee: use generate_random_bytes for new random uuids (moneromooo-monero)
17c7c9c epee: remove dodgy random code that nobody uses (moneromooo-monero)
|
|
bf6d147 new flush_txpool command, and associated RPC call (moneromooo-monero)
6288295 rpc: add missing return on error when getting a tx (moneromooo-monero)
b7e37b7 simplewallet: show_transfers can now show just failed txes (moneromooo-monero)
b11539f wallet: detect and handle failed outgoing transfers (moneromooo-monero)
4b23714 tx_pool: serialize missing kept_by_block flag (moneromooo-monero)
|
|
A boost lock is used to determine whether more than one process
wants to access the database. The boost file_lock doesn't seem
to like locking directories, so we use an arbitrary file in it.
This allows to still run two daemons if they have different
database directories (ie, LMDB/BDB, different data directories).
|
|
|
|
|
|
If an exception occurs, the thread needs to be joined, or it
will be deleted while still live, and terminate the process.
|
|
If an exception occurs, the thread needs to be joined, or it
will be deleted while still live, and terminate the process.
|
|
In particular, ensure we check the status of RPC response structures,
as some functions will return success, but with a BUSY status, when
the daemon is not yet synced, and the response will not filled.
|
|
|
|
|
|
|
|
It counts the number of blocks added since last zeroing
|
|
Instead of using boost::uuids::generate_random, which uses
uninitialized stuff *on purpose*, just to annoy people who
use valgrind
|
|
in case someone might want to use it
|
|
It can flush a particular tx, or the whole pool (the RPC command
can flush a list of transactions too)
|
|
|
|
|
|
When a transaction is not found in the pool anymore, it is marked
as failed, and displayed as such in show_transfers.
|
|
|
|
94b98fb tx_pool: do not accept txes not in a block if they timed out before (moneromooo-monero)
eadbdf3 tx_pool: fix use of invalidated iterator (moneromooo-monero)
3b1d7e0 Fix V1/V2 use of hard fork related parameters (moneromooo-monero)
|
|
b8cc6d4 BlockchainBDB: Continue when tx has no outputs (warptangent)
b870746 BlockchainBDB: When removing, find amount output index fast by starting at end (warptangent)
1a5c3fa BlockchainBDB: Remove tx outputs in reverse order (warptangent)
|
|
f98fe46 MDB_VL32 change overflow page scan (Howard Chu)
|
|
This is intended to avoid cases where a timed out tx will be
re-relayed by another peer for which it has not timed out yet,
which would cause the tx to stay in the network's pool for a
long time (until all peers time it out before another one
tries to relay it again).
|
|
|
|
Some of it uses hardcoded height, which will need some thinking
for next (voted upon) fork.
|
|
See 24b66243c2767726ea4b279fcf447c7cd82c13e5
|
|
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" db. This is most noticeable for
HDDs.
See ffcf6bdb95abe2dab37d5f8d9acc134fdc6b4d36
|
|
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.
See f11def012f38106b0ffeb7010a2f749de1e5b640
|
|
Just check the requested page, don't worry about any other pages
|
|
afe2d1a add received time to print_pool and print_pool_sh (Riccardo Spagni)
|
|
7e65cc0 MDB_VL32 Fix off-by-one in mdb_midl_shrink (Howard Chu)
222e30e MDB_VL32 Fix another 32bit overflow (Howard Chu)
3ca6e85 Tweak mdb_strerror msg buffer (Howard Chu)
78ad970 MDB_VL32 Fix d2a5f72f73e0e4030b521086b13b8c8efaf9ca9e (Howard Chu)
2aa0b3b updated gtest (added missing files) (Riccardo Spagni)
83d586c updated gtest (Riccardo Spagni)
fdc10ff even more typos (Henning Kopp)
da5415a more typos fixed (Henning Kopp)
a8c6f15 fixed typo (Henning Kopp)
423c7fe simplewallet: remove leftover command line refresh-type handling (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
VirtualAlloc is not for MDB_VL32
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3b0f67c updated gtest (added missing files) (Riccardo Spagni)
4df6aa5 updated gtest (Riccardo Spagni)
|
|
|
|
|
|
e514f0a even more typos (Henning Kopp)
9abc4b8 more typos fixed (Henning Kopp)
0693f3c fixed typo (Henning Kopp)
|
|
f76f656 simplewallet: remove leftover command line refresh-type handling (moneromooo-monero)
|
|
15d9ac8 wallet2: update spent comparison now that we have two spent states (moneromooo-monero)
|
|
64f4cd9 My markdown-fu sucks :P (me0wmix)
a6794e2 Instructions updated to include g++ package and omit optional packages (me0wmix)
34ebfe3 Last fixups in the Cmake stuff and better default build instruction (me0wmix)
82ecb3f More formatting fixes to instructions (me0wmix)
efc771d Corrected formatting on OpenBSD instructions (me0wmix)
c965bf4 Added/corrected OpenBSD build instructions. (me0wmix)
28f95eb OpenBSD support for Monero. (me0wmix)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1cff397 WIN64 needs off_t redefined too (Howard Chu)
|
|
24b6624 db_lmdb: Continue when tx has no outputs (warptangent)
|
|
|
|
|
|
d2a5f72 Fix --db-sync-mode on Windows64 (Howard Chu)
4cf6e2b Fix 30f92f5630bbc7507708275a29a9ae7acf633a5b (Howard Chu)
|
|
only "fastest" mode was working, others would SEGV.
|
|
Needed to add the corresponding (dummy) method to unit test hardfork
|
|
30f92f5 Fix hf when import with verify off (Howard Chu)
|
|
Delete the hf tables, so the next open will rescan and regenerate
|
|
b9c7ba1 added checkpoints (Riccardo Spagni)
|
|
|
|
a583a96 bumped version to 0.9.1 for point release (Riccardo Spagni)
|
|
|
|
945ac78 hardfork: fix accepting v2 blocks too early (moneromooo-monero)
|
|
0100e95 'max limit of...' is redundant wording, rephrase (binaryFate)
80e3889 Print msg when successfully updating out_peers (binaryFate)
|
|
e98a3f2 Fix da0bce34 (Howard Chu)
|
|
0b6be41 There has never been any such function "fnctl" (Howard Chu)
|
|
|
|
|
|
|
|
It was only a typo of fcntl. Get rid of this test.
|
|
Windows doesn't define a default linker
|
|
8ce12a9 Fix arm asm (Howard Chu)
94de39f Tweak arm6 flags (Howard Chu)
|
|
fcf31f3 Cleanup symbol clashes, stdlib header (Howard Chu)
|
|
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)
|
|
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)
|
|
About 10% faster than plain C mul128 on raspi1B
|
|
|
|
|
|
which fixes the status command via RPC too.
Turns out there are two versions of the GET_INFO call.
I'd never noticed before.
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a52cf36 fix: cmake parse error on Ubuntu 14.04 (moneroexamples)
|
|
7f8e5ce daemon: fix ban length using wrong parameter (moneromooo-monero)
|
|
a8caab1 unit_tests: initialize db object in ctor, not open (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
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
|
|
flags were being accumulated instead of being set.
Win32 was getting -O2 -DNDEBUG -Ofast -DNDEBUG etc...
Also for Win32, stay compatible to WinXP
|
|
|
|
open isn't actually called in those tests
|
|
|
|
|
|
e6dc448 updated readme, note CMake minimum version increase (Riccardo Spagni)
5c71f5d update version (Riccardo Spagni)
|
|
|
|
|
|
1e07110 Nicer looking exit when blockchain.bin is found (moneromooo-monero)
|
|
Do not print the exception message, and write the important bit
in red, since people will only read the last line otherwise.
|
|
40f97ce core: do not use the persistent pool state for tests (moneromooo-monero)
|
|
Fixes intermittent test failures when the pool contains
unexpected transactions that were brought in from the
live pool.
|
|
88b0fb1 let miniupnp's cmakelist handle defaults (Riccardo Spagni)
|
|
|
|
5c67c48 wallet: don't forget to close the file after storing cache (moneromooo-monero)
|
|
Also add some flags to open, as epee's save_string_to_file does,
to truncate file, etc.
|
|
2c82eb7 fix miniupnpc cmakelist (Riccardo Spagni)
|
|
|
|
de03926 updated copyright year (Riccardo Spagni)
810a112 fixed copyrights with bad year references (Riccardo Spagni)
|
|
|
|
|
|
10ae003 isblank doesn't need a special case test (Howard Chu)
a090ee9 Fix 3edbf57b62feeaba1f31683f24b9d76d75e03902 (Howard Chu)
|
|
1813736 unit_tests: remove an unused variable (moneromooo-monero)
70dd346 unit_tests: fix hardfork test build (moneromooo-monero)
|
|
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)
|
|
|
|
The test for isblank was being ignored
|
|
|
|
The dummy blockchain class needed to have the newly added
is_read_only virtual function.
|
|
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.
|
|
- 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.
|
|
This fixes a use after free by ioservice threads
|
|
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.
|
|
This can happen when the daemon exits, which would also cause
the wallet to crash via unhandled exception
|
|
They do not take the object lock, and are meant to be used only
internally, called from a function which does take the lock.
|
|
3edbf57 fix missing unbound tests (Riccardo Spagni)
2d43ae8 update unbound, fix unbound openssl issue on OS X (Riccardo Spagni)
|
|
|
|
|
|
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)
|
|
|
|
to fix an issue with finding miniupnpcstrings
|
|
|
|
61befc2 wallet: store cache to file without unnecessary memory buffer (moneromooo-monero)
|
|
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)
|
|
0953355 blockchain_db: inform user about new format if blockchain.bin is found (moneromooo-monero)
|
|
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)
|
|
b773e66 MDB_VL32 - resync with master (Howard Chu)
|
|
fc34132 Remove assert from status command (hyc)
|
|
ee9d71e BlockchainDB: skip fixup check if read-only database (warptangent)
|
|
b0541a5 blockchain: remove obsolete containers (moneromooo-monero)
18a5211 blockchain: Fix height in call to on_blockchain_dec (moneromooo-monero)
|
|
|
|
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)
|
|
Tweak 45800a25e9374e63caaabba05c89585c86acd668
|
|
trivial cleanup
|
|
Reported by saddam
|
|
|
|
Fixes a use after free
|
|
WIN32 - close file mapping handle in env_close
cursor_unref - ignore cursor with empty stack
|
|
reported by saddam
|
|
Noticed by hyc
Also set m_open to false when closed
|
|
|
|
Crashes every time...
|
|
|
|
|
|
It was a noop anyway
|
|
|
|
|
|
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)
|
|
Either smaller coin values (as monero has smaller block rewards),
or pre-hard fork values (full reward zone), or post-Bytecoin values
(emission speed).
|
|
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.
|
|
While the original cryptonote accepted only the current major
version, we can accept higher ones.
|
|
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.
|
|
|
|
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.
|
|
Probably paranoid and unnecessary
|
|
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.
|
|
It was missing in the port to DB.
This is actually a noop, so should not have functional changes.
|
|
When rolling over more than one block, the db height will decrease,
but the split height should be constant, as per the original code.
|
|
It was present in the original code
|
|
This can happen when trying to find an amount that does not exist,
and fixes a core test.
|
|
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.
|
|
ba4e217 Update liblmdb, unify 32/64 sources (Howard Chu)
|
|
d4c2fae BlockchainDB: Remove txs in reverse order (warptangent)
|
|
ffcf6bd BlockchainLMDB: When removing, find amount output index fast by starting at end (warptangent)
f11def0 BlockchainLMDB: Remove tx outputs in reverse order (warptangent)
|
|
791e7fb changed height to uint64_t (Brendan Telzrow)
4cd7913 added RPC wallet command getheight (Brendan Telzrow)
|