Commit Graph
8058 Commits
Author SHA1 Message Date
tobtoht e89922a2fd ledger: throw on secret view key export rejection 2025-11-11 21:21:41 +01:00
tobtoht 6bb36309d6 Merge pull request #10123
4e9d199 daemon: fix print_cn command when 0 connections (jeffro256)
2025-10-27 18:52:36 +00:00
tobtoht b4a168b5f8 Merge pull request #10083
daded36 wallet: identify spends in pool when scanning (j-berman)
2025-10-27 18:50:40 +00:00
tobtoht fc6170a1f7 Merge pull request #10156
0fc5e87 cryptonote_core: rm confusing/redundant BP consensus rule (jeffro256)
2025-10-27 18:47:58 +00:00
tobtoht 0237f04617 Merge pull request #10172
5905b20 wallet: sanity check ring indices only against spendable (jeffro256)
2025-10-27 18:47:03 +00:00
jeffro256 5905b202f0 wallet: sanity check ring indices only against spendable 2025-10-15 17:00:21 -05:00
jeffro256 0fc5e87f2c cryptonote_core: rm confusing/redundant BP consensus rule
This rule is confusing/redundant because before v8, no
bulletproofs whatsoever were allowed. And during and after
v8, ONLY multi-output bulletproofs were allowed, i.e.
exactly 1 bulletproof is allowed which proves the range of
all amount commitments in the transaction.

Sources:
  * No BP before v8:
    - https://github.com/monero-project/monero/blob/d32b5bfe18e2f5b979fa8dc3a8966c76159ca722/src/cryptonote_core/blockchain.cpp#L3021-L3032
  * Only 1 BP allowed:
    - https://github.com/monero-project/monero/blob/d32b5bfe18e2f5b979fa8dc3a8966c76159ca722/src/cryptonote_basic/cryptonote_format_utils.cpp#L174
    - https://github.com/monero-project/monero/blob/d32b5bfe18e2f5b979fa8dc3a8966c76159ca722/src/cryptonote_basic/cryptonote_format_utils.cpp#L150
  * BP must cover all outputs:
    - https://github.com/monero-project/monero/blob/d32b5bfe18e2f5b979fa8dc3a8966c76159ca722/src/cryptonote_basic/cryptonote_format_utils.cpp#L190-L194
    - https://github.com/monero-project/monero/blob/d32b5bfe18e2f5b979fa8dc3a8966c76159ca722/src/cryptonote_basic/cryptonote_format_utils.cpp#L166-L170
2025-10-09 15:57:54 -05:00
luigi1111 a5aa602dce Merge pull request #10147
292c053 Cleaner validation (faster and saner) (j-berman)
2025-10-07 15:22:35 -04:00
luigi1111 8e98fa954c Merge pull request #10146
ca27d51 cryptonote_basic: remove redundant call to get_transaction_hash() in overload (jeffro256)
2025-10-07 15:21:02 -04:00
luigi1111 e0d83e0ebb Merge pull request #10109
be79b83 Daemon RPC: fix on_getblockhash error return on too high height (j-berman)
2025-10-07 15:18:26 -04:00
luigi1111 df90240542 Merge pull request #10107
0fb4a8f src: update checkpoints to match v0.18.4.3 (selsta)
2025-10-07 15:17:44 -04:00
luigi1111 44b242d56f Merge pull request #10086
1dbb4a7 wallet2: warn instead of throw when RingDB doesn't include spend (j-berman)
2025-10-07 15:15:23 -04:00
selsta 0fb4a8f9b1 src: update checkpoints to match v0.18.4.3 2025-10-07 16:37:18 +02:00
j-berman 292c053280 Cleaner validation (faster and saner) 2025-10-06 12:51:16 -07:00
jeffro256 ca27d519df cryptonote_basic: remove redundant call to get_transaction_hash() in overload
Issue noticed by DataHoarder.
2025-10-05 16:47:57 -05:00
jeffro256andiamamyth 4e9d199913 daemon: fix print_cn command when 0 connections
Deferencing the result of `std::max_element()` when `res.connections` has 0 elements leads to UB, and segfaults in practice.

