Commit Graph

5366 Commits

Author SHA1 Message Date
Riccardo Spagni eba668c6ad
Merge pull request #4862
3998a937 Enhance help text for print_ring. (Tadeas Moravec)
3900fb77 Enhance help text for incoming_transfers. (Tadeas Moravec)
2018-12-04 17:09:40 +02:00
Riccardo Spagni 11d86f6008
Merge pull request #4859
6f2497bc Don't cache nettype in core_rpc_server use m_core (doy-lee)
2018-12-04 17:09:21 +02:00
Riccardo Spagni c00ac446fd
Merge pull request #4854
bd98e99c Removed a lot of unnecessary includes (Martijn Otto)
2018-12-04 17:08:42 +02:00
Riccardo Spagni 398f7076bb
Merge pull request #4853
2b3595d0 various: do not propagate exception through dtor (moneromooo-monero)
2018-12-04 17:07:51 +02:00
Riccardo Spagni 94288d7d1d
Merge pull request #4845
6732fc7f Fix issue 4793 - M/N multisig transaction signature (naughtyfox)
2018-12-04 17:06:04 +02:00
TheCharlatan 5a76933903 Add glibc back compat code
To ensure that the binaries compiled by gitian run across many linux
distributions, enforce 2.17 as the minimum libc version supported.
2018-12-04 02:21:06 +01:00
moneromooo-monero affff949f9
blockchain: fix race between two external mining threads 2018-12-02 13:08:41 +00:00
Tadeas Moravec 6456cb415a
Bulletproof: Initialize members in default construtor.
Fixing a build warning on g++ 7.3.0
2018-12-01 13:03:32 +00:00
moneromooo-monero 9b69a0ae01
daemon: print monero version at startup when calling a detached daemon
So people who want a timstamp get a timestamp
2018-11-30 17:55:16 +00:00
moneromooo-monero 0c5dd3161b
cryptonote: add a set_null for transaction_prefix
Since it's all inline, I suspect the compiler will merge the
duplicate stores anyway.
2018-11-30 15:11:43 +00:00
moneromooo-monero aba9a9c277
daemon: stop miner before we bring the whole thing down
This avoids the miner erroring out trying to submit blocks
to a core that's already shut down (and avoids pegging
the CPU while we're busy shutting down).
2018-11-30 15:10:25 +00:00
moneromooo-monero ac665418f0
ringct: fix dummy bulletproofs on ledger in fake mode
Ledger does some basic checks on them
2018-11-30 13:33:29 +00:00
Dusan Klinec 318cc78457
device/trezor: passphrase entry on host
- simple device callback object added. Device can request passphrase/PIN entry via the callback or notify user some action is required
- callback is routed to wallet2, which routes the callback to i_wallet_callback so CLI or GUI wallets can support passphrase entry for HW tokens
- wallet: device open needs wallet callback first - passphrase protected device needs wallet callback so user can enter passphrase
2018-11-29 04:33:41 +01:00
Jason Wong dc1c12528d add command pop_blocks
add new public method to Blockchain and update according to code review

update after review: better lock/unlock, try catch and coding style
2018-11-28 12:20:28 +01:00
moneromooo-monero a48f2dab00
blockchain_prune_known_spent_data: blackball file is now optional
If not present, the tool will scan the blockchain, since scanning
for this is fairly fast.
2018-11-27 15:45:47 +00:00
moneromooo-monero 17b45725af
Outputs where all amounts are known spent can now be pruned
Only for pre rct for obvious reasons.

Note: DO NOT use a known spent list which includes outputs
which are not known spent. If the list includes any output
that's just strongly thought to be spent, but not provably
so, you risk finding yourself unable to sync past the point
where that output is spent.

I estimate only 200 MB saved on current mainnet though,
unless the new blackballing rule unearths a good amount of
large-amount-set extra spent outs.
2018-11-27 15:45:42 +00:00
moneromooo-monero 756684bb28
blockchain: avoid unnecessary DB lookups when syncing
Some of the inputs for block in a span will be from other earlier
blocks in that span. Keep track of those outputs so we don't have
to look them up again after those early blocks are added to the
blockchain.
2018-11-27 14:03:06 +00:00
moneromooo-monero 5ca4994c9c
rpc: speed up the common get_output_distribution case while syncing 2018-11-27 14:01:40 +00:00
moneromooo-monero e98ae34e4b
core: fix adding new pre-hoh block when a tx is already in the pool 2018-11-26 23:45:01 +00:00
stoffu 0e2a5d75de
simplewallet: use is_transfer_unlocked instead of is_tx_spendtime_unlocked for show_transfers
Followup on #4728
2018-11-27 07:50:16 +09:00
Riccardo Spagni 58ce16d4d9
Merge pull request #4821
fc98f7a0 rpc: speedup get_outs.bin (moneromooo-monero)
2018-11-26 21:51:27 +02:00
moneromooo-monero fc98f7a0a1
rpc: speedup get_outs.bin 2018-11-26 18:56:23 +00:00
Riccardo Spagni 3e2abc9eaa
Merge pull request #4834
2c7195d8 bulletproofs: avoid std::vector allocations for slice (moneromooo-monero)
2018-11-26 20:30:15 +02:00
Riccardo Spagni 4a64303d71
Merge pull request #4831
c5ee14ae json_archive: initialize inner_array_size in ctor (moneromooo-monero)
2018-11-26 20:29:06 +02:00
Riccardo Spagni c4fd8ce97e
Merge pull request #4830
dffec258 db_lmdb: error out if the db needs migration in read only mode (moneromooo-monero)
2018-11-26 20:28:49 +02:00
Riccardo Spagni eccb9b08c4
Merge pull request #4825
b9b307d1 rpc: speedup get_output_distribution (moneromooo-monero)
2018-11-26 20:28:02 +02:00
Riccardo Spagni b37ce24cdd
Merge pull request #4824
2ffe53d9 device/trezor: webusb transport added, cmake fixes (Dusan Klinec)
2018-11-26 20:27:29 +02:00
Riccardo Spagni cc1ea0b651
Merge pull request #4816
1a4d1603 wallet2: remove redundant chacha key generation in store_keys (stoffu)
2018-11-26 20:25:39 +02:00
moneromooo-monero 506472e0c6
protocol: fix use after free when dropping a connection 2018-11-26 17:19:25 +00:00
Dusan Klinec 2ffe53d9e6
device/trezor: webusb transport added, cmake fixes
- webusb transport based on libusb added. Provides direct access to Trezor via USB, no need for Trezor bridge.
- trezor protocol message handler improved, no recursion used. Ready for upcoming integration tests.
- libusb (for docker) bumped from v1.0.9 to v1.0.22, newer version required for webusb transport, for device enumeration.
- cmake improvements and fixes. Cmake Trezor checks are moved to a dedicated CheckTrezor.cmake file. In case of a problem Trezor is excluded from build.
- ifdefs made consistent to Ledger.
- UDP Transport enumeration disabled by default in release mode
2018-11-25 11:57:19 +01:00
moneromooo-monero 2be31b4c9c
blockchain_blackball: spot when all outputs of an amount are spent 2018-11-24 11:07:15 +00:00
stoffu 9b5efad294
simplewallet: enable donation on testnet/stagenet for easier testing 2018-11-24 08:25:38 +09:00
moneromooo-monero aee7a4e364
wallet_rpc_server: do not use RPC data if the call failed
Found by codacy.com
2018-11-23 15:38:00 +00:00
moneromooo-monero 1a0733e534
windows_service: fix memory leak
Found by codacy.com
2018-11-23 15:38:00 +00:00
moneromooo-monero 5d9915ab9e
cryptonote: fix get_unit for non default settings
Found by codacy.com
2018-11-23 15:37:39 +00:00
moneromooo-monero d4f50cb109
remove some unused code
Found by codacy.com
2018-11-23 15:37:36 +00:00
moneromooo-monero 611639710d
a few minor (but easy) performance tweaks
Found by codacy.com
2018-11-23 15:36:48 +00:00
moneromooo-monero 3002307418
tests: slow_memmem now returns size_t
Makes more sense than uint64_t for an offset, and agrees with
the %zu used to print results.

