Age | Commit message (Collapse) | Author | Files | Lines |
|
a7211793 rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
|
|
e99b2b12 simplewallet: make the long payment ids warnigns more warney (moneromooo-monero)
|
|
8a97563a Use threadpool instead of new threads for DNS queries (Howard Chu)
|
|
4500236f wallet2: make use_fork_rules handle chain heights lower than leeway (moneromooo-monero)
|
|
0a6cb30d wallet: flush output cache upon reorg (moneromooo-monero)
|
|
23fb056a wallet_rpc_server: new auto_refresh RPC (moneromooo-monero)
|
|
4ee15655 wallet_rpc_server: fix buffer read overflow in string assignment (moneromooo-monero)
|
|
8fd7452b wallet: move light wallet RPC out of core RPC (moneromooo-monero)
|
|
a8b98a0b wallet: fix memory only wallets (moneromooo-monero)
|
|
2b10f22a mnemonics: fix half length seed to bytes conversion (moneromooo-monero)
|
|
77e9815d blockchain: do not try to pop the genesis block (moneromooo-monero)
|
|
328d291f wallet2: set seed language when creating from json (moneromooo-monero)
|
|
a52366c1 wallet2: fix generation from json when restore height is not set (moneromooo-monero)
|
|
39f000b3 miner: fix possible exit crash due to race in stop (moneromooo-monero)
|
|
1d14b3f0 ringct: fix capitalization for scaler mult (fuwa)
|
|
91f4c7f4 Make difficulty 128 bit instead of 64 bit (moneromooo-monero)
|
|
|
|
at least when using restore_deterministic_wallet
|
|
|
|
|
|
Based on Boolberry work by:
jahrsg <jahr@jahr.me>
cr.zoidberg <crypto.zoidberg@gmail.com>
|
|
cce948a5 simplewallet: add some missing spacing before uses data (moneromooo-monero)
|
|
f962449d wallet_rpc_server: include out subaddress indices in get_transfers (moneromooo-monero)
|
|
adf6d773 wallet: fix offline signing calling a daemon RPC (moneromooo-monero)
|
|
be6f426a rpc: Allow submitting tx as hex blob over ZMQ (Nathan Dorfman)
|
|
223c6b07 dns_utils: really add default DNSSEC servers on failure (moneromooo-monero)
|
|
e9519e98 cryptonote: fix calculating coinbase tx hash (moneromooo-monero)
|
|
Also set error flag on exception when handling new txes
to keep tests working
|
|
|
|
We generate and check tx proofs and verify the amounts in those
match what the original amounts were.
|
|
2790d4d3 hardfork: update last_versions on popped block (moneromooo-monero)
|
|
5ade7281 Wallet API: multisig_tx_set passing bug fixed (naughtyfox)
|
|
576116d4 wallet: fix load failure if the mms isn't usable (moneromooo-monero)
|
|
4b21d38d blockchain: speed up getting N blocks weights/long term weights (moneromooo-monero)
|
|
7ac33342 slow-hash: cache TLS references locally once at function start (moneromooo-monero)
|
|
7632dede crypto: fix PaX issue on NetBSD with CNv4 JIT (moneromooo-monero)
89b1630e gtest: build fix for NetBSD (moneromooo-monero)
fa43b547 tests: handle any cmake detected python interpreter (moneromooo-monero)
|
|
a48e49aa aesb: avoid stomping on an existing define on NetBSD (moneromooo-monero)
|
|
3f6f90bb wallet2: do not use invalid keys as fake outs in rings (moneromooo-monero)
|
|
3907588b rpc: make fill_pow restricted (moneromooo-monero)
|
|
c6a70af8 wallet2: key image import fixes (moneromooo-monero)
|
|
efb2bdd3 slow-hash: default to JIT on x86_64 (moneromooo-monero)
|
|
c9b13fbb tests/trezor: HF9 and HF10 tests (Dusan Klinec)
a1fd1d49 device/trezor: HF10 support added, wallet::API (Dusan Klinec)
d74d26f2 crypto: hmac_keccak added (Dusan Klinec)
|
|
|
|
Coverity 196597
|
|
- import only key images generated by cold signing process
- wallet_api: trezor methods added
- wallet: button request code added
- const added to methods
- wallet2::get_tx_key_device() tries to decrypt stored tx private keys using the device.
- simplewallet supports get_tx_key and get_tx_proof on hw device using the get_tx_key feature
- live refresh enables refresh with trezor i.e. computing key images on the fly. More convenient and efficient for users.
- device: has_ki_live_refresh added
- a thread is watching whether live refresh is being computed, if not for 30 seconds, it terminates the live refresh process - switches Trezor state
|
|
|
|
|
|
4921c794 cn_deserialize: remove some unused code (moneromooo-monero)
|
|
8b514645 add multisig tx sets to describe_transfer rpc endpoint (spoke0)
|
|
eef164f7 cryptonote_protocol_handler: search for syncing peers in "cruise mode" (moneromooo-monero)
|
|
9c4d403a dns_utils: use fallback if the default resolver does not support DNSSEC (moneromooo-monero)
|
|
a54e81e5 daemon: add '--no-sync' arg to optionally disable blockchain sync (xiphon)
|
|
f42263eb wallet: adds rescan_bc option with preserving key images (Dusan Klinec)
|
|
|
|
We want people to really realize it's bad for *their* privacy.
|
|
d0e07b3d performance_tests: fix NetBSD build (moneromooo-monero)
7d88d8f2 discontinue use of alloca (moneromooo-monero)
|
|
551104fb daemon: add --public-node mode, RPC port propagation over P2P (xiphon)
|
|
59478c80 daemon: new mining_status command (moneromooo-monero)
|
|
b674728d Better error when sending a tx with a too large extra field (moneromooo-monero)
|
|
7c09882a dns_utils: remove MoneroPulse/checkpoints mention in TXT record code (moneromooo-monero)
|
|
bb2aed8e rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
|
|
8630a028 wallet: fix payment ID decryption for construction data (Dusan Klinec)
|
|
75e5aafd device/trezor: dummy payment ID fix (Dusan Klinec)
|
|
36451697 Simplify RPC endpoint, emoving second RPC endpoint generate_from_view_key (Joel)
c17c8188 Remove code duplication (Joel)
acb14c10 Add generate_from_view_key RPC method (Joel)
7dd7a3b7 Add generate_from_keys RPC method (Joel)
|
|
de32dcea Human readable message if maximum outputs reached (italocoin)
|
|
1f2930ce Update 2019 copyright (binaryFate)
|
|
|
|
|
|
Fixes output usage tracking
|
|
It can enable/disable auto refresh, and set auto refresh period
|
|
3ac40938 timings: fix errno.h mispelt as error.h (moneromooo-monero)
|
|
aac4e2f5 wallet_rpc_server: add missing --rpc-ssl-allowed-fingerprints (moneromooo-monero)
|
|
|
|
It's not nothing to do with it
|
|
- enables to perform rescan_spent / ki sync with untrusted daemon. Spent check status involves RPC calls which require trusted daemon status as it leaks information. The new call performs soft reset while preserving key images thus a sequence: refresh, ki sync / import, rescan_bc keep_ki will correctly perform spent checking without need for trusted daemon.
- useful to detect spent outputs with untrusted daemon on watch_only / multisig / hw-cold wallets after expensive key image sync.
- cli: rescan_bc keep_ki
|
|
|
|
|
|
|
|
It was not recovering then, but creating a new random address
|
|
If a thread asks to stop the miner, m_stop will be set, and
that thread will wait to join. If the main thread is exiting
at that time, it will ask the miner to stop, but the miner
will claim it's not mining and early out since m_stop is
set. This will cause the database and other things to get
shutdown. If the miner happens to find a block at that time,
it will try to call core, and crash.
Instead, lock and check whether any threads are currently
in m_threads, since they'll only be cleared once the threads
are joined. Moreover, since we lock, the second thread will
have to wait for the first one to have finished. Calling
join twice on a thread seems fine as per pthread_join(3).
|
|
|
|
5ea17909 device/trezor: debugging features, trezor tests (Dusan Klinec)
|
|
|
|
|
|
It's better to just ignore them, the user does not really need
to know they're here. If the mask is wrong, they'll fail to be
used, and sweeping will fail as it tries to use it.
Reported by Josh Davis.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
082149c5 fix merge errors, update recommended version to 0.14.0.2 (Riccardo Spagni)
f3b368c6 update checkpoints hash (Riccardo Spagni)
e518f2b1 update checkpoints, update README for 0.14.1 release (Riccardo Spagni)
8780d6b4 update readme via cherry-pick (Riccardo Spagni)
|
|
It's slow work, so let's not expose it
|
|
- return the right output data when offset is not zero
- do not consider import failed if result height is zero
(it can be 0 if unknown)
- select the right tx pubkey when using subaddresses (it's faster,
and we might select the wrong one if we got an output using one
of the additional tx keys)
- account for skipped outputs for spent/unspent balance info
"spent" is arguably wrong, since it will count spent change
multiple times as it goes through receive/spend cycles.
|
|
|
|
057c279c epee: add SSL support (Martijn Otto)
|
|
|
|
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.
|
|
|
|
f024a10b db_lmdb: make mdb_block_info format conversion more future proof (moneromooo-monero)
|
|
ceb72be3 p2p: avoid busy loop when we have nothing to connect to (moneromooo-monero)
|
|
c4851024 wallet_rpc_server: avoid repeated string allocations when parsing (moneromooo-monero)
88c85c18 cryptonote: avoid double parsing blocks when syncing (moneromooo-monero)
9feda0ee cryptonote: speed up calculating coinbase tx prunable hash (moneromooo-monero)
238401d4 core: avoid double parsing blocks after hoh (moneromooo-monero)
dc5a7609 blockchain: avoid unneeded block copy (moneromooo-monero)
79b4e9f3 save some database calls when getting top block hash and height (moneromooo-monero)
98278808 blockchain: avoid pointless transaction copy and temporary (moneromooo-monero)
07d655e4 blockchain: avoid duplicate block hash computation (moneromooo-monero)
f75d51ab core: avoid calculating tx prefix hash when we don't need it (moneromooo-monero)
b044d03a Avoid repeated (de)serialization when syncing (moneromooo-monero)
b747e836 wallet2: don't calculate prefix hash when we don't need it (moneromooo-monero)
e69477bf db: speedup block addition (moneromooo-monero)
|
|
If mdb_block_info changes again, the v2 to v3 conversion would
convert to an incorrect format.
|
|
|
|
|
|
|
|
It's a hash of an empty buffer, so we can avoid keccak
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
by avoiding repeated (de)serialization
|
|
|
|
|
|
|
|
|
|
|
|
3d2772a0 wallet-rpc: get balance for all accounts and subaddresses (stoffu)
|
|
8a1ff079 wallet-rpc: get transfers for all accounts and subaddresses (Jethro Grassie)
|
|
4a9257b4 Support docker for gitian builds (TheCharlatan)
|
|
1f5680c8 simplewallet: add help for ask-password options (moneromooo-monero)
c7c74caf simplewallet: mark confirm-missing-payment-id as obsolete (moneromooo-monero)
|
|
5c81a9f1 wallet_rpc_server: add a validate_address RPC (moneromooo-monero)
|
|
a3973fc9 debug compilation fix: net lib missing common deps (Dusan Klinec)
|
|
d2c95ab9 Don't decrypt keys in view only wallets in wallet_keys_unlocker (Doyle)
|
|
8298f42e miner: it can now autodetect the optimal number of threads (moneromooo-monero)
|
|
6a3608d3 cryptonote_protocol_handler: pad tx messages when using tor/i2p (moneromooo-monero)
|
|
1c9d5285 blockchain_prune: don't prune before v10 (moneromooo-monero)
|
|
1eef0565 performance_tests: better stats, and keep track of timing history (moneromooo-monero)
|
|
eec79276 blockchain: fix default genesis block timestamp (moneromooo-monero)
|
|
123fc2a2 i2p: initial support (Jethro Grassie)
|
|
9d58749b wallet2: fix hashchain going out of sync on refresh error (moneromooo-monero)
|
|
1bc5f9fa bulletproofs: speed up vector_power_sum (moneromooo-monero)
|
|
d78addcb db_lmdb: don't unnecessarily cast to double on the way to uint64_t (moneromooo-monero)
|
|
24569454 epee: add SSL support (moneromooo-monero)
|
|
807903bb hardfork: fix fork determination for historical heights (moneromooo)
|
|
fa2fbc39 wallet2: fix mishandling rct outputs in coinbase tx (moneromooo-monero)
|
|
|
|
85088d9f db_lmdb: fix missing mdb_dbi_close in migration (moneromooo-monero)
|
|
0de14396 tests: add a CNv4 JIT test (moneromooo-monero)
24d281c3 crypto: plug CNv4 JIT into cn_slow_hash (moneromooo-monero)
78ab59ea crypto: clear cache after generating random program (moneromooo-monero)
b9a61884 performance_tests: add tests for new Cryptonight variants (moneromooo-monero)
fff23bf7 CNv4 JIT compiler for x86-64 and tests (SChernykh)
3dde67d8 blockchain: add v10 fork heights (moneromooo-monero)
|
|
2dbc487e Add support for V10 protocol with BulletProofV2 and short amount. (cslashm)
63cc02c0 Fix dummy decryption in debug mode (cslashm)
f0e55ceb fix log namespace (cslashm)
460da140 New scheme key destination contrfol (cslashm)
|
|
|
|
Enabled by setting the MONERO_USE_CNV4_JIT env var to 1
|
|
|
|
Minimalistic JIT code generator for random math sequence in CryptonightR.
Usage:
- Allocate writable and executable memory
- Call v4_generate_JIT_code with "buf" pointed to memory allocated on the previous step
- Call the generated code instead of "v4_random_math(code, r)", omit the "code" parameter
|
|
|
|
|
|
|
|
The 10 minute one will never trigger for 0 blocks, as it's still
fairly likely to happen even without the actual hash rate changing
much, so we add a 20 minute window, where it will (for 0 blocks)
and a one hour window.
|
|
This runs a command whenever the block rate deviates too much
from the expectation
|
|
|
|
|
|
f1fb06b1 Fixed path to int-util.h (SChernykh)
9da0892b Adding cnv4-2 tweaks (SChernykh)
f51397b3 Cryptonight variant 4 aka CryptonightR (SChernykh)
|
|
b8787f43 ArticMine's new block weight algorithm (moneromooo-monero)
|
|
52964501 ringct: fix v1 ecdhInfo serialization (moneromooo-monero)
|
|
45b7df70 wallet_rpc_server: remove detached short payment ids support (moneromooo-monero)
|
|
49b2a48a simplewallet: tell the user to complain to the recipient (moneromooo-monero)
|
|
This curbs runaway growth while still allowing substantial
spikes in block weight
Original specification from ArticMine:
here is the scaling proposal
Define: LongTermBlockWeight
Before fork:
LongTermBlockWeight = BlockWeight
At or after fork:
LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight)
Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time.
Define: LongTermEffectiveMedianBlockWeight
LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight))
Change Definition of EffectiveMedianBlockWeight
From (current definition)
EffectiveMedianBlockWeight = max(300000, MedianOverPrevious100Blocks(BlockWeight))
To (proposed definition)
EffectiveMedianBlockWeight = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight)
Notes:
1) There are no other changes to the existing penalty formula, median calculation, fees etc.
2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork.
3) When the EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty.
Note: the long term block weight is stored in the database, but not in the actual block itself,
since it requires recalculating anyway for verification.
|
|
Reported by cutcoin
|
|
|
|
|
|
|
|
|
|
When all our outgoing peer slots are filled, we cycle one peer at
a time looking for syncing peers until we have at least two such
peers. This brings two advantages:
- Peers without incoming connections will find more syncing peers
that before, thereby strengthening network decentralization
- Peers will have more resistance to isolation attacks, as they
are more likely to find a "good" peer than they were before
|
|
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
|
|
|
|
Fixed by hyc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
Co-Authored-By: Lee Clagett <vtnerd@users.noreply.github.com>
|
|
It introduces random integer math into the main loop.
|
|
|
|
|
|
```
Undefined symbols for architecture x86_64:
"common_category()", referenced from:
make_error_code(common_error) in parse.cpp.o
make_error_code(common_error) in tor_address.cpp.o
"boost::system::detail::system_category_ncx()", referenced from:
boost::system::system_category() in parse.cpp.o
boost::system::system_category() in socks.cpp.o
boost::system::system_category() in libepee.a(net_utils_base.cpp.o)
"boost::system::detail::generic_category_ncx()", referenced from:
boost::system::generic_category() in parse.cpp.o
boost::system::generic_category() in socks.cpp.o
boost::system::generic_category() in tor_address.cpp.o
boost::system::generic_category() in libepee.a(string_tools.cpp.o)
boost::system::generic_category() in libepee.a(net_utils_base.cpp.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [src/net/libnet.dylib] Error 1
make[2]: *** [src/net/CMakeFiles/net.dir/all] Error 2
```
|
|
|
|
|