Commit Graph

695 Commits

Author SHA1 Message Date
moneromooo-monero ce6db7db63 plug bulletproofs plus into consensus 2021-08-30 00:17:37 +03:00
Sarang Noether 0bdbd108d8 Bulletproofs+ 2021-08-30 00:11:56 +03:00
luigi1111 d98787eb1b
Merge pull request #7825
ccfed60 cmake: test is a reserved keyword (selsta)
f0fa959 cmake: fix ccache detection (anon)
8dbe2e5 Daemon: Update average block size table (rbrunner7)
94bad34 wallet2: Don't auto lock device on process parsed blocks (tobtoht)
3c23aca ledger: don't lock for software device (tobtoht)
49beb8d ledger: use software device if we have view key (tobtoht)
d188b5f wallet_api: getPassword (tobtoht)
a395f36 depends, docker: fix bintray links (selsta)
0fecd7e blocks: fix cmake syntax (selsta)
76824bf Stop adding more outputs than bulletproof allows (Alex Opie)
67ba733 unit_tests: fix wipeable_string parse_hexstr test with latest gtest (xiphon)
402ba04 cmake: use CMAKE_CURRENT_LIST_DIR in FindLibUSB (selsta)
1565bcb epee: include public openssl header in cmake (selsta)
2e9af2a cmake: treat warnings as error in compiler flag tests (selsta)
db564ef wallet_api: fix typo in exportKeyImages (selsta)
8507917 depends: add getmonero package mirror (selsta)
8716d2a cmake: fix non portable code (selsta)
2021-08-26 21:10:56 -04:00
luigi1111 8f95eaa0b0
Merge pull request #7817
1510b1e unit_tests: fix broken tests (anon)
2021-08-11 22:39:42 -04:00
moneromooo-monero 8eb2b79bad
p2p: remove blocked addresses/hosts from peerlist 2021-08-05 19:05:02 +00:00
xiphon 67ba733de1
unit_tests: fix wipeable_string parse_hexstr test with latest gtest
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=973196
2021-08-01 15:47:11 +02:00
anon 1510b1e550
unit_tests: fix broken tests
boosted_tcp_server: check condition before sleep too
cryptonote_protocol_handler: each instance of BlockchainLMDB requires separate thread due to private thread local fields
2021-07-28 13:38:23 +00:00
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