Found by codacy.com
2018-11-23 15:36:48 +00:00
stoffu c28e3d2dae
rctOps: add braces to suppress warnings 2018-11-23 12:28:04 +09:00
moneromooo-monero b0d9d6051f
cn_deserialize: allow parsing partially valid tx extra 2018-11-22 11:15:57 +00:00
stoffu b5573fc231
wallet2: resume processing when tx extra is partially broken
Motivated by https://monero.stackexchange.com/questions/10483

Some exchanges appear to have customized the wallet software
in an inappropriate way, making the tx extra field partially
unreadable. PR #3716 changed the wallet behavior disallowing
such partially valid tx extra.

An example tx reported by the user is
e87c675a85f34ecac58a8846613d25062f1813e1023c552b705afad32b972c38
where the normal tx pubkey appears again with the aditional
tx pubkeys tag `04` which is inappropriate.
2018-11-22 14:51:35 +09:00
moneromooo-monero 56e616e855
wallet2: add n_vouts to capture list 2018-11-22 01:45:45 +00:00
Jethro Grassie 517f25efd1
rpc: add version to get_info 2018-11-21 12:56:34 -05:00
moneromooo-monero 6bfcc57395
scoped_message_writer: protect all std::cout usage from readline 2018-11-21 12:48:43 +00:00
moneromooo-monero 96e6b43970
blockchain_stats: don't use gmtime_r on Windows
In some cases, it doesn't like it (I don't know the details).

