Commit Graph
705 Commits
Author SHA1 Message Date
jeffro256 e9c89dc6ab wallet: kill support for deprecated ephemeral Boost messages
The commit kills support for deprecated ephemeral Boost messages: signed/unsigned transaction sets, pending transactions, reserve proofs, MMS messages, etc.
It does NOT kill support for loading very old wallets in Boost format, that should be supported indefinitely. These messages were deprecated 5 years ago. Since
then, we have had a hard fork to enable a new non-compatible transaction type (w/ view tags), and disable the old transaction type. This renders basically all
of the aforementioned messages before that HF useless, with the possible exception of reserve proofs.

This commit also cleans up dead inclusions of boost serialization headers.

This commit is part of upstreaming Carrot/FCMP++. Killing support for Boost messages now means less boilerplate Boost serialization review for Carrot/FCMP++.
2025-05-30 14:24:56 -05:00
tobtoht 627bb04b98 Merge pull request #9851
70fe289d8 Improve move/copy/default constructor semantics for tx and block (Lee *!* Clagett)
2025-04-23 16:14:50 +00:00
tobtoht 977dedce2c Merge pull request #9865
0e243a4ac checkpoints: update to a recent block height (selsta)
2025-03-26 12:37:06 +00:00
selsta 0e243a4ac0 checkpoints: update to a recent block height 2025-03-25 21:28:20 +01:00
tobtoht ba77342faa Merge pull request #9845
51a72c120 Blockchain: remove skip for pruned txs in `check_tx_inputs()` (jeffro256)
2025-03-24 02:53:13 +00:00
Lee *!* Clagett 70fe289d82 Improve move/copy/default constructor semantics for tx and block 2025-03-21 14:02:12 -04:00
jeffro256 51a72c1209 Blockchain: remove skip for pruned txs in check_tx_inputs()
I can't see how this would trigger in the current codebase, so it's not a *current* safety issue,
but I can very well see it becoming on in the future if downstream code doesn't handle the passing
of pruned transactions correctly. I think the safe/good choice would be to remove this skip now
that all transactions that pass into the mempool are supposed to be unpruned. And for all in-block
txs, `check_tx_inputs()` isn't called for checkpointed blocks, and we sync pruned blocks only if
syncing checkpointed blocks.
2025-03-17 09:31:50 -05:00
jeffro256 528664b1c8 cryptonote_protocol: fix handling of pruned blocks during sync 2025-03-17 09:09:25 -05:00
tobtoht 44523cafff Merge pull request #9135
c069c04ed blockchain sync: reduce disk writes from 2 to 1 per tx (jeffro256)
2025-03-10 16:16:18 +00:00
jeffro256 c069c04ede blockchain sync: reduce disk writes from 2 to 1 per tx 2025-03-10 01:02:37 -05:00
tobtoht da470b7471 Merge pull request #9688
26b4f5e00 Revert "blockchain: detect and log bad difficulty calculations" (selsta)
2025-01-22 22:51:10 +00:00
tobtoht b32c69aabd Merge pull request #9628
4344f97 Fix build with boost ASIO 1.87. Support boost 1.66+ (Lee *!* Clagett)
2025-01-14 14:24:07 +00:00
tobtoht 38668822b7 Merge pull request #9621
fe17069 Blockchain: get height of RingCT fork programmatically (jeffro256)
2025-01-14 14:13:06 +00:00
selsta 26b4f5e00c Revert "blockchain: detect and log bad difficulty calculations"
This reverts commit 5741b4d74d.
2025-01-14 13:04:25 +01:00
Lee *!* Clagett 4344f97255 Fix build with boost ASIO 1.87. Support boost 1.66+ 2025-01-06 18:05:25 -05:00
luigi1111 1122fa523a Merge pull request #9441
cfb19b9 blockchain: more opportunities for caching the rolling median (Crypto City)
2024-12-23 10:34:25 -05:00
luigi1111 61dd13dfa6 Merge pull request #9395
7fdaf61 Blockchain: fix temp fails causing alt blocks to be permanently invalid (jeffro256)
2024-12-23 10:32:02 -05:00
jeffro256 fe170698b1 Blockchain: get height of RingCT fork programmatically
Get height of the RingCT fork to start the output distributuon programmatically, instead of using a hardcoded index.

