Lee Clagett
73f1eaaed6
Fix ZMQ-PUB reporting of mempool txes that were initially in stem phase
2026-04-24 09:19:51 -04:00
Lee *!* Clagett and lschomaker1
ce5437f067
Add Socks v5 support to daemon and wallet
...
(cherry picked from commit 23e29a5074 )
2026-04-16 15:52:05 -05:00
Lee *!* Clagett
8260f71818
Fix DNS resolve UB
2026-04-05 22:44:43 -04:00
Lee *!* Clagett
017c9022d7
Cleanup some of the fragmented levin handling
2026-03-31 14:50:35 -04:00
Lee *!* Clagett
f355f85e6f
Harden HTTP client auth
2026-03-13 13:37:28 -04:00
Lee *!* Clagett
482daa7445
Tweak command_line::add_arg for clang 21
2026-01-12 18:49:20 -05:00
Lee *!* Clagett
36b12ed50a
Fix logging lock, future optimizations may needed
2025-09-02 14:48:12 -04:00
Lee *!* Clagett
e23b759b37
Skip ping connections in outgoing count
2025-08-19 17:16:05 -04:00
Lee Clagett
9002681c1e
Add new dynamic fees to ZMQ
2025-06-13 17:27:36 -04:00
Lee *!* Clagett
9f3d96eba6
Add check for exception in tcp accept handler
2025-06-12 17:48:49 -04:00
Lee *!* Clagett
ac22479f91
Add is_same_host check to p2p
2025-06-07 18:23:27 -04:00
Lee Clagett
16b1d750d5
Fix cmake usage in FetchContent and ExternalProject
2025-04-02 17:14:55 -04:00
Lee *!* Clagett
c8f7735014
Fix expected hash check
2025-03-24 10:59:50 -04:00
Lee *!* Clagett
4acc0ea41f
Limit scope of TCP checks to incoming only
2025-02-26 13:09:20 -05:00
Lee *!* Clagett
01bcd52924
Fix build with boost ASIO 0.87. Support boost 1.66+
2025-02-14 13:29:57 -05:00
Lee *!* Clagett
13ff355cf6
Set response limits on http server connections
2025-02-14 00:21:05 -05:00
Lee *!* Clagett
ed70c16224
Some cleanup in span/connection_context + few more checks
2025-02-03 12:04:45 -05:00
Lee *!* Clagett
e99ef92a18
Fix --anonymous-inbound data leak
2025-01-03 19:13:06 -05:00
Lee *!* Clagett
0cd74568d6
Cleanup TCP throttling code (performance) + move connection checks
2024-12-19 20:54:22 -05:00
Lee *!* Clagett
74c313420c
Fix memcpy in byte_slice constructor
2024-11-21 21:16:22 -05:00
Lee *!* Clagett
3f3229a9a7
Add byte_stream value_type and data()
2024-10-23 15:47:22 -04:00
Lee Clagett
8b29ae4885
Relax static_asserts in src/lmdb
2024-10-09 16:48:34 -04:00
Lee Clagett
1f733fb868
Make wallet2::estimate_fee static
2024-08-07 17:43:03 -04:00
Lee *!* Clagett
c5ad937cc1
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 20:06:33 -04:00
Lee Clagett
e875a587e2
Fix ZMQ Tx Pruning
2024-06-21 21:37:31 -04:00
Lee *!* Clagett
7686af7acf
Skip privacy networks (on tx sends) that don't have outgoing connections
2024-03-29 15:30:14 -04:00
Lee *!* Clagett
052df1b28c
Zero initialize rctSigBase elements
2024-02-06 13:23:10 -05:00
Lee Clagett
98ee46f249
Disable/fix ports with I2P
2024-01-30 13:36:21 -05:00
Lee *!* Clagett
f5b86342e8
Add <cstdint> to aligned test
2024-01-29 21:40:50 -05:00
Lee Clagett
47d8899c90
Fix missing checks for IsObject in ZMQ jsonrpc reading
2023-11-28 18:05:15 -05:00
Lee *!* Clagett
fe746dca4e
Fix EAGAIN bug in ZMQ-RPC/ZMQ-PUB
2023-11-04 13:57:28 -04:00
Lee *!* Clagett
aed36a25d6
Set SSL SNI even when server verification is disabled
2023-06-16 19:16:30 -04:00
Lee Clagett
c6530d2f5d
Add CLSAG serialization to ZMQ code
2023-06-16 19:00:12 -04:00
Lee Clagett
1bb5d25e31
Fix dandelion++ fluff/stem bug with local txes
2022-10-25 16:01:09 -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
Lee Clagett
81c5943453
Remove temporary std::string creation in some hex->bin calls
2020-03-09 05:23:59 +00:00
Lee Clagett
ebf3c10fcb
Added logging for dropped local txes with no i2p/tor connections
2020-03-07 00:03:17 +00:00
Lee Clagett
0f78b06e8c
Various improvements to the ZMQ JSON-RPC handling:
...
- 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.
2020-03-05 14:20:56 +00:00
Lee Clagett
68a6507c3f
Fixed bug in ZMQ JSON-RPC method field
2019-11-18 12:59:41 +00:00
Lee Clagett
70c9cd3c9c
Change to Tx diffusion (Dandelion++ fluff) instead of flooding
2019-11-04 09:23:20 +00:00
Lee Clagett
a9bdc6e4c4
Improved performance for epee serialization:
...
- Removed copy of field names in binary deserialization
- Removed copy of array values in binary deserialization
- Removed copy of string values in json deserialization
- Removed unhelpful allocation in json string value parsing
- Removed copy of blob data on binary and json serialization
2019-11-04 01:46:41 +00:00
Lee Clagett
5d7ae2d279
Adding support for hidden (anonymity) txpool
2019-11-02 20:36:03 +00:00
Lee Clagett
65e8a89e1c
Change monerod --proxy to --tx-proxy
2019-10-24 21:06:31 -04:00
Lee Clagett and iDunk5400
73f22c48e1
depends: fix MacOS build with Clang 3.7.1
2019-09-08 22:49:11 +02:00
Lee Clagett
2a7d91523b
Fixed i2p/tor tx flooding bug (white noise disabled)
2019-07-29 12:27:00 +00:00
Lee Clagett
f91a06c6d7
Dropping cppzmq dependency; adding some zmq utils
2019-07-22 06:37:16 +00:00
Lee Clagett
3b24b1d082
Added support for "noise" over I1P/Tor to mask Tx transmission.
2019-07-17 14:22:37 +00:00
Lee Clagett
bdfc63ae4d
Add ref-counted buffer byte_slice. Currently used for sending TCP data.
2019-07-16 16:30:35 +00:00
Lee Clagett
9bfa4c20ca
Fix allow any cert mode in wallet rpc when configured over rpc
2019-05-22 00:15:14 -04:00