Commit Graph

11463 Commits

Author SHA1 Message Date
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
OrvilleRed ca6c42a8e1 Message about DNS_PUBLIC to help users with issue #8452 2023-03-27 00:36:40 -04: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
jeffro256 f383fd3cd0 wallet2: make m_process_pool_txs local to refresh method 2023-03-21 19:18:48 -05:00
moneromooo-monero 7a4a03d9d3
wallet2: do not commit transactions more than once
Fixes #8793
2023-03-21 21:05:53 +00:00
Nihal Jere 833dd6bb92 add libunbound to package list for OpenBSD 2023-03-21 14:20:49 -05:00
moneromooo-monero 724441a782
link against libz on non Apple/Windows
Needed by libcrypto at least
2023-03-21 14:36:48 +00:00
Jeffro256 04dfdb332e epee: protect base64_chars, removed dead functions, speed up compile 2023-03-20 16:02:48 -05:00
tobtoht 3a34c63ba9
depends: cleanup Makefile 2023-03-20 14:39:32 +01:00
jeffro256 0ae5c91e50 http_client: reduce number of packets sent for small bodies 2023-03-19 12:54:14 -05:00
Jeffro256 df9aa6bb04 epee: remove dead code in net_helper 2023-03-19 12:51:27 -05:00
Crypto City c61d33e24c
wallet2: fix outdated wallet check
it was mistaking the number of forks in the fork table for
the last fork, and assuming the table was including every
single fork
2023-03-19 17:43:37 +00: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
jeffro256 4e16559053 rpc: give reason when sending non-hex raw tx 2023-03-17 18:18:06 -05:00
Francois Beutin 1b27fcdf77
device: Add ledger Stax device id to device detection 2023-03-14 10:31:20 +01:00
koe 2eaa523af1 cryptonote::transaction_prefix: fix IDE parsing error 2023-03-09 15:18:21 -06: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
tobtoht 630906ce5b
cryptonote_basic: remove unused struct 2023-03-06 15:15:00 +01:00
almalh b13ddb9a16
Handle case where a command line flag is not allowed in the config file 2023-03-05 20:32:40 -05:00
moneromooo-monero d84a0d7430
p2p: avoid spam blocking ipv4 addresses in a blocked subnet 2023-03-01 16:56:56 +00:00
Jeffro256 5a7a5f17da build: BUILD_DEBUG_UTILITIES fix
Co-authored-by: Jethro Grassie <jtg@xtrabass.com>
2023-02-26 13:38:53 -06:00
tevador 3771641fc5 Add a size limit for tx_extra in tx pool 2023-02-26 10:26:53 +01:00
moneromooo-monero 11a836074d
simplewallet: print fully qualified filename for new wallets
from time to time, some people don't realize their wallets get
created in their current working directory
2023-02-24 10:22:48 +00: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
koe 2a7435e026 variant: add mutable unwrap and visitation 2023-02-12 13:00:53 -06: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