Commit Graph
100 Commits
Author SHA1 Message Date
Lee Clagett baa631ff75 Improve unpack reserve handling 2026-04-27 18:25:18 -04:00
Lee Clagett 05eb7a212e Fix ZMQ-PUB reporting of mempool txes that were initially in stem phase 2026-04-24 09:17:44 -04:00
Lee *!* Clagett 3d6b9fb568 Harden HTTP client auth 2026-03-13 13:41:15 -04:00
Lee *!* Clagett 3e2c837b26 Cleanup some of the fragmented levin handling 2026-03-11 13:37:22 -04:00
Lee *!* Clagett 23e29a5074 Add Socks v5 support to daemon and wallet 2026-03-06 17:08:49 -05:00
Lee *!* Clagett 44869250bd Transition asio::deadline_timer to asio::steady_timer 2026-02-17 11:28:57 -05:00
Lee *!* Clagett 86927f33ae Remove invalid constexpr 2025-12-04 16:13:57 -05:00
Lee *!* Clagett 179c924c51 Fix logging lock, future optimizations may needed 2025-09-02 11:18:45 -04:00
Lee *!* Clagett fb64bb346e Skip ping connections in outgoing count 2025-08-09 10:48:53 -04:00
Lee Clagett 2bce551da7 Add new dynamic fees to ZMQ 2025-06-13 17:10:17 -04:00
Lee *!* Clagett f567852867 Add check for exception in tcp accept handler 2025-06-12 17:46:42 -04:00
Lee *!* Clagett 92315c0357 Add is_same_host check to p2p 2025-05-19 18:30:18 -04:00
Lee Clagett 65b1eb7729 Fix cmake usage in FetchContent and ExternalProject 2025-04-02 16:55:12 -04:00
Lee *!* Clagett 55e6ba49cb Fix expected hash check 2025-03-24 10:56:53 -04:00
Lee *!* Clagett 70fe289d82 Improve move/copy/default constructor semantics for tx and block 2025-03-21 14:02:12 -04:00
Lee *!* Clagett f8ecd31743 Fix copies in ZMQ input/output 2025-03-18 01:11:12 -04:00
Lee *!* Clagett 834438acb8 Remove hidden transaction copy in add_block 2025-03-17 19:19:20 -04:00
Lee *!* Clagett 665316708c Fix HTTP unit tests (broken with new Boost versions) 2025-02-25 18:51:56 -05:00
Lee *!* Clagett 50897a6871 Limit scope of TCP checks to incoming only 2025-02-24 21:55:35 -05:00
Lee *!* Clagett ec74ff4a3d Set response limits on http server connections 2025-02-13 23:55:17 -05:00
Lee *!* Clagett 4344f97255 Fix build with boost ASIO 1.87. Support boost 1.66+ 2025-01-06 18:05:25 -05:00
Lee *!* Clagett e2eea7bc25 Fix --anonymous-inbound data leak 2025-01-03 19:01:35 -05:00
Lee *!* Clagett 7e766e13c3 Cleanup TCP throttling code (performance) + move connection checks 2024-12-19 20:47:44 -05:00
Lee *!* Clagett 92de47fd37 Fix memcpy in byte_slice constructor 2024-11-21 17:22:52 -05:00
Lee *!* Clagett 16b5c11f74 Some cleanup in span/connection_context + few more checks 2024-11-19 18:30:34 -05:00
Lee Clagett 808dff7d2f Replace deprecated result_of with decltype 2024-10-10 14:37:03 -04:00
Lee Clagett bd2869650a Relax static_asserts in src/lmdb 2024-10-09 16:34:25 -04:00
Lee *!* Clagett 0a29a9f76e Add ZMQ-PUB json-schemas 2024-09-10 16:29:48 -04:00
Lee Clagett fc0a4b4b04 Make wallet2::estimate_fee static 2024-08-07 13:47:31 -04:00
Lee *!* Clagett 88afcdb8fa Fix ZMQ DaemonInfo:
* top_block_hash was never set in handler
  * wide_difficulty was never sent in JSON
  * wide_cumulative_difficulty was never sent in JSON
