aboutsummaryrefslogtreecommitdiff
path: root/contrib/epee
Commit message (Collapse)AuthorAgeFilesLines
...
| * | net_ssl: free certs after setting them upmoneromooo-monero2019-05-101-2/+2
| |/
* | Merge pull request #5519luigi11112019-05-141-1/+1
|\ \ | |/ |/| | | | | b8b957d cmake: fix incorrect hint for OPENSSL_ROOT_DIR (moneromooo-monero) 367bb80 mlog: default to not showing SSL errors (moneromooo-monero)
| * mlog: default to not showing SSL errorsmoneromooo-monero2019-05-061-1/+1
| |
* | Merge pull request #5509Riccardo Spagni2019-05-072-4/+128
|\ \ | | | | | | | | | a62e0725 net_ssl: SSL config tweaks for compatibility and security (moneromooo-monero)
| * | net_ssl: SSL config tweaks for compatibility and securitymoneromooo-monero2019-05-072-4/+128
| |/ | | | | | | | | | | | | | | | | | | add two RSA based ciphers for Windows/depends compatibility also enforce server cipher ordering also set ECDH to auto because vtnerd says it is good :) When built with the depends system, openssl does not include any cipher on the current whitelist, so add this one, which fixes the problem, and does seem sensible.
* | Merge pull request #5499Riccardo Spagni2019-05-071-0/+236
|\ \ | |/ |/| | | a4c4a2d8 blockchain: keep a rolling long term block weight median (moneromooo-monero)
| * blockchain: keep a rolling long term block weight medianmoneromooo-monero2019-05-021-0/+236
| |
* | change SSL certificate fingerprint whitelisting from SHA1 to SHA-256moneromooo-monero2019-04-262-1/+3
|/ | | | SHA1 is too close to bruteforceable
* Merge pull request #5482Riccardo Spagni2019-04-241-0/+1
|\ | | | | | | 9956500d net_helper: clear recv buffer on eof (moneromooo-monero)
| * net_helper: clear recv buffer on eofmoneromooo-monero2019-04-231-0/+1
| |
* | Merge pull request #5479Riccardo Spagni2019-04-241-1/+1
|\ \ | | | | | | | | | edbae2d0 levin_protocol_handler_async: tune down preallocation a fair bit (moneromooo-monero)
| * | levin_protocol_handler_async: tune down preallocation a fair bitmoneromooo-monero2019-04-221-1/+1
| |/ | | | | | | | | | | It can allocate a lot when getting a lot of connections (in particular, the stress test on windows apparently pushes that memory to actual use, rather than just allocated)
* / serialization: set default log categorymoneromooo-monero2019-04-213-1/+7
|/
* epee: use boost/timer/timer.hpp, boost/timer.hpp is deprecatedmoneromooo-monero2019-04-181-1/+1
|
* Merge pull request #5445Riccardo Spagni2019-04-161-0/+12
|\ | | | | | | b18f0b10 wallet: new --offline option (moneromooo-monero)
| * wallet: new --offline optionmoneromooo-monero2019-04-151-0/+12
| | | | | | | | | | It will avoid connecting to a daemon (so useful for cold signing using a RPC wallet), and not perform DNS queries.
* | Merge pull request #5436Riccardo Spagni2019-04-161-3/+4
|\ \ | | | | | | | | | 61d63900 net_helper: avoid unnecessary memcpy (moneromooo-monero)
| * | net_helper: avoid unnecessary memcpymoneromooo-monero2019-04-131-3/+4
| |/
* / abstract_tcp_server2: fix timeout on exitmoneromooo-monero2019-04-122-2/+9
|/ | | | | | When closing connections due to exiting, the IO service is already gone, so the data exchange needed for a gracious SSL shutdown cannot happen. We just close the socket in that case.
* epee: init a new ssl related variable in ctormoneromooo-monero2019-04-111-0/+1
|
* simplewallet: new net_stats commandmoneromooo-monero2019-04-112-2/+30
| | | | displays total sent and received bytes
* Enabling daemon-rpc SSL now requires non-system CA verificationLee Clagett2019-04-072-0/+22
| | | | | If `--daemon-ssl enabled` is set in the wallet, then a user certificate, fingerprint, or onion/i2p address must be provided.
* Require manual override for user chain certificates.Lee Clagett2019-04-072-1/+5
| | | | | | | An override for the wallet to daemon connection is provided, but not for other SSL contexts. The intent is to prevent users from supplying a system CA as the "user" whitelisted certificate, which is less secure since the key is controlled by a third party.
* Only check top-level certificate against fingerprint list.Lee Clagett2019-04-071-2/+4
| | | | | | | This allows "chain" certificates to be used with the fingerprint whitelist option. A user can get a system-ca signature as backup while clients explicitly whitelist the server certificate. The user specified CA can also be combined with fingerprint whitelisting.
* Call `use_certificate_chain_file` instead of `use_certificate_file`Lee Clagett2019-04-071-1/+1
| | | | | | The former has the same behavior with single self signed certificates while allowing the server to have separate short-term authentication keys with long-term authorization keys.
* Perform RFC 2818 hostname verification in client SSL handshakesLee Clagett2019-04-073-5/+26
| | | | | | | | | | | | If the verification mode is `system_ca`, clients will now do hostname verification. Thus, only certificates from expected hostnames are allowed when SSL is enabled. This can be overridden by forcible setting the SSL mode to autodetect. Clients will also send the hostname even when `system_ca` is not being performed. This leaks possible metadata, but allows servers providing multiple hostnames to respond with the correct certificate. One example is cloudflare, which getmonero.org is currently using.
* Require server verification when SSL is enabled.Lee Clagett2019-04-072-11/+16
| | | | | | | | | | | | | If SSL is "enabled" via command line without specifying a fingerprint or certificate, the system CA list is checked for server verification and _now_ fails the handshake if that check fails. This change was made to remain consistent with standard SSL/TLS client behavior. This can still be overridden by using the allow any certificate flag. If the SSL behavior is autodetect, the system CA list is still checked but a warning is logged if this fails. The stream is not rejected because a re-connect will be attempted - its better to have an unverified encrypted stream than an unverified + unencrypted stream.
* Add `verify_fail_if_no_cert` option for proper client authenticationLee Clagett2019-04-071-1/+1
| | | | | | | | | Using `verify_peer` on server side requests a certificate from the client. If no certificate is provided, the server silently accepts the connection and rejects if the client sends an unexpected certificate. Adding `verify_fail_if_no_cert` has no affect on client and for server requires that the peer sends a certificate or fails the handshake. This is the desired behavior when the user specifies a fingerprint or CA file.
* Pass SSL arguments via one class and use shared_ptr instead of referenceLee Clagett2019-04-079-166/+228
|
* Do not require client certificate unless server has some whitelisted.Lee Clagett2019-04-061-12/+27
| | | | | | | | | | | Currently a client must provide a certificate, even if the server is configured to allow all certificates. This drops that requirement from the client - unless the server is configured to use a CA file or fingerprint(s) for verification - which is the standard behavior for SSL servers. The "system-wide" CA is not being used as a "fallback" to verify clients before or after this patch.
* Change SSL certificate file list to OpenSSL builtin load_verify_locationLee Clagett2019-04-067-76/+65
| | | | | | | | | | | | | Specifying SSL certificates for peer verification does an exact match, making it a not-so-obvious alias for the fingerprints option. This changes the checks to OpenSSL which loads concatenated certificate(s) from a single file and does a certificate-authority (chain of trust) check instead. There is no drop in security - a compromised exact match fingerprint has the same worse case failure. There is increased security in allowing separate long-term CA key and short-term SSL server keys. This also removes loading of the system-default CA files if a custom CA file or certificate fingerprint is specified.
* Merge pull request #5375Riccardo Spagni2019-04-061-0/+1
|\ | | | | | | 1569776a Add missing include (Leon Klingele)
| * Add missing includeLeon Klingele2019-03-311-0/+1
| |
* | Merge pull request #5358Riccardo Spagni2019-04-061-7/+40
|\ \ | | | | | | | | | dffdccdc No longer use deprecated RSA_generate_key in favor of RSA_generate_key_ex (Martijn Otto)
| * | No longer use deprecated RSA_generate_key in favor ofMartijn Otto2019-03-271-7/+40
| | | | | | | | | | | | RSA_generate_key_ex
* | | Merge pull request #5348Riccardo Spagni2019-04-064-8/+11
|\ \ \ | | | | | | | | | | | | 59776a64 epee: some more minor JSON parsing speedup (moneromooo-monero)
| * | | epee: some more minor JSON parsing speedupmoneromooo-monero2019-03-254-8/+11
| |/ /
* | | Merge pull request #5327Riccardo Spagni2019-04-013-1/+15
|\ \ \ | | | | | | | | | | | | c23ea796 New interactive daemon command 'print_net_stats': Global traffic stats (rbrunner7)
| * | | New interactive daemon command 'print_net_stats': Global traffic statsrbrunner72019-03-243-1/+15
| | | |
* | | | Merge pull request #5309Riccardo Spagni2019-04-011-0/+1
|\ \ \ \ | |_|_|/ |/| | | | | | | 43042a28 Implement array_entry_t copy constructor (Guido Vranken)
| * | | Implement array_entry_t copy constructorGuido Vranken2019-03-181-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | Manually initialize the array_entry_t iterator to ensure it points to the correct m_array, thereby preventing a potential use-after-free situation. Signed-off-by: Guido Vranken <guidovranken@gmail.com>
* | / Added socks proxy (tor/i2pd/kovri) support to walletLee Clagett2019-03-256-76/+135
| |/ |/|
* | Merge pull request #5285Riccardo Spagni2019-03-241-0/+1
|\ \ | | | | | | | | | 6ef816de console_handler: print newline on EOF (moneromooo-monero)
| * | console_handler: print newline on EOFmoneromooo-monero2019-03-131-0/+1
| | | | | | | | | | | | | | | | | | This avoids the annoying case where the shell prints its prompt after the last line from Monero output, causing line editing to sometimes go wonky, for lack of a better term
* | | Merge pull request #5283Riccardo Spagni2019-03-211-5/+6
|\ \ \ | | | | | | | | | | | | 16590294 abstract_tcp_server2: fix crashy race on socket shutdown (moneromooo-monero)
| * | | abstract_tcp_server2: fix crashy race on socket shutdownmoneromooo-monero2019-03-191-5/+6
| |/ /
* | | Merge pull request #5259Riccardo Spagni2019-03-211-1/+0
|\ \ \ | | | | | | | | | | | | 9141a0a1 connection_basic: remove debug exception ^_^ (moneromooo-monero)
| * | | connection_basic: remove debug exception ^_^moneromooo-monero2019-03-081-1/+0
| | | |
* | | | epee: fix build with boost 1.70.0moneromooo-monero2019-03-212-7/+19
| |_|/ |/| | | | | | | | get_io_service was deprecated, and got removed
* | | Merge pull request #5061Riccardo Spagni2019-03-1718-18/+18
|\ \ \ | |_|/ |/| | | | | 1f2930ce Update 2019 copyright (binaryFate)