Howard Chu
ea15e72d73
tx_pool: fix crash in stats
...
if tx receive_time == now. supersedes #2322
2017-08-23 14:22:25 +01:00
moneromooo-monero
df0cffede0
cryptonote_protocol: warn if we see a higher top version we expect
2017-08-23 13:38:18 +01:00
moneromooo-monero
317ab21a03
cryptonote_protocol: less strict check on top version on connect
...
This allows peers who synced past a fork on the wrong height
to reorg to the right chain after they updated their software
to include the new version.
2017-08-23 13:38:15 +01:00
moneromooo-monero
cc81a37155
cryptonote_protocol: update target height when syncing too
2017-08-23 13:38:13 +01:00
moneromooo-monero
e2ad372b87
cryptonote_protocol: simplify and remove unnecessary casts
2017-08-23 13:38:10 +01:00
moneromooo-monero
727e67cada
cryptonote_protocol: print peer top height along with its version
2017-08-23 13:38:06 +01:00
moneromooo-monero
b5345ef4f0
crypto: use malloc instead of alloca
2017-08-23 13:38:03 +01:00
moneromooo-monero
80794b3114
thread_group: set thread size to THREAD_STACK_SIZE
2017-08-23 13:38:00 +01:00
moneromooo-monero
5524bc3151
print peer id in 0 padded hex for consistency
2017-08-23 13:37:56 +01:00
Howard Chu
3dd34a49ef
Cleanup test impact of moving blockchain_db_types()
2017-08-22 15:11:28 +01:00
Howard Chu
c22d22e2db
Cleanup test impact of adding safesyncmode() method
2017-08-22 15:11:09 +01:00
Howard Chu
c656dd0ede
Fix refresh counter display
...
Suspend readline when refreshing
2017-08-22 08:30:04 +01:00
moneromooo-monero
70b8c6d77a
cryptonote_protocol: misc fixes to the new sync algorithm
...
Fix sync wedge corner case:
It could happen if a connection went into standby mode, while
it was the one which had requested the next span, and that span
was still waiting for the data, and that peer is not on the
main chain. Other peers can then start asking for that data
again and again, but never get it as only that forked peer does.
And various other fixes
2017-08-21 21:57:19 +01:00
Howard Chu
0c6c3eb3f2
Silence stupid fallthru warning in gcc 7
2017-08-21 10:16:10 +01:00
Howard Chu
9a859844f4
Toggle SAFE syncmode on and off automatically
...
If monerod is started with default sync mode, set it to SAFE after
synchronization completes. Set it back to FAST if synchronization
restarts (e.g. because another peer has a longer blockchain).
If monerod is started with an explicit sync mode, none of this
automation takes effect.
2017-08-20 16:30:28 +01:00
Howard Chu
80344740bd
More DB support cleanup
...
Hide DB types from db_types.h - no reason to recompile dependencies
when DB types change.
Also remove lingering in-memory DB references, they've been
obsolete since 9e82b694da
2017-08-20 13:57:36 +01:00
Howard Chu
4c7f8ac04f
DB cleanup
...
Hide LMDB-specific stuff behind blockchain_db.h. Nobody besides blockchain_db.cpp
should ever be including DB-specific headers any more.
2017-08-19 18:11:38 +01:00
Riccardo Spagni
4466b6d1b0
Merge pull request #2303
...
5a283078
cryptonote_protocol: large block sync size before v4 (moneromooo-monero)
7b747607
cryptonote_protocol: kick idle synchronizing peers (moneromooo-monero)
2017-08-17 21:39:44 +02:00
Riccardo Spagni
4859a00134
Merge pull request #2300
...
42b34b35
Consistently print peer id in hex and on 16 chars (moneromooo-monero)
2017-08-17 21:36:15 +02:00
Riccardo Spagni
1d32a5a445
Merge pull request #2291
...
b59cd074
befor -> before (Nano Akron)
2017-08-17 21:35:48 +02:00
Riccardo Spagni
4b2cc123ff
Merge pull request #2287
...
827afcb7
protocol: pass blockchain cumulative difficulty when syncing (moneromooo-monero)
2017-08-17 21:35:02 +02:00
moneromooo-monero
5a283078ec
cryptonote_protocol: large block sync size before v4
2017-08-17 13:11:52 +01:00
moneromooo-monero
7b74760756
cryptonote_protocol: kick idle synchronizing peers
...
In case they dropped off downloading for any reason, they'll get
sent to download again.
2017-08-16 22:24:50 +01:00
moneromooo-monero
42b34b3545
Consistently print peer id in hex and on 16 chars
2017-08-16 10:56:55 +01:00
Nano Akron
b59cd0745b
befor -> before
...
Really unique yet consistent spelling mistake
2017-08-15 23:23:26 +01:00
moneromooo-monero
827afcb7ea
protocol: pass blockchain cumulative difficulty when syncing
...
Not used yet.
2017-08-15 21:03:37 +01:00
Riccardo Spagni
78ecb2ad0b
update major version number
2017-08-15 21:04:37 +02:00
Riccardo Spagni
3ff67323b7
Merge pull request #2288
...
c6e200a8
core: add --db-salvage command line flag (moneromooo-monero)
2017-08-15 20:57:26 +02:00
Riccardo Spagni
061930d6b4
Merge pull request #2293
...
dee41efa
simplewallet: mnemonic language command-line arg (Eugene Otto)
2017-08-15 20:57:09 +02:00
Riccardo Spagni
124cbe3cf3
Merge pull request #2292
...
cb2d5ac7
mnemonics: new Esperanto word list (moneromooo-monero)
2017-08-15 20:56:49 +02:00
Riccardo Spagni
9e6bcbc014
Merge pull request #2286
...
8655ba04
wallet_rpc_server: adjust small ring sizes to 5 for v6 (moneromooo-monero)
2017-08-15 20:55:30 +02:00
Riccardo Spagni
7b14a96c03
Merge pull request #2283
...
d1f204d6
miner: set thread name before logging (moneromooo-monero)
2017-08-15 20:54:53 +02:00
Riccardo Spagni
4bfb58328d
Merge pull request #2282
...
7fdc178a
p2p: fix random peer index being too large (moneromooo-monero)
2017-08-15 20:54:38 +02:00
Riccardo Spagni
e457cc7891
Merge pull request #2281
...
e499ff33
simplewallet: factor out message_writer (moneromooo-monero)
7ed5ab47
scoped_message_writer: pause readline to match simplewallet (moneromooo-monero)
2017-08-15 20:54:21 +02:00
Riccardo Spagni
a861cbb465
Merge pull request #2279
...
359517c7
wallet_rpc_server: fix possible privacy leak in on_import_key_images() (Jaquee)
20495b27
simplewallet: fix possible privacy leak in import_key_images() (Jaquee)
2017-08-15 20:53:58 +02:00
Riccardo Spagni
53dde37ceb
Merge pull request #2276
...
a1891ebe
tests: fix tests build (moneromooo-monero)
2017-08-15 20:53:41 +02:00
Riccardo Spagni
f980b2ca89
Merge pull request #2277
...
6ce769c1
p2p: get net log spam down a bit (moneromooo-monero)
2017-08-15 20:53:27 +02:00
Riccardo Spagni
86cf8cac86
Merge pull request #2275
...
88e83f94
cryptonote_protocol_handler: log versions as unsigned ints (moneromooo-monero)
2017-08-15 20:53:08 +02:00
Riccardo Spagni
74522c7e84
Merge pull request #2236
...
cb2d5110
Tweak net logs so we get more info on why networking can't start (moneromooo-monero)
2017-08-15 20:52:44 +02:00
Riccardo Spagni
fa73d6cbf1
Merge pull request #2274
...
7591c528
p2p: fallback on seed nodes if we can't make a connection (moneromooo-monero)
2017-08-15 20:52:04 +02:00
Riccardo Spagni
1d093eff67
Merge pull request #2273
...
0e8d60c0
cryptonote_protocol: fix recv/send idle time before handshake (moneromooo-monero)
2017-08-15 20:51:50 +02:00
Riccardo Spagni
e0df740bc9
Merge pull request #2272
...
f90bbe2a
cryptonote_protocol: keep target in sync with dropped connections (moneromooo-monero)
2017-08-15 20:51:35 +02:00
Riccardo Spagni
b6fc7f283f
Merge pull request #2270
...
1307e3cc
WalletAPI: add getDefaultDataDir() (Jaquee)
2017-08-15 20:51:11 +02:00
Riccardo Spagni
1b54bcdc08
Merge pull request #2266
...
7007bd14
Change default block sync size from 200 to 20 (moneromooo-monero)
2017-08-15 20:50:44 +02:00
Riccardo Spagni
973cc7ffdf
Merge pull request #2264
...
980e476c
cryptonote_basic: fix silly CLANG warning about not emitting function (moneromooo-monero)
2017-08-15 20:50:27 +02:00
Riccardo Spagni
9721b37bd5
Merge pull request #2258
...
74597bd1
wallet2: improve refresh height determination (moneromooo-monero)
2017-08-15 20:49:56 +02:00
Riccardo Spagni
718941bee0
Merge pull request #2256
...
042b86c4
simplewallet: do not ask wallet filename twice when restoring (moneromooo-monero)
2017-08-15 20:49:26 +02:00
moneromooo-monero
cb2d5110ff
Tweak net logs so we get more info on why networking can't start
...
This should prevent "silent" failures to start
2017-08-15 19:49:25 +01:00
Riccardo Spagni
85211cda22
Merge pull request #2255
...
8bbed275
simplewallet: Be explicit about secret keys (Erik de Castro Lopo)
2017-08-15 20:49:10 +02:00
Riccardo Spagni
085ef96768
Merge pull request #2252
...
9707998a
wallet2: clear some missing containers in clear() (moneromooo-monero)
2017-08-15 20:48:31 +02:00
Riccardo Spagni
79479a3614
Merge pull request #2250
...
f4f7eeba
blockchain: log more info when we reject an orphan (moneromooo-monero)
2017-08-15 20:48:08 +02:00
Riccardo Spagni
5ee3798da3
Merge pull request #2248
...
71e28760
debug_utilities: only build for debug builds (moneromooo-monero)
55e150ff
debug_utilities: new object-sizes debug tool (moneromooo-monero)
fbaf5375
cn_deserialize: move to new debug_utilities subdirectory (moneromooo-monero)
2017-08-15 20:47:49 +02:00
Riccardo Spagni
12c70fedc0
Merge pull request #2246
...
d732c73e
blockchain: remove a few unused variables (moneromooo-monero)
2017-08-15 20:47:32 +02:00
Riccardo Spagni
e5a1628c88
Merge pull request #2245
...
c8640a3d
difficulty: fix misleading comment (Guillaume LE VAILLANT)
2017-08-15 20:46:48 +02:00
Riccardo Spagni
6f60613ffb
Merge pull request #2240
...
b7d6ec83
simplewallet: add (out of sync) or (no daemon) markers in the prompt (moneromooo-monero)
fa23a500
wallet2: add a is_synced function (moneromooo-monero)
f1307bbd
node_rpc_proxy: add a proxy for target height (moneromooo-monero)
2017-08-15 20:46:31 +02:00
Riccardo Spagni
4c24eb050b
Merge pull request #2238
...
ad4649ac
Enable verifying wallet password with having to load wallet. (m2049r)
2017-08-15 20:46:09 +02:00
Riccardo Spagni
1cf4665d2a
Merge pull request #2237
...
5d4ef719
core: speed up output index unique set calculation (moneromooo-monero)
19d7f568
perf_timer: allow profiling more granular than millisecond (moneromooo-monero)
bda8c598
epee: add nanosecond timer and pause/restart profiling macros (moneromooo-monero)
2017-08-15 20:45:47 +02:00
Riccardo Spagni
d64b9c1c9e
Merge pull request #2233
...
67ce4910
wallet2: store testnet bool in keys file (Jaquee)
2017-08-15 20:45:19 +02:00
Riccardo Spagni
da2c662cf2
Merge pull request #2232
...
87b5ede9
miner: fix ignoring battery from command line (moneromooo-monero)
2017-08-15 20:45:02 +02:00
Riccardo Spagni
68ccc10b29
Merge pull request #2205
...
c97d1bd3
wallet: return unlock_time in get_transfers (moneromooo-monero)
2017-08-15 20:44:44 +02:00
moneromooo-monero
35e01a6e50
cryptonote_protocol: fix "holes" in block download schedule
2017-08-15 17:49:06 +01:00
moneromooo-monero
3da1edfde5
cryptonote_protocol: fix out of order addition
...
This was broken by the reorg fix, since we now have to add blocks
regardless of their starting height. We now check whether we know
the parent for the first block in the next span, or whether it was
requested. If neither, it's an orphan. If it is not known, but was
requested, we wait to get that block.
2017-08-15 16:54:08 +01:00
moneromooo-monero
6edb1b3e46
block_queue: do not add empty spans
2017-08-15 11:38:59 +01:00
moneromooo-monero
cb2d5ac788
mnemonics: new Esperanto word list
...
Word list authored by: Engelberg, ProkhorZ
Sources:
Baza Radikaro Oficiala
Reta Vortaro (http://www.reta-vortaro.de/revo/ )
Esperanto Panorama - Esperanto-English Dictionary (http://www.esperanto-panorama.net/vortaro/eoen.htm )
ESPDIC - Paul Denisowski (http://www.denisowski.org/Esperanto/ESPDIC/espdic.txt )
2017-08-14 17:46:46 +01:00
Eugene Otto
dee41efa20
simplewallet: mnemonic language command-line arg
...
Add `--mnemonic-language` command-line arg so it's possible to generate a wallet
without interacting with the CLI.
2017-08-13 20:00:25 -07:00
moneromooo-monero
2ec15a6931
daemon: print peers' top height in sync_info
2017-08-12 20:36:31 +01:00
moneromooo-monero
c6e200a8ab
core: add --db-salvage command line flag
...
Use to load the database when the primary meta page is corrupted
2017-08-12 19:04:44 +01:00
moneromooo-monero
8655ba04ba
wallet_rpc_server: adjust small ring sizes to 5 for v6
2017-08-12 12:59:06 +01:00
moneromooo-monero
88e83f9427
cryptonote_protocol_handler: log versions as unsigned ints
...
They're interpreted as characters otherwise
2017-08-12 11:57:05 +01:00
moneromooo-monero
08abb670e1
protocol: fix reorgs while syncing
2017-08-12 11:22:42 +01:00
moneromooo-monero
d1f204d640
miner: set thread name before logging
2017-08-12 09:07:40 +01:00
moneromooo-monero
7fdc178abb
p2p: fix random peer index being too large
2017-08-11 14:29:55 +01:00
moneromooo-monero
e499ff3322
simplewallet: factor out message_writer
2017-08-11 13:38:42 +01:00
moneromooo-monero
7ed5ab47ea
scoped_message_writer: pause readline to match simplewallet
2017-08-11 13:38:18 +01:00
Jaquee
359517c7f5
wallet_rpc_server: fix possible privacy leak in on_import_key_images()
2017-08-11 11:18:21 +02:00
Jaquee
20495b27e8
simplewallet: fix possible privacy leak in import_key_images()
2017-08-11 11:16:30 +02:00
moneromooo-monero
6ce769c123
p2p: get net log spam down a bit
2017-08-10 14:30:42 +01:00
moneromooo-monero
a1891ebea9
tests: fix tests build
...
Add get_fork_version and add_ideal_fork_version to core so
cryptonote_protocol does not have to need the Blockchain
class directly, as it's not in its dependencies, and add
those to the fake core classes in tests too.
2017-08-10 11:12:56 +01:00
moneromooo-monero
7591c528d0
p2p: fallback on seed nodes if we can't make a connection
...
This avoids failing to connect to the network in case all
known peers are unavailable (which can happen if the peer
list is small).
2017-08-09 22:55:25 +01:00
moneromooo-monero
0e8d60c06c
cryptonote_protocol: fix recv/send idle time before handshake
2017-08-09 21:22:05 +01:00
moneromooo-monero
f90bbe2a5c
cryptonote_protocol: keep target in sync with dropped connections
...
When a node is dropped, we stop considering its claimed blockchain
height as a factor in the target height calculation. This prevents
a runaway chain from being still thought to be the target even if
the nodes carrying it are dropped.
2017-08-09 20:49:24 +01:00
moneromooo-monero
3ff5ce63c5
connection_context: initialize state
...
Why this was initialized properly before I have no idea, but
it is not anymore. Fix it, which fixes syncing in release mode.
2017-08-09 19:01:27 +01:00
Riccardo Spagni
f43d59d8b3
Merge pull request #2269
...
635929ea
protocol: add checks for top block hard fork version (moneromooo-monero)
7482253a
epee: fixup KV_SERIALIZE_OPT to work in more cases (moneromooo-monero)
2017-08-09 14:58:11 +02:00
Jaquee
1307e3cc12
WalletAPI: add getDefaultDataDir()
2017-08-09 12:38:29 +02:00
moneromooo-monero
635929eaca
protocol: add checks for top block hard fork version
...
We won't even talk to a peer which claims a wrong version
for its top block. This will avoid syncing to known bad
peers in the first place.
Also add IP fails when failing to verify a block.
2017-08-09 10:28:41 +01:00
moneromooo-monero
e49f6d439d
net_node: fix m_in_timedsync initialization
...
This fixes nodes not being able to connect to nodes which use
recent code. While there, init peer_id too.
2017-08-08 17:23:02 +01:00
moneromooo-monero
7007bd1489
Change default block sync size from 200 to 20
...
With the new sync algorithm, the network overhead will be masked
as the thread adding blocks isn't interrupted by network calls
anymore. This should reduce memory usage a lot during sync.
2017-08-08 11:05:11 +01:00
moneromooo-monero
980e476c89
cryptonote_basic: fix silly CLANG warning about not emitting function
2017-08-08 00:33:52 +01:00
Riccardo Spagni
bfd2532ea5
Merge pull request #2247
...
a839a6fa
Wallet API: add tx unlock time (Jaquee)
2017-08-07 23:34:06 +02:00
Riccardo Spagni
bff9fb9c8b
Merge pull request #2231
...
61770ec2
change mixin to ring size in user visible places (moneromooo-monero)
2017-08-07 22:53:15 +02:00
moneromooo-monero
61770ec2da
change mixin to ring size in user visible places
2017-08-07 21:12:27 +01:00
Riccardo Spagni
14f479bb9c
Merge pull request #2262
...
7f7d42f8
core: fix invalid memory access creating tx (moneromooo-monero)
2017-08-07 22:11:45 +02:00
Riccardo Spagni
62610a3a53
Merge pull request #2225
...
5d91b26c
blockchain: skip checking tx semantics in embedded block hash range (moneromooo-monero)
2017-08-07 22:10:09 +02:00
moneromooo-monero
7f7d42f890
core: fix invalid memory access creating tx
2017-08-07 21:09:19 +01:00
Riccardo Spagni
a796cb341e
Merge pull request #2207
...
c93b7692
blockchain_import: much faster when verifying with cryptonote::core (moneromooo-monero)
38756d00
core: new API to disable DNS checkpoint lookups (moneromooo-monero)
2017-08-07 21:40:32 +02:00
Riccardo Spagni
3db039828e
Merge pull request #2254
...
e31aac80
walletAPI: add getRefreshFromBlockHeight() (Jaquee)
48c0cb1b
wallet api: pause refresh while commiting tx (Jaquee)
f233c01c
CMakeLists.txt - ios/xcode fix (Jaquee)
2017-08-07 16:01:40 +02:00
moneromooo-monero
569b9b2b50
updates: add "misc_log_ex.h" for logs
2017-08-07 14:42:08 +01:00
moneromooo-monero
74628941d5
dns_utils: add <functional> for std::function
2017-08-07 14:35:41 +01:00
moneromooo-monero
c93b7692b4
blockchain_import: much faster when verifying with cryptonote::core
...
Quick test with the first 56569 blocks from mainnet
version verify batch time
old 0 200 1:16
new 0 200 0:57
old 0 5000 0:53
new 0 5000 0:51
old 1 200 est > 1h
new 1 200 10:21
old 1 5000 est > 1h
new 1 5000 8:27
2017-08-07 14:32:49 +01:00
moneromooo-monero
38756d00ff
core: new API to disable DNS checkpoint lookups
2017-08-07 14:31:06 +01:00