aboutsummaryrefslogtreecommitdiff
path: root/src/cryptonote_protocol
Commit message (Collapse)AuthorAgeFilesLines
...
* | epee: add SSL supportmoneromooo-monero2019-02-022-0/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPC connections now have optional tranparent SSL. An optional private key and certificate file can be passed, using the --{rpc,daemon}-ssl-private-key and --{rpc,daemon}-ssl-certificate options. Those have as argument a path to a PEM format private private key and certificate, respectively. If not given, a temporary self signed certificate will be used. SSL can be enabled or disabled using --{rpc}-ssl, which accepts autodetect (default), disabled or enabled. Access can be restricted to particular certificates using the --rpc-ssl-allowed-certificates, which takes a list of paths to PEM encoded certificates. This can allow a wallet to connect to only the daemon they think they're connected to, by forcing SSL and listing the paths to the known good certificates. To generate long term certificates: openssl genrsa -out /tmp/KEY 4096 openssl req -new -key /tmp/KEY -out /tmp/REQ openssl x509 -req -days 999999 -sha256 -in /tmp/REQ -signkey /tmp/KEY -out /tmp/CERT /tmp/KEY is the private key, and /tmp/CERT is the certificate, both in PEM format. /tmp/REQ can be removed. Adjust the last command to set expiration date, etc, as needed. It doesn't make a whole lot of sense for monero anyway, since most servers will run with one time temporary self signed certificates anyway. SSL support is transparent, so all communication is done on the existing ports, with SSL autodetection. This means you can start using an SSL daemon now, but you should not enforce SSL yet or nothing will talk to you.
* Merge pull request #4988Riccardo Spagni2019-01-292-17/+44
|\ | | | | | | 973403bc Adding initial support for broadcasting transactions over Tor (Lee Clagett)
| * Adding initial support for broadcasting transactions over TorLee Clagett2019-01-282-17/+44
| | | | | | | | | | | | | | | | | | - Support for ".onion" in --add-exclusive-node and --add-peer - Add --anonymizing-proxy for outbound Tor connections - Add --anonymous-inbounds for inbound Tor connections - Support for sharing ".onion" addresses over Tor connections - Support for broadcasting transactions received over RPC exclusively over Tor (else broadcast over public IP when Tor not enabled).
* | block_queue: fix late sanity check off by onemoneromooo-monero2019-01-281-1/+1
|/
* Pruningmoneromooo-monero2019-01-225-229/+790
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The blockchain prunes seven eighths of prunable tx data. This saves about two thirds of the blockchain size, while keeping the node useful as a sync source for an eighth of the blockchain. No other data is currently pruned. There are three ways to prune a blockchain: - run monerod with --prune-blockchain - run "prune_blockchain" in the monerod console - run the monero-blockchain-prune utility The first two will prune in place. Due to how LMDB works, this will not reduce the blockchain size on disk. Instead, it will mark parts of the file as free, so that future data will use that free space, causing the file to not grow until free space grows scarce. The third way will create a second database, a pruned copy of the original one. Since this is a new file, this one will be smaller than the original one. Once the database is pruned, it will stay pruned as it syncs. That is, there is no need to use --prune-blockchain again, etc.
* Merge pull request #5001Riccardo Spagni2019-01-161-0/+1
|\ | | | | | | a5ffc2d5 Remove boost::lexical_cast for uuid and unused uuid function (Lee Clagett)
| * Remove boost::lexical_cast for uuid and unused uuid functionLee Clagett2018-12-231-0/+1
| |
* | Merge pull request #4976Riccardo Spagni2019-01-162-4/+4
|\ \ | | | | | | | | | 85665003 epee: better network buffer data structure (moneromooo-monero)
| * | epee: better network buffer data structuremoneromooo-monero2018-12-232-4/+4
| |/ | | | | | | avoids pointless allocs and memcpy
* | Merge pull request #4949Riccardo Spagni2019-01-062-12/+24
|\ \ | |/ |/| | | | | 5464725a protocol: change standby mode to not wait sleeping (moneromooo-monero) 85807dfb add a once_a_time_milliseconds class (moneromooo-monero)
| * protocol: change standby mode to not wait sleepingmoneromooo-monero2018-12-072-12/+24
| |
* | Merge pull request #4787Riccardo Spagni2018-12-122-0/+33
|\ \ | | | | | | | | | 3dba7f25 protocol: option to pad transaction relay to the next kB (moneromooo-monero)
| * | protocol: option to pad transaction relay to the next kBmoneromooo-monero2018-11-062-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | To help protect one's privacy from traffic volume analysis for people using Tor or I2P. This will really fly once we relay txes on a timer rather than on demand, though. Off by default for now since it's wasteful and doesn't bring anything until I2P's in.
* | | Merge pull request #4906Riccardo Spagni2018-12-041-2/+2
|\ \ \ | |_|/ |/| | | | | 506472e0 protocol: fix use after free when dropping a connection (moneromooo-monero)
| * | protocol: fix use after free when dropping a connectionmoneromooo-monero2018-11-261-2/+2
| |/
* | Merge pull request #4877Riccardo Spagni2018-12-041-1/+3
|\ \ | | | | | | | | | c25260f5 protocol: fix incorrect tx hash in log (moneromooo-monero)
| * | protocol: fix incorrect tx hash in logmoneromooo-monero2018-11-201-1/+3
| |/
* / Removed a lot of unnecessary includesMartijn Otto2018-11-151-22/+0
|/
* Merge pull request #4160luigi11112018-09-042-13/+32
|\ | | | | | | 704b60c block_queue: faster check whether a block was requested (moneromooo-monero)
| * block_queue: faster check whether a block was requestedmoneromooo-monero2018-07-202-13/+32
| |
* | Merge pull request #4207luigi11112018-08-221-7/+12
|\ \ | | | | | | | | | ce9457a cryptonote_protocol: don't serialize an unneeded new block message (moneromooo-monero)
| * | cryptonote_protocol: don't serialize an unneeded new block messagemoneromooo-monero2018-08-091-7/+12
| |/ | | | | | | Non fluffy block nodes should now be very rare
* | Merge pull request #4020luigi11112018-08-151-1/+14
|\ \ | |/ |/| | | c24a0af [monerod] Added blocks remaining count during syncronisation. (Jorropo)
| * [monerod] Added blocks remaining count during syncronisation.Jorropo2018-07-251-1/+14
| | | | | | | | And percent if usefull (% < 99)
* | Merge pull request #3716luigi11112018-06-274-59/+62
|\ \ | | | | | | | | | a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
| * | replace std::list with std::vector on some hot pathsmoneromooo-monero2018-06-264-59/+62
| |/ | | | | | | also use reserve where appropriate
* / cryptonote_protocol_handler: log when dropping a peermoneromooo-monero2018-06-091-0/+3
|/
* protocol: drop (and increase fails) if most blocks hashes are invalidmoneromooo-monero2018-06-031-3/+3
|
* protocol: do not switch to unsafe sync mode for just a few blocksmoneromooo-monero2018-05-281-1/+2
|
* Merge pull request #3719Riccardo Spagni2018-04-291-8/+11
|\ | | | | | | | | 3880bf39 cryptonote_protocol_handler.inl: remove span read just now that failed to pass some basic tests (stoffu) da249fd5 cryptonote_protocol_handler.inl: fix return type mismatches (int vs bool) (stoffu)
| * cryptonote_protocol_handler.inl: remove span read just now that failed to ↵stoffu2018-04-281-0/+3
| | | | | | | | pass some basic tests
| * cryptonote_protocol_handler.inl: fix return type mismatches (int vs bool)stoffu2018-04-281-8/+8
| |
* | Only log an error if fork version is higher AND is not known.Thaer Khawaja2018-04-221-1/+1
|/
* Fix typos in various filesDimitris Apostolou2018-03-151-1/+1
|
* Merge pull request #3277Riccardo Spagni2018-03-051-1/+1
|\ | | | | | | | | | | | | | | | | 0e7ad2e2 Wallet API: generalize 'bool testnet' to 'NetworkType nettype' (stoffu) af773211 Stagenet (stoffu) cc9a0bee command_line: allow args to depend on more than one args (stoffu) 55f8d917 command_line::get_arg: remove 'required' for dependent args as they're always optional (stoffu) 450306a0 command line: allow has_arg to handle arg_descriptor<bool,false,true> #3318 (stoffu) 9f9e095a Use `genesis_tx` parameter in `generate_genesis_block`. #3261 (Jean Pierre Dudey)
| * Stagenetstoffu2018-03-051-1/+1
| |
* | Correct spelling mistakes.Edward Betts2018-03-052-2/+2
|/
* Merge pull request #3229Riccardo Spagni2018-02-161-0/+9
|\ | | | | | | 928c1825 cryptonote_protocol: guard against all threads in standby (moneromooo-monero)
| * cryptonote_protocol: guard against all threads in standbymoneromooo-monero2018-02-021-0/+9
| |
* | Merge pull request #3181Riccardo Spagni2018-02-162-3/+3
|\ \ | |/ |/| | | e3f0980a daemon: don't drop RPC with busy error when running offline (moneromooo-monero)
| * daemon: don't drop RPC with busy error when running offlinemoneromooo-monero2018-01-252-3/+3
| |
* | Merge pull request #3186Riccardo Spagni2018-01-281-1/+1
|\ \ | | | | | | | | | 7ed62e63 cryptonote_protocol: fix std::move usage on different types (moneromooo-monero)
| * | cryptonote_protocol: fix std::move usage on different typesmoneromooo-monero2018-01-261-1/+1
| | |
* | | Readd copyright starting datexmr-eric2018-01-262-2/+2
| | |
* | | Update 2018 copyrightxmr-eric2018-01-268-8/+8
|/ /
* | Merge pull request #3105Riccardo Spagni2018-01-251-1/+1
|\ \ | | | | | | | | | b56f4645 cryptonote_protocol: fix size_t used in wire format (moneromooo-monero)
| * | cryptonote_protocol: fix size_t used in wire formatmoneromooo-monero2018-01-111-1/+1
| |/ | | | | | | This is 32 bits on 32 bit platforms, but 64 bits on 64 bit platforms.
* | Merge pull request #3040Riccardo Spagni2018-01-251-1/+1
|\ \ | | | | | | | | | 69f9a075 cryptonote_protocol: fix missing space in version mismatch message (moneromooo-monero)
| * | cryptonote_protocol: fix missing space in version mismatch messagemoneromooo-monero2017-12-311-1/+1
| | |
* | | Merge pull request #3015Riccardo Spagni2018-01-251-0/+2
|\ \ \ | |_|/ |/| | | | | f06603a4 cryptonote_protocol: update target height when receiving blocks (moneromooo-monero)