If using a hardcoded index, when the hardfork tables are modified, this can cause segmentation faults or horrific privacy issues: https://codeberg.org/wownero/wownero/issues/488#issuecomment-2514880.
2024-12-16 15:16:38 -06:00
Crypto Cityandmoneromooo-monero cfb19b932f blockchain: more opportunities for caching the rolling median 2024-08-17 14:42:35 +00:00
luigi1111 a1dc85c537 Merge pull request #9416
ac0af73 rpc: add cumul weight field to block template resp (jeffro256)
2024-08-14 14:19:03 -04:00
jeffro256 ac0af73222 rpc: add cumul weight field to block template resp
Resolves #9415
2024-08-01 01:03:41 -05:00
selsta 3216165822 src: update checkpoints to match v0.18.3.4 (again) 2024-07-31 18:14:23 +02:00
luigi1111 330212888a Merge pull request #9383
9f83e74 Daemon RPC: /getblocks.bin return chain's top_block_hash in resp (j-berman)
2024-07-16 19:00:39 -04:00
luigi1111 e3cfaed278 Merge pull request #9346
0fad1a8 src: update checkpoints to match v0.18.3.4 (selsta)
2024-07-16 18:49:44 -04:00
jeffro256 7fdaf61d41 Blockchain: fix temp fails causing alt blocks to be permanently invalid 2024-07-11 00:43:38 -05:00
j-berman 9f83e7434d Daemon RPC: /getblocks.bin return chain's top_block_hash in resp 2024-06-24 17:58:20 -07:00
selsta 0fad1a8d08 src: update checkpoints to match v0.18.3.4 2024-05-29 15:59:56 +02:00
copyCat 341771ac3e copyright: bump to 2024 2024-05-21 16:29:33 +00:00
luigi1111 fc452bd546 Merge pull request #9282
b27fda2 src: update checkpoints to match latest release (selsta)
2024-05-20 23:36:28 -05:00
selsta b27fda269e src: update checkpoints to match latest release 2024-04-06 00:53:05 +02:00
jeffro256 7194506792 Blockchain: remove old fee calc logic 2024-03-10 13:30:46 -05:00
selsta f7670c9387 cryptonote_core: early out on out of bounds scaling parameter 2024-02-21 00:02:27 +01:00
Boog900 65839b5ac1 Fix: long term block weight cache
The long term block weight cache was doing a wrong calculation when
adding a new block to the cache.
2023-10-01 13:40:06 +01:00
Crypto Cityandmoneromooo-monero d391ac0f7e blockchain: ensure base fee cannot reach 0
reported by sech1
2023-05-11 13:47:57 +00:00
luigi1111 9bf06ea75d Merge pull request #8698
5b4fea7 Copyright: Update to 2023 (mj-xmr)
2023-04-25 11:12:56 -04:00
luigi1111 55fddad446 Merge pull request #8707
7159f92 verRctNonSemanticsSimpleCached: fix fragility (Jeffrey Ryan)
2023-03-18 18:17:05 -04:00
luigi1111 a511202222 Merge pull request #8076
c4af33e Enforce restricted # pool txs served via RPC + optimize chunked reqs (j-berman)
9752116 wallet2, RPC: Optimize RPC calls for periodic refresh from 3 down to 1 call (rbrunner7)
2023-03-18 17:58:27 -04:00
Jeffrey Ryan 7159f92a57 verRctNonSemanticsSimpleCached: fix fragility 2023-03-17 18:45:35 -05:00
j-bermanandrbrunner7 c4af33eded Enforce restricted # pool txs served via RPC + optimize chunked reqs
- `/getblocks.bin` respects the `RESTRICTED_TX_COUNT` (=100) when
returning pool txs via a restricted RPC daemon.
- A restricted RPC daemon includes a max of `RESTRICTED_TX_COUNT` txs
in the `added_pool_txs` field, and returns any remaining pool hashes
in the `remaining_added_pool_txids` field. The client then requests
the remaining txs via `/gettransactions` in chunks.
- `/gettransactions` no longer does expensive no-ops for ALL pool txs
if the client requests a subset of pool txs. Instead it searches for
the txs the client explicitly requests.
- Reset `m_pool_info_query_time` when a user:
  (1) rescans the chain (so the wallet re-requests the whole pool)
  (2) changes the daemon their wallets points to (a new daemon would
      have a different view of the pool)
- `/getblocks.bin` respects the `req.prune` field when returning
pool txs.
- Pool extension fields in response to `/getblocks.bin` are optional
with default 0'd values.
2023-03-07 20:35:45 +01:00
mj-xmrandmj-xmr 5b4fea72cf Copyright: Update to 2023
Co-authored-by: plowsof <plowsof@protonmail.com>
extra files
2023-01-16 13:00:18 +01:00
luigi1111 50aa0e8b7f Merge pull request #8675
1a568de Cache successful erRctNonSemanticsSimple calls (SChernykh)
2023-01-11 12:27:40 -05:00
luigi1111 75d80d431a Merge pull request #8686
7a3a593 common: move boost_serialization_helper.h out and cleanup includes (Jeffrey Ryan)
2023-01-11 12:13:48 -05:00
SChernykh dab7d01dc0 Refactored rx-slow-hash.c
- Straight-forward call interface: `void rx_slow_hash(const char *seedhash, const void *data, size_t length, char *result_hash)`
- Consensus chain seed hash is now updated by calling `rx_set_main_seedhash` whenever a block is added/removed or a reorg happens
- `rx_slow_hash` will compute correct hash no matter if `rx_set_main_seedhash` was called or not (the only difference is performance)
- New environment variable `MONERO_RANDOMX_FULL_MEM` to force use the full dataset for PoW verification (faster block verification)
- When dataset is used for PoW verification, dataset updates don't stall other threads (verification is done in light mode then)
- When mining is running, PoW checks now also use dataset for faster verification
2023-01-09 07:43:07 +01:00
Jeffrey Ryan 7a3a593a77 common: move boost_serialization_helper.h out and cleanup includes 2022-12-22 12:18:02 -06:00
SChernykh 1a568deacb Cache successful verRctNonSemanticsSimple calls 2022-12-20 22:16:39 +01:00
luigi1111 45ffdc26a6 Merge pull request #8517
6f0fb76 blockchain: fix invalid memory read getting fee on empty chain (Crypto City)
2022-10-28 00:46:19 -04:00
SChernykh 28f25c0dbc Second thread pool for IO 2022-09-20 09:59:58 +02:00
Crypto Cityandmoneromooo-monero 6f0fb76025 blockchain: fix invalid memory read getting fee on empty chain 2022-08-19 14:39:27 +00:00
selsta fe5d1bef56 build: prepare v0.18.0.0 2022-07-13 22:07:31 +02:00
luigi1111 e13244ea9c Merge pull request #8178
5d388eb Bump ring size to 16 for v15 & remove set default in wallet cli (j-berman)
2022-04-25 10:18:26 -05:00