Age | Commit message (Collapse) | Author | Files | Lines |
|
73d3b00 unit_tests: fix boost 1.58 compatibility (anon)
|
|
23aae55 Remove payload copy in all outgoing p2p messages (Lee Clagett)
|
|
|
|
176cea0 Tests: Fix test node_server.bind_same_p2p_port from randomly crashing (mj-xmr)
|
|
53683d7 Warnings: fix ut/levin.cpp missing braces (mj-xmr)
|
|
f9b5b52 fix serialization being different on mac (moneromooo-monero)
|
|
|
|
Printing also available RAM. Add comprehensive description.
|
|
fe63256 cryptonote_protocol_handler: fix race condition (anon)
ded2f3a cryptonote_protocol_handler: add race condition demo (anon)
|
|
2935a0c async_protocol_handler_config: fix deadlock (anon)
c877705 async_protocol_handler_config: add deadlock demo (anon)
|
|
|
|
|
|
|
|
b5209a0 functional_tests: hide check_missing_rpc_methods behind requests check (moneromooo-monero)
|
|
249eae5 Allow byte_stream->byte_slice conversion to shrink unused buffer space (Lee Clagett)
|
|
19b2283 New add_aux_pow RPC to support merge mining (moneromooo-monero)
|
|
|
|
On Mac, size_t is a distinct type from uint64_t, and some
types (in wallet cache as well as cold/hot wallet transfer
data) use pairs/containers with size_t as fields. Mac would
save those as full size, while other platforms would save
them as varints. Might apply to other platforms where the
types are distinct.
There's a nasty hack for backward compatibility, which can
go after a couple forks.
|
|
|
|
|
|
1aecdcf Increase timeout for the mining test 4 times (to 240s) (mj-xmr)
|
|
bd12984 Remove copies from foreach loops (thanks to Clang) (Lee Clagett)
1572df9 Removing unused namespace alias (Lee Clagett)
|
|
a60d3d8 unit_tests: fix wipeable_string parse_hexstr test with latest gtest (xiphon)
|
|
85db173 Remove unused variables in monero codebase (Kevin Barbour)
|
|
df2f00f boosted_tcp_server: fix connection lifetime (anon)
3833624 boosted_tcp_server: add segfault demo (anon)
|
|
|
|
|
|
There are quite a few variables in the code that are no longer
(or perhaps never were) in use. These were discovered by enabling
compiler warnings for unused variables and cleaning them up.
In most cases where the unused variables were the result
of a function call the call was left but the variable
assignment removed, unless it was obvious that it was
a simple getter with no side effects.
|
|
|
|
|
|
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=973196
|
|
|
|
|
|
41dfa96 Split fuzz tests during fuzz build (Nym Seddon)
|
|
0660db3 fuzz_tests: add a test for utf8canonical (moneromooo-monero)
|
|
927141bcc Command max_bytes moved from dynamic map to static switch (Lee Clagett)
|
|
Only build fuzz tests in a fuzz build, and don't build other tests.
Keeps fuzz compilers from instrumenting other tests, which are not fuzzed.
Resolves #7232
|
|
it'd trigger on reorgs
|
|
|
|
cf7e1571d protocol: reject claimed block hashes that already are in the chain (moneromooo-monero)
af0a25544 protocol: drop peers we can't download anything from in sync mode (moneromooo-monero)
|
|
|
|
|
|
61b6e4cc6 Add aggressive restrictions to pre-handshake p2p buffer limit (Lee Clagett)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d660f22ed protocol: drop origin IP if a block fails to verify in sync mode (moneromooo-monero)
|
|
7414e2bac Change epee binary output from std::stringstream to byte_stream (Lee Clagett)
|
|
08eb0949f Change to more efficient allocation strategy in byte_stream (Lee Clagett)
|
|
It would otherwise be possible for a peer to send bad blocks,
then disconnect and reconnect again, escaping bans
|
|
|
|
a9cd5d9 cryptonote_core: dandelion - use local height or median height if syncing (xiphon)
|
|
be84f67 Switch to Dandelion++ fluff mode if no out connections for stem mode (Lee Clagett)
|
|
8a282f6 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr) Add monero_add_minimal_executable and use in tests (mj-xmr)
|
|
db70af1 Unit Tests: Remove block reward upper bound size checks (TheCharlatan)
|
|
|
|
|
|
|
|
monero_add_executable/monero_add_library where possible (mj-xmr)
Add monero_add_minimal_executable and use in tests
This is done in order not to have to relink targets, when just an .so changed, but not its interface.
|
|
|
|
|
|
|
|
|
|
|
|
Tests running after being compiled with `make debug-test` failed with
```
[ FAILED ] block_reward_and_current_block_weight.fails_on_huge_median_size
[ FAILED ] block_reward_and_current_block_weight.fails_on_huge_block_weight
```
With the introduction of the patch in
https://github.com/monero-project/monero/commit/be82c40703d267184ee07bf7be71002122c86656#diff-1a57d4e6013984c420da98d1adde0eafL113
the assertions checking the weight of the median and current block
against a size limit were removed. Since the limit is now enforced by a
long divisor and a uint64_t type, checking in a separate test makes
little sense, so they are removed here.
|
|
6ee9f1260 fuzz_tests: fix build error in signature fuzz test (moneromooo-monero)
|
|
|
|
|
|
4e44306 enable CLSAG support for Trezor client (ph4r05)
|
|
d20ff4f64 functional_tests: add a large (many randomx epochs) p2p reorg test (moneromooo-monero)
6a0b3b1f8 functional_tests: add randomx tests (moneromooo-monero)
9d42649d5 core: fix mining from a block that's not the current top (moneromooo-monero)
|
|
|
|
6a37da8 threadpool: guard against exceptions in jobs, and armour plating (moneromooo-monero)
|
|
Those would, if uncaught, exit run and leave the waiter to wait
indefinitely for the number of active jobs to reach 0
|
|
|
|
|
|
v13 enforces claiming the full block reward, so we need to keep
track of tx fees to add them to the coinbase
|
|
|
|
b641e0a2c Add clear method to byte_stream (Lee Clagett)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
They are allowed from v12, and MLSAGs are rejected from v13.
|
|
|
|
|
|
844fb4e94 enforce claiming maximum coinbase amount (moneromooo-monero)
|
|
7175dcb10 replace most boost serialization with existing monero serialization (moneromooo-monero)
|
|
839e1f4ba functional_tests: add p2p functional tests (moneromooo-monero)
|
|
Tests tx/block propagation and reorgs
|
|
Claiming a slightly lesser amount does not yield the size gains
that were seen pre rct, so this closes a fingerprinting vector
|
|
|
|
This reverts commit 921dd8dde5d381052d0aa2936304a3541a230c55.
|
|
This reduces the attack surface for data that can come from
malicious sources (exported output and key images, multisig
transactions...) since the monero serialization is already
exposed to the outside, and the boost lib we were using had
a few known crashers.
For interoperability, a new load-deprecated-formats wallet
setting is added (off by default). This allows loading boost
format data if there is no alternative. It will likely go
at some point, along with the ability to load those.
Notably, the peer lists file still uses the boost serialization
code, as the data it stores is define in epee, while the new
serialization code is in monero, and migrating it was fairly
hairy. Since this file is local and not obtained from anyone
else, the marginal risk is minimal, but it could be migrated
later if needed.
Some tests and tools also do, this will stay as is for now.
|
|
85efc88c1 Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test (koe)
|
|
76c16822d wallet2_api: implement runtime proxy configuration (xiphon)
|
|
4e2377995 Change ZMQ-JSON txextra to hex and remove unnecessary base fields (Lee Clagett)
|
|
98c151ecb Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster (Lee Clagett)
60627c9f2 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster (Lee Clagett)
fe96e66eb Fix pruned tx for ZMQ's GetBlocksFast (Lee Clagett)
|
|
6f5411d30 tests: fix missing error on missing python entry point (moneromooo-monero)
c6dc2850c python-rpc: add missing sync_txpool python entry point (moneromooo-monero)
|
|
921dd8dde Use domain-separated ChaCha20 for in-memory key encryption (Sarang Noether)
|
|
a11ec4ac1 Support for supercop ASM in wallet, and benchmark for supercop (Lee Clagett)
|
|
6bfcd3101 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. (Sarang Noether)
|
|
|
|
|
|
|
|
include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests.
|
|
67ade8005 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
|
|
unit test
|
|
|
|
8656a8c9f remove double includes (sumogr)
|
|
5ef0607da Update copyright year to 2020 (SomaticFanatic)
|
|
db8563cb performance_tests: some windows fixes (moneromooo-monero)
|
|
6e4a55b rpc: fix relay_tx error return mixup (moneromooo-monero)
9b86e14 functional_tests: add simple relay_tx test (moneromooo-monero)
|
|
15538f7 ByteSlice: Fix persisting ptr to std::moved SSO buffer (Doy-lee)
|
|
bde7f1c fuzz_tests: fix init check in oss-fuzz mode (moneromooo-monero)
c4b7420 Do not use PIE with OSS-Fuzz (moneromooo-monero)
c4df8b1 fix leaks in fuzz tests (moneromooo-monero)
38ca1bb fuzz_tests: add a tx extra fuzz test (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
29e563b Fixed bugs for take_slice and byte_stream->byte_slice (vtnerd)
|
|
|
|
|
|
81773f5 fuzz_tests: refactor and add OSS-Fuzz compatibility (moneromooo-monero)
cb4edc1 cmake: ASAN and PIE don't mix (moneromooo-monero)
|
|
|
|
The Bug:
1. Construct `byte_slice.portion_` with `epee::span(buffer)` which copies a pointer to the SSO buffer to `byte_slice.portion_`
2. It constructs `byte_slice.storage_` with `std::move(buffer)` (normally this swap pointers, but SSO means a memcpy and clear on the original SSO buffer)
3. `slice.data()` returns a pointer from `slice.portion_` that points to the original SSO cleared buffer, `slice.storage_` has the actual string.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Update copyright year to 2020
|
|
afe5a55 Revert functional test changes in babf25d and 5715460 (vtnerd)
|
|
|
|
Too many iterations cause std::bad_alloc for the timings vector,
and the micro prefix displays as some other character, so use u.
Reported by iDunk
|
|
|
|
5715460 Always reject duplicate key-images from second txid (vtnerd)
babf25d Allow unrestricted rpc calls to get full txpool info (vtnerd)
|
|
7326b69 functional_tests: ensure signatures never reuse a timestamp (moneromooo-monero)
082dd2c functional_tests: ensure signed timestamps are fresh (moneromooo-monero)
|
|
f9441c5 Fixed string_ref usage bug in epee::from_hex::vector (vtnerd)
|
|
87d7558 Allow wallet2.h to run in WebAssembly (woodser)
|
|
- Add abstract_http_client.h which http_client.h extends.
- Replace simple_http_client with abstract_http_client in wallet2,
message_store, message_transporter, and node_rpc_proxy.
- Import and export wallet data in wallet2.
- Use #if defined __EMSCRIPTEN__ directives to skip incompatible code.
|
|
|
|
4ed60b6 Bulletproofs: verification speedup (SarangNoether)
|
|
f8b1480 unit_tests: fix gcc+ warning (sumogr)
|
|
e509ede trezor: adapt to new passphrase mechanism (ph4r05)
|
|
- choice where to enter passphrase is now made on the host
- use wipeable string in the comm stack
- wipe passphrase memory
- protocol optimizations, prepare for new firmware version
- minor fixes and improvements
- tests fixes, HF12 support
|
|
|
|
|
|
5de2295 Correct key image check in tx_pool (vtnerd)
|
|
|
|
This fixes a test failure now that timestamps are more constrained
|
|
e719760 Fix receive order leakage with tx fluffing (vtnerd)
|
|
68a6507 Fixed bug in ZMQ JSON-RPC method field (vtnerd)
|
|
42a7a4d daemon: auto public nodes - cache and prioritize most stable nodes (xiphon)
|
|
81c5943 Remove temporary std::string creation in some hex->bin calls (vtnerd)
5fcc23a Move hex->bin conversion to monero copyright files and with less includes (vtnerd)
3387f0e Reduce template bloat in hex->bin for ZMQ json (vtnerd)
|
|
dbfa4f8 unit_tests: fix missing test names (xiphon)
|
|
c61abf8 remove empty statements (shopglobal)
|
|
0078ce7 wipeable_string: split - treat CR, LF and Tabs as separators (xiphon)
|
|
e69acff functional_tests: update cookie at 10 seconds interval (moneromooo-monero)
f5a11f0 functional_tests: speed up signature generation (moneromooo-monero)
|
|
|
|
|
|
054b4c7 protocol: request txpool contents when synced (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
d0641b42 net: fix incorrect less operator for top/i2p addresses (Aaron Hook)
|
|
- New flag in NOTIFY_NEW_TRANSACTION to indicate stem mode
- Stem loops detected in tx_pool.cpp
- Embargo timeout for a blackhole attack during stem phase
|
|
Executing a new binary for each signature can get really slow
|
|
Otherwise the daemon will start rejecting
|
|
A newly synced Alice sends a (typically quite small) list of
txids in the local tpxool to a random peer Bob, who then uses
the existing tx relay system to send Alice any tx in his txpool
which is not in the list Alice sent
|
|
|
|
|
|
0f78b06e Various improvements to the ZMQ JSON-RPC handling: (Lee Clagett)
|
|
4771a7ae p2p: remove obsolete local time in handshake (moneromooo-monero)
2fbbc4a2 p2p: avoid sending the same peer list over and over (moneromooo-monero)
3004835b epee: remove backward compatible endian specific address serialization (moneromooo-monero)
39a343d7 p2p: remove backward compatible peer list (moneromooo-monero)
60631802 p2p: simplify last_seen serialization now we have optional stores (moneromooo-monero)
9467b2e4 cryptonote_protocol: omit top 64 bits of difficulty when 0 (moneromooo-monero)
b595583f serialization: do not write optional fields with default value (moneromooo-monero)
5f98b46d p2p: remove obsolete local time from TIMED_SYNC (moneromooo-monero)
|
|
|
|
|
|
- Finding handling function in ZMQ JSON-RPC now uses binary search
- Temporary `std::vector`s in JSON output now use `epee::span` to
prevent allocations.
- Binary -> hex in JSON output no longer allocates temporary buffer
- C++ structs -> JSON skips intermediate DOM creation, and instead
write directly to an output stream.
|
|
f1091c41 core_tests: remove some useless verbose logs (moneromooo-monero)
|
|
987c3139 print_coinbase_tx_sum now supports 128 bits sums (moneromooo-monero)
|
|
a9bdc6e4 Improved performance for epee serialization: (Lee Clagett)
|
|
02b80513 unit_tests: remove invalid bulletproofs unit test (moneromooo-monero)
|
|
|
|
|
|
Cleaning up a little around the code base.
|
|
|
|
d64e5aa7 wallet: allow message sign/verify for subaddresses (moneromooo-monero)
|
|
b90c4bc3 rpc: error out from get_info if the proxied call errors out (moneromooo-monero)
fa16df99 make_test_signature: exit nicely on top level exception (moneromooo-monero)
054b2621 node_rpc_proxy: init some new rpc payment fields in invalidate (moneromooo-monero)
d0faae2a rpc: init a few missing client_info members (moneromooo-monero)
d56a483a rpc: do not propagate exceptions out of a dtor (moneromooo-monero)
3c849188 rpc: always set the update field in update on sucess (moneromooo-monero)
|
|
|
|
56a4469e network: log traffic and add a simple traffic analysis script (moneromooo-monero)
|
|
|
|
|
|
6f330865 fix tests bug added in #6110 (Dusan Klinec)
|
|
70c9cd3c Change to Tx diffusion (Dandelion++ fluff) instead of flooding (Lee Clagett)
|
|
- e.g., fixes gen_block_big_major_version test, error: generation failed: what=events not set, cannot compute valid RandomX PoW
- ask for events only if difficulty > 1 (when it really matters)
- throwing an exception changed to logging, so it is easy to spot a problem if tests start to fail.
|