Co-authored-by: iamamyth <user@example.com>
2025-09-28 13:55:44 -05:00
tobtoht 8e9ab9677f Merge pull request #10097
9308fd7 simplewallet: batch address creation limit to match rpc (nahuhh)
2025-09-28 18:34:44 +00:00
tobtoht adc395577a Merge pull request #10103
bc8b210 Send ZMQ miner notifications after txpool additions (WeebDataHoarder)
2025-09-28 18:33:35 +00:00
tobtoht a6d0ac3fdb Merge pull request #10110
5e5a52e removing lza_menace seed nodes (lza_menace)
2025-09-28 18:32:52 +00:00
tobtoht 5240ee5438 Merge pull request #9939
ae489ba p2p: Improved peer selection with /24 subnet deduplication to disadvantage 'spy nodes' (rbrunner7)
2025-09-28 18:30:41 +00:00
tobtoht 0cc56f6373 Merge pull request #10114
6c49352 net_node: add hinto seed nodes (hinto.janai)
2025-09-28 18:29:09 +00:00
hinto.janai 6c493528e0 net_node: add hinto seed nodes 2025-09-26 19:26:33 +00:00
rbrunner7 ae489ba6ef p2p: Improved peer selection with /24 subnet deduplication to disadvantage 'spy nodes' 2025-09-26 14:16:55 +02:00
lza_menace 5e5a52e583 removing lza_menace seed nodes 2025-09-25 19:16:54 -07:00
j-berman be79b83b4e Daemon RPC: fix on_getblockhash error return on too high height 2025-09-25 16:18:22 -07:00
tobtoht 1d9a201980 Merge pull request #10088
dc759e8 minimal changes to remove improper binding to temporary variable (dabbonda)
2025-09-24 20:50:55 +00:00
tobtoht ef38c7cc6d Merge pull request #10089
92c8bd5 remove 66.85.74.134 as seed node (Gingeropolous)
2025-09-24 20:50:06 +00:00
WeebDataHoarder bc8b210aff Send ZMQ miner notifications after txpool additions
Bug was introduced in c069c04ede, before this txpool additions were not notified on block addition

When receiving blocks with previously unknown conditions, miner data was sent first, but txpool add events for already-added transactions in previous block were sent afterward. Miners would then include already-mined transactions in their new templates due to receiving the mistimed txpool add event.

The fix is to send miner notifications AFTER txpool events are sent, and before normal block notifications are sent (for mining switch speed purposes)

Fixes c069c04ede / #9135
Fixes dfee15eee1 / #7891
2025-09-24 09:13:25 +02:00
nahuhh 9308fd7113 simplewallet: batch address creation limit to match rpc 2025-09-22 13:54:15 +00:00
nahuhh 935f2d20ec cryptonote_core: --dns-versions-check is deprecated 2025-09-21 18:52:25 +00:00
dabbonda dc759e89f9 minimal changes to remove improper binding to temporary variable 2025-09-21 12:36:28 -04:00
GingeropolousandGitHub 92c8bd53a4 remove 66.85.74.134 as seed node
remove 66.85.74.134 as seed node. bastards doubled the price of the server.
2025-09-21 10:04:28 -04:00
j-berman 1dbb4a7928 wallet2: warn instead of throw when RingDB doesn't include spend
A reorg can end up causing an output's position in the chain to
move. Since the wallet doesn't update the RingDB on reorg, it
may refer to the output's stale position in the chain.