Factor into a new epee function
2018-11-21 00:50:53 +00:00
moneromooo-monero c25260f51c
protocol: fix incorrect tx hash in log 2018-11-20 18:35:58 +00:00
naughtyfox 6732fc7fde Fix issue 4793 - M/N multisig transaction signature 2018-11-20 16:50:41 +03:00
moneromooo-monero b9b307d11a
rpc: speedup get_output_distribution
and decrease the amount of data carried around
2018-11-20 10:11:25 +00:00
Riccardo Spagni 84dd674cd0
Merge pull request #4781
2a48c2a2 slow-hash: some more big endian fixes (xiphon)
b39fdf8e slow-hash: fix for big endian (moneromooo-monero)
2018-11-20 12:34:41 +09:00
xiphon fc99f177f3 lmdb: fix gcc 7.3.0 'implicit-fallthrough' warning 2018-11-19 22:36:10 +00:00
moneromooo-monero 60f36386e4
Avoid unnecessary temp block and copy ctor
block already has a default ctor, and the extra object
churn due to its innards (vectors, etc) is pointless.
2018-11-19 17:57:17 +00:00
moneromooo-monero 707c2f836b
Remove -Werror
It is an annoying piece of garbage
2018-11-17 13:15:03 +00:00
moneromooo-monero 31d80027b5
tests: add unit tests for get_output_distribution 2018-11-16 19:21:45 +00:00
Tadeas Moravec 3998a937e5
Enhance help text for print_ring. 2018-11-16 15:15:35 +00:00
Tadeas Moravec 3900fb779f
Enhance help text for incoming_transfers. 2018-11-16 14:53:31 +00:00
moneromooo-monero 0936dae8a4
blockchain: remove "0 is height" shortcut from get_output_distribution
This prevents asking for just 0, and the RPC layer already does this
2018-11-16 10:03:02 +00:00
moneromooo-monero 872c7eb26a
Revert "blockchain: simplify output distribution code"
This reverts commit b2bb9312a7.
2018-11-16 10:02:59 +00:00
xiphon 2a48c2a286
slow-hash: some more big endian fixes 2018-11-16 09:58:41 +00:00
moneromooo-monero b39fdf8ebe
slow-hash: fix for big endian 2018-11-16 09:58:38 +00:00
Riccardo Spagni c37c70f459
Merge pull request #4806
ac23b10f blockchain: fix innocuous difficulty cache inconsistency (moneromooo-monero)
3b14d972 blockchain: use uint64_t for block height, not size_t (moneromooo-monero)
2018-11-16 11:16:49 +02:00
Riccardo Spagni 0295055bcb
Merge pull request #4805
6a1062f5 bulletproofs: reserve vector memory when known in advance (moneromooo-monero)
2018-11-16 11:16:12 +02:00
Riccardo Spagni cec336ecbc
Merge pull request #4804
00907c39 rct: speedup commit a little (moneromooo-monero)
2018-11-16 11:15:56 +02:00
Riccardo Spagni 056abf980e
Merge pull request #4801
7ae36e91 wallet_rpc_server: account for watch-only/non-deterministic/multisig when querying seed (stoffu)
2018-11-16 11:13:09 +02:00
Riccardo Spagni 3a40d94998
Merge pull request #4800
79b4dae6 simplewallet: slightly adjust wording when printing multisig seed (stoffu)
2018-11-16 11:12:43 +02:00
Riccardo Spagni 45f597c564
Merge pull request #4799
f4988454 perf_timer: remove stray debug addition (moneromooo-monero)
2018-11-16 11:12:09 +02:00
Riccardo Spagni 46f989bc49
Merge pull request #4795
5d7c2316 rct: add a zeroCommit cache for common pre-rct case (moneromooo-monero)
2018-11-16 11:11:10 +02:00
Riccardo Spagni f9c60736b8
Merge pull request #4794
e198b06e Fix: out_of_hashchain_bounds_error in refresh (Hasan Pekdemir)
2018-11-16 11:10:20 +02:00
Riccardo Spagni 40bb7a304a
Merge pull request #4792
5d4f3df8 simplewallet: reorganize SCOPED_WALLET_UNLOCK a bit more (stoffu)
2018-11-16 11:09:41 +02:00
Riccardo Spagni 86395e5bd6
Merge pull request #4791
5878fe95 simplewallet: don't skip asking for password when watch-only (stoffu)
2018-11-16 11:08:34 +02:00
Riccardo Spagni 9aff9a5372
Merge pull request #4790
177a9d76 wallet: warn if lockable memory limit is too low (moneromooo-monero)
2018-11-16 11:08:07 +02:00
Riccardo Spagni 20bf9b93dd
Merge pull request #4789
0afdb00b wallet2: fix print_ring printing double entries for transactions (moneromooo-monero)
2018-11-16 11:07:40 +02:00
Riccardo Spagni c8cc65f30a
Merge pull request #4788
8f3963d2 wallet2: demote a few uninteresting recurring logs to TRACE (moneromooo-monero)
2018-11-16 11:07:21 +02:00
Riccardo Spagni 279a0a4d8a
Merge pull request #4786
c22e85fe simplewallet: remove redundant messages on daemon connection failure (stoffu)
2018-11-16 11:06:32 +02:00
Riccardo Spagni 4561119846
Merge pull request #4784
1c04c21d wallet_rpc_server: include additional tx keys in sign_transfer response (stoffu)
2018-11-16 11:05:31 +02:00
Riccardo Spagni 140defd89f
Merge pull request #4778
71eb32a9 dns_utils: do not exit if DNS records are corrupt (moneromooo-monero)
2018-11-16 11:02:28 +02:00
Riccardo Spagni b1ba96e159
Merge pull request #4777
c17a1d43 daemon: use msg_writer, not cout, to display information (moneromooo-monero)
2018-11-16 11:01:33 +02:00
Riccardo Spagni 46d0dc2808
Merge pull request #4776
03fc731b p2p: less frequent incoming connections check (moneromooo-monero)
14a5c206 p2p: tone down "no incoming connections" warning to info if in peers is 0 (moneromooo-monero)
2018-11-16 11:01:19 +02:00
Riccardo Spagni d7bac99f6f
Merge pull request #4770
2bd46065 Expose limit-rate defaults from command line help (RaskaRuby)
2018-11-16 10:59:38 +02:00
Riccardo Spagni 9827958f5e
Merge pull request #4768
cf552c75 tx_pool: allow take_tx to work without m_txs_by_fee_and_receive_time (moneromooo-monero)
2018-11-16 10:59:25 +02:00
Riccardo Spagni e90ee7548c
Merge pull request #4765
09dbd9cb tx_pool: fix comment about transaction_prefix (moneromooo-monero)
2018-11-16 10:58:42 +02:00
Riccardo Spagni 95d96d139d
Merge pull request #4764
1598f01c wallet2: use padded bulletproofs for multisig signing (stoffu)
2018-11-16 10:58:29 +02:00
Riccardo Spagni 1910aab5f4
Merge pull request #4236
a9357141 Add new command "export_transfers" to save transfers to csv (sachaaaaa)
2018-11-16 10:57:43 +02:00
doy-lee 6f2497bc7a Don't cache nettype in core_rpc_server use m_core
This can go out of sync with m_core's nettype if you run in fakechain
mode since entering fakechain mode is done through code not the command
line and core_rpc_server only looks at the command line to figure out
the nettype.
2018-11-16 15:32:05 +11:00
moneromooo-monero c5ee14ae6e
json_archive: initialize inner_array_size in ctor
Coverity 136581
2018-11-15 16:33:51 +00:00
Martijn Otto bd98e99c80
Removed a lot of unnecessary includes 2018-11-15 17:29:34 +01:00
moneromooo-monero 2b3595d0fe
various: do not propagate exception through dtor
Coverity 189689, 189690, 189692, 189695
2018-11-15 15:53:21 +00:00
stoffu 79b4dae66f
simplewallet: slightly adjust wording when printing multisig seed 2018-11-15 23:51:19 +09:00
Riccardo Spagni 0cc3fc3756
Merge pull request #4769
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)
2018-11-14 21:35:03 +02:00
Riccardo Spagni 33ad6fb4c1
Merge pull request #4761
6e1282b6 wallet2: fix off by one in output picking (moneromooo-monero)
2018-11-14 21:34:51 +02:00
Riccardo Spagni 92c5a892b5
Merge pull request #4757
db24a2e5 hash: fix hash_permutation on big endian (moneromooo-monero)
2018-11-14 21:34:09 +02:00
Riccardo Spagni 8ba3f89b44
Merge pull request #4755
42d8d508 crypto: fix AES encryption on big endian (xiphon)
2018-11-14 21:33:38 +02:00
Riccardo Spagni 59e8a4c306
Merge pull request #4753
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)
2018-11-14 21:33:02 +02:00
Riccardo Spagni 23fc891555
Merge pull request #4750
e61062b6 use current height - 1 for top block height in err msgs (cryptochangements34)
2018-11-14 21:32:21 +02:00
Riccardo Spagni ff347c98a1
Merge pull request #4747
dad5bbfd return message in stop_mining if mining never started (cryptochangements34)
2018-11-14 21:32:10 +02:00
Riccardo Spagni dd42b642ee
Merge pull request #4746
f3019efe wallet-rpc: add on_restore_deterministic RPC call. (Hasan Pekdemir)
2018-11-14 21:31:08 +02:00
Riccardo Spagni 2312aacf18
Merge pull request #4847
6d3311ac libwallet_api_tests: add missing dependency on Boost Locale and ICU (stoffu)
f0459abb cmake: move Boost_LOCALE_LIBRARY out of ICU_LIBRARIES (stoffu)
2018-11-14 21:30:19 +02:00
stoffu f0459abbb9
cmake: move Boost_LOCALE_LIBRARY out of ICU_LIBRARIES 2018-11-15 00:18:31 +09:00
xiphon d01bdaca12 common: fix base58 gcc -Werror=implicit-fallthrough 2018-11-13 12:15:18 +00:00
sachaaaaa a93571410e Add new command "export_transfers" to save transfers to csv 2018-11-12 12:03:11 +11:00
moneromooo-monero 2c7195d80c
bulletproofs: avoid std::vector allocations for slice 2018-11-09 19:58:11 +00:00
moneromooo-monero dffec2587f
db_lmdb: error out if the db needs migration in read only mode 2018-11-09 09:39:22 +00:00
Riccardo Spagni 8534f71eed
Merge pull request #4814
840bf155 build: fix Ubuntu 16.04 (GCC 5.4.0) compilation (xiphon)
2018-11-07 15:02:56 +02:00
stoffu ba2055a220
api/wallet: fix compile errors made in #4720 2018-11-07 15:12:24 +09:00
stoffu 1a4d160311
wallet2: remove redundant chacha key generation in store_keys 2018-11-07 10:47:10 +09:00
xiphon 840bf155a0 build: fix Ubuntu 16.04 (GCC 5.4.0) compilation 2018-11-06 21:45:00 +00:00
Riccardo Spagni a9e03ebc6a
Merge pull request #4809
1fd017cf Fix build of monero-gui by adding device_trezor to wallet_merged (buricl)
2018-11-06 21:35:08 +02:00
Riccardo Spagni 148ac1a898
Merge pull request #4744
b3e8677c cryptonote: use logging functions for errors, not std::cout (moneromooo-monero)
2018-11-06 21:33:52 +02:00
Riccardo Spagni a369a13928
Merge pull request #4743
9335d5a2 wallet2: save ring in the ringdb once a tx is created (moneromooo-monero)
2018-11-06 21:33:22 +02:00
Riccardo Spagni da26bc92e9
Merge pull request #4742
0a95cdaa blockchain_utilities: fix logs and cout output colliding (moneromooo-monero)
2018-11-06 21:32:54 +02:00
Riccardo Spagni d210d6fb45
Merge pull request #4738
107f3398 wallet2: fix ring reuse breaking when using histogram (moneromooo-monero)
2018-11-06 21:31:32 +02:00
Riccardo Spagni 299d75b209
Merge pull request #4735
73e504c1 rpc: adjust ring size error message now that too high is also possible (moneromooo-monero)
a5ca7f4f core: fix unmixable special case allowing ring size below 11 (moneromooo-monero)
2018-11-06 21:31:14 +02:00
Riccardo Spagni 0991aa8964
Merge pull request #4733
b3067962 cryptonote_core: avoid gratuitous recalculations in check_block_rate() (xiphon)
2018-11-06 21:30:52 +02:00
Riccardo Spagni 164ba3ef1c
Merge pull request #4731
f26ce08c wallet: add a non destructive blockchain rescan (moneromooo-monero)
2018-11-06 21:30:12 +02:00
moneromooo-monero 3dba7f252e
protocol: option to pad transaction relay to the next kB
To help protect one's privacy from traffic volume analysis
for people using Tor or I2P. This will really fly once we
relay txes on a timer rather than on demand, though.

