Commit Graph

11181 Commits

Author SHA1 Message Date
jeffro256
eb0e4052b7 gamma picker: relax constructor requirements and test for selecting outputs from first spendable block 2023-04-02 20:06:09 -05:00
luigi1111
44ac52f929
Merge pull request #8810
d594981 Fixed deadlock and crash when syncing with full dataset on Windows (SChernykh)
2023-04-02 20:45:13 -04:00
luigi1111
5f2bbf78a0
Merge pull request #8808
caa7561 cryptonote core/protocol: don't drop peers for soft offenses (jeffro256)
2023-04-02 20:44:18 -04:00
luigi1111
441373b9ef
Merge pull request #8794
85a4558 wallet2: fix infinite loop in fake out selection (Crypto City)
2023-04-02 20:43:32 -04:00
Crypto City
85a45587f2
wallet2: fix infinite loop in fake out selection
The gamma picker and the caller code did not quite agree on the
number of rct outputs available for use - by one block - which
caused an infinite loop if the picker could never pick outputs
from that block but already had picked all other outputs from
previous blocks.

Also change the range to select from using code from UkoeHB.
2023-03-30 14:44:36 +00:00
jeffro256
caa7561705 cryptonote core/protocol: don't drop peers for soft offenses
Also: txs with tx_extra which is too large will not get published to ZMQ

Co-authored-by: SChernykh <sergey.v.chernykh@gmail.com>
2023-03-29 02:05:43 -05:00
SChernykh
d59498101c Fixed deadlock and crash when syncing with full dataset on Windows
It's not allowed to use WaitForSingleObject with _beginthread, because the thread closes its own handle before exiting.

So the wait function will either wait on an invalid handle, or on a different handle used by something else.

Or, if it starts waiting before the thread exits, the behavior is undefined according to MS: "If this handle is closed while the wait is still pending, the function's behavior is undefined."

In my test sync I observed threads getting stuck infinitely on WaitForSingleObject, and then rx_set_main_seedhash spamming new threads when RandomX seed changes again. Eventually the system ran out of resources, and monerod aborted with "Couldn't start RandomX seed thread" message.

This PR fixes it by using `_beginthreadex` instead and explicitly closing the handle when it's safe.
2023-03-29 08:43:47 +02:00
luigi1111
abe74fda35
Merge pull request #8770
d7a81cc p2p: do not log to global when re-blocking a subnet (moneromooo-monero)
d84a0d7 p2p: avoid spam blocking ipv4 addresses in a blocked subnet (moneromooo-monero)
2023-03-24 22:54:32 -04:00
luigi1111
f307621678
Merge pull request #8775
1b27fcd device: Add ledger Stax device id to device detection (Francois Beutin)
2023-03-18 18:21:02 -04:00
luigi1111
b7dbf4fd7c
Merge pull request #8745
eaf5902 workflows: update dependencies to fix warnings (selsta)
2023-03-18 18:19:25 -04:00
luigi1111
6bebc2d08c
Merge pull request #8743
7a44eb7 depends: remove unused packages (tobtoht)
2023-03-18 18:19:01 -04:00
luigi1111
76dd14dfb1
Merge pull request #8733
3771641 Add a size limit for tx_extra in tx pool (tevador)
2023-03-18 18:18:13 -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
Francois Beutin
1b27fcdf77
device: Add ledger Stax device id to device detection 2023-03-14 10:31:20 +01:00
moneromooo-monero
d7a81ccba1
p2p: do not log to global when re-blocking a subnet 2023-03-09 17:17:59 +00:00
j-berman
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
moneromooo-monero
d84a0d7430
p2p: avoid spam blocking ipv4 addresses in a blocked subnet 2023-03-01 16:56:56 +00:00
tevador
3771641fc5 Add a size limit for tx_extra in tx pool 2023-02-26 10:26:53 +01:00
selsta
eaf590274c
workflows: update dependencies to fix warnings 2023-02-20 04:11:10 +01:00
tobtoht
7a44eb7901
depends: remove unused packages 2023-02-16 14:42:19 +01:00
luigi1111
c5d10a4ac4
Merge pull request #8737
21fb856 depends: bump openssl to 1.1.1t (tobtoht)
2023-02-15 10:46:23 -05:00
luigi1111
3b765c509f
Merge pull request #8736
ac9a897 Revert 'epee: when loading a JSON RPC payload, ensure params is an object' (moneromooo-monero)
2023-02-15 10:45:53 -05:00
luigi1111
3f696f144c
Merge pull request #8720
d8a8448 p2p: add plowsof seed nodes (selsta)
69153e8 p2p: remove offline seed nodes (selsta)
2023-02-15 10:42:59 -05:00
tobtoht
21fb856eda depends: bump openssl to 1.1.1t
https://www.openssl.org/news/secadv/20230207.txt

