Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
77afe91 unit_tests: fix build with boost 1.69 (moneromooo-monero)
|
|
|
|
080ea73 easylogging++: fix build with glibc (moneromooo-monero)
|
|
|
|
8330e77 monerod can now sync from pruned blocks (moneromooo-monero)
|
|
ae34e1b unit_tests: fix ringdb unit tests (moneromooo-monero)
|
|
1c600a4 Fix randomx cache selection for RPCs (hyc)
2675cf4 Update to RandomX v1.1.3, simplify (hyc)
f54301d Fix for miners on reorg (hyc)
|
|
24473d7 build: fix MinGW GUI dependencies build (xiphon)
|
|
f3b65c6 Request a thread stack size that is large enough for unbound (omartijn)
|
|
6d378d9 easylogging++: always omit ANSI codes when colour is not supported (moneromooo-monero)
|
|
74a23e9 protocol: only print sync complete message when out of precompiled hashes (moneromooo-monero)
|
|
5bcbd97 Disable easylogging crash log on non-glibc libraries (omartijn)
|
|
2a7d915 Fixed i2p/tor tx flooding bug (white noise disabled) (vtnerd)
|
|
4371791 epee: implement handshake timeout for SSL connections (xiphon)
|
|
7d81850 epee: fix network timeouts in blocked_mode_client (xiphon)
|
|
Make sure dataset gets re-init'd if a reorg changes the epoch
|
|
We don't need to detect if the cache has changed, just always
call to set it on the VM. The call will be a no-op if the cache
hasn't changed.
|
|
|
|
Was using the wrong cache slot, and returning invalid PoW hashes to RPC clients
|
|
9baf2a7 build: link wallet_merged against blockchain_db and hardforks obj (xiphon)
|
|
dbc7c44 README: fix TOC link (selsta)
|
|
1b91beb abstract_tcp_server2: fix lingering connections (moneromooo-monero)
|
|
7336864 refresh language files (erciccione)
|
|
bd9c12e simplewallet: remove erroneously added line under subaddress-lookahead (stoffu)
|
|
b9da023 blockchain: keep block template timestamp not below recent median (moneromooo-monero)
|
|
6bbc646 Fix bug in mempool get_transaction_stats histogram calculation (tomsmeding)
|
|
6185d6d README: Add deps for translations and hardware wallet support (glv2)
|
|
fdc00d0 unit tests: replace global var with lambda returning static local var (stoffu)
|
|
c89f7ef wallet2_api: fix load unsigned tx from file error propagation (xiphon)
|
|
Coverity fixes [3a81639, 1bd962d, 2825f07, d099658, d46f701, cd57a10] (anonimal)
|
|
5f8524e Streamline build setup (hyc)
|
|
|
|
If the peer (whether pruned or not itself) supports sending pruned blocks
to syncing nodes, the pruned version will be sent along with the hash
of the pruned data and the block weight. The original tx hashes can be
reconstructed from the pruned txes and theur prunable data hash. Those
hashes and the block weights are hashes and checked against the set of
precompiled hashes, ensuring the data we received is the original data.
It is currently not possible to use this system when not using the set
of precompiled hashes, since block weights can not otherwise be checked
for validity.
This is off by default for now, and is enabled by --sync-pruned-blocks
|
|
|
|
|
|
81c2ad6d RandomX integration (Howard Chu)
|
|
Support RandomX PoW algorithm
|
|
fcfa6665 Don't set ARCH_ID if it's already set (Howard Chu)
|
|
Usually it's unset, but depends toolchain files set it explicitly
for cross-compiling. Don't override preset values. But make sure
it's set for all x86 / x86_64 builds, not just Linux.
Also make sure -std=c++11 is set for Darwin builds, not all
submodules were getting it consistently before.
|
|
31bf2e25 Revert "easylogging++: ensure it finds boost headers" (moneromooo-monero)
614d6b57 easylogging++: split strings manually (moneromooo-monero)
|
|
Unbound uses a 64 kb large character array on the stack, which
leads to a stack overflow for some libc implementations. musl
only gives 80 kb in total. This PR changes the stack size for
these threads to 1mb, which solves the segmentation fault.
|
|
This reverts commit 9a95827ea72574c3e861aa3167c0b96b9bae64b3.
|
|
Avoids cmake skullduggery
|
|
9a95827 easylogging++: ensure it finds boost headers (moneromooo-monero)
|
|
|
|
Use shorter, prefix-unique directory names
gitian-builder -> builder
gitian-sigs -> sigs
monero-binaries -> out
Just use builder/inputs/monero, no need for 2nd repo clone
|
|
8933955 epee: misc_log_ex.h can now be used in C code (moneromooo-monero)
|
|
|
|
use mfatal/merror/mwarning/minfo/mdebug/mtrace
|
|
7b076d5 p2p: fix bans taking port into account (moneromooo-monero)
|
|
3699544 cmake: add protolib to zmq dependency libs (stoffu)
|
|
Revert a96c1a4 and adc16d2 (moneromooo-monero)
|
|
ab2819a depends: attempt to fix readline (iDunk5400)
|
|
e09dbc6 depends: fix monero binaries Boost linking errors (iDunk5400)
|
|
ae32862 README: fix master branch spelling, it is not Master (moneromooo-monero)
|
|
This avoids most premature triggers
|
|
7de6671 Add the iwyu target to get information on unused headers (omartijn)
|
|
a444f06 blockchain: enforce 10 block age for spending outputs (moneromooo-monero)
|
|
11fa442 Makefile: add a top level debug target for ASAN (moneromooo-monero)
|
|
f9b3f6e Removed Berkeley DB and db switching logic (JesusRami)
|
|
2cd4fd8 Changed the use of boost:value_initialized for C++ list initializer (JesusRami)
4ad191f Removed unused boost/value_init header (whyamiroot)
928f4be Make null hash constants constexpr (whyamiroot)
|
|
0c55837 contrib: add a suppressions file for leak sanitizer (moneromooo-monero)
|
|
32f725d Properly format multiline logs (moneromooo-monero)
|
|
functional_tests (moneromooo-monero)
|
|
d066383 core: move hardforks into its own lib (moneromooo-monero)
|
|
- easylogging assumes certain non-standard headers and functions
- these function only exist in glibc
- compiling under linux without glibc thus broke compilation
|
|
So it can be used by others without encumbrance
|
|
|
|
Some custom wallet code apparently ignores this, which causes users
of that code to be fingerprinted
|
|
|
|
|
|
and add missing tests
|
|
|
|
|
|
Also fix part of the RPC results being returned as binary.
This makes the RPC backward incompatible.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
though not a very good test, but we don't have dust handy
|
|
|
|
|
|
|
|
As a side effect, colouring on Windows should now work
regardless of version
|
|
|
|
|
|
f0356f7 wallet2: enable ignoring fractional outputs also when sweeping (stoffu)
|
|
f91a06c Dropping cppzmq dependency; adding some zmq utils (vtnerd)
|
|
7d3bba5 wallet2_api: add missing parameter (selsta)
|
|
73f22c4 depends: fix MacOS build with Clang 3.7.1 (vtnerd)
|
|
928a540 updating Readme.md TOC (HarryMacfinned)
|
|
f380f69 simplewallet: warn if invalid default ring size is set and actually ignore the setting (stoffu)
|
|
495a7e5 rpc: don't include an address in mining_status when not mining (moneromooo-monero)
|
|
3407743 wallet_rpc_server: add locked field to get_transfers/get_{bulk_,}_payments (moneromooo-monero)
|
|
83ca764 wallet_rpc_server: call deinit on exit (moneromooo-monero)
|
|
6e46b06 cmake: ensure PYTHON_EXECUTABLE is set (moneromooo-monero)
|
|
1f1fff2 daemon: print mining algorithm in mining_status even when not mining (moneromooo-monero)
|
|
21f6c80 rpc: move a leftover light wallet RPC out of daemon RPC (moneromooo-monero)
|
|
11f13da blockchain: fix logging bad number of blocks if first one fails (moneromooo-monero)
19bfe7e simplewallet: fix warnings about useless std::move (moneromooo-monero)
|
|
2cb22d4 core: make the 'update probably needed soon' message less scary (moneromooo-monero)
|
|
26072f1 blockchain: forbid v1 coinbase from v12 (moneromooo-monero)
555dc7c core: from v12, require consistent ring size for mixable txes (moneromooo-monero)
d22dfb7 blockchain: reject rct signatures in coinbase txes from v12 (moneromooo-monero)
|
|
Resetting the timer after shutdown was initiated would keep
a reference to the object inside ASIO, which would keep the
connection alive until the timer timed out
|
|
Such a template would yield an invalid block, though would require
an attacker to have mined a long blockchain with drifting times
(assuming the miner's clock is roughly correct)
Fixed by crCr62U0
|
|
|
|
Needed for Ubuntu 19.04:
https://ubuntu.pkgs.org/19.04/ubuntu-universe-amd64/libnorm-dev_1.5.8+dfsg2-1_amd64.deb.html
|
|
|
|
This reverts commit a96c1a46d4b3854252de75cbe09458ad5d1aecb0.
|
|
This reverts commit adc16d2504d3e76b0115791caf10446684d45433.
|
|
|
|
|
|
updating the TOC
|
|
It would try to link against host system Boost libs when building outside gitian. Tested with x86_64-linux-gnu target.
|
|
Fixes assertion failure (curstate == 1) in random.c in debug mode
|
|
a5c7eeb unit_tests: fix build with CLANG 8 and boost 1.69 (moneromooo-monero)
|
|
5f4bd92 Fix Travis build on Windows + Mac (hyperreality)
|
|
e907305 ITS#9068 fix backslash escaping (hyc)
|
|
f56e160 unit_tests: Fix uninitialized values (liptakmatyas)
|
|
2ec455d wallet: fix mismatch between two concepts of 'balance' (moneromooo-monero)
|
|
cbdd76d readme: remove snap monero package and add debian (erciccione)
|
|
c4da1a2 wallet2: fix unset_ring tx retrieval checks (moneromooo-monero)
|
|
b51f4cd daemon: add pruned and publicrpc flags to print_pl (moneromooo-monero)
|
|
894cc81 wallet2: fix cold signing losing tx keys (moneromooo-monero)
|
|
9f68669 blockchain_blackball: add --historical-stat which prints historical stats of spent ratio (stoffu)
2425f27blockchain_blackball: use is_output_spent instead of ringdb.blackballed for spentness test (stoffu)
50813c1 ringdb: fix bug in blackballing (stoffu)
|
|
87d2f06 simplewallet: moan harder about untrusted nodes (moneromooo-monero)
|
|
cae488d p2p: reject incoming connections to self (moneromooo-monero)
|
|
063eebb daemon: implement 'set_bootstrap_daemon' command (xiphon)
|
|
e353e3d p2p: sanitize peer lists (moneromooo-monero)
|
|
2e26536 p2p: move log away from global (moneromooo-monero)
|
|
26f7a26 device: fix ledger requesting secret keys export twice (xiphon)
|
|
289d215 rpc: fix unitialized 'core_rpc_server::m_was_bootstrap_ever_used' (xiphon)
|
|
5a4c6cc daemon: fix merge error removing the 'never seen before' timestamp check (moneromooo-monero)
|
|
d046ca1 difficulty: fix check_hash on big endian (moneromooo-monero)
bdda084 epee: fix local/loopback checks on big endian (moneromooo-monero)
32c3834 storages: fix writing varints on big endian (moneromooo-monero)
516f7b9 storages: fix 'portable' storage on big endian (moneromooo-monero)
0e2fda5 unit_tests: fix levin unit test on big endian (moneromooo-monero)
4672b5c db_lmdb: print percentages as percentages, not ratios (moneromooo-monero)
54fd97a slow-hash: fix CNv2+ on big endian (moneromooo-monero)
c1fa4a7 boost: fix little/big endian compatibility (moneromooo-monero)
bc1144e Fix IP address serialization on big endian (moneromooo-monero)
|
|
|
|
|
|
The problem actually exists in two parts:
1. When sending chunks over a connection, if the queue size is
greater than N, the seed is predictable across every monero node.
>"If rand() is used before any calls to srand(), rand() behaves as if
it was seeded with srand(1). Each time rand() is seeded with the same seed, it
must produce the same sequence of values."
2. The CID speaks for itself: "'rand' should not be used for security-related
applications, because linear congruential algorithms are too easy to break."
*But* this is an area of contention.
One could argue that a CSPRNG is warranted in order to fully mitigate any
potential timing attacks based on crafting chunk responses. Others could argue
that the existing LCG, or even an MTG, would suffice (if properly seeded). As a
compromise, I've used an MTG with a full bit space. This should give a healthy
balance of security and speed without relying on the existing crypto library
(which I'm told might break on some systems since epee is not (shouldn't be)
dependent upon the existing crypto library).
|
|
Make readline actually compile, and make ncurses use existing terminfo data (if available).
|
|
|
|
The issue is triggered by the captured `this` in RPC server, which
passes reference to throwable `core_rpc_server`:
`core_rpc_server.cpp:164: m_bootstrap_daemon.reset(new bootstrap_daemon([this]{ return get_random_public_node(); }));`
The solution is to simply remove noexcept from the remaining `bootstrap_daemon`
constructors because noexcept is false in this context.
>"An exception of type "boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::asio::invalid_service_owner>>" is thrown but the throw list "noexcept" doesn't allow it to be thrown. This will cause a call to unexpected() which usually calls terminate()."
|
|
|
|
|
|
|
|
|
|
Simplify m_template initialization in miner
|
|
With this change, building the iwyu target will provide information
on unused headers, which can be removed to reduce compilation times.
|
|
One considers the blockchain, while the other considers the
blockchain and some recent actions, such as a recently created
transaction which spend some outputs, but isn't yet mined.
Typically, the "balance" command wants the latter, to reflect
the recent action, but things like proving ownership wants
the former.
This fixes a crash in get_reserve_proof, where a preliminary
check and the main code used two concepts of "balance".
|
|
Much easier to work with than the raw unlock_time field
|
|
IP addresses are stored in network byte order even on little
endian hosts
|
|
When no little/big endian flag is given to the writer, it stores
data in host endianness. When loading, if no flag is set, it also
assumes host endianness. This works as long as the loading and
writing are done on machines with the same endianness.
We change this to default to little endian when saving. This will
cause the loader to see the little endian flag, and swap endianness
when loading on a big endian machine. Similarly, writing on a big
endian machine will swap on save, and a little endian machine will
load little endian data.
|
|
|
|
|
|
|
|
|
|
|
|
IPv4 addresses are kept in network byte order in memory
|
|
|
|
2a41dc0 epee: fix connections not being properly closed in some instances (moneromooo-monero)
|
|
839fc62 reject setting lookahead major or minor to 0 (moneromoo-monero)
|
|
07cb087 blockchain: Fix alt chain generated coins overflow (iamamyth)
|
|
bdcdb0e Remove unused code under WINDWOS_PLATFORM guard (tomsmeding)
a84aa04 syncobj.h no longer defines shared_guard, so remove those define's (tomsmeding)
|
|
69465e3 cryptonote_protocol: fix '--no-sync', ignore new blocks and txes (xiphon)
|
|
082730b daemon: automatic public nodes discovering and bootstrap daemon switching (xiphon)
|
|
e3cff3d Gitian build script fixes for MacOS (jonathancross)
|
|
f26e663 Gitian build (mac, linux): gzip => bzip2 (jonathancross)
|
|
1a367d6 simplewallet: lock console on inactivity (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
bdfc63a Add ref-counted buffer byte_slice. Currently used for sending TCP data. (vtnerd)
3b24b1d Added support for 'noise' over I1P/Tor to mask Tx transmission. (vtnerd)
|
|
with the Cryptonight per-thread buffer
|
|
the setting
|
|
|
|
Best case is an address mined previously and it'll get returned,
worst case it was never initialized in the first place
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The 98th percentile position in the agebytes map was incorrectly
calculated: it assumed the transactions in the mempool all have unique
timestamps at second-granularity. This commit fixes this by correctly
finding the right cumulative number of transactions in the map suffix.
This bug could lead to an out-of-bounds write in the rare case that
all transactions in the mempool were received (and added to the mempool)
at a rate of at least 50 transactions per second. (More specifically,
the number of *unique* receive_time values, which have second-
granularity, must be at most 2% of the number of transactions in the
mempool for this crash to trigger.) If this condition is satisfied, 'it'
points to *before* the agebytes map, 'delta' gets a nonsense value, and
the value of 'i' in the first stats.histo-filling loop will be out of
bounds of stats.histo.
|
|
3a0451a MLSAG speedup and additional checks (SarangNoether)
|
|
a7d1577 build: fix depends Travis ncurses build, don't wipe CONFIG_SHELL (xiphon)
|
|
|
|
ac0a229 Fix Android build in Docker (hyperreality)
|
|
a63e212 Docker updated dependencies cmake boost sodium cppzmq udev protobuf zmq (homdx)
|
|
7c894fc device_ledger: add paranoid buffer overflow check (moneromooo-monero)
f07524b device_ledger: fix uninitialized additional_key (moneromooo-monero)
|
|
1dc3b1a wallet: add --extra-entropy command line flag (moneromooo-monero)
|
|
33e91e1 wallet, rpc: add a release field to get_version (moneromooo-monero)
|