This seems a reasonable solution rather than introducing complex
logic to update the stale ring member's value on rerog, since
RingDB can be deprecated with FCMP++.
2025-09-17 15:21:46 -07:00
j-berman daded36823 wallet: identify spends in pool when scanning
- Make sure to mark identified spends in the pool as spends. The
wallet might not know these have been spent if it wasn't the wallet
that relayed the tx to the daemon, or the wallet was cleared via
rescan_bc.
- Make sure to add spends to m_unconfirmed_txs if not present.
- Make sure to process the entire pool again if refreshing for
the first time. The wallet fetches pool and blocks at the same
time. The wallet scans blocks first, then pool. If the wallet
identifies received outputs in the chain, then it may have spent
those received outputs in the pool. So we make sure to re-process
the entire pool again after scanning the chain for the first time.
- Multisig wallets that know about spent key images can now detect
spend txs in the pool. Update tests for that.
2025-09-15 14:14:50 -07:00
tobtoht 8d4c625713 Merge pull request #10004
36bdfad rpc-fuzz: Add new fuzzers for RPC endpoints (Arthur Chan)
2025-09-09 17:39:15 +00:00
Arthur Chan 36bdfad073 rpc-fuzz: Add new fuzzers for RPC endpoints
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Add macro definition for fuzzers

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Fix FuzzedDataProvider header missing problem

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Add README

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Provide static FuzzedDataProvider.h

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Update and enhance fuzzer

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Activate UBSan

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Fix fuzz target retrieval

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Remove bias selector and fix protocol lifespan

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Drop SIGALARM handling and fix bug on selectors

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Fix rpc request changes

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Add a new fuzzer profile that catch all expcetions

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Fix typo

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>

Add warning

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>
2025-09-08 18:35:55 +00:00
tobtoht 8259df0d1d Merge pull request #9860
dbc8402 wallet: fix wallet_keys_unlocker (jeffro256)
2025-09-08 18:08:22 +00:00
jeffro256 dbc8402da6 wallet: fix wallet_keys_unlocker
Fix four issues with wallet_keys_unlocker:
1. It won't decrypt if there are unlockers open simulataneously on multiple `wallet2` instances
2. It won't decrypt if the first unlocker was disabled (i.e. `locked=false`), even with a second non-disabled unlocker
3. If a destructor of an earlier unlocker is triggered before the destructor of a later unlocker, it will re-encrypt too early, while the second unlocker is still in scope
4. Calling the 3-parameter constructor with `locked=true` after an unlocker already exists will "double-encrypt"  the spend key after its destructor since the local variable is `locked=false` and the field member is `locked=true`

Also, replace `wallet2::decrypt_account_for_multisig` with `wallet_keys_unlocker`.
2025-09-04 15:43:38 -05:00
tobtoht 0229f6fdde Merge pull request #10046
a5b2ad0 BlockchainLMDB: do not assume alignment for alt block entries (jeffro256)
2025-08-30 17:08:26 +00:00
tobtoht c8f3566dbb Merge pull request #10050
cc444a9 checkpoints: update to a recent block height (selsta)
2025-08-21 16:28:37 +00:00
tobtoht a344bb5989 Merge pull request #10042
d979031 fix typo in CHECK_AND_ASSERT_MES (Leonardo Faoro)
2025-08-21 16:26:06 +00:00
tobtoht d5514ab6ee Merge pull request #10033
681fee1 wallet: fix warning in fee priority algorithm (0xFFFC0000)
2025-08-21 16:24:52 +00:00
tobtoht 2633d1f24a Merge pull request #10029
fb64bb3 Skip ping connections in outgoing count (Lee *!* Clagett)
2025-08-21 16:22:51 +00:00
tobtoht da2c15b76e Merge pull request #10026
613ee85 cryptonote_basic: remove state_idle in connection_context (jeffro256)
2025-08-21 16:22:13 +00:00
tobtoht c6524eecd1 Merge pull request #10025
a8959f2 Daemon RPC: rm high_height_ok field from getblocks.bin (j-berman)
2025-08-21 16:21:37 +00:00
tobtoht c9db24a010 Merge pull request #10017
d527fd5 simplewallet: fix payment id header in show_transfers command (ComputeryPony)
2025-08-21 16:21:08 +00:00
tobtoht 563a5b1a7d Merge pull request #10007
5e54c72 wallet: RPC method /incoming_transfers without daemon connection (jeffro256)
2025-08-21 16:20:37 +00:00
tobtoht a8b5ae6dd2 Merge pull request #9919
06b74ae ringct & cryptonote_basic: detangle dependencies (jeffro256)
2025-08-21 16:18:14 +00:00
jeffro256 a5b2ad04c5 BlockchainLMDB: do not assume alignment for alt block entries 2025-08-20 23:23:48 -05:00
selsta cc444a937d checkpoints: update to a recent block height 2025-08-20 18:40:18 +02:00