Patch can be removed, it was included upstream.
2023-02-07 20:31:25 +01:00
moneromooo-monero
ac9a8978ca
Revert "epee: when loading a JSON RPC payload, ensure params is an object"
This reverts commit b67e931843.

This turns out to be a bad idea, because we do have weird RPC which
do actually go counter to this
2023-02-07 12:12:02 +00:00
luigi1111
549a4b424a
Merge pull request #8713
eaa3aff depends: bump hidapi/libusb (tobtoht)
2023-02-06 12:37:08 -05:00
luigi1111
cd82b4fed0
Merge pull request #8712
cb756b6 blockchain-stats: print any remaining data at end of loop (Howard Chu)
2023-02-06 12:36:39 -05:00
luigi1111
5fae6d63a8
Merge pull request #8705
b247f98 Demote large pages warning to mdebug (SChernykh)
b27a171 RandomX: print VM allocation warnings only once (SChernykh)
2023-02-06 12:35:37 -05:00
luigi1111
889951e7c5
Merge pull request #8700
3461a19 daemonizer: don't uninstall windows service on exit (selsta)
2023-02-06 12:34:41 -05:00
luigi1111
3ff22aee95
Merge pull request #8699
f3420cb readline_buffer: disable bracketed paste escape sequences (Jeffrey Ryan)
2023-02-06 12:34:06 -05:00
luigi1111
2521f0e238
Merge pull request #8697
e91f35e win-service: enable auto startup (plowsof)
2023-02-06 12:33:03 -05:00
luigi1111
c12bc62306
Merge pull request #8693
bfd7c00 heed NO_COLOR environment variable (moneromooo-monero)
2023-02-06 12:26:02 -05:00
luigi1111
85702d70af
Merge pull request #8692
b67e931 epee: when loading a JSON RPC payload, ensure params is an object (moneromooo-monero)
2023-02-06 12:25:13 -05:00
luigi1111
672eedf9c2
Merge pull request #8691
934b798 rpc: do not misidentify coinbase txes as pruned (moneromooo-monero)
2023-02-06 12:24:17 -05:00
selsta
d8a84489d2
p2p: add plowsof seed nodes 2023-01-27 14:15:31 +01:00
selsta
69153e870d
p2p: remove offline seed nodes 2023-01-27 14:06:45 +01:00
tobtoht
eaa3aff81e
depends: bump hidapi/libusb
fixes Trezor connectivity issues on Windows 10/11

Co-authored-by: selsta <selsta@sent.at>
2023-01-25 21:50:46 +01:00
Howard Chu
cb756b6094
blockchain-stats: print any remaining data at end of loop
Fix #8711
2023-01-17 17:20:18 +00:00
SChernykh
b247f985db Demote large pages warning to mdebug 2023-01-17 18:13:07 +01:00
SChernykh
b27a17110d RandomX: print VM allocation warnings only once 2023-01-11 19:15:11 +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
luigi1111
ac87d8dac9
Merge pull request #8682
96677ff common: add missing includes (selsta)
2023-01-11 12:12:57 -05:00
luigi1111
451ff7bd91
Merge pull request #8677
fe8522c Bump WINVER to 0x0600 (Windows Vista) (SChernykh) dab7d01 Refactored rx-slow-hash.c (SChernykh)
2023-01-11 12:10:02 -05:00
luigi1111
ad80aa0f65
Merge pull request #8671
a160270 update readme with v0.18.1.2 version number (Gingeropolous)
2023-01-11 11:47:11 -05:00
luigi1111
3854cc04be
Merge pull request #8663
b1bce85 miscellaneous crypto updates (koe)
2023-01-11 11:45:40 -05:00
luigi1111
d3ad02fffb
Merge pull request #8653
61842f9 workflows: set a public DNS when doing tests (selsta)
2023-01-11 11:43:39 -05:00
luigi1111
0cb6a5c78a
Merge pull request #8651
6558e7e Correct/modernize build instructions for OpenBSD (Offshore Monero)
0e5ecd4 Turn readline off on OpenBSD because it is broken (Offshore Monero)
2023-01-11 11:43:08 -05:00