Off by default for now since it's wasteful and doesn't bring
anything until I2P's in.
2018-11-06 15:47:05 +00:00
Riccardo Spagni b789f7e10d
Merge pull request #4729
e86af52e wallet2: rewrite keys file in a safer manner (Nathan Dorfman)
2018-11-06 15:09:45 +02:00
Riccardo Spagni 1667d41064
Merge pull request #4728
1f35de23 simplewallet: display locked/unlocked state in show_transfers (moneromooo-monero)
2018-11-06 14:54:17 +02:00
Riccardo Spagni b60078d1b3
Merge pull request #4726
91eaea9c mnemonics: fix words_to_bytes on big endian (moneromooo-monero)
2018-11-06 14:53:40 +02:00
Riccardo Spagni 236c0dd48c
Merge pull request #4720
5f614ba9 simplewallet: print the number of show/all transfers (moneromooo-monero)
8d71b2b1 wallet2: only export necessary outputs and key images (moneromooo-monero)
769ae42a wallet2: faster output and key image import/export (moneromooo-monero)
2018-11-06 14:52:24 +02:00
Riccardo Spagni 267b5d8807
Merge pull request #4711
c4fbfd78 Small function declaration cleanup in slow-hash.c (Pol Mauri)
2018-11-06 14:51:23 +02:00
Riccardo Spagni cb4d5c2d4b
Merge pull request #4707
97cad7e9 db_lmdb: log which output was not found in get_output_key (moneromooo-monero)
2018-11-06 14:50:08 +02:00
buricl 1fd017cf77 Fix build of monero-gui by adding device_trezor to wallet_merged 2018-11-06 00:17:22 +01:00
moneromooo-monero 6e1282b600
wallet2: fix off by one in output picking
and take into account wallet level minimum spend age
2018-11-05 20:13:00 +00:00
moneromooo-monero ac23b10f15
blockchain: fix innocuous difficulty cache inconsistency
This inconsistent state would not actually be used in practice
2018-11-05 14:47:52 +00:00
moneromooo-monero 3b14d9727b
blockchain: use uint64_t for block height, not size_t
for consistency
2018-11-05 14:47:48 +00:00
moneromooo-monero 6a1062f560
bulletproofs: reserve vector memory when known in advance 2018-11-05 14:32:32 +00:00
moneromooo-monero 00907c3987
rct: speedup commit a little
saves a conversion, and uses a double scalarmult instead of
two scalarmults
2018-11-05 14:25:11 +00:00
stoffu 7ae36e91f6
wallet_rpc_server: account for watch-only/non-deterministic/multisig when querying seed
Followup on #4653
2018-11-05 12:13:15 +09:00
moneromooo-monero f49884543c
perf_timer: remove stray debug addition 2018-11-05 00:34:16 +00:00
xiphon b3067962fa cryptonote_core: avoid gratuitous recalculations in check_block_rate() 2018-11-05 00:13:51 +00:00
Dusan Klinec e178bf234a
rpc: fix linking error of 6097472a, get_output_distribution
Undefined symbols for architecture x86_64:
  "cryptonote::core::get_output_distribution(unsigned long long, unsigned long long, unsigned long long, unsigned long long&, std::__1::vector<unsigned long long, std::__1::allocator<unsigned long long> >&, unsigned long long&) const", referenced from:
      cryptonote::rpc::RpcHandler::get_output_distribution(cryptonote::core&, unsigned long long, unsigned long long, unsigned long long, bool) in rpc_handler.cpp.o