2024-06-24 19:57:20 -04:00
Lee Clagett 9fc48f4a8a Fix ZMQ Tx Pruning 2024-06-18 21:26:28 -04:00
Lee *!* Clagett d64a5f70d2 Fix lmdb txn commit code 2024-06-04 18:55:39 -04:00
Lee *!* Clagett 463228b961 Skip privacy networks (on tx sends) that don't have outgoing connections 2024-03-29 13:01:58 -04:00
Lee *!* Clagett ed50938af4 Zero initialize rctSigBase elements 2024-02-06 12:47:47 -05:00
Lee Clagett cd7ccfbdab Disable/fix ports with I2P 2024-01-30 13:40:05 -05:00
Lee *!* Clagett b1c9a809a0 Add <cstdint> to aligned test 2024-01-29 21:37:22 -05:00
Lee Clagett eed975db5d Fix missing checks for IsObject in ZMQ jsonrpc reading 2023-11-28 18:02:57 -05:00
Lee Clagett 69a8175edc Change std::result_of to auto 2023-11-20 17:16:42 -05:00
Lee *!* Clagett 085fdea88c Add compile-time check for input iterators in ::wire array writing 2023-11-06 16:26:39 -05:00
Lee *!* Clagett 4acae11327 Fix EAGAIN bug in ZMQ-RPC/ZMQ-PUB 2023-11-04 13:42:14 -04:00
Lee *!* Clagett a6ce2dc7c5 Write interface for new serialization system 2023-08-11 16:34:27 -04:00
Lee Clagett 2608b241c8 Add CLSAG serialization to ZMQ code 2023-06-10 11:55:48 -04:00
Lee *!* Clagett 0961c2abe4 Set SSL SNI even when server verification is disabled 2023-06-09 11:16:03 -04:00
Lee *!* Clagett eb943562cb Add to_hex::buffer 2023-05-22 13:36:05 -04:00
Lee *!* Clagett 2c98a82e75 Add byte_stream value_type and data() 2023-05-21 13:35:18 -04:00
Lee Clagett a7bf3aff2c Fix dandelion++ fluff/stem bug with local txes 2022-10-25 16:09:55 -04:00
Lee Clagett 4f3a54b2a0 Remove invoke function in levin handler 2022-09-26 16:47:18 +00:00
Lee Clagett 3987827517 Fix shared_ptr cycle in test_epee_connection.test_lifetime 2022-08-26 20:12:13 -04:00
Lee *!* Clagett 2a8a51129f Quicker resource cleanup on p2p socks timeout 2021-07-29 08:54:13 +00:00
Lee Clagett 9867a913dc Store RPC SSL key/cert for consistent authentication between runs 2021-02-13 20:26:26 +00:00
Lee Clagett bd129849f0 Remove copies from foreach loops (thanks to Clang) 2021-01-28 23:42:40 -05:00
Lee Clagett 1572df9e26 Removing unused namespace alias 2021-01-28 23:40:57 -05:00
Lee Clagett 2a20434705 Fix monerod --rpc-ssl disabled 2021-01-28 17:53:47 +00:00
Lee Clagett 08e4497c6e Improve cryptonote (block and tx) binary read performance 2021-01-23 06:23:39 +00:00
Lee Clagett 545b9825d6 Remove unnecessary atomic operations in levin code 2021-01-19 04:44:03 +00:00
Lee Clagett 679d05567d Remove payload copy in all outgoing p2p messages 2021-01-19 02:22:32 +00:00
Lee Clagett 0f2b5af0dd Reduced executable size; reduced call sequence to "allowed" log function 2021-01-16 22:55:41 +00:00
Lee Clagett 23aae5571b Remove payload copy in all outgoing p2p messages 2021-01-16 22:53:28 +00:00
Lee Clagett 927141bcc4 Command max_bytes moved from dynamic map to static switch 2020-12-22 20:54:16 +00:00
Lee Clagett 187b4d7521 Restrict duplicate keys in epee binary format 2020-12-20 03:47:32 +00:00
Lee Clagett 61b6e4cc67 Add aggressive restrictions to pre-handshake p2p buffer limit 2020-12-17 00:36:10 +00:00
Lee Clagett 4978f69d7a Fix byte_stream::put_n 2020-12-14 14:45:24 -05:00
Lee Clagett b10878f108 Change Dandelion++ fluff probability to 20%, and embargo timeout to 39s
A 20% fluff probability increases the precision of a spy connected to
every node by 10% on average, compared to a network using 0% fluff
probability. The current value (10% fluff) should increase precision by
~5% compared to baseline.

