aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_protocol
Commit message (Collapse)AuthorAgeFilesLines
...
| * | cryptonote_protocol: update target height when receiving blocksmoneromooo-monero2017-12-271-0/+2
| |/
* | Merge pull request #3004Riccardo Spagni2018-01-101-0/+5
|\ \ | |/ |/| | | a2c845c7 cryptonote_protocol: internal error consistency size check (moneromooo-monero)
| * cryptonote_protocol: internal error consistency size checkmoneromooo-monero2017-12-241-0/+5
| |
* | use const refs in for loops for non tiny typesmoneromooo-monero2017-12-181-1/+1
| |
* | add empty container sanity checks when using front() and back()moneromooo-monero2017-12-182-0/+7
| |
* | cryptonote_protocol: sanity check chain hashes from peermoneromooo-monero2017-12-181-0/+6
| |
* | cryptonote_protocol: print peer versions when unexpectedmoneromooo-monero2017-12-181-6/+10
|/ | | | also avoid integer underflow on zero height
* Merge pull request #2877Riccardo Spagni2017-12-173-10/+4
|\ | | | | | | | | | | 43f5269f Wallets now do not depend on the daemon rpc lib (moneromooo-monero) bb89ae8b move connection_basic and network_throttle from src/p2p to epee (moneromooo-monero) 4abf25f3 cryptonote_core does not depend on p2p anymore (moneromooo-monero)
| * move connection_basic and network_throttle from src/p2p to epeemoneromooo-monero2017-12-162-2/+2
| | | | | | | | | | These even had the epee namespace. This fixes some ugly circular dependencies.
| * cryptonote_core does not depend on p2p anymoremoneromooo-monero2017-12-162-8/+2
| | | | | | | | | | | | As a followon side effect, this makes a lot of inline code included only in particular cpp files (and instanciated when necessary.
* | move includes around to lessen overall loadmoneromooo-monero2017-12-163-37/+2
|/
* Merge pull request #2866Riccardo Spagni2017-12-161-1/+1
|\ | | | | | | cf5f6236 Corrections in rate limiting / trottle code, especially in 'out' direction (rbrunner7)
| * Corrections in rate limiting / trottle code, especially in 'out' directionrbrunner72017-11-281-1/+1
| | | | | | | | | | | | | | | | | | Deleted 3 out of 4 calls to method connection_basic::sleep_before_packet that were erroneous / superfluous, which enabled the elimination of a "fudge" factor of 2.1 in connection_basic::set_rate_up_limit; also ended the multiplying of limit values and numbers of bytes transferred by 1024 before handing them over to the global throttle objects
* | cryptonote_protocol: fix corner case looping asking for same block hashesmoneromooo-monero2017-12-031-0/+4
| |
* | make connection_id a string in RPCmoneromooo-monero2017-11-182-3/+3
|/ | | | It's sent as JSON, so raw binary is not appropriate
* remove "using namespace std" from headersmoneromooo-monero2017-11-141-2/+2
| | | | | | | It's nasty, and actually breaks on Solaris, where if.h fails to build due to: struct map *if_memmap;
* protocol: drop connections which don't handshake after some timemoneromooo-monero2017-10-221-3/+6
|
* Fix compiler warnings with Clang 6.0.0.Vasil Dimov2017-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | monero/src/cryptonote_protocol/block_queue.cpp:208:44: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces] static const boost::uuids::uuid uuid0 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ { } monero/src/wallet/wallet_rpc_server.cpp:1895:43: error: lambda capture 'wal' is not used [-Werror,-Wunused-lambda-capture] tools::signal_handler::install([&wrpc, &wal](int) { ^ monero/src/cryptonote_protocol/cryptonote_protocol_handler.inl:1616:40: error: lambda capture 'arg' is not used [-Werror,-Wunused-lambda-capture] m_p2p->for_each_connection([this, &arg, &fluffy_arg, &exclude_context, &fullConnections... ^ monero/src/cryptonote_protocol/cryptonote_protocol_handler.inl:1616:46: error: lambda capture 'fluffy_arg' is not used [-Werror,-Wunused-lambda-capture] m_p2p->for_each_connection([this, &arg, &fluffy_arg, &exclude_context, &fullConnections... ^ monero/src/blockchain_utilities/blockchain_export.cpp:181:3: error: bool literal returned from 'main' [-Werror,-Wmain] CHECK_AND_ASSERT_MES(r, false, "Failed to initialize source blockchain storage"); ^ ~~~~~ monero/contrib/epee/include/misc_log_ex.h:180:97: note: expanded from macro 'CHECK_AND_ASSERT_MES' ...fail_ret_val, message) do{if(!(expr)) {LOG_ERROR(message); return fail_ret_val;};}while(0) ^ ~~~~~~~~~~~~ monero/src/blockchain_utilities/blockchain_export.cpp:195:3: error: bool literal returned from 'main' [-Werror,-Wmain] CHECK_AND_ASSERT_MES(r, false, "Failed to export blockchain raw data"); ^ ~~~~~ monero/contrib/epee/include/misc_log_ex.h:180:97: note: expanded from macro 'CHECK_AND_ASSERT_MES' ...fail_ret_val, message) do{if(!(expr)) {LOG_ERROR(message); return fail_ret_val;};}while(0) ^ ~~~~~~~~~~~~
* Merge pull request #2604Riccardo Spagni2017-10-151-3/+10
|\ | | | | | | 0a872798 protocol: kick idle peers by dropping them (moneromooo-monero)
| * protocol: kick idle peers by dropping themmoneromooo-monero2017-10-071-3/+10
| | | | | | | | | | | | | | | | | | This is safer, as we don't risk break expectations (eg, requesting block hashes and then receiving a late set of blocks). Dropping a connection means another will be attempted in a fresh state. Also bump the kick timeout to 5 minutes, to ensure we only kick really idle peers.
* | Merge pull request #2571Riccardo Spagni2017-10-151-2/+1
|\ \ | | | | | | | | | 8028dde7 block_queue: use boost::uuids::nil_uuid where appropriate (moneromooo-monero)
| * | block_queue: use boost::uuids::nil_uuid where appropriatemoneromooo-monero2017-10-031-2/+1
| |/
* | Merge pull request #2469Riccardo Spagni2017-10-151-0/+12
|\ \ | |/ |/| | | 7adceee6 precomputed block hashes are now in blocks of N (currently 256) (moneromooo-monero)
| * precomputed block hashes are now in blocks of N (currently 256)moneromooo-monero2017-09-181-0/+12
| | | | | | | | This shaves a lot of space off binaries
* | move checkpoints in a separate librarymoneromooo-monero2017-09-252-2/+2
| |
* | Merge pull request #2460Riccardo Spagni2017-09-251-2/+3
|\ \ | | | | | | | | | 3487d810 cryptonote_protocol: fix needless chain hashes downloads (moneromooo-monero)
| * | cryptonote_protocol: fix needless chain hashes downloadsmoneromooo-monero2017-09-171-2/+3
| |/ | | | | | | | | | | | | | | The last known hash was calculated incorrectly, causing further chain hash downloads to restart from the current chain. When the block queue has close to 10k blocks waiting, this causes frequent downloads of 10k more hashes, but with only the last few hashes actually being useful.
* | Merge pull request #2458Riccardo Spagni2017-09-252-14/+2
|\ \ | | | | | | | | | 7f2f6ee1 protocol: remove hop count on block propagation (moneromooo-monero)
| * | protocol: remove hop count on block propagationmoneromooo-monero2017-09-172-14/+2
| |/ | | | | | | | | | | It is unused, as it was apparently a future optimization, and it leaks some information (though since pools publish thei blocks they find, that amount seems small).
* / build: auto update version info without manually deleting version.hstoffu2017-09-211-2/+0
|/
* Add a --fluffy-blocks option to relay blocks as fluffy blocksmoneromooo-monero2017-09-031-1/+1
| | | | Defaults to off, but fluffy blocks are forced enabled on testnet
* Merge pull request #2372Riccardo Spagni2017-09-021-6/+34
|\ | | | | | | | | | | c867357a cryptonote_protocol: error handling on cleanup_handle_incoming_blocks (moneromooo-monero) ce901fcb Fix blockchain_import wedge on exception in cleanup_handle_incoming_blocks (moneromooo-monero) 84fa015e core: guard against exceptions in handle_incoming_{block,tx} (moneromooo-monero)
| * cryptonote_protocol: error handling on cleanup_handle_incoming_blocksmoneromooo-monero2017-08-291-6/+34
| |
* | cryptonote_protocol: remove old spans when received as old blocksmoneromooo-monero2017-08-281-0/+1
|/ | | | fixes getting those in a loop
* Merge pull request #2314Riccardo Spagni2017-08-261-0/+2
|\ | | | | | | | | c22d22e2 Cleanup test impact of adding safesyncmode() method (Howard Chu) 9a859844 Toggle SAFE syncmode on and off automatically (Howard Chu)
| * Cleanup test impact of adding safesyncmode() methodHoward Chu2017-08-221-2/+2
| |
| * Toggle SAFE syncmode on and off automaticallyHoward Chu2017-08-201-0/+2
| | | | | | | | | | | | | | | | | | If monerod is started with default sync mode, set it to SAFE after synchronization completes. Set it back to FAST if synchronization restarts (e.g. because another peer has a longer blockchain). If monerod is started with an explicit sync mode, none of this automation takes effect.
* | cryptonote_protocol: warn if we see a higher top version we expectmoneromooo-monero2017-08-231-0/+2
| |
* | cryptonote_protocol: less strict check on top version on connectmoneromooo-monero2017-08-231-1/+1
| | | | | | | | | | | | This allows peers who synced past a fork on the wrong height to reorg to the right chain after they updated their software to include the new version.
* | cryptonote_protocol: update target height when syncing toomoneromooo-monero2017-08-231-0/+4
| |
* | cryptonote_protocol: simplify and remove unnecessary castsmoneromooo-monero2017-08-231-5/+6
| |
* | cryptonote_protocol: print peer top height along with its versionmoneromooo-monero2017-08-231-1/+1
| |
* | cryptonote_protocol: misc fixes to the new sync algorithmmoneromooo-monero2017-08-214-38/+107
|/ | | | | | | | | | | Fix sync wedge corner case: It could happen if a connection went into standby mode, while it was the one which had requested the next span, and that span was still waiting for the data, and that peer is not on the main chain. Other peers can then start asking for that data again and again, but never get it as only that forked peer does. And various other fixes
* Merge pull request #2303Riccardo Spagni2017-08-174-1/+42
|\ | | | | | | | | 5a283078 cryptonote_protocol: large block sync size before v4 (moneromooo-monero) 7b747607 cryptonote_protocol: kick idle synchronizing peers (moneromooo-monero)
| * cryptonote_protocol: large block sync size before v4moneromooo-monero2017-08-171-1/+1
| |
| * cryptonote_protocol: kick idle synchronizing peersmoneromooo-monero2017-08-164-0/+41
| | | | | | | | | | In case they dropped off downloading for any reason, they'll get sent to download again.
* | Merge pull request #2300Riccardo Spagni2017-08-171-1/+1
|\ \ | | | | | | | | | 42b34b35 Consistently print peer id in hex and on 16 chars (moneromooo-monero)
| * | Consistently print peer id in hex and on 16 charsmoneromooo-monero2017-08-161-1/+1
| |/
* | Merge pull request #2291Riccardo Spagni2017-08-171-1/+1
|\ \ | | | | | | | | | b59cd074 befor -> before (Nano Akron)
| * | befor -> beforeNano Akron2017-08-151-1/+1
| |/ | | | | | | Really unique yet consistent spelling mistake