2018-11-04 23:38:52 +01:00
moneromooo-monero 5f614ba968
simplewallet: print the number of show/all transfers 2018-11-04 22:27:05 +00:00
moneromooo-monero 8d71b2b1b3
wallet2: only export necessary outputs and key images
and disable annoying test that requires ridiculous amounts
of skullduggery every time some format changes
2018-11-04 22:27:01 +00:00
moneromooo-monero 769ae42a7b
wallet2: faster output and key image import/export 2018-11-04 22:26:59 +00:00
Riccardo Spagni 7e2483e1d5
Merge pull request #4702
70877b1d wallet2/create_transactions_2: removed obsolete '/ 1024' on min_fee calc (Paul Shapiro)
2018-11-04 20:47:25 +02:00
Riccardo Spagni 68e2efa8f2
Merge pull request #4694
a43daebf Add stats utility (Howard Chu)
2018-11-04 20:47:06 +02:00
Riccardo Spagni 6d3d8635be
Merge pull request #4693
74fb3d88 multiexp: some minor speedups (moneromooo-monero)
a6d2e246 bulletproofs: only enable profiling on request (moneromooo-monero)
a110e6aa multiexp: tune which variants to use for which number of points (moneromooo-monero)
8b476722 bulletproofs: speedup prover (moneromooo-monero)
6f9ae5b6 multiexp: handle pippenger multiexps with part precalc (moneromooo-monero)
10e5a927 bulletproofs: maintain -z4, -z5, and -y0 to avoid subtractions (moneromooo-monero)
8629a42c bulletproofs: rework flow to use sarang's fast batch inversion code (moneromooo-monero)
fc9f7d9c bulletproofs: merge multiexps as per sarang's new python code (moneromooo-monero)
4061960a multiexp: pack the digits table when STRAUS_C is 4 (moneromooo-monero)
bf8e4b98 bulletproofs: some more minor speedup (moneromooo-monero)
c415df97 performance_tests: sc_check and ge_dsm_precomp (moneromooo-monero)
a281b950 bulletproofs: remove single value prover (moneromooo-monero)
484155d0 bulletproofs: some more speedup (moneromooo-monero)
a621d6c8 bulletproofs: random minor speedups (moneromooo-monero)
a49a1761 bulletproofs: shave off a lot of scalar muls from the g/h construction (moneromooo-monero)
4564a5d1 bulletproofs: speedup PROVE (moneromooo-monero)
2018-11-04 20:46:42 +02:00
Riccardo Spagni 5141f6e8e8
Merge pull request #4692
cb4aafd2 blockchain_utilities: simplify getting block blob from height (moneromooo-monero)
2018-11-04 20:46:21 +02:00
Riccardo Spagni ae919a1e15
Merge pull request #4691
7f0dd094 wallet2: sanity check rct output distribution from the daemon (moneromooo-monero)
2018-11-04 20:45:59 +02:00
Riccardo Spagni 617deb3329
Merge pull request #4689
ba0faae7 crypto: fixed groestl on big-endian platforms (xiphon)
ed36335c crypto: fixed incremental keccak API on big-endian platforms (xiphon)
2018-11-04 20:45:40 +02:00
Riccardo Spagni adf4eb8d50
Merge pull request #4688
5a2e54a1 Fix prune using receive time as tx_weight (doy-lee)
2018-11-04 20:45:06 +02:00
Riccardo Spagni 0c7086bf7f
Merge pull request #4687
6097472a Update ZMQ fee estimate and add ZMQ output distribution (Lee Clagett)
2018-11-04 20:44:49 +02:00
Riccardo Spagni d394c50f7b
Merge pull request #4686
cf646e3a wallet2/create_transactions_2: removed extraneous shuffle before sort of unused_*_indices_per_subaddr (Paul Shapiro)
2018-11-04 20:44:27 +02:00
Riccardo Spagni 9cf0e67978
Merge pull request #4685
76681b9b wallet2/create_transactions_2: fixed typo in try_tx=true's estimate_fee args (Paul Shapiro)
2018-11-04 20:44:00 +02:00
Riccardo Spagni 5251496662
Merge pull request #4684
4a003bb5 mnemonics/electrum-words/create_checksum_index(): updated to work with non fixed word list length mnemonic (Paul Shapiro)
2018-11-04 20:43:28 +02:00
Riccardo Spagni 5918ef93f8
Merge pull request #4683
3a85af40 core: fix handle_incoming_tx* comment about return value (moneromooo-monero)
2018-11-04 20:43:08 +02:00
Riccardo Spagni 69b646494b
Merge pull request #4241
29ffb6bb device/trezor: trezor support added (Dusan Klinec)
2018-11-04 20:42:46 +02:00
Riccardo Spagni dc7de3312f
Merge pull request #4779
233f00c6 cryptonote_core: fix build error gcc 5.4.0 'sign-compare' (xiphon)
2018-11-04 20:41:19 +02:00
Hasan Pekdemir e198b06e7a Fix: out_of_hashchain_bounds_error in refresh
15:43 < hahsun> Im on stagenet and I suddenly get this exception: 2018-11-04 14:42:52.416 [RPC0] ERROR wallet.wallet2 src/wallet/wallet2.cpp:2070 !m_blockchain.is_in_bounds(current_index). THROW EXCEPTION: error::out_of_hashchain_bounds_error
16:01 <+moneromooo> OK, possibly because the blckchain is always seeded with the genesis block hash...
16:02 <+moneromooo> So that case should be allowed, assuming it doesn't break the code around it.
16:05 <+moneromooo> OK if stop_height == size || (size==1 && stop_heigt ==0)
16:05 <+moneromooo> Throw if not that.
16:06 < hahsun> k
2018-11-04 17:07:30 +01:00
moneromooo-monero 5d7c231604
rct: add a zeroCommit cache for common pre-rct case
This is called for every pre-rct output at blockchain sync time,
and a lot of them wil hit the cache, saving a scalarmult each.
2018-11-04 15:44:56 +00:00
moneromooo-monero 5808530f54
blockchain: remove unused output_scan_worker parameter 2018-11-04 13:23:05 +00:00
moneromooo-monero 1426209a10
blockchain: don't run threads if we have just one function to run 2018-11-04 13:23:02 +00:00
moneromooo-monero 6f7a5fd4f7
db_lmdb: slight speedup getting array data from the blockchain 2018-11-04 13:23:00 +00:00
stoffu 5d4f3df887
simplewallet: reorganize SCOPED_WALLET_UNLOCK a bit more
Followup on #4555
2018-11-04 10:51:14 +09:00
stoffu 5878fe95ce
simplewallet: don't skip asking for password when watch-only 2018-11-04 10:50:03 +09:00
moneromooo-monero 177a9d76f9
wallet: warn if lockable memory limit is too low 2018-11-03 20:09:28 +00:00
moneromooo-monero f26ce08c8a
wallet: add a non destructive blockchain rescan 2018-11-03 15:04:37 +00:00
moneromooo-monero 8f3963d200
wallet2: demote a few uninteresting recurring logs to TRACE 2018-11-03 11:51:03 +00:00
moneromooo-monero 0afdb00b9d
wallet2: fix print_ring printing double entries for transactions
When a tx gets from unconfirmed to conirmed, the rings for that
transaction were being added twice
2018-11-03 11:50:38 +00:00
cryptochangements34 e61062b6f2 use current height - 1 for top block height in err msgs 2018-11-02 19:31:31 -04:00
Dusan Klinec 29ffb6bba8
device/trezor: trezor support added 2018-11-02 21:36:39 +01:00
stoffu c22e85fe1a
simplewallet: remove redundant messages on daemon connection failure
try_connect_to_daemon with silent=false already prints failure message
2018-11-02 23:25:27 +09:00
stoffu 1c04c21d6e
wallet_rpc_server: include additional tx keys in sign_transfer response
Followup on #4552
2018-11-02 21:42:02 +09:00
moneromooo-monero 97cad7e979
db_lmdb: log which output was not found in get_output_key 2018-11-02 11:49:39 +00:00
xiphon 233f00c601 cryptonote_core: fix build error gcc 5.4.0 'sign-compare' 2018-11-01 22:57:08 +00:00
moneromooo-monero 71eb32a976
dns_utils: do not exit if DNS records are corrupt 2018-11-01 22:53:48 +00:00
moneromooo-monero c17a1d431b
daemon: use msg_writer, not cout, to display information 2018-11-01 22:53:10 +00:00
moneromooo-monero 03fc731bf2
p2p: less frequent incoming connections check 2018-11-01 22:00:35 +00:00
Riccardo Spagni 9a4b15c631
Merge pull request #4664
61304151 db_lmdb: use MDB_MULTIPLE_NEXT where possible for some speedup (moneromooo-monero)
2018-11-01 22:34:20 +02:00
Riccardo Spagni 7d05e6eab3
Merge pull request #4663
d6937e37 ringct: use dummy bulletproofs when in fake mode, for speed (moneromooo-monero)
2018-11-01 22:34:02 +02:00
Riccardo Spagni a0cd602e56
Merge pull request #4658
ca9b996d perf_timer: separate log categories based on caller categories (moneromooo-monero)
2018-11-01 22:33:38 +02:00
Riccardo Spagni 3ceeac50da
Merge pull request #4653
ade369f9 Add RPC error code for non-deterministic wallet (Michał Sałaban)
2018-11-01 22:33:20 +02:00
Riccardo Spagni fde24c80c2
Merge pull request #4648
a7bffead daemon: fix base fee stating /kB even when it is per byte (moneromooo-monero)
2018-11-01 22:33:02 +02:00
Riccardo Spagni e7a475e4e6
Merge pull request #4645
6f88c03d Simplewallet: update help text for show_transfers. (Ted Moravec)
2018-11-01 22:32:41 +02:00
Riccardo Spagni 4f7cdd90fd
Merge pull request #4639
ec301390 Update db_lmdb.cpp (Cactii1)
2018-11-01 22:24:11 +02:00
moneromooo-monero 99fbe1008b
db_lmdb: save some string copies for readonly db keys/values 2018-11-01 17:26:09 +00:00
moneromooo-monero 14a5c2068f
p2p: tone down "no incoming connections" warning to info if in peers is 0
Also add an info if not offline, since it weakens the network
2018-11-01 16:43:06 +00:00
moneromooo-monero bf31447e9b
tx_pool: speed up take_tx for transactions from blocks
This happens for every historical tx when syncing, and the
unnecessary parsing is actually showing up on profile.
Since these are kept cached for just one block, this does
not increase memory usage after syncing.
2018-11-01 15:51:28 +00:00
moneromooo-monero 4f005a77c2
tx_pool: remove unnecessary get_transaction_hash 2018-11-01 15:51:24 +00:00
moneromooo-monero 593ef5981d
perf_timer: call reserve on new timer array
to avoid reallocations in the vast majority of the time
2018-11-01 15:51:22 +00:00
moneromooo-monero 6ecc99ad1f
core: avoid unnecessary tx/blob conversions 2018-11-01 15:51:19 +00:00
RaskaRuby 2bd46065ae Expose limit-rate defaults from command line help 2018-10-31 14:47:20 -07:00
moneromooo-monero cf552c752d
tx_pool: allow take_tx to work without m_txs_by_fee_and_receive_time
This should make it possible to have two daemons running on the
same database again.
2018-10-31 14:45:02 +00:00
moneromooo-monero 09dbd9cbbc
tx_pool: fix comment about transaction_prefix
It was leftover from a change that was undone before commit,
but the comment change was let through
2018-10-31 12:15:38 +00:00
stoffu 1598f01caf
wallet2: use padded bulletproofs for multisig signing
Analogous to #4540
2018-10-31 20:01:25 +09:00
xiphon 42d8d5085e crypto: fix AES encryption on big endian 2018-10-31 03:13:55 +00:00
moneromooo-monero db24a2e509
hash: fix hash_permutation on big endian 2018-10-29 22:26:44 +00:00
Hasan Pekdemir f3019efe1b wallet-rpc: add on_restore_deterministic RPC call. 2018-10-29 18:19:42 +01:00
moneromooo-monero 157054b840
hardfork: initialize current_fork_index in ctor
Also order init list to match actual runtime init order

