anon
df032882a8
unit_tests: fix boost 1.58 compatibility
2021-04-08 11:45:26 +00:00
mj-xmr
d7b74a4fb0
Tests: Fix test node_server.bind_same_p2p_port from randomly crashing
2021-04-05 17:51:54 +02:00
luigi1111
daa1376370
Merge pull request #7621
...
21ab1de
cryptonote_protocol_handler: fix race condition (anon)
699e82c
cryptonote_protocol_handler: add race condition demo (anon)
2021-03-29 21:56:07 -04:00
anon
699e82c282
cryptonote_protocol_handler: add race condition demo
2021-03-22 19:42:45 +00:00
anon
f59b1d5fb5
async_protocol_handler_config: add deadlock demo
2021-03-12 11:59:05 +00:00
anon
c1776be54f
async_protocol_handler_config: add segfault demo
2021-02-19 22:27:28 +00:00
anon
afec439953
boosted_tcp_server: add segfault demo
2021-01-19 18:16:01 +01:00
Lee Clagett
ba3c627c57
Command max_bytes moved from dynamic map to static switch
2020-12-23 23:53:27 +00:00
luigi1111
7ecdc53e11
Merge pull request #7248
...
3c7eec1
add a max levin packet size by command type (moneromooo-monero)
2021-01-06 21:08:11 -05:00
moneromooo-monero
3c7eec152c
add a max levin packet size by command type
2021-01-03 14:07:58 +00:00
Alexander Blair
a4ffad75ac
Merge pull request #7247
...
57f7c2e53
protocol: more sanity checks in new chain block hashes (moneromooo-monero)
2021-01-01 22:43:46 -08:00
moneromooo-monero
57f7c2e53f
protocol: more sanity checks in new chain block hashes
2020-12-31 23:34:26 +00:00
Lee Clagett
7d67a2dde0
Add aggressive restrictions to pre-handshake p2p buffer limit
2020-12-29 19:58:53 -05:00
moneromooo-monero
8c8f3d73b5
protocol: fix false positives dropping peers
...
it'd trigger on reorgs
2020-12-27 14:42:59 +00:00
luigi1111
e42bb297b8
Revert "Reject existing claimed blocks in sync mode"
2020-12-27 00:16:56 -05:00
Alexander Blair
6cea8ca895
Merge pull request #7155
...
42ee30929
protocol: reject claimed block hashes that already are in the chain (moneromooo-monero)
a436c3625
protocol: drop peers we can't download anything from in sync mode (moneromooo-monero)
2020-12-26 13:58:06 -08:00
moneromooo-monero
42ee309292
protocol: reject claimed block hashes that already are in the chain
2020-12-17 03:00:39 +00:00
Lee Clagett
cf4461f40b
Fix byte_stream::put_n
2020-12-14 16:20:51 +00:00
moneromooo-monero
d729730d38
protocol: drop origin IP if a block fails to verify in sync mode
...
It would otherwise be possible for a peer to send bad blocks,
then disconnect and reconnect again, escaping bans
2020-12-10 22:00:01 +00:00
xiphon
9d7f473af0
cryptonote_core: dandelion - use local height or median height if syncing
2020-11-25 01:26:03 +00:00
Howard Chu
398e64ccbe
Better log message for unusable anon networks
2020-11-16 12:37:40 +00:00
Lee Clagett
58cde83fb0
Switch to Dandelion++ fluff mode if no out connections for stem mode
2020-10-06 13:52:01 +00:00
xiphon
6352090e6d
Dandelion++: skip desynced peers in stem phase
2020-10-12 16:39:40 +00:00
luigi1111
ee0b02d0db
Merge pull request #6757
...
6a37da8
threadpool: guard against exceptions in jobs, and armour plating (moneromooo-monero)
2020-09-03 12:25:59 -05:00
moneromooo-monero
6a37da837e
threadpool: guard against exceptions in jobs, and armour plating
...
Those would, if uncaught, exit run and leave the waiter to wait
indefinitely for the number of active jobs to reach 0
2020-09-01 14:33:33 +00:00
Alexander Blair
44cd8a13ec
Merge pull request #6769
...
b641e0a2c
Add clear method to byte_stream (Lee Clagett)
2020-08-27 12:05:16 -07:00
Sarang Noether
641b08c920
CLSAG optimizations
2020-08-27 12:44:04 +00:00
moneromooo-monero
82ee01699c
Integrate CLSAGs into monero
...
They are allowed from v12, and MLSAGs are rejected from v13.
2020-08-27 12:44:04 +00:00
moneromooo-monero
8cd1d6df8f
unit_tests: add ge_triple_scalarmult_base_vartime test
2020-08-27 12:44:01 +00:00
Alexander Blair
bad5d8d6f0
Merge pull request #6690
...
7175dcb10
replace most boost serialization with existing monero serialization (moneromooo-monero)
2020-08-27 02:54:30 -07:00
Lee Clagett
b641e0a2c0
Add clear method to byte_stream
2020-08-17 21:30:34 -04:00
luigi1111
765db1ae7a
Revert "Use domain-separated ChaCha20 for in-memory key encryption"
...
This reverts commit 921dd8dde5
.
2020-08-17 14:08:59 -05:00
moneromooo-monero
7175dcb107
replace most boost serialization with existing monero serialization
...
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.
2020-08-17 16:23:58 +00:00
Alexander Blair
10ad0d7eb2
Merge pull request #6718
...
85efc88c1
Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test (koe)
2020-08-16 12:53:50 -07:00
Alexander Blair
01b512f3a9
Merge pull request #6716
...
76c16822d
wallet2_api: implement runtime proxy configuration (xiphon)
2020-08-16 12:52:21 -07:00
Alexander Blair
a08df6eb1b
Merge pull request #6603
...
4e2377995
Change ZMQ-JSON txextra to hex and remove unnecessary base fields (Lee Clagett)
2020-08-16 12:43:38 -07:00
Alexander Blair
009ca6fcd3
Merge pull request #6601
...
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)
2020-08-16 12:43:11 -07:00
Alexander Blair
6d29ee6c52
Merge pull request #6493
...
921dd8dde
Use domain-separated ChaCha20 for in-memory key encryption (Sarang Noether)
2020-08-16 12:39:59 -07:00
Alexander Blair
13549d590e
Merge pull request #6329
...
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)
2020-08-16 12:37:43 -07:00
Lee Clagett
4e2377995d
Change ZMQ-JSON txextra to hex and remove unnecessary base fields
2020-08-14 23:01:00 +00:00
Lee Clagett
fe96e66ebe
Fix pruned tx for ZMQ's GetBlocksFast
2020-08-14 19:46:33 +00:00
Sarang Noether
921dd8dde5
Use domain-separated ChaCha20 for in-memory key encryption
2020-08-09 19:11:54 -04:00
Sarang Noether
6bfcd31015
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.
2020-08-09 18:42:15 -04:00
Alexander Blair
c108c5e2f0
Merge pull request #6354
...
67ade8005
Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
2020-08-09 06:42:49 -07:00
koe
85efc88c1e
Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test
2020-07-23 03:36:05 -05:00
xiphon
76c16822d0
wallet2_api: implement runtime proxy configuration
2020-07-20 13:45:12 +00:00
Alexander Blair
3ba6c7fd30
Merge pull request #6516
...
8656a8c9f
remove double includes (sumogr)
2020-07-19 03:34:28 -07:00
Alexander Blair
a0d179e528
Merge pull request #6512
...
5ef0607da
Update copyright year to 2020 (SomaticFanatic)
2020-07-19 03:32:59 -07:00
luigi1111
35e2520115
Merge pull request #6559
...
15538f7
ByteSlice: Fix persisting ptr to std::moved SSO buffer (Doy-lee)
2020-07-08 17:07:50 -05:00
Doyle
15538f7e3f
ByteSlice: Fix persisting ptr to std::moved SSO buffer
...
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.
2020-05-20 10:13:58 +10:00