plowsof and such-gitea
f2c3f8ce3e
wallet_api: set m_password in the recovery creation paths
...
libwallet_api_tests: cover password retention on wallet recovery
(cherry picked from commit 3a0df2b80b1dadcfd1a0115bd4667c6fb73b5d33)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
ae82190d7b
cmake: apply cxa throw wrap flags when linking common
...
(cherry picked from commit b81fbb393e64e29e04f4f11e9d307442e1241027)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
7d1d93d168
epee: avoid bad_weak_ptr during connection teardown
...
foreach_connection() can race with connection destruction while the
protocol handler remains in the raw-pointer map. Use the non-throwing
weak_from_this().lock() in add_ref() and treat expired connections as
unavailable.
This is an interim mitigation pending the broader connection lifetime
fix in PR 7345.
(cherry picked from commit 146f801063b85e23b635c235100cc241e4ab626a)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
62439cd8d2
cmake: use wrapped __cxa_throw on GNU/Linux
...
(cherry picked from commit 9783be5e217ccc00b990095e606eca74f9bf2b51)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
54eb5eb431
wallet2: guard gamma picker against zero-output windows
...
(cherry picked from commit 7507aed69f4753767711d52747a02e6860b01297)
2026-10-04 18:50:21 -04:00
Oscar Mira and such-gitea
8a99066861
wallet2: ignore checkpoints in fast_refresh when height < 1000
...
(cherry picked from commit 3b268ae2854f6e1d24203b5fd64e2dc5d42bc940)
2026-10-04 18:50:21 -04:00
Oscar Mira and such-gitea
cd9b1b65e9
wallet2: use nearest checkpoint to allow fast_refresh on old accounts
...
(cherry picked from commit eba42d6ad5e21d13836c9e51cc6654e6b4fc34dc)
2026-10-04 18:50:21 -04:00
Oscar Mira and such-gitea
604ce7370a
checkpoints: support nearest lower checkpoint lookup
...
(cherry picked from commit e5c424b38d51705ffd1722aa2fe3a0e7db9a40d4)
2026-10-04 18:50:21 -04:00
j-berman and such-gitea
c852cb0db9
txpool: re-relay txs that haven't been relayed and need to be
...
Fixes the following circumstance:
1. Wallet submits tx to node.
2. Node adds tx to pool and queues for relay.
3. Node shuts off before the relay executes in the strand.
4. Node restarts.
5. Now, the fix ensures the node will re-relay the tx in the
get_relayable_transactions loop.
Also makes sure that stem txs don't have last_relayed_time set
to max, which would prevent them from ever being re-relayed on
a restart as well.
Context: https://github.com/seraphis-migration/monero/issues/365#issuecomment-4811722029
(cherry picked from commit aa13c6340f0d855d42aed1d9a8bebe76245e0e7c)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
f289933e67
blockchain: improve incoming block scan table handling
...
(cherry picked from commit 05426c36cf6f77a7b0f9bcb0f46a0fd5219f6fa4)
2026-10-04 18:50:21 -04:00
SChernykh and such-gitea
c407af83bd
Optimized handle_notify_new_transactions's duplicate tx check
...
- Check sha256 digests instead of full blobs (much less memory used)
- Replace `find->insert` sequence with a single `insert` - 2x fewer hashset accesses
- Preallocate the required size for the hashset (no full-table rehashes)
(cherry picked from commit fc6e4af01c5fde4d232d16e61ae4b26d51f82987)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
5bb99b960b
wallet2: avoid linear scans in pool state updates
...
(cherry picked from commit 839dba22c3a39eec92d2c6be7972df6dc6d57bab)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
ed8fc0a8fd
p2p: restore safe sync mode when target height drops
...
(cherry picked from commit 12098ff5d66d86d73360d28c548c350f6e7b64c8)
2026-10-04 18:50:21 -04:00
selsta and such-gitea
bcdb7c1075
http: share deterministic header field parser
...
(cherry picked from commit d2e4cbcda578152d9640a1aafa97a527f48a1380)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
e9aa147fb3
wallet2: guard optimized coinbase refresh against empty vout
...
(cherry picked from commit ef7a86c99f7c58c361c3c0ddf5687a165c22ce7a)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
06fa8be413
wallet2: reject non-monotonic rct output distributions
...
(cherry picked from commit b99d15f08d80a8cad6dee88628192ba0411544fb)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
16045bb71d
net: cap aggregate ZMQ receive size
...
(cherry picked from commit 4f6652f356f804403f46ecbbb8b90c1c03abbc64)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
77fed902b3
wallet2: store multisig nonce erasure before returning signed txset
...
(cherry picked from commit d6f0a4d211cc419095e778a39a83d65000e47bf6)
2026-10-04 18:50:20 -04:00
tobtoht and such-gitea
b57c4884d7
depends: openssl: update to 3.0.21
...
(cherry picked from commit 8d0b73e509fa60538eb86e8af1e970faa91a88a6)
2026-10-04 18:50:20 -04:00
woodser and such-gitea
314bad4880
fix typo in hashchain bounds error
...
(cherry picked from commit ad72a6c25342bc1694a787ba583e44beebea75e9)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
8efb829f2c
Miner: fixed thread 0 always mining with secure JIT (worse performance)
...
(cherry picked from commit 0859397f21457d42635d8c638558ed503ff65fa0)
2026-10-04 18:50:20 -04:00
vdo and such-gitea
d98b92858f
gitian: optional APT cacher for docker builds
...
(cherry picked from commit 874b7eb0b3a8b753f5488c0b004f121ff08a5eb3)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
aded798c27
Fix: check hwdev.generate_output_ephemeral_keys result
...
If it fails, out_eph_public_key and view_tag remain uninitialized.
(cherry picked from commit 2de5e8227f356c31784e249ca5317e7faf4ba969)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
eb71cc9633
Blockchain: fix wrong block_weight in handle_get_objects
...
- When there are missing IDs, blocks.size() != arg.blocks.size(), so arg.blocks can't be indexed by `i` - the indices will be wrong, the wrong weight will be returned to some peer and this peer will ban our node.
Use `bl.second` instead of `arg.blocks[i]`. Also it saves one DB query per returned block.
(cherry picked from commit 3d856f4825283e66a7ebbe9ac32e3f864bc906e2)
2026-10-04 18:50:20 -04:00
SNeedlewoods and such-gitea
99d0c33dde
fix: TypeError: 'method' object is not subscriptable
...
(cherry picked from commit 6bc37841a9523cadf144034376b7a79d69e55a21)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
d894ac3ba6
tx_pool: fix use-after-free in prune()
...
- txid was a reference to an item which was later deleted in remove_tx_from_transient_lists(), and txid was used after that
(cherry picked from commit ab6a1c8a3da2b252599fcb72c16f26fa56ba4cc8)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
8ffd095a90
Multisig tx builder: fix incomplete memory wipe
...
(cherry picked from commit 00a444b1167119a8a6d5c133d8e32240249b76f9)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
08cc86ab88
net: canonicalize Tor/I2P hosts during deserialization
...
(cherry picked from commit 93d792e63c85baec6f8a3b8f9bbad3f803dd3a7e)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
78fc142418
wallet2: fix double unlock of a lock
...
(cherry picked from commit 2b97e3ae049cc872c29b6994304a1e65d8338caa)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
d171742ed6
p2p: close zone connections before stopping net servers
...
(cherry picked from commit b7ca9e73f23cfb0ce1e795b2074ad12af56b04e3)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
1e17dc299a
p2p: make stop signal idempotent
...
(cherry picked from commit ec60113e09d9fc985b1c35fe1c579ef73c067d91)
2026-10-04 18:50:20 -04:00
alhudz and such-gitea
692066eb88
fix off-by-one over-read in match_string2 unicode escape parsing
...
(cherry picked from commit dedae5272d9d311464e8b25a5c57701591ac4eb1)
2026-10-04 18:50:20 -04:00
tobtoht and such-gitea
ca0fa050d3
depends: explicitely enable cross-compile mode for autoconf
...
(cherry picked from commit 0d49006c9d1740b2909d5173157e621e6a38ede1)
2026-10-04 18:50:20 -04:00
tobtoht and such-gitea
f73d9fcd2b
depends: unbound: update to 1.25.1
...
(cherry picked from commit 98bc2ec5e6896bfa210eafc42f8849431c9eb5d2)
2026-10-04 18:50:20 -04:00
tobtoht and such-gitea
bca9766c4d
depends: libusb: update to 1.0.30
...
(cherry picked from commit 22a69e588e60bdd0a8c84f8e834446eaf185fbe7)
2026-10-04 18:50:20 -04:00
SChernykh and such-gitea
d5bbcefc87
Fixed dangling iterator in is_remote_host_allowed
...
- m_blocked_subnets.erase(it) either moves it to the next entry, or sets it to m_blocked_subnets.end() in which case the MCLOG_CYAN will access invalid data
(cherry picked from commit e354264e0c046454dc01f71eeb3fe8098e248ec6)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
f8052081f3
net: canonicalize Tor and I2P hostnames
...
(cherry picked from commit 7d339778135c44370199f5c84e8c90b3d60f6717)
2026-10-04 18:50:20 -04:00
jeffro256 and such-gitea
35a6aabcee
contrib: fix unaligned&aliased levin buffer reads
...
Co-authored-by: selsta <selsta@users.noreply.github.com >
(cherry picked from commit 98b350f7a15997f5866c413c16b07e2ee6348922)
2026-10-04 18:50:20 -04:00
selsta and such-gitea
9ee36bbac3
serialization: handle EOF at varint boundary
...
(cherry picked from commit 7a7c42ffba1da6bd3f7bfd5a09ef9ae7275537a6)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
72da5948b6
wallet2: clear m_additional_tx_keys during bg sync
...
(cherry picked from commit 4b00f47d43d784447904d777f220a525044a3374)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
8967c814b3
wallet_rpc_server: remove unused finalize_multisig endpoint
...
(cherry picked from commit 6d36b1980d9b827117e293b3ca8a6b509b592b1a)
2026-10-04 18:50:19 -04:00
jeffro256 and such-gitea
109c08f189
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 >
(cherry picked from commit 7c543c82205c3522510e8da616edc795922ce9f3)
2026-10-04 18:50:19 -04:00
Guillaume Le Vaillant and such-gitea
83793218ce
Show IPv6 addresses in connection list
...
(cherry picked from commit 528cbac17a6c372d1698c82e30df0fdfc78a5ccc)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
2b502bb25b
rpc: restrict get_alt_blocks_hashes
...
(cherry picked from commit 7de175802a48caa7b96e516138de6cdc914bdc76)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
d94591b63e
daemonizer: avoid unsafe pidfile truncation
...
(cherry picked from commit 4167923ee21cba06f311bebab29206b1f894b067)
2026-10-04 18:50:19 -04:00
iuyua9 and such-gitea
a99f104fc0
epee: skip IPv4 TOS option for non-IPv4 peers
...
(cherry picked from commit 2a6f64d8faad464c9cecc9c317b06f00f96f4578)
2026-10-04 18:50:19 -04:00
jeffro256 and such-gitea
2ef8b04e33
wallet: fix RPC describe transfer source entry
...
(cherry picked from commit 8bcbeafb97d4a67b5d8d08695e115a3a9b5e1829)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
f201dc06dc
wallet_rpc_server: preserve payment ID when editing address book
...
(cherry picked from commit 6db72c40e1764b04ab149114025da5fa7a1da7b6)
2026-10-04 18:50:19 -04:00
selsta and such-gitea
d7c41d7ace
rpc: reject invalid JSON-RPC ids in ZMQ requests
...
(cherry picked from commit a16f514c67e95cec4946dc83dbad04ed1baad023)
2026-10-04 18:50:19 -04:00
ComputeryPony and such-gitea
db60cbb939
epee: fix memory leak with readline
...
(cherry picked from commit e92f9bd2d609b2823c841a4e857fe46f9b7f0ec6)
2026-10-04 18:50:19 -04:00