Age | Commit message (Collapse) | Author | Files | Lines |
|
dc0c0c91 tests: disable wallet SSL init for tests involving wallet2 (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
|
|
b05f10f8 wallet2: sanity check new tx before sending (moneromooo-monero)
|
|
We generate and check tx proofs and verify the amounts in those
match what the original amounts were.
|
|
16590294 abstract_tcp_server2: fix crashy race on socket shutdown (moneromooo-monero)
|
|
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)
|
|
22136256 Start monerod as non root user (Jean-Michel DILLY)
|
|
9141a0a1 connection_basic: remove debug exception ^_^ (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)
|
|
7ec4d2c3 SHALL -> MUST (Jesse Jackson)
|
|
5c79abe5 update readme to include blurb on decentralization (Gingeropolous)
|
|
0c7e7bce Adding classes, functions, and utilities for common LMDB operations. (Lee Clagett)
|
|
17769db9 epee: fix build with boost 1.70.0 (moneromooo-monero)
d6d6c46c cmake: handle detecting boost using boost's own cmake files (moneromooo-monero)
|
|
|
|
get_io_service was deprecated, and got removed
|
|
Its version looks like 1.70.1 rather than 107000, so detect range
to know which type we're seeing
|
|
Coverity 196597
|
|
- tests fixes for HF10, builder change, rct_config; fix_chain
- get_tx_key test
- proper testing after live refresh added
- live refresh synthetic test
- log available funds for easier test construction
- wallet::API tests with mocked daemon
|
|
- 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)
|
|
c8c154a2 tests: fix cnv4-jit-test link on mac (moneromooo-monero)
|
|
1677fb06 unbound: update to get the redefinition fix (moneromooo-monero)
|
|
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)
|
|
8681f8ef OS X -> macOS (Jesse Jackson)
|
|
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)
|
|
3ac40938 timings: fix errno.h mispelt as error.h (moneromooo-monero)
|
|
aac4e2f5 wallet_rpc_server: add missing --rpc-ssl-allowed-fingerprints (moneromooo-monero)
|
|
- 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
|
|
5ea17909 device/trezor: debugging features, trezor tests (Dusan Klinec)
|
|
bc61b5ca wallet2: don't store 0 amount outputs, they'll fail to be spent (moneromooo-monero)
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
bb8eab24 epee: certificate generation fix, pkey deleted (Dusan Klinec)
|
|
- pkey gets deleted by the pkey_deleter but the caller tries to serialize it which causes errors as the memory is freed
|
|
b8c2e21c Fix startup errors with SSL cert generation (Howard Chu)
|
|
4ef3c895 blockchain: fix ahead of time PoW batch calc (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
Use SSL API directly, skip boost layer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108c625b CryptonightR: define out i386/x86_64 specific code on other archs (moneromooo-monero)
1b8757dd slow-hash: fix build on arm (moneromooo-monero)
5057eb11 cmake: ARCH_ID fixes for cross compilation (TheCharlatan)
|
|
|
|
by avoiding repeated (de)serialization
|
|
|
|
|
|
|
|
23abe607 check load_t_from_json return values (moneromooo-monero)
e396146a default initialize rpc structures (moneromooo-monero)
ef93b099 various: remove unused variables (moneromooo-monero)
|
|
|
|
|
|
|
|
4d3b61a3 Use io_service::work in epee tcp server (Lee Clagett)
|
|
7af4fbd4 epee: Add space after ':' in additional http response headers (Tom Smeding)
|
|
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)
|
|
7da7a9bb Update openssl to 1.0.2q in depends build system (who-biz)
|
|
f0fc4064 Various speedups to depends and Travis (TheCharlatan)
|
|
d2c95ab9 Don't decrypt keys in view only wallets in wallet_keys_unlocker (Doyle)
|
|
08f60f8e readme: add new workflow for translations (Pootle) (erciccione)
|
|
8298f42e miner: it can now autodetect the optimal number of threads (moneromooo-monero)
|
|
fcd00079 unit_tests: remove leftover debug print (moneromooo-monero)
|
|
c0e9e805 Fixed missing return value in once_a_time class on windows (Markus Behm)
|
|
2a94ec22 ITS#8969 tweak mdb_page_split (Howard Chu)
|
|
6a3608d3 cryptonote_protocol_handler: pad tx messages when using tor/i2p (moneromooo-monero)
|
|
1c9d5285 blockchain_prune: don't prune before v10 (moneromooo-monero)
|
|
59a7b9aa README.md - add few FreeBSD instructions, fix v13.0 release tag (monerorus)
|
|
1eef0565 performance_tests: better stats, and keep track of timing history (moneromooo-monero)
|
|
7c3ade44 network_throttle: use circular_buffer where appropriate (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)
|
|
5f67e7f5 blockchain: forbid older BP rct versions from v11 (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)
|
|
a17da720 Print the reason why a notification spec failed to parse (moneromooo-monero)
356d8137 blockchain: include number of discarded blocks in --reorg-notify (moneromooo-monero)
4d598e3d core: add a few more block rate window sizes (moneromooo-monero)
d4fb9641 core: add --block-rate-notify (moneromooo-monero)
28b6dbf2 notify: fix tokenizing being too strict (moneromooo-monero)
|
|
|
|
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)
|
|
fec359a6 cryptonote: Fix enum check in expand_transaction_2 (Tom Smeding)
9bf0e537 cryptonote: Add const-qualifier on comparison functor (Tom Smeding)
5d2fdc2e serialization: Use pos_type instead of streampos (Tom Smeding)
|
|
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
|
|
|
|
|
|
The [spec](https://tools.ietf.org/html/rfc2119) states that these keywords are aliased to each other (in order to alleviate issues arising from the misinterpretation of using "shall"). Consistency helps readers (especially new/unfamiliar ones). 👀 References:
- https://www.faa.gov/about/initiatives/plain_language/articles/mandatory/
- https://ell.stackexchange.com/a/171990/2487
|
|
|
|
|
|
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++.
|
|
|
|
|
|
|
|
Further speedups to icu compilation, it is faster to run the
pre-generated configure scripts.
Ensure that the native protobuf installation only generates the required
libraries and binaries.
Disable qt compilation when running travis on windows. Qt is used for
lrelease, the travis recipe instead usese the a local installation of
lrelease.
Remove various packages and options from the travis recipe.
Update Readline to version 8.0. The previously used url 404'd sometimes,
use the official gnu ftp server instead.
Remove unused cmake config.
|
|
|
|
|
|
|
|
|
|
This code is used for more than just these
|
|
|
|
Fixed by hyc
|
|
|
|
|
|
|
|
|
|
|