This decreases the expected stem length from 10 to 5. The embargo
timeout was therefore lowered to 39s; the fifth node in a stem is
expected to have a 90% chance of being the first to timeout, which is
the same probability we currently have with an expected stem length of
10 nodes.
2020-11-17 21:45:37 -05:00
Lee Clagett d73cb95dfa Fix timeout checks for forwarded and Dandelion++ stem txes 2020-11-15 00:08:10 -05:00
Lee Clagett be84f678b9 Switch to Dandelion++ fluff mode if no out connections for stem mode 2020-11-03 13:58:14 -05:00
Lee Clagett aad780bcfa Fix CLI and unrestricted RPC relay_tx with stempool 2020-10-29 00:17:55 -04:00
Lee Clagett 2abdbf63cf Add support for i2p and tor seed nodes 2020-10-19 13:13:07 +00:00
Lee Clagett 13350f79df Do not use peer_id tracking method over i2p/tor 2020-10-15 16:47:59 +00:00
Lee Clagett 08eb0949f3 Change to more efficient allocation strategy in byte_stream 2020-10-13 15:10:54 +00:00
Lee Clagett 249eae5f4a Allow byte_stream->byte_slice conversion to shrink unused buffer space 2020-10-13 15:09:18 +00:00
Lee Clagett 7414e2bac1 Change epee binary output from std::stringstream to byte_stream 2020-10-10 15:28:40 +00:00
Lee Clagett 386ef03be3 Add TLSA support to DNSSEC fetching 2020-10-07 15:43:31 +00:00
Lee Clagett dff1d8067c Fix tx flush callback queueing 2020-10-06 16:07:49 +00:00
Lee Clagett bdc6b10d62 Fix ZMQ pruned bulletproof transactions 2020-08-19 00:36:06 -04:00
Lee Clagett b641e0a2c0 Add clear method to byte_stream 2020-08-17 21:30:34 -04: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 98c151ecb8 Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster 2020-08-14 19:47:19 +00:00
Lee Clagett 60627c9f24 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster 2020-08-14 19:46:59 +00:00
Lee Clagett fe96e66ebe Fix pruned tx for ZMQ's GetBlocksFast 2020-08-14 19:46:33 +00:00
Lee Clagett 4d8d121462 Fix D++ block template check 2020-06-12 22:05:52 -04:00
Lee Clagett 7aeb503547 Fix boost <1.60 compilation and fix boost 1.73+ warnings 2020-05-31 21:18:11 -04:00
Lee Clagett a11ec4ac1d Support for supercop ASM in wallet, and benchmark for supercop 2020-05-16 10:25:17 +00:00
Lee Clagett 67ade80055 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 2020-05-15 07:57:35 +00:00
Lee Clagett 29e563bb1e Fixed bugs for take_slice and byte_stream->byte_slice 2020-05-12 01:26:37 -04:00
Lee Clagett e5214a2ca2 Adding ZMQ/Pub support for txpool_add and chain_main events 2020-05-04 02:06:35 +00:00
Lee Clagett feee455c9f Fixes for ZMQ JSON-RPC endpoint names for raw tx 2020-04-29 01:07:27 -04:00
Lee Clagett ee58362b1f Used legacy category to match insert_key_images behavior 2020-04-24 20:19:37 -04:00
Lee Clagett afe5a55e96 Revert functional test changes in babf25d2e and 571546067 2020-04-24 18:30:23 -04:00
Lee Clagett c26c93019a Add byte_stream for zero-copy serialization, and add support in ZMQ-JSON. 2020-04-11 04:12:11 +00:00
Lee Clagett da99157462 Use byte_slice for sending zmq messages - removes data copy within zmq 2020-04-03 01:56:17 +00:00
Lee Clagett 571546067f Always reject duplicate key-images from second txid 2020-03-30 17:52:42 +00:00
Lee Clagett babf25d2ec Allow unrestricted rpc calls to get full txpool info 2020-03-30 17:52:42 +00:00
Lee Clagett f9441c5759 Fixed string_ref usage bug in epee::from_hex::vector 2020-03-30 16:53:34 +00:00
Lee Clagett 0c29e17581 Fix network unit tests after epee changes 2020-03-28 13:30:22 -04:00
Lee Clagett 02d887c2e5 Adding Dandelion++ support to public networks:
- 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
2020-03-26 15:01:30 +00:00
Lee Clagett ad13a4b2ac Fixing static_asserts in ZMQ JSON 2020-03-19 19:49:51 -04:00
Lee Clagett 5de2295f3c Correct key image check in tx_pool 2020-03-14 19:17:15 +00:00
Lee Clagett e719760253 Fix receive order leakage with tx fluffing 2020-03-10 22:30:07 -04:00
Lee Clagett 3387f0e327 Reduce template bloat in hex->bin for ZMQ json 2020-03-09 17:55:55 +00:00
Lee Clagett 5fcc23ae0a Move hex->bin conversion to monero copyright files and with less includes 2020-03-09 05:23:59 +00:00