Commit Graph

72 Commits

Author SHA1 Message Date
SChernykh
d4329ae594 Show file:line where panic() was called from 2023-01-14 12:37:08 +01:00
SChernykh
8e7df958b8 Use extra_nonce to signal hardfork readiness 2023-01-12 10:19:29 +01:00
SChernykh
ccc5117172 Track shares that failed to be added 2023-01-07 15:50:02 +01:00
SChernykh
b346b93285 Updated copyright 2023-01-04 13:07:55 +01:00
SChernykh
7502481f26 Fixed cppcheck issues 2022-12-22 21:00:59 +01:00
SChernykh
15d25bca27 Fixed data race 2022-12-22 20:30:20 +01:00
SChernykh
a61966ed61 Don't count shares that were found during sync 2022-12-22 11:48:50 +01:00
SChernykh
2e747beda6 Added sidechain height to SHARE FOUND log 2022-11-08 14:27:03 +01:00
SChernykh
19414b061b Refactored BackgroundJobTracker 2022-11-04 10:20:32 +01:00
SChernykh
a917a9493c Randomize extra_nonce
To guarantee that hashing blobs will be different between different p2pool nodes, even if they mine to the same wallet address and don't have transactions to shuffle within the block template.
2022-10-11 11:33:58 +02:00
SChernykh
fd6b2360aa Fix: uv_close was called from wrong thread 2022-10-07 16:02:08 +02:00
SChernykh
947178f10a StratumServer: improved warning message 2022-09-07 08:59:04 +02:00
SChernykh
86156f3fec SOCKS5 proxy support 2022-09-03 22:35:38 +02:00
SChernykh
cc60ab3d63 StratumServer: added scoring system for clients
Ban clients only after a few bad shares without good shares compensating them.
2022-08-22 11:07:11 +02:00
SChernykh
340a3e85c8 Fixed autodiff when running for a long time
16-bit wrap around wasn't processed correctly
2022-07-05 10:02:18 +02:00
SChernykh
14bbf96feb Enforce deterministic tx keys starting from v15 2022-06-28 10:44:16 +02:00
SChernykh
a281db1cbb Fixed unaligned read 2022-06-27 16:20:45 +02:00
SChernykh
b25e5449c8 Fixed rare "low diff share" errors 2022-06-26 17:07:19 +02:00
SChernykh
b267c19a45 Limit autodiff to 4M for max compatibility 2022-06-26 17:06:21 +02:00
SChernykh
8b681d6efb Added memory hooks for CURL 2022-06-07 16:02:08 +02:00
SChernykh
6ef34bb3f5 Enabled more compiler warnings 2022-06-01 16:13:18 +02:00
SChernykh
0e222afd6a Exit if server startup fails 2022-05-23 15:50:25 +02:00
SChernykh
8f1f81749d StratumServer: reset cumulative hashes too 2022-05-16 14:36:11 +02:00
SChernykh
ae3612f595 Fixed worker diff display when autodiff is off 2022-05-15 18:13:36 +02:00
SChernykh
37b6457054 Show worker hashrate only when autodiff is on 2022-05-15 01:15:21 +02:00
SChernykh
edd782ac23 Fixed custom worker names 2022-05-10 14:01:10 +02:00
SChernykh
134f2d68a3 Fixed data races 2022-05-09 16:10:55 +02:00
SChernykh
d23c46ff84 Added bsr() function to util 2022-05-09 13:02:06 +02:00
SChernykh
990916ab62 StratumServer: added autodiff
Autodiff is enabled by default, target time is 30 seconds. It can be disabled with `--no-autodiff` command line option.
2022-05-08 19:03:00 +02:00
SChernykh
d4e362cd76 TCPServer: optimized Client struct size 2022-05-07 12:35:31 +02:00
SChernykh
1dd06cc509 Removed std::string to avoid memory allocation 2022-05-07 11:00:29 +02:00
SChernykh
2e2bd1d137 Added log padding 2022-05-06 20:04:01 +02:00
SChernykh
0818d91f4f StratumServer: added console command workers 2022-05-06 13:19:56 +02:00
SChernykh
1a35177633 Fixed unsafe usage of log::Stream buffers 2022-05-05 14:38:56 +02:00
SChernykh
a2afa29052 Updated copyright 2022-03-30 14:42:26 +02:00
SChernykh
aada1bb5cc Use chrono::steady_clock for internal timestamps 2022-03-23 11:30:38 +01:00
SChernykh
c21d052d7a Refactored RNG usage across the code 2022-03-17 16:14:29 +01:00
SChernykh
cc6ce4a366 Reset stratum share counters after initial sync 2022-02-17 11:19:11 +01:00
SChernykh
9f449320b5 StartumServer: disconnect and ban inactive clients 2022-02-08 15:00:08 +01:00
SChernykh
f9def6cb73 Added "calc_pow" RPC support 2021-11-21 09:12:21 +01:00
SChernykh
352ad81a0a StratumServer: faster processing of regular shares 2021-10-21 19:09:36 +02:00
SChernykh
9885f82e9e Limit user name length to 64 characters
Also avoid creating temporary strings (`" user " + client->m_customUser`) when logging user name
2021-10-19 21:09:08 +02:00
WeebDataHoarder
bc341918f6 Decode custom user from stratum client, display stratum client+user on SHARE FOUND and client mainchain found message 2021-10-19 19:33:15 +02:00
SChernykh
9e90e988fa Refactored array_size to make it always constexpr 2021-10-14 16:46:49 +02:00
SChernykh
f3024d3556 StratumServer: submit Monero block as soon as possible
1-3 ms saved when a block is found
2021-10-13 18:57:21 +02:00
SChernykh
c9faa92098 StratumServer: fixed "bad share" ban logic 2021-10-04 15:51:28 +02:00
SChernykh
52e5008bf4 Refactoring
- Skip calling time(nullptr) twice
- Use getter method for m_api instead of exposing it
- Moved api_udate_*() back to private since they're not used anywhere else
2021-10-04 10:28:56 +02:00
Thomas Clarke
7742d163f7
API for stratum server statistics.
Users can pass `--stratum-api` to command line to enable a file called `local/stats` in `--data-api` directory. `local/stats` contains statistics that `StratumServer status` provides but in JSON format. It is currently setup that `local/stats` is updated each time a new job is sent to a worker.
2021-10-03 22:32:13 +01:00
SChernykh
5c92920619 Default log level 3
Also refactored default port numbers
2021-09-18 10:03:06 +02:00
SChernykh
f3b6423d4c Log difficulty for found pool shares 2021-09-05 22:57:36 +02:00