Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
c4f8a8a6 build fix: combinator.h stdexcept missing include (Dusan Klinec)
|
|
a2195b9b crypto: replace rand<T>()%N idiom with unbiased rand_idx(N) (stoffu)
|
|
07b716bf util: name replace_file arguments better (moneromooo-monero)
|
|
|
|
849a768f perf_timer: move some debug levels to info for consistency (moneromooo-monero)
|
|
|
|
c23ea796 New interactive daemon command 'print_net_stats': Global traffic stats (rbrunner7)
|
|
8a97563a Use threadpool instead of new threads for DNS queries (Howard Chu)
|
|
It was confusing unless you read code and the rename(2) man page.
|
|
|
|
|
|
Coverity 196597
|
|
9c4d403a dns_utils: use fallback if the default resolver does not support DNSSEC (moneromooo-monero)
|
|
d0e07b3d performance_tests: fix NetBSD build (moneromooo-monero)
7d88d8f2 discontinue use of alloca (moneromooo-monero)
|
|
7c09882a dns_utils: remove MoneroPulse/checkpoints mention in TXT record code (moneromooo-monero)
|
|
1f2930ce Update 2019 copyright (binaryFate)
|
|
|
|
|
|
|
|
4a9257b4 Support docker for gitian builds (TheCharlatan)
|
|
1eef0565 performance_tests: better stats, and keep track of timing history (moneromooo-monero)
|
|
24569454 epee: add SSL support (moneromooo-monero)
|
|
|
|
|
|
NetBSD emits:
warning: Warning: reference to the libc supplied alloca(3); this most likely will not work. Please use the compiler provided version of alloca(3), by supplying the appropriate compiler flags (e.g. not -std=c89).
and man 3 alloca says:
Normally, gcc(1) translates calls to alloca() with inlined code. This is not done when either the -ansi, -std=c89, -std=c99, or the
-std=c11 option is given and the header <alloca.h> is not included. Otherwise, (without an -ansi or -std=c* option) the glibc version of
<stdlib.h> includes <alloca.h> and that contains the lines:
#ifdef __GNUC__
#define alloca(size) __builtin_alloca (size)
#endif
It looks like alloca is a bad idea in modern C/C++, so we use
VLAs for C and std::vector for C++.
|
|
This code is used for more than just these
|
|
Building with docker is arguably easier and more familiar to most people
than either kvm, or lxc.
This commit also relaxes the back compat requirement a bit. 32 bit linux
now uses glibc version 2.0. Also, the docker shell could not handle gcc arguments
containing spaces, so the explicit '-DFELT_TYPE' declaration was dropped.
Lastly, this removes some packages from the osx descriptor.
|
|
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.
|
|
|
|
These aren't processed as a shell does, so this may surprise users
|
|
|
|
|
|
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.
|
|
If there are more valid characters, add them in, I did not find
an actual list.
|
|
93c59b29 perf_timer: check allowed categories before logging (moneromooo-monero)
6a507dab perf_timer: add a way to get and reset the current time (moneromooo-monero)
c1581a5b perf_timer: only log to file (moneromooo-monero)
|
|
b56b5b5 ignore child process when exec (jtgrassie)
|
|
0e2f5cb perf_timer: make all logs Info level (moneromooo-monero)
|
|
1505dd3 util: set MONERO_DEFAULT_LOG_CATEGORY (moneromooo-monero)
db57374 util: use fcntl instead of flock, for compatibility (moneromooo-monero)
|
|
5a76933 Add glibc back compat code (TheCharlatan)
|
|
|
|
|
|
and make them not default at log level 1
|
|
|
|
|
|
|
|
in particular with NFS
|
|
Otherwise it'd end up with whatever was included last
|
|
aee7a4e3 wallet_rpc_server: do not use RPC data if the call failed (moneromooo-monero)
1a0733e5 windows_service: fix memory leak (moneromooo-monero)
0dac3c64 unit_tests: do not rethrow a copy of an exception (moneromooo-monero)
5d9915ab cryptonote: fix get_unit for non default settings (moneromooo-monero)
d4f50cb1 remove some unused code (moneromooo-monero)
61163971 a few minor (but easy) performance tweaks (moneromooo-monero)
30023074 tests: slow_memmem now returns size_t (moneromooo-monero)
|
|
6bfcc573 scoped_message_writer: protect all std::cout usage from readline (moneromooo-monero)
|
|
|
|
bd98e99c Removed a lot of unnecessary includes (Martijn Otto)
|
|
2b3595d0 various: do not propagate exception through dtor (moneromooo-monero)
|
|
6732fc7f Fix issue 4793 - M/N multisig transaction signature (naughtyfox)
|
|
To ensure that the binaries compiled by gitian run across many linux
distributions, enforce 2.17 as the minimum libc version supported.
|
|
Found by codacy.com
|
|
Found by codacy.com
|
|
|
|
|
|
f4988454 perf_timer: remove stray debug addition (moneromooo-monero)
|
|
177a9d76 wallet: warn if lockable memory limit is too low (moneromooo-monero)
|
|
71eb32a9 dns_utils: do not exit if DNS records are corrupt (moneromooo-monero)
|
|
|
|
Coverity 189689, 189690, 189692, 189695
|
|
5808530f blockchain: remove unused output_scan_worker parameter (moneromooo-monero)
1426209a blockchain: don't run threads if we have just one function to run (moneromooo-monero)
6f7a5fd4 db_lmdb: slight speedup getting array data from the blockchain (moneromooo-monero)
99fbe100 db_lmdb: save some string copies for readonly db keys/values (moneromooo-monero)
bf31447e tx_pool: speed up take_tx for transactions from blocks (moneromooo-monero)
4f005a77 tx_pool: remove unnecessary get_transaction_hash (moneromooo-monero)
593ef598 perf_timer: call reserve on new timer array (moneromooo-monero)
6ecc99ad core: avoid unnecessary tx/blob conversions (moneromooo-monero)
00cc1a16 unit_tests: notify test special case for the usual weirdo (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
ca9b996d perf_timer: separate log categories based on caller categories (moneromooo-monero)
|
|
to avoid reallocations in the vast majority of the time
|
|
93a88d73 Utils: add support for newer Windows versions detection (Gregory Lemercier)
|
|
c7743929 spawn: close all file descriptors before execve (moneromooo-monero)
|
|
Also default to microseconds, for homogeneity
Makes it easier to enable what we need
|
|
No need to give whatever we're calling access to what we use
|
|
|
|
9b6dd934 Providing user supplied default constructor for expect<void> (Lee Clagett)
|
|
|
|
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)
|
|
0e33cf89 password: fix secure input with echo on windows (moneromooo-monero)
|
|
Thanks to iDunk for the testing back and forth
|
|
|
|
|
|
a0613532 secure_pwd_reader: Add proper Unicode handling [Ryo contribution] (fireice-uk)
579383c2 simplewallet: Add Unicode input_line [Ryo backport] (fireice-uk)
|
|
|
|
25e5890d wallet: fix --generate-from-json using wrong password (moneromooo-monero)
|
|
d5541e44 common: Windows 'spawn' support for tx and block notifications (xiphon)
|
|
8110bea3 dns_utils: refresh list of usable DNSSEC servers (moneromooo-monero)
|
|
Misc coverity reports
|
|
|
|
|
|
73403004 add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc} (moneromooo-monero)
|
|
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)
|
|
A few of them are now returning invalid replies.
|
|
55c7cd14 Adding expect<T> - a value-or-error implementation (Lee Clagett)
|
|
|
|
|
|
5083614f dns_util: add new DNSSEC trust anchor for rollover (moneromooo-monero)
|
|
|
|
|
|
|
|
9d65399 is_hdd update (p8p)
|
|
11c6718 util: remove unused <ustat.h> (moneromooo-monero)
|
|
It should be useful from the 11th of october 2018.
The old key is still trusted for now.
https://www.icann.org/resources/pages/ksk-rollover
|
|
|
|
c5e2aee updates: fix hash sanity checking (moneromooo-monero)
|
|
It's obsolete and removed from at least Arch Linux 8.2
Reported by moneroexamples
|
|
|
|
7f8bdeb easylogging++: make the logger handle early/late logging (moneromooo-monero)
bc8cbdb stack_trace: print stack traces on stdout if the logger isn't live (moneromooo-monero)
|
|
4307489 wallet: disable core dumps on startup in release mode (moneromooo-monero)
|
|
|
|
|
|
|
|
639ca3b core_tests: add --filter to select which tests to run (moneromooo-monero)
|
|
438d52d remove epee from link lines where it's redundant (moneromooo-monero)
|
|
7cdd147 Changed URLs to HTTPS (einsteinsfool)
|
|
|
|
For some reason, this confuses and kills ASAN on startup
as it thinks const uint8_t ipv4_network_address::ID is
defined multiple times.
|
|
|
|
|
|
|
|
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
|
|
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
|
|
2bb2c1b password: flush cout when prompting for password without newline (moneromooo-monero)
|
|
|
|
|
|
8962f00 simplewallet: add optional trusted/untrusted argument to set_daemon (moneromooo-monero)
941a608 util: consider Tor/I2P addresses to be non local (moneromooo-monero)
2b3357e README: mention --untrusted-daemon (moneromooo-monero)
|
|
db55263 threadpool: allow constructing an object, and misc tweaks (moneromooo-monero)
ce173cb core: remove threadpool dependency from header (moneromooo-monero)
3147468 unit_tests: add threadpool unit test (moneromooo-monero)
|
|
|
|
|
|
|
|
use unsigned int to avoid having to range check negative numbers,
use const where possible, don't needlessly create empty objects,
use std::move where possible
|
|
|
|
|
|
Common on currently used distros
|
|
43026822 Wallet2 + CLI wallet: UTF-8 support for filenames and paths under Windows (rbrunner7)
|
|
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)
|
|
|
|
|
|
always optional
|
|
|
|
|
|
a4b50a6f handle ^D and ^C while password prompting (Jethro Grassie)
|
|
|
|
|
|
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)
|
|
71806327 dns: change default DNS to a worldwide selection (moneromooo-monero)
|
|
fde4489e wipeable_string: call memwipe directly (moneromooo-monero)
|
|
1dfed567 Fixed #if instead of #ifdef (Matt Little)
7c442453 Support building cncrypto lib with msvc (Matt Little)
|
|
|
|
DNSSEC aware servers picked from https://wiki.ipfire.org/dns/public-servers
|
|
If an exception is thrown, it is ignored. While this may hide
a bug, this should only be system exceptions in boost, which
is pretty unlikely. Morever, wait should be called manually
before the dtor anyway. Add an error message if the dtor has
to wait in case some such cases creep in so they get fixed.
Coverity 182538
|
|
It could have happened if epee::misc_utils::get_ns_count
is buggy, at a push
Coverity 182561
|
|
since the original reason for the indirect call (that memwipe
was not in contrib) is now gone
|
|
Previous code was unable to distingush between a connection error
and a communication error.
|
|
6cf56682 perf_timer: add faster x86_64 timers, and pause/resume (moneromooo-monero)
411da337 perf_timer: use std::unique_ptr instead of new/delete (moneromooo-monero)
|
|
|
|
|
|
|
|
5f5a51a6 util: warn if unbound was not built with threads (moneromooo-monero)
|
|
d507167f Removed unused mac-specific output folder path (Maxithi)
|
|
fe436eca apply_permutation.h: add #pragma once (moneromooo-monero)
|
|
|
|
|
|
|
|
fc041b58 common cmake: make sure translation_files.h is generated for i18n.cpp (stoffu)
|
|
|
|
|
|
This can causes crashes in libunbound
|
|
|
|
|
|
c70e8daa threadpool: fix deadlock in recursive waiter usage (moneromooo-monero)
|
|
db2bc965 Embed the translation files in the binary (Guillaume LE VAILLANT)
|
|
|
|
|
|
ae55bacd resumption support for updates using range requests (moneromooo-monero)
fe0fae50 epee: add a get_file_size function (moneromooo-monero)
|
|
a1d44f27 updates: use https for updates (moneromooo-monero)
472a93c8 download: SSL suport (moneromooo-monero)
|
|
83b0f9e6 version: add -master to master version (moneromooo-monero)
493f7d09 util: allow non numeric version parts (moneromooo-monero)
|
|
If a queued job uses a waiter, then we want to run that waiter's
jobs in the current thread if all threads are busy, even if the
queue is empty, since there is no guarantee that any thread will
free up to take care of that new job, since all the threads might
be running a job which spawns such a recursive job and will block
till that recursive job is done, which it will never be since it
relies on the queue being polled by one of those blocked threads.
|
|
7193b89f Scrub keys from memory just before scope end. (moneromooo-monero)
|
|
|
|
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.
|
|
1c838552 Simplewallet.cpp: Fewer pleases in seed NOTE (xmr-eric)
3f18c642 Fix password capitalization mismatch (xmr-eric)
|
|
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)
|
|
If a translation file exists in a "translations" directory located in
the same directory as the binary, it is used in priority (this can be
useful when working on translations as you don't have to recompile the
whole program all the time), and if no such file is found the embedded
translation file is used (if it exists).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It will be reinitialized later once we know about log file
and other command line configuration
|
|
|
|
It's meant to avoid being optimized out
memory_cleanse lifted from bitcoin
|
|
0b08bf39 fixed common/util.cpp to link against libressl (ston1th)
|
|
|
|
|
|
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)
|
|
wallet2 is a library, and should not prompt for stdin. Instead,
pass a function so simplewallet can prompt on stdin, and a GUI
might display a window, etc.
|