Coverity 136605
2018-10-29 16:23:58 +00:00
moneromooo-monero d9400f69eb
serializtion: add missing mainnet and stagenet fields for 0mq
Coverity 184940
2018-10-29 16:23:14 +00:00
moneromooo-monero cbe0122bf1
wallet2: initialize amount to 0 in tx_scan_info_t ctor
It seems the more prudent thing to do here. It will not catch
attempts to use that value before it is initialized when using
ASAN or valgrind, but in a case where it does, it will have
smaller repercussions.

So it seems appropriate in this particular case.

Coverity 182498
2018-10-29 16:22:55 +00:00
Nathan Dorfman e86af52e2f wallet2: rewrite keys file in a safer manner 2018-10-28 09:58:54 -06:00
cryptochangements34 dad5bbfdf9
return message in stop_mining if mining never started 2018-10-28 09:50:33 -04:00
moneromooo-monero b3e8677c70
cryptonote: use logging functions for errors, not std::cout 2018-10-27 18:07:55 +00:00
moneromooo-monero 9335d5a297
wallet2: save ring in the ringdb once a tx is created
Even if it is never relayed, it ensures a daemon supplying
fake outs on demand will never be asked for a set with the
real input being the only intersecting member (only a problem
with people who trust their privacy to some stranger's node,
but it seems to be a massively common thing, even in Monero)
2018-10-27 17:59:56 +00:00
moneromooo-monero 0a95cdaa80
blockchain_utilities: fix logs and cout output colliding 2018-10-27 17:40:01 +00:00
moneromooo-monero 107f33985d
wallet2: fix ring reuse breaking when using histogram 2018-10-27 14:35:00 +00:00
moneromooo-monero 73e504c139
rpc: adjust ring size error message now that too high is also possible 2018-10-27 11:16:28 +00:00
moneromooo-monero a5ca7f4fb5
core: fix unmixable special case allowing ring size below 11 2018-10-27 11:16:25 +00:00
Riccardo Spagni 00a7d441d6
Merge pull request #4719
0aff4987 rpc: fix build with older compilers (moneromooo-monero)
2018-10-26 22:41:43 +02:00
Riccardo Spagni 20d3605a54
Merge pull request #4700
3bb4b0d4 miner: fix build with boost 1.69 (moneromooo-monero)
2018-10-26 22:41:21 +02:00
Riccardo Spagni 33d9d2b4c1
Merge pull request #4672
62f94e1b device_io_hid.cpp: fix copyright header (moneromooo-monero)
2018-10-26 22:40:47 +02:00
Riccardo Spagni fc06c5daf8
Merge pull request #4617
3ffbec15 rpc: init m_rpc_version in Message ctor (moneromooo-monero)
bfa2dce1 rpc: remove unused ctors (moneromooo-monero)
7cc39845 account: init creation timestamp to 0 (moneromooo-monero)
32123789 wallet2: initialize some scalar fields in ctor where appropriate (moneromooo-monero)
4eca42b2 blockchain_db: initialize m_hardfork in ctor just in case (moneromooo-monero)
2018-10-26 22:39:00 +02:00
Riccardo Spagni 148d14164e
Merge pull request #4615
a7960542 WalletAPI: rescanBlockchain, rescanBlockchainAsync (mmitkevich)
2018-10-26 22:38:41 +02:00
Riccardo Spagni ecc690a613
Merge pull request #4612
2d48861d p2p: only deinitialize what's been initialized in offline mode (moneromooo-monero)
2018-10-26 22:38:03 +02:00
Riccardo Spagni 665ab1afbc
Merge pull request #4609
e54e5668 daemon: Show mining address (Ricardo de Vries)
2018-10-26 22:36:54 +02:00
Riccardo Spagni 481d7ed147
Merge pull request #4604
0fbbb065 p2p: a negative result from UPNP_GetValidIGD is an error (moneromooo-monero)
2018-10-26 22:35:50 +02:00
Riccardo Spagni 6fc7869eb5
Merge pull request #4586
e51c9787 rpc: fix wrongly formatted JSON for pruned tx (stoffu)
2018-10-26 22:35:03 +02:00
Riccardo Spagni c761bee764
Merge pull request #4561
04ddf02e Return appropriate RPC error code when key image signature check fails (Michał Sałaban)
2018-10-26 22:33:35 +02:00
Riccardo Spagni d6fb329653
Merge pull request #4555
68e9744d simplewallet: perform trivial error checks before password prompt (xiphon)
2018-10-26 22:33:09 +02:00
Riccardo Spagni 169e6e9074
Merge pull request #4552
67e76aa0 wallet_rpc_server: optionally return tx keys in sign_transfer (moneromooo-monero)
2018-10-26 22:32:34 +02:00
Riccardo Spagni b8a4e5b7a6
Merge pull request #4547
f2c2c47a simplewallet: fixed deadlock if a user hits CTRL+C twice (xiphon)
2018-10-26 22:31:37 +02:00
Riccardo Spagni d7ff24c1e0
Merge pull request #4545
93a88d73 Utils: add support for newer Windows versions detection (Gregory Lemercier)
2018-10-26 22:30:40 +02:00
Riccardo Spagni 659cf52a61
Merge pull request #4539
977fc1bc wallet_rpc_server: add describe_transfer RPC (moneromooo-monero)
2018-10-26 22:20:57 +02:00
Riccardo Spagni 056a58d13f
Merge pull request #4536
fd62b6e7 blocks: use auto-generated .c files instead of 'LD -r -b binary' (xiphon)
2018-10-26 22:20:39 +02:00
Riccardo Spagni 557c17e206
Merge pull request #4408
341b3931 cryptonote_core: warn when the block rate deviates from expectations (moneromooo-monero)
2018-10-26 22:18:41 +02:00
Riccardo Spagni 1c91963dcd
Merge pull request #4308
9907ea06 cryptonote: sort tx_extra fields (moneromooo-monero)
2018-10-26 22:18:28 +02:00
moneromooo-monero 1f35de2300
simplewallet: display locked/unlocked state in show_transfers
it doesn't display the details, which are already displayed
in show_transfer
2018-10-25 23:02:42 +00:00
moneromooo-monero 91eaea9c72
mnemonics: fix words_to_bytes on big endian 2018-10-25 20:23:17 +00:00
xiphon ba0faae789 crypto: fixed groestl on big-endian platforms 2018-10-25 02:06:23 +00:00
moneromooo-monero 0aff49873c
rpc: fix build with older compilers 2018-10-24 20:36:58 +00:00
Pol Mauri c4fbfd786a Small function declaration cleanup in slow-hash.c
- These functions are declared twice in slow-hash.c. Remove one of the copies.
- The declarations have the wrong return type, should be void, not int.

