Commit Graph

589 Commits (master)

Author SHA1 Message Date
SChernykh f0d576e1b0 Reduced memory usage for each PoolBlock
2 years ago
SChernykh 7468af0779 TCPServer: fix incoming connection counting
2 years ago
SChernykh 38a6d3e549 Limit max in/out peers to 450
2 years ago
SChernykh b81f1c4975 Require monerod v0.18
2 years ago
SChernykh ed78e9df6e More reliable file load/save
2 years ago
SChernykh f044149004 P2PServer fix: reset ping time on disconnect
2 years ago
SChernykh f126eb7611 P2PServer: added more logging
2 years ago
SChernykh afa9cf371e P2PServer: sync from the fastest peer if possible
2 years ago
SChernykh f813cf6d36 Fix: possible use after free on shutdown
2 years ago
SChernykh d80a06bc8e Added more error logging
2 years ago
SChernykh 947178f10a StratumServer: improved warning message
2 years ago
SChernykh e92cc7d50c Fix: don't use proxy for incoming connections
2 years ago
SChernykh 989a28a8ca TCPServer small fixes
2 years ago
SChernykh e4dd46b498 Added `--no-dns` command line parameter
2 years ago
SChernykh c49e8d4770 Merge branch 'proxy'
2 years ago
SChernykh 86156f3fec SOCKS5 proxy support
2 years ago
SChernykh fec826b10e Changed spammy warning to level 5
2 years ago
SChernykh d40bb61da8 p2pool v2.3
2 years ago
SChernykh 4733d42932 TCPServer: more informative error messages
2 years ago
SChernykh 6615fa67f5 API: fixed error messages
2 years ago
SChernykh dc4b88d08e API: use unique temp file names
2 years ago
SChernykh 4599d81a59 API: save to temp file first and then rename it
2 years ago
SChernykh 3ea5b575b7 JSON RPC: added more error checks
2 years ago
SChernykh bde5b19c77 CI: added sync test
2 years ago
SChernykh cc60ab3d63 StratumServer: added scoring system for clients
2 years ago
SChernykh 3802886722 Fixed "unknown command" message
2 years ago
SChernykh d4e27a27cb Tweaked SideChain::get_missing_blocks()
2 years ago
SChernykh e882b91b06 Reduced lock contention in Cache::get_derivation()
2 years ago
SChernykh 4c8dbee79d More fine-grained locks in crypto cache
2 years ago
SChernykh 30861bbf91 Speedup SideChain::get_outputs_blob()
2 years ago
SChernykh ea6a19a260 Fixed data race
2 years ago
SChernykh fc81fa8745 JSON RPC: added more error checking
2 years ago
SChernykh 948436e57e Fixed coverity issue
2 years ago
SChernykh 3dde71f1ff Fixed processing of long console commands
2 years ago
SChernykh 555414cd51 SideChain: improved precalculation coverage
2 years ago
SChernykh c33033b2f4 Code cleanup
2 years ago
SChernykh 3c697c2d7e Fixed potential deadlock
2 years ago
SChernykh 0e7c1aa481 SideChain: stricter checks for number of threads
2 years ago
SChernykh 7d5ff13f75 Fixed cppcheck warnings
2 years ago
SChernykh 02a8a512dc SideChain: precalculate tx pubkeys for faster sync
2 years ago
SChernykh 4733f46a28 Added uv_cond_init_checked
2 years ago
SChernykh 945de348f3 Rewrote get_view_tag without std::find_if
2 years ago
SChernykh 20dd9d7adc More efficient view tags caching
2 years ago
SChernykh c5bd184bbc P2PServer: don't deserialize the same block twice
2 years ago
SChernykh 1c33cc9f3d p2pool v2.2.1
2 years ago
SChernykh 9d692d5194 ConsoleCommands: check if console is available
2 years ago
SChernykh 2e4f7adee4 TCPServer: added more checks during disconnects
2 years ago
SChernykh dcb822f812 ConsoleCommands: read from stdin using libuv
2 years ago
SChernykh 5da286fed4 JSON RPC: added HTTP headers
2 years ago
SChernykh 4ec0fe8d96 Fixed JSON RPC handling during shutdown
2 years ago
SChernykh 340a3e85c8 Fixed autodiff when running for a long time
2 years ago
SChernykh 64baf660bb JSON RPC: fixed shutdown on connect error
2 years ago
SChernykh c5ea4dca67 p2pool v2.2
2 years ago
SChernykh deaf47155f Miner: reset share counter when synchronized
2 years ago
SChernykh a1d1420ec3 Miner: display shares found in status
2 years ago
SChernykh deb8d59130 Fixed cppcheck error
2 years ago
SChernykh 14bbf96feb Enforce deterministic tx keys starting from v15
2 years ago
SChernykh a281db1cbb Fixed unaligned read
2 years ago
SChernykh b25e5449c8 Fixed rare "low diff share" errors
2 years ago
SChernykh b267c19a45 Limit autodiff to 4M for max compatibility
2 years ago
SChernykh 2aa8d2bdcc Code cleanup
2 years ago
SChernykh acf37ff10f Added json parser tests
2 years ago
SChernykh 921cbb0b69 ConsoleCommands: don't exit on EOF
2 years ago
SChernykh 7f1b849394 Fixed new cppcheck issues
2 years ago
SChernykh 9f4388843a Fixed error messages
2 years ago
SChernykh 37fba30c79 JSON RPC: fixed error checking
2 years ago
SChernykh 8f1fd55e2f Fixed more memory leaks in TCPServer
2 years ago
SChernykh 8af9e9b27d Fixed memory leaks
2 years ago
SChernykh 8b681d6efb Added memory hooks for CURL
2 years ago
SChernykh a0778c8d7b CURL error checking
2 years ago
SChernykh a35d4b2701 Change llhttp to libcurl
2 years ago
SChernykh 05b0973a23 More reliable p2pool shutdown logic
2 years ago
SChernykh 09f46beeb4 SideChain: added more checks to is_longer_chain()
2 years ago
SChernykh 6ef34bb3f5 Enabled more compiler warnings
2 years ago
SChernykh 9a5be0a321 p2pool v2.1
2 years ago
SChernykh c203f6eb0a Fixed a new cppcheck issue
2 years ago
SChernykh 111087d96a Fixed block reward share calculation
2 years ago
SChernykh 9e7666d12f Fixed data races
2 years ago
SChernykh cb147773b5 Updated cppcheck workflow on Linux
2 years ago
SChernykh d84bef8f14 Added block reward share percent to miner api
2 years ago
SChernykh 6d121122f8 Fixed compiler warnings in tests
2 years ago
SChernykh 0e222afd6a Exit if server startup fails
2 years ago
SChernykh b191962d32 Handle startup errors without calling abort()
2 years ago
SChernykh 1cf13e142a SideChain: fixed alternative chain detection
2 years ago
SChernykh 8f1f81749d StratumServer: reset cumulative hashes too
2 years ago
SChernykh 72d70eba16 SideChain: added "synchronized" log message
2 years ago
SChernykh ae3612f595 Fixed worker diff display when autodiff is off
2 years ago
SChernykh 37b6457054 Show worker hashrate only when autodiff is on
2 years ago
SChernykh 9579be5c7d Optimized SideChain::miner_count()
2 years ago
SChernykh d05d47fa75 Fixed compilation
2 years ago
SChernykh bd88c04e9e SideChain: mutex locks refactoring
2 years ago
SChernykh eb3a3872eb Fixed missing blocks download logic
2 years ago
SChernykh 5cea7be405 Allow only one pending get_miner_data
2 years ago
SChernykh 516c382fe4 Update keccak.cpp
2 years ago
SChernykh 710e55422a Ignore duplicate get_miner_data
2 years ago
SChernykh 3406cf78b4 Don't return stale chain tip to other peers
2 years ago
SChernykh 8fa354796c Reload peer list when there are no connections
2 years ago
SChernykh 6c6ef1c1b8 Restart ZMQ connection if it looks dead
2 years ago
SChernykh c3c326c680 Suppress MSVC warnings
2 years ago
SChernykh 92e20485b2 Log: don't allow side effects in LOG() calls
2 years ago
SChernykh edd782ac23 Fixed custom worker names
2 years ago
SChernykh a4d84e318d TCPServer: refactored Client constructor
2 years ago
SChernykh 134f2d68a3 Fixed data races
2 years ago
SChernykh d23c46ff84 Added bsr() function to util
2 years ago
SChernykh 820c5db5e8 Log: check for logrotate only once per loop
2 years ago
SChernykh 990916ab62 StratumServer: added autodiff
2 years ago
SChernykh d4e362cd76 TCPServer: optimized Client struct size
2 years ago
SChernykh 1dd06cc509 Removed std::string to avoid memory allocation
2 years ago
SChernykh 2e2bd1d137 Added log padding
2 years ago
SChernykh 0818d91f4f StratumServer: added console command `workers`
2 years ago
SChernykh 1a35177633 Fixed unsafe usage of log::Stream buffers
2 years ago
SChernykh 8f27d940e3 Don't ban localhost
2 years ago
SChernykh 6b4640c413 Fixes for Termux
2 years ago
SChernykh 8aebcdc580 p2pool v2.0
2 years ago
SChernykh 54acfee036
Merge pull request #144 from SChernykh/view_tags
2 years ago
SChernykh a78ddb50d5 Fixed logger thread timing logic
2 years ago
SChernykh b2f86a5f6b Ban peers with stuck or lagging monerod
2 years ago
SChernykh 2a77695832 Fixed data races in miner
2 years ago
SChernykh 21d8cb917b Fixed data race in logger
2 years ago
SChernykh 2c70bf8616 View tags support
2 years ago
SChernykh 7522111bb7 Fixed data races
2 years ago
SChernykh 7b5b910f3f Undefined behaviour fixes
2 years ago
SChernykh afb52e4235 Check return value (Coverity fix)
2 years ago
SChernykh 93cd9a659a Code cleanup
2 years ago
SChernykh 9e287ab4f0 Logger fixes
2 years ago
SChernykh 094209f311 P2PServer: optimized update_peer_connections()
2 years ago
SChernykh dee66c3f32 Added varint unit tests
2 years ago
SChernykh 32533e3c96 FreeBSD build
2 years ago
SChernykh 1b3c1eb850 P2PServer: increased peer timeout to 15 minutes
2 years ago
SChernykh 7fe032915f Ignore SIGPIPE
2 years ago
SChernykh 5b9b73abcc p2pool v1.9
2 years ago
SChernykh a2afa29052 Updated copyright
2 years ago
SChernykh a2d3dbad5e Use old bock template when update fails
2 years ago
SChernykh e50cf060cb Miner: fixed share counter initialization
2 years ago
SChernykh 915988d694 Added logging for the extra_nonce fix
2 years ago
SChernykh a7aed2f221 Fixed miner tx creation
2 years ago
SChernykh 292e2580e5 Make sure dataset init doesn't block start
2 years ago
SChernykh 028a5d0c88 Fixed memory leak after loading block cache
2 years ago
SChernykh 8b27faad6d BlockCache: fixed collisions of same height blocks
2 years ago
SChernykh cdc3206ee8 Optimized keccak
2 years ago
SChernykh 0c2b7d6010 More time handling fixes
2 years ago
SChernykh ef15c3b54f Show sidechain ID in status
2 years ago
SChernykh f4bcdc7fe9 Use steady_clock to time peer list requests
2 years ago
SChernykh aada1bb5cc Use chrono::steady_clock for internal timestamps
2 years ago
SChernykh c21d052d7a Refactored RNG usage across the code
2 years ago
SChernykh 62b1690780 Added an option to disable RandomX for the build
2 years ago
SChernykh 0db57e5047 p2pool v1.8
2 years ago
SChernykh e7919514d4 TCPServer: fixed uninitialized variables
2 years ago
SChernykh 7ab21c6afd TCPServer: reduced memory usage
2 years ago
SChernykh 2209e0cc70 P2PServer: relaxed peer list request restriction
2 years ago
SChernykh a73b4616a4 Fixed Coverity issues
2 years ago
SChernykh 9593311332 Added `bans` console command
2 years ago
SChernykh 9a09d15bea P2PServer: use high_resolution_clock for ping time
2 years ago
SChernykh f082488e4b TCPServer: use steady_clock for bans
2 years ago
SChernykh 752e2381d6 P2PServer: added more protocol checks
2 years ago
SChernykh de9f13d393 Check for unknown command line parameters
2 years ago
SChernykh 272d206741 stats_mod api: updated min payout value
2 years ago
SChernykh 8045c40026 Check for proper `--local-api` usage
2 years ago
SChernykh d4a1b14820 Use monerod peers to find p2pool nodes
2 years ago
SChernykh cc6ce4a366 Reset stratum share counters after initial sync
2 years ago
SChernykh 42370bf11e p2pool v1.7
2 years ago
SChernykh ec2f4467fb Added `--mini` command line option to connect to p2pool-mini
2 years ago
SChernykh 9f449320b5 StartumServer: disconnect and ban inactive clients
2 years ago
SChernykh 8767ef9e19 Display payout amount when a block is found
2 years ago
SChernykh cf184295b4 Updated version
2 years ago
SChernykh 1e4e4bd08e Added miner statistics to data api
2 years ago
SChernykh a640e41d74 Improved RNG initialization
2 years ago
SChernykh 38ffd73b54 Fixed new Coverity issue
2 years ago
SChernykh c10a5ce323 Miner code cleanup
2 years ago
SChernykh e2931f94b5 Added embedded miner
2 years ago
SChernykh 248fcee174 Update version
2 years ago
SChernykh 89bcceb986 Added p2pool mini seed nodes and default port
2 years ago
SChernykh 2b01350add Added `outpeers` and `inpeers` console commands
2 years ago
SChernykh f1b6212c82 P2PServer: add connection limits
2 years ago
SChernykh d8bba4dc82 Updated version mismatch error message
2 years ago
SChernykh eaf29872cb Update version
2 years ago
SChernykh f9def6cb73 Added "calc_pow" RPC support
3 years ago
SChernykh 07cfb54bdc JSONRPCRequest: fixed undefined behavior in the error handler
3 years ago
SChernykh 5dd8d11b72 TCPServer: removed unused field
3 years ago
SChernykh e44baad73c Update version
3 years ago
SChernykh bb7a5b4d6d Cleanup
3 years ago
SChernykh 64116643c2 Fixed block broadcasts
3 years ago
SChernykh 1e4c6ef5f4 Added block verification test
3 years ago
SChernykh 61edc6ed70 Reduce cache flush frequency to once per minute
3 years ago
SChernykh dff2413cae TCPServer: make write buffers global
3 years ago
SChernykh 998c2ba72f Fixed msys2 build crash
3 years ago
SChernykh b56d027dd5 Include P2P peer list into miner count
3 years ago
SChernykh eaed654012 Check for missing data from monerod on each new block
3 years ago
SChernykh 981b161cc9 SideChain: faster processing of repeated broadcasts
3 years ago
SChernykh f59e9171e8 SideChain: use a separate lock for m_seenBlocks
3 years ago
SChernykh b45540ca08 TCPServer: clean up old IP bans
3 years ago
SChernykh 806e1ca0a3 SideChain: faster check for low-diff spam blocks
3 years ago
SChernykh 113e39817d Cleanup old Monero blocks data
3 years ago
SChernykh 0869326f39 SideChain: count miners in the last 48 hours
3 years ago
SChernykh 75d62c0303 SideChain: cleanup m_seenBlocks when pruning old blocks
3 years ago
SChernykh da4686b88f ZMQReader: start after initial RPC calls are finished
3 years ago
SChernykh a008eac8c6 ZMQReader: more reliable connect()
3 years ago
SChernykh 3d60ae8c32 Fix: don't start until monerod is fully synchronized
3 years ago
SChernykh 88f346414a Fixed race condition when using --no-color
3 years ago
SChernykh 2071a24a9f Update version
3 years ago
SChernykh 1c0da4513f Added `--no-color` command line option
3 years ago
SChernykh 6a002cda46 Create msvc-analysis.yml
3 years ago
SChernykh c0c210664a Show uptime in status
3 years ago
SChernykh 6859d11445 Disable console quick-edit mode on Windows
3 years ago
SChernykh 111324b6e0 Added console command to show connected peers
3 years ago
SChernykh 148b9dd294 Switch to faster unordered_map/set
3 years ago
SChernykh 04d18cdf1d P2PServer: fixed m_timer leak
3 years ago
SChernykh 352ad81a0a StratumServer: faster processing of regular shares
3 years ago
SChernykh d26902468d P2PServer: peer list tweaks
3 years ago
SChernykh 0382027d70 Fixed wrong error message
3 years ago
SChernykh 966b499e5c ZMQReader: keep trying to connect on startup
3 years ago
SChernykh 9885f82e9e Limit user name length to 64 characters
3 years ago
WeebDataHoarder bc341918f6 Decode custom user from stratum client, display stratum client+user on SHARE FOUND and client mainchain found message
3 years ago
SChernykh f17c23528a Update version
3 years ago
SChernykh a06f4dcdcd P2PServer: fixed ever growing memory usage
3 years ago
SChernykh 816a29c5ab Added `--no-cache` command line parameter
3 years ago
SChernykh 285560e120 Fixed possible sidechain split during RandomX epoch change
3 years ago
SChernykh 39ba5c4131 P2PServer: check for messages that shouldn't be sent
3 years ago
SChernykh 9b86f8e81f Peer list refactoring
3 years ago
SChernykh 9e90e988fa Refactored array_size to make it always constexpr
3 years ago
SChernykh 39b2167c98 Show correct max log level in usage
3 years ago
SChernykh f3024d3556 StratumServer: submit Monero block as soon as possible
3 years ago
SChernykh 61ac90f1d5
Fixed typo
3 years ago
SChernykh 60a8538e0c P2PServer: show an error when there are no ZMQ messages
3 years ago
SChernykh 77a3a5857c P2PServer: show an error when there are no connections
3 years ago
SChernykh af2a8eeb08 Tweaked warning level for lagging nodes
3 years ago
SChernykh 54d0ab3658 Move most block broadcasts to log level 6
3 years ago
SChernykh c9faa92098 StratumServer: fixed "bad share" ban logic
3 years ago
SChernykh 52e5008bf4 Refactoring
3 years ago
SChernykh a0a31b0f3b
Merge pull request #51 from Tonux599/stratumServerJson-staging
3 years ago
Thomas Clarke 7742d163f7
API for stratum server statistics.
3 years ago
SChernykh 7d66864b01 Print P2Pool version
3 years ago
SChernykh 2a3cd13b19 P2PServer: delete old cached blocks after initial sync
3 years ago
SChernykh 4bcaa41c8e Clear crypto derivation/key cache when a block is found
3 years ago
SChernykh 4fce76576f ZMQ reader: abort if connect to monerod failed
3 years ago
SChernykh f05f7c4268 Fixed wrong nonce values in submit_block error log
3 years ago
SChernykh ae8733c187 Update RandomX
3 years ago
SChernykh 5c92920619 Default log level 3
3 years ago
SChernykh b4ea125a8a Hardcode default consensus ID for faster startup
3 years ago
SChernykh 8aa9e54dc4 BlockTemplate: wait for 10 seconds before including new transactions
3 years ago
SChernykh b35b4a9f76 Crypto: added cache for faster key derivation
3 years ago
SChernykh ba6a2c8eb2 P2PServer: relax stale block restriction
3 years ago
SChernykh 14e26f5c17 Fix: always check before closing TCP handles
3 years ago
SChernykh 4c5144b37f Check monerod RPC version at startup
3 years ago
SChernykh 42dd58d778 P2PServer: check broadcasts for wrong height
3 years ago
SChernykh da0f376bef P2PServer: ban peers that don't broadcast blocks
3 years ago
SChernykh 0d439e7712 SideChain: submit blocks to monerod in more cases
3 years ago
SChernykh b8f04ac787 Tweaked block broadcast rules
3 years ago
WeebDataHoarder 7bad1e05a4 Implemented shares/uncles position chart on status command
3 years ago
SChernykh 74096248e1 Better error handling of Monero RPC requests
3 years ago