Age | Commit message (Collapse) | Author | Files | Lines |
|
avoids pointless allocs and memcpy
|
|
ab783b17 easylogging++: ensure logger is initialized before main (moneromooo-monero)
9b69a0ae daemon: print monero version at startup when calling a detached daemon (moneromooo-monero)
4d71d463 mlocker: remove early page size log (moneromooo-monero)
|
|
40485a73 mlocker: fix access to global lock map after dtor on exit (moneromooo-monero)
|
|
9c923bad epee: fix network packet header field endianness (moneromooo-monero)
ec1a62b5 move int-util.h to epee (moneromooo-monero)
|
|
96e6b439 blockchain_stats: don't use gmtime_r on Windows (moneromooo-monero)
|
|
1132436f Only show a single mlock() error, to avoid flooding the log (Martijn Otto)
|
|
23829ebb mlocker: don't throw from lock/unlock (moneromooo-monero)
|
|
|
|
|
|
bd98e99c Removed a lot of unnecessary includes (Martijn Otto)
|
|
2b3595d0 various: do not propagate exception through dtor (moneromooo-monero)
|
|
b36353e2 unit_tests: add some hex parsing test for non hex input (xiphon)
6671110c unit_tests: add a test for parse_hexstr_to_binbuff (moneromooo-monero)
f6187cd8 epee: speed up parse_hexstr_to_binbuff a little (Howard Chu)
|
|
It comes before the logger is initialized, so gets displayed
even though it should not be by default, and apparenly comes
too early for (some versions of) Android, where it crashes.
|
|
|
|
7c298f5d No longer use a list for registering self references in the abstract tcp server (Martijn Otto)
|
|
|
|
as the lock, it now leaks
|
|
In some cases, it doesn't like it (I don't know the details).
Factor into a new epee function
|
|
This prevents exceptions from showing up in various awkward
places such as dtors, since the only exception that can be
thrown is a lock failure, and nothing handles a lock failure
anyway.
|
|
b620443b epee: log HTTP/RPC calls at info level (moneromooo-monero)
|
|
0cfd2ae5 mlocker: fix dtor ordering problem (moneromooo-monero)
|
|
741e4a11 epee: speed up json number parsing (moneromooo-monero)
|
|
|
|
|
|
Coverity 189689, 189690, 189692, 189695
|
|
157054b8 hardfork: initialize current_fork_index in ctor (moneromooo-monero)
2362baf7 network_throttle: initialize m_last_sample_time in ctor (moneromooo-monero)
d9400f69 serializtion: add missing mainnet and stagenet fields for 0mq (moneromooo-monero)
cbe0122b wallet2: initialize amount to 0 in tx_scan_info_t ctor (moneromooo-monero)
|
|
server
Updated assert message
Use a local variable that won't destruct at the end of the if-branch
Updated comment
|
|
f067bb0c tests: fix MSYS2 warning 'MONERO_DEFAULT_LOG_CATEGORY redefined' (xiphon)
|
|
07c62809 epee: some minor speedup in parsing (moneromooo-monero)
|
|
3381b651 abstract_tcp_server2: fix busy calling of idle IO service (moneromooo-monero)
|
|
It's useful info to have when investigating logs
|
|
leak the mutex instead, it's a one off
|
|
|
|
Coverity 136593
|
|
|
|
8f3c7937 readline_buffer: fix "cursor in prompt" bug (moneromooo-monero)
|
|
|
|
d3cda5ad console_handler: add a global log when exiting via EOF (moneromooo-monero)
|
|
2e2daebc ANSI colors in Windows 10 (iDunk5400)
|
|
It's a common confusion point for users which run monerod
without stdin and with --detach
|
|
00901e9c epee: initialize a few data members where it seems to be appropriate (moneromooo-monero)
144a6c32 abstract_tcp_server2: move m_period to subclass (moneromooo-monero)
758d7684 connection_basic: remove unused floating time start time (moneromooo-monero)
e5108a29 Catch more exceptions in dtors (moneromooo-monero)
|
|
It happens when readline displays a prompt just before switching
to a shorter one
|
|
|
|
|
|
|
|
This is where it is actually used, and initialized
|
|
|
|
Misc coverity reports
|
|
bcf3f6af fuzz_tests: catch unhandled exceptions (moneromooo-monero)
3ebd05d4 miner: restore stream flags after changing them (moneromooo-monero)
a093092e levin_protocol_handler_async: do not propagate exception through dtor (moneromooo-monero)
1eebb82b net_helper: do not propagate exceptions through dtor (moneromooo-monero)
fb6a3630 miner: do not propagate exceptions through dtor (moneromooo-monero)
2e2139ff epee: do not propagate exception through dtor (moneromooo-monero)
0749a8bd db_lmdb: do not propagate exceptions in dtor (moneromooo-monero)
1b0afeeb wallet_rpc_server: exit cleanly on unhandled exceptions (moneromooo-monero)
418a9936 unit_tests: catch unhandled exceptions (moneromooo-monero)
ea7f9543 threadpool: do not propagate exceptions through the dtor (moneromooo-monero)
6e855422 gen_multisig: nice exit on unhandled exception (moneromooo-monero)
53df2deb db_lmdb: catch error in mdb_stat calls during migration (moneromooo-monero)
e67016dd blockchain_blackball: catch failure to commit db transaction (moneromooo-monero)
661439f4 mlog: don't remove old logs if we failed to rename the current file (moneromooo-monero)
5fdcda50 easylogging++: test for NULL before dereference (moneromooo-monero)
7ece1550 performance_test: fix bad last argument calling add_arg (moneromooo-monero)
a085da32 unit_tests: add check for page size > 0 before dividing (moneromooo-monero)
d8b1ec8b unit_tests: use std::shared_ptr to shut coverity up about leaks (moneromooo-monero)
02563bf4 simplewallet: top level exception catcher to print nicer messages (moneromooo-monero)
c57a65b2 blockchain_blackball: fix shift range for 32 bit archs (moneromooo-monero)
|
|
b2972927 osx compilation fix: missing boost libs added (Dusan Klinec)
|
|
|
|
Reported by Lilith Wyatt at Talos.
Since this is not needed in normal operation, I just let this
error out.
|
|
4d52ec0c mlog: do not display http errors by default (moneromooo-monero)
|
|
26a42fe5 Added features to epee::span<T> : - Support for classes - Added `remove_prefix` function - Added `to_mut_span` and `as_mut_byte_span` (Lee Clagett)
|
|
56b50faa wallet: use wipeable_string in more places where a secret is used (moneromooo-monero)
07ec748c wipeable_string: add hex_to_pod function (moneromooo-monero)
|
|
42397359 Fixup 32bit arm build (TheCharlatan)
a06d2581 Fix Windows build (TheCharlatan)
ecaf5b3f Add libsodium to the packages, the arm build was complaining about it. (TheCharlatan)
cbbf4d24 Adapt translations to upstream changes (TheCharlatan)
db571546 Updated pcsc url (TheCharlatan)
f0ba19fd Add lrelease to the depends (TheCharlatan)
cfb30462 Add Miniupnp submodule (TheCharlatan)
5f7da005 Unbound is now a submodule. Adapt depends for this. (TheCharlatan)
d6b9bdd3 Update readmes to reflect the usage of depends (TheCharlatan)
56b6e41e Add support for apple and arm building (TheCharlatan)
29311fd1 Disable stack unwinding for mingw32 depends build. (TheCharlatan)
8db3d573 Modify depends for monero's dependencies (TheCharlatan)
0806a23a Initial depends addition (TheCharlatan)
|
|
4469b0c4 abstract_tcp_server2: fix binding to the wrong IP (moneromooo-monero)
8eab6147 epee: use the socket::bind variant which does not throw (moneromooo-monero)
|
|
They're controllable by potential attackers and would just spam
|
|
|
|
Add readline, ldns, graphviz, unbound to depends packages
Add a cmake toolchain file to depends that is uniquely created for every build and placed in triple/share/toolchain.cmake
This file is then passed to cmake with -DCMAKE_TOOLCHAIN_FILE=/path/to/triple/share/toolchain.cmake
Add the boost locale package to depends
In the depends cmake toolchain file, a DEPENDS flag is added
to exclude, or change cmake checks done that are required for depends
Link miniupnpc and unwind from depends and not external
Add libiconv and icu4c to depends, required for mingw32 builds.
Headers (winsock) need to be lower case in order to compile on unix systems.
This should not affect building on windows.
|
|
|
|
29dea03 epee: resize vectors where possible in serialization (moneromooo-monero)
76affd9 epee: some speedup in parsing (moneromooo-monero)
dc6c069 db_lmdb: speedup the get_output_distribution common case (moneromooo-monero)
76ac5a8 wallet2: ask for a binary output distribution, for speed (moneromooo-monero)
|
|
When this throws in a loop, stack trace generation can take
a significant amount of CPU
|
|
262e391 mlog: handle filenames without parent directories (moneromooo-monero)
|
|
|
|
to avoid unnecessary repeated reallocation
|
|
This class will allow mlocking small objects, of which there
may be several per page. It adds refcounting so pages are only
munlocked when the last object on that page munlocks.
|
|
The secret spend key is kept encrypted in memory, and
decrypted on the fly when needed.
Both spend and view secret keys are kept encrypted in a JSON
field in the keys file. This avoids leaving the keys in
memory due to being manipulated by the JSON I/O API.
|
|
|
|
e7c0fcd epee: set jsonrpc to '2.0' in parse error return data (moneromooo-monero)
|
|
979105b abstract_tcp_server2: fix race on shutdown (moneromooo-monero)
|
|
42f3b7c http_protocol_handler: catch invalid numbers when parsing (moneromooo-monero)
0a4a7da http_protocol_handler: fix HTTP/x.y parsing (moneromooo-monero)
|
|
- Support for classes
- Added `remove_prefix` function
- Added `to_mut_span` and `as_mut_byte_span`
|
|
eg, --log-file=foo.log
This would otherwise throw and crash with a stack overflow
|
|
|
|
|
|
Some of them don't like it
|
|
It was accepting any character for the dot (yeah, massive big I know)
|
|
|
|
dead780f abstract_tcp_server2: fix use after free (moneromooo-monero)
|
|
1a526ed5 abstract_tcp_server2: restart async accept on error (moneromooo-monero)
|
|
|
|
|
|
8766528 epee: fallback to a counter if gmtime fails when rotating logs (moneromooo-monero)
|
|
4ecf714 epee: fix include for ofstream (moneromooo-monero)
|
|
55c7fb8 epee: adaptive connection timeout system (moneromooo-monero)
|
|
f8dd433 epee: fix detection of 172.16.0.0/172.31.255.255 local IP range (moneromooo-monero)
5db9e3c unit_tests: add tests for local IP range detection (moneromooo-monero)
|
|
63d0ab0 mlog: --max-log-files to set the max number of rotated log files (stoffu)
|
|
5a412b7 disable file size sanity check when loading the wallet cache (moneromooo-monero)
|
|
558d05b epee: log type name when a container size check fails (moneromooo-monero)
a2566db object_sizes: add a few useful types (moneromooo-monero)
|
|
|
|
|
|
|
|
a connection's timeout is halved for every extra connection
from the same host.
Also keep track of when we don't need to use a connection
anymore, so we can close it and free the resource for another
connection.
Also use the longer timeout for non routable local addresses.
|
|
|
|
|
|
This would make monerod use 100% CPU when running with torsocks
without Tor running
|
|
|
|
|
|
|
|
|
|
|
|
It had not been updated to the function type change
|
|
|
|
53a1962d epee: Drop deprecated Boost.Thread header (Jan Beich)
|
|
|
|
In file included from src/cryptonote_basic/hardfork.cpp:33:
In file included from src/blockchain_db/blockchain_db.h:42:
In file included from src/cryptonote_basic/hardfork.h:31:
contrib/epee/include/syncobj.h:37:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp>
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/rpc/daemon_handler.cpp:29:
In file included from src/rpc/daemon_handler.h:36:
In file included from src/p2p/net_node.h:41:
In file included from contrib/epee/include/net/levin_server_cp2.h:32:
In file included from contrib/epee/include/net/abstract_tcp_server2.h:324:
contrib/epee/include/net/abstract_tcp_server2.inl:44:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp> // TODO
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
contrib/epee/include/math_helper.h: In member function 'bool epee::math_helper::average<val, default_base>::set_base()':
contrib/epee/include/syncobj.h:227:56: error: 'sleep_for' is not a member of 'boost::this_thread'
#define CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));} epee::critical_region_t<decltype(x)> critical_region_var(x)
^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
#define CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));} epee::critical_region_t<decltype(x)> critical_region_var(x)
^~~~~~~~~
contrib/epee/include/syncobj.h:227:56: note: suggested alternative: 'sleep'
#define CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));} epee::critical_region_t<decltype(x)> critical_region_var(x)
^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
#define CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));} epee::critical_region_t<decltype(x)> critical_region_var(x)
^~~~~~~~~
|
|
|
|
|
|
4789f859 wipeable_string: don't try to wipe an empty buffer (moneromooo-monero)
|
|
2bc8c3db epee get_ns_count: cast to uint64_t before multiplying 10^9 to avoid overflow (stoffu)
|
|
memset_s doesn't like it
|
|
|
|
e4646379 keccak: fix mdlen bounds sanity checking (moneromooo-monero)
2e3e90ac pass large parameters by const ref, not value (moneromooo-monero)
61defd89 blockchain: sanity check number of precomputed hash of hash blocks (moneromooo-monero)
9af6b2d1 ringct: fix infinite loop in unused h2b function (moneromooo-monero)
8cea8d0c simplewallet: double check a new multisig wallet is multisig (moneromooo-monero)
9b98a6ac threadpool: catch exceptions in dtor, to avoid terminate (moneromooo-monero)
24803ed9 blockchain_export: fix buffer overflow in exporter (moneromooo-monero)
f3f7da62 perf_timer: rewrite to make it clear there is no division by zero (moneromooo-monero)
c6ea3df0 performance_tests: remove add_arg call stray extra param (moneromooo-monero)
fa6b4566 fuzz_tests: fix an uninitialized var in setup (moneromooo-monero)
03887f11 keccak: fix sanity check bounds test (moneromooo-monero)
ad11db91 blockchain_db: initialize m_open in base class ctor (moneromooo-monero)
bece67f9 miner: restore std::cout precision after modification (moneromooo-monero)
1aabd14c db_lmdb: check hard fork info drop succeeded (moneromooo-monero)
|
|
f689a77e Fix #602 Turn on socket keepalive (Howard Chu)
|
|
fde4489e wipeable_string: call memwipe directly (moneromooo-monero)
|
|
851bd057 call _exit instead of abort in release mode (moneromooo-monero)
|
|
|
|
|
|
Coverity 136394 136397 136409 136526 136529 136533 175302
|
|
Avoids cores being created, as they're nowadays often piped
to some call home system
|
|
since the original reason for the indirect call (that memwipe
was not in contrib) is now gone
|
|
Previously, the method name was printed as an exmpty string because
the input string had already been moved with `std::move`.
|
|
It was already possible to limit outgoing connections. One might want
to do this on home network connections with high bandwidth but low
usage caps.
|
|
95171614 Remove is_pod trait, and replace with is_standard_layout requirement (Lee Clagett)
|
|
935e39c7 levin_protocol_handler_async: erase from back of vector instead of front (stoffu)
|
|
|
|
|
|
|
|
21bd2157 remove unnecessary include (Jethro Grassie)
|
|
e4bbeff2 epee: check some error return values (moneromooo-monero)
|
|
|
|
b7e5a70b epee: detect strptime, use std::get_time as fallback (moneromooo-monero)
|
|
|
|
|
|
|
|
6ccc51f6 wipeable_string: fix buffer overread (moneromooo-monero)
|
|
2d17feb0 factor STL container serialization (moneromooo-monero)
|
|
373d1d50 epee: use strptime instead of std::get_time, for compatibility (moneromooo-monero)
|
|
|
|
|
|
|
|
cb9aa23c levin_protocol_handler_async: another attempt at fixing at exception (moneromooo-monero)
64d23ce3 Revert "epee: keep a ref to a connection we're deleting" (moneromooo-monero)
|
|
7f4bb612 levin_protocol_handler_async: add missing response handler locking (moneromooo-monero)
|
|
ae55bacd resumption support for updates using range requests (moneromooo-monero)
fe0fae50 epee: add a get_file_size function (moneromooo-monero)
|
|
bd5cce07 network_throttle: fix ineffective locking (moneromooo-monero)
e0a61299 network_throttle: remove unused xxx static member (moneromooo-monero)
24f584d9 cryptonote_core: remove unused functions with off by one bugs (moneromooo-monero)
b1634aa3 blockchain: don't leave dangling pointers in this (moneromooo-monero)
8e60b81c cryptonote_core: fix db leak on error (moneromooo-monero)
213e326c abstract_tcp_server2: log init_server errors as fatal (moneromooo-monero)
b51dc566 use const refs in for loops for non tiny types (moneromooo-monero)
f0568ca6 net_parse_helpers: fix regex error checking (moneromooo-monero)
b49ddc76 check accessing an element past the end of a container (moneromooo-monero)
2305bf26 check return value for generate_key_derivation and derive_public_key (moneromooo-monero)
a4240d9f catch const exceptions (moneromooo-monero)
45a1c4c0 add empty container sanity checks when using front() and back() (moneromooo-monero)
56fa6ce1 tests: fix a buffer overread in a unit test (moneromooo-monero)
b4524892 rpc: guard against json parsing a non object (moneromooo-monero)
c2ed8618 easylogging++: avoid buffer underflow (moneromooo-monero)
187a6ab2 epee: trap failure to parse URI from request (moneromooo-monero)
061789b5 checkpoints: trap failure to load JSON checkpoints (moneromooo-monero)
ba2fefb9 checkpoints: pass std::string by const ref, not const value (moneromooo-monero)
38c8f4e0 mlog: terminate a string at last char, just in case (moneromooo-monero)
d753d716 fix a few leaks by throwing objects, not newed pointers to objects (moneromooo-monero)
fe568db8 p2p: use size_t for arbitrary counters instead of uint8_t (moneromooo-monero)
46d6fa35 cryptonote_protocol: sanity check chain hashes from peer (moneromooo-monero)
25584f86 cryptonote_protocol: print peer versions when unexpected (moneromooo-monero)
490a5d41 rpc: do not try to use an invalid txid in relay_tx (moneromooo-monero)
|
|
dba2de61 levin_protocol_handler_async: call handler destroy function on dtor (moneromooo-monero)
|
|
bd1f6029 http_client: rewrite header parsing manually for speed (moneromooo-monero)
ec724eb6 tests: add levin fuzz test (moneromooo-monero)
f1bdc9a4 tests: add http client fuzz test (moneromooo-monero)
0272df9e add parse_url fuzz test (moneromooo-monero)
261b0dd0 tests: add base58 fuzz test (moneromooo-monero)
fd052087 fuzz_testing: allow automatically resuming an interrupted job (moneromooo-monero)
c80bb0eb tests: don't init stuff we don't need in fuzz tests - faster (moneromooo-monero)
53b83a83 tests: better load-from-binary fuzz test data file (moneromooo-monero)
1a379ef6 fuzz_testing: build with ASAN (assumed to be available) (moneromooo-monero)
4cd4a431 fuzz_testing: create out directory if needed, and fix filename passing (moneromooo-monero)
c27d9092 Makefile: build fuzz tests statically, starts faster (moneromooo-monero)
95aa0bf7 add load_from_binary/load_from_json fuzzers (moneromooo-monero)
|
|
|
|
Fix no new line
|
|
boost::regex is stupendously atrocious at parsing malformed data
|
|
|
|
|
|
|
|
That way, all implicit wipes ends up in grow, which is more robust
|
|
This was asserting, but stoffu pointed out the std::string standard
considers this ok and ignorable
|
|
|
|
|
|
|
|
so they show up by default
|
|
|
|
|
|
|
|
|
|
|
|
7193b89f Scrub keys from memory just before scope end. (moneromooo-monero)
|
|
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)
|
|
These even had the epee namespace.
This fixes some ugly circular dependencies.
|
|
|
|
Partially implements #74.
Securely erases keys from memory after they are no longer needed. Might have a
performance impact, which I haven't measured (perf measurements aren't
generally reliable on laptops).
Thanks to @stoffu for the suggestion to specialize the pod_to_hex/hex_to_pod
functions. Using overloads + SFINAE instead generalizes it so other types can
be marked as scrubbed without adding more boilerplate.
|
|
cf5f6236 Corrections in rate limiting / trottle code, especially in 'out' direction (rbrunner7)
|
|
3dffe71b new wipeable_string class to replace std::string passphrases (moneromooo-monero)
7a2a5741 utils: initialize easylogging++ in on_startup (moneromooo-monero)
54950829 use memwipe in a few relevant places (moneromooo-monero)
000666ff add a memwipe function (moneromooo-monero)
|
|
|
|
This reverts commit f2939bdce8c86b0f96921f731184c361106390c8.
|
|
|
|
|
|
|
|
27aa8ce9 net_utils_base: fix peer list parsing (moneromooo-monero)
fe5ab2c4 epee: fix kv_unserialize return value when a field is not found (moneromooo-monero)
|
|
Fields are written with their "name" as key, and that name changed.
|
|
Allows use in more complex expressions
|
|
287dde63 Added command descriptions (Cifrado)
|
|
|
|
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
|
|
|
|
|
|
|
|
f80f408b epee: don't disable -Wtautological-constant-out-of-range-compare on GCC (moneromooo-monero)
|
|
0d9c0db9 Do not build against epee_readline if it was not built (Howard Chu)
178014c9 split off readline code into epee_readline (moneromooo-monero)
a9e14a19 link against readline only for monerod and wallet-wallet-{rpc,cli} (moneromooo-monero)
437421ce wallet: move some scoped_message_writer calls from the libs (moneromooo-monero)
e89994e9 wallet: rejig to avoid prompting in wallet2 (moneromooo-monero)
ec5135e5 move input_line from command_line to simplewallet (moneromooo-monero)
082db75f move cryptonote command line options to cryptonote_core (moneromooo-monero)
|
|
383ff4f6 remove "using namespace std" from headers (moneromooo-monero)
|
|
It's a CLANG only option, and causes GCC to error out
|
|
|
|
It's nasty, and actually breaks on Solaris, where if.h fails to
build due to:
struct map *if_memmap;
|
|
0bf09154 Fix file permission issue (Tim L)
|
|
fa514082 RPC: get_info add rpc_connections_count (Tim L)
|
|
9ff8e139 epee: disable a spurious warning for a storage function (moneromooo-monero)
|
|
7dbf76d0 Fix an object lifetime bug in net load tests (moneromooo-monero)
|
|
|
|
This branch fixes a file permission issue introduced by https://github.com/monero-project/monero/commit/69c37200aa87f100f731e755bdca7a0dc6ae820a
|
|
4b228dd3 cmake: epee: use var from FindOpenSSL.cmake (redfish)
29497f79 epee: use boost type for SSL error code (redfish)
|
|
69c37200 RPC Add cross origin resource sharing support (Tim L)
|