Function definitions here: 1e74586ee9/src/crypto/aesb.c (L151-L180)
Test plan: make release-test
2018-10-23 23:19:52 -07:00
Lee Clagett 6097472a19 Update ZMQ fee estimate and add ZMQ output distribution 2018-10-23 23:46:31 -04:00
moneromooo-monero d6937e373b
ringct: use dummy bulletproofs when in fake mode, for speed 2018-10-23 21:03:18 +00:00
Howard Chu a43daebf57
Add stats utility
Report statistics from a blockchain DB
2018-10-23 19:43:31 +01:00
moneromooo-monero 61f83316b3
wallet2: extend fake out picks away from the gamma pick
in order to unbias selection from blocks with few txes
2018-10-23 09:06:47 +00:00
Paul Shapiro 70877b1d91 wallet2/create_transactions_2: removed obsolete '/ 1024' on min_fee calc 2018-10-22 18:51:45 -05:00
doy-lee 5a2e54a1cb Fix prune using receive time as tx_weight 2018-10-23 10:03:45 +11:00
moneromooo-monero 3bb4b0d41f
miner: fix build with boost 1.69 2018-10-22 22:17:15 +00:00
moneromooo-monero 74fb3d882c
multiexp: some minor speedups 2018-10-22 16:08:26 +00:00
moneromooo-monero a6d2e246f3
bulletproofs: only enable profiling on request 2018-10-22 16:07:44 +00:00
moneromooo-monero a110e6aa18
multiexp: tune which variants to use for which number of points 2018-10-22 16:07:44 +00:00
moneromooo-monero 8b4767221c
bulletproofs: speedup prover 2018-10-22 16:07:44 +00:00
moneromooo-monero 6f9ae5b6eb
multiexp: handle pippenger multiexps with part precalc 2018-10-22 16:07:44 +00:00
moneromooo-monero 10e5a92769
bulletproofs: maintain -z4, -z5, and -y0 to avoid subtractions 2018-10-22 16:07:44 +00:00
moneromooo-monero 8629a42cf6
bulletproofs: rework flow to use sarang's fast batch inversion code 2018-10-22 16:07:44 +00:00
moneromooo-monero fc9f7d9c81
bulletproofs: merge multiexps as per sarang's new python code 2018-10-22 16:07:44 +00:00
moneromooo-monero 4061960a16
multiexp: pack the digits table when STRAUS_C is 4
Spotted by stoffu
2018-10-22 16:07:44 +00:00
moneromooo-monero bf8e4b9870
bulletproofs: some more minor speedup 2018-10-22 16:07:44 +00:00
moneromooo-monero a281b950bf
bulletproofs: remove single value prover
It is now expressed in terms of the array prover
2018-10-22 16:07:44 +00:00
moneromooo-monero 484155d043
bulletproofs: some more speedup 2018-10-22 16:07:44 +00:00
moneromooo-monero a621d6c8b4
bulletproofs: random minor speedups 2018-10-22 16:07:44 +00:00
moneromooo-monero a49a17618f
bulletproofs: shave off a lot of scalar muls from the g/h construction 2018-10-22 16:07:44 +00:00
moneromooo-monero 4564a5d17b
bulletproofs: speedup PROVE 2018-10-22 16:07:44 +00:00
moneromooo-monero cb4aafd27e
blockchain_utilities: simplify getting block blob from height 2018-10-22 16:04:28 +00:00
xiphon ed36335c96 crypto: fixed incremental keccak API on big-endian platforms 2018-10-22 18:34:19 +03:00
moneromooo-monero 7f0dd094e7
wallet2: sanity check rct output distribution from the daemon 2018-10-22 14:01:46 +00:00
stoffu e51c978770
rpc: fix wrongly formatted JSON for pruned tx
Fix for #4399.
Also unifies code for serializing pruned tx to binary/json into one.
2018-10-22 10:52:40 +09:00
xiphon fd62b6e79f blocks: use auto-generated .c files instead of 'LD -r -b binary' 2018-10-22 01:12:00 +03:00
Paul Shapiro 4a003bb5a2 mnemonics/electrum-words/create_checksum_index(): updated to work with non fixed word list length mnemonic 2018-10-21 12:46:13 -05:00
Paul Shapiro 76681b9bda wallet2/create_transactions_2: fixed typo in try_tx=true's estimate_fee args 2018-10-21 12:44:22 -05:00