sumoprojects / sumokoin

Sumokoin - Digital Cash For Highly-Confidential Transactions
https://www.sumokoin.org
Other
131 stars 69 forks source link

[epee+p2p+protocol] various improvements and fixes #1206

Closed sumogr closed 3 years ago

sumogr commented 3 years ago

epee: change epee binary output from std::stringstream to byte_stream p2p: remove peers from grey and anchors lists when blocked protocol: drop peers we can't download anything from in sync mode p2p: add aggressive restrictions to pre-handshake p2p buffer limit epee: restrict duplicate keys in epee binary format protocol: add a max levin packet size by command type protocol: command max_bytes moved from dynamic map to static switch protocol: drop nodes if they claim new data but only give stale data portable_storage: add some sanity checks on data size portable_storage: remove overly aggressive cutoff protocol: fix false positives dropping peers ssl: buffered handshake detection portable_storage: remove array element limit portable_storage: forbid unnamed sections rpc: limit the number of txes for get_blocks.bin protocol: don't reset last request time on an idle timer protocol: fix wrong command in logs p2p: fix deadlock banning while updating peer lists portable_storage: check object limit where appropriate protocol: more sanity checks in new chain block hashes daemon: header row for peer list in sync_info portable_storage: better sanity checking protocol: handle receiving a block hash we've not added yet blockchain: lock access to m_blocks_hash_of_hashes p2p: fix accessing an network address in a deleted context p2p: make REQUEST_SUPPORT_FLAGS optional, pass flags in node data epee: also limit number of strings in portable_storage storages: overridable limits for loading portable_storage from binary p2p: remove obsolete pruning debug code p2p: fix outgoing and incoming connections limits daemon: fix status commanf p2p: fix lingering backpings p2p: increase idle peer kick time limit boosted_tcp_server: fix connection lifetime epee: readline, avoid consecutive duplicates in the history epee: reduce compilation time of epee/portable_storage.h p2p: add --max-connections-per-ip daemon option epee: remove unnecessary atomic operations in levin code (plus a workflows upgrade to properly use ccache on macos and windows builds)