Compare commits

...

6692 Commits

Author SHA1 Message Date
luigi1111
4f47fd2626 Merge pull request #8801
1328048 wallet2: fix infinite loop in fake out selection (Crypto City)
2023-03-27 09:17:55 -04:00
Crypto City
132804811d wallet2: fix infinite loop in fake out selection
The gamma picker and the caller code did not quite agree on the
number of rct outputs available for use - by one block - which
caused an infinite loop if the picker could never pick outputs
from that block but already had picked all other outputs from
previous blocks.

Also change the range to select from using code from UkoeHB.
2023-03-25 19:26:43 +00:00
luigi1111
25645e5d23 Merge pull request #8785
cdeb286 build: prepare v0.18.2.1 (selsta)
2023-03-24 22:55:49 -04:00
luigi1111
0e2c2ddd9c Merge pull request #8787
c4cfaa4 p2p: do not log to global when re-blocking a subnet (moneromooo-monero)
f0e326b p2p: avoid spam blocking ipv4 addresses in a blocked subnet (moneromooo-monero)
2023-03-24 22:55:29 -04:00
moneromooo-monero
c4cfaa4567 p2p: do not log to global when re-blocking a subnet 2023-03-19 02:58:38 +01:00
moneromooo-monero
f0e326be58 p2p: avoid spam blocking ipv4 addresses in a blocked subnet 2023-03-19 02:58:38 +01:00
luigi1111
225e5ba571 Merge pull request #8784
5900ed3 Add a size limit for tx_extra in tx pool (tevador)
2023-03-18 18:23:14 -04:00
luigi1111
66f57299a2 Merge pull request #8781
c59e009 verRctNonSemanticsSimpleCached: fix fragility (Jeffrey Ryan)
2023-03-18 18:22:01 -04:00
luigi1111
d7821a02c4 Merge pull request #8779
14de562 device: Add ledger Stax device id to device detection (Francois Beutin)
2023-03-18 18:21:25 -04:00
luigi1111
b4519c6bbd Merge pull request #8746
77d883e workflows: update dependencies to fix warnings (selsta)
2023-03-18 18:20:17 -04:00
selsta
cdeb286359 build: prepare v0.18.2.1 2023-03-18 21:23:42 +01:00
tevador
5900ed3706 Add a size limit for tx_extra in tx pool 2023-03-18 20:01:58 +01:00
Jeffrey Ryan
c59e0096b6 verRctNonSemanticsSimpleCached: fix fragility 2023-03-17 18:46:34 -05:00
Francois Beutin
14de562a6f device: Add ledger Stax device id to device detection 2023-03-17 21:27:51 +01:00
selsta
77d883e507 workflows: update dependencies to fix warnings 2023-02-20 04:11:35 +01:00
luigi1111
99be9a044f Merge pull request #8739
dc18efa build: prepare v0.18.2.0 (selsta)
2023-02-15 10:47:13 -05:00
luigi1111
75bec6336a Merge pull request #8738
d8e39bd depends: bump openssl to 1.1.1t (tobtoht)
2023-02-15 10:46:47 -05:00
luigi1111
68a73a2b4d Merge pull request #8721
988056d p2p: add plowsof seed nodes (selsta)
ce4ef6d p2p: remove offline seed nodes (selsta)
2023-02-15 10:44:56 -05:00
selsta
dc18efa3d7 build: prepare v0.18.2.0 2023-02-08 22:18:30 +01:00
tobtoht
d8e39bd381 depends: bump openssl to 1.1.1t
https://www.openssl.org/news/secadv/20230207.txt

Patch can be removed, it was included upstream.
2023-02-07 20:56:20 +01:00
luigi1111
0f15707077 Merge pull request #8723
573a369 blockchain-stats: print any remaining data at end of loop (Howard Chu)
2023-02-06 12:38:11 -05:00
luigi1111
f38b07335a Merge pull request #8714
15384cc depends: bump hidapi/libusb (tobtoht)
2023-02-06 12:37:48 -05:00
luigi1111
057a77a09f Merge pull request #8706
f456b3f Demote large pages warning to mdebug (SChernykh)
480b050 RandomX: print VM allocation warnings only once (SChernykh)
2023-02-06 12:36:10 -05:00
Howard Chu
573a369a8a blockchain-stats: print any remaining data at end of loop
Fix #8711
2023-01-29 11:09:02 +00:00
selsta
988056dc09 p2p: add plowsof seed nodes 2023-01-27 14:17:54 +01:00
selsta
ce4ef6da96 p2p: remove offline seed nodes 2023-01-27 14:17:54 +01:00
tobtoht
15384cc135 depends: bump hidapi/libusb
fixes Trezor connectivity issues on Windows 10/11

Co-authored-by: selsta <selsta@sent.at>
2023-01-25 21:52:42 +01:00
SChernykh
f456b3f023 Demote large pages warning to mdebug 2023-01-17 18:16:47 +01:00
SChernykh
480b050cc3 RandomX: print VM allocation warnings only once 2023-01-11 19:18:41 +01:00
luigi1111
c48f572e46 Merge pull request #8676
29208a3 Cache successful erRctNonSemanticsSimple calls (SChernykh)
2023-01-11 12:28:08 -05:00
luigi1111
f73a2b1587 Merge pull request #8683
cbc297a common: add missing includes (selsta)
2023-01-11 12:13:23 -05:00
luigi1111
1d20b8171d Merge pull request #8678
f698f2b Refactored rx-slow-hash.c (SChernykh)
2023-01-11 12:12:28 -05:00
luigi1111
b0ea7cb528 Merge pull request #8654
5973985 workflows: set a public DNS when doing tests (selsta)
2023-01-11 11:43:59 -05:00
luigi1111
153819fc4c Merge pull request #8649
2c24322 DNSResolver: fix not handling hostnames without dot characters [release] (Jeffrey Ryan)
2023-01-11 11:41:56 -05:00
luigi1111
cbc5cf43f2 Merge pull request #8644
38d4811 p2p: fix exclusive node DNS resolution for certain hosts [release] (Jeffrey Ryan)
2023-01-11 11:40:13 -05:00
luigi1111
1976c9afa0 Merge pull request #8641
146cac0 p2p: fix back ping to discover healthy peers to connect to (j-berman)
2023-01-11 11:39:15 -05:00
SChernykh
29208a33cb Cache successful verRctNonSemanticsSimple calls 2022-12-20 22:19:00 +01:00
selsta
cbc297acfb common: add missing includes 2022-12-18 19:47:01 +01:00
SChernykh
f698f2b708 Refactored rx-slow-hash.c
- Straight-forward call interface: `void rx_slow_hash(const char *seedhash, const void *data, size_t length, char *result_hash)`
- Consensus chain seed hash is now updated by calling `rx_set_main_seedhash` whenever a block is added/removed or a reorg happens
- `rx_slow_hash` will compute correct hash no matter if `rx_set_main_seedhash` was called or not (the only difference is performance)
- New environment variable `MONERO_RANDOMX_FULL_MEM` to force use the full dataset for PoW verification (faster block verification)
- When dataset is used for PoW verification, dataset updates don't stall other threads (verification is done in light mode then)
- When mining is running, PoW checks now also use dataset for faster verification
2022-12-14 07:21:00 +01:00
luigi1111
8cb10345d6 Merge pull request #8642
8c53995 Fix static builds for Ubuntu 22.04 (AgoraDesk / LocalMonero)
2022-12-01 01:13:30 -06:00
luigi1111
47b41eabfe Merge pull request #8636
02b24cb workflows: ubuntu 18.04 is deprecated (selsta)
2022-12-01 01:12:53 -06:00
luigi1111
abd37fcf5b Merge pull request #8628
1bb5d25 Fix dandelion++ fluff/stem bug with local txes (Lee Clagett)
2022-12-01 01:11:14 -06:00
luigi1111
cce309512c Merge pull request #8615
85c9fe5 wallet2: fix create view-only wallet from existing wallet (j-berman)
2022-12-01 01:06:16 -06:00
luigi1111
f5d701c550 Merge pull request #8611
401dda5 wallet_api: take priority into account when estimating fee (selsta)
2022-12-01 01:05:40 -06:00
luigi1111
d05298358c Merge pull request #8604
cbf636c workflows: build gitian on tag (selsta)
2022-12-01 01:04:09 -06:00
selsta
5973985148 workflows: set a public DNS when doing tests 2022-11-29 00:09:44 +01:00
Jeffrey Ryan
2c2432245f DNSResolver: fix not handling hostnames without dot characters [release]
Unrelated, but similar code-wise to #8643. There is a check in `DNSResolver` which automatically fails to resolve hostnames which do not contain the `.` character. This PR removes that check.
2022-11-21 21:16:16 -06:00
Jeffrey Ryan
38d4811c89 p2p: fix exclusive node DNS resolution for certain hosts [release]
Fixes #8633. The function `append_net_address` did not parse hostname + port addresses (e.g. `bar:29080`) correctly if the hostname did not contain a `'.'` character.

@vtnerd comments 1

clear up 2nd conditional statement
2022-11-17 18:57:04 -06:00
selsta
cbf636c7a9 workflows: build gitian on tag 2022-11-17 02:48:22 +01:00
AgoraDesk / LocalMonero
8c53995a88 Fix static builds for Ubuntu 22.04
Link libbsd, libmd, libprotokit for ZMQ to fix static builds for Ubuntu 22.04
2022-11-16 12:08:04 -05:00
j-berman
146cac02ca p2p: fix back ping to discover healthy peers to connect to 2022-11-15 18:02:25 -08:00
selsta
02b24cb353 workflows: ubuntu 18.04 is deprecated 2022-11-14 02:16:31 +01:00
luigi1111
e6f9c0013b Merge pull request #8594
d7445b5 workflows: ubuntu 18.04 is deprecated (selsta)
2022-10-28 00:53:08 -04:00
luigi1111
5d4ace8cae Merge pull request #8578
07f8e9e epee: dont shrink slice when storing to binary [release] (Jeffrey Ryan)
2022-10-28 00:51:18 -04:00
Lee Clagett
1bb5d25e31 Fix dandelion++ fluff/stem bug with local txes 2022-10-25 16:01:09 -04:00
j-berman
85c9fe515d wallet2: fix create view-only wallet from existing wallet 2022-10-18 13:47:50 -05:00
selsta
401dda5f10 wallet_api: take priority into account when estimating fee 2022-10-13 03:36:51 +02:00
luigi1111
66184f3085 Merge pull request #8597
853171b build: prepare v0.18.1.2 (selsta)
2022-09-27 17:31:52 -05:00
selsta
853171bbf0 build: prepare v0.18.1.2 2022-09-26 22:41:36 +02:00
luigi1111
1f27fdf6a5 Merge pull request #8588
802c4bb Move update_checkpoints() to a later stage (SChernykh)
2022-09-26 15:00:59 -05:00
luigi1111
0bef4265ac Merge pull request #8585
5ffa31c wallet2: fail to establish daemon cxn == 'Disconnected' cxn status (j-berman)
2022-09-26 14:57:58 -05:00
luigi1111
a7b0c93c7d Merge pull request #8582
1cd21bf add an option to force-update multisig key exchange under some circumstances (koe)
2022-09-26 14:55:28 -05:00
luigi1111
9885b8b0f2 Merge pull request #8579
7d358cd repo: remove ldns leftovers (selsta)
09402d0 depends: remove unused Qt package (selsta)
2022-09-26 14:54:58 -05:00
luigi1111
fdb31856dd Merge pull request #8577
6adf03c Second thread pool for IO (SChernykh)
2022-09-26 14:51:54 -05:00
selsta
d7445b576f workflows: ubuntu 18.04 is deprecated
And will soon be removed.
2022-09-24 21:04:28 +02:00
SChernykh
802c4bb0e4 Move update_checkpoints() to a later stage
update_checkpoints() makes a few DNS requests and can take up to 20-30 seconds to complete (3-6 seconds on average). It is currently called from core::handle_incoming_block() which holds m_incoming_tx_lock, so it blocks all incoming transactions and blocks processing while update_checkpoints() is running. This PR moves it to until after a new block has been processed and relayed, to avoid full monerod locking.
2022-09-22 13:06:39 +02:00
j-berman
5ffa31c48e wallet2: fail to establish daemon cxn == "Disconnected" cxn status 2022-09-21 20:12:16 -06:00
koe
1cd21bfba5 add an option to force-update multisig key exchange under some circumstances 2022-09-21 12:51:19 -05:00
selsta
7d358cdb1f repo: remove ldns leftovers 2022-09-20 20:22:31 +02:00
selsta
09402d0edb depends: remove unused Qt package 2022-09-20 20:21:48 +02:00
Jeffrey Ryan
07f8e9e891 epee: dont shrink slice when storing to binary [release] 2022-09-20 12:04:14 -05:00
SChernykh
6adf03cdc5 Second thread pool for IO 2022-09-20 10:22:12 +02:00
luigi1111
7cbae6ca98 Merge pull request #8545
12e7c41 Merge pull request #5 from j-berman/restore-msig-encrypted-seed (Justin Berman)
848a0c0 Fix segfault restoring encrypted multisig seed (j-berman)
401f5d9 Require user ack multisig is experimental to restore (j-berman)
fc8a5d6 multisig: fix #8537 seed restore (suggestions by @UkoeHB) (j-berman)
2022-09-15 16:25:22 -05:00
luigi1111
0be63cffa8 Merge pull request #8544
864a78e wallet2: check wallet compatibility with daemon's hard fork version (j-berman)
2022-09-15 16:23:56 -05:00
j-berman
864a78ee5f wallet2: check wallet compatibility with daemon's hard fork version 2022-09-12 21:23:08 -06:00
luigi1111
af4f97bf66 Merge pull request #8555
e29b2e9 wallet2: ensure imported outputs subaddresses are created (moneromooo-monero)
1d3657a wallet2: better test on whether to allow output import (moneromooo-monero)
0cbf557 allow exporting outputs in chunks (moneromooo-monero)
b03d709 wallet2: fixes for export/import output flow (j-berman)
4b7eb57 wallet2: do not assume imported outputs must be non empty (moneromooo-monero)
5b98beb wallet2: prevent importing outputs in a hot wallet (moneromooo-monero)
0de1571 wallet2: fix missing subaddress indices in 'light' exported outputs (moneromooo-monero)
2022-09-09 12:57:51 -05:00
luigi1111
89f3d46120 Merge pull request #8553
625147e Fix missing semi-colon in error message (j-berman)
2022-09-09 12:56:07 -05:00
luigi1111
3178bbe083 Merge pull request #8552
93db74a rpc: skip bootstrap nodes that are lower than last checkpoint (selsta)
2022-09-09 12:55:40 -05:00
luigi1111
4b6a3fbaa0 Merge pull request #8548
3679925 Windows: fix unicode file path support (tobtoht)
2022-09-09 12:54:58 -05:00
luigi1111
6b9bbadd6b Merge pull request #8534
09ee781 build: prepare v0.18.1.1 (selsta)
2022-09-09 12:50:40 -05:00
Justin Berman
12e7c4188e Merge pull request #5 from j-berman/restore-msig-encrypted-seed
multisig: fix segfault restoring encrypted multisig seed
2022-09-08 00:20:18 +01:00
moneromooo-monero
e29b2e9997 wallet2: ensure imported outputs subaddresses are created
reported by j-berman
2022-09-07 06:22:31 +00:00
moneromooo-monero
1d3657afb5 wallet2: better test on whether to allow output import
Being offline is not a good enough heuristic, so we keep track
of whether the wallet ever refreshed from a daemon, which is a
lot better, and probably the best we can do without manual user
designation (which would break existing cold wallet setups till
the user designates those wallets)
2022-09-07 06:22:31 +00:00
moneromooo-monero
0cbf5571d3 allow exporting outputs in chunks
this will make it easier huge wallets to do so without hitting
random limits (eg, max string size in node).
2022-09-07 06:22:07 +00:00
j-berman
848a0c05b0 Fix segfault restoring encrypted multisig seed 2022-09-06 23:21:25 -06:00
j-berman
625147e577 Fix missing semi-colon in error message
Co-authored-by: woodser <woodser@protonmail.com>
2022-09-06 18:37:25 -06:00
j-berman
b03d7091f7 wallet2: fixes for export/import output flow
- only allow offline wallets to import outputs
- don't import empty outputs
- export subaddress indexes when exporting outputs
2022-09-06 17:20:23 -06:00
selsta
93db74a91e rpc: skip bootstrap nodes that are lower than last checkpoint 2022-09-06 22:09:39 +02:00
moneromooo-monero
4b7eb573b2 wallet2: do not assume imported outputs must be non empty 2022-09-06 18:25:48 +00:00
moneromooo-monero
5b98bebad1 wallet2: prevent importing outputs in a hot wallet 2022-09-06 18:25:48 +00:00
moneromooo-monero
0de1571abd wallet2: fix missing subaddress indices in "light" exported outputs 2022-09-06 18:25:45 +00:00
selsta
09ee78197c build: prepare v0.18.1.1 2022-09-06 20:22:29 +02:00
j-berman
401f5d967b Require user ack multisig is experimental to restore 2022-09-06 10:33:33 -06:00
tobtoht
3679925331 Windows: fix unicode file path support 2022-09-02 12:28:57 +02:00
j-berman
fc8a5d68f1 multisig: fix #8537 seed restore (suggestions by @UkoeHB)
- spend secret key is no longer the sum of multisig key shares;
no need to check that is the case upon restore.
- restoring a multisig wallet from multisig info means that the
wallet must have already completed all setup rounds. Upon restore,
set the number of rounds completed accordingly.
2022-09-01 16:25:28 -07:00
luigi1111
57e57c239b Merge pull request #8491
876c08d Bump Gitian build instructions to v0.18.1.0 [Release Branch] (Seth For Privacy)
2022-08-22 22:51:26 -05:00
Seth For Privacy
876c08db53 Bump Gitian build instructions to v0.18.1.0 [Release Branch] 2022-08-10 09:41:16 -04:00
luigi1111
727bc5b687 Merge pull request #8492
1287074 randomx: update submodule (selsta)
2022-08-09 22:34:23 -05:00
luigi1111
b9e8504cfb Merge pull request #8467
fac7c43 continue pool pruning even if a tx can't be found (j-berman)
2022-08-09 17:43:32 -05:00
luigi1111
68537fa27a Merge pull request #8463
265d6ca device: set ledger min app version (selsta)
2022-08-09 17:42:25 -05:00
luigi1111
dc2f548a68 Merge pull request #8470
309f6ba build: prepare v0.18.1.0 (selsta)
2022-08-09 15:00:16 -05:00
luigi1111
5c33f40cd8 Merge pull request #8455
099fc1f Fixed get_block_template_backlog performance (SChernykh)
2022-08-08 20:29:56 -05:00
luigi1111
72490ca04f Merge pull request #8483
6075be9 feat(trezor): add HF15 support, BP+ (Dusan Klinec)
2022-08-07 21:35:01 -05:00
luigi1111
a50cceb8d0 Merge pull request #8466
2b83d00 ledger support for hf 15 (BP+, view tags) (j-berman)
2022-08-07 21:34:10 -05:00
luigi1111
3b6eb11a88 Merge pull request #8454
c0f3c5b Fix use of rtxn without a mdb_txn_safe wrapper (Howard Chu)
2022-08-07 21:33:25 -05:00
luigi1111
90125931ad Merge pull request #8451
8cc3c9a Publish submitted txs via zmq (j-berman)
2022-08-07 21:32:45 -05:00
j-berman
2b83d00a9b ledger support for hf 15 (BP+, view tags) 2022-08-06 15:04:16 -07:00
Dusan Klinec
6075be9cc8 feat(trezor): add HF15 support, BP+
- BP+ support added for Trezor
- old Trezor firmware version support removed, code cleanup
2022-08-05 14:27:16 +02:00
selsta
309f6ba3f5 build: prepare v0.18.1.0 2022-07-28 23:14:02 +02:00
j-berman
fac7c43644 continue pool pruning even if a tx can't be found 2022-07-26 17:28:02 -07:00
selsta
265d6ca7aa device: set ledger min app version 2022-07-26 18:23:08 +02:00
selsta
1287074d0f randomx: update submodule 2022-07-26 18:22:45 +02:00
SChernykh
099fc1f8a9 Fixed get_block_template_backlog performance
Before the fix, it processed all transactions in the mempool which could be very slow when mempool grows to several MBs in size. I observed `get_block_template_backlog` taking up to 15 seconds of CPU time under high mempool load.

After the fix, only transactions that can potentially be mined in the next block will be processed (a bit more than the current block median weight).
2022-07-22 13:50:21 +02:00
Howard Chu
c0f3c5b577 Fix use of rtxn without a mdb_txn_safe wrapper 2022-07-22 12:30:14 +01:00
j-berman
8cc3c9af4d Publish submitted txs via zmq 2022-07-21 11:53:31 -07:00
luigi1111
b6a029f222 Merge pull request #8435
cf3be99 Template hash func to fix compiler error on < gcc-6 (j-berman)
2022-07-15 11:43:15 -04:00
luigi1111
9df069f4ce Merge pull request #8426
a82fba4 address PR comments (j-berman)
3be1dbd connection: fix implementation (anon)
724ff21 connection: add segfault and deadlocks demo (anon)
2022-07-15 11:25:11 -04:00
luigi1111
f982163fc9 Merge pull request #8425
fe5d1be build: prepare v0.18.0.0 (selsta)
2022-07-15 11:23:54 -04:00
luigi1111
4792ceefb1 Merge pull request #8414
2ba391f hardforks: set mainnet and stagenet v15/16 fork height (selsta)
2022-07-15 11:22:01 -04:00
luigi1111
070c3d6b0f Merge pull request #8433
db8181a wallet2: force using output distribution for ringct outs (tobtoht)
2022-07-14 22:15:27 -04:00
luigi1111
02cbccc529 Merge pull request #8432
edcc094 derive multisig tx secret keys from an entropy source plus the tx inputs' key images (koe)
2022-07-14 22:14:41 -04:00
luigi1111
d912444a4a Merge pull request #7986
5770265 wallet2: keep around transaction prefix for confirmed transfers (tobtoht)
2022-07-14 12:54:39 -04:00
j-berman
cf3be9926f Template hash func to fix compiler error on < gcc-6 2022-07-13 22:44:43 -07:00
selsta
fe5d1bef56 build: prepare v0.18.0.0 2022-07-13 22:07:31 +02:00
koe
edcc094558 derive multisig tx secret keys from an entropy source plus the tx inputs' key images 2022-07-13 12:40:34 -05:00
luigi1111
cfdee9ba69 Merge pull request #8421
bd1e7c5 wallet2: prevent crash when reading tx w/fewer outputs than expected (j-berman)
2022-07-13 00:39:54 -04:00
luigi1111
6fed8c2d9f Merge pull request #8149
c7b2944 multisig: fix critical vulnerabilities in signing (anon)
2022-07-13 00:38:29 -04:00
j-berman
a82fba4b7b address PR comments 2022-07-08 15:10:03 -07:00
anon
3be1dbd096 connection: fix implementation 2022-07-05 22:33:34 -07:00
anon
724ff21447 connection: add segfault and deadlocks demo 2022-07-05 22:31:26 -07:00
luigi1111
8f48f46495 Merge pull request #8413
8e9c60a README: depends has only been tested on ubuntu 18.04 and 20.04 (selsta)
2022-07-06 00:02:59 -05:00
luigi1111
e32b7a5598 Merge pull request #8412
83aa817 (fix): Confusingly named CI-Job (Klaus Frank)
2022-07-06 00:02:30 -05:00
luigi1111
4476c35fc8 Merge pull request #8408
09a597b wallet2: don't use DNS to obtain segregation heights (tobtoht)
2022-07-06 00:01:59 -05:00
luigi1111
cea2498e95 Merge pull request #8404
50ccc7e wallet2: remove obsolete rpc version check (tobtoht)
2022-07-06 00:01:29 -05:00
luigi1111
0f91416ab6 Merge pull request #8400
6f3abbe Depends: Unbound disable getentropy()/reallocarray() (glibc < 2.26) (TheCharlatan)
2022-07-06 00:00:56 -05:00
luigi1111
7a118f08f4 Merge pull request #8394
4278a3a cryptonote_basic: catch crypto api errors (moneromooo-monero)
2022-07-06 00:00:24 -05:00
luigi1111
5a3c77be18 Merge pull request #8391
41b1a6b simplewallet: print usage when given no args (hinto.janaiyo)
2022-07-05 23:59:59 -05:00
luigi1111
6e89d35541 Merge pull request #8390
d486c03 utils: add fish shell completions (Leo Nerone)
2022-07-05 23:59:25 -05:00
luigi1111
45a44aa45f Merge pull request #8388
04c0da2 Chunk /gettransactions to avoid hitting restricted RPC limit (tobtoht)
2022-07-05 23:58:46 -05:00
luigi1111
969316685b Merge pull request #8371
16f8e04 Remove erraneous commas (Luke Parker)
da0715e Improve consistency between on_money_received and on_money_received_unconfirmed (Luke Parker)
2022-07-05 23:58:06 -05:00
j-berman
bd1e7c5635 wallet2: prevent crash when reading tx w/fewer outputs than expected 2022-07-05 21:39:59 -07:00
luigi1111
b54d5ae383 Merge pull request #8384
8460fcc Revert 'Merge pull request #7937' (j-berman)
2022-07-03 17:29:46 -05:00
luigi1111
aa0b4fc7cc Merge pull request #8358
fb3f7ce clang warning fix for #8338 (Jeffrey Ryan)
2022-07-03 17:28:13 -05:00
luigi1111
e2e5fbf6a6 Merge pull request #8357
bc05d2d README.md: Add v15/v16 network upgrade (garth-xmr)
2022-07-03 17:27:31 -05:00
luigi1111
82cde936c3 Merge pull request #8356
de2f0d0 wallet_api: add scanTransactions function (selsta)
2022-07-03 17:26:35 -05:00
luigi1111
622f251fa1 Merge pull request #8296
61d0712 Gitian: refresh the stale Monero dir via --setup switch (mj-xmr)
2022-07-03 17:26:04 -05:00
luigi1111
30a9183091 Merge pull request #7774
ade464a ITS#9385 fix using MDB_NOSUBDIR with nonexistent file (Kris Zyp)
033a32a Remove check is_directory check on lmdb path (Howard Chu)
b096e16 Revert 'db_lmdb: test for mmap support at init time' (Howard Chu)
493577a Silence spurious fallthru warning (Howard Chu)
b46a60e Fix rawpart flag collision (Howard Chu)
4e7586c More RAWPART support (Howard Chu)
747f5d3 Preliminary raw partition support (Howard Chu)
2022-07-03 17:24:47 -05:00
selsta
2ba391f02c hardforks: set mainnet and stagenet v15/16 fork height 2022-07-01 01:49:59 +02:00
Leo Nerone
d486c0322f utils: add fish shell completions
Fish shell completions for monerod, monero-wallet-cli, and monero-wallet-rpc.
2022-06-30 19:38:49 -03:00
anon
c7b2944f89 multisig: fix critical vulnerabilities in signing 2022-06-30 12:56:40 -05:00
selsta
8e9c60a682 README: depends has only been tested on ubuntu 18.04 and 20.04 2022-06-29 05:19:04 +02:00
Klaus Frank
83aa817b63 (fix): Confusingly named CI-Job
Rename the "build-macos" job within "depends", as it is not building on macOS as the similarly named job within build.yml does. Also, both names overlap which is confusing when looking for step-by-step build instruction examples or when looking at the logfile.
2022-06-29 04:51:43 +02:00
tobtoht
09a597ba28 wallet2: don't use DNS to obtain segregation heights 2022-06-28 23:12:03 +02:00
tobtoht
04c0da2986 Chunk /gettransactions to avoid hitting restricted RPC limit 2022-06-27 21:23:56 +02:00
tobtoht
db8181adf8 wallet2: force using output distribution for ringct outs
Co-authored-by: j-berman <justinberman@protonmail.com>
2022-06-25 13:06:11 +02:00
tobtoht
50ccc7e726 wallet2: remove obsolete rpc version check 2022-06-24 21:58:07 +02:00
TheCharlatan
6f3abbead5 Depends: Unbound disable getentropy()/reallocarray() (glibc < 2.26) 2022-06-22 23:39:03 +02:00
moneromooo-monero
4278a3a7e3 cryptonote_basic: catch crypto api errors 2022-06-20 22:17:57 +00:00
hinto.janaiyo
41b1a6b0dd simplewallet: print usage when given no args 2022-06-20 08:15:07 -04:00
j-berman
8460fcc32b Revert "Merge pull request #7937"
This reverts commit 50410d1f7d, reversing
changes made to d054def63f.
2022-06-13 18:44:09 +01:00
mj-xmr
61d0712ed5 Gitian: refresh the stale Monero dir via --setup switch 2022-06-06 15:52:36 +02:00
Kris Zyp
ade464a5a0 ITS#9385 fix using MDB_NOSUBDIR with nonexistent file 2022-06-03 16:46:59 +01:00
Howard Chu
033a32a20b Remove check is_directory check on lmdb path
The check interferes with raw device/partition support.
2022-06-03 16:46:47 +01:00
Howard Chu
b096e16699 Revert "db_lmdb: test for mmap support at init time"
This reverts commit bd96536637.

The check interferes with raw device/partition support.
2022-06-03 16:46:35 +01:00
Howard Chu
493577a6cd Silence spurious fallthru warning 2022-06-03 16:46:18 +01:00
Howard Chu
b46a60e390 Fix rawpart flag collision 2022-06-03 16:46:04 +01:00
Howard Chu
4e7586c9e4 More RAWPART support
Use mmap to read and initialize the meta pages, raw device
may not support read/write syscalls.
2022-06-03 16:45:49 +01:00
Howard Chu
747f5d3594 Preliminary raw partition support
Autodetects that a block device is being used.
2022-06-03 16:45:39 +01:00
Luke Parker
16f8e042b5 Remove erraneous commas 2022-06-01 19:38:42 -04:00
Luke Parker
da0715e503 Improve consistency between on_money_received and on_money_received_unconfirmed
unconfirmed solely uses a - b, and received now accepts b so it can 
provide more detailed logs on what occurred (printing a - b, yet with a 
and b).
2022-06-01 18:20:11 -04:00
Jeffrey Ryan
fb3f7cebbf clang warning fix for #8338
Unlike some other warnings, clang does not have a `stringop-overflow` group so it doesn't recognize the `#pragma GCC ...` directive in #8338
2022-05-27 20:27:46 -05:00
luigi1111
9750e1fa10 Merge pull request #8340
08080df unit_tests: add more sha256sum test cases (Jeffrey Ryan)
a66a52d common: update sha256sum to use OpenSSL 3.0 API (Jeffrey Ryan)
2022-05-26 21:26:42 -05:00
luigi1111
72cba50458 Merge pull request #8338
5858f05 GCC: Fix -Wstringop-overflow= warnings (Jeffrey Ryan)
2022-05-26 21:25:30 -05:00
luigi1111
e8252ef99b Merge pull request #8337
1164874 src, epee: fix a couple compiler warnings (selsta)
2022-05-26 21:25:06 -05:00
luigi1111
1ff2b02064 Merge pull request #8331
fde7c96 wallet2: fix spurious reorg detection with untrusted nodes (moneromooo-monero)
2022-05-26 21:24:38 -05:00
luigi1111
f9d789d68c Merge pull request #8330
2dab31f Don't exclusively drop tor/i2p outgoing cxns in idle loop (j-berman)
2022-05-26 21:23:38 -05:00
luigi1111
f96cf86532 Merge pull request #8328
2979474 disable multisig by default (moneromooo-monero)
2022-05-26 21:22:52 -05:00
luigi1111
d52b7d0e99 Merge pull request #8326
b9d2c78 fix backoff delay logic when re-relaying txs (j-berman)
2022-05-26 21:21:18 -05:00
luigi1111
7b0b06af84 Merge pull request #8325
62914e7 Ignore gitian build files (Jeffrey Ryan)
2022-05-26 21:20:49 -05:00
luigi1111
7f2f7ce404 Merge pull request #8324
bae4a1a Don't send peerlist larger than max allowed (j-berman)
2022-05-26 21:20:23 -05:00
luigi1111
6d0df2f041 Merge pull request #8318
af08c83 utils: delete outdated windows build script (selsta)
2022-05-26 21:19:40 -05:00
garth-xmr
bc05d2dfa8 README.md: Add v15/v16 network upgrade
Remade #8270 (includes edits from UkoeHB)
2022-05-26 19:20:51 +00:00
selsta
de2f0d0102 wallet_api: add scanTransactions function 2022-05-26 03:51:31 +02:00
luigi1111
97271b7d20 Merge pull request #8349
026dbc8 Windows build: fix narrowing error for WaitForSingleObject (Jeffrey Ryan)
2022-05-23 14:37:42 -05:00
Jeffrey Ryan
026dbc89bf Windows build: fix narrowing error for WaitForSingleObject
`WaitForSingleObject` returns a `DWORD`, not an int, so assign `retval` as such and it should fix the error.
2022-05-23 02:07:56 -05:00
j-berman
2dab31f62f Don't exclusively drop tor/i2p outgoing cxns in idle loop 2022-05-18 09:54:21 -07:00
Jeffrey Ryan
08080df2d9 unit_tests: add more sha256sum test cases 2022-05-18 01:34:20 +02:00
Jeffrey Ryan
a66a52d144 common: update sha256sum to use OpenSSL 3.0 API
As of OpenSSL 3.0, `SHA256_Init`, `SHA256_Update`, and `SHA256_Final`
are deprectaed in favor of the higher-level `EVP_*` class of functions.
This causes compiler warnings, and sooner or later, will cause build
errors as these functions are excluded from distro headers.

Also add some documentation.
2022-05-18 01:34:16 +02:00
moneromooo-monero
2979474221 disable multisig by default
There are vulnerabilities in multisig protocol if the parties do not
trust each other, and while there is a patch for it, it has not been
throroughly reviewed yet, so it is felt safer to disable multisig by
default for now.
If all parties in a multisig setup trust each other, then it is safe
to enable multisig.
2022-05-17 19:52:03 +00:00
Jeffrey Ryan
5858f05f9b GCC: Fix -Wstringop-overflow= warnings
Resolves #8320
2022-05-16 19:13:02 -05:00
selsta
1164874afc src, epee: fix a couple compiler warnings 2022-05-17 00:33:10 +02:00
luigi1111
6e60919e6d Merge pull request #8315
1ddb1ee Give better error messages when missing SSL files (Jeffrey Ryan)
2022-05-16 13:53:16 -05:00
luigi1111
44c0470e1e Merge pull request #8312
5c27fd8 depends: Package cleanup (Howard Chu)
c1d47eb Update randomx: fix Mac linking error (Howard Chu)
02e6af2 Update CI for aarch64 mac build (selsta)
7ea1e21 Make Mac SDK into a regular depends package (Howard Chu)
e81ab9b Silence some protobuf link warnings (Howard Chu)
fe5c2ae Fix arm64 darwin package defs (Howard Chu)
fb68465 Boost 1.64 doesn't recognize arm64 darwin (Howard Chu)
617f908 more... update to clang 9.0.0 (Howard Chu)
83ae3ad Split native_clang out of native_cctools (Howard Chu)
1008318 Update native_cctools for newer SDK support (Howard Chu)
a86c4cb Update to MacOSX SDK 11.1, add Mac M1 (Howard Chu)
2022-05-16 13:52:33 -05:00
luigi1111
5b9724b03d Merge pull request #8308
f63f7dc wallet2: fix a couple unused variable warnings (selsta)
2022-05-16 13:51:18 -05:00
luigi1111
3d1e5db44d Merge pull request #8307
b7978cf Remove src/serialization/list.h (Jeffrey)
2022-05-16 13:50:52 -05:00
luigi1111
f555e3855b Merge pull request #8266
ab9766e depends: update unbound to 1.15.0 (selsta)
2022-05-16 13:50:27 -05:00
luigi1111
f4669bfa2b Merge pull request #8046
df2e680 wallet2: speedup large tx construction: reserve vector memory (moneromooo-monero)
38cdf01 wallet2: speedup large tx construction: batch ringdb lookups (Crypto City)
353cd53 wallet2: speedup large tx construction: no pointless clsag generation (Crypto City)
2b95178 wallet2: speedup large tx construction: batch ringdb updates (Crypto City)
c9cf0b7 wallet2: speedup large tx construction: cache public key validity (moneromooo-monero)
2022-05-16 13:48:23 -05:00
moneromooo-monero
fde7c96b5c wallet2: fix spurious reorg detection with untrusted nodes
When forced to deal with an untrusted node, a wallet will quantize
its current height to disguise the real height to the adversary, to
try and minimize the daemon's ability to distinguish returning
wallets.
Daemons will thus return more blocks than the wallet needs, starting
from earlier in the chain. These extra blocks will be disregarded
by the wallet, which had already scanned them.
However, for the purposes of reorg size detection, the wallet assumes
all blocks the daemon sends are different, which is only correct if
the wallet hasn't been coy, which is only the case for trusted
daemons (which you should use). This causes an issue when the size
of this "fake reorg" is above the sanity check threshold at which
the wallet refuses a reorg.
To fix this, the reorg size check is moved later on, when the reorg
is about to actually happen, after the wallet has checked which
blocks are actually different from the ones it expects.
2022-05-15 11:57:37 +00:00
moneromooo-monero
df2e680825 wallet2: speedup large tx construction: reserve vector memory
2.8 seconds -> 2.6 seconds on a test case
2022-05-13 17:43:22 +00:00
Crypto City
38cdf01c64 wallet2: speedup large tx construction: batch ringdb lookups
3.3 seconds -> 2.8 seconds on a test case
2022-05-13 17:43:22 +00:00
Crypto City
353cd5355e wallet2: speedup large tx construction: no pointless clsag generation
4.1 seconds -> 3.3 seconds on a test case
2022-05-13 17:43:21 +00:00
Crypto City
2b95178897 wallet2: speedup large tx construction: batch ringdb updates
5.2 seconds -> 4.1 seconds on a test case
2022-05-13 17:43:20 +00:00
moneromooo-monero
c9cf0b78f8 wallet2: speedup large tx construction: cache public key validity
5.9 second -> 5.2 seconds on a test case
2022-05-13 17:43:16 +00:00
Jeffrey Ryan
62914e7e3d Ignore gitian build files 2022-05-12 15:42:48 -05:00
j-berman
b9d2c788bc fix backoff delay logic when re-relaying txs 2022-05-12 08:39:51 -07:00
j-berman
bae4a1ad8f Don't send peerlist larger than max allowed 2022-05-11 18:41:24 -07:00
luigi1111
8349cfe4a6 Merge pull request #8321
7d6c748 Set hf v15 testnet fork heights (j-berman)
2022-05-10 16:57:53 -05:00
luigi1111
c76e33bc44 Merge pull request #8304
0226df9 More tests for view tags (SChernykh)
2022-05-10 16:57:23 -05:00
luigi1111
d58ea37a8d Merge pull request #8302
41da2fe Update copyright to 2022 for Hardfork files (Akrit)
2022-05-10 16:56:39 -05:00
luigi1111
9e71901346 Merge pull request #8301
6ef945d Doxygen: Hide anonymous namespaces from documentation by default (Jeffrey)
2022-05-10 16:55:36 -05:00
luigi1111
8480575cec Merge pull request #8300
070e41d Change Github to GitHub (Abdullah)
2022-05-10 16:53:48 -05:00
luigi1111
fbd1f1e476 Merge pull request #8293
4f08bcd refactor(bp+): save one inversion, use sc_muladd (Dusan Klinec)
2022-05-10 16:51:59 -05:00
luigi1111
ae377a7b23 Merge pull request #8281
ca5921d readme: arch/fedora deps + small fixes (hinto.janaiyo)
2022-05-10 16:51:18 -05:00
luigi1111
638b325202 Merge pull request #8280
fc9b77d Changes to PORTABLE_STORAGE.md (Jeffrey)
34941ac Docs: Add documentation for EPEE Portable Storage (Jeffrey)
2022-05-10 16:50:48 -05:00
luigi1111
7cdbd25042 Merge pull request #8279
f7d50cb EPEE: Remove gzip_encoding.h (Jeffrey)
2022-05-10 16:50:17 -05:00
luigi1111
3f58b8938a Merge pull request #8278
63c7f8b EPEE: Remove hmac-md5 (Jeffrey)
2022-05-10 16:49:47 -05:00
luigi1111
436ca13722 Merge pull request #8277
baee2c0 Preserve commitment format inside transactions (kayabaNerve)
2022-05-10 16:49:13 -05:00
luigi1111
156151396e Merge pull request #8262
268a039 Optimized keccak implementation (SChernykh)
2022-05-10 16:47:13 -05:00
luigi1111
7bdda14b8d Merge pull request #8235
9c42b72 CMake: Add missing BUILD_SHARED_LIBS option (mj-xmr)
2022-05-10 16:45:05 -05:00
luigi1111
5e46ab53e7 Merge pull request #8226
002bf9c Fix typo: SERIALIZE_TYPE_DUOBLE (Jeffrey)
2022-05-10 16:43:26 -05:00
luigi1111
c1625a8928 Merge pull request #8220
0d6ecb1 multisig: add post-kex verification round to check that all participants have completed the multisig address (koe)
2022-05-10 16:41:02 -05:00
Howard Chu
5c27fd853f depends: Package cleanup
All patching should be in _preprocess_cmd. config_cmd should just run
configure and nothing else before it, otherwise $PATH is broken when it runs.

Also remove redundant settings to configure, _autoconf already sets them.
We leave explicit AR_FLAGS settings because the builtin rule uses ARFLAGS,
and so would leave AR_FLAGS unset otherwise.
2022-05-10 21:06:03 +01:00
Howard Chu
c1d47eb476 Update randomx: fix Mac linking error
Also silence randomx malloc exceptions
2022-05-10 21:05:55 +01:00
j-berman
7d6c7489a7 Set hf v15 testnet fork heights 2022-05-09 14:38:54 -07:00
selsta
02e6af2fda Update CI for aarch64 mac build 2022-05-09 17:38:48 +01:00
Howard Chu
7ea1e214c5 Make Mac SDK into a regular depends package 2022-05-09 17:38:48 +01:00
Howard Chu
e81ab9bc2c Silence some protobuf link warnings
4 warnings remain but it's better than before
2022-05-09 17:38:48 +01:00
selsta
af08c83e25 utils: delete outdated windows build script 2022-05-07 21:49:02 +02:00
hinto.janaiyo
ca5921d75b readme: arch/fedora deps + small fixes 2022-05-07 10:26:27 -04:00
Howard Chu
fe5c2aec35 Fix arm64 darwin package defs 2022-05-06 16:45:45 +01:00
Howard Chu
fb68465c61 Boost 1.64 doesn't recognize arm64 darwin 2022-05-06 16:45:45 +01:00
Howard Chu
617f9082fe more... update to clang 9.0.0 2022-05-06 16:45:45 +01:00
Howard Chu
83ae3ad178 Split native_clang out of native_cctools
Needed for compiling native_libtapi
2022-05-06 16:45:45 +01:00
Howard Chu
1008318715 Update native_cctools for newer SDK support 2022-05-06 16:45:45 +01:00
Jeffrey Ryan
1ddb1ee819 Give better error messages when missing SSL files
While copying my data dir to another drive, I missed copying the rpc_ssl.key file b/c of the file permissions.
This change will give a much more clear, descriptive error in that scenario.
2022-05-05 21:48:19 -05:00
Howard Chu
a86c4cb75f Update to MacOSX SDK 11.1, add Mac M1 2022-05-04 22:33:40 +01:00
Jeffrey
fc9b77d855 Changes to PORTABLE_STORAGE.md
* More information about array entries (especially nesting)
* Varint encoding examples
* Expanded string and integer encoding information
2022-05-04 11:08:48 -05:00
selsta
f63f7dc7e2 wallet2: fix a couple unused variable warnings 2022-05-02 21:28:40 +02:00
Jeffrey
b7978cfd4e Remove src/serialization/list.h
Unused ;)

Also a comment from serialization.h
2022-05-02 12:08:05 -05:00
SChernykh
0226df9fae More tests for view tags
P2Pool can create transactions with more than 128 outputs, which make output_index's varint larger than 1 byte. Added this test case.
2022-04-29 22:53:59 +02:00
koe
0d6ecb1136 multisig: add post-kex verification round to check that all participants have completed the multisig address 2022-04-29 14:04:59 -05:00
Akrit
41da2fe6f3 Update copyright to 2022 for Hardfork files
Update Makefile and LICENSE
2022-04-29 11:12:36 +02:00
Jeffrey
6ef945d9a5 Doxygen: Hide anonymous namespaces from documentation by default
Bonus: little doc fix for net_ssl.h
2022-04-28 19:35:49 -05:00
Abdullah
070e41d88b Change "Github" to "GitHub" 2022-04-27 18:53:03 +01:00
Dusan Klinec
4f08bcd800 refactor(bp+): save one inversion, use sc_muladd 2022-04-26 13:37:11 +02:00
luigi1111
67e5ca9ad6 Merge pull request #8275
9209880 add a sanity check to RPC input data size (moneromooo-monero)
2022-04-25 10:22:03 -05:00
luigi1111
92b3b34464 Merge pull request #8260
50ae6ba Tiny: add .vscode/ to .gitignore (mj-xmr)
2022-04-25 10:20:44 -05:00
luigi1111
a092b943d5 Merge pull request #8249
a14fdf8 Remove /include (Jeffrey)
2022-04-25 10:20:10 -05:00
luigi1111
4541384075 Merge pull request #8248
d1cb9c3 Remove serialization/enableable (Jeffrey)
2022-04-25 10:19:39 -05:00
luigi1111
e13244ea9c Merge pull request #8178
5d388eb Bump ring size to 16 for v15 & remove set default in wallet cli (j-berman)
2022-04-25 10:18:26 -05:00
Jeffrey
34941ac3e1 Docs: Add documentation for EPEE Portable Storage
Ripped directly from @jtgrassie 's monero-binary-rpc repo. It's a very helpful little document and I think it deserves a place in the main repo.
2022-04-23 14:14:36 -05:00
Jeffrey
f7d50cbaa8 EPEE: Remove gzip_encoding.h 2022-04-22 14:32:56 -05:00
Jeffrey
63c7f8ba6e EPEE: Remove hmac-md5 2022-04-22 12:28:17 -05:00
Luke Parker
baee2c06ec Preserve commitment format inside transactions 2022-04-21 18:58:47 -04:00
moneromooo-monero
9209880e9c add a sanity check to RPC input data size
reported by m31007
2022-04-21 22:22:56 +00:00
luigi1111
9f814edbd7 Merge pull request #8254
9df7179 wallet2: use BP+ for cold signing (moneromooo-monero)
2022-04-19 22:21:21 -05:00
luigi1111
d8f73133b1 Merge pull request #8247
b99242f readme: small fixes (hinto.janaiyo)
2022-04-19 22:20:53 -05:00
luigi1111
17dad03870 Merge pull request #8246
6491700 Makefile: fix spelling of CMAKE_BUILD_TYPE value (selsta)
2022-04-19 22:19:47 -05:00
luigi1111
4abbf442b4 Merge pull request #8245
3593a98 simplewallet: fix integrated_address output string (selsta)
2022-04-19 22:18:42 -05:00
luigi1111
5c471005eb Merge pull request #8240
c68d78d randomx: update submodule (selsta)
2022-04-19 22:16:34 -05:00
luigi1111
8ddbe18277 Merge pull request #8232
0f7b20a Added support for Ledger Nano S Plus (Mathias Herberts)
2022-04-19 22:15:10 -05:00
luigi1111
96758a7d05 Merge pull request #8061
ea87b30 Add view tags to outputs to reduce wallet scanning time (j-berman)
2022-04-19 22:14:03 -05:00
hinto.janaiyo
b99242f310 readme: small fixes 2022-04-19 09:00:37 -04:00
selsta
ab9766ef17 depends: update unbound to 1.15.0 2022-04-19 00:31:03 +02:00
j-berman
5d388eb74d Bump ring size to 16 for v15 & remove set default in wallet cli 2022-04-18 14:36:28 -07:00
luigi1111
53bf62d114 Merge pull request #8211
1137142 Change C-cast to static_cast in net_peerlist.h (Jeffrey)
175b411 Change C-style-casts to static_cast in time_helper.h (Jeffrey)
b49ed59 Remove the only 4 non-UTF8 characters in codebase (Jeffrey)
1f25aa2 Factor out move_it_backward from misc_language.h (Jeffrey)
7764d69 Move copyable_atomic into connection_context (Jeffrey)
801568d Refactor out to_nonconst_iterator.h (Jeffrey)
87ec36c Refactor out pragma_comp_defs (Jeffrey)
441c860 Merge functionality of misc_os_dependent into time_helper.h (Jeffrey)
40f02f9 Add Include statements (Jeffrey)
12b1b74 Trimming Fat (Jeffrey
 690ce56 Boring Old Deletes (Jeffrey)
2022-04-18 12:13:32 -05:00
Jeffrey
11371425f5 "Change C-cast to static_cast in net_peerlist.h"
Thanks @mj-xmr: https://github.com/monero-project/monero/pull/8211#discussion_r823870855
2022-04-18 09:55:21 -05:00
Jeffrey
175b4117a9 Change C-style-casts to static_cast in time_helper.h
At the request of @mj-xmr: https://github.com/monero-project/monero/pull/8211#discussion_r822868321
2022-04-18 09:55:21 -05:00
Jeffrey
b49ed59166 Remove the only 4 non-UTF8 characters in codebase
Relevant commit in old PR:
1b798a7042
2022-04-18 09:55:21 -05:00
Jeffrey
1f25aa27c5 Factor out move_it_backward from misc_language.h
Relevant commit from old PR:
330df2952c
2022-04-18 09:55:21 -05:00
Jeffrey
7764d69782 Move copyable_atomic into connection_context
Relevant commit from old PR:
bd0a511995
2022-04-18 09:55:21 -05:00
Jeffrey
801568d0c6 Refactor out to_nonconst_iterator.h
Relevant commit on old PR:
2499269696
2022-04-18 09:55:21 -05:00
Jeffrey
87ec36cacf Refactor out pragma_comp_defs
Relevant commits on the old cleanup PR:
36933c7f5c
21e43de0f3
3c678bb1ce
2022-04-18 09:55:21 -05:00
Jeffrey
441c860738 Merge functionality of misc_os_dependent into time_helper.h
Actions:
1. Remove unused functions from misc_os_dependent.h
2. Move three remaining functions, get_gmt_time, get_ns_count, and get_tick_count into time_helper.h
3. Remove unused functions from time_helper.h
4. Refactor get_ns_count and get_internet_time_str and get_time_interval_string
5. Remove/add includes as needed

Relevant commits on the old PR:
a9fbe52b02
9a59b131c4
7fa9e2817d
2022-04-18 09:55:21 -05:00
Jeffrey
40f02f9d73 Add Include statements 2022-04-18 09:55:20 -05:00
Jeffrey
12b1b74d32 Trimming Fat
Remove unused include statements or unused definitions.
2022-04-18 09:55:20 -05:00
Jeffrey
690ce560b0 Boring Old Deletes
Here lies dozens of unused files. This commit is ONLY file deletions except
for the removing of a couple of #includes and removing filenames from CmakeLists
where appropriate.
2022-04-18 09:55:20 -05:00
SChernykh
268a0393e9 Optimized keccak implementation
All tests were conducted on the same PC (Ryzen 5 5600X running at fixed 4.65 GHz).

Before:
test_cn_fast_hash<32> (100000 calls) - OK: 1 us/call
test_cn_fast_hash<16384> (1000 calls) - OK: 164 us/call

After:
test_cn_fast_hash<32> (100000 calls) - OK: 0 us/call
test_cn_fast_hash<16384> (1000 calls) - OK: 31 us/call

More than 5 times speedup for cn_fast_hash.

Also noticed consistent 1-2% improvement in test_construct_tx results.
2022-04-18 10:01:13 +02:00
j-berman
ea87b30f89 Add view tags to outputs to reduce wallet scanning time
Implements view tags as proposed by @UkoeHB in MRL issue
https://github.com/monero-project/research-lab/issues/73

At tx construction, the sender adds a 1-byte view tag to each
output. The view tag is derived from the sender-receiver
shared secret. When scanning for outputs, the receiver can
check the view tag for a match, in order to reduce scanning
time. When the view tag does not match, the wallet avoids the
more expensive EC operations when deriving the output public
key using the shared secret.
2022-04-18 00:49:53 -07:00
luigi1111
6694597974 Merge pull request #8207
4db6aed CMake: Add missing headers via monero_find_all_headers macro (mj-xmr)
2022-04-18 02:14:04 -05:00
luigi1111
2b999f5398 Merge pull request #7819
b030f20 Fee changes from ArticMine (moneromooo-monero)
9f786f0 epee: allow copying a rolling_median_t object (moneromooo-monero)
2022-04-18 02:12:55 -05:00
mj-xmr
50ae6bafe9 Tiny: add .vscode/ to .gitignore 2022-04-15 09:59:33 +02:00
moneromooo-monero
9df7179aaf wallet2: use BP+ for cold signing
reported by ukoehb
2022-04-10 21:03:09 +00:00
mj-xmr
9c42b728ba CMake: Add missing BUILD_SHARED_LIBS option 2022-04-10 21:25:45 +02:00
moneromooo-monero
b030f20751 Fee changes from ArticMine
https://github.com/ArticMine/Monero-Documents/blob/master/MoneroScaling2021-02.pdf

with a change to use 1.7 instead of 2.0 for the max long term increase rate
2022-04-10 18:13:34 +00:00
moneromooo-monero
9f786f0550 epee: allow copying a rolling_median_t object 2022-04-10 18:13:31 +00:00
Jeffrey
a14fdf8d5a Remove /include
* `IWallet.h` hasn't been touched since 2014, and has been replaced by `src/wallet/api/wallet2_api.h`
* `INode.h` is in a similar situation with `src/p2p/net_node.h`
2022-04-09 23:47:02 -05:00
Jeffrey
d1cb9c393e Remove serialization/enableable
Currently working on an EPEE [ser/de]ialization library for Rust and at first glance, EPEE seemed to have support for optional wrappers. However, after looking into it, this feature appears to be half-baked and unused. Furthermore, adding support for optional values would be better suited to implement at the storage level, in my opinion. That would make parsing DOMs easier and less error-prone. If anyone is currently using this code, please comment. Thanks!

At the time of writing, this PR has no merge conflicts with #8211
2022-04-09 22:53:46 -05:00
selsta
649170053f Makefile: fix spelling of CMAKE_BUILD_TYPE value 2022-04-08 18:22:48 +02:00
selsta
3593a986d8 simplewallet: fix integrated_address output string 2022-04-08 16:20:37 +02:00
luigi1111
f49fc9b487 Merge pull request #8242
6abe3fe tests: integrated_address: remove missing payment id assertion (reemuru)
2022-04-06 15:13:36 -04:00
reemuru
6abe3fee19 tests: integrated_address: remove missing payment id assertion
The integrated address functional test fails in the workflows due
to an assertion for missing payment id that is no longer needed.
Remove the assertion and update the assertion count.

Fixes 7dcfccb: ("wallet_rpc_server: fix make_integrated_address with no payment id")
2022-04-06 06:49:01 -05:00
mj-xmr
4db6aed98c CMake: Add missing headers via monero_find_all_headers macro 2022-04-06 08:12:44 +02:00
selsta
c68d78dde0 randomx: update submodule 2022-04-06 07:22:14 +02:00
luigi1111
c11385591e Merge pull request #8228
1ce9e9c Remove dead code from parserse_base_utils and fix unit tests (Jeffrey)
2022-04-06 00:22:23 -04:00
luigi1111
bb093ec9a8 Merge pull request #8223
17772ef Eliminate dependence on boost::interprocess #8223 (Jeffrey)
2022-04-06 00:19:59 -04:00
luigi1111
f096ac1349 Merge pull request #8215
d1f1947 wallet_rpc_server: support regex for get_accounts tag (reemuru)
2022-04-06 00:16:20 -04:00
luigi1111
9a124f6811 Merge pull request #8213
7dcfccb wallet_rpc_server: fix make_integrated_address with no payment id (moneromooo-monero)
2022-04-06 00:15:40 -04:00
luigi1111
627f04c19a Merge pull request #8212
591c174 Remove footgun doc comment in miner TX validation (Luke Parker)
2022-04-06 00:14:44 -04:00
luigi1111
04e490c8da Merge pull request #8205
0d6fce8 Compil. time: cryptonote_core minus portable_storage header (mj-xmr)
2022-04-06 00:11:14 -04:00
luigi1111
0eb1b570b6 Merge pull request #8197
da9aa1f Copyright: Update to 2022 (mj-xmr)
2022-04-06 00:08:53 -04:00
luigi1111
88a5606795 Merge pull request #8195
3c82958 wallet2: update stagenet rollback blocks (selsta)
2022-04-06 00:07:36 -04:00
luigi1111
ffe439d38a Merge pull request #8180
3f88fdd simplewallet: add option for exporting tx keys (reemuru)
2022-04-06 00:06:58 -04:00
luigi1111
0285c07d7d Merge pull request #8179
ae0a840 wallet2: decrease the amount of data exchanged for output export (moneromooo-monero)
2022-04-06 00:06:20 -04:00
luigi1111
922acb05fd Merge pull request #8053
cf44349 account info text alignment (im)
2022-04-06 00:03:41 -04:00
luigi1111
50410d1f7d Merge pull request #7937
83bb027 Make RPC server functions that read db thread safe (j-berman)
2022-04-06 00:02:47 -04:00
luigi1111
d054def63f Merge pull request #7170
bd27deb Bulletproofs+ (SarangNoether)
b7713cc Precompute initial transcript hash (SarangNoether)
b535d66 Updates from security audit (SarangNoether)
a0d80b1 plug bulletproofs plus into consensus (moneromooo-monero)
75bd004 ringct: a few minor optimizations from review (moneromooo-monero)
a345060 ringct: port some of vtnerd's review changes from BP+ to BP (moneromooo-monero)
4c94cfe store outPk/8 in the tx for speed (moneromooo-monero)
5acdd0e bulletproofs+: some minor cleanup from vtnerd's review (moneromooo-monero)
2022-04-05 23:56:09 -04:00
luigi1111
fb2f822c52 Merge pull request #7153
354e1d9 Make the wallet name optional when locked. (Norman Moeschter)
2022-04-05 23:48:18 -04:00
j-berman
83bb02745a Make RPC server functions that read db thread safe
- grab an lmdb db_rtxn_guard to ensure consistent data from the db
- fixed on_getblockhash error resp when requested height >= blockchain height
- left functions that read shared memory untouched for now
2022-04-05 20:20:12 -07:00
moneromooo-monero
5acdd0e2cb bulletproofs+: some minor cleanup from vtnerd's review 2022-04-05 18:50:23 +00:00
moneromooo-monero
4c94cfecfc store outPk/8 in the tx for speed
It avoids dividing by 8 when deserializing a tx, which is a slow
operation, and multiplies by 8 when verifying and extracing the
amount, which is much faster as well as less frequent
2022-04-05 18:50:22 +00:00
moneromooo-monero
a345060ace ringct: port some of vtnerd's review changes from BP+ to BP 2022-04-05 18:50:21 +00:00
moneromooo-monero
75bd004f4e ringct: a few minor optimizations from review 2022-04-05 18:50:21 +00:00
moneromooo-monero
a0d80b1f95 plug bulletproofs plus into consensus 2022-04-05 18:50:17 +00:00
Sarang Noether
b535d662b9 Updates from security audit
https://suyash67.github.io/homepage/assets/pdfs/bulletproofs_plus_audit_report_v1.1.pdf
2022-04-04 08:23:21 +00:00
Sarang Noether
b7713cce26 Precompute initial transcript hash 2022-04-04 08:23:21 +00:00
Sarang Noether
bd27debb2d Bulletproofs+ 2022-04-04 08:23:21 +00:00
Mathias Herberts
0f7b20a1ce Added support for Ledger Nano S Plus 2022-03-31 18:25:09 +02:00
Jeffrey
1ce9e9cda4 Remove dead code from parserse_base_utils and fix unit tests
* Remove `match_string()`, `match_number()`, and `match_word()`
* Remove `match_word_with_extrasymb()` and `match_word_til_equal_mark()`
* Adapt unit test for `match_number()` to `match_number2()`
* Adapt unit test for `match_string()` to `match_string2()`

Note: the unit tests were testing for the old version of the functions, and
the interfaces for these functions changed slightly, so I had to also edit
the tests.

As of writing, this PR has no merge conflicts with #8211

Additional changes during review:
* Explicitly set up is_[float/signed]_val to be changed before each call
* Structify the tests and fix uninitialized variables
2022-03-30 13:29:32 -05:00
Jeffrey
17772ef53e Eliminate dependence on boost::interprocess #8223
In this repo, `boost::interprocess` was being used soley to make `uint32_t` operations atomic. So I replaced each instance of
`boost::interprocess::ipcdetail::atomic(...)32` with `std::atomic` methods. I replaced member declarations as applicable. For example,
when I needed to change a `volatile uint32_t` into a `std::atomic<uint32_t>`. Sometimes, a member was being used a boolean flag, so
I replaced it with `std::atomic<bool>`.

You may notice that I didn't touch `levin_client_async.h`. That is because this file is entirely unused and will be deleted in PR monero-project#8211.

Additional changes from review:
* Make some local variables const
* Change postfix operators to prefix operators where value was not need
2022-03-30 13:18:32 -05:00
moneromooo-monero
ae0a840fda wallet2: decrease the amount of data exchanged for output export 2022-03-29 08:40:32 +00:00
Jeffrey
002bf9c4fd Fix typo: SERIALIZE_TYPE_DUOBLE 2022-03-25 12:11:08 -05:00
luigi1111
70ceab6c10 Merge pull request #8216
f22051d replace erciccione's seednode with one on haveno's infrastructure (erciccione)
2022-03-18 16:34:16 -05:00
luigi1111
427bd85893 Merge pull request #8187
9bde2db Fixes: Don't require --rpc-login with --rpc-access-control-origins #8168 (Jeffrey)
2022-03-18 16:32:25 -05:00
luigi1111
6a0d973dc9 Merge pull request #8186
f68f927 Undefined behaviour fixes (SChernykh)
2022-03-18 16:31:18 -05:00
luigi1111
4cb3b422e1 Merge pull request #8170
14eb42d systemd: remove outdated torsocks example (selsta)
2022-03-18 16:30:25 -05:00
luigi1111
0ea8519895 Merge pull request #8169
5e201fe rpc: add explicit restricted flag to /get_info (tobtoht)
2022-03-18 16:30:00 -05:00
luigi1111
d9e6baac42 Merge pull request #8158
e5000a9 Balance includes unconfirmed transfers to self (woodser)
2022-03-18 16:28:16 -05:00
luigi1111
f4d99dcca7 Merge pull request #7675
de4413b workflows: don't build PRs if only docs and READMEs are being changed (erciccione)
2022-03-18 16:26:52 -05:00
reemuru
d1f1947995 wallet_rpc_server: support regex for get_accounts tag
This commit adds a 'regexp' boolean field to the get_accounts
request. The flag is set to false by default and maintains backwards
compatibility. When set to true the user can search tags by regular
expression filters. An additional error message was added for failed
regular expression searches. Bump minor version to 25.
2022-03-13 11:30:48 -04:00
erciccione
f22051d382 replace erciccione's seednode with one on haveno's infrastructure 2022-03-13 13:15:01 +01:00
moneromooo-monero
7dcfccbaaf wallet_rpc_server: fix make_integrated_address with no payment id 2022-03-11 17:23:19 +00:00
Luke Parker
591c174235 Remove footgun doc comment in miner TX validation
This comment suggests this check is unnecessary, when it is completely necessary as miner TXs can have multiple outputs *which is a statement directly, and incorrectly, contradicted by this comment*. While I don't ever see someone removing this code and getting their edits merged into Monero, someone inexperienced who thinks they're cleaning old code may break their own work, and then there's really just zero benefit to keeping this around.
2022-03-10 14:08:30 -06:00
Norman Moeschter
354e1d9c65 Make the wallet name optional when locked. 2022-03-10 08:16:14 +00:00
mj-xmr
0d6fce8995 Compil. time: cryptonote_core minus portable_storage header 2022-03-04 12:48:35 +01:00
mj-xmr
da9aa1f7f8 Copyright: Update to 2022 2022-03-04 06:59:20 +01:00
luigi1111
d562deaaa9 Merge pull request #8161
b8beac3 Fix typos in docs (Robert Theis)
2022-03-02 18:54:06 -05:00
luigi1111
27f1d43547 Merge pull request #8145
fb5b2b3 support authentication in monero-wallet-rpc set_daemon (woodser)
2022-03-02 18:53:34 -05:00
luigi1111
abae63c37d Merge pull request #8052
c36ea26 fix ge_p3_is_point_at_infinity(), which is evaluating field elements that haven't been reduced by the field order (koe)
2022-03-02 18:52:51 -05:00
luigi1111
5eaa4434e8 Merge pull request #7877
e08abaa multisig key exchange update and refactor (koe)
2022-03-02 18:51:54 -05:00
luigi1111
5a1c060632 Merge pull request #7084
06e6c8b crypto: fix constant randomx exceptions in large page allocator (moneromooo-monero)
2022-03-02 18:50:37 -05:00
selsta
3c829586be wallet2: update stagenet rollback blocks 2022-03-01 00:25:41 +01:00
reemuru
3f88fddbfa simplewallet: add option for exporting tx keys
This commit adds an option to export transaction
keys when performing export_transfers all. By passing
option=with_keys a new column 'tx key' will be
populated with respective keys.
2022-02-24 22:22:35 -05:00
koe
e08abaa43f multisig key exchange update and refactor 2022-02-22 16:37:42 -06:00
Jeffrey
9bde2dbfed Fixes: Don't require --rpc-login with --rpc-access-control-origins #8168
This PR removes the requirement for --rpc-login to be specified if --rpc-access-control-origins is.
This will allow public nodes to serve cross-origin requests. You can still use --rpc-login with
--rpc-access-control-origins, but it is no longer mandatory.

Original Issue: #8168
2022-02-19 13:49:38 -06:00
moneromooo-monero
06e6c8bf4a crypto: fix constant randomx exceptions in large page allocator
If allocating large pages fails, we don't try again.
This has the obvious drawback of not being able to use large pages
if they fail once.
2022-02-19 13:15:10 +00:00
SChernykh
f68f92776b Undefined behaviour fixes
Fixes issues reported in #8120
2022-02-19 10:17:53 +01:00
selsta
14eb42d12d systemd: remove outdated torsocks example 2022-02-08 19:49:00 +01:00
tobtoht
5e201fedc5 rpc: add explicit restricted flag to /get_info 2022-02-07 17:59:22 +01:00
woodser
e5000a9f0c Balance includes unconfirmed transfers to self 2022-01-31 07:52:38 -05:00
Robert Theis
b8beac3ecc Fix typos in docs 2022-01-28 07:07:22 -06:00
koe
c36ea26e5c fix ge_p3_is_point_at_infinity(), which is evaluating field elements that haven't been reduced by the field order 2022-01-25 07:14:46 -06:00
luigi1111
9aab19f349 Merge pull request #8135
2d0a518 Update Copyright year in README.md (IceCruelStuff)
2022-01-24 15:18:13 -05:00
luigi1111
357dbd2032 Merge pull request #8130
1051276 Update net_node.inl (Gingeropolous)
2022-01-24 15:16:52 -05:00
luigi1111
459a48352d Merge pull request #8126
e73e1e7 Use CMD in Dockerfile (Kevin Thomas)
2022-01-24 15:16:27 -05:00
luigi1111
d94715fd71 Merge pull request #8123
4446cc8 wallet inits cache if file and blob missing (woodser)
2022-01-24 15:15:11 -05:00
luigi1111
c1e7e97cea Merge pull request #8117
505b382 cmake: enable build on riscv{64, 32} (Xeonacid)
2022-01-24 15:14:38 -05:00
luigi1111
cb24b85bde Merge pull request #8116
6366187 Fixed warnings for Clang (used as CMAKE_CXX compiler) (SerHack)
2022-01-24 15:14:08 -05:00
luigi1111
0f9fae5a96 Merge pull request #8112
fef0280 Fix docker instructions to account for non-root user (Kevin Thomas)
2022-01-24 15:13:37 -05:00
luigi1111
166c278057 Merge pull request #8101
6a46f8c Add copy commands for compiled binaries (Seth For Privacy)
52612e7 Add archive details to post-build section (Seth For Privacy)
03a256e Add git clone and cd commands for initial prep (Seth For Privacy)
cd76011 Add note on adding SSH keys for Github (Seth For Privacy)
9d02531 Update DOCKRUN.md (Seth For Privacy)
eeb0be4 Bump versions in DOCKRUN.md and add log commands (Seth For Privacy)
2022-01-24 15:11:51 -05:00
luigi1111
5283cf51ef Merge pull request #8044
a02b342 Avoid unnecessary 'Invalid hashing blob' error message (rbrunner7)
2022-01-24 15:10:55 -05:00
luigi1111
e9d90de9e1 Merge pull request #8041
361f621 Fix typos (Dimitris Apostolou)
2022-01-24 15:09:30 -05:00
woodser
fb5b2b352a support authentication in monero-wallet-rpc set_daemon 2022-01-17 17:03:56 -05:00
IceCruelStuff
2d0a5189d2 Update Copyright year in README.md 2022-01-07 20:27:24 -08:00
Gingeropolous
1051276425 Update net_node.inl 2022-01-04 16:31:59 -05:00
Kevin Thomas
e73e1e7e6f Use CMD in Dockerfile
According to Dockerfile best practices
(https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#entrypoint)
the best use for ENTRYPOINT is to set the image’s main command and then
use CMD as the default flags. This makes it easier to change the flags
passed to monerod when running the Docker image.
2021-12-31 01:05:22 -08:00
woodser
4446cc88c3 wallet inits cache if file and blob missing 2021-12-24 09:22:57 -05:00
Xeonacid
505b38260c cmake: enable build on riscv{64, 32}
tested on Arch Linux RISC-V.
2021-12-22 15:43:44 +08:00
SerHack
6366187cf3 Fixed warnings for Clang (used as CMAKE_CXX compiler) 2021-12-19 03:16:53 -08:00
luigi1111
319b831e65 Merge pull request #8103
e9156d7 functional_tests: update uri test with external pid (selsta)
2021-12-15 20:24:37 -06:00
selsta
e9156d78a3 functional_tests: update uri test with external pid 2021-12-14 23:35:48 +01:00
Kevin Thomas
fef02800c7 Fix docker instructions to account for non-root user
Since the non-root user 'monero' is specified in the Dockerfile, the
bind mount when running the container should be set to this user's home
directory be default, not the root user's home directory.
2021-12-13 18:53:06 -08:00
Seth For Privacy
6a46f8c40a Add copy commands for compiled binaries 2021-12-02 16:54:04 +00:00
Seth For Privacy
52612e7a12 Add archive details to post-build section
Also moved the tail of in-progress logs to two distinct and precise tail commands, was a good recommendation by @hyc.
2021-12-02 16:52:32 +00:00
Seth For Privacy
03a256e076 Add git clone and cd commands for initial prep 2021-12-02 15:41:45 +00:00
Seth For Privacy
cd76011e6c Add note on adding SSH keys for Github 2021-12-02 13:55:18 +00:00
Seth For Privacy
9d02531f0d Update DOCKRUN.md 2021-12-01 17:44:58 +00:00
Seth For Privacy
eeb0be4905 Bump versions in DOCKRUN.md and add log commands 2021-12-01 15:33:08 +00:00
luigi1111
cc9ca953a9 Merge pull request #8097
6e6ad80 Fix Android OpenSSL build (Howard Chu)
2021-11-30 17:07:58 -05:00
luigi1111
3ed0cc6e20 Merge pull request #8067
53be72c make_uri disallows standalone payment ids (woodser)
2021-11-30 17:05:48 -05:00
luigi1111
e6e333adc9 Merge pull request #8066
7bc261b cmake: find readline on macOS ARM (selsta)
2021-11-30 17:04:38 -05:00
luigi1111
c0cf5bb339 Merge pull request #8057
1efe624 device_ledger: fix incorrect macro (selsta)
2021-11-30 17:03:46 -05:00
luigi1111
a723f25041 Merge pull request #8054
a491175 cmake: fix incorrect else syntax (selsta)
2021-11-30 17:03:23 -05:00
luigi1111
155c5ecb8e Merge pull request #8027
94dc19a cmake: remove including non-existent directory (selsta)
2021-11-30 17:02:08 -05:00
luigi1111
55fc2335a4 Merge pull request #7943
3a90be4 rpc: don't set error code as status string (selsta)
2021-11-30 17:00:20 -05:00
woodser
53be72c08a make_uri disallows standalone payment ids 2021-11-30 09:28:45 -05:00
Howard Chu
6e6ad80dc4 Fix Android OpenSSL build
depends didn't have target-specific overrides for _build_env
so ANDROID_NDK_HOME wasn't being set at build time.
This fix supersedes the manual edit of Configuration/15-android.conf.
Resolves #8095
2021-11-30 04:15:48 +00:00
luigi1111
aeae337c0b Merge pull request #7910
4571d36 Add simple script for running gitian-build (Howard Chu)
2021-11-29 00:50:01 -06:00
luigi1111
105e2304a2 Merge pull request #8083
e8e507f rpc: fix DoS vector in get_output_distribution (moneromooo-monero)
2021-11-26 23:05:31 -06:00
luigi1111
7fc93a12d4 Merge pull request #8071
22b891c Update RandomX (Jethro Grassie)
2021-11-26 23:01:57 -06:00
luigi1111
9a17f53489 Merge pull request #8070
a4ebec9 Add python method (Howard Chu)
0221b01 Add calcpow RPC (Howard Chu)
2021-11-26 23:01:08 -06:00
luigi1111
9c4c28e4f6 Merge pull request #8065
82828bf cryptonote_core: fix unused lambda warning (selsta)
2021-11-26 23:00:31 -06:00
luigi1111
41d6db105d Merge pull request #8055
a30928f depends: bump hidapi to 0.11.0 (selsta)
2021-11-26 22:59:27 -06:00
Howard Chu
a4ebec9afb Add python method 2021-11-21 01:24:10 +00:00
Howard Chu
0221b01519 Add calcpow RPC
Calculate PoW hash for a block candidate
2021-11-20 18:52:05 +00:00
Jethro Grassie
22b891c80e Update RandomX 2021-11-20 00:01:30 -05:00
selsta
7bc261b506 cmake: find readline on macOS ARM 2021-11-17 02:09:58 +01:00
selsta
82828bfcb6 cryptonote_core: fix unused lambda warning 2021-11-16 05:21:56 +01:00
selsta
1efe624e30 device_ledger: fix incorrect macro
The current code does work by accident, but it might break if
someone uses ASSERT_SW in a different place, or if variables
get renamed.
2021-11-12 02:56:20 +01:00
luigi1111
6d94953be2 Merge pull request #8048
e0a5dce Update RandomX to v1.1.10 (tevador)
2021-11-09 22:55:30 -06:00
luigi1111
97ff1938a3 Merge pull request #8038
fbe8358 device: fix ledger error strings, add human friendly messages (selsta)
2021-11-09 22:53:47 -06:00
luigi1111
2844b5b8db Merge pull request #8031
187633c slow_hash: don't blow out Mac stack on ARM64 (Howard Chu)
2021-11-09 22:50:36 -06:00
luigi1111
c3b1b94453 Merge pull request #7169
bbe3b27 tx_pool: full tx revalidation on fork boundaries (moneromooo-monero)
2021-11-09 22:44:39 -06:00
selsta
a30928fe1a depends: bump hidapi to 0.11.0 2021-11-10 03:17:52 +01:00
selsta
a491175f7d cmake: fix incorrect else syntax 2021-11-10 00:33:16 +01:00
im
cf44349a86 account info text alignment 2021-11-10 02:27:14 +08:00
tevador
e0a5dce14f Update RandomX to v1.1.10 2021-11-08 20:51:50 +01:00
rbrunner7
a02b342347 Avoid unnecessary 'Invalid hashing blob' error message 2021-11-05 14:19:21 +01:00
luigi1111
eec3a6014c Merge pull request #8021
8f21001 depends: openssl 1.1.1k -> 1.1.1l (selsta)
2021-11-04 14:02:59 -05:00
Dimitris Apostolou
361f621c3c Fix typos 2021-11-03 19:38:53 +02:00
selsta
fbe8358c9f device: fix ledger error strings, add human friendly messages 2021-11-03 00:10:12 +01:00
moneromooo-monero
bbe3b276b8 tx_pool: full tx revalidation on fork boundaries
avoids mining txes after a fork that are invalid by this fork's
rules, but were valid by the previous fork rules at the time
they were verified and added to the txpool.
2021-11-01 20:56:38 +00:00
luigi1111
e22ec26be4 Merge pull request #8029
548cfc8 crypto: fix typo in ifdef (selsta)
2021-11-01 12:32:24 -05:00
luigi1111
d573b3d76c Merge pull request #8020
47e7a43 wallet_api: enable set_strict_default_file_permissions (tobtoht)
2021-11-01 12:31:32 -05:00
luigi1111
ff4ede9356 Merge pull request #8017
a15466d wallet2: remove 2 unused variables (selsta)
2021-11-01 12:29:22 -05:00
luigi1111
14e94c6918 Merge pull request #8016
b0ec9f8 epee: avoid ADL selecting C++14 std::quoted (selsta)
2021-11-01 12:28:28 -05:00
luigi1111
f405bf3d58 Merge pull request #8013
2cad563 wallet2: fix key encryption when changing ask-password from 0/1 to 2 (moneromooo-monero)
2021-11-01 12:25:20 -05:00
Howard Chu
187633c0ca slow_hash: don't blow out Mac stack on ARM64 2021-10-30 22:24:55 +01:00
selsta
548cfc8d68 crypto: fix typo in ifdef 2021-10-29 17:55:51 +02:00
selsta
94dc19a8b3 cmake: remove including non-existent directory 2021-10-28 14:30:35 +02:00
luigi1111
b328fbecc2 Merge pull request #8019
e106bdc epee: add missing header (selsta)
2021-10-25 19:02:49 -05:00
luigi1111
ff96482e38 Merge pull request #8018
1f81f5f protocol: fix spurious rejection of downloaded blocks (moneromooo-monero)
2021-10-25 19:02:22 -05:00
luigi1111
919e06bbfd Merge pull request #8011
9c61110 cmake: use CMAKE_CURRENT_LIST_DIR for git version (selsta)
2021-10-25 19:01:59 -05:00
luigi1111
0bd892788d Merge pull request #8006
69c09ad Add README to release archives (Howard Chu)
4881154 README v12 fork occurred on 2019-11-30 as expected (Howard Chu)
2021-10-25 19:00:40 -05:00
luigi1111
e5710b1898 Merge pull request #8004
ace4669 simplewallet: fix incoming_transfers index error (selsta)
2021-10-25 18:59:54 -05:00
luigi1111
e7d571c526 Merge pull request #8003
75d05b9 download: fix leak (moneromooo-monero)
2021-10-25 18:59:18 -05:00
luigi1111
e161b75201 Merge pull request #8002
49441d4 depends: update zeromq package to 4.3.4 (selsta)
2021-10-25 18:58:48 -05:00
luigi1111
00ac048958 Merge pull request #7995
797ca97 socks: ignore any exceptions in shutdown/close (selsta)
2021-10-25 18:53:34 -05:00
moneromooo-monero
e8e507f36f rpc: fix DoS vector in get_output_distribution
This will prevent people spending old pre-rct outputs using a
stranger's node, which may be a good thing
2021-10-24 17:17:12 +00:00
selsta
8f210011be depends: openssl 1.1.1k -> 1.1.1l 2021-10-22 23:17:53 +02:00
selsta
797ca974ab socks: ignore any exceptions in shutdown/close 2021-10-22 22:00:29 +02:00
tobtoht
47e7a43270 wallet_api: enable set_strict_default_file_permissions 2021-10-22 05:40:23 +02:00
selsta
e106bdc1fc epee: add missing header 2021-10-22 04:14:25 +02:00
moneromooo-monero
1f81f5f5c1 protocol: fix spurious rejection of downloaded blocks
when kicking a peer for inactivity, clear the set of requested blocks,
or next time we requests blocks from it, we'll probably reject the
incoming blocks due to missing the previous requested blocks
2021-10-21 20:34:06 +00:00
selsta
a15466d850 wallet2: remove 2 unused variables 2021-10-20 22:19:15 +02:00
selsta
b0ec9f85a1 epee: avoid ADL selecting C++14 std::quoted 2021-10-20 19:30:21 +02:00
moneromooo-monero
2cad563060 wallet2: fix key encryption when changing ask-password from 0/1 to 2
we reuse the wallet_keys_unlocker object, which does the right thing
in conjunction with other users of decrypt/encrypt (ie, refresh).
2021-10-19 22:01:45 +00:00
selsta
9c6111017b cmake: use CMAKE_CURRENT_LIST_DIR for git version 2021-10-19 17:27:16 +02:00
luigi1111
753dc901a1 Merge pull request #8001
9973edd ARMv8: detect AES support dynamically (Howard Chu)
2021-10-17 23:39:50 -05:00
luigi1111
99507da993 Merge pull request #7994
84c5257 Decrease the 'recent spend window' in gamma re-select to 15 blocks (j-berman)
2021-10-17 23:38:47 -05:00
luigi1111
7f1a44679c Merge pull request #7971
b00e21d cmake: set cpp14 standard (selsta)
2021-10-17 23:33:33 -05:00
luigi1111
adb2542a6c Merge pull request #7876
5e63f6c Ledger: member 'mode' was shadowing that of base class (mj-xmr)
2021-10-17 23:29:17 -05:00
luigi1111
ebc655c6ad Merge pull request #7869
ad9fde4 UB: virtual methods in destructor at Trezor (mj-xmr)
2021-10-17 23:28:04 -05:00
luigi1111
19a6cc26fc Merge pull request #7867
eed7e79 UB: Not calling virtual method in destructor of WalletImpl (mj-xmr)
2021-10-17 23:26:50 -05:00
luigi1111
e165fdb27c Merge pull request #7859
514f8fa LMDB: protection against UB, by not calling virtual methods from destructor (mj-xmr)
2021-10-17 23:25:34 -05:00
luigi1111
e7974926d5 Merge pull request #7808
7caab8d utils/health: separate Clang Tidy tests for C & C++ (mj-xmr)
2021-10-17 23:24:50 -05:00
luigi1111
f8abf3dd61 Merge pull request #7804
852f319 Doxygen: Exclude build directories (mj-xmr)
2021-10-17 23:24:22 -05:00
luigi1111
308e601966 Merge pull request #7799
76542ea Fix precision of average_output_time (j-berman)
2021-10-17 23:23:15 -05:00
Howard Chu
69c09ad204 Add README to release archives
Also add docs/ANONYMITY_NETWORKS.md
Even though there is no "docs" dir in the archive...
2021-10-14 15:30:43 +01:00
Howard Chu
4881154e69 README v12 fork occurred on 2019-11-30 as expected
Not just an estimated date.
Also fix whitespace alignment.
Note for future: always use backslash-asterisk if adding this
notation, otherwise it screws up rendering on some MD formatters
2021-10-14 15:26:22 +01:00
luigi1111
c458d5fe40 Merge pull request #7989
9cd7aa6 cmake: don't optimize debug build (selsta)
2021-10-11 13:05:25 -05:00
luigi1111
3d9c805e23 Merge pull request #7975
48a0997 blockchain: fix pedantic assert (selsta)
2021-10-11 13:00:27 -05:00
luigi1111
260f1d39f2 Merge pull request #7972
bc167a1 cmake: fix copy/paste typo (selsta)
2021-10-11 13:00:00 -05:00
luigi1111
a6367693c7 Merge pull request #7960
2e8936f rpc: Fix get_transactions failing when not found (Nathan Dorfman)
2021-10-11 12:59:32 -05:00
luigi1111
872d6f86bc Merge pull request #7958
5f54dea LMDB: fix deadlock in resized detection (Howard Chu)
2021-10-11 12:57:53 -05:00
luigi1111
d0a3eb1e7e Merge pull request #7954
313edb2 Doc: building gtest on Debian and Ubuntu (ralphmapper)
2021-10-11 12:57:27 -05:00
luigi1111
8fa21beba1 Merge pull request #7912
ae41178 gitian: cleanup more unused packages (Howard Chu)
4ea7832 gitian: omit ccache from gitian builds (Howard Chu)
2021-10-11 12:56:53 -05:00
luigi1111
45920c36f1 Merge pull request #7874
9154883 node_server: fix race condition (anon)
8922f96 node_server: add race condition demo (anon)
2021-10-11 12:56:14 -05:00
luigi1111
7f477c1902 Merge pull request #7793
13a8a57 trezor: try empty passphrase first (Dusan Klinec)
2021-10-11 12:54:17 -05:00
selsta
48a0997d8c blockchain: fix pedantic assert 2021-10-11 19:09:45 +02:00
selsta
ace4669543 simplewallet: fix incoming_transfers index error 2021-10-10 23:17:16 +02:00
moneromooo-monero
75d05b9448 download: fix leak
A shared_ptr as by value capture will keep the object alive
2021-10-10 19:14:17 +00:00
Howard Chu
9973edd4c3 ARMv8: detect AES support dynamically 2021-10-10 16:52:30 +01:00
selsta
49441d4a2a depends: update zeromq package to 4.3.4 2021-10-10 12:11:01 +02:00
mj-xmr
5e63f6c292 Ledger: member 'mode' was shadowing that of base class 2021-10-07 12:03:17 +02:00
luigi1111
b58a9fb12e Merge pull request #7984
1346516 workflows: add missing dependency, fix mac build (selsta)
2021-10-05 21:44:39 -05:00
j-berman
84c52571ed Decrease the "recent spend window" in gamma re-select to 15 blocks
- combined with patching integer truncation (#7798), this gets the algorithm marginally closer to mirroring empirically observed output ages
- 50 was originally chosen assuming integer truncation would remain in the client for that client release version. But patching integer truncation causes the client to select more outputs in the 10-100 block range, and therefore the benefit of choosing a larger recent spend window of 50 has less merit
- 15 seems well-suited to cover the somewhat sizable observable gap in the early window of blocks
2021-10-04 20:12:42 -07:00
selsta
9cd7aa60f0 cmake: don't optimize debug build 2021-10-04 02:30:34 +02:00
tobtoht
5770265a16 wallet2: keep around transaction prefix for confirmed transfers 2021-10-01 12:42:48 +02:00
selsta
1346516d09 workflows: add missing dependency, fix mac build 2021-09-30 22:09:34 +02:00
Howard Chu
ae41178c8b gitian: cleanup more unused packages
These appear to be leftovers inherited from Bitcoin's builder
2021-09-27 17:14:03 +01:00
Howard Chu
4ea7832ea7 gitian: omit ccache from gitian builds
It's just wasted overhead since the build VMs are always deleted
and recreated fresh for each run.
2021-09-27 17:14:03 +01:00
selsta
bc167a1738 cmake: fix copy/paste typo 2021-09-25 06:28:41 +02:00
selsta
b00e21dccc cmake: set cpp14 standard
It's 2021, we can easily switch to C++14 without any troubles.
2021-09-25 06:22:12 +02:00
luigi1111
6b824c9ed0 Merge pull request #7945
4afd9a7 cmake: set required C/C++ standard to 11 (selsta)
2021-09-23 22:22:42 -05:00
luigi1111
4120098e09 Merge pull request #7942
5617a29 unbound: remove leftovers (selsta)
2021-09-23 22:22:00 -05:00
luigi1111
df0408bd37 Merge pull request #7934
a95e6e0 Dockerfile: use depends (selsta)
2021-09-23 22:21:26 -05:00
luigi1111
415e290675 Merge pull request #7933
43a7279 depends: update unwind, fix build with ubuntu 21.04 (selsta)
2021-09-23 22:19:50 -05:00
luigi1111
4f5e8ccace Merge pull request #7930
807cbcd easylogging++: fix missing logs (moneromooo-monero)
2021-09-23 22:19:16 -05:00
luigi1111
9b5268a27d Merge pull request #7928
e7e28bc CI: ccache common settings variable and apt settings tidying (mj-xmr)
2021-09-23 22:18:06 -05:00
luigi1111
fd48e0af61 Merge pull request #7925
ce38f23 update readme research section contacts (Gingeropolous)
2021-09-23 22:17:15 -05:00
luigi1111
e7a1a095ac Merge pull request #7923
5eaedb5 unit_tests: fix use after free in serialization test (moneromooo-monero)
2021-09-23 22:16:38 -05:00
luigi1111
60eddc566e Merge pull request #7917
167cbdf CMake: Add missing SANITIZE option (mj-xmr)
2021-09-23 22:15:55 -05:00
luigi1111
29e3d0aa87 Merge pull request #7911
acef6c9 Fix parallel make of OpenSSL (Howard Chu)
2021-09-23 22:14:41 -05:00
luigi1111
298c9a357f Merge pull request #7891
dfee15e RPC and ZeroMQ APIs to support p2pool (SChernykh)
2021-09-23 22:10:03 -05:00
luigi1111
237acd120e Merge pull request #7890
2a8a511 Quicker resource cleanup on p2p socks timeout (Lee *!* Clagett)
2021-09-23 22:06:35 -05:00
luigi1111
75ee729a3a Merge pull request #7886
1b7a708 Mac: UT node server fix IP localhost by aliasing (mj-xmr)
2021-09-23 22:04:20 -05:00
moneromooo-monero
807cbcdbf8 easylogging++: fix missing logs 2021-09-23 20:29:22 +00:00
Howard Chu
5f54dea4ec LMDB: fix deadlock in resized detection 2021-09-22 15:47:04 +01:00
Nathan Dorfman
2e8936f614 rpc: Fix get_transactions failing when not found 2021-09-20 17:32:01 -06:00
anon
9154883f3e node_server: fix race condition 2021-09-20 20:58:23 +00:00
anon
8922f96e61 node_server: add race condition demo 2021-09-20 20:58:23 +00:00
ralphmapper
313edb2504 Doc: building gtest on Debian and Ubuntu 2021-09-18 20:16:12 +02:00
selsta
4afd9a7a9e cmake: set required C/C++ standard to 11
Co-authored-by: Jason Rhinelander <jason@imaginary.ca>
2021-09-16 10:44:25 +02:00
mj-xmr
e7e28bcd68 CI: ccache common settings variable and apt settings tidying 2021-09-15 20:51:41 +02:00
selsta
3a90be4bd6 rpc: don't set error code as status string 2021-09-15 08:57:41 +02:00
selsta
5617a292ee unbound: remove leftovers 2021-09-15 07:32:19 +02:00
mj-xmr
1b7a708fa3 Mac: UT node server fix IP localhost by aliasing 2021-09-12 15:51:14 +02:00
j-berman
76542ea709 Fix precision of average_output_time
The fix as suggested by <jberman> on IRC. Before the fix, it would truncate 1.9 to 1 skewing the output selection.
2021-09-12 10:07:31 +02:00
selsta
a95e6e0d43 Dockerfile: use depends 2021-09-12 01:35:14 +02:00
selsta
43a72790ab depends: update unwind, fix build with ubuntu 21.04 2021-09-11 20:25:43 +02:00
SChernykh
dfee15eee1 RPC and ZeroMQ APIs to support p2pool
Adds the following:

- "get_miner_data" to RPC API
- "json-miner-data" to ZeroMQ subscriber contexts

Both provide the necessary data to create a custom block template. They are used by p2pool.

Data provided:

- major fork version
- current height
- previous block id
- RandomX seed hash
- network difficulty
- median block weight
- coins mined by the network so far
- mineable mempool transactions
2021-09-11 15:15:07 +02:00
luigi1111
a39b1d56c8 Merge pull request #7899
cd76eb7 wallet: fix unused lambda capture warning (selsta)
2021-09-09 15:21:10 -04:00
luigi1111
9273530bff Merge pull request #7898
f353c29 wallet_rpc_server: fix help text remaining bold (selsta)
2021-09-09 15:20:43 -04:00
luigi1111
c278c97f1f Merge pull request #7884
ec6b4cf support cors wildcard (woodser)
2021-09-09 15:20:09 -04:00
luigi1111
e72eedd1ce Merge pull request #7883
d749e0d ringct: silence unused variable warning (selsta)
2021-09-09 15:18:42 -04:00
luigi1111
e48e909911 Merge pull request #7880
573a025 core_tests: remove unused typedef, fix warning (selsta)
2021-09-09 15:18:17 -04:00
luigi1111
be94a2fb06 Merge pull request #7875
15936bf Device: remove unused and incorrect non-default constructor (mj-xmr)
2021-09-09 15:17:41 -04:00
luigi1111
aa8320671c Merge pull request #7858
426dbf4 fix median overflow bug (koe)
2021-09-09 15:17:06 -04:00
luigi1111
b13110b7b8 Merge pull request #7855
ce0a2ce CI: use runner.os instead of OS labels (mj-xmr)
2021-09-09 15:16:31 -04:00
luigi1111
acfe3f8ded Merge pull request #7828
b2c59af EasyLogging++: new anti-UB test and propagating exception (mj-xmr)
2021-09-09 15:16:06 -04:00
luigi1111
dfa6b58d4d Merge pull request #7823
24d3d65 monero-wallet-rpc: Prevent --password-file from being used with --wallet-dir (Kermit Alexander II)
2021-09-09 15:14:17 -04:00
luigi1111
2a02cd0a5f Merge pull request #7773 from selsta/unbound
external: remove unbound submodule
2021-09-09 15:13:06 -04:00
luigi1111
7848a467c5 Merge pull request #7616
4ced092 daemon: allow proxy configuration (anon, selsta, tobtoht)
2021-09-09 15:09:51 -04:00
luigi1111
b7315efc1c Merge pull request #7342
520ce1c Attempt to carve the fee from a partial payment early (lxop)
2021-09-09 15:06:46 -04:00
Gingeropolous
ce38f2399d update readme research section contacts
with edits from @UkoeHB from PR #7922 because I can't sqash because i use the github web gui like a plebe
2021-09-08 14:03:21 -04:00
mj-xmr
ad9fde46a3 UB: virtual methods in destructor at Trezor 2021-09-08 14:44:35 +02:00
mj-xmr
514f8fab14 LMDB: protection against UB, by not calling virtual methods from destructor 2021-09-08 14:08:40 +02:00
moneromooo-monero
5eaedb51b9 unit_tests: fix use after free in serialization test 2021-09-08 01:03:34 +00:00
mj-xmr
eed7e79c04 UB: Not calling virtual method in destructor of WalletImpl 2021-09-07 14:24:53 +02:00
Howard Chu
4571d3686d Add simple script for running gitian-build
This shell script creates a docker image for running the gitian-build.py
script, to avoid version incompatibilities. The builds may be signed
automatically after manually reviewing the build hashes.

Only docker.io and apt-cacher-ng are required to be installed on the
host. The MacOSX SDK should also be present in this directory if Mac
builds are desired. A container named "gitrun" is used to launch
the builds, and all output will reside in this container as well.
2021-09-04 17:20:29 +01:00
selsta
ae85ec0285 external: remove unbound submodule 2021-09-03 07:47:35 +02:00
mj-xmr
167cbdf870 CMake: Add missing SANITIZE option 2021-09-02 16:28:19 +02:00
Howard Chu
acef6c955b Fix parallel make of OpenSSL 2021-08-31 04:38:38 +01:00
selsta
cd76eb7b8c wallet: fix unused lambda capture warning 2021-08-28 15:18:32 +02:00
luigi1111
8fde011dbe Merge pull request #7893
e52802b Wallet2: fix optimize-coinbase for p2pool payouts (SChernykh)
2021-08-26 21:13:44 -04:00
luigi1111
3673a679e4 Merge pull request #7850
0ac9a04 epee: tidying post-incrementation -> pre-incrementation (mj-xmr)
2021-08-26 21:12:25 -04:00
luigi1111
4ada08ad9a Merge pull request #7847
0a021c3 CMake: document -Werror for add_c_flag_if_supported() from #7718 (mj-xmr)
2021-08-26 21:11:37 -04:00
selsta
f353c295f9 wallet_rpc_server: fix help text remaining bold 2021-08-27 02:59:36 +02:00
SChernykh
e52802baef Wallet2: fix optimize-coinbase for p2pool payouts
RefreshOptimizeCoinbase was an optimization to speed up scanning of coinbase transactions before RingCT (tx version 2) where they split miner reward into multiple denominations, all to the same wallet.

When RingCT was introduced, all coinbase transactions became 1 output only, so this optimization does nothing now.

With p2pool, this optimization will skip scanning p2pool payouts because they use more than 1 output in coinbase transaction.

Fix it by applying this optimization only to pre-RingCT transactions (version < 2).
2021-08-26 11:50:15 +02:00
luigi1111
2d3ce2d64a Merge pull request #7881
301355f epee: link with Boost_SYSTEM_LIBRARY (selsta)
2021-08-20 16:51:18 -04:00
luigi1111
0061da9e63 Merge pull request #7878
a9aaa47 wallet_api: add make_uri (tobtoht)
2021-08-20 16:50:24 -04:00
luigi1111
8b9eea92f1 Merge pull request #7849
6f15a0c Make sure node returns to wallet that real output is unlocked (j-berman)
2021-08-20 16:49:59 -04:00
luigi1111
1b079e5195 Merge pull request #7845
e1af8dc Protect client from divide by 0 caused by integer truncation (j-berman)
2021-08-20 16:45:15 -04:00
luigi1111
294d58c58d Merge pull request #7832
d8e71c8 CMake: ccache fix for FreeBSD at 'depends' (mj-xmr)
2021-08-20 16:40:04 -04:00
luigi1111
5812b757e0 Merge pull request #7821
da2955f Apply gamma distr from chain tip when selecting decoys (j-berman)
2021-08-20 16:33:53 -04:00
luigi1111
a8dc9490b5 Merge pull request #7780
bb633d3 Workflows: depends cache (static) separated from ccache (volatile) (mj-xmr)
2021-08-20 16:31:22 -04:00
anon
4ced092aae daemon: allow proxy configuration
Co-authored-by: selsta <selsta@sent.at>
Co-authored-by: tobtoht <thotbot@protonmail.com>
2021-08-20 21:24:29 +02:00
woodser
ec6b4cf9e1 support cors wildcard 2021-08-20 14:17:51 -04:00
Kermit Alexander II
24d3d65d42 monero-wallet-rpc: Prevent --password-file from being used with --wallet-dir 2021-08-20 08:54:41 -05:00
j-berman
e1af8dc02c Protect client from divide by 0 caused by integer truncation 2021-08-19 14:56:36 -07:00
j-berman
da2955feae Apply gamma distr from chain tip when selecting decoys
- matches the paper by Miller et al to apply the gamma from chain tip, rather than after unlock time
- if the gamma produces an output more recent than the unlock time, the algo packs that output into one of the first 50 spendable blocks, respecting the block density factor
2021-08-19 14:51:20 -07:00
selsta
d749e0d97c ringct: silence unused variable warning 2021-08-19 22:00:44 +02:00
mj-xmr
15936bfa0f Device: remove unused and incorrect non-default constructor 2021-08-19 21:56:12 +02:00
selsta
301355f88d epee: link with Boost_SYSTEM_LIBRARY 2021-08-19 19:05:40 +02:00
selsta
573a0255a8 core_tests: remove unused typedef, fix warning 2021-08-19 15:57:13 +02:00
tobtoht
a9aaa47abb wallet_api: add make_uri 2021-08-19 15:35:37 +02:00
koe
426dbf434b fix median overflow bug 2021-08-13 06:57:27 -05:00
mj-xmr
ce0a2ce479 CI: use runner.os instead of OS labels 2021-08-12 15:48:55 +02:00
luigi1111
82149bfe44 Merge pull request #7818
9c8e3e8 unit_tests: fix broken tests (anon)
2021-08-11 22:40:13 -04:00
luigi1111
460fd4c80a Merge pull request #7816
29296d5 cmake: fix double build (selsta)
2021-08-11 22:39:06 -04:00
luigi1111
0b4e922159 Merge pull request #7812
bf96055 Make SSL key/cert storage backward-compatible (Nathan Dorfman)
2021-08-11 22:38:24 -04:00
luigi1111
89664fcee5 Merge pull request #7811
3d3a671 Daemon: Update average block size table (rbrunner7)
2021-08-11 22:37:56 -04:00
luigi1111
521b4d9ded Merge pull request #7809
7354ffb p2p: remove blocked addresses/hosts from peerlist (moneromooo-monero)
2021-08-11 22:35:15 -04:00
luigi1111
cb08466394 Merge pull request #7802
a3d2b71 wallet_api: expose offline mode status (rating89us)
2021-08-11 22:33:38 -04:00
luigi1111
5cebb8edc0 Merge pull request #7800
b48074f Fixed json serialization of rct::RCTTypeNull (SChernykh)
2021-08-11 22:32:39 -04:00
luigi1111
1bb8ec1b97 Merge pull request #7795
87a0928 rpc: source file extensions must be explicit (cmake warning) (selsta)
2021-08-11 22:31:34 -04:00
luigi1111
62844a776d Merge pull request #7786
9c6e094 fix #7784 - deinit wallet in wallet dtor (Dusan Klinec)
2021-08-11 22:30:11 -04:00
mj-xmr
0a021c3bd1 CMake: document -Werror for add_c_flag_if_supported() from #7718 2021-08-11 19:53:20 +02:00
mj-xmr
0ac9a04b4c epee: tidying post-incrementation -> pre-incrementation 2021-08-11 16:47:32 +02:00
j-berman
6f15a0c8d3 Make sure node returns to wallet that real output is unlocked 2021-08-11 07:28:10 -07:00
moneromooo-monero
7354ffb8a7 p2p: remove blocked addresses/hosts from peerlist 2021-08-05 17:29:25 +00:00
mj-xmr
d8e71c8dbe CMake: ccache fix for FreeBSD at 'depends' 2021-08-04 20:05:42 +02:00
mj-xmr
b2c59af84d EasyLogging++: new anti-UB test and propagating exception 2021-08-03 17:10:21 +02:00
Dusan Klinec
13a8a576ed trezor: try empty passphrase first
- Try empty passphrase first when opening a wallet, as all Trezors will have passphrase enabled by default by Trezor Suite by default.
  This feature enables easier access to all users using disabled passphrase (or empty passhprase)
- If wallet address differs from device address with empty passphrase, another opening attempt is made, without passphrase suppression,
  so user can enter his passhprase if using some. In this scenario, nothing changes to user, wallet opening just consumes one more call
  to Trezor (get wallet address with empty passphrase)
- also change how m_passphrase is used. Previous version did not work well with recent passphrase entry mechanism change (made in Trezor),
  thus this commit fixes the behaviour).
2021-08-03 13:54:04 +02:00
luigi1111
ed506006d2 Merge pull request #7796
0c6e1d3 wallet2: chunk get_outs.bin calls to avoid sanity limits (moneromooo-monero)
2021-08-02 18:54:46 -04:00
luigi1111
e3b3fb577a Merge pull request #7794
4414ed4 cmake: test is a reserved keyword (selsta)
2021-08-02 18:54:15 -04:00
luigi1111
eeda76570c Merge pull request #7790
bc8d764 wallet: rephrase error message on invalid device address (Dusan Klinec)
2021-08-02 18:53:05 -04:00
luigi1111
8c41d14ad5 Merge pull request #7788
f5eb2ce wallet2: Don't auto lock device on process parsed blocks (tobtoht)
2021-08-02 18:50:25 -04:00
luigi1111
a32da4bc3e Merge pull request #7787
1b80347 CI: Ubuntu-Test reuses Ubuntu-Build cache and building static libs (mj-xmr)
2021-08-02 18:49:49 -04:00
luigi1111
0878207e8d Merge the coolest pull request #7777
30c15a6 Remove obsolete android dockerfiles (malinero)
2021-08-02 18:49:08 -04:00
luigi1111
894e5b2794 Merge pull request #7767
5fa1c90 Fix describe_transfer for multiple txes in a txset (Alex Opie)
2021-08-02 18:47:05 -04:00
luigi1111
0cdb8d02e8 Merge pull request #7757
d689b94 protocol: fix delayed 'you are now synchronized...' message (moneromooo-monero)
2021-08-02 18:43:44 -04:00
luigi1111
9aa2d4c16e Merge pull request #7747
8cf95c8 wallet2: refresh: check error and throw before potentially breaking out of loop (tobtoht)
2021-08-02 18:42:32 -04:00
Alex Opie
5fa1c90102 Fix describe_transfer for multiple txes in a txset
This ensures each list of recipients is only the recipients
for one transaction. It also adds a new field "summary"
that describes the txset as a whole.

Fixes #7344
2021-08-02 20:39:49 +02:00
luigi1111
0b72f46bf2 Merge pull request #7824
90d6bed cmake: bodge cmake failure on OSS-Fuzz (moneromooo-monero)
2021-07-31 18:28:38 -04:00
moneromooo-monero
90d6bed804 cmake: bodge cmake failure on OSS-Fuzz 2021-07-31 19:22:57 +00:00
mj-xmr
1b80347513 CI: Ubuntu-Test reuses Ubuntu-Build cache and building static libs 2021-07-30 17:26:02 +02:00
Lee *!* Clagett
2a8a51129f Quicker resource cleanup on p2p socks timeout 2021-07-29 08:54:13 +00:00
luigi1111
56f7609643 Merge pull request #7814
0556572 cmake: don't forbid undefined symbols on openbsd (selsta)
2021-07-28 14:02:20 -04:00
luigi1111
a89c78528a Merge pull request #7813
979d121 blocks: fix cmake syntax (selsta)
2021-07-28 14:01:43 -04:00
anon
9c8e3e832e unit_tests: fix broken tests
boosted_tcp_server: check condition before sleep too
cryptonote_protocol_handler: each instance of BlockchainLMDB requires separate thread due to private thread local fields
2021-07-28 13:38:24 +00:00
selsta
29296d5d52 cmake: fix double build
Co-authored-by: perfect-daemon
2021-07-28 15:02:12 +02:00
selsta
055657241d cmake: don't forbid undefined symbols on openbsd 2021-07-28 01:18:10 +02:00
selsta
979d121ed7 blocks: fix cmake syntax 2021-07-28 00:39:48 +02:00
luigi1111
960376b960 Merge pull request #7782
a48db50 device_trezor_base: fix typo (anon)
2021-07-27 17:04:14 -04:00
luigi1111
0073513a05 Merge pull request #7776
c26e3ee workflows: fix libwallet ci test (selsta)
2021-07-27 17:02:54 -04:00
luigi1111
d9c9a11c54 Merge pull request #7772
eda5c30 Doc: Update blockchain stats with review comments (mj-xmr)
2021-07-27 17:01:42 -04:00
luigi1111
2f6d5fa8c2 Merge pull request #7771
5e6762d EasyLogging++: Add UTests, that protect against regressions (mj-xmr)
2021-07-27 17:01:00 -04:00
luigi1111
ef659f8b52 Merge pull request #7769
9a24e46 CI: add Ubuntu 18.04 for back. compat. test (mj-xmr)
2021-07-27 16:59:05 -04:00
luigi1111
11cc473d97 Merge pull request #7765
0977963 depends: add getmonero package mirror (selsta)
2021-07-27 16:57:53 -04:00
luigi1111
e91e2c4a2b Merge pull request #7758
42b74a3 Include Libusb and hidapi on android (malinero)
2021-07-27 16:57:06 -04:00
luigi1111
69e714c749 Merge pull request #7745
d52d21b ledger: don't lock for software device (tobtoht)
2021-07-27 16:56:37 -04:00
luigi1111
62bcdc1d3c Merge pull request #7744
ce40c33 ledger: use software device if we have view key (tobtoht)
2021-07-27 16:56:09 -04:00
luigi1111
2d5b8a6ff7 Merge pull request #7740
8cea9d8 wallet: Reset RPC Pay ID on node switch (tobtoht)
2021-07-27 16:55:14 -04:00
luigi1111
8a845f5dc8 Merge pull request #7718
9c0e681 cmake: treat warnings as error in compiler flag tests (selsta)
2021-07-27 16:54:36 -04:00
luigi1111
ca4de5f96d Merge pull request #7698
7359d51 cmake: fix non portable code (selsta)
2021-07-27 16:53:55 -04:00
luigi1111
a9cb4c082f Merge pull request #7692
df40d1d cmake: export all symbols (anon)
fe76d7d cmake: fix undefined symbols and multiple definitions (anon)
14be80f cmake: forbid undefined symbols (anon)
2021-07-27 16:51:52 -04:00
Nathan Dorfman
bf96055211 Make SSL key/cert storage backward-compatible
This is required to build on OpenBSD (which uses LibreSSL). It also allows building against versions of OpenSSL before 1.0.2.
2021-07-27 13:49:21 -06:00
rbrunner7
3d3a67142c Daemon: Update average block size table 2021-07-27 13:45:55 +02:00
mj-xmr
7caab8dd74 utils/health: separate Clang Tidy tests for C & C++ 2021-07-27 11:17:27 +02:00
mj-xmr
852f319d86 Doxygen: Exclude build directories 2021-07-26 14:05:34 +02:00
rating89us
a3d2b71ee9 wallet_api: expose offline mode status 2021-07-19 00:30:36 +02:00
SChernykh
b48074fb8d Fixed json serialization of rct::RCTTypeNull
rct::RCTTypeNull doesn't have these fields (ecdhInfo, outPk, txnFee).
2021-07-18 10:52:14 +02:00
moneromooo-monero
0c6e1d343e wallet2: chunk get_outs.bin calls to avoid sanity limits 2021-07-15 17:25:07 +00:00
selsta
4414ed401d cmake: test is a reserved keyword 2021-07-15 15:35:03 +02:00
selsta
87a092811d rpc: source file extensions must be explicit (cmake warning) 2021-07-15 09:42:57 +02:00
tobtoht
f5eb2ce968 wallet2: Don't auto lock device on process parsed blocks 2021-07-14 13:02:54 +02:00
Dusan Klinec
bc8d7644d2 wallet: rephrase error message on invalid device address 2021-07-14 11:02:29 +02:00
Dusan Klinec
9c6e0941cb fix #7784 - deinit wallet in wallet dtor 2021-07-14 10:46:16 +02:00
anon
df40d1dc73 cmake: export all symbols 2021-07-13 08:00:22 +02:00
anon
fe76d7dee7 cmake: fix undefined symbols and multiple definitions 2021-07-13 08:00:20 +02:00
anon
14be80f992 cmake: forbid undefined symbols 2021-07-13 07:59:49 +02:00
mj-xmr
9a24e464ba CI: add Ubuntu 18.04 for back. compat. test 2021-07-12 08:06:08 +02:00
anon
a48db50b1c device_trezor_base: fix typo 2021-07-10 23:52:15 +00:00
luigi1111
de3456e127 Merge pull request #7764
e24875e simplewallet: don't truncate integ. address in export_transfers (selsta)
2021-07-10 18:01:35 -04:00
luigi1111
1e8cbc995f Merge pull request #7762
8ae6c85 trezor: add #if for ByteSizeLong (selsta)
2021-07-10 18:00:45 -04:00
luigi1111
3c8c8e5a5b Merge pull request #7761
8ef51dc wallet_api: fix typo in exportKeyImages (selsta)
2021-07-10 17:59:56 -04:00
luigi1111
9903b35345 Merge pull request #7754
8ff21e1 doc: update IRC references to Libera (fdov)
2021-07-10 17:59:23 -04:00
luigi1111
6043c85afe Merge pull request #7753
f0df726 add singapore.node.xmr.pm to seed nodes (lza_menace)
2021-07-10 17:58:22 -04:00
luigi1111
c53e22c40a Merge pull request #7748
bbeb555 wallet_api: getPassword (tobtoht)
2021-07-10 17:57:39 -04:00
mj-xmr
bb633d3a8e Workflows: depends cache (static) separated from ccache (volatile) 2021-07-10 17:25:50 +02:00
malinero
30c15a6ca8 Remove obsolete android dockerfiles 2021-07-09 01:05:18 +02:00
selsta
c26e3ee029 workflows: fix libwallet ci test 2021-07-08 05:00:01 +02:00
mj-xmr
eda5c303cd Doc: Update blockchain stats with review comments 2021-07-06 07:12:33 +02:00
mj-xmr
5e6762d459 EasyLogging++: Add UTests, that protect against regressions 2021-07-06 06:50:52 +02:00
tobtoht
bbeb555f00 wallet_api: getPassword 2021-07-05 02:49:27 +02:00
selsta
09779631f3 depends: add getmonero package mirror 2021-07-01 01:09:00 +02:00
selsta
8ae6c85efd trezor: add #if for ByteSizeLong
Turns out Ubuntu 18.04 ships with an old protobuf version.
2021-06-27 23:43:36 +02:00
luigi1111
9c18f2767b Merge pull request #7743
8a67724 wallet_api: get bytes sent/received (tobtoht)
2021-06-24 14:35:30 -05:00
tobtoht
8a67724218 wallet_api: get bytes sent/received 2021-06-24 21:32:03 +02:00
selsta
e24875e572 simplewallet: don't truncate integ. address in export_transfers 2021-06-24 21:21:26 +02:00
luigi1111
14a1b89122 Merge pull request #7752
4251cc0 unit_tests: check for ge_frombytes_vartime failure (moneromooo-monero)
67b97a5 easylogging++: do not delete uninitialized objects (moneromooo-monero)
7b6d959 trezor: fix potential use of uninitialized memory (moneromooo-monero)
2021-06-24 14:13:19 -05:00
luigi1111
4f08d52dfa Merge pull request #7750
8e0b8dd wallet/api: remove Bitmonero namespace alias (selsta)
2021-06-24 14:12:37 -05:00
luigi1111
0a9d218044 Merge pull request #7749
e63c110 wallet_api: address_book: don't lose pid on setDescription (tobtoht)
2021-06-24 14:11:45 -05:00
luigi1111
99aa45fd34 Merge pull request #7746
1aa1850 wallet_api: signMessage: add sign with subaddress (tobtoht)
2021-06-24 14:06:13 -05:00
luigi1111
7c3629a5ee Merge pull request #7742
f174a8f wallet_api: reconnectDevice (tobtoht)
2021-06-24 14:05:35 -05:00
luigi1111
ce129599d0 Merge pull request #7739
6914d5b wallet_api: move adjust_mixin call within try block (tobtoht)
2021-06-24 14:04:42 -05:00
luigi1111
48e59b8064 Merge pull request #7672
5bf91fc add documentation for monero-blockchain-stats (donkeydonkey)
2021-06-24 14:03:03 -05:00
luigi1111
ad9956d987 Merge pull request #7634
5a2edea db_lmdb: catch exceptions testing for mmap support (moneromooo-monero)
2021-06-24 14:01:42 -05:00
luigi1111
f8abb225fc Merge pull request #7633
f6e2636 blockchain_db: harden code against invalid input types (moneromooo-monero)
2021-06-24 14:00:59 -05:00
luigi1111
3366bd81eb Merge pull request #7612
254a133 core: speed up print_coinbase_tx_sum (moneromooo-monero)
2021-06-24 13:59:44 -05:00
luigi1111
1796b44c67 Merge pull request #7611
71741a1 blockchain_import: fix wrong reported block/tx hashes on error (moneromooo-monero)
2021-06-24 13:59:12 -05:00
luigi1111
e028591336 Merge pull request #7380
8889f49 easylogging++: fix potential memory corruption (moneromooo-monero)
2021-06-24 13:57:53 -05:00
selsta
8ef51dc546 wallet_api: fix typo in exportKeyImages 2021-06-23 20:44:13 +02:00
malinero
42b74a37d3 Include Libusb and hidapi on android 2021-06-21 19:52:56 +02:00
moneromooo-monero
d689b946f9 protocol: fix delayed "you are now synchronized..." message 2021-06-21 15:37:40 +00:00
erciccione
de4413b076 workflows: don't build PRs if only docs and READMEs are being changed 2021-06-21 10:18:09 +02:00
fdov
8ff21e1e84 doc: update IRC references to Libera 2021-06-20 21:44:45 +02:00
lza_menace
f0df72688f add singapore.node.xmr.pm to seed nodes 2021-06-18 11:14:03 -07:00
luigi1111
282e2ef058 Merge pull request #7738
a240453 README: freenode -> libera (selsta)
2021-06-16 14:41:40 -05:00
luigi1111
4e07c8cbbc Merge pull request #7733
cd8901c randomx: bump submodule to v1.1.9 (selsta)
2021-06-16 14:39:51 -05:00
luigi1111
b63442da21 Merge pull request #7730
e761577 provide key images of spent outputs in wallet rpc (woodser)
2021-06-16 14:38:06 -05:00
luigi1111
ab0bb31518 Merge pull request #7683
41297c1 CMake: strip targets (optional) with -D STRIP_TARGETS=ON (mj-xmr)
2021-06-16 14:37:39 -05:00
luigi1111
f8f1c78984 Merge pull request #7676
c19f0cb Compil time: move epee storages/parserse_base_utils.h to parserse_base_utils.cpp (mj-xmr)
2021-06-16 14:36:42 -05:00
woodser
e7615772fa provide key images of spent outputs in wallet rpc 2021-06-15 15:54:39 -04:00
mj-xmr
c19f0cbdea Compil time: move epee storages/parserse_base_utils.h to parserse_base_utils.cpp 2021-06-11 21:20:51 +02:00
mj-xmr
41297c10f0 CMake: strip targets (optional) with -D STRIP_TARGETS=ON 2021-06-11 21:19:37 +02:00
luigi1111
ab7df49331 Merge pull request #7751
b8b054c python-rpc: add missing python api for new freeze/thaw/frozen RPC (moneromooo-monero)
2021-06-11 12:28:01 -05:00
moneromooo-monero
4251cc0b4d unit_tests: check for ge_frombytes_vartime failure
CID 1446559
2021-06-11 07:51:45 +00:00
moneromooo-monero
67b97a5f16 easylogging++: do not delete uninitialized objects
CID 1446562
2021-06-11 07:51:29 +00:00
moneromooo-monero
7b6d959596 trezor: fix potential use of uninitialized memory
CID 1446575
2021-06-11 07:11:23 +00:00
moneromooo-monero
b8b054c0f1 python-rpc: add missing python api for new freeze/thaw/frozen RPC 2021-06-11 07:00:27 +00:00
luigi1111
7499837a6f Merge pull request #7661
08e4497 Improve cryptonote (block and tx) binary read performance (Lee Clagett)
2021-06-10 12:00:54 -05:00
luigi1111
ca73284951 Merge pull request #7729
b2e1558 support freeze, thaw, and frozen in wallet rpc (woodser)
2021-06-10 11:47:05 -05:00
luigi1111
667d3dd4c2 Merge pull request #7684
ed6f053 blockchain: speed up repeated pops (mostly in tests) (moneromooo-monero)
2021-06-10 11:46:27 -05:00
luigi1111
a1a3e970f7 Merge pull request #7662
4da1112 rpc: send confirmations in get_transactions result (moneromooo-monero)
2021-06-10 11:34:20 -05:00
luigi1111
f85cab6750 Merge pull request #7481
430b758 Warnings: add warnings as errors: 'switch' & 'return-type' (mj-xmr)
2021-06-10 11:19:11 -05:00
luigi1111
25bbb26f63 Merge pull request #7416
b4fe7c2 epee linkage dynamic; move monero_add_library to main CMakeLists.txt (mj-xmr)
2021-06-10 11:18:26 -05:00
selsta
8e0b8ddb96 wallet/api: remove Bitmonero namespace alias 2021-06-08 23:29:41 +02:00
tobtoht
e63c1107c0 wallet_api: address_book: don't lose pid on setDescription 2021-06-08 15:20:48 +02:00
tobtoht
8cf95c8f29 wallet2: refresh: check error and throw before potentially breaking out of loop 2021-06-04 18:37:06 +02:00
tobtoht
1aa1850ba5 wallet_api: signMessage: add sign with subaddress 2021-06-04 18:16:10 +02:00
tobtoht
d52d21bd46 ledger: don't lock for software device 2021-06-04 17:41:42 +02:00
tobtoht
f174a8f05f wallet_api: reconnectDevice 2021-06-04 15:24:53 +02:00
tobtoht
ce40c33a33 ledger: use software device if we have view key 2021-06-04 15:02:06 +02:00
tobtoht
8cea9d8605 wallet: Reset RPC Pay ID on node switch
RPC pay client ID is sent with each RPC request, set a new secret every time we switch nodes to mitigate trivial correlation
2021-06-04 13:58:09 +02:00
tobtoht
6914d5b914 wallet_api: move adjust_mixin call within try block 2021-06-04 13:41:10 +02:00
luigi1111
1c8e598172 Merge pull request #7735
44cc6d6 Fix boost 1.76.0 compatibility (loqs)
2021-06-01 22:12:12 -05:00
luigi1111
e8bf9003dd Merge pull request #7726
0f45211 CMake: add *.inl to monero_find_all_headers() glob, along *.h* (mj-xmr)
2021-06-01 22:11:04 -05:00
luigi1111
51171d2ca3 Merge pull request #7725
a4a154b CMake: glob missing headers for easylogging (mj-xmr)
2021-06-01 22:10:42 -05:00
luigi1111
e31182918c Merge pull request #7724
44e8395 CMake: glob missing headers for wallet2 (mj-xmr)
2021-06-01 22:10:19 -05:00
luigi1111
08726ff0f3 Merge pull request #7723
3450f4b Doc: funtional_tests add new mining env vars and how to use them (mj-xmr)
2021-06-01 22:09:54 -05:00
luigi1111
97436399eb Merge pull request #7719
da45d3f trezor: deprecated ByteSize -> ByteSizeLong (selsta)
2021-06-01 22:09:26 -05:00
luigi1111
21c6376f33 Merge pull request #7715
0c13623 cmake: fix check_linker_flag (selsta)
2021-06-01 22:09:01 -05:00
luigi1111
fcb347820d Merge pull request #7713
b40129e Warnings: unused var in core_tests:chaingen.h (mj-xmr)
2021-06-01 22:08:40 -05:00
luigi1111
d51e0c38f9 Merge pull request #7712
d772f13 epee: include public openssl header in cmake (selsta)
2021-06-01 22:08:15 -05:00
luigi1111
126ff6b0ee Merge pull request #7711
4969f39 cmake: use CMAKE_CURRENT_LIST_DIR in FindLibUSB (selsta)
2021-06-01 22:07:47 -05:00
luigi1111
39cd392ac3 Merge pull request #7710
9165344 CI: depends downloads relax retries (mj-xmr)
2021-06-01 22:07:21 -05:00
luigi1111
381f8f5e24 Merge pull request #7709
a1c4307 Warnings: unused variable in core/blockchain.cpp (mj-xmr)
2021-06-01 22:06:54 -05:00
luigi1111
d845a5a0c3 Merge pull request #7705
581c3af Warnings: unused var at cryptonote_tx_utils.cpp (mj-xmr)
2021-06-01 22:06:27 -05:00
luigi1111
45007f35cf Merge pull request #7689
f93db0d clang: fix -pie flag (selsta)
2021-06-01 22:05:45 -05:00
selsta
a24045340c README: freenode -> libera 2021-06-01 03:07:58 +02:00
loqs
44cc6d6762 Fix boost 1.76.0 compatibility
Add missing header boost/mpl/contains.hpp
monero-project/monero/issues/7728
2021-05-24 05:31:14 +02:00
selsta
cd8901cc01 randomx: bump submodule to v1.1.9 2021-05-22 23:12:23 +02:00
woodser
b2e1558bde support freeze, thaw, and frozen in wallet rpc 2021-05-18 20:35:48 -04:00
mj-xmr
0f45211c6b CMake: add *.inl to monero_find_all_headers() glob, along *.h* 2021-05-14 15:29:57 +02:00
mj-xmr
44e8395d2a CMake: glob missing headers for wallet2 2021-05-14 14:22:29 +02:00
mj-xmr
a4a154b0e2 CMake: glob missing headers for easylogging 2021-05-14 14:18:16 +02:00
mj-xmr
3450f4bc04 Doc: funtional_tests add new mining env vars and how to use them 2021-05-14 11:27:56 +02:00
selsta
da45d3f5b3 trezor: deprecated ByteSize -> ByteSizeLong 2021-05-13 03:51:31 +02:00
luigi1111
b1873af519 Merge pull request #7697
881d81c translations: use full path in cmake (selsta)
2021-05-12 17:03:17 -05:00
luigi1111
fadc112aee Merge pull request #7696
0794811 cmake: set xcode file type (selsta)
2021-05-12 17:02:34 -05:00
luigi1111
4fcbc584f0 Merge pull request #7694
004b167 cmake: wallet_api doesn't need wallet_merged (selsta)
2021-05-12 17:00:04 -05:00
luigi1111
b7ee587ddb Merge pull request #7691
cbd54ea cmake: set 3.5 as minimum version (selsta)
2021-05-12 16:59:17 -05:00
luigi1111
342f8c8b97 Merge pull request #7690
3cc4428 clang: fix -Wpessimizing-move warning (selsta)
2021-05-12 16:58:34 -05:00
luigi1111
c1a1f2a6ea Merge pull request #7688
451b5a5 clang: fix -Wrange-loop-analysis warnings (selsta)
2021-05-12 16:57:32 -05:00
luigi1111
8da33d2e46 Merge pull request #7686
6799e21 Tests: Mining test uses a parametric path for finding the calculation app (mj-xmr)
2021-05-12 16:56:28 -05:00
luigi1111
e505ffef5f Merge pull request #7677
445a9d8 wallet_api: import / export output function (tobtoht)
2021-05-12 16:53:27 -05:00
luigi1111
c91bd17f90 Merge pull request #7670
2dfb111 workflows: upload source archive artifact (selsta)
2021-05-12 16:52:50 -05:00
luigi1111
ea5c99f142 Merge pull request #7685
8c3c7b8 depends, docker: fix bintray links (selsta)
2021-05-12 15:32:16 -05:00
luigi1111
628c04499b Merge pull request #7682
bbdb612 Wallet2: Update 'approximate_testnet_rolled_back_blocks' (rbrunner7)
2021-05-12 15:30:34 -05:00
luigi1111
7d0927f8ad Merge pull request #7681
c57ef7f wallet2: Fix rescan_bc keep_ki option (Nathan Dorfman)
2021-05-12 15:30:05 -05:00
luigi1111
a88e115c09 Merge pull request #7668
2b91806 protocol: remove unreachable code (moneromooo-monero)
2021-05-12 15:21:27 -05:00
selsta
9c0e681dc9 cmake: treat warnings as error in compiler flag tests 2021-05-12 21:55:32 +02:00
luigi1111
661c8f93cf Merge pull request #7667
eb272b1 Add mj-xmr GPG key (mj-xmr)
2021-05-12 14:50:22 -05:00
luigi1111
cf69419316 Merge pull request #7666
bd74c6b Doc: Compiling, debugging and testing efficiently see docs/COMPILING_DEBUGGING_TESTING.md (mj-xmr)
2021-05-12 14:49:26 -05:00
luigi1111
ac87ac19b2 Merge pull request #7665
15e6275 CMake: new macro - finding all headers (extract from epee) (mj-xmr)
2021-05-12 14:39:39 -05:00
selsta
0c13623411 cmake: fix check_linker_flag 2021-05-12 02:09:55 +02:00
luigi1111
066309cddb Merge pull request #7664
5871e7a net_node: add seed node (selsta)
2021-05-11 18:04:49 -05:00
luigi1111
41b4c4991f Merge pull request #7663
8953f19 CI: Actions' build.yaml uses variables instead of repetitions (mj-xmr)
2021-05-11 17:43:47 -05:00
mj-xmr
b40129e253 Warnings: unused var in core_tests:chaingen.h 2021-05-11 10:22:06 +02:00
selsta
4969f39c09 cmake: use CMAKE_CURRENT_LIST_DIR in FindLibUSB 2021-05-11 01:29:44 +02:00
selsta
d772f1378b epee: include public openssl header in cmake 2021-05-09 22:22:17 +02:00
mj-xmr
9165344d8e CI: depends downloads relax retries 2021-05-08 18:00:53 +02:00
mj-xmr
a1c4307128 Warnings: unused variable in core/blockchain.cpp 2021-05-08 12:04:19 +02:00
mj-xmr
581c3af03a Warnings: unused var at cryptonote_tx_utils.cpp 2021-05-02 18:00:29 +02:00
selsta
881d81cce4 translations: use full path in cmake 2021-04-28 17:06:59 +02:00
selsta
7359d51d56 cmake: fix non portable code 2021-04-28 17:05:59 +02:00
selsta
0794811b40 cmake: set xcode file type 2021-04-28 14:49:13 +02:00
selsta
3cc4428d45 clang: fix -Wpessimizing-move warning 2021-04-28 11:33:37 +02:00
selsta
004b167095 cmake: wallet_api doesn't need wallet_merged 2021-04-27 14:36:56 +02:00
selsta
cbd54ea524 cmake: set 3.5 as minimum version 2021-04-27 11:02:05 +02:00
selsta
8c3c7b8109 depends, docker: fix bintray links 2021-04-27 09:55:32 +02:00
selsta
f93db0d46a clang: fix -pie flag 2021-04-27 09:52:34 +02:00
mj-xmr
6799e212cc Tests: Mining test uses a parametric path for finding the calculation app
MINING_SILENT and MINING_NO_MEASUREMENT env vars
2021-04-27 06:21:02 +02:00
selsta
451b5a510e clang: fix -Wrange-loop-analysis warnings 2021-04-27 05:30:27 +02:00
moneromooo-monero
ed6f05357c blockchain: speed up repeated pops (mostly in tests)
The heavy rolling median reset only has to be performed after
all blocks are popped
2021-04-26 14:07:35 +00:00
rbrunner7
bbdb612b51 Wallet2: Update 'approximate_testnet_rolled_back_blocks' 2021-04-25 10:20:39 +02:00
mj-xmr
b4fe7c2401 epee linkage dynamic; move monero_add_library to main CMakeLists.txt 2021-04-24 09:45:51 +02:00
Nathan Dorfman
c57ef7f807 wallet2: Fix rescan_bc keep_ki option 2021-04-23 09:11:45 -06:00
luigi1111
0a1ddc2eff Merge pull request #7669
679d055 Remove payload copy in all outgoing p2p messages (Lee Clagett)
2021-04-22 01:51:01 -04:00
luigi1111
b6a8cfc41b Merge pull request #7658
834e23b Doc: Update Gitian (Reproducible Builds) with small code snippets and fixes (mj-xmr)
2021-04-22 01:46:57 -04:00
luigi1111
215976beba Merge pull request #7656
5fe22ac ITS#9496 fix mdb_env_open bug from #8704 (hyc)
2021-04-22 01:43:18 -04:00
luigi1111
9bba3f4767 Merge pull request #7651
c8ff1d4 monero-wallet-cli: improve error message when tx amount is zero (Elliot Wirrick)
2021-04-22 01:35:20 -04:00
luigi1111
6d7bb2b8ba Merge pull request #7643
19ed7ab Test: Enable coverage for external repositories (mj-xmr)
2021-04-22 01:34:26 -04:00
luigi1111
3c1ea110d9 Merge pull request #7016
dc81e23 Split epee/string_tools.h and encapsulate boost::lexical_cast (mj-xmr)
2021-04-22 01:32:32 -04:00
tobtoht
445a9d8ba3 wallet_api: import / export output function 2021-04-22 04:26:17 +02:00
donkeydonkey
5bf91fc894 add documentation for monero-blockchain-stats 2021-04-19 20:54:44 +02:00
selsta
2dfb111a92 workflows: upload source archive artifact
Co-authored-by: xiphon <xiphon@protonmail.com>
2021-04-19 07:33:27 +02:00
moneromooo-monero
2b918068cc protocol: remove unreachable code 2021-04-17 15:22:26 +00:00
mj-xmr
eb272b12a3 Add mj-xmr GPG key 2021-04-17 06:48:39 +02:00
mj-xmr
bd74c6b8ba Doc: Compiling, debugging and testing efficiently
see docs/COMPILING_DEBUGGING_TESTING.md
2021-04-17 06:37:23 +02:00
mj-xmr
dc81e23e60 Split epee/string_tools.h and encapsulate boost::lexical_cast 2021-04-16 20:54:20 +02:00
luigi1111
e45619e61e Revert "Merge pull request #7136"
This reverts commit 63c7ca07fb, reversing
changes made to 2218e23e84.
2021-04-16 13:52:44 -05:00
luigi1111
d544fd0f52 Merge pull request #7653
73d3b00 unit_tests: fix boost 1.58 compatibility (anon)
2021-04-16 12:52:42 -05:00
luigi1111
257e7432cb Merge pull request #7652
02f4954 gitian: remove osslsigncode (selsta)
2021-04-16 12:52:05 -05:00
luigi1111
13418dbb98 Merge pull request #7648
25e8254 expose set_offline to wallet api (benevanoff)
2021-04-16 12:51:22 -05:00
luigi1111
fa6a6c5cca Merge pull request #7642
82de000 Add base Monero address which is needed to view wallet (Justin Ehrenhofer)
2021-04-16 12:50:42 -05:00
luigi1111
4ca80bd312 Merge pull request #7641
a16328e easylogging++: in place log sanitization (moneromooo-monero)
2021-04-16 12:49:00 -05:00
luigi1111
288e5ec350 Merge pull request #7384
494f2e1 rpc: fix some error return codes/status (moneromooo-monero)
2021-04-16 12:48:05 -05:00
luigi1111
7cf47d754c Merge pull request #7258
1d1c430 p2p: fix cubic selection in filtered peer list (moneromooo)
2021-04-16 12:46:34 -05:00
luigi1111
63c7ca07fb Merge pull request #7136
23aae55 Remove payload copy in all outgoing p2p messages (Lee Clagett)
2021-04-16 12:45:30 -05:00
luigi1111
2218e23e84 Merge pull request #7002
673c6d2 Reduce compilation time of epee/portable_storage_template_helper.h (mj-xmr)
2021-04-16 12:43:42 -05:00
mj-xmr
15e627569b CMake: new macro - finding all headers (extract from epee) 2021-04-16 09:28:43 +02:00
selsta
5871e7ab19 net_node: add seed node 2021-04-16 03:22:16 +02:00
mj-xmr
8953f19489 CI: Actions' build.yaml uses variables instead of repetitions 2021-04-15 20:18:28 +02:00
moneromooo-monero
4da1112967 rpc: send confirmations in get_transactions result
if the wallet does it, it would get a wrong result (possibly even
negative) if its local chain is not synced up to the daemon's yet
2021-04-15 15:31:52 +00:00
mj-xmr
834e23bfcf Doc: Update Gitian (Reproducible Builds) with small code snippets and fixes 2021-04-11 23:19:38 +02:00
Howard Chu
5fe22ac766 ITS#9496 fix mdb_env_open bug from #8704
Broken in 9c6eb75c65
2021-04-09 14:21:15 +01:00
anon
73d3b00b35 unit_tests: fix boost 1.58 compatibility 2021-04-08 11:45:27 +00:00
selsta
02f4954229 gitian: remove osslsigncode
Unused and archive is offline
2021-04-08 02:25:33 +02:00
Elliot Wirrick
c8ff1d4d23 monero-wallet-cli: improve error message when tx amount is zero 2021-04-07 10:10:16 -04:00
luigi1111
f6279a633d Merge pull request #7650
e7301ef readme: Add note regarding submodule sync and update (George Lee Ge)
2021-04-06 12:26:24 -05:00
luigi1111
4834bd8aa0 Merge pull request #7646
176cea0 Tests: Fix test node_server.bind_same_p2p_port from randomly crashing (mj-xmr)
2021-04-06 12:25:00 -05:00
luigi1111
1475236810 Merge pull request #7639
53683d7 Warnings: fix ut/levin.cpp missing braces (mj-xmr)
2021-04-06 12:24:29 -05:00
luigi1111
2098941ca0 Merge pull request #7635
447bfae wallet2: fix unlocked mixup in light wallet mode (moneromooo-monero)
2021-04-06 12:23:45 -05:00
luigi1111
8dcb37f190 Merge pull request #7580
e8554e8 Doc: Add ccache to README.md and Brewfile (mj-xmr)
2021-04-06 12:23:13 -05:00
luigi1111
e7c1f8eacd Merge pull request #7489
353028d CI: ccache for ubuntu-test; Using 'Default' architecture The cmake logic is in workflows/build.yml (mj-xmr)
2021-04-06 12:22:32 -05:00
luigi1111
3c69596bc9 Merge pull request #7321
f9b5b52 fix serialization being different on mac (moneromooo-monero)
2021-04-06 12:20:15 -05:00
mj-xmr
353028d8e9 CI: ccache for ubuntu-test; Using "Default" architecture
The cmake logic is in workflows/build.yml
2021-04-06 14:42:53 +02:00
George Lee Ge
e7301ef54a readme: Add note regarding submodule sync and update 2021-04-06 00:16:41 +02:00
benevanoff
25e82545f3 expose set_offline to wallet api 2021-04-05 13:41:04 -05:00
mj-xmr
176cea0ec6 Tests: Fix test node_server.bind_same_p2p_port from randomly crashing 2021-04-05 17:36:13 +02:00
mj-xmr
19ed7abdf9 Test: Enable coverage for external repositories
Add monero_enable_coverage() for reuse in case C/CXX_FLAGS are overwritten.
2021-04-01 19:50:54 +02:00
Justin Ehrenhofer
82de000ffe Add base Monero address which is needed to view wallet
One needs the base Monero donation address to be able to restore the Monero Core Team donation wallet from address and viewkey. Address provided by selsta.
2021-03-30 22:33:13 +02:00
luigi1111
9a5579fc4f Merge pull request #7387
45f01f5 [CI] Adaptive mining timeout, depending on available CPU power Printing also available RAM. Add comprehensive description. (mj-xmr)
2021-03-30 12:04:36 -04:00
luigi1111
39ce27b5d5 Merge pull request #7332
57edfd7 p2p: allow CIDR notation in DNS blocklist (moneromooo-monero)
2021-03-30 12:03:56 -04:00
moneromooo-monero
57edfd78fd p2p: allow CIDR notation in DNS blocklist 2021-03-30 08:57:04 +00:00
mj-xmr
e8554e8c49 Doc: Add ccache to README.md and Brewfile 2021-03-30 06:13:20 +02:00
mj-xmr
45f01f577c [CI] Adaptive mining timeout, depending on available CPU power
Printing also available RAM. Add comprehensive description.
2021-03-30 05:48:55 +02:00
luigi1111
a7663f4ba1 Merge pull request #7476
81a4de1 dependencies in openSUSE (cabelo)
2021-03-29 22:40:18 -04:00
luigi1111
08f6d0e185 Merge pull request #7439
0f2b5af Reduced executable size; reduced call sequence to 'allowed' log function (Lee Clagett)
2021-03-29 22:39:31 -04:00
luigi1111
0f2eea0a08 Merge pull request #7435
1ac7134 Mac: Enable on ARM, by not enforcing x86_64 (mj-xmr)
2021-03-29 22:38:16 -04:00
luigi1111
e1d987aa66 Merge pull request #7430
064eeb2 wallet_rpc_server: set seed language in generate_from_keys (moneromooo-monero)
2021-03-29 22:37:19 -04:00
luigi1111
07dc1a8db3 Merge pull request #7636
18c7f9c depends: openssl 1.1.1i -> 1.1.1k (selsta)
2021-03-29 21:59:36 -04:00
luigi1111
a5e122bebd Merge pull request #7632
2d1fa5e cmake: Don't default to -march=native on OpenBSD (Nathan Dorfman)
2021-03-29 21:59:12 -04:00
luigi1111
0b0bcbad95 Merge pull request #7622
ab5f0ec ITS#9500 fix regression from ITS#8662 (Howard Chu)
2021-03-29 21:56:40 -04:00
luigi1111
b12e195fba Merge pull request #7620
fe63256 cryptonote_protocol_handler: fix race condition (anon)
ded2f3a cryptonote_protocol_handler: add race condition demo (anon)
2021-03-29 21:55:11 -04:00
luigi1111
570e9b9a07 Merge pull request #7549
fa54d25 Doc: add only the required boost libraries instead of all of them (mj-xmr)
2021-03-29 21:51:42 -04:00
luigi1111
1a8b6ba8c0 Merge pull request #7542
7c4e4c7 wallet_api: add isDeterministic() (tobtoht)
2021-03-29 21:50:53 -04:00
luigi1111
0607a10696 Merge pull request #7538
1851f26 wallet_api: add seed_offset param to seed() (tobtoht)
2021-03-29 21:47:40 -04:00
luigi1111
adcd7b05ac Merge pull request #7520
c24f185 README: step by step detail for rpi setup commands (moneromooo-monero)
2021-03-29 21:47:08 -04:00
luigi1111
a2b046dafc Merge pull request #7460
2935a0c async_protocol_handler_config: fix deadlock (anon)
c877705 async_protocol_handler_config: add deadlock demo (anon)
2021-03-29 21:46:29 -04:00
luigi1111
247db4e304 Merge pull request #7373
86263b3 Honor LARGE_PAGES flag in randomx umask (Howard Chu)
2021-03-29 21:41:56 -04:00
luigi1111
2cb31c42a8 Merge pull request #7391
7b51547 gpg_keys: add anon (anon)
2021-03-29 21:21:38 -04:00
luigi1111
aa8c156e1d Merge pull request #7396
c836dc1 [CI] Use Python3 for funcional tests, instead of Python2 (mj-xmr)
2021-03-29 21:18:25 -04:00
luigi1111
ac091fb539 Merge pull request #7358
f346e3e wallet_rpc_payments: implement multithreading (gdmojo)
2021-03-29 21:10:48 -04:00
luigi1111
c2bc829cca Merge pull request #7326
cf266d6 bootstrap_daemon: proxy configuration support (xiphon)
2021-03-29 21:08:36 -04:00
luigi1111
8c8197463f Merge pull request #7310
76fe73b Revert 'fix accessing an network address in a deleted context' (selsta)
2021-03-29 21:08:03 -04:00
luigi1111
1cd1206332 Merge pull request #7238
aa3e89a p2p: fix set_peer_just_seen ignoring last_seen (moneromooo)
2021-03-29 21:06:03 -04:00
luigi1111
cf1a95b67d Merge pull request #7088
386ef03 Add TLSA support to DNSSEC fetching (Lee Clagett)
2021-03-29 21:05:00 -04:00
moneromooo-monero
a16328e853 easylogging++: in place log sanitization
saves an object ctor/dtor per log
2021-03-29 22:26:46 +00:00
mj-xmr
673c6d2d11 Reduce compilation time of epee/portable_storage_template_helper.h 2021-03-28 15:41:48 +02:00
mj-xmr
53683d7f90 Warnings: fix ut/levin.cpp missing braces 2021-03-27 09:26:44 +01:00
selsta
18c7f9c446 depends: openssl 1.1.1i -> 1.1.1k 2021-03-25 21:38:57 +01:00
moneromooo-monero
447bfae2a4 wallet2: fix unlocked mixup in light wallet mode 2021-03-25 09:33:40 +00:00
moneromooo-monero
5a2edea16b db_lmdb: catch exceptions testing for mmap support
Turns out at least one arch (armel based) does not have unique_path
implemented and throws
2021-03-25 09:24:45 +00:00
Nathan Dorfman
2d1fa5e0ba cmake: Don't default to -march=native on OpenBSD 2021-03-24 16:43:15 -06:00
moneromooo-monero
f6e2636493 blockchain_db: harden code against invalid input types
If an invalid input type were to get to this, the code could
remove key images that might be present already in the chain,
which could allow a double spend, even if this is impossible
with the current code.

Reported by KeyboardWarrior.
2021-03-24 21:43:57 +00:00
Howard Chu
ab5f0ec37a ITS#9500 fix regression from ITS#8662
mdb_load -a patch broke overwriting with MDB_CURRENT
2021-03-23 20:51:19 +00:00
luigi1111
dcba757dd2 Merge pull request #7619
2a20434 Fix monerod --rpc-ssl disabled (Lee Clagett)
2021-03-22 20:19:32 -04:00
luigi1111
8e139db454 Merge pull request #7618
3bd3a44 python-rpc: add function for new scan_tx RPC (moneromooo-monero)
2021-03-22 20:18:29 -04:00
anon
fe632560f4 cryptonote_protocol_handler: fix race condition 2021-03-22 19:42:46 +00:00
anon
ded2f3aa85 cryptonote_protocol_handler: add race condition demo 2021-03-22 19:42:46 +00:00
moneromooo-monero
3bd3a44aac python-rpc: add function for new scan_tx RPC 2021-03-20 17:40:46 +00:00
mj-xmr
c836dc11c9 [CI] Use Python3 for funcional tests, instead of Python2 2021-03-20 10:30:57 +01:00
luigi1111
5b8d714a4b Merge pull request #7422
d46d90c return output key for incoming transfers (benevanoff)
2021-03-20 01:57:44 -04:00
luigi1111
42987f93f4 Merge pull request #7418
68f1ca6 trezor: simplify recognition of integrated addresses (Dusan Klinec)
2021-03-20 01:53:03 -04:00
luigi1111
23e281716f Merge pull request #7417
bf86e95 added link to moneropedia to pruning in README.md (Luxter77)
b3238a8 Update size figures on the pruning section of README.md (Luxter77)
cf96615 Make pruning section more consistent in README.md (Luxter77)
2021-03-20 01:52:03 -04:00
luigi1111
53f3961259 Merge pull request #7413
1fbb33c cmake: fix ccache detection (anon)
2021-03-20 01:49:07 -04:00
luigi1111
e04e208141 Merge pull request #7412
6477b47 wallet_rpc: add scan_tx (tobtoht)
2021-03-20 01:47:44 -04:00
luigi1111
f2f33f6230 Merge pull request #7402
240d382 Epee: add headers to project files (via glob), to be able to search for them easily. (mj-xmr)
2021-03-20 01:46:34 -04:00
luigi1111
1707cab1a4 Merge pull request #7401
b5209a0 functional_tests: hide check_missing_rpc_methods behind requests check (moneromooo-monero)
2021-03-20 01:44:52 -04:00
luigi1111
43402e167a Merge pull request #7400
035e474 README: update libzmq minimum version to 4.2.0 for zmq_send_const (moneromooo-monero)
2021-03-20 01:44:21 -04:00
luigi1111
6776b70140 Merge pull request #7398
5984277 python-rpc: adapt urlparse for python3 (moneromooo-monero)
2021-03-20 01:43:50 -04:00
luigi1111
4a7b729025 Merge pull request #7394
b900fa0 Fix compiler warning for in keyvalue_serialization.h (mj-xmr)
2021-03-20 01:43:13 -04:00
luigi1111
e2a3f5cadd Merge pull request #7368
dc66115 Formatted markdown in readme.md (Timo Sarkar)
2021-03-20 01:39:02 -04:00
luigi1111
602926fe9d Merge pull request #7366
9867a91 Store RPC SSL key/cert for consistent authentication between runs (Lee Clagett)
2021-03-20 01:38:03 -04:00
luigi1111
6e1b3d1e0b Merge pull request #7274
daf023d epee: don't log raw packet data (moneromooo-monero)
2021-03-20 01:35:51 -04:00
luigi1111
7bf89dcbd3 Merge pull request #7005
249eae5 Allow byte_stream->byte_slice conversion to shrink unused buffer space (Lee Clagett)
2021-03-20 01:35:13 -04:00
luigi1111
8d7c1135b8 Merge pull request #6810
19b2283 New add_aux_pow RPC to support merge mining (moneromooo-monero)
2021-03-20 01:33:10 -04:00
moneromooo-monero
71741a1ed6 blockchain_import: fix wrong reported block/tx hashes on error 2021-03-19 11:04:24 +00:00
moneromooo-monero
254a1338ad core: speed up print_coinbase_tx_sum
It only needs to parse the tx headers, not the full tx data
2021-03-18 11:16:08 +00:00
anon
1fbb33c18b cmake: fix ccache detection 2021-03-16 13:41:15 +00:00
mj-xmr
fa54d25fb2 Doc: add only the required boost libraries instead of all of them 2021-03-13 12:10:58 +01:00
tobtoht
7c4e4c7603 wallet_api: add isDeterministic() 2021-03-12 23:43:58 +01:00
tobtoht
1851f2645a wallet_api: add seed_offset param to seed() 2021-03-12 19:45:29 +01:00
anon
2935a0c479 async_protocol_handler_config: fix deadlock 2021-03-12 11:59:06 +00:00
anon
c877705a53 async_protocol_handler_config: add deadlock demo 2021-03-12 11:59:06 +00:00
moneromooo-monero
c24f185196 README: step by step detail for rpi setup commands 2021-03-11 18:28:01 +00:00
mj-xmr
430b7586f6 Warnings: add warnings as errors: 'switch' & 'return-type' 2021-03-10 17:41:55 +01:00
cabelo
81a4de1883 dependencies in openSUSE 2021-03-07 20:04:16 -03:00
mj-xmr
1ac7134832 Mac: Enable on ARM, by not enforcing x86_64 2021-03-07 07:42:27 +01:00
moneromooo-monero
064eeb2861 wallet_rpc_server: set seed language in generate_from_keys
Also sanity check language name
2021-03-06 10:26:15 +00:00
moneromooo-monero
f9b5b521e8 fix serialization being different on mac
On Mac, size_t is a distinct type from uint64_t, and some
types (in wallet cache as well as cold/hot wallet transfer
data) use pairs/containers with size_t as fields. Mac would
save those as full size, while other platforms would save
them as varints. Might apply to other platforms where the
types are distinct.

There's a nasty hack for backward compatibility, which can
go after a couple forks.
2021-03-05 23:42:33 +00:00
luigi1111
0b6bfb1fd8 Merge pull request #7399
556af11 epee: return HTTP error 400 (Bad request) on deserialization error (moneromooo-monero)
2021-03-05 13:56:54 -05:00
luigi1111
c20e44df4e Merge pull request #7389
80125a2 async_protocol_handler_config: remove connection correctly (anon)
1b51d39 async_protocol_handler_config: add segfault demo (anon)
2021-03-05 13:54:45 -05:00
luigi1111
e01894672b Merge pull request #7335
8d03bb6 device_trezor: add redundant check (anon)
34f9428 device_trezor: wipe string fields properly (anon)
2021-03-05 13:52:01 -05:00
luigi1111
1cac8e92fa Merge pull request #7270
e767561 cmake: Use CMAKE_COMMAND. (Daniel Wyatt)
2021-03-05 13:49:31 -05:00
benevanoff
d46d90c436 return output key for incoming transfers 2021-03-04 11:09:15 -06:00
Luxter77
bf86e9527f added link to moneropedia to pruning in README.md 2021-03-04 09:52:30 -03:00
Luxter77
b3238a884d Update size figures on the pruning section of README.md 2021-03-04 09:49:10 -03:00
Dusan Klinec
68f1ca65e6 trezor: simplify recognition of integrated addresses
now it is possible to simplify integrated addresses recognition using transaction destination info directly
fixes https://github.com/monero-project/monero-gui/issues/3346
2021-03-03 14:51:04 +01:00
Lucas Daniel Velazquez M
cf9661509e Make pruning section more consistent in README.md
use syntax highlighting on commands and command line arguments
2021-03-02 15:11:40 -03:00
tobtoht
6477b47ac7 wallet_rpc: add scan_tx 2021-03-01 23:02:43 +01:00
mj-xmr
240d382db4 Epee: add headers to project files (via glob), to be able to search for them easily.
Use case: IDEs
2021-02-25 20:16:02 +01:00
moneromooo-monero
b5209a09d2 functional_tests: hide check_missing_rpc_methods behind requests check 2021-02-23 20:10:03 +00:00
moneromooo-monero
035e474912 README: update libzmq minimum version to 4.2.0 for zmq_send_const 2021-02-23 19:47:57 +00:00
moneromooo-monero
556af11d3b epee: return HTTP error 400 (Bad request) on deserialization error
It's better than 404 (Not found)
2021-02-23 18:55:08 +00:00
moneromooo-monero
5984277fe3 python-rpc: adapt urlparse for python3 2021-02-23 11:43:22 +00:00
mj-xmr
b900fa03c1 Fix compiler warning for in keyvalue_serialization.h 2021-02-21 18:35:06 +01:00
gdmojo
f346e3ec0e wallet_rpc_payments: implement multithreading 2021-02-20 18:23:06 +00:00
anon
7b51547815 gpg_keys: add anon 2021-02-19 23:07:19 +00:00
anon
80125a2f77 async_protocol_handler_config: remove connection correctly 2021-02-19 22:27:29 +00:00
anon
1b51d398fb async_protocol_handler_config: add segfault demo 2021-02-19 22:27:28 +00:00
luigi1111
b8f3e44a3f Merge pull request #7381
21566fe [CI] Add ccache to Windows build (mj-xmr)
2021-02-18 14:12:28 -05:00
luigi1111
1614be4a41 Merge pull request #7371
1aecdcf Increase timeout for the mining test 4 times (to 240s) (mj-xmr)
2021-02-18 14:11:55 -05:00
luigi1111
1b11820187 Merge pull request #7361
935bfaa ITS#9007 don't free loose writemap pages (Kris Zyp)
2021-02-18 14:08:20 -05:00
luigi1111
6556c33f13 Merge pull request #7355
bd12984 Remove copies from foreach loops (thanks to Clang) (Lee Clagett)
1572df9 Removing unused namespace alias (Lee Clagett)
2021-02-18 14:06:47 -05:00
luigi1111
906a62c6b2 Merge pull request #7352
a60d3d8 unit_tests: fix wipeable_string parse_hexstr test with latest gtest (xiphon)
2021-02-18 14:05:58 -05:00
luigi1111
8cb63658f0 Merge pull request #7351
1957b5a Dockerfile: bump openssl version to 1.1.1i (erciccione)
2021-02-18 14:05:25 -05:00
luigi1111
ce5800a225 Merge pull request #7346
85db173 Remove unused variables in monero codebase (Kevin Barbour)
2021-02-18 14:03:31 -05:00
luigi1111
33004ded62 Merge pull request #7343
545b982 Remove unnecessary atomic operations in levin code (Lee Clagett)
2021-02-18 14:02:52 -05:00
luigi1111
0e35d46f5e Merge pull request #7341
b587ffa Stop adding more outputs than bulletproof allows (Alex Opie)
2021-02-18 14:02:13 -05:00
luigi1111
98cb68e5a7 Merge pull request #7340
ccd0f2b Simplewallet.cpp: Add export_outputs help (SomaticFanatic)
2021-02-18 14:01:29 -05:00
luigi1111
3f55f7df31 Merge pull request #7312
186271e monero-wallet-cli: Added command scan_tx (Horia Mihai David)
2021-02-18 14:00:35 -05:00
luigi1111
22460b6898 Merge pull request #7226
c3d2e21 [CI] MacOSX ccache: Proper ccache directory used of /Users/runner/Library/Caches/ccache (mj-xmr)
2021-02-18 13:58:40 -05:00
Horia Mihai David
186271e5d1 monero-wallet-cli: Added command scan_tx
To implement this feature, the wallet2::scan_tx API was implemented.
2021-02-17 20:25:55 +01:00
mj-xmr
21566fef9b [CI] Add ccache to Windows build 2021-02-17 14:04:21 +01:00
mj-xmr
c3d2e21269 [CI] MacOSX ccache: Proper ccache directory used of /Users/runner/Library/Caches/ccache 2021-02-17 13:42:46 +01:00
luigi1111
b731f7dca2 Merge pull request #7339
45981af docs: Remove outdated bits about anonymity network seed nodes (Nathan Dorfman)
2021-02-16 11:46:22 -05:00
luigi1111
233f368e46 Merge pull request #7331
740c369 Updated copyright date in README.md (Joseph Richardson)
2021-02-16 11:44:21 -05:00
luigi1111
ff5da7111c Merge pull request #7325
c26cca6 console: fix syntax for python3 (moneromooo-monero)
2021-02-16 11:43:02 -05:00
luigi1111
3328938d4e Merge pull request #7319
993e9be simplewallet: allow setting --restore-height 0 (selsta)
2021-02-16 11:42:14 -05:00
luigi1111
466e245f26 Merge pull request #7313
c66e8d9 build: omit '-pie' linker flag in native non static WIN32 GCC builds (xiphon)
2021-02-16 11:40:40 -05:00
moneromooo-monero
8889f490ce easylogging++: fix potential memory corruption
The m_typedConfigurations pointer is copied from one object to the next,
but deleted in the dtor, leading to potential double free. It is also
deleted first thing in the copy ctor, deleting uninitialized memory.

This does not seem to actually happen in practice (those functions do
not get called), but seems safer that way.

Coverity 1446562
2021-02-16 09:43:18 +00:00
luigi1111
f47651578f Merge pull request #7311 from selsta/miniupnp
miniupnp: set submodule to upstream, disable install
2021-02-15 22:01:01 -05:00
luigi1111
9f6dcbd568 Merge pull request #7308
df2f00f boosted_tcp_server: fix connection lifetime (anon)
3833624 boosted_tcp_server: add segfault demo (anon)
2021-02-15 21:53:43 -05:00
luigi1111
2222d90491 Merge pull request #7294
f10c9a1 remove obsolete pruning debug code (moneromooo-monero)
2021-02-15 21:51:12 -05:00
luigi1111
bf53f55366 Merge pull request #7288
015da03 wallet_rpc_server: don't abort on initial refresh failure (xiphon)
2021-02-15 21:50:34 -05:00
luigi1111
0bbaa9df81 Merge pull request #7275
f815740 p2p: make REQUEST_SUPPORT_FLAGS optional, pass flags in node data (moneromooo-monero)
2021-02-15 21:48:48 -05:00
luigi1111
080358ebef Merge pull request #7273
e7f5845 Only INFO log for short seed words with ALLOW_SHORT_WORDS active (rbrunner7)
2021-02-15 21:47:55 -05:00
luigi1111
f11e434ae6 Merge pull request #7265
bdabcd0 wallet_api: store fee for incoming txs in history (Ben Evanoff)
2021-02-15 21:46:22 -05:00
luigi1111
7c6db2fed1 Merge pull request #7252
f208d98 p2p: ignore empty IP from DNS block list (moneromooo-monero)
2021-02-15 21:45:46 -05:00
luigi1111
7439d891bf Merge pull request #7242
021a281 simplewallet: Add input file parameter to sign_transfer (Steff Richards)
2021-02-15 21:44:53 -05:00
luigi1111
ba76a4d26e Merge pull request #7185
50ff106 wallet api: allow wallet to fetch all key images via api (benevanoff)
2021-02-15 21:42:30 -05:00
luigi1111
4c410a1e3a Merge pull request #7000
dc48de7 Reduce compilation time of epee/portable_storage.h (mj-xmr)
2021-02-15 21:39:05 -05:00
luigi1111
4ee301c687 Merge pull request #6986
ee58f4f Balance includes unconfirmed payments (woodser)
2021-02-15 21:36:48 -05:00
luigi1111
90df2d7962 Merge pull request #6959
4e23107 Doxy - scan whole repo, create subdirs, don't generate LaTeX - mj-xmr (mj-xmr)
2021-02-15 21:34:18 -05:00
luigi1111
c5785c33f0 Merge pull request #6877
d643a86 p2p: add --max-connections-per-ip daemon option (moneromooo-monero)
2021-02-15 21:32:34 -05:00
moneromooo-monero
d643a865f3 p2p: add --max-connections-per-ip daemon option
Helps daemons behind a proxy get more than one connection.
Defaults to 1 (no change)
2021-02-15 19:08:07 +00:00
moneromooo-monero
494f2e1c21 rpc: fix some error return codes/status
Some RPC return an error string in status, and the code must return
true on error (with a status string).
2021-02-15 12:27:19 +00:00
luigi1111
c41e087d46 Merge pull request #6900
aaa3289 add more updates domains and make the voting generic, not just 2/3 (moneromooo-monero)
2021-02-14 18:58:37 -05:00
Lee Clagett
9867a913dc Store RPC SSL key/cert for consistent authentication between runs 2021-02-13 20:26:26 +00:00
Howard Chu
86263b386c Honor LARGE_PAGES flag in randomx umask 2021-02-11 14:42:49 +00:00
mj-xmr
1aecdcf536 Increase timeout for the mining test 4 times (to 240s) 2021-02-11 13:42:43 +01:00
Timo Sarkar
dc661152c1 Formatted markdown in readme.md 2021-02-10 17:34:40 +01:00
moneromooo-monero
19b228393f New add_aux_pow RPC to support merge mining 2021-02-09 11:58:21 +00:00
Kevin Barbour
85db1734e7 Remove unused variables in monero codebase
There are quite a few variables in the code that are no longer
(or perhaps never were) in use. These were discovered by enabling
compiler warnings for unused variables and cleaning them up.

In most cases where the unused variables were the result
of a function call the call was left but the variable
assignment removed, unless it was obvious that it was
a simple getter with no side effects.
2021-02-09 08:05:05 +01:00
mj-xmr
dc48de74e8 Reduce compilation time of epee/portable_storage.h 2021-02-06 08:18:42 +01:00
Kris Zyp
935bfaa913 ITS#9007 don't free loose writemap pages
Broken in ITS#8756
2021-02-01 16:09:08 +00:00
Lee Clagett
bd129849f0 Remove copies from foreach loops (thanks to Clang) 2021-01-28 23:42:40 -05:00
Lee Clagett
1572df9e26 Removing unused namespace alias 2021-01-28 23:40:57 -05:00
Lee Clagett
2a20434705 Fix monerod --rpc-ssl disabled 2021-01-28 17:53:47 +00:00
xiphon
a60d3d8ff7 unit_tests: fix wipeable_string parse_hexstr test with latest gtest
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=973196
2021-01-27 13:04:08 +00:00
erciccione
1957b5a8ef Dockerfile: bump openssl version to 1.1.1i 2021-01-26 11:27:08 +00:00
Alex Opie
520ce1ca81 Attempt to carve the fee from a partial payment early
Do this for both the estimate and actual fee.

#7337
2021-01-25 12:01:27 +13:00
Alex Opie
b587ffa1fd Stop adding more outputs than bulletproof allows
If more outputs are requested, they are split across
multiple transactions.

#7322
2021-01-25 10:01:38 +13:00
Lee Clagett
08e4497c6e Improve cryptonote (block and tx) binary read performance 2021-01-23 06:23:39 +00:00
SomaticFanatic
ccd0f2bdc2 Simplewallet.cpp: Add export_outputs help
See #6547
2021-01-21 18:39:43 -05:00
Nathan Dorfman
45981af10f docs: Remove outdated bits about anonymity network seed nodes 2021-01-21 13:59:17 -07:00
xiphon
cf266d66dd bootstrap_daemon: proxy configuration support 2021-01-21 13:45:44 +00:00
anon
8d03bb688e device_trezor: add redundant check 2021-01-20 22:06:51 +01:00
anon
34f942867f device_trezor: wipe string fields properly 2021-01-20 22:06:51 +01:00
Joseph Richardson
740c369ba6 Updated copyright date in README.md
2020 -> 2021
2021-01-20 09:51:57 -05:00
anon
df2f00f44d boosted_tcp_server: fix connection lifetime 2021-01-19 18:15:30 +01:00
anon
3833624ab1 boosted_tcp_server: add segfault demo 2021-01-19 18:15:30 +01:00
Lee Clagett
545b9825d6 Remove unnecessary atomic operations in levin code 2021-01-19 04:44:03 +00:00
Lee Clagett
679d05567d Remove payload copy in all outgoing p2p messages 2021-01-19 02:22:32 +00:00
moneromooo-monero
c26cca6f14 console: fix syntax for python3 2021-01-18 22:23:34 +00:00
Lee Clagett
0f2b5af0dd Reduced executable size; reduced call sequence to "allowed" log function 2021-01-16 22:55:41 +00:00
Lee Clagett
23aae5571b Remove payload copy in all outgoing p2p messages 2021-01-16 22:53:28 +00:00
xiphon
c66e8d92e4 build: omit '-pie' linker flag in native non static WIN32 GCC builds 2021-01-16 19:28:05 +00:00
luigi1111
cb70ae9450 Merge pull request #7260
c5c278c p2p: only log to global when a blocked IP is not already blocked (moneromooo-monero)
2021-01-15 23:52:05 -05:00
luigi1111
7908f848a3 Merge pull request #7245
41dfa96 Split fuzz tests during fuzz build (Nym Seddon)
2021-01-15 23:51:23 -05:00
luigi1111
8cb9f3cd80 Merge pull request #7240
46cc4a2 Header row for peer list in sync_info (Denis Goddard)
2021-01-15 23:50:28 -05:00
luigi1111
1f3f07d0e7 Merge pull request #7236
ab5e185 protocol: fix wrong command in logs (moneromooo-monero)
2021-01-15 23:49:34 -05:00
luigi1111
cc297da0ee Merge pull request #7204
10448eb Update repo copyright year to 2021 (Suriyaa Sundararuban)
2021-01-15 23:48:37 -05:00
luigi1111
cb21ec30a4 Merge pull request #7149
0660db3 fuzz_tests: add a test for utf8canonical (moneromooo-monero)
2021-01-15 23:47:49 -05:00
luigi1111
218981eba1 Merge pull request #7137
f2ad539 readline_buffer: Avoid consecutive duplicates in the history (codesoap)
2021-01-15 23:46:14 -05:00
luigi1111
d259ed0740 Merge pull request #7119
dd5e689 protocol: add calls to reserve where appropriate (moneromooo-monero)
2021-01-15 23:45:25 -05:00
luigi1111
d01f31460e Merge pull request #7113
7f30c49 simplewallet: don't complain about connecting to the daemon when offline (moneromooo-monero)
2021-01-15 23:44:32 -05:00
luigi1111
5c497ed22f Merge pull request #7112
47590fc rpc: report target height as 0 when synced (moneromooo-monero)
2021-01-15 23:43:46 -05:00
luigi1111
01613bd07e Merge pull request #6989
a2bd6de Clang IWYU header checker script (mj-xmr)
2021-01-15 23:42:52 -05:00
luigi1111
55b006ff9b Merge pull request #6975
700d4e9 Run Valgrind checks for any binary in a list (mj-xmr)
2021-01-15 23:41:51 -05:00
selsta
993e9be669 simplewallet: allow setting --restore-height 0 2021-01-13 12:36:58 +01:00
selsta
576bb88628 miniupnp: set submodule to upstream, disable install 2021-01-12 17:14:58 +01:00
selsta
76fe73b8bd Revert "fix accessing an network address in a deleted context"
This reverts commit 4e74385a1a.
2021-01-12 12:18:23 +01:00
moneromooo-monero
f10c9a16c4 remove obsolete pruning debug code 2021-01-08 15:41:59 +00:00
Alexander Blair
964ad0e51a Merge pull request #7286
372754a66 storages: overridable limits for loading portable_storage from binary (moneromooo-monero)
2021-01-07 17:54:19 -08:00
Alexander Blair
747699541e Merge pull request #7285
927141bcc Command max_bytes moved from dynamic map to static switch (Lee Clagett)
2021-01-07 17:54:02 -08:00
moneromooo-monero
372754a66e storages: overridable limits for loading portable_storage from binary 2021-01-07 20:24:29 +00:00
mj-xmr
700d4e9388 Run Valgrind checks for any binary in a list 2021-01-07 14:40:07 +01:00
xiphon
015da03a6f wallet_rpc_server: don't abort on initial refresh failure 2021-01-07 13:38:15 +00:00
luigi1111
e144dd5b15 Merge pull request #7281
b9092dd epee: also limit number of strings in portable_storage (moneromooo-monero)
2021-01-06 21:11:09 -05:00
luigi1111
e3acd3e6ba Merge pull request #7278
187b4d7 Restrict duplicate keys in epee binary format (Lee Clagett)
2021-01-06 21:10:30 -05:00
luigi1111
69e4a2c62d Merge pull request #7266
38a6e6e protocol: handle receiving a block hash we've not added yet (moneromooo-monero)
2021-01-06 21:09:03 -05:00
moneromooo-monero
b9092ddb5c epee: also limit number of strings in portable_storage
They require at least 24 bytes
2021-01-05 17:54:25 +00:00
moneromooo-monero
f815740403 p2p: make REQUEST_SUPPORT_FLAGS optional, pass flags in node data
removes a back and forth on connect, and the RPC can be removed
once all peers have updated
2021-01-04 13:33:34 +00:00
Alexander Blair
dbaf95ac77 Merge pull request #7271
4e74385a1 fix accessing an network address in a deleted context (moneromooo-monero)
2021-01-03 18:24:50 -08:00
Alexander Blair
71f7d4e71e Merge pull request #7268
1e27f7101 blockchain: lock access to m_blocks_hash_of_hashes (moneromooo-monero)
2021-01-03 18:24:22 -08:00
Alexander Blair
7264d64856 Merge pull request #7263
b652d598d add a max levin packet size by command type (moneromooo-monero)
2021-01-03 18:23:57 -08:00
Alexander Blair
03cdcd3909 Merge pull request #7261
5cd6fda1e portable_storage: better sanity checking (moneromooo-monero)
2021-01-03 18:23:31 -08:00
moneromooo-monero
daf023de6e epee: don't log raw packet data 2021-01-03 14:41:01 +00:00
moneromooo-monero
b652d598d1 add a max levin packet size by command type 2021-01-03 14:07:45 +00:00
moneromooo-monero
4e74385a1a fix accessing an network address in a deleted context
Both drop_connection and add_host_fail can drop the connection,
which invalidates the context, and thus the address it contains.

Thanks to wfaressuissia[m] for lots of help and prodding when
debugging this
2021-01-03 13:04:55 +00:00
rbrunner7
e7f5845ce8 Only INFO log for short seed words with ALLOW_SHORT_WORDS active 2021-01-03 11:04:53 +01:00
Daniel Wyatt
e767561ab8 cmake: Use CMAKE_COMMAND.
The cmake executable name can vary across platforms.
2021-01-02 18:19:58 -05:00
moneromooo-monero
1e27f7101e blockchain: lock access to m_blocks_hash_of_hashes
it is accessed both when adding and when prevalidating a set
of new hashes from a peer
2021-01-02 22:19:54 +00:00
moneromooo-monero
38a6e6eb26 protocol: handle receiving a block hash we've not added yet 2021-01-02 22:10:31 +00:00
Ben Evanoff
bdabcd01b7 wallet_api: store fee for incoming txs in history 2021-01-02 13:56:57 -06:00
moneromooo-monero
5cd6fda1ee portable_storage: better sanity checking 2021-01-02 12:34:28 +00:00
Alexander Blair
16c780d568 Merge pull request #7250
61b6e4cc6 Add aggressive restrictions to pre-handshake p2p buffer limit (Lee Clagett)
2021-01-01 22:35:59 -08:00
Alexander Blair
3bf0721ae6 Merge pull request #7246
0aa541b36 protocol: more sanity checks in new chain block hashes (moneromooo-monero)
2021-01-01 22:33:27 -08:00
Alexander Blair
175aa2497a Merge pull request #7243
8e2caf3fb portable_storage: check object limit where appropriate (moneromooo)
2021-01-01 22:32:53 -08:00
Alexander Blair
2d60232355 Merge pull request #7237
656b2f7ce p2p: fix deadlock banning while updating peer lists (moneromooo)
2021-01-01 22:32:34 -08:00
Alexander Blair
de8b27d8c2 Merge pull request #7234
31c69923b protocol: don't reset last request time on an idle timer (moneromooo-monero)
2021-01-01 22:31:03 -08:00
Alexander Blair
5917aec4a1 Merge pull request #7220
20bdbd7aa portable_storage: forbid unnamed sections (xiphon)
2021-01-01 22:28:21 -08:00
moneromooo-monero
c5c278c339 p2p: only log to global when a blocked IP is not already blocked 2021-01-01 19:54:51 +00:00
moneromooo
1d1c430b1f p2p: fix cubic selection in filtered peer list
Integer quantization biased the picks a lot (leading some indices
to never be selected)
2021-01-01 15:44:36 +00:00
moneromooo-monero
f208d98492 p2p: ignore empty IP from DNS block list
ie, if the list ends in ;
2021-01-01 12:30:45 +00:00
Nym Seddon
41dfa96e5a Split fuzz tests during fuzz build
Only build fuzz tests in a fuzz build, and don't build other tests.

Keeps fuzz compilers from instrumenting other tests, which are not fuzzed.

Resolves #7232
2021-01-01 09:09:28 +00:00
Denis Goddard
46cc4a253b Header row for peer list in sync_info 2020-12-31 20:09:35 -05:00
moneromooo-monero
0aa541b361 protocol: more sanity checks in new chain block hashes 2020-12-31 23:33:18 +00:00
moneromooo
8e2caf3fb4 portable_storage: check object limit where appropriate
also fix pedantic off by one in check
2020-12-31 22:35:17 +00:00
Steff Richards
021a28137d simplewallet: Add input file parameter to sign_transfer 2020-12-31 16:54:01 +01:00
moneromooo
aa3e89a2ba p2p: fix set_peer_just_seen ignoring last_seen 2020-12-31 03:10:10 +00:00
moneromooo
656b2f7ce1 p2p: fix deadlock banning while updating peer lists 2020-12-31 03:09:37 +00:00
moneromooo-monero
ab5e185140 protocol: fix wrong command in logs
this is not a levin packet, this is just its payload
2020-12-30 21:08:28 +00:00
moneromooo-monero
31c69923ba protocol: don't reset last request time on an idle timer
this prevents losing time of "idle time" for a peer, which could
otherwise be reset by another timed sync command from the peer
2020-12-30 14:22:10 +00:00
Alexander Blair
a1eca8ca7e Merge pull request #7221
1eb14af1a rpc: limit the number of txes for get_blocks.bin (moneromooo-monero)
2020-12-29 10:44:25 -08:00
Alexander Blair
88b7bc394e Merge pull request #7218
353f93ee1 portable_storage: remove array element limit (moneromooo-monero)
2020-12-29 10:44:05 -08:00
Alexander Blair
d4636a9258 Merge pull request #7207
f7ab8bc6d ssl: buffered handshake detection (anon)
2020-12-29 10:43:50 -08:00
moneromooo-monero
1eb14af1a3 rpc: limit the number of txes for get_blocks.bin 2020-12-29 04:31:58 +00:00
xiphon
20bdbd7aab portable_storage: forbid unnamed sections 2020-12-28 23:51:25 +00:00
moneromooo-monero
353f93ee1a portable_storage: remove array element limit
some people don't want it
2020-12-28 21:04:58 +00:00
Alexander Blair
2bccbeecb3 Merge pull request #7205
bcdc6c62b protocol: fix false positives dropping peers (moneromooo-monero)
2020-12-28 11:39:01 -08:00
Alexander Blair
b880860378 Merge pull request #7202
bc97eb8a3 portable_storage: remove overly aggressive cutoff (moneromooo-monero)
2020-12-28 11:38:46 -08:00
Alexander Blair
faaec08fa4 Merge pull request #7196
4310780c0 cryptonote_basic: guess what got lost porting patches to branches again (moneromooo-monero)
2020-12-28 11:38:07 -08:00
anon
f7ab8bc6d4 ssl: buffered handshake detection 2020-12-28 14:25:37 +01:00
mj-xmr
a2bd6deb12 Clang IWYU header checker script
Run with utils/health/clang-include-what-you-use-run.sh
2020-12-28 09:01:24 +01:00
moneromooo-monero
bcdc6c62b7 protocol: fix false positives dropping peers
it'd trigger on reorgs
2020-12-27 14:41:19 +00:00
Suriyaa Sundararuban
10448eba37 Update repo copyright year to 2021 2020-12-27 14:41:34 +01:00
moneromooo-monero
bc97eb8a33 portable_storage: remove overly aggressive cutoff 2020-12-27 12:44:38 +00:00
Alexander Blair
b2221881a1 Merge pull request #7199
025db3d2b Revert "Reject existing claimed blocks in sync mode" (luigi1111)
2020-12-26 21:25:18 -08:00
luigi1111
025db3d2b4 Revert "Reject existing claimed blocks in sync mode" 2020-12-27 00:18:05 -05:00
moneromooo-monero
4310780c08 cryptonote_basic: guess what got lost porting patches to branches again 2020-12-26 23:43:59 +00:00
Alexander Blair
7438617bbf Merge pull request #7192
95575cda6 epee: fix some issues using connections after shutdown (moneromooo-monero)
2020-12-26 13:44:10 -08:00
Alexander Blair
bc9fce0d32 Merge pull request #7190
7f407c027 portable_storage: add some sanity checks on data size (moneromooo-monero)
2020-12-26 13:43:48 -08:00
Alexander Blair
fe282b1b3a Merge pull request #7182
5ef43355f edited readme version table to include v0.17.1.7 (Gingeropolous)
2020-12-26 13:43:22 -08:00
Alexander Blair
d61fdebaac Merge pull request #7188
efe83982d protocol: drop nodes if they claim new data but only give stale data (moneromooo-monero)
2020-12-26 13:43:13 -08:00
Alexander Blair
5402121323 Merge pull request #7180
56748e1d7 ban lists may now include subnets (moneromooo-monero)
2020-12-26 13:42:37 -08:00
Alexander Blair
d06bae56b3 Merge pull request #7173
d2fda6c25 restrict public node checks a little (moneromooo-monero)
2020-12-26 13:41:42 -08:00
Alexander Blair
635ea3df2e Merge pull request #7172
e80f8d7ad apt update before installing (mj-xmr)
2020-12-26 13:41:22 -08:00
Alexander Blair
609dbe6b92 Merge pull request #7154
cf7e1571d protocol: reject claimed block hashes that already are in the chain (moneromooo-monero)
af0a25544 protocol: drop peers we can't download anything from in sync mode (moneromooo-monero)
2020-12-26 13:40:36 -08:00
Alexander Blair
cb712bf4f8 Merge pull request #7145
68637bca3 p2p: remove peers from grey and anchors lists when blocked (moneromooo-monero)
2020-12-26 13:40:19 -08:00
Alexander Blair
69ed0e0001 Merge pull request #7138
e9abfea16 Optional DNS based blocklist (moneromooo-monero)
2020-12-26 13:38:50 -08:00
Alexander Blair
f191e0a00d Merge pull request #7099
9d2bb586a Add command to sign freebsd assert file for gitian (MoneroArbo)
2020-12-26 13:38:31 -08:00
Alexander Blair
b9e444da5e Merge pull request #7098
c0c75ac19 Fixed issues found by static analysis (SChernykh)
2020-12-26 13:36:01 -08:00
Alexander Blair
133056f625 Merge pull request #7086
14bc5c095 db_lmdb: move spammy "not found in db" message to TRACE (moneromooo-monero)
2020-12-26 13:35:42 -08:00
Alexander Blair
d365f2409a Merge pull request #6931
fbb03ef2a simplewallet: add "address mnew" command (codesoap)
2020-12-26 13:35:24 -08:00
codesoap
fbb03ef2a0 simplewallet: add "address mnew" command 2020-12-26 19:33:11 +01:00
moneromooo-monero
95575cda6e epee: fix some issues using connections after shutdown 2020-12-26 14:14:55 +00:00
moneromooo-monero
7f407c0274 portable_storage: add some sanity checks on data size
especially when allocated size is >> serialized data size
2020-12-26 03:22:59 +00:00
moneromooo-monero
efe83982d3 protocol: drop nodes if they claim new data but only give stale data
Some joker is spending time actually doing this
2020-12-25 20:30:39 +00:00
benevanoff
50ff1066f5 wallet api: allow wallet to fetch all key images via api 2020-12-25 00:40:50 -06:00
moneromooo-monero
d2fda6c25f restrict public node checks a little
do not include blocked hosts in peer lists or public node lists by default,
warn about no https on clearnet and about untrusted peers likely being spies
2020-12-22 23:39:07 +00:00
Lee Clagett
927141bcc4 Command max_bytes moved from dynamic map to static switch 2020-12-22 20:54:16 +00:00
Gingeropolous
5ef43355f0 edited readme version table to include v0.17.1.7
edited readme version table to include v0.17.1.7 as recommended version
2020-12-21 23:53:47 -05:00
moneromooo-monero
56748e1d74 ban lists may now include subnets 2020-12-22 02:12:41 +00:00
mj-xmr
e80f8d7ad8 apt update before installing 2020-12-20 08:27:10 +01:00
Lee Clagett
187b4d7521 Restrict duplicate keys in epee binary format 2020-12-20 03:47:32 +00:00
moneromooo-monero
e9abfea165 Optional DNS based blocklist
If enabled, pulls IPs to block on blocklist.moneropulse.*, and
blocks then for 8 days (so IPs dropping from the list will
eventually get unblocked, and DNS failures don't result in
instant clearing of the blocklist).

Enable with --enable-dns-blocklist
2020-12-20 02:09:58 +00:00
luigi1111
3bd6ed94d7 Merge pull request #7151
4978f69 Fix byte_stream::put_n (Lee Clagett)
2020-12-19 17:26:13 -06:00
luigi1111
0dac64afb3 Merge pull request #7143
58651d1 p2p: ignore incoming peer list entries when we have them blocked (moneromooo-monero)
2020-12-19 17:24:21 -06:00
luigi1111
e0d8af253e Merge pull request #7141
9de3787 daemon: the ban command can now load IPs from a file (ban @filename) (moneromooo-monero)
2020-12-19 17:22:01 -06:00
luigi1111
7ee37e4b38 Merge pull request #7075
f3c0d4f protocol: remove unused (and cunningly uninitialized) field (moneromooo-monero)
8e62362 p2p: ifx getting seed nodes for uncommon cases (moneromooo-monero)
2020-12-19 17:20:29 -06:00
luigi1111
b8e4b69915 Merge pull request #7074
9024622 add -framework AppKit for Apple (woodser)
2020-12-19 17:18:53 -06:00
luigi1111
eee0452aa8 Merge pull request #7156
5a1ac9c rpc: add a busy_syncing field to get_info (moneromooo-monero)
2020-12-17 14:33:03 -06:00
moneromooo-monero
5a1ac9c0ef rpc: add a busy_syncing field to get_info
true if and pretty much only if new blocks are being added
2020-12-17 18:03:11 +00:00
moneromooo-monero
cf7e1571d3 protocol: reject claimed block hashes that already are in the chain 2020-12-17 02:54:02 +00:00
Lee Clagett
61b6e4cc67 Add aggressive restrictions to pre-handshake p2p buffer limit 2020-12-17 00:36:10 +00:00
moneromooo-monero
af0a25544e protocol: drop peers we can't download anything from in sync mode
instead of the (incorrect) check for whether we think we might have
a user for it at some point in the near future. We can reconnect.
2020-12-16 20:19:52 +00:00
moneromooo-monero
f3c0d4f9df protocol: remove unused (and cunningly uninitialized) field 2020-12-15 01:32:18 +00:00
moneromooo-monero
8e62362cd3 p2p: ifx getting seed nodes for uncommon cases
The code is technically correct, but liable to easily become incorrect with changes
2020-12-15 01:32:15 +00:00
Lee Clagett
4978f69d7a Fix byte_stream::put_n 2020-12-14 14:45:24 -05:00
moneromooo-monero
0660db3e7a fuzz_tests: add a test for utf8canonical 2020-12-14 19:40:24 +00:00
moneromooo-monero
9de3787c47 daemon: the ban command can now load IPs from a file (ban @filename) 2020-12-14 12:26:23 +00:00
moneromooo-monero
68637bca3f p2p: remove peers from grey and anchors lists when blocked 2020-12-13 23:27:44 +00:00
moneromooo-monero
58651d16c0 p2p: ignore incoming peer list entries when we have them blocked 2020-12-13 23:14:05 +00:00
codesoap
f2ad539f5f readline_buffer: Avoid consecutive duplicates in the history 2020-12-13 14:47:07 +01:00
luigi1111
e5decd0cde Merge pull request #7130
543733d protocol: include first new block in chain entry response (moneromooo-monero)
2020-12-12 22:05:02 -06:00
luigi1111
a57c95b2f1 Merge pull request #7127
5d1849a protocol: stricter checks on received chain hash list (moneromooo)
2020-12-12 22:03:12 -06:00
luigi1111
66c427e863 Merge pull request #7123
62e8ca5 protocol: revert incoming chain height check against local chain (moneromooo-monero)
2020-12-12 22:01:37 -06:00
luigi1111
f5a8a8bfaa Merge pull request #6495
12a422c workflows: add ccache support (selsta)
2020-12-12 21:58:48 -06:00
moneromooo-monero
543733d42c protocol: include first new block in chain entry response 2020-12-12 01:36:35 +00:00
moneromooo
5d1849a9eb protocol: stricter checks on received chain hash list 2020-12-11 18:47:40 +00:00
selsta
12a422c093 workflows: add ccache support 2020-12-11 12:39:40 +01:00
moneromooo-monero
62e8ca5eaf protocol: revert incoming chain height check against local chain
We can actually request a chain that's further away from what we
have as we buffer more and more
2020-12-11 02:37:15 +00:00
Alexander Blair
ebdc617408 Merge pull request #7102
8ee3ec729 cmake: fix "release" version string on tagged releases (moneromooo-monero)
2020-12-10 17:52:18 -08:00
Alexander Blair
0f67569279 Merge pull request #7121
cd7e9769d protocol: one more sanity check on usable data from a peer (moneromooo-monero)
2020-12-10 17:44:54 -08:00
Alexander Blair
bdaadf85dc Merge pull request #7117
5dee031b2 protocol: add a sanity check to the number of block hashes sent (moneromooo-monero)
2020-12-10 17:43:41 -08:00
Alexander Blair
bb6d2d4b05 Merge pull request #7114
eb77790df protocol: fix asking for pruned blocks for v10 (moneromooo-monero)
2020-12-10 17:42:48 -08:00
Alexander Blair
28e5e42986 Merge pull request #7110
d660f22ed protocol: drop origin IP if a block fails to verify in sync mode (moneromooo-monero)
2020-12-10 17:41:59 -08:00
Alexander Blair
5b62a6f316 Merge pull request #7106
0f34cabb9 protocol: more restrictive checks on chain entry response (moneromooo-monero)
2020-12-10 17:40:46 -08:00
Alexander Blair
3b08836397 Merge pull request #7105
178ca2906 travis: remove from repo (selsta)
2020-12-10 17:40:21 -08:00
Alexander Blair
6dafeead33 Merge pull request #7104
ed884c20d workflows: shorten name (selsta)
2020-12-10 17:40:02 -08:00
Alexander Blair
72e4805d42 Merge pull request #7103
7248420c7 workflows: add depends workflow, upload binaries (selsta)
2020-12-10 17:38:26 -08:00
Alexander Blair
25b596ce21 Merge pull request #7100
5b30203fe depends: Update OpenSSL to 1.1.1i (Howard Chu)
2020-12-10 17:36:05 -08:00
Alexander Blair
1e9483a2d5 Merge pull request #7009
7414e2bac Change epee binary output from std::stringstream to byte_stream (Lee Clagett)
2020-12-10 17:34:50 -08:00
Alexander Blair
6bddd54f9d Merge pull request #7003
08eb0949f Change to more efficient allocation strategy in byte_stream (Lee Clagett)
2020-12-10 17:33:50 -08:00
Alexander Blair
e9c053eac6 Merge pull request #6977
e59134123 Clang-tidy integrated into CMakeLists.txt (mj-xmr)
2020-12-10 17:32:56 -08:00
Alexander Blair
ddf59289d6 Merge pull request #6956
9f502108b Add ClangBuildAnalyzer under utils/health for analyzing build times (mj-xmr)
2020-12-10 17:32:13 -08:00
Alexander Blair
49f7e961c0 Merge pull request #6947
19d1b3590 add a convenience script to start monero with inbound tor (moneromooo-monero)
2020-12-10 17:31:20 -08:00
moneromooo-monero
cd7e9769d8 protocol: one more sanity check on usable data from a peer 2020-12-10 23:02:06 +00:00
moneromooo-monero
d660f22ed1 protocol: drop origin IP if a block fails to verify in sync mode
It would otherwise be possible for a peer to send bad blocks,
then disconnect and reconnect again, escaping bans
2020-12-10 21:59:18 +00:00
luigi1111
316dcaa399 Merge pull request #7108
19f7757 protocol: fix switchting to adding blocks if noone's adding the next span (moneromooo-monero)
2020-12-10 15:48:04 -06:00
moneromooo-monero
dd5e689533 protocol: add calls to reserve where appropriate 2020-12-10 20:47:35 +00:00
luigi1111
34267f419e Merge pull request #7082
a4e42b2 bump my key expiration date by 2 more years (moneromooo-monero)
2020-12-10 13:41:07 -06:00
moneromooo-monero
5dee031b25 protocol: add a sanity check to the number of block hashes sent 2020-12-10 19:26:12 +00:00
moneromooo-monero
eb77790dfb protocol: fix asking for pruned blocks for v10
Old format is still alloewd there, this is a two fork update
2020-12-10 18:10:45 +00:00
moneromooo-monero
7f30c49731 simplewallet: don't complain about connecting to the daemon when offline 2020-12-10 17:57:13 +00:00
moneromooo-monero
0f34cabb98 protocol: more restrictive checks on chain entry response 2020-12-10 17:23:50 +00:00
moneromooo-monero
47590fc80b rpc: report target height as 0 when synced
since it only makes sense when syncing, and it confuses people
2020-12-10 17:05:34 +00:00
moneromooo-monero
19f77578e0 protocol: fix switchting to adding blocks if noone's adding the next span 2020-12-10 15:46:48 +00:00
selsta
178ca29065 travis: remove from repo 2020-12-10 05:34:25 +01:00
selsta
7248420c72 workflows: add depends workflow, upload binaries 2020-12-10 05:01:17 +01:00
selsta
ed884c20d3 workflows: shorten name 2020-12-10 04:12:19 +01:00
moneromooo-monero
8ee3ec7296 cmake: fix "release" version string on tagged releases
It would not say "release" if we're on a previous tag
2020-12-09 22:18:44 +00:00
Howard Chu
5b30203fe9 depends: Update OpenSSL to 1.1.1i
Remove some obsolete patches (they were integrated upstream).
Tweak to work with Android support (they second-guess our CC definition, etc).
2020-12-09 19:21:56 +00:00
MoneroArbo
9d2bb586ad Add command to sign freebsd assert file for gitian
Add FreeBSD to "Signing assert files" section of gitian readme / guide
2020-12-08 16:46:09 -05:00
SChernykh
c0c75ac19d Fixed issues found by static analysis
- rolling_median: tried to free uninitialized pointer in a constructor
- net_node.inl: erase-remove idiom was used incorrectly. remove_if doesn't actually remove elements, see http://cpp.sh/6fcjv
- bulletproofs.cc: call to sizeof() instead of vector.size(), luckily it only impacts performance and not code logic there
2020-12-08 18:43:44 +01:00
mj-xmr
9f502108bf Add ClangBuildAnalyzer under utils/health for analyzing build times 2020-12-08 08:05:56 +01:00
luigi1111
b7425c14c8 Merge pull request #7072
bc7cd78 p2p: drop peers that spam peer lists (moneromooo-monero)
2020-12-07 10:24:30 -06:00
luigi1111
fb73f2b2be Merge pull request #7070
281b42a p2p: fix race condition accessing a deleted context (moneromooo-monero)
2020-12-07 10:23:24 -06:00
luigi1111
3d2a50a5c0 Merge pull request #7055
ff7fdf6 protocol: drop peers that don't reply to queries (moneromooo-monero)
89e984d keep only the last seen node on a given host in the white list (moneromooo-monero)
c74d8ff protocol: drop peers that decrease claimed height (moneromooo-monero)
61f5001 protocol: add scoring system to drop peers that don't behave (moneromooo-monero)
2020-12-07 10:07:33 -06:00
moneromooo
ff7fdf6db2 protocol: drop peers that don't reply to queries 2020-12-06 15:57:40 +00:00
moneromooo-monero
281b42a281 p2p: fix race condition accessing a deleted context 2020-12-06 12:40:07 +00:00
moneromooo-monero
14bc5c095c db_lmdb: move spammy "not found in db" message to TRACE
These are functions that check whether a tx is in the db, so whether
it is there or not is really not interesting, and it seems to scare
people from time to time
2020-12-06 01:46:21 +00:00
moneromooo-monero
a4e42b2d4c bump my key expiration date by 2 more years 2020-12-05 18:19:56 +00:00
moneromooo-monero
bc7cd78870 p2p: drop peers that spam peer lists
There's always some people who just want to abuse things
2020-12-05 13:12:58 +00:00
Alexander Blair
7ca4ef0d74 Merge pull request #7068
2395e0e67 p2p: add a tor seed node (moneromooo-monero)
2020-12-04 13:28:02 -08:00
Alexander Blair
42aa1a6aca Merge pull request #7062
5ed604fe5 crypto: fix non zero scalar being 0 after reducing (moneromooo-monero)
2020-12-04 13:27:05 -08:00
Alexander Blair
6b8db83149 Merge pull request #7043
17c537039 wallet2: check imported multisig curve points are in main subgroup (Crypto City)
2020-12-04 13:25:01 -08:00
Alexander Blair
ce564e7ebf Merge pull request #7030
0363476ee rpc: get_info - add 'synchronized' field (xiphon)
2020-12-04 13:21:36 -08:00
Alexander Blair
1eae7574b5 Merge pull request #7017
13350f79d Do not use peer_id tracking method over i2p/tor (Lee Clagett)
2020-12-04 13:21:13 -08:00
woodser
90246223c9 add -framework AppKit for Apple 2020-12-04 11:48:41 -05:00
moneromooo
89e984d93b keep only the last seen node on a given host in the white list 2020-12-04 01:55:22 +00:00
moneromooo
c74d8ffd63 protocol: drop peers that decrease claimed height 2020-12-04 01:55:22 +00:00
moneromooo
61f5001c3f protocol: add scoring system to drop peers that don't behave 2020-12-04 01:55:21 +00:00
moneromooo-monero
5ed604fe5b crypto: fix non zero scalar being 0 after reducing 2020-12-04 01:00:03 +00:00
moneromooo-monero
2395e0e678 p2p: add a tor seed node 2020-12-03 23:45:38 +00:00
Alexander Blair
f83203ecef Merge pull request #7058
89bbb802c wallet2: set propagation timeout to current max timeout (selsta)
2020-12-03 12:19:39 -08:00
Alexander Blair
e78669257e Merge pull request #7056
c64b94bd1 p2p: fix endianness when checking IPv6 addresses mapping to IPv4 (moneromooo-monero)
67f2bec2d p2p: make this work with boost <= 1.65 (pffff) (moneromooo-monero)
ffdf1fb1d p2p: rewrite boost's make_address_v4 to cater for < 1.66 (moneromooo)
2020-12-03 12:19:15 -08:00
Alexander Blair
84bae315f8 Merge pull request #6984
7a5e11645 net_node: add tor / i2p seed nodes (selsta)
2020-12-03 12:17:44 -08:00
selsta
89bbb802c0 wallet2: set propagation timeout to current max timeout 2020-12-03 02:18:58 +01:00
moneromooo-monero
c64b94bd14 p2p: fix endianness when checking IPv6 addresses mapping to IPv4 2020-12-03 00:31:32 +00:00
moneromooo-monero
67f2bec2df p2p: make this work with boost <= 1.65 (pffff) 2020-12-03 00:31:32 +00:00
moneromooo
ffdf1fb1de p2p: rewrite boost's make_address_v4 to cater for < 1.66 2020-12-03 00:31:29 +00:00
mj-xmr
e591341237 Clang-tidy integrated into CMakeLists.txt
Can be called from the source directory with:
utils/health/clang-tidy-run.sh
2020-12-02 20:42:38 +01:00
Alexander Blair
4f401f6fca Merge pull request #7025
b10878f10 Change Dandelion++ fluff probability to 20%, and embargo timeout to 39s (Lee Clagett)
2020-12-01 14:23:49 -08:00
Alexander Blair
976fcb5985 Merge pull request #7024
aaf837cf5 rpc: skip non-synced bootstrap daemons in --no-sync mode too (xiphon)
2020-12-01 14:23:21 -08:00
Alexander Blair
f41dce49ac Merge pull request #6954
dff1d8067 Fix tx flush callback queueing (Lee Clagett)
2020-12-01 14:22:16 -08:00
Alexander Blair
7cd0c64210 Merge pull request #6948
65903d2cf Add rpc-restricted-bind-ip option (Howard Chu)
2020-12-01 14:21:19 -08:00
Alexander Blair
431ec528bc Merge pull request #6939
6c9980a55 p2p: give all hosts the same chance of being picked for connecting (moneromooo)
2020-12-01 14:20:02 -08:00
Alexander Blair
003a06f030 Merge pull request #6923
cc034fe0c util: fix escaping more than one ?* in glob_to_regex (moneromooo-monero)
2020-12-01 14:19:21 -08:00
Alexander Blair
d8f9472356 Merge pull request #6910
b7dd8349f Allow setting start block on export (Howard Chu)
2020-12-01 14:18:44 -08:00
Alexander Blair
438442ace0 Merge pull request #6890
ec14e4b8c wallet2: skip reorgs exceeding max-reorg-depth wallet setting (xiphon)
2020-12-01 14:18:22 -08:00
moneromooo
6c9980a55b p2p: give all hosts the same chance of being picked for connecting
even if some run more than one node
2020-11-29 15:55:58 +00:00
selsta
7a5e11645f net_node: add tor / i2p seed nodes
Co-authored-by: Lee Clagett <code@leeclagett.com>
2020-11-29 13:49:03 +01:00
luigi1111
850edfe419 Merge pull request #7021
d73cb95 Fix timeout checks for forwarded and Dandelion++ stem txes (Lee Clagett)
2020-11-29 01:59:35 -06:00
luigi1111
cf816e51ad Merge pull request #7020
2c66894 wallet_api: TransactionHistory - fill unconfirmed out payments dests (xiphon)
2020-11-29 01:58:56 -06:00
luigi1111
36d31ba0be Merge pull request #7018
a9cd5d9 cryptonote_core: dandelion - use local height or median height if syncing (xiphon)
2020-11-29 01:58:13 -06:00
luigi1111
ad843541d5 Merge pull request #7008
3247f11 Silence stupid warnings (Howard Chu)
2020-11-29 01:57:24 -06:00
luigi1111
cda966078d Merge pull request #6999
c5f6629 epee: tighten the URL parsing regexp a little (moneromooo-monero)
2020-11-29 01:56:44 -06:00
luigi1111
a15d781707 Merge pull request #6995
60bc676 epee: readline_buffer - fix thread safety, fix sync() after stop() (xiphon)
2020-11-29 01:55:15 -06:00
luigi1111
c041550ffa Merge pull request #6973
be84f67 Switch to Dandelion++ fluff mode if no out connections for stem mode (Lee Clagett)
2020-11-29 01:54:43 -06:00
luigi1111
a92b968e35 Merge pull request #6971
f9527e6 protocol: reject empty incoming block messages (moneromooo-monero)
2020-11-29 01:54:08 -06:00
luigi1111
9945ca7a62 Merge pull request #6960
5569a8e rpc: on_send_raw_tx (bootstrap) - send to bootstrap daemon and P2P (xiphon)
2020-11-29 01:53:12 -06:00
luigi1111
bb56248acd Merge pull request #6949
aad780b Fix CLI and unrestricted RPC relay_tx with stempool (Lee Clagett)
2020-11-29 01:52:23 -06:00
luigi1111
9a4d813136 Merge pull request #6943
cb069d0 p2p: remove banned peers from the white list (moneromooo-monero)
2020-11-29 01:51:41 -06:00
luigi1111
7a0334742a Merge pull request #6937
8a282f6 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr) Add monero_add_minimal_executable and use in tests (mj-xmr)
2020-11-29 01:49:39 -06:00
luigi1111
2be7a4c04f Merge pull request #6933
1f04a31 p2p: use /16 filtering on IPv4-within-IPv6 addresses (moneromooo-monero)
2020-11-29 01:46:46 -06:00
luigi1111
4d298d4f11 Merge pull request #6924
874487f blockchain: remove some dead code (moneromooo-monero)
2020-11-29 01:44:26 -06:00
luigi1111
999e797cea Merge pull request #6922
a25bc71 Make Blockchain::get_fee_quantization_mask() compile time (SChernykh)
2020-11-29 01:40:59 -06:00
luigi1111
bab4495cfb Merge pull request #6921
f1836ac cryptonote_core: Fix missing override warnings (Nathan Dorfman)
2020-11-29 01:39:17 -06:00
luigi1111
c5b3fd1fec Merge pull request #6920
aad2f87 net_node: add --ban-list option (selsta)
2020-11-29 01:38:27 -06:00
luigi1111
84cdb5d914 Merge pull request #6915
c67fa32 bump default number of connections from 8 to 12 (moneromooo-monero)
2020-11-29 01:34:02 -06:00
luigi1111
4c2e77854d Merge pull request #6913
fc2f971 wallet2: wait for propagation timeout before marking tx as failed (xiphon)
2020-11-29 01:32:01 -06:00
luigi1111
c3592a5595 Merge pull request #6903
453b8e2 README: add OSS-fuzz status banner (moneromooo-monero)
2020-11-29 01:25:15 -06:00
luigi1111
eebd86dc3e Merge pull request #6898
593ae2e device: Ledger - update status codes (xiphon)
2020-11-29 00:44:27 -06:00
luigi1111
52006df9bb Merge pull request #6897
2abdbf6 Add support for i2p and tor seed nodes (vtnerd)
2020-11-29 00:42:27 -06:00
luigi1111
7539d4ac74 Merge pull request #6895
b49f489 fix next_seed_height regression in getblocktemplate rpc (xnbya)
2020-11-29 00:41:42 -06:00
luigi1111
678237835f Merge pull request #6892
ad7ea2c core_rpc_server: on_send_raw_tx - fix bootstrap daemon mode check (xiphon)
2020-11-29 00:40:03 -06:00
luigi1111
8401d12cf2 Merge pull request #6873
3be170d Update README.md (Jkat)
2020-11-29 00:38:48 -06:00
luigi1111
2eb56f9ef6 Merge pull request #6858
49a279b docs: Add release checklist (setsimmo)
d00ca88 Move documentation files to their own directory (glv2)
2020-11-29 00:03:57 -06:00
luigi1111
450f1325ab Merge pull request #6856
db70af1 Unit Tests: Remove block reward upper bound size checks (TheCharlatan)
2020-11-28 22:35:07 -06:00
luigi1111
d45a4ba106 Merge pull request #6849
f4b2382 rpc_private_headers declaration fix (malbit)
2020-11-28 22:31:25 -06:00
luigi1111
7778384071 Merge pull request #6830
64e9526 Extend TransactionInfo with coinbase and description attributes in wallet/api (dsc)
2020-11-28 21:55:16 -06:00
luigi1111
9b743e7c36 Merge pull request #6829
016f36a Allow tx note edits via TransactionHistory object in wallet/api (dsc)
2020-11-28 21:52:20 -06:00
dsc
d157196416 Allow tx note edits via TransactionHistory object in wallet/api 2020-11-28 21:48:57 -06:00
luigi1111
b37d6fe368 Merge pull request #6826
83da867 Update error messages in daemon (tmoravec)
2020-11-28 21:35:34 -06:00
luigi1111
55a39f8e67 Merge pull request #6747
12a78e5 cmake: Use job pool feature to limit concurrent jobs (00-matt)
2020-11-28 21:32:58 -06:00
xiphon
a9cd5d914e cryptonote_core: dandelion - use local height or median height if syncing 2020-11-25 01:27:42 +00:00
Crypto City
17c5370398 wallet2: check imported multisig curve points are in main subgroup 2020-11-24 16:25:35 +00:00
luigi1111
9c1562c038 Merge pull request #7007
91fd634 Better log message for unusable anon networks (hyc)
2020-11-23 16:14:40 -06:00
luigi1111
5f5f6ae705 Merge pull request #6982
9f83fe3 workflows: bump msys2 action to v2 (selsta)
2020-11-21 22:19:31 -06:00
xiphon
0363476ee3 rpc: get_info - add 'synchronized' field 2020-11-19 12:51:31 +00:00
Lee Clagett
b10878f108 Change Dandelion++ fluff probability to 20%, and embargo timeout to 39s
A 20% fluff probability increases the precision of a spy connected to
every node by 10% on average, compared to a network using 0% fluff
probability. The current value (10% fluff) should increase precision by
~5% compared to baseline.

This decreases the expected stem length from 10 to 5. The embargo
timeout was therefore lowered to 39s; the fifth node in a stem is
expected to have a 90% chance of being the first to timeout, which is
the same probability we currently have with an expected stem length of
10 nodes.
2020-11-17 21:45:37 -05:00
xiphon
aaf837cf5f rpc: skip non-synced bootstrap daemons in --no-sync mode too 2020-11-17 23:15:36 +00:00
Howard Chu
91fd634768 Better log message for unusable anon networks 2020-11-16 12:36:37 +00:00
Lee Clagett
d73cb95dfa Fix timeout checks for forwarded and Dandelion++ stem txes 2020-11-15 00:08:10 -05:00
xiphon
5569a8e426 rpc: on_send_raw_tx (bootstrap) - send to bootstrap daemon and P2P 2020-11-15 03:13:07 +00:00
xiphon
2c668940cd wallet_api: TransactionHistory - fill unconfirmed out payments dests 2020-11-14 14:09:07 +00:00
Howard Chu
3247f11638 Silence stupid warnings 2020-11-11 02:34:14 +00:00
moneromooo-monero
c5f6629f4a epee: tighten the URL parsing regexp a little
fixes massive amounts of time spent on pathological inputs

Found by OSS-Fuzz
2020-11-09 13:05:39 +00:00
xiphon
60bc676c14 epee: readline_buffer - fix thread safety, fix sync() after stop() 2020-11-07 14:15:29 +00:00
woodser
ee58f4f766 Balance includes unconfirmed payments 2020-11-06 15:08:43 -05:00
selsta
9f83fe3940 workflows: bump msys2 action to v2 2020-11-05 01:26:19 +01:00
Lee Clagett
be84f678b9 Switch to Dandelion++ fluff mode if no out connections for stem mode 2020-11-03 13:58:14 -05:00
luigi1111
83f1d863bd Merge pull request #6927
e79c88e functional_tests: inrease mining timeout (selsta)
2020-11-03 11:20:12 -06:00
luigi1111
011b8ebe18 Merge pull request #6886
2014a84 Force CMAKE_SKIP_RPATH=ON (hyc)
2020-11-03 11:19:08 -06:00
moneromooo-monero
f9527e608e protocol: reject empty incoming block messages 2020-11-03 12:59:36 +00:00
moneromooo-monero
1f04a3186b p2p: use /16 filtering on IPv4-within-IPv6 addresses
IPv6 addresses include a range that can map IPv4 addresses,
which allowed those mapped addresses to bypass filtering.

This filter should be replaced by AS filtering at some point.
2020-11-03 00:46:07 +00:00
mj-xmr
4e23107f83 Doxy - scan whole repo, create subdirs, don't generate LaTeX - mj-xmr 2020-11-02 09:25:29 +01:00
Lee Clagett
aad780bcfa Fix CLI and unrestricted RPC relay_tx with stempool 2020-10-29 00:17:55 -04:00
Howard Chu
65903d2cfc Add rpc-restricted-bind-ip option
Fixes #6369
2020-10-29 00:22:18 +00:00
moneromooo-monero
19d1b35905 add a convenience script to start monero with inbound tor 2020-10-28 22:38:27 +00:00
mj-xmr
8a282f64c9 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr)
Add monero_add_minimal_executable and use in tests

This is done in order not to have to relink targets, when just an .so changed, but not its interface.
2020-10-28 20:08:26 +01:00
moneromooo
cb069d0a42 p2p: remove banned peers from the white list 2020-10-27 22:35:14 +00:00
luigi1111
8b3b106ad1 Merge pull request #6902
70eb0d1 wallet2_api: implement stop() to interrupt refresh() loop once (xiphon)
2020-10-21 22:57:42 -05:00
luigi1111
bd08387165 Merge pull request #6852
346381f workflows: don't brew update (selsta)
2020-10-21 22:56:37 -05:00
selsta
e79c88e610 functional_tests: inrease mining timeout 2020-10-22 04:17:11 +02:00
selsta
aad2f87a53 net_node: add --ban-list option 2020-10-20 19:39:44 +02:00
moneromooo-monero
874487fed8 blockchain: remove some dead code
This is already done
2020-10-20 16:50:36 +00:00
moneromooo-monero
cc034fe0c3 util: fix escaping more than one ?* in glob_to_regex 2020-10-20 16:46:53 +00:00
SChernykh
a25bc71f3f Make Blockchain::get_fee_quantization_mask() compile time
This also removes potential thread safety bug in that function.
2020-10-20 14:16:09 +02:00
Nathan Dorfman
f1836ac28a cryptonote_core: Fix missing override warnings 2020-10-19 18:23:07 -06:00
Lee Clagett
2abdbf63cf Add support for i2p and tor seed nodes 2020-10-19 13:13:07 +00:00
Howard Chu
2014a8410a Force CMAKE_SKIP_RPATH=ON
Fix empty RPATH token issue. Only affects Linux and FreeBSD.
2020-10-19 08:58:38 +01:00
Alexander Blair
faedcded39 Merge pull request #6891
4cf3545a3 core_rpc_server: on_get_blocks - forward bootstrap daemon error (xiphon)
2020-10-18 23:26:17 -07:00
Alexander Blair
8e3f46dd0a Merge pull request #6881
11b20229c tx_pool: silence spammy harmless warning till we fix the bug (moneromooo-monero)
2020-10-18 23:25:54 -07:00
Alexander Blair
142489bd60 Merge pull request #6882
fcbfb0a00 wallet2: fix missing m_state field in wallet serialization (moneromooo-monero)
2020-10-18 23:25:32 -07:00
Alexander Blair
543d600042 Merge pull request #6875
a12a8174e Dandelion++: skip desynced peers in stem phase (xiphon)
2020-10-18 23:25:08 -07:00
Alexander Blair
9bbf66504e Merge pull request #6862
5f228e4b7 Fix lgamma/signgam dependency (Howard Chu)
2020-10-18 23:24:06 -07:00
Riccardo Spagni
27a576ba34 Merge pull request #6917
49192a626 README: update fork table recommended version (selsta)
2020-10-18 17:25:04 +02:00
selsta
49192a626f README: update fork table recommended version 2020-10-18 16:12:34 +02:00
xiphon
fc2f97177b wallet2: wait for propagation timeout before marking tx as failed 2020-10-18 14:00:56 +00:00
moneromooo-monero
c67fa32496 bump default number of connections from 8 to 12 2020-10-18 13:25:05 +00:00
Howard Chu
b7dd8349f4 Allow setting start block on export
And make import honor the starting block# recorded in a bootstrap file
2020-10-18 14:01:44 +01:00
Alexander Blair
519740a1d3 Merge pull request #6905
88fde0309 blockchain: fix sync at v14 boundary (moneromooo-monero)
2020-10-18 05:51:43 -07:00
moneromooo-monero
88fde0309a blockchain: fix sync at v14 boundary
Miners with MLSAG txes which they'd already verified included
a couple in that block, but the consensus rules had changed
in the meantime, so that block is technically invalid and any
node which did not already have those two txes in their txpool
could not sync. Grandfather them in, since it has no effect in
practice.
2020-10-18 11:52:33 +00:00
moneromooo-monero
453b8e267c README: add OSS-fuzz status banner 2020-10-17 16:41:24 +00:00
xiphon
70eb0d1844 wallet2_api: implement stop() to interrupt refresh() loop once 2020-10-17 02:56:15 +00:00
Lee Clagett
13350f79df Do not use peer_id tracking method over i2p/tor 2020-10-15 16:47:59 +00:00
moneromooo-monero
aaa3289e22 add more updates domains and make the voting generic, not just 2/3 2020-10-15 14:06:44 +00:00
Alexander Blair
bf65b07718 Merge pull request #6867
826a84478 cmake: Version - use CMAKE_CURRENT_LIST_DIR (xiphon)
2020-10-14 15:25:00 -07:00
Alexander Blair
abd6aa6ab8 Merge pull request #6863
b4c775663 cmake: CheckTrezor - use ${CMAKE_CURRENT_LIST_DIR} to locate tests (xiphon)
2020-10-14 15:24:41 -07:00
xiphon
593ae2e9f9 device: Ledger - update status codes 2020-10-13 22:53:19 +00:00
luigi1111
819f9e1d9f Merge pull request #6889
c01d1c1 README: recommend v0.17.1.0 (selsta)
2020-10-13 10:52:16 -05:00
luigi1111
2a093ace37 Merge pull request #6833
335ba12 README: update sponsors (selsta)
2020-10-13 10:39:53 -05:00
luigi1111
e503688a6b Merge pull request #6828
1b3f220 Allow AddressBook description edits via wallet/api interface (xmrdsc)
2020-10-13 10:39:05 -05:00
luigi1111
8286f07b26 Merge pull request #6822
2e3caa2 Depends: Bump qt to 5.15.1 (TheCharlatan)
2020-10-13 10:38:15 -05:00
luigi1111
6ca2032fd7 Merge pull request #6808
d3e7c5a systemd: Don't use Type=forking (ndorf)
2020-10-13 10:37:10 -05:00
xiphon
ec14e4b8cd wallet2: skip reorgs exceeding max-reorg-depth wallet setting 2020-10-13 15:23:35 +00:00
Lee Clagett
08eb0949f3 Change to more efficient allocation strategy in byte_stream 2020-10-13 15:10:54 +00:00
Lee Clagett
249eae5f4a Allow byte_stream->byte_slice conversion to shrink unused buffer space 2020-10-13 15:09:18 +00:00
Alexis Enston
b49f48962b fix next_seed_height regression in getblocktemplate rpc 2020-10-13 11:07:59 +01:00
xiphon
4cf3545a31 core_rpc_server: on_get_blocks - forward bootstrap daemon error 2020-10-13 00:44:59 +00:00
xiphon
ad7ea2c60c core_rpc_server: on_send_raw_tx - fix bootstrap daemon mode check 2020-10-12 23:49:37 +00:00
selsta
c01d1c1747 README: recommend v0.17.1.0 2020-10-13 01:21:03 +02:00
moneromooo-monero
fcbfb0a00a wallet2: fix missing m_state field in wallet serialization 2020-10-12 15:35:52 +00:00
moneromooo-monero
11b20229c9 tx_pool: silence spammy harmless warning till we fix the bug 2020-10-12 14:07:40 +00:00
xiphon
a12a8174e0 Dandelion++: skip desynced peers in stem phase 2020-10-12 13:44:06 +00:00
Lee Clagett
7414e2bac1 Change epee binary output from std::stringstream to byte_stream 2020-10-10 15:28:40 +00:00
Justin Kat
3be170d778 Update README.md 2020-10-08 17:52:11 -04:00
selsta
335ba120c9 README: update sponsors 2020-10-08 01:44:34 +02:00
xiphon
826a84478d cmake: Version - use CMAKE_CURRENT_LIST_DIR 2020-10-07 20:21:25 +00:00
Lee Clagett
386ef03be3 Add TLSA support to DNSSEC fetching 2020-10-07 15:43:31 +00:00
Howard Chu
5f228e4b7d Fix lgamma/signgam dependency
This is a new indirect dependency due to the use of poisson_distribution,
introduced in PR#6354 commit 67ade8005
2020-10-06 19:25:49 +01:00
Lee Clagett
dff1d8067c Fix tx flush callback queueing 2020-10-06 16:07:49 +00:00
xiphon
b4c775663a cmake: CheckTrezor - use ${CMAKE_CURRENT_LIST_DIR} to locate tests 2020-10-06 14:37:00 +00:00
Seth Simmons
49a279bdfa docs: Add release checklist 2020-10-03 09:42:16 +02:00
Guillaume Le Vaillant
d00ca885bc Move documentation files to their own directory 2020-10-03 09:18:59 +02:00
TheCharlatan
db70af1bbc Unit Tests: Remove block reward upper bound size checks
Tests running after being compiled with `make debug-test` failed with
```
[  FAILED  ] block_reward_and_current_block_weight.fails_on_huge_median_size
[  FAILED  ] block_reward_and_current_block_weight.fails_on_huge_block_weight
```

With the introduction of the patch in
be82c40703 (diff-1a57d4e6013984c420da98d1adde0eafL113)
the assertions checking the weight of the median and current block
against a size limit were removed. Since the limit is now enforced by a
long divisor and a uint64_t type, checking in a separate test makes
little sense, so they are removed here.
2020-10-03 02:32:17 +02:00
selsta
346381f917 workflows: don't brew update 2020-09-30 02:01:49 +02:00
Alexander Blair
3cbb44a2fd Merge pull request #6841
b6c4f8cd5 fix a couple bugs found by OSS-fuzz (moneromooo-monero)
2020-09-27 16:17:17 -07:00
Alexander Blair
2e83628d02 Merge pull request #6840
6ee9f1260 fuzz_tests: fix build error in signature fuzz test (moneromooo-monero)
2020-09-27 16:16:54 -07:00
Alexander Blair
e6108b93d7 Merge pull request #6838
7fca814a6 build: ARM - disable stack trace due to segfault in libunwind (xiphon)
2020-09-27 16:16:21 -07:00
Alexander Blair
687f2b3c8d Merge pull request #6836
163f83720 functional_tests: rewrite mining code, clearer timeout info (iamamyth)
2020-09-27 16:15:52 -07:00
Alexander Blair
5eb38d2533 Merge pull request #6834
4846743fd daemon: Windows - fix FAT32 warning, trailing backslash is required (xiphon)
2020-09-27 16:15:25 -07:00
Alexander Blair
82631c0884 Merge pull request #6824
0b26d380c link libzmq against libgssapi_krb5 if found (moneromooo-monero)
2020-09-27 16:14:37 -07:00
Michal m@lbit Malicki
f4b2382713 rpc_private_headers declaration fix 2020-09-27 13:41:44 +01:00
iamamyth
163f83720f functional_tests: rewrite mining code, clearer timeout info 2020-09-24 20:04:05 +02:00
moneromooo-monero
b6c4f8cd54 fix a couple bugs found by OSS-fuzz
- index out of bounds when importing outputs
- accessing invalid CLSAG data
2020-09-24 15:30:38 +00:00
moneromooo-monero
6ee9f12607 fuzz_tests: fix build error in signature fuzz test 2020-09-24 15:17:57 +00:00
xiphon
7fca814a67 build: ARM - disable stack trace due to segfault in libunwind 2020-09-22 14:23:35 +00:00
xiphon
4846743fdc daemon: Windows - fix FAT32 warning, trailing backslash is required 2020-09-20 13:57:44 +00:00
dsc
64e9526509 Extend TransactionInfo with coinbase and description attributes in wallet/api 2020-09-19 22:54:23 +02:00
dsc
1b3f220251 Allow AddressBook description edits via wallet/api interface 2020-09-19 18:29:46 +02:00
Tadeas Moravec
83da867474 Update error messages in daemon
When given a wrong argument, some daemon commands failed with "unknown
command" error, instead of a meaningful error message. This patch
brings consistency into the error messages.

In several places, this patch removes relatively useful messages,
and replaces them with more generic ones. E.g.,

-    std::cout << "use: print_pl [white] [gray] [<limit>] [pruned]
[publicrpc]" << std::endl;
+    std::cout << "Invalid syntax: Too many parameters. For more
details, use the help command." << std::endl;

There are two reasons for this:

1. Consistency.
2. Removing duplicates.

The detailed information about the parameters is present in
the help messages already. Having it in two places increases
the risk that the messages would get out of date.
2020-09-18 14:04:19 +02:00
moneromooo-monero
0b26d380cd link libzmq against libgssapi_krb5 if found 2020-09-17 14:51:33 +00:00
TheCharlatan
2e3caa2011 Depends: Bump qt to 5.15.1 2020-09-17 09:00:26 +02:00
luigi1111
d27d4526fe Merge pull request #6819
c3f354e simplewallet fix wrong persistent-rpc-client-id name in help (moneromooo-monero)
2020-09-15 19:59:36 -05:00
luigi1111
5b3614e6a9 Merge pull request #6816
929ea98 Remove unused macros from cryptonote_config.h (TheCharlatan)
2020-09-15 19:58:39 -05:00
luigi1111
2b1488ef6f Merge pull request #6793
de9a9fb update error message 'No unlocked balance in the specified account' (woodser)
2020-09-15 19:56:49 -05:00
luigi1111
ea587de300 Merge pull request #6745
80e535c wallet2: adapt to deterministic unlock time (TheCharlatan)
4971219 blockchain: deterministic UNIX time unlock checks (moneromooo-monero)
2020-09-15 19:55:03 -05:00
TheCharlatan
80e535c95a wallet2: adapt to deterministic unlock time 2020-09-15 11:40:31 +00:00
moneromooo-monero
4971219c2c blockchain: deterministic UNIX time unlock checks
Based on a patch by TheCharlatan <seb.kung@gmail.com>
2020-09-15 11:40:28 +00:00
moneromooo-monero
c3f354e6c1 simplewallet fix wrong persistent-rpc-client-id name in help 2020-09-14 20:50:35 +00:00
luigi1111
9bba1a24ea Merge pull request #6815
ef4325f wallet2: fix tx sanity check triggering on pre-rct outputs (monermooo-monero)
2020-09-14 11:47:06 -05:00
luigi1111
2993d2004a Merge pull request #6813
a3844e2 Fix typo in command line argument description (reinaldoacosta)
2020-09-14 11:45:55 -05:00
luigi1111
244ae22795 Merge pull request #6812
f240b1d build: prepare v0.17 (selsta)
2020-09-14 11:44:06 -05:00
selsta
f240b1dd88 build: prepare v0.17 2020-09-14 16:52:42 +02:00
TheCharlatan
929ea98662 Remove unused macros from cryptonote_config.h 2020-09-14 00:20:58 +02:00
moneromooo-monero
ef4325fd41 wallet2: fix tx sanity check triggering on pre-rct outputs 2020-09-12 17:51:41 +00:00
Reinaldulin
a3844e257e Fix typo in command line argument description 2020-09-09 10:18:32 -04:00
Nathan Dorfman
d3e7c5a8ba systemd: Don't use Type=forking 2020-09-08 11:16:43 -06:00
luigi1111
836067b68b Merge pull request #6805
fc2cb22 blockchain: fix pow skipping for old blocks without precalc hash (moneromooo-monero)
2020-09-07 15:31:20 -05:00
luigi1111
9c9c689db4 Merge pull request #6804
5498142 rpc: assume randomx from v13 onwards (moneromooo-monero)
2020-09-07 14:34:46 -05:00
luigi1111
df0dcea061 Merge pull request #6803
1b9fe07 Revert 'unbound: update to get build fixes' (moneromooo-monero)
2020-09-07 14:33:30 -05:00
luigi1111
3a761e10d2 Merge pull request #6800
036da6d Let stagenet hardfork happen before mainnet. (normoes)
2020-09-07 14:32:28 -05:00
luigi1111
fd657c7706 Merge pull request #6798
4e44306 enable CLSAG support for Trezor client (ph4r05)
2020-09-07 14:30:41 -05:00
moneromooo-monero
fc2cb224a9 blockchain: fix pow skipping for old blocks without precalc hash 2020-09-07 01:57:19 +00:00
moneromooo-monero
5498142e8f rpc: assume randomx from v13 onwards 2020-09-07 01:13:06 +00:00
moneromooo-monero
1b9fe0761c Revert "unbound: update to get build fixes"
This reverts commit 541a7c81a1.

It breaks the depends build
2020-09-06 18:15:52 +00:00
Riccardo Spagni
aefa7740c3 Merge pull request #6111
d20ff4f64 functional_tests: add a large (many randomx epochs) p2p reorg test (moneromooo-monero)
6a0b3b1f8 functional_tests: add randomx tests (moneromooo-monero)
9d42649d5 core: fix mining from a block that's not the current top (moneromooo-monero)
2020-09-06 15:49:37 +02:00
Riccardo Spagni
2a7086caa8 Merge pull request #6802
541a7c81a unbound: update to get build fixes (moneromooo-monero)
2020-09-06 15:49:08 +02:00
moneromooo-monero
541a7c81a1 unbound: update to get build fixes 2020-09-06 11:47:55 +00:00
Norman Moeschter
036da6d45b Let stagenet hardfork happen before mainnet. 2020-09-04 22:47:05 +01:00
Dusan Klinec
4e4430603f enable CLSAG support for Trezor client 2020-09-04 01:24:58 +02:00
luigi1111
9fb2243db0 Merge pull request #6794
b09cc3d hardforks: add v13/v14 for testnet (moneromooo-monero)
2020-09-03 12:27:18 -05:00
luigi1111
ee0b02d0db Merge pull request #6757
6a37da8 threadpool: guard against exceptions in jobs, and armour plating (moneromooo-monero)
2020-09-03 12:25:59 -05:00
moneromooo-monero
b09cc3d03d hardforks: add v13/v14 for testnet 2020-09-02 17:56:48 +00:00
woodser
de9a9fb340 update error message "No unlocked balance in the specified account" 2020-09-01 17:30:00 -04:00
moneromooo-monero
6a37da837e threadpool: guard against exceptions in jobs, and armour plating
Those would, if uncaught, exit run and leave the waiter to wait
indefinitely for the number of active jobs to reach 0
2020-09-01 14:33:33 +00:00
luigi1111
2d8a197b91 Merge pull request #6789
bdcf587 net: fix get_tcp_endpoint, boost address_v4 ip in host byte order (xiphon)
2020-08-31 16:58:13 -05:00
luigi1111
77ffea0825 Merge pull request #6788
5245ba1 Made spelling, grammar, and punctuation changes. Squashed commits into one as requested. (cryptographicfool)
2020-08-31 16:57:17 -05:00
luigi1111
94b056c06e Merge pull request #6786
975ae22 Fix send scalar z in plaintext (grydz)
333ae55 Update minimal Ledger Monero app version (grydz)
0a3c5a6 Update protocol version with Ledger's HW (grydz)
2020-08-31 16:54:51 -05:00
luigi1111
54d5f098f2 Merge pull request #6783
30c1cf8 repo: update 'sponsor' link (selsta)
2020-08-31 16:52:53 -05:00
luigi1111
a70374d3e6 Merge pull request #6782
c3f9913 supercop: update submodule (selsta)
2020-08-31 16:51:44 -05:00
luigi1111
a51ccc036f Merge pull request #6770
bdc6b10 Fix ZMQ pruned bulletproof transactions (vtnerd)
2020-08-31 16:50:18 -05:00
luigi1111
61dd04b681 Merge pull request #6600
fa06c39 Bind signature to full address and signing mode (SarangNoether)
743608e wallet: allow signing a message with spend or view key (moneromooo-monero)
2020-08-31 16:49:03 -05:00
xiphon
bdcf587c79 net: fix get_tcp_endpoint, boost address_v4 ip in host byte order 2020-08-29 18:07:46 +00:00
Matt Smith
12a78e5e74 cmake: Use job pool feature to limit concurrent jobs
Add two new options, MONERO_PARALLEL_COMPILE_JOBS and
MONERO_PARALLEL_LINK_JOBS to try and prevent running out of memory when
building everything.

Requires >= cmake 3.0.0, and the use of the Ninja generator.

Useful links:

* https://cmake.org/cmake/help/latest/prop_gbl/JOB_POOLS.html
* https://reviews.llvm.org/D6304
2020-08-29 16:34:42 +01:00
Sarang Noether
fa06c39d97 Bind signature to full address and signing mode 2020-08-28 19:38:00 -04:00
moneromooo-monero
743608ec16 wallet: allow signing a message with spend or view key 2020-08-28 19:25:17 -04:00
luigi1111
5946002105 Merge pull request #6787
e6c81c5 ringct: fix CLSAG serialization after boost/epee changes (moneromooo-monero)
2020-08-28 18:08:03 -05:00
luigi1111
51bf6b5842 Merge pull request #6785
4a9bd8f core_tests: remove hardcoded hf version (monermooo-monero)
1dc427d core_tests: fix failures after v13 (moneromooo-monero)
2020-08-28 18:06:23 -05:00
cryptographicfool
5245ba132b Made spelling, grammar, and punctuation changes. Squashed commits into one as requested.
Made some corrections as suggested.
2020-08-28 18:23:54 +00:00
moneromooo-monero
e6c81c5ea7 ringct: fix CLSAG serialization after boost/epee changes
also fix a an assert message refering t MLSAG
2020-08-28 11:52:54 +00:00
François Colas
975ae22211 Fix send scalar z in plaintext
The scalar z has not been generated on the HW thus it can't be sent
encrypted. The value is derived from the exported private view key.
2020-08-28 12:01:57 +02:00
François Colas
333ae55fef Update minimal Ledger Monero app version 2020-08-28 12:00:25 +02:00
François Colas
0a3c5a605b Update protocol version with Ledger's HW 2020-08-28 11:59:02 +02:00
moneromooo-monero
1dc427def9 core_tests: fix failures after v13
v13 enforces claiming the full block reward, so we need to keep
track of tx fees to add them to the coinbase
2020-08-28 00:18:39 +00:00
moneromooo-monero
4a9bd8f70f core_tests: remove hardcoded hf version 2020-08-28 00:14:04 +00:00
Alexander Blair
44cd8a13ec Merge pull request #6769
b641e0a2c Add clear method to byte_stream (Lee Clagett)
2020-08-27 12:05:16 -07:00
Alexander Blair
39a087406d Merge pull request #6739
1660fe8a2 draft support of clsag (cslashm)
703944c4d CLSAG device support (Sarang Noether)
aff87b5f6 Added balance check to MLSAG/CLSAG performance tests (Sarang Noether)
f964a92c5 Updated MLSAG and CLSAG tests for consistency (Sarang Noether)
5aa1575e9 CLSAG verification performance test (Sarang Noether)
641b08c92 CLSAG optimizations (Sarang Noether)
82ee01699 Integrate CLSAGs into monero (moneromooo-monero)
8cd1d6df8 unit_tests: add ge_triple_scalarmult_base_vartime test (moneromooo-monero)
4b328c661 CLSAG signatures (Sarang Noether)
2020-08-27 12:03:24 -07:00
moneromooo-monero
d20ff4f648 functional_tests: add a large (many randomx epochs) p2p reorg test 2020-08-27 15:13:04 +00:00
moneromooo-monero
6a0b3b1f8a functional_tests: add randomx tests 2020-08-27 15:13:03 +00:00
moneromooo-monero
9d42649d58 core: fix mining from a block that's not the current top 2020-08-27 15:13:00 +00:00
cslashm
1660fe8a25 draft support of clsag 2020-08-27 12:44:18 +00:00
Sarang Noether
703944c4d4 CLSAG device support 2020-08-27 12:44:04 +00:00
Sarang Noether
aff87b5f6a Added balance check to MLSAG/CLSAG performance tests 2020-08-27 12:44:04 +00:00
Sarang Noether
f964a92c57 Updated MLSAG and CLSAG tests for consistency 2020-08-27 12:44:04 +00:00
Sarang Noether
5aa1575e91 CLSAG verification performance test 2020-08-27 12:44:04 +00:00
Sarang Noether
641b08c920 CLSAG optimizations 2020-08-27 12:44:04 +00:00
moneromooo-monero
82ee01699c Integrate CLSAGs into monero
They are allowed from v12, and MLSAGs are rejected from v13.
2020-08-27 12:44:04 +00:00
moneromooo-monero
8cd1d6df8f unit_tests: add ge_triple_scalarmult_base_vartime test 2020-08-27 12:44:01 +00:00
Sarang Noether
4b328c6616 CLSAG signatures 2020-08-27 12:43:29 +00:00
selsta
30c1cf83fc repo: update "sponsor" link 2020-08-27 14:39:30 +02:00
Alexander Blair
c695470cff Merge pull request #6771
7c7ccbd2a depends: fix broken links for ds_store / mac_alias (selsta)
2020-08-27 03:08:01 -07:00
Alexander Blair
0c101f1236 Merge pull request #6767
07442a605 Fix build with Boost 1.74 (moneromooo-monero)
2020-08-27 03:07:32 -07:00
Alexander Blair
8aaeff46ee Merge pull request #6766
12ffc79b2 qrcodegen: fix compilation with old gcc, use modern cmake (selsta)
2020-08-27 03:04:10 -07:00
Alexander Blair
27b49033fd Merge pull request #6763
728ba38b1 rpc: always send raw txes through P2P (don't use bootstrap daemon) (xiphon)
2020-08-27 03:02:30 -07:00
Alexander Blair
05390fd2d4 Merge pull request #6762
3614f78d5 README: update list of third party monero packages (erciccione)
2020-08-27 03:02:12 -07:00
Alexander Blair
aa56bf66a6 Merge pull request #6761
9f05df199 travis: j3 -> j2 on i686-w64-mingw32 (selsta)
2020-08-27 03:01:47 -07:00
Alexander Blair
b04da25e4d Merge pull request #6760
844fb4e94 enforce claiming maximum coinbase amount (moneromooo-monero)
2020-08-27 03:01:28 -07:00
Alexander Blair
4fe2858b4d Merge pull request #6746
20f603c6b Fix broken multisig pubkey sorting (Jason Rhinelander)
2020-08-27 02:58:53 -07:00
Alexander Blair
dd7fd2ef80 Merge pull request #6753
4ff2074c7 cryptonote_protocol: don't synced pruned blocks before v11 (cohcho)
2020-08-27 02:58:45 -07:00
Alexander Blair
a06c83db73 Merge pull request #6752
85899230d simplewallet: allow setting tx keys when sending to a subaddress (moneromooo-monero)
e916201f1 wallet2: fix setting tx keys when another is already set (moneromooo-monero)
2020-08-27 02:58:23 -07:00
Alexander Blair
42519b48a7 Merge pull request #6731
db5d6e460 wallet2: fix wrong name when checking RPC cost (moneromooo-monero)
2020-08-27 02:55:48 -07:00
Alexander Blair
bad5d8d6f0 Merge pull request #6690
7175dcb10 replace most boost serialization with existing monero serialization (moneromooo-monero)
2020-08-27 02:54:30 -07:00
Alexander Blair
3f392341e7 Merge pull request #6660
839e1f4ba functional_tests: add p2p functional tests (moneromooo-monero)
2020-08-27 02:53:41 -07:00
Alexander Blair
38914fe6fa Merge pull request #6613
55363c594 Avoid some temporary strings when reading off the database (moneromooo-monero)
2020-08-27 02:52:59 -07:00
selsta
c3f991332f supercop: update submodule 2020-08-27 01:22:15 +02:00
moneromooo-monero
839e1f4bab functional_tests: add p2p functional tests
Tests tx/block propagation and reorgs
2020-08-26 23:00:27 +00:00
Alexander Blair
aadd72202f Merge pull request #6610
b6e904e54 README: mention pruning (moneromooo-monero)
2020-08-26 12:53:55 -07:00
Alexander Blair
a6f1fa0194 Merge pull request #6607
eb1b321fe miner: increase min/max intervals to full extents (moneromooo-monero)
2020-08-26 12:53:09 -07:00
moneromooo-monero
844fb4e940 enforce claiming maximum coinbase amount
Claiming a slightly lesser amount does not yield the size gains
that were seen pre rct, so this closes a fingerprinting vector
2020-08-21 12:36:53 +00:00
selsta
7c7ccbd2a5 depends: fix broken links for ds_store / mac_alias 2020-08-20 21:33:23 +02:00
Lee Clagett
bdc6b10d62 Fix ZMQ pruned bulletproof transactions 2020-08-19 00:36:06 -04:00
Lee Clagett
b641e0a2c0 Add clear method to byte_stream 2020-08-17 21:30:34 -04:00
luigi1111
765db1ae7a Revert "Use domain-separated ChaCha20 for in-memory key encryption"
This reverts commit 921dd8dde5.
2020-08-17 14:08:59 -05:00
moneromooo-monero
7175dcb107 replace most boost serialization with existing monero serialization
This reduces the attack surface for data that can come from
malicious sources (exported output and key images, multisig
transactions...) since the monero serialization is already
exposed to the outside, and the boost lib we were using had
a few known crashers.

For interoperability, a new load-deprecated-formats wallet
setting is added (off by default). This allows loading boost
format data if there is no alternative. It will likely go
at some point, along with the ability to load those.

Notably, the peer lists file still uses the boost serialization
code, as the data it stores is define in epee, while the new
serialization code is in monero, and migrating it was fairly
hairy. Since this file is local and not obtained from anyone
else, the marginal risk is minimal, but it could be migrated
later if needed.

Some tests and tools also do, this will stay as is for now.
2020-08-17 16:23:58 +00:00
moneromooo-monero
55363c5941 Avoid some temporary strings when reading off the database 2020-08-17 14:02:27 +00:00
Alexander Blair
43a4fd9e16 Merge pull request #6736
05ad4fa39 epee: further defending against exceptions in command handlers (moneromooo-monero)
2020-08-16 12:56:35 -07:00
Alexander Blair
43f5369bec Merge pull request #6733
4f01cf4b4 Tweak format, add option for difficulty (Howard Chu)
429d49512 Add options to print daily coin emission and fees (Howard Chu)
d745d2433 Don't forget size of prunable txn part (Howard Chu)
2020-08-16 12:56:03 -07:00
Alexander Blair
d73b1b6560 Merge pull request #6727
13eee1d6a rpc: reject wrong sized txid (moneromooo-monero)
92e6b7df2 easylogging++: fix crash with reentrant logging (moneromooo-monero)
6dd95d530 epee: guard against exceptions in RPC handlers (moneromooo-monero)
90016ad74 blockchain: guard against exceptions in add_new_block/children (moneromooo-monero)
2020-08-16 12:55:25 -07:00
Alexander Blair
569d07d60b Merge pull request #6722
c1b03fb1a rpc: return empty txid get_outs rather than 00..00 when not requested (moneromooo-monero)
2020-08-16 12:54:42 -07:00
Alexander Blair
7db379cc82 Merge pull request #6720
86abf558c epee: Remove unused functions in local_ip.h (Jean Pierre Dudey)
2020-08-16 12:54:17 -07:00
Alexander Blair
10ad0d7eb2 Merge pull request #6718
85efc88c1 Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test (koe)
2020-08-16 12:53:50 -07:00
Alexander Blair
01b512f3a9 Merge pull request #6716
76c16822d wallet2_api: implement runtime proxy configuration (xiphon)
2020-08-16 12:52:21 -07:00
Alexander Blair
f40b9e34e0 Merge pull request #6715
3d6bc0a68 wallet2: throw a error on wallet initialization failure (xiphon)
2020-08-16 12:51:57 -07:00
Alexander Blair
65d7d8312d Merge pull request #6712
01cd3d934 For NetBSD, add instructions to README.md and define to ea_config.h (thomasvaughan)
2020-08-16 12:51:41 -07:00
Alexander Blair
43f91ee12e Merge pull request #6703
8baa7bb23 daemon: don't print "(pruned)" for coinbase txes (moneromooo-monero)
2020-08-16 12:50:43 -07:00
Alexander Blair
d3e611fda2 Merge pull request #6698
a3933a2a5 Update RandomX to v1.1.8 (tevador)
2020-08-16 12:50:26 -07:00
Alexander Blair
79e93a8af8 Merge pull request #6691
6111689cf cmake: allow custom openssl path on macOS (selsta)
2020-08-16 12:48:07 -07:00
Alexander Blair
0b0da2aa81 Merge pull request #6689
afd002c31 daemon: print sampling time in print_net_stats (moneromooo-monero)
ec7bba079 util: fix kilo prefix typo (K instead of k) (moneromooo-monero)
2020-08-16 12:47:36 -07:00
Alexander Blair
236256f114 Merge pull request #6679
2f1ad3b3d updates: mac gui .tar.bz2 -> .dmg (selsta)
2020-08-16 12:46:51 -07:00
Alexander Blair
eba2189925 Merge pull request #6677
f9e3fcdf3 add trezor support to sweep_single (Dusan Klinec)
2020-08-16 12:46:27 -07:00
Alexander Blair
6b2d3deb20 Merge pull request #6662
e33428012 python-rpc: fix bad in_peers parameter (moneromooo-monero)
2020-08-16 12:45:56 -07:00
Alexander Blair
bc48494731 Merge pull request #6661
267ce5b71 avoid a couple needless copies (moneromooo-monero)
2020-08-16 12:45:37 -07:00
Alexander Blair
adcadd9ed0 Merge pull request #6634
01c384c5d workflows: update msys2 setup action v0 -> v1 (selsta)
2020-08-16 12:45:14 -07:00
Alexander Blair
8f02e7a7fc Merge pull request #6632
ef694d028 fix warning by removing std::move() on temporary http_client object (woodser)
2020-08-16 12:44:59 -07:00
Alexander Blair
976a9e0c72 Merge pull request #6618
2d5d74ff5 Mention correct libusb and libudev dependencies (MaxXor)
2020-08-16 12:44:28 -07:00
Alexander Blair
c6c4ead44e Merge pull request #6614
fb31167b1 Wallet, daemon: From 'help_advanced' back to 'help', and new 'apropos' command (rbrunner7)
2020-08-16 12:44:03 -07:00
Alexander Blair
a08df6eb1b Merge pull request #6603
4e2377995 Change ZMQ-JSON txextra to hex and remove unnecessary base fields (Lee Clagett)
2020-08-16 12:43:38 -07:00
Alexander Blair
009ca6fcd3 Merge pull request #6601
98c151ecb Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster (Lee Clagett)
60627c9f2 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster (Lee Clagett)
fe96e66eb Fix pruned tx for ZMQ's GetBlocksFast (Lee Clagett)
2020-08-16 12:43:11 -07:00
Alexander Blair
9eebe01c58 Merge pull request #6593
6f5411d30 tests: fix missing error on missing python entry point (moneromooo-monero)
c6dc2850c python-rpc: add missing sync_txpool python entry point (moneromooo-monero)
2020-08-16 12:41:10 -07:00
Alexander Blair
0f5eb0e70c Merge pull request #6546
eda167585 wallet_rpc_server: use unlock_time in suggested confirmations calc (moneromooo-monero)
2020-08-16 12:40:51 -07:00
Alexander Blair
461651fce5 Merge pull request #6542
35665df20 protocol: don't drop a connection if we can't get a compatible chain (moneromooo-monero)
2020-08-16 12:40:37 -07:00
Alexander Blair
b61a9afa5d Merge pull request #6500
a07c8abcc Update expat.mk (ArqTras)
2020-08-16 12:40:17 -07:00
Alexander Blair
6d29ee6c52 Merge pull request #6493
921dd8dde Use domain-separated ChaCha20 for in-memory key encryption (Sarang Noether)
2020-08-16 12:39:59 -07:00
Alexander Blair
e2e09d00c2 Merge pull request #6337
a11ec4ac1 Support for supercop ASM in wallet, and benchmark for supercop (Lee Clagett)
2020-08-16 12:38:44 -07:00
erciccione
3614f78d5f README: update list of third party monero packages
Removed AUR package, since doesn't seem to exist anymore and added Debian package (the CCS-funded one)
2020-08-16 21:38:11 +02:00
Alexander Blair
13549d590e Merge pull request #6329
6bfcd3101 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. (Sarang Noether)
2020-08-16 12:37:43 -07:00
xiphon
728ba38b11 rpc: always send raw txes through P2P (don't use bootstrap daemon)
It turns out that some remote (bootstrap) nodes silently drop /
don't broadcast client's transactions.
2020-08-16 17:34:28 +00:00
moneromooo-monero
07442a6059 Fix build with Boost 1.74
Thanks iDunk for testing
2020-08-16 16:23:26 +00:00
selsta
12ffc79b27 qrcodegen: fix compilation with old gcc, use modern cmake 2020-08-16 18:06:55 +02:00
selsta
9f05df1996 travis: j3 -> j2 on i686-w64-mingw32 2020-08-15 02:42:23 +02:00
Lee Clagett
4e2377995d Change ZMQ-JSON txextra to hex and remove unnecessary base fields 2020-08-14 23:01:00 +00:00
Lee Clagett
98c151ecb8 Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster 2020-08-14 19:47:19 +00:00
Lee Clagett
60627c9f24 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster 2020-08-14 19:46:59 +00:00
Lee Clagett
fe96e66ebe Fix pruned tx for ZMQ's GetBlocksFast 2020-08-14 19:46:33 +00:00
moneromooo-monero
85899230d1 simplewallet: allow setting tx keys when sending to a subaddress
The tx key derivation is different then
2020-08-10 21:25:51 +00:00
cohcho
4ff2074c74 cryptonote_protocol: don't synced pruned blocks before v11
There are a few Borromean proofs txes in the v8 era, and these
aren't supported by get_pruned_transaction_weight. Moreover, only
only the most recent variant of bulletproofs is currently supported.
2020-08-10 16:17:39 +00:00
Sarang Noether
921dd8dde5 Use domain-separated ChaCha20 for in-memory key encryption 2020-08-09 19:11:54 -04:00
Sarang Noether
6bfcd31015 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. 2020-08-09 18:42:15 -04:00
Alexander Blair
c108c5e2f0 Merge pull request #6354
67ade8005 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
2020-08-09 06:42:49 -07:00
moneromooo-monero
e916201f12 wallet2: fix setting tx keys when another is already set
insert doesn't actually insert if another element with the
same key is already in the map
2020-08-08 14:40:03 +00:00
Jason Rhinelander
20f603c6be Fix broken multisig pubkey sorting
The sort predicate is a boolean ordered-before value, but these are
returning the memcmp value directly, and thus returns true whenever the
pubkeys aren't equal.  This means:

- it isn't actually sorting.

- it can (and does) segfault for some inputs.
2020-08-05 12:42:27 -03:00
Alexander Blair
9414194b1e Merge pull request #6571
1d31e6c00 net_node: remove dead seed nodes (selsta)
2020-08-05 07:57:54 -07:00
Alexander Blair
d9deb2c2fe Merge pull request #6418
e5214a2ca Adding ZMQ/Pub support for txpool_add and chain_main events (Lee Clagett)
2020-08-05 07:54:31 -07:00
Howard Chu
4f01cf4b46 Tweak format, add option for difficulty
Set input, output, ringsize averages to 2 decimal places precision
Add option to show min/max/av per-block difficulty
2020-08-03 13:13:14 +01:00
moneromooo-monero
05ad4fa397 epee: further defending against exceptions in command handlers 2020-08-02 00:22:47 +00:00
Howard Chu
429d495121 Add options to print daily coin emission and fees
Closes #6735
2020-08-01 20:48:42 +01:00
Howard Chu
d745d24333 Don't forget size of prunable txn part
Fixes #6732
2020-08-01 13:41:38 +01:00
moneromooo-monero
db5d6e4602 wallet2: fix wrong name when checking RPC cost 2020-07-31 14:17:23 +00:00
moneromooo-monero
13eee1d6ab rpc: reject wrong sized txid
Reporter requested credit to be given to Decred
2020-07-30 22:52:14 +00:00
moneromooo-monero
92e6b7df2c easylogging++: fix crash with reentrant logging 2020-07-30 22:52:13 +00:00
moneromooo-monero
6dd95d5308 epee: guard against exceptions in RPC handlers 2020-07-30 22:52:12 +00:00
moneromooo-monero
90016ad744 blockchain: guard against exceptions in add_new_block/children
Reporter requested credit to be given to Decred
2020-07-30 22:52:11 +00:00
moneromooo-monero
c1b03fb1a6 rpc: return empty txid get_outs rather than 00..00 when not requested
It's more obvious there's no txid, and it saves space
2020-07-25 17:01:21 +00:00
moneromooo-monero
8baa7bb238 daemon: don't print "(pruned)" for coinbase txes
Pruned coinbase txes are the same as unpruned ones, so the
prunable data is empty
2020-07-24 13:42:20 +00:00
rbrunner7
fb31167b12 Wallet, daemon: From 'help_advanced' back to 'help', and new 'apropos' command 2020-07-24 07:12:11 +02:00
koe
85efc88c1e Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test 2020-07-23 03:36:05 -05:00
Jean Pierre Dudey
86abf558cb epee: Remove unused functions in local_ip.h
Signed-off-by: Jean Pierre Dudey <me@jeandudey.tech>
2020-07-22 19:06:01 -05:00
xiphon
76c16822d0 wallet2_api: implement runtime proxy configuration 2020-07-20 13:45:12 +00:00
xiphon
3d6bc0a680 wallet2: throw a error on wallet initialization failure 2020-07-20 04:40:34 +00:00
thomasvaughan
01cd3d9342 For NetBSD, add instructions to README.md and define to ea_config.h 2020-07-19 12:53:57 +00:00
Alexander Blair
5d850dde99 Merge pull request #6586
40b73d2a6 cmake: insert CMAKE_CURRENT_SOURCE_DIR in CMAKE_MODULE_PATH (xiphon)
2020-07-19 03:43:07 -07:00
Alexander Blair
2a82258dff Merge pull request #6580
ed901798d version: update name (selsta)
2020-07-19 03:42:43 -07:00
Alexander Blair
3434cc24a2 Merge pull request #6578
a6803231e daemon: complain if data dir resides on FAT32 volume (Windows) (xiphon)
2020-07-19 03:41:55 -07:00
Alexander Blair
9871fefbf9 Merge pull request #6565
72cdfa4a2 fix a few typos in error messages (moneromooo-monero)
2020-07-19 03:40:19 -07:00
Alexander Blair
c0a6e1aab9 Merge pull request #6557
bd69e3b37 testdb: add override in a couple places where it's missing (moneromooo-monero)
2020-07-19 03:39:53 -07:00
Alexander Blair
bb0241da6e Merge pull request #6538
7178bb5c8 keccak: remove aligned check (moneromooo-monero)
2020-07-19 03:38:53 -07:00
Alexander Blair
61e5208181 Merge pull request #6537
5e0ea6e95 simplewallet: add missing calls to on_command (moneromooo-monero)
2020-07-19 03:38:07 -07:00
Alexander Blair
6d6c691a0f Merge pull request #6536
bd9653663 db_lmdb: test for mmap support at init time (moneromooo-monero)
2020-07-19 03:37:15 -07:00
Alexander Blair
36d50d93f2 Merge pull request #6534
7bd66b01b daemon: guard against rare 'difficulty drift' bug with checkpoints and recalculation (stoffu)
2020-07-19 03:36:39 -07:00
Alexander Blair
912cbad6db Merge pull request #6529
153977aed libzmq should be libzmq4. (russoj88)
2020-07-19 03:35:14 -07:00
Alexander Blair
814e617117 Merge pull request #6526
5d882f4f1 blockchain: fix theoretical race getting bulk timestamps (moneromooo-monero)
2020-07-19 03:34:52 -07:00
Alexander Blair
3ba6c7fd30 Merge pull request #6516
8656a8c9f remove double includes (sumogr)
2020-07-19 03:34:28 -07:00
Alexander Blair
a0d179e528 Merge pull request #6512
5ef0607da Update copyright year to 2020 (SomaticFanatic)
2020-07-19 03:32:59 -07:00
Alexander Blair
616558d512 Merge pull request #6509
71693f06 systemd: Make sure required folders exist (Age Bosma)
2020-07-19 03:32:03 -07:00
Alexander Blair
7cd0d7f324 Merge pull request #6501
3843a6ab Made ccache optional (opt out) and tidied up the FindCcache.cmake (mj-xmr)
2020-07-19 03:29:26 -07:00
Alexander Blair
65938d26f6 Merge pull request #6497
db8563cb performance_tests: some windows fixes (moneromooo-monero)
2020-07-19 03:27:55 -07:00
Alexander Blair
2fa20016a7 Merge pull request #6489
7765da6e Keys: Add key for rbrunner7 (rbrunner7)
2020-07-19 03:27:34 -07:00
Alexander Blair
5041de8a3b Merge pull request #6488
99684e3e simplewallet: add show_qr_code command (selsta)
2020-07-16 06:14:30 -07:00
Alexander Blair
66235c7f02 Merge pull request #6476
6d41d9e8 contrib: remove codefresh pipeline (selsta)
2020-07-16 06:13:20 -07:00
Alexander Blair
17823be66d Merge pull request #6475
91182330 snap: remove from repo (selsta)
2020-07-16 06:12:26 -07:00
luigi1111
cb882dfc55 Merge pull request #6670
332d607 tx_pool: mine stem txes in fake chain mode (moneromooo-monero)
2020-07-09 12:45:05 -05:00
moneromooo-monero
332d60719a tx_pool: mine stem txes in fake chain mode
This fixes the functional tests, since txes would not be mined
after being sent to the daemon (they'd be waiting for the
dandelion timeout first)
2020-07-09 14:52:13 +00:00
luigi1111
9f93a1b632 Merge pull request #6650
0fd6cce blockchain: fix timestamp/difficulty cache getting out of sync (moneromooo-monero)
2020-07-08 20:38:03 -05:00
moneromooo-monero
0fd6ccef21 blockchain: fix timestamp/difficulty cache getting out of sync
The cache is discarded when a block is popped, but then gets
rebuilt when the difficulty for next block is requested.
While this is all properly locked, it does not take into account
the delay caused by a database transaction being only committed
(and thus its effects made visible to other threads) later on,
which means another thread could request difficulty between
the pop and the commit, which would end up using stale database
view to build the cache, but that cache would not be invalidated
again when the transaction gets committed, which would cause the
cache to not match the new database data.

To fix this, we now keep track of when the cache is invalidated
so we can invalidate it again upon database transaction commit
to ensure it gets calculated again with fresh data next time it
is nedeed.
2020-07-08 22:31:51 +00:00
luigi1111
803f58553b Merge pull request #6675
3721d56 epee: fix array underflow in unicode parsing (moneromooo-monero)
2020-07-08 17:27:53 -05:00
luigi1111
99b14ccd6a Merge pull request #6647
4d8d121 Fix D++ block template check (vtnerd)
2020-07-08 17:25:01 -05:00
luigi1111
18bb011afe Merge pull request #6629
795e186 blockchain: fix total_height in getblocks.bin response (moneromooo-monero)
2020-07-08 17:23:28 -05:00
luigi1111
e8d87fccc2 Merge pull request #6627
4df8f9c rpc: fix loading rpc payment data from file (moneromooo-monero)
2020-07-08 17:22:33 -05:00
luigi1111
0376195015 Merge pull request #6611
dc1a053 rpc: fix comparison of seconds vs microseconds (moneromooo-monero)
2020-07-08 17:21:31 -05:00
luigi1111
3057f52f89 Merge pull request #6599
6e4a55b rpc: fix relay_tx error return mixup (moneromooo-monero)
9b86e14 functional_tests: add simple relay_tx test (moneromooo-monero)
2020-07-08 17:20:29 -05:00
luigi1111
228101a72e Merge pull request #6597
ec46069 Fix incorrect lenght of command INS_PREFIX_HASH (grydz)
2020-07-08 17:18:10 -05:00
luigi1111
81c2586358 Merge pull request #6588
bcef52d daemon: remove time based 'update needed' status string (moneromooo-monero)
2020-07-08 17:15:19 -05:00
luigi1111
340e1943ac Merge pull request #6587
94befec fix typo in pick_preferred_rct_inputs (Parean)
2020-07-08 17:14:09 -05:00
luigi1111
be170c485c Merge pull request #6584
78d435a rpc: don't display invalid json errors on default log level (moneromooo-monero)
2020-07-08 17:12:43 -05:00
luigi1111
8b3fa2d373 Merge pull request #6574
7ebb351 rpc: lock access to the rpc payment object (moneromooo-monero)
2020-07-08 17:11:32 -05:00
luigi1111
634262f3f5 Merge pull request #6568
f037121 cryptonote_core: remove 'We are most likely forked' message (moneromooo-monero)
2020-07-08 17:10:39 -05:00
luigi1111
f1334ebf64 Merge pull request #6566
567402c protocol: move the 'peer claims higher version' warning to debug (moneromooo-monero)
2020-07-08 17:08:58 -05:00
luigi1111
35e2520115 Merge pull request #6559
15538f7 ByteSlice: Fix persisting ptr to std::moved SSO buffer (Doy-lee)
2020-07-08 17:07:50 -05:00
luigi1111
ee817e00bb Merge pull request #6550
ca60d60 easylogging++: sanitize log payload (moneromooo-monero)
2020-07-08 17:06:26 -05:00
luigi1111
ed903578d7 Merge pull request #6544
5741b4d blockchain: detect and log bad difficulty calculations (moneromooo-monero)
2020-07-08 17:04:41 -05:00
luigi1111
7d903bc992 Merge pull request #6528
b73f4e7 [master]: Update gitian yml files (iDunk5400)
2020-07-08 17:03:37 -05:00
selsta
ed901798d9 version: update name 2020-07-06 23:22:25 +02:00
tevador
a3933a2a5e Update RandomX to v1.1.8 2020-07-04 15:24:39 +02:00
selsta
6111689cfa cmake: allow custom openssl path on macOS 2020-06-25 20:31:16 +02:00
moneromooo-monero
afd002c31f daemon: print sampling time in print_net_stats 2020-06-25 13:03:59 +00:00
moneromooo-monero
ec7bba0793 util: fix kilo prefix typo (K instead of k) 2020-06-25 13:03:24 +00:00
selsta
2f1ad3b3d2 updates: mac gui .tar.bz2 -> .dmg 2020-06-22 02:55:22 +02:00
Dusan Klinec
f9e3fcdf3e add trezor support to sweep_single 2020-06-21 23:17:58 +02:00
moneromooo-monero
3721d5688f epee: fix array underflow in unicode parsing
Reported by minerscan

Also independently found by OSS-Fuzz just recently
2020-06-21 18:22:16 +00:00
selsta
99684e3ec3 simplewallet: add show_qr_code command
Thanks to iDunk for helping with Windows.
2020-06-21 20:15:10 +02:00
luigi1111
93257997bd Merge pull request #6656
bde7f1c fuzz_tests: fix init check in oss-fuzz mode (moneromooo-monero)
c4b7420 Do not use PIE with OSS-Fuzz (moneromooo-monero)
c4df8b1 fix leaks in fuzz tests (moneromooo-monero)
38ca1bb fuzz_tests: add a tx extra fuzz test (moneromooo-monero)
2020-06-19 10:17:51 -05:00
moneromooo-monero
e334280127 python-rpc: fix bad in_peers parameter 2020-06-17 14:34:16 +00:00
luigi1111
b3d6382d40 Merge pull request #6637
58e1c8b repo: update donation fund address (selsta)
2020-06-15 15:54:22 -05:00
moneromooo-monero
267ce5b718 avoid a couple needless copies 2020-06-14 18:05:35 +00:00
moneromooo-monero
bde7f1c5cc fuzz_tests: fix init check in oss-fuzz mode 2020-06-14 16:10:49 +00:00
moneromooo-monero
c4b74208c7 Do not use PIE with OSS-Fuzz 2020-06-14 14:03:18 +00:00
moneromooo-monero
c4df8b1390 fix leaks in fuzz tests 2020-06-14 12:54:13 +00:00
moneromooo-monero
38ca1bb389 fuzz_tests: add a tx extra fuzz test 2020-06-14 12:54:10 +00:00
Lee Clagett
4d8d121462 Fix D++ block template check 2020-06-12 22:05:52 -04:00
selsta
58e1c8b031 repo: update donation fund address 2020-06-09 12:19:39 +02:00
stoffu
7bd66b01bf daemon: guard against rare 'difficulty drift' bug with checkpoints and recalculation
On startup, it checks against the difficulty checkpoints, and if any mismatch is found, recalculates all the blocks with wrong difficulties. Additionally, once a week it recalculates difficulties of blocks after the last difficulty checkpoint.
2020-06-09 10:40:51 +09:00
luigi1111
ff4d470629 Merge pull request #6576
4d3c2d0 rpc: add a sanity limit to a few RPC in restricted mode (moneromooo-monero)
2020-06-08 14:27:05 -05:00
luigi1111
c4f4091dd4 Merge pull request #6561
c17fe81 wallet2: fix multisig data clearing stomping on a vector (moneromooo-monero)
2020-06-08 14:21:33 -05:00
luigi1111
445f74c71a Merge pull request #6556
5ed37ba serialization: fix bad rapidjson api usage (moneromooo-monero)
2020-06-08 14:18:09 -05:00
luigi1111
28745b1b63 Merge pull request #6553
bb5c5df cryptonote_protocol: reject requests/notifications before handshake (moneromooo-monero)
f1d0457 cryptonote_protocol: stricter limit to number of objects requested (moneromooo-monero)
2020-06-08 14:16:42 -05:00
luigi1111
e17c864ba2 Merge pull request #6549
82d21f5 easylogging++: sanitize log payload (moneromooo-monero)
7d0b7e8 [master] MMS: New 'config_checksum' subcommand (rbrunner7)
2020-06-08 14:12:08 -05:00
luigi1111
e27604ff10 Merge pull request #6539
85164a8 epee: use memwipe rather than memset for md5 secrets (moneromooo-monero)
2020-06-08 14:09:22 -05:00
luigi1111
3a577f1ce7 Merge pull request #6525
86cf811 simplewallet: don't complain about incoming payment ids on change (moneromooo-monero)
2020-06-08 14:07:45 -05:00
luigi1111
967285a9fa Merge pull request #6522
29e563b Fixed bugs for take_slice and byte_stream->byte_slice (vtnerd)
2020-06-08 14:05:05 -05:00
luigi1111
09667700e8 Merge pull request #6519
ab44293 trezor: add new firmware version support (ph4r05)
2020-06-08 14:03:57 -05:00
luigi1111
37c359e765 Merge pull request #6514
4baee20 build: prepare v0.16.0.0 release (selsta)
2020-06-08 14:02:00 -05:00
selsta
01c384c5de workflows: update msys2 setup action v0 -> v1 2020-06-07 21:03:33 +02:00
woodser
ef694d028f fix warning by removing std::move() on temporary http_client object 2020-06-06 11:38:32 -04:00
moneromooo-monero
795e18632c blockchain: fix total_height in getblocks.bin response 2020-06-05 15:27:07 +00:00
moneromooo-monero
4df8f9c414 rpc: fix loading rpc payment data from file
Got broken after making one of those micro optimizations requested on review..
2020-06-05 11:21:24 +00:00
MaxXor
2d5d74ff5c Mention correct libusb and libudev dependencies 2020-06-02 14:00:31 +02:00
moneromooo-monero
b6e904e547 README: mention pruning 2020-06-01 17:48:11 +00:00
luigi1111
992b7ce30f Merge pull request #6612
7aeb503 Fix boost <1.60 compilation and fix boost 1.73+ warnings (vtnerd)
2020-06-01 08:52:12 -05:00
Lee Clagett
7aeb503547 Fix boost <1.60 compilation and fix boost 1.73+ warnings 2020-05-31 21:18:11 -04:00
moneromooo-monero
dc1a053081 rpc: fix comparison of seconds vs microseconds 2020-05-31 22:28:23 +00:00
moneromooo-monero
eb1b321fe2 miner: increase min/max intervals to full extents
This prevents setting target to, eg, 65 being ignored

and remove an unused constant
2020-05-31 12:36:47 +00:00
luigi1111
7e78da7772 Merge pull request #6582
2314dae workflows: fix windows build (selsta)
2020-05-28 12:53:58 -05:00
moneromooo-monero
9b86e14c5a functional_tests: add simple relay_tx test 2020-05-28 12:49:17 +00:00
moneromooo-monero
6e4a55ba7e rpc: fix relay_tx error return mixup 2020-05-28 11:33:27 +00:00
luigi1111
d6d4a03b85 Merge pull request #6535
81773f5 fuzz_tests: refactor and add OSS-Fuzz compatibility (moneromooo-monero)
cb4edc1 cmake: ASAN and PIE don't mix (moneromooo-monero)
2020-05-27 18:27:06 -05:00
luigi1111
463d044f5e Merge pull request #6531
f35ced6 build: fix boost 1.73 compatibility (selsta)
2020-05-27 18:25:33 -05:00
François Colas
ec46069248 Fix incorrect lenght of command INS_PREFIX_HASH
buffer_send[4] (LC) is an unsigned char, len should not
exceed 254 (255 - 1 for the option).
2020-05-27 18:06:19 +02:00
moneromooo-monero
6f5411d305 tests: fix missing error on missing python entry point 2020-05-27 13:11:01 +00:00
moneromooo-monero
c6dc2850c2 python-rpc: add missing sync_txpool python entry point 2020-05-27 13:11:00 +00:00
moneromooo-monero
bcef52d430 daemon: remove time based "update needed" status string 2020-05-24 21:44:03 +00:00
Denis Smirnov
94befecb05 fix typo in pick_preferred_rct_inputs 2020-05-25 03:39:54 +07:00
xiphon
40b73d2a6c cmake: insert CMAKE_CURRENT_SOURCE_DIR in CMAKE_MODULE_PATH 2020-05-24 16:47:06 +00:00
rbrunner7
7d0b7e83ef [master] MMS: New 'config_checksum' subcommand 2020-05-24 10:23:55 +02:00
moneromooo-monero
82d21f5b3c easylogging++: sanitize log payload
Some of it might be coming from untrusted sources

Reported by itsunixiknowthis
2020-05-24 08:38:59 +02:00
moneromooo-monero
78d435a5fa rpc: don't display invalid json errors on default log level
It's not something the user needs to know, and will display
attacker controlled data
2020-05-23 12:26:49 +00:00
selsta
2314dae8c8 workflows: fix windows build 2020-05-23 02:30:09 +02:00
xiphon
a6803231e6 daemon: complain if data dir resides on FAT32 volume (Windows) 2020-05-21 15:23:44 +00:00
moneromooo-monero
4d3c2d0b7b rpc: add a sanity limit to a few RPC in restricted mode 2020-05-20 19:17:49 +00:00
Doyle
15538f7e3f ByteSlice: Fix persisting ptr to std::moved SSO buffer
The Bug:
1. Construct `byte_slice.portion_` with `epee::span(buffer)` which copies a pointer to the SSO buffer to `byte_slice.portion_`
2. It constructs `byte_slice.storage_` with `std::move(buffer)` (normally this swap pointers, but SSO means a memcpy and clear on the original SSO buffer)
3. `slice.data()` returns a pointer from `slice.portion_` that points to the original SSO cleared buffer, `slice.storage_` has the actual string.
2020-05-20 10:13:58 +10:00
selsta
1d31e6c000 net_node: remove dead seed nodes 2020-05-20 01:06:03 +02:00
moneromooo-monero
7ebb351c2d rpc: lock access to the rpc payment object 2020-05-19 18:26:28 +00:00
moneromooo-monero
f0371210e9 cryptonote_core: remove "We are most likely forked" message
It's time based and we don't have forks every 6 months anymore
2020-05-19 16:27:24 +00:00
moneromooo-monero
567402c508 protocol: move the "peer claims higher version" warning to debug
Because there's a neverending supply of cunts claiming a wrong
version just to say "look at me" I guess
2020-05-19 16:14:53 +00:00
moneromooo-monero
72cdfa4a20 fix a few typos in error messages
Reported by adrelanos
2020-05-19 15:59:26 +00:00
moneromooo-monero
c17fe815a2 wallet2: fix multisig data clearing stomping on a vector 2020-05-19 10:45:40 +00:00
moneromooo-monero
f1d0457523 cryptonote_protocol: stricter limit to number of objects requested
Reported by xnbya
2020-05-19 10:33:03 +00:00
moneromooo-monero
bb5c5dff15 cryptonote_protocol: reject requests/notifications before handshake
Reported by xnbya
2020-05-19 10:33:02 +00:00
moneromooo-monero
ca60d60fea easylogging++: sanitize log payload
Some of it might be coming from untrusted sources

Reported by itsunixiknowthis
2020-05-19 10:31:28 +00:00
moneromooo-monero
bd69e3b37a testdb: add override in a couple places where it's missing 2020-05-18 14:17:48 +00:00
moneromooo-monero
5ed37ba83c serialization: fix bad rapidjson api usage 2020-05-18 14:17:23 +00:00
moneromooo-monero
5741b4d74d blockchain: detect and log bad difficulty calculations 2020-05-17 12:44:45 +00:00
moneromooo-monero
eda1675858 wallet_rpc_server: use unlock_time in suggested confirmations calc 2020-05-17 01:03:32 +00:00
moneromooo-monero
35665df206 protocol: don't drop a connection if we can't get a compatible chain
This can now happen if:
- we have a pruned db
- we have not connected to the monero network for a while
- we connect to a node
- that node asks us for history
- we only have a pruned version of the most recent common block

In that case, it's better to not reply but keep the connection alive,
so we can sync off it.
2020-05-16 19:55:31 +00:00
moneromooo-monero
85164a8daf epee: use memwipe rather than memset for md5 secrets
That's used by HTTP auth now
2020-05-16 18:12:55 +00:00
moneromooo-monero
7178bb5c84 keccak: remove aligned check
Some tools report the alignment check as UB, which seems a bit
dubious, but since the performance difference between the two
versions is minimal, I'll go with the safe version
2020-05-16 12:28:27 +00:00
Lee Clagett
a11ec4ac1d Support for supercop ASM in wallet, and benchmark for supercop 2020-05-16 10:25:17 +00:00
moneromooo-monero
5e0ea6e95c simplewallet: add missing calls to on_command
It resets the inactivity time
2020-05-16 00:48:44 +00:00
moneromooo-monero
bd96536637 db_lmdb: test for mmap support at init time
It'll make it clearer when a DB init failure is due to being
on a filesystem which does not support mmap
2020-05-16 00:20:22 +00:00
moneromooo-monero
cb4edc1f45 cmake: ASAN and PIE don't mix
Binaries built with both crash on startup with maybe 25% probability
2020-05-15 17:18:50 +00:00
moneromooo-monero
81773f55a4 fuzz_tests: refactor and add OSS-Fuzz compatibility 2020-05-15 17:18:27 +00:00
Lee Clagett
67ade80055 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 2020-05-15 07:57:35 +00:00
selsta
f35ced6d7f build: fix boost 1.73 compatibility 2020-05-14 22:57:53 +02:00
moneromooo-monero
86cf811a39 simplewallet: don't complain about incoming payment ids on change 2020-05-13 23:28:31 +00:00
russoj88
153977aed4 libzmq should be libzmq4. 2020-05-13 14:21:18 -07:00
iDunk5400
b73f4e78d0 [master]: Update gitian yml files 2020-05-13 22:08:00 +02:00
selsta
4baee200a7 build: prepare v0.16.0.0 release 2020-05-13 16:15:03 +02:00
moneromooo-monero
5d882f4f14 blockchain: fix theoretical race getting bulk timestamps 2020-05-13 13:42:41 +00:00
Dusan Klinec
ab4429346d trezor: add new firmware version support 2020-05-12 16:31:36 +02:00
Lee Clagett
29e563bb1e Fixed bugs for take_slice and byte_stream->byte_slice 2020-05-12 01:26:37 -04:00
sumogr
8656a8c9ff remove double includes 2020-05-11 13:53:17 +00:00
luigi1111
77a008f714 Merge pull request #6510
70609d7 cryptonote_core: take out the time based upgrade warning (moneromooo-monero)
2020-05-07 10:44:34 -05:00
luigi1111
4c2f78aeeb Merge pull request #6506
42e1484 wallet2: fix keys file deserialization exception handling (xiphon)
2020-05-07 10:43:05 -05:00
SomaticFanatic
5ef0607da6 Update copyright year to 2020
Update copyright year to 2020
2020-05-06 22:36:54 -04:00
moneromooo-monero
70609d7681 cryptonote_core: take out the time based upgrade warning
It doesn't really work anymore since we don't have a fork soon
2020-05-06 18:27:23 +00:00
luigi1111
dbba6004f5 Merge pull request #6503
f80ab3e cryptonote_protocol: do not request pruned borromean sig txes (moneromooo-monero)
2020-05-06 12:22:28 -05:00
Age Bosma
71693f06a1 systemd: Make sure required folders exist
The default monero.conf file depends on the existence of the folders `/var/log/monero/` and `/var/lib/monero/`.
This change makes sure systemd will create them, together with the proper permissions, if they don't exist.
`StateDirectory` can be considered an extra safety in case the user `monero` happens to have been created with specifying `/var/lib/monero/` as a home folder but without actually creating it.
2020-05-06 14:57:47 +02:00
moneromooo-monero
f80ab3edde cryptonote_protocol: do not request pruned borromean sig txes
We don't have a function to calculate their weight from a pruned
version (yet).
2020-05-06 12:44:00 +00:00
luigi1111
f2c78f6a5b Merge pull request #6486
feee455 Fixes for ZMQ JSON-RPC endpoint names for raw tx (vtnerd)
2020-05-06 00:34:30 -05:00
luigi1111
3de804f1e9 Merge pull request #6485
7a8c1ee wallet2: fix subaddress expansion when receiving monero (moneromooo-monero)
2020-05-06 00:31:51 -05:00
luigi1111
98e3802b26 Merge pull request #6484
e7d0105 message_store: don't print an error when there is no mms file (moneromooo-monero)
2020-05-06 00:30:39 -05:00
luigi1111
de025281dc Merge pull request #6481
119f706 rpc: fix 'use_bootstrap_daemon_if_necessary' return value (xiphon)
2020-05-06 00:29:49 -05:00
luigi1111
9e3f72c375 Merge pull request #6480
4f489fa wallet2: check_connection return false on get_version status != OK (xiphon)
2020-05-06 00:28:18 -05:00
luigi1111
0f233c6ad8 Merge pull request #6478
ee58362 Used legacy category to match insert_key_images behavior (vtnerd)
2020-05-06 00:27:13 -05:00
luigi1111
9f3e8e3ff0 Merge pull request #6477
afe5a55 Revert functional test changes in babf25d and 5715460 (vtnerd)
2020-05-06 00:26:16 -05:00
luigi1111
483e5cab5c Merge pull request #6472
2efbd5f cryptonote: fix reuse of non default tx data when relaying (moneromooo-monero)
2020-05-06 00:25:18 -05:00
luigi1111
8d0f1696df Merge pull request #6471
c6a1294 add another seed node (Gingeropolous/selsta)
9faf3d1 Add erciccione's seed node (erciccione/selsta)
2020-05-06 00:23:59 -05:00
luigi1111
1f505a5eac Merge pull request #6468
a813c46 cryptonote_core: skip dns checkpoints on startup if not enforced (xiphon)
2020-05-06 00:22:20 -05:00
luigi1111
6d1f3c9acd Merge pull request #6467
8b655de simplewallet: report timestamp based expected unlock time on balance (moneromooo-monero)
2020-05-05 23:40:44 -05:00
luigi1111
b4023dcfc5 Merge pull request #6441
613071f use memwipe on secret k/alpha values (moneromooo-monero)
2020-05-05 23:39:32 -05:00
luigi1111
a7334faf63 Merge pull request #6409
c26c930 Add byte_stream for zero-copy serialization, and add support in ZMQ-JSON. (vtnerd)
2020-05-05 23:37:11 -05:00
xiphon
42e14840fb wallet2: fix keys file deserialization exception handling 2020-05-05 16:34:50 +00:00
mj-xmr
3843a6aba5 Made ccache optional (opt out) and tidied up the FindCcache.cmake 2020-05-04 09:46:31 +02:00
Lee Clagett
e5214a2ca2 Adding ZMQ/Pub support for txpool_add and chain_main events 2020-05-04 02:06:35 +00:00
ArqTras
a07c8abcc1 Update expat.mk 2020-05-03 22:37:58 +02:00
moneromooo-monero
db8563cb46 performance_tests: some windows fixes
Too many iterations cause std::bad_alloc for the timings vector,
and the micro prefix displays as some other character, so use u.

Reported by iDunk
2020-05-03 14:11:45 +00:00
luigi1111
8185054db7 Merge pull request #6451
4ed60b6 Bulletproofs: verification speedup (SarangNoether)
2020-05-02 15:14:41 -05:00
luigi1111
a5cc613a68 Merge pull request #6460
f8b1480 unit_tests: fix gcc+ warning (sumogr)
2020-05-01 15:50:19 -05:00
luigi1111
ae18ec080c Merge pull request #6457
5eb7f63 workflows: add trezor support ubuntu (selsta)
2020-05-01 15:48:53 -05:00
luigi1111
ec90f9a54b Merge pull request #6453
d2d3a81 bootstrap_daemon: fix missing virtual destructor and lambda capture (clang warning) (xiphon)
2020-05-01 15:47:47 -05:00
luigi1111
d68497a3e3 Merge pull request #6452
d3e77cc FindCcache automatically (mj-xmr)
2020-05-01 15:45:55 -05:00
luigi1111
ac9f7c9bec Merge pull request #6449
27d551d simplewallet: add sweep_account command (moneromooo-monero)
2020-05-01 15:36:19 -05:00
luigi1111
c9b800a787 Merge pull request #6446
e509ede trezor: adapt to new passphrase mechanism (ph4r05)
2020-05-01 15:32:52 -05:00
luigi1111
f020b24b02 Merge pull request #6444
b367630 simplewallet : missing function block separator (sumogr)
2020-05-01 15:24:33 -05:00
luigi1111
6e7b883212 Merge pull request #6443
145be6d p2p: startup speedup, init seed nodes on first 'connect_to_seed()' (xiphon)
2020-05-01 15:23:05 -05:00
luigi1111
6b7e88e16c Merge pull request #6440
7c4a400 simplewallet: fix strings (show_transfers & export_transfers) (sumogr)
2020-05-01 15:21:57 -05:00
luigi1111
443f5c6bda Merge pull request #6436
688a3e8 Add timelock verification on device (cslashm)
2020-05-01 15:20:05 -05:00
luigi1111
69320cd913 Merge pull request #6420
647c069 openssl update (ArqTras)
2020-05-01 15:18:34 -05:00
luigi1111
3e21e591b8 Merge pull request #6350
da99157 Use byte_slice for sending zmq messages - removes data copy within zmq (vtnerd)
2020-05-01 15:13:58 -05:00
rbrunner7
7765da6eb2 Keys: Add key for rbrunner7 2020-04-29 22:15:42 +02:00
luigi1111
26bfd70459 Merge pull request #6487
dd807b8 txpool.cpp: rename var to fix for old g++ version (xenial default) (sumogr)
2020-04-29 12:13:24 -05:00
Sumo Gr
dd807b8410 txpool.cpp: rename var to fix for old g++ version (xenial default) 2020-04-29 10:03:51 +00:00
Lee Clagett
feee455c9f Fixes for ZMQ JSON-RPC endpoint names for raw tx 2020-04-29 01:07:27 -04:00
moneromooo-monero
7a8c1eece9 wallet2: fix subaddress expansion when receiving monero 2020-04-27 16:48:19 +00:00
Dusan Klinec
e509ede2aa trezor: adapt to new passphrase mechanism
- choice where to enter passphrase is now made on the host
- use wipeable string in the comm stack
- wipe passphrase memory
- protocol optimizations, prepare for new firmware version
- minor fixes and improvements
- tests fixes, HF12 support
2020-04-27 18:17:56 +02:00
moneromooo-monero
e7d01056f4 message_store: don't print an error when there is no mms file
It confuses people
2020-04-27 15:44:29 +00:00
xiphon
119f706921 rpc: fix 'use_bootstrap_daemon_if_necessary' return value 2020-04-27 10:32:33 +00:00
ArqTras
647c069db6 openssl update
Not available source updated

g version
2020-04-27 10:52:51 +02:00
xiphon
4f489fa6a2 wallet2: check_connection return false on get_version status != OK 2020-04-26 13:08:17 +00:00
Lee Clagett
ee58362b1f Used legacy category to match insert_key_images behavior 2020-04-24 20:19:37 -04:00
Lee Clagett
afe5a55e96 Revert functional test changes in babf25d2e and 571546067 2020-04-24 18:30:23 -04:00
selsta
6d41d9e8f9 contrib: remove codefresh pipeline 2020-04-25 00:25:55 +02:00
selsta
91182330d7 snap: remove from repo 2020-04-25 00:15:37 +02:00
moneromooo-monero
2efbd5f0cc cryptonote: fix reuse of non default tx data when relaying
An automatic tx variable is initialized properly on the first
run through the loop, but not the second. Moving the variable
inside the loop ensures the ctor is called again to init it.
2020-04-22 16:50:20 +00:00
mj-xmr
d3e77ccb59 FindCcache automatically 2020-04-22 17:17:25 +02:00
Gingeropolous
c6a1294b5e add another seed node
node is funded by random people and managed by me. currently functioning as public node at uwillrunanodesoon.moneroworld.com
2020-04-22 15:43:22 +02:00
moneromooo-monero
8b655de8ed simplewallet: report timestamp based expected unlock time on balance 2020-04-22 13:34:58 +00:00
erciccione
9faf3d1a72 Add erciccione's seed node 2020-04-22 10:24:40 +02:00
xiphon
145be6dbdb p2p: startup speedup, init seed nodes on first 'connect_to_seed()' 2020-04-21 23:40:04 +00:00
luigi1111
378cdeaeae Merge pull request #6470
79a1653 p2p: add seed node. (guywillett)
2020-04-21 09:14:38 -05:00
luigi1111
c846c8650e Merge pull request #6445
5715460 Always reject duplicate key-images from second txid (vtnerd)
babf25d Allow unrestricted rpc calls to get full txpool info (vtnerd)
2020-04-21 09:03:37 -05:00
luigi1111
4540afc51b Merge pull request #6433
7326b69 functional_tests: ensure signatures never reuse a timestamp (moneromooo-monero)
082dd2c functional_tests: ensure signed timestamps are fresh (moneromooo-monero)
2020-04-21 08:54:44 -05:00
luigi1111
cc91c0221d Merge pull request #6415
09abca7 wallet_api: checkUpdate - optional version and buildtag params (xiphon)
2020-04-21 08:52:57 -05:00
luigi1111
f389ce1a0f Merge pull request #6414
14e8035 update openssl 1.0.2r link (sumogr)
2020-04-21 08:48:52 -05:00
luigi1111
665736d323 Merge pull request #6411
9c95437 workflows: retry on apt failure (selsta)
2020-04-21 08:47:56 -05:00
luigi1111
cb8f4280bb Merge pull request #6408
5ef7138 daemon: fix print_net_stats RPC calls (moneromooo-monero)
2020-04-21 08:46:39 -05:00
luigi1111
06c81b6527 Merge pull request #6359
f9441c5 Fixed string_ref usage bug in epee::from_hex::vector (vtnerd)
2020-04-21 08:38:21 -05:00
guy
79a1653a07 p2p: add seed node. 2020-04-21 15:35:30 +02:00
luigi1111
2d729fbdf7 Merge pull request #6332
87d7558 Allow wallet2.h to run in WebAssembly (woodser)
2020-04-21 08:26:54 -05:00
luigi1111
9c660e159e Merge pull request #6278
387fd66 Daemon: Print estimates for time until fully synced (rbrunner7)
2020-04-21 08:19:02 -05:00
xiphon
a813c46a1b cryptonote_core: skip dns checkpoints on startup if not enforced 2020-04-20 18:56:22 +00:00
Sumo Gr
f8b1480f95 unit_tests: fix gcc+ warning 2020-04-18 18:04:20 +03:00
luigi1111
57854a3e21 Merge pull request #6314
02d887c Adding Dandelion++ support to public networks: (vtnerd)
2020-04-17 17:48:22 -05:00
selsta
5eb7f63df8 workflows: add trezor support ubuntu 2020-04-16 22:58:53 +02:00
xiphon
d2d3a81d0e bootstrap_daemon: fix missing virtual destructor and lambda capture (clang warning) 2020-04-15 21:22:55 +00:00
woodser
87d75584e8 Allow wallet2.h to run in WebAssembly
- Add abstract_http_client.h which http_client.h extends.
- Replace simple_http_client with abstract_http_client in wallet2,
message_store, message_transporter, and node_rpc_proxy.
- Import and export wallet data in wallet2.
- Use #if defined __EMSCRIPTEN__ directives to skip incompatible code.
2020-04-15 13:22:46 -04:00
moneromooo-monero
613071f4fa use memwipe on secret k/alpha values
Reported by UkoeHB_ and sarang
2020-04-15 01:16:31 +00:00
Sarang Noether
4ed60b626a Bulletproofs: verification speedup 2020-04-14 20:31:30 -04:00
moneromooo-monero
27d551d12f simplewallet: add sweep_account command
Expects an account number, then the usual sweep_all options

Useful to move monero that was accidentally sent to a subaddress
with a very large account index.
2020-04-14 15:06:46 +00:00
Lee Clagett
c26c93019a Add byte_stream for zero-copy serialization, and add support in ZMQ-JSON. 2020-04-11 04:12:11 +00:00
luigi1111
7c74e1919e Merge pull request #6405
8d23047 p2p: add another seed node (moneromooo-monero)
2020-04-10 16:13:04 -05:00
luigi1111
228af683a7 Merge pull request #6403
5de2295 Correct key image check in tx_pool (vtnerd)
2020-04-10 16:10:33 -05:00
luigi1111
4badcf3781 Merge pull request #6398
8688b46 depends: update qt 5.7.1 download link (sumogr)
2020-04-10 16:08:20 -05:00
luigi1111
bce050ee78 Merge pull request #6394
69b5992 simplewallet: new 'address one-off <major> <minor>' command (moneromooo-monero)
2020-04-10 16:06:10 -05:00
luigi1111
7954f8cb18 Merge pull request #6358
8958b4e blockchain_db: faster fetching of consecutive txes (moneromooo-monero)
2020-04-10 16:01:37 -05:00
luigi1111
53800b3b63 Merge pull request #6341
927fd47 simplewallet: fix smart mining not starting after first setup (moneromooo-monero)
2020-04-10 15:59:14 -05:00
Sumo Gr
b367630ee8 simplewallet : missing function block separator 2020-04-10 21:27:41 +03:00
sumogr
7c4a4003a3 simplewallet: fix strings (show_transfers & export_transfers) 2020-04-08 19:17:58 +03:00
cslashm
688a3e87e7 Add timelock verification on device 2020-04-08 11:12:32 +02:00
moneromooo-monero
69b5992296 simplewallet: new "address one-off <major> <minor>" command 2020-04-07 16:25:01 +00:00
moneromooo-monero
7326b691d3 functional_tests: ensure signatures never reuse a timestamp 2020-04-06 16:11:36 +00:00
moneromooo-monero
082dd2c373 functional_tests: ensure signed timestamps are fresh
This fixes a test failure now that timestamps are more constrained
2020-04-06 14:06:36 +00:00
luigi1111
ecb8cc9df4 Merge pull request #6397
323a9e3 depends: libsodium disable getrandom()/getentropy() (glibc < 2.25) (xiphon)
2020-04-04 13:19:25 -05:00
luigi1111
bbceb31044 Merge pull request #6395
ad13a4b Fixing static_asserts in ZMQ JSON (vtnerd)
2020-04-04 13:17:54 -05:00
luigi1111
00ede0038d Merge pull request #6387
0dbdba8 epee: avoid spamming 'Generating SSL certificate' in the logs (xiphon)
2020-04-04 13:16:55 -05:00
luigi1111
ee06f56619 Merge pull request #6386
68ffc1c README: clean up TOC (selsta)
2020-04-04 13:15:07 -05:00
luigi1111
d102a72027 Merge pull request #6384
ec01077 db_lmdb: fix race crash using a stale cursor (moneromooo-monero)
2020-04-04 13:14:19 -05:00
luigi1111
d1f3d3376d Merge pull request #6381
e719760 Fix receive order leakage with tx fluffing (vtnerd)
2020-04-04 13:12:31 -05:00
luigi1111
975825a1fd Merge pull request #6375
ebf3c10 Added logging for dropped local txes with no i2p/tor connections (vtnerd)
2020-04-04 13:11:30 -05:00
luigi1111
97af9649c9 Merge pull request #6372
7b9017f p2p: plug tor to clearnet association vector (Aaron Hook)
2020-04-04 13:09:55 -05:00
luigi1111
6aa5da09f5 Merge pull request #6371
b40c27c cppzmq: remove leftovers (selsta)
2020-04-04 13:08:22 -05:00
luigi1111
d86d1a4d29 Merge pull request #6370
3031deb Bump downloaded boost version to 1.72 (omartijn)
6079042 Use boost::asio::ssl::context::sslv23 for backwards compatibility (omartijn)
2020-04-04 13:06:36 -05:00
luigi1111
59ab769210 Merge pull request #6364
6e1cb5a device: Ledger - fix wide char hidapi error string conversion (xiphon)
2020-04-04 13:02:18 -05:00
luigi1111
5757d99208 Merge pull request #6361
68a6507 Fixed bug in ZMQ JSON-RPC method field (vtnerd)
2020-04-04 13:01:15 -05:00
luigi1111
0150a480fd Merge pull request #6357
42a7a4d daemon: auto public nodes - cache and prioritize most stable nodes (xiphon)
2020-04-04 12:59:23 -05:00
luigi1111
b1808c9920 Merge pull request #6356
56c4eda Provides safer semaphore privilege to jail; notes port/pkg availability (scoobybejesus)
2020-04-04 12:57:48 -05:00
luigi1111
6a6eedd842 Merge pull request #6353
6810150 daemon: if no banned IPs print something (sumogr)
2020-04-04 12:56:36 -05:00
luigi1111
cfc0f4a7fa Merge pull request #6351
81c5943 Remove temporary std::string creation in some hex->bin calls (vtnerd)
5fcc23a Move hex->bin conversion to monero copyright files and with less includes (vtnerd)
3387f0e Reduce template bloat in hex->bin for ZMQ json (vtnerd)
2020-04-04 12:55:02 -05:00
luigi1111
44547006bf Merge pull request #6347
fcb06f7 cryptonote_core: skip block notify on blockchain switching rollback (xiphon)
2020-04-04 12:52:46 -05:00
luigi1111
bf70696a85 Merge pull request #6346
dbfa4f8 unit_tests: fix missing test names (xiphon)
2020-04-04 12:50:17 -05:00
luigi1111
ad5200e440 Merge pull request #6342
82da832 rpc: Add check for too old timestamps in payment signatures. (glv2)
2020-04-04 12:49:02 -05:00
luigi1111
c4f75fe898 Merge pull request #6339
c61abf8 remove empty statements (shopglobal)
2020-04-04 12:47:31 -05:00
luigi1111
081d49c59f Merge pull request #6338
80d5320 Hash domain separation (SarangNoether)
2020-04-04 12:44:45 -05:00
luigi1111
292e2d8f28 Merge pull request #6335
0078ce7 wipeable_string: split - treat CR, LF and Tabs as separators (xiphon)
2020-04-04 12:42:50 -05:00
luigi1111
6011064693 Merge pull request #6334
cc18926 wallet2_api: wallet recovery - seed offset passphrase support (xiphon)
2020-04-04 12:41:32 -05:00
luigi1111
0bb7191fd6 Merge pull request #6328
9bde70e core: mention time being off in hash rate changes message (moneromooo-monero)
2020-04-04 12:40:18 -05:00
luigi1111
85efaeb7bf Merge pull request #6322
29b7cd1 device_ledger: include status code name in error message (xiphon)
2020-04-04 12:39:21 -05:00
luigi1111
ab802b4b80 Merge pull request #6321
1a6e7bd wallet2: mention --daemon-ssl-allow-any-cert in --proxy error msg (xiphon)
2020-04-04 12:37:26 -05:00
luigi1111
0bd2c14bbb Merge pull request #6309
e69acff functional_tests: update cookie at 10 seconds interval (moneromooo-monero)
f5a11f0 functional_tests: speed up signature generation (moneromooo-monero)
2020-04-04 12:35:02 -05:00
luigi1111
4398facb2e Merge pull request #6286
6d6af70 cryptonote_basic: drop unused verification_context::m_not_rct field (xiphon)
2020-04-04 12:33:32 -05:00
luigi1111
8f59b0ed14 Merge pull request #6269
21fe6a2 p2p: fix frequent weak_ptr exception on connection (moneromooo-monero)
2020-04-04 12:32:05 -05:00
Lee Clagett
da99157462 Use byte_slice for sending zmq messages - removes data copy within zmq 2020-04-03 01:56:17 +00:00
xiphon
09abca76ae wallet_api: checkUpdate - optional version and buildtag params 2020-04-02 00:31:43 +00:00
Sumo Gr
14e803565f update openssl 1.0.2r link 2020-04-01 22:34:38 +00:00
Sarang Noether
80d5320fff Hash domain separation 2020-04-01 08:31:00 -04:00
selsta
9c95437167 workflows: retry on apt failure
Co-authored-by: xiphon <xiphon@protonmail.com>
2020-04-01 02:32:50 +02:00
xiphon
6d6af701ec cryptonote_basic: drop unused verification_context::m_not_rct field 2020-03-31 21:58:25 +00:00
moneromooo-monero
21fe6a289b p2p: fix frequent weak_ptr exception on connection
When a handshake fails, it can fail due to timeout or destroyed
connection, in which case the connection will be, or already is,
closed, and we don't want to do it twice.
Additionally, when closing a connection directly from the top
level code, ensure the connection is gone from the m_connects
list so it won't be used again.

AFAICT this is now clean in netstat, /proc/PID/fd and print_cn.

This fixes a noisy (but harmless) exception.
2020-03-31 20:29:41 +00:00
luigi1111
6c7d928f19 Merge pull request #6336
760ecf2 console_handler: do not let exception past the dor (moneromooo-monero)
09c8111 threadpool: lock mutex in create (moneromooo-monero)
e377977 tx_pool: catch theoretical error in get_block_reward (moneromooo-monero)
2020-03-31 15:14:12 -05:00
luigi1111
94f44d4ee3 Merge pull request #6325
3627e53 rpc: fix print_pool_sh not finding local txes (moneromooo-monero)
2020-03-31 15:13:51 -05:00
luigi1111
7165f14545 Merge pull request #6318
ad806dc gpg_keys: add selsta key (selsta)
2020-03-31 15:13:46 -05:00
luigi1111
328e9db8c3 Merge pull request #6312
52d2ccd Translations from Weblate + updated language files (Monero-Weblate)
2020-03-31 15:13:40 -05:00
luigi1111
48b244dcd4 Merge pull request #6311
5002a03 Explicitly define copy assignment operator (omartijn)
2020-03-31 15:13:35 -05:00
luigi1111
f9de65b546 Merge pull request #6304
2e9d1e6 wallet2: fix store-tx-info loading (moneromooo-monero)
2020-03-31 15:13:19 -05:00
luigi1111
d0065f3063 Merge pull request #6302
dab604e wallet2_api: implement estimateTransactionFee (xiphon)
2020-03-31 15:12:48 -05:00
luigi1111
8a829e2cc4 Merge pull request #6301
9989cb0 simplewallet: warn about correlations if print-ring-members is not set (moneromooo-monero)
2020-03-31 13:37:19 -05:00
luigi1111
0253f86fde Merge pull request #6298
fe92fa1 [randomx] Add missing randomx_vm_set_cache() (cohcho)
2020-03-31 13:36:21 -05:00
luigi1111
ccc3726d86 Merge pull request #6260
320bc84 rpc: add --rpc-payment-allow-free-loopback (moneromooo-monero)
2020-03-31 13:35:16 -05:00
luigi1111
096e2135dd Merge pull request #6214
054b4c7 protocol: request txpool contents when synced (moneromooo-monero)
2020-03-31 13:32:55 -05:00
Lee Clagett
571546067f Always reject duplicate key-images from second txid 2020-03-30 17:52:42 +00:00
Lee Clagett
babf25d2ec Allow unrestricted rpc calls to get full txpool info 2020-03-30 17:52:42 +00:00
Lee Clagett
f9441c5759 Fixed string_ref usage bug in epee::from_hex::vector 2020-03-30 16:53:34 +00:00
moneromooo-monero
5ef7138d86 daemon: fix print_net_stats RPC calls 2020-03-29 13:45:58 +00:00
luigi1111
1df79ae3aa Merge pull request #6407
0c29e17 Fix network unit tests after epee changes (vtnerd)
2020-03-28 14:10:41 -05:00
Lee Clagett
0c29e17581 Fix network unit tests after epee changes 2020-03-28 13:30:22 -04:00
moneromooo-monero
9989cb087e simplewallet: warn about correlations if print-ring-members is not set
The warning about spending more than one output with similar creation
time was skipped if print-ring-members was not set, and it defaults to
false, which means most people probably aren't getting this warning if
they spend correlated outputs.

Reported by SeventhAlpaca.
2020-03-28 11:46:06 +00:00
moneromooo-monero
8d230473ef p2p: add another seed node
Node from syksy, administered by mooo
2020-03-27 22:51:44 +00:00
Alexander Blair
72262b348a Merge pull request #6299
9c1f970b wallet2: remember daemon address overrides when loading a new wallet (moneromooo-monero)
2020-03-27 12:33:15 -07:00
Alexander Blair
5780594202 Merge pull request #6296
50e59cfa wallet2: reject zero keys in json input (moneromooo-monero)
2020-03-27 12:31:59 -07:00
Alexander Blair
3ed5e7ce9f Merge pull request #6295
bcae95a2 p2p: do not add recently failed addresses to the peerlist (moneromooo-monero)
2020-03-27 12:30:06 -07:00
Alexander Blair
e1ee168e39 Merge pull request #6290
019c1dc0 gitian-build.py: Fixing check for docker command. (Jonathan Cross)
2020-03-27 12:29:18 -07:00
Alexander Blair
8cb005b39c Merge pull request #6289
ffe7165e wallet: reroll fake outs selection on local tx_sanity_check failure (xiphon)
2020-03-27 12:28:29 -07:00
Alexander Blair
5ba6eef272 Merge pull request #6288
0349347e ringdb: use a different iv for key and data in rings table (moneromooo-monero)
7b882087 simplewallet: reword mixin in user message in terms of ring size (moneromooo-monero)
f507a43a wallet2: do not remove known rings when a tx fails (moneromooo-monero)
2020-03-27 12:23:59 -07:00
Alexander Blair
7d4a93fab3 Merge pull request #6285
d0641b42 net: fix incorrect less operator for top/i2p addresses (Aaron Hook)
2020-03-27 12:23:00 -07:00
Alexander Blair
aa982a51da Merge pull request #6284
02224e71 Fix check_fee() discrepancy. (UkoeHB)
2020-03-27 12:21:26 -07:00
Alexander Blair
e160e0b517 Merge pull request #6283
a84131ce p2p: fix off by one adding fallback peers (moneromooo-monero)
2020-03-27 12:19:55 -07:00
Alexander Blair
a762084b15 Merge pull request #6282
66472074 Daemon: Guard against reporting "synchronized" too early (rbrunner7)
2020-03-27 12:19:07 -07:00
Alexander Blair
a5acebfb6f Merge pull request #6281
6772ce70 10 block time is for incoming outputs, not transactions (rating89us)
2020-03-27 12:18:21 -07:00
Alexander Blair
c038cc8b79 Merge pull request #6280
b818522d p2p: fix spurious warning when we're connected to at last one seed (moneromooo-monero)
2020-03-27 12:17:54 -07:00
Alexander Blair
3baa68bbab Merge pull request #6279
36bdf402 p2p: fix adding wrong indices to the filtered peer list (moneromooo-monero)
2020-03-27 12:17:07 -07:00
Alexander Blair
a22cf5de1b Merge pull request #6275
aa93e388 p2p: remove old debug commands (Aaron Hook)
2020-03-27 12:16:30 -07:00
Alexander Blair
338824add3 Merge pull request #6227
f8d76f39 core: move the LockedTXN class out of txpool so it may be reused (moneromooo-monero)
2020-03-27 12:15:37 -07:00
Lee Clagett
02d887c2e5 Adding Dandelion++ support to public networks:
- New flag in NOTIFY_NEW_TRANSACTION to indicate stem mode
  - Stem loops detected in tx_pool.cpp
  - Embargo timeout for a blackhole attack during stem phase
2020-03-26 15:01:30 +00:00
moneromooo-monero
f5a11f05fe functional_tests: speed up signature generation
Executing a new binary for each signature can get really slow
2020-03-26 11:33:58 +00:00
moneromooo-monero
e69acffdc8 functional_tests: update cookie at 10 seconds interval
Otherwise the daemon will start rejecting
2020-03-26 11:33:55 +00:00
moneromooo-monero
054b4c7f41 protocol: request txpool contents when synced
A newly synced Alice sends a (typically quite small) list of
txids in the local tpxool to a random peer Bob, who then uses
the existing tx relay system to send Alice any tx in his txpool
which is not in the list Alice sent
2020-03-22 16:03:31 +00:00
rbrunner7
387fd668d1 Daemon: Print estimates for time until fully synced 2020-03-21 07:32:55 +01:00
Aaron Hook
aa93e38862 p2p: remove old debug commands 2020-03-20 22:09:44 -07:00
Sumo Gr
8688b467ce depends: update qt 5.7.1 download link
5.7.1 was removed from official qt.io archive, this is one of the few mirrors remaining that keep a copy.
I think it would be better if @TheCharlatan updated to a newer version soon than merging this PR
2020-03-20 21:18:49 +02:00
xiphon
323a9e3a8d depends: libsodium disable getrandom()/getentropy() (glibc < 2.25) 2020-03-20 17:42:51 +00:00
moneromooo-monero
bcae95a22e p2p: do not add recently failed addresses to the peerlist 2020-03-20 15:45:26 +00:00
Lee Clagett
ad13a4b2ac Fixing static_asserts in ZMQ JSON 2020-03-19 19:49:51 -04:00
luigi1111
d1cf16364f Merge pull request #6388
c075aa7 workaround for GetObject windows.h macro and rapidjson conflict (xiphon)
2020-03-15 10:50:36 -04:00
Lee Clagett
5de2295f3c Correct key image check in tx_pool 2020-03-14 19:17:15 +00:00
xiphon
c075aa7a6c workaround for GetObject windows.h macro and rapidjson conflict 2020-03-14 00:46:47 +00:00
xiphon
0dbdba876e epee: avoid spamming 'Generating SSL certificate' in the logs 2020-03-13 22:48:04 +00:00
luigi1111
f52e0f40c6 Merge pull request #6383
a26cbce easylogging++: fix 'ELPP_OS_EMSCRIPTEN is not defined' warning (xiphon)
2020-03-13 18:12:19 -04:00
selsta
68ffc1ca19 README: clean up TOC 2020-03-13 18:29:19 +01:00
moneromooo-monero
f8d76f395b core: move the LockedTXN class out of txpool so it may be reused
for example, in the RPC server
2020-03-12 11:30:05 +00:00
moneromooo-monero
320bc845b3 rpc: add --rpc-payment-allow-free-loopback
This allows RPC coming from the loopback interface to not have
to pay for service. This makes it possible to run an externally
accessible RPC server for payment while also having a local RPC
server that can be run unrestricted and payment free.
2020-03-12 11:27:34 +00:00
Alexander Blair
820ab9fdea Merge pull request #6273
0f78b06e Various improvements to the ZMQ JSON-RPC handling: (Lee Clagett)
2020-03-12 01:13:49 -07:00
Alexander Blair
d500bbe68f Merge pull request #6268
a6c24412 wallet: fix exceptions getting the hash of a pruned tx (moneromooo-monero)
2020-03-12 01:02:31 -07:00
Alexander Blair
179965c974 Merge pull request #6263
c11e64fc Gitian: Change lxc ip link (TheCharlatan)
2020-03-12 01:01:55 -07:00
Alexander Blair
2eee9bcdf8 Merge pull request #6251
0eac0c43 depends: set several missing build tags (moneromooo-monero)
2020-03-12 00:57:22 -07:00
Alexander Blair
857abc368c Merge pull request #6244
352bd132 abstract_tcp_server2: guard against negative timeouts (moneromooo-monero)
2020-03-12 00:56:29 -07:00
Alexander Blair
092a57df99 Merge pull request #6243
4771a7ae p2p: remove obsolete local time in handshake (moneromooo-monero)
2fbbc4a2 p2p: avoid sending the same peer list over and over (moneromooo-monero)
3004835b epee: remove backward compatible endian specific address serialization (moneromooo-monero)
39a343d7 p2p: remove backward compatible peer list (moneromooo-monero)
60631802 p2p: simplify last_seen serialization now we have optional stores (moneromooo-monero)
9467b2e4 cryptonote_protocol: omit top 64 bits of difficulty when 0 (moneromooo-monero)
b595583f serialization: do not write optional fields with default value (moneromooo-monero)
5f98b46d p2p: remove obsolete local time from TIMED_SYNC (moneromooo-monero)
2020-03-12 00:32:46 -07:00
moneromooo-monero
ec01077720 db_lmdb: fix race crash using a stale cursor
If a db resize happened, the txpool meta cursor might be stale,
and was not being renewed when necessary.
It would cause this SEGSEGV:

in mdb_cursor_set ()
in mdb_cursor_get ()
in cryptonote::BlockchainLMDB::get_txpool_tx_blob(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const ()
in cryptonote::tx_memory_pool::get_transaction(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const ()
in cryptonote::t_cryptonote_protocol_handler<cryptonote::core>::handle_notify_new_fluffy_block(int, epee::misc_utils::struct_init<cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t>&, cryptonote::cryptonote_connection_context&) ()
2020-03-12 00:57:32 +00:00
xiphon
a26cbcef92 easylogging++: fix 'ELPP_OS_EMSCRIPTEN is not defined' warning 2020-03-11 17:58:37 +00:00
Martijn Otto
6079042cce Use boost::asio::ssl::context::sslv23 for backwards compatibility
All the insecure protocols that this enables are then disabled, so they
cannot be actually used. The end-result is the same.
2020-03-11 09:28:02 +01:00
Martijn Otto
3031debfd6 Bump downloaded boost version to 1.72 2020-03-11 09:16:30 +01:00
Lee Clagett
e719760253 Fix receive order leakage with tx fluffing 2020-03-10 22:30:07 -04:00
Lee Clagett
3387f0e327 Reduce template bloat in hex->bin for ZMQ json 2020-03-09 17:55:55 +00:00
Lee Clagett
5fcc23ae0a Move hex->bin conversion to monero copyright files and with less includes 2020-03-09 05:23:59 +00:00
Lee Clagett
81c5943453 Remove temporary std::string creation in some hex->bin calls 2020-03-09 05:23:59 +00:00
Aaron Hook
7b9017f671 p2p: plug tor to clearnet association vector
During the handshake for an incoming connection, the peer id is checked against the local node's peer id only for the specific zone of the incoming peer, in order to avoid linking public addresses to tor addresses:
5d7ae2d279/src/p2p/net_node.inl (L2343)

However, on handshakes for outgoing connections, all zones are checked:
5d7ae2d279/src/p2p/net_node.inl (L1064)

If an attacker wanted to link a specific tor node to a public node, they could potentially connect to as many public nodes as possible, get themselves added to the peer whitelist, maybe stuff some more attacker-owned addresses into the greylist, then disconnect, and for any future incoming connections, respond with the tor node's id in an attempt to link the public/tor addresses.
2020-03-07 18:12:59 +00:00
moneromooo-monero
9c1f970b82 wallet2: remember daemon address overrides when loading a new wallet 2020-03-07 18:09:31 +00:00
Lee Clagett
ebf3c10fcb Added logging for dropped local txes with no i2p/tor connections 2020-03-07 00:03:17 +00:00
selsta
b40c27cd42 cppzmq: remove leftovers 2020-03-06 02:30:07 +01:00
Lee Clagett
0f78b06e8c Various improvements to the ZMQ JSON-RPC handling:
- Finding handling function in ZMQ JSON-RPC now uses binary search
  - Temporary `std::vector`s in JSON output now use `epee::span` to
    prevent allocations.
  - Binary -> hex in JSON output no longer allocates temporary buffer
  - C++ structs -> JSON skips intermediate DOM creation, and instead
    write directly to an output stream.
2020-03-05 14:20:56 +00:00
xiphon
6e1cb5a4d0 device: Ledger - fix wide char hidapi error string conversion 2020-03-01 11:42:48 +00:00
Alexander Blair
4764d18eeb Merge pull request #6248
21c3d42e p2p: drop the peerlist dump to TRACE (moneromooo-monero)
2020-02-28 20:21:27 -08:00
Alexander Blair
da617ac1b0 Merge pull request #6238
f717d593 wallet2: guard against race with multiple decrypt_keys users (moneromooo-monero)
2020-02-28 20:21:06 -08:00
Alexander Blair
ea6396ea66 Merge pull request #6222
a6a2ad6c simplewallet: set manual refresh mode in rescan_bc (moneromooo-monero)
2020-02-28 19:59:43 -08:00
Alexander Blair
af1be51740 Merge pull request #6209
94853487 easylogging++: add emscripten support (moneromooo-monero)
2020-02-28 19:58:07 -08:00
Alexander Blair
ff8a60b61c Merge pull request #6061
f1091c41 core_tests: remove some useless verbose logs (moneromooo-monero)
2020-02-28 19:57:13 -08:00
Alexander Blair
8c2939a7cb Merge pull request #6058
88b82bef simplewallet: point to "set help" in the lock screen message (moneromooo-monero)
f19c9f23 util: allow newlines in string to be split (moneromooo-monero)
2020-02-28 19:54:37 -08:00
Alexander Blair
f3fddd935f Merge pull request #6259
69336931 rpc: fill miner_tx_hash again (moneromooo-monero)
2020-02-28 19:51:15 -08:00
Alexander Blair
ccf2e4888e Merge pull request #6255
81494e3f depends: empty spaces in PATH variable cause build failure (kozyilmaz)
2020-02-28 19:50:39 -08:00
Alexander Blair
9ea7df3b31 Merge pull request #6242
716012ca rpc: drop the obsolete and wrong "unpruned size" log (moneromooo-monero)
2020-02-28 19:50:02 -08:00
Alexander Blair
5bd496e8ef Merge pull request #6241
ae84ec90 wallet-cli/rpc: allow sweep_all to use outputs in all subaddresses within an account (stoffu)
2020-02-28 19:49:41 -08:00
Alexander Blair
19ce033299 Merge pull request #6236
bc6d8aa3 Corrected message typo (palomato)
2020-02-28 19:49:07 -08:00
Alexander Blair
a6cf4b09e7 Merge pull request #6235
5cbb17b9 wallet2: fix hang in wallet refresh (moneromooo-monero)
2020-02-28 19:48:41 -08:00
Alexander Blair
4371ac4265 Merge pull request #6225
987c3139 print_coinbase_tx_sum now supports 128 bits sums (moneromooo-monero)
2020-02-28 19:48:11 -08:00
Alexander Blair
2deb02f81d Merge pull request #6224
d93e1dff simplewallet: warn on refresh if refresh-from-block-height seems off (moneromooo-monero)
2020-02-28 19:46:33 -08:00
Alexander Blair
6742c4acb7 Merge pull request #6223
c3613031 Silence miner debugmsg spam (Howard Chu)
2020-02-28 19:45:55 -08:00
Alexander Blair
944e8a4542 Merge pull request #6220
a9bdc6e4 Improved performance for epee serialization: (Lee Clagett)
2020-02-28 19:45:31 -08:00
Alexander Blair
afff9e7041 Merge pull request #6219
72ca7e3b Fix time comparison math (Jason Rhinelander)
2020-02-28 19:43:44 -08:00
Alexander Blair
e22655a187 Merge pull request #6215
a2578892 --disable-ban-rpc option to prevent RPC users from banning (naughtyfox)
2020-02-28 19:43:06 -08:00
Alexander Blair
5e492c4cbc Merge pull request #6213
94266eeb simplewallet: fix output age display with duplicate heights (moneromooo-monero)
f1d379d2 simplewallet: fix "outputs in same tx" detector (moneromooo-monero)
2020-02-28 19:36:41 -08:00
Alexander Blair
4da37daf67 Merge pull request #6211
5985c5af rpc: add bad-blocks to flush_cache RPC (moneromooo-monero)
2020-02-28 19:36:16 -08:00
Alexander Blair
8d5e043981 Merge pull request #6205
021cf733 ssl: server-side: allow multiple version of TLS (Bertrand Jacquin)
2020-02-28 19:35:48 -08:00
Alexander Blair
442739a347 Merge pull request #6204
1d78db27 Add travis freebsd (TheCharlatan)
2020-02-28 19:35:01 -08:00
Alexander Blair
8606b1a14a Merge pull request #6203
ef95a76d remove unused variable 'ptx' from on_describe_transfer() (woodser)
2020-02-28 19:34:41 -08:00
Alexander Blair
e7997cd62a Merge pull request #6202
02b80513 unit_tests: remove invalid bulletproofs unit test (moneromooo-monero)
2020-02-28 19:33:21 -08:00
xiphon
42a7a4dd32 daemon: auto public nodes - cache and prioritize most stable nodes 2020-02-28 08:06:43 +00:00
moneromooo-monero
8958b4e7aa blockchain_db: faster fetching of consecutive txes
Useful for wallet refresh or node sync
2020-02-27 15:05:34 +00:00
luigi1111
40b8be9d06 Merge pull request #6355
bcaa865 workflows: fix macOS build (selsta)
2020-02-26 14:17:06 -05:00
luigi1111
a81def4868 Merge pull request #6348
1af7d16 workflows: log test output on failure (xiphon)
2020-02-26 14:16:19 -05:00
luigi1111
26d350f931 Merge pull request #6319
a836f30 workflows: windows j3 -> j2 (selsta)
2020-02-26 14:15:32 -05:00
luigi1111
f0afa7ddac Merge pull request #6315
a3bddcd workflows: add libwallet compile check (selsta)
2020-02-26 14:14:22 -05:00
scoobybejesus
56c4eda53f Provides safer semaphore privilege to jail; notes port/pkg availability
From the FreeBSD architecture handbook (https://www.freebsd.org/doc/en/books/arch-handbook/jail-restrictions.html) as it relates to `allow.sysvipc`, "By default, this sysctl is set to 0. If it were set to 1, it would defeat the whole purpose of having a jail; privileged users from the jail would be able to affect processes outside the jailed environment."  This is undesirable behavior.

Per `man jail`, regarding `allow.sysvipc`, "A process within the jail has access to System V primitives.  This is deprecated in favor of the per-module parameters."

Since FreeBSD 11, the new way to deal with this (the per-module parameters) is with: `sysvshm`, for shared memory, `sysvsem`, for semaphores, and `sysvmsg`, for message queues.  These can be set selectively to either `disable`; `inherit`, for the previous behavior (problematic due to UID collision, apparently); and `new`, for new behavior that avoids the UID collision problem. 

Monero only uses semaphores, therefore we should recommend that jails be run with `sysvsem="new"` in the jail's jail.conf.  Tested on FreeBSD 12.1.

Also, Monero is now able to be downloaded as a package or built from ports as `monero-cli` with a versioned suffix.  It's got `Monero 'Carbon Chamaeleon' (v0.15.0.1-release)` as of right now, and it's been there 2-3 months, meaning it's currently and timely.
2020-02-25 21:12:56 -05:00
selsta
bcaa86519e workflows: fix macOS build 2020-02-25 22:51:50 +01:00
sumogr
6810150d46 daemon: if no banned IPs print something 2020-02-24 20:52:55 +00:00
luigi1111
39e1890276 Merge pull request #6198
5f2a32c daemon: run with -rpc-payment-address and --rpc-restricted-bind-port (moneromooo-monero)
2020-02-19 22:25:44 -05:00
luigi1111
04187e5968 Merge pull request #6197
f812783 simplewallet: fix encrypted payment id note triggering on dummy ones (moneromooo-monero)
2020-02-19 22:24:44 -05:00
luigi1111
2de1137e60 Merge pull request #6194
316ab7b wallet2: better error when restoring a wallet with the wrong keys (moneromooo-monero)
2020-02-19 22:23:46 -05:00
luigi1111
22a0367398 Merge pull request #6190
096a9db Wallet: Distingush amounts for a single subaddress (tmoravec)
2020-02-19 22:22:36 -05:00
luigi1111
9b2ebffb6c Merge pull request #6188
0bae227 update readme to encourage joining #monero-dev (Gingeropolous)
2020-02-19 22:19:49 -05:00
luigi1111
d692030e78 Merge pull request #6065
f498dfc README: add Void Linux package dependencies (kevcrumb)
2020-02-19 22:18:47 -05:00
xiphon
1af7d1608e workflows: log test output on failure 2020-02-20 00:48:13 +00:00
xiphon
fcb06f7a82 cryptonote_core: skip block notify on blockchain switching rollback 2020-02-19 16:19:29 +00:00
xiphon
dbfa4f84ee unit_tests: fix missing test names 2020-02-18 23:56:21 +00:00
Interchained
c61abf87c0 remove empty statements
Cleaning up a little around the code base.
2020-02-17 11:55:15 -05:00
Guillaume Le Vaillant
82da832368 rpc: Add check for too old timestamps in payment signatures. 2020-02-17 15:10:19 +01:00
moneromooo-monero
927fd47934 simplewallet: fix smart mining not starting after first setup
Also avoid rewriting the wallet if the setting is already was we need
2020-02-17 13:16:09 +00:00
xiphon
0078ce7fac wipeable_string: split - treat CR, LF and Tabs as separators 2020-02-12 21:16:07 +00:00
moneromooo-monero
e3779775d7 tx_pool: catch theoretical error in get_block_reward
Coverity 196626
2020-02-12 21:05:28 +00:00
moneromooo-monero
09c8111c53 threadpool: lock mutex in create
In some contrived case, it might theoretically be the case that
destroy is called from another thread, which would modify the
threads array from two threads.

Coverity 208372
2020-02-12 21:05:28 +00:00
moneromooo-monero
760ecf2ac8 console_handler: do not let exception past the dor
Coverity 208373
2020-02-12 21:05:25 +00:00
xiphon
cc18926eba wallet2_api: wallet recovery - seed offset passphrase support 2020-02-11 23:36:50 +00:00
moneromooo-monero
9bde70e567 core: mention time being off in hash rate changes message 2020-02-10 16:56:10 +00:00
moneromooo-monero
3627e53aab rpc: fix print_pool_sh not finding local txes 2020-02-08 12:56:00 +00:00
xiphon
29b7cd1351 device_ledger: include status code name in error message 2020-02-08 01:46:39 +00:00
xiphon
1a6e7bd40f wallet2: mention --daemon-ssl-allow-any-cert in --proxy error msg 2020-02-07 10:02:27 +00:00
Alexander Blair
6b2b1d6368 Merge pull request #6048
c2095fc2 miner: use verification mode for low diff one block nonce searches (moneromooo-monero)
2020-02-07 00:17:24 -08:00
selsta
a836f3055e workflows: windows j3 -> j2 2020-02-06 17:03:29 +01:00
selsta
ad806dc005 gpg_keys: add selsta key 2020-02-06 17:01:23 +01:00
moneromooo-monero
c2095fc27b miner: use verification mode for low diff one block nonce searches
This avoids lengthy init times when testing
2020-02-06 14:27:10 +00:00
Alexander Blair
5e384f21b5 Merge pull request #6184
2d1afceb net_ssl: load default certificates in CA mode on Windows (moneromooo-monero)
2020-02-06 00:35:46 -08:00
Alexander Blair
bd4acbf44c Merge pull request #6183
3813a992 download: catch exceptions checking for size (moneromooo-monero)
2020-02-06 00:34:58 -08:00
Alexander Blair
a62f7dc573 Merge pull request #6182
e896cca8 epee: reorder a couple init list fields to match declaration (moneromooo-monero)
2020-02-06 00:34:15 -08:00
Alexander Blair
af27276452 Merge pull request #6178
7ac7d5d3 updates: fix source code URL on _WIN32 (selsta)
2020-02-06 00:33:49 -08:00
Alexander Blair
e552ba14b2 Merge pull request #6127
67b4a19e simplewallet: noob-friendly help menu (wowario)
2020-02-06 00:33:31 -08:00
Alexander Blair
995f34b538 Merge pull request #6103
4b384003 wallet2: don't try to lock an empty filename (moneromooo-monero)
2020-02-06 00:33:18 -08:00
Alexander Blair
756f06cd83 Merge pull request #6102
b328de6b wallet_rpc_server: add tx weight in transfer commands responses (moneromooo-monero)
2020-02-06 00:32:47 -08:00
Alexander Blair
7e6c8082e7 Merge pull request #6100
4d804443 Fixes a minor formatting error (TheGoose)
2020-02-06 00:32:16 -08:00
Alexander Blair
8136bf37e2 Merge pull request #6096
a633f85d daemon: allow printing N blocks from the end of the chain (moneromooo-monero)
2020-02-06 00:31:50 -08:00
Alexander Blair
b8e5c769c7 Merge pull request #6095
7ba31191 daemon: add +meta print_tx parameter (moneromooo-monero)
2020-02-06 00:31:17 -08:00
Alexander Blair
78d4d5ab79 Merge pull request #6094
236d2a88 blockchain_stats: make it work on pruned blockchains (moneromooo-monero)
2020-02-06 00:30:48 -08:00
Alexander Blair
2532567091 Merge pull request #6078
b9fc2066 Add a --keep-fakechain option to keep fakechain databases (JamesWrigley)
2020-02-06 00:30:15 -08:00
Alexander Blair
cd1610bc37 Merge pull request #6076
22d30866 simplewallet: add missing inactivity-lock-timeout to set help blurb (moneromooo-monero)
9f57f0df simplewallet: do not mention inactivity if a lock was manual (moneromooo-monero)
2020-02-06 00:29:52 -08:00
Alexander Blair
3b224bb99d Merge pull request #6069
d64e5aa7 wallet: allow message sign/verify for subaddresses (moneromooo-monero)
2020-02-06 00:29:32 -08:00
Alexander Blair
34d7ea62f6 Merge pull request #6053
deb350b7 always print peer IDs in the same format (moneromooo-monero)
2020-02-06 00:28:47 -08:00
Alexander Blair
9a08ac98c0 Merge pull request #6050
65301c40 core: point out when we hit the block rate visibility limit (moneromooo-monero)
2020-02-06 00:28:18 -08:00
Alexander Blair
9658f5d7fc Merge pull request #6040
2f8f3a94 rpc: base flush_cache request/response on the new base structs (moneromooo-monero)
2020-02-06 00:26:34 -08:00
Alexander Blair
25c1bd4714 Merge pull request #6035
b90c4bc3 rpc: error out from get_info if the proxied call errors out (moneromooo-monero)
fa16df99 make_test_signature: exit nicely on top level exception (moneromooo-monero)
054b2621 node_rpc_proxy: init some new rpc payment fields in invalidate (moneromooo-monero)
d0faae2a rpc: init a few missing client_info members (moneromooo-monero)
d56a483a rpc: do not propagate exceptions out of a dtor (moneromooo-monero)
3c849188 rpc: always set the update field in update on sucess (moneromooo-monero)
2020-02-06 00:26:13 -08:00
luigi1111
d7aeb5a9f8 Merge pull request #6233
8a27645 blockchain: fix flushing txes from the txpool (moneromooo-monero)
2020-02-04 14:38:35 -05:00
selsta
a3bddcd7f3 workflows: add libwallet compile check 2020-02-02 00:53:29 +01:00
moneromooo-monero
b818522d29 p2p: fix spurious warning when we're connected to at last one seed 2020-01-31 15:11:22 +00:00
moneromooo-monero
4771a7aec1 p2p: remove obsolete local time in handshake
Also removes a potential fingerprinting vector
2020-01-29 14:39:58 +00:00
moneromooo-monero
2fbbc4a2d3 p2p: avoid sending the same peer list over and over
Nodes remember which connections have been sent which peer addresses
and won't send it again. This causes more addresses to be sent as
the connection lifetime grows, since there is no duplication anymore,
which increases the diffusion speed of peer addresses. The whole
white list is now considered for sending, not just the most recent
seen peers. This further hardens against topology discovery, though
it will more readily send peers that have been last seen earlier
than it otherwise would. While this does save a fair amount of net
bandwidth, it makes heavy use of std::set lookups, which does bring
network_address::less up the profile, though not too aggressively.
2020-01-29 14:39:56 +00:00
Weblate
52d2ccde31 Translations from Weblate + updated language files
Found 1148 source text(s) (46 new and 1102 already existing)
    Removed 9 obsolete entries

Spanish

Currently translated at 9.0% (100 of 1111 strings)
Translate-URL: https://translate.getmonero.org/projects/monero/cli-wallet/es/

Italian

Currently translated at 71.9% (799 of 1111 strings)
Translate-URL: https://translate.getmonero.org/projects/monero/cli-wallet/it/

Dutch

Currently translated at 4.5% (50 of 1111 strings)
Translate-URL: https://translate.getmonero.org/projects/monero/cli-wallet/nl/

Dutch

Currently translated at 4.5% (50 of 1111 strings)
Translate-URL: https://translate.getmonero.org/projects/monero/cli-wallet/nl/

Portuguese (Brazil)

Currently translated at 0.3% (3 of 1111 strings)
Translate-URL: https://translate.getmonero.org/projects/monero/cli-wallet/pt_BR/
2020-01-28 15:32:07 +00:00
Martijn Otto
5002a0343f Explicitly define copy assignment operator
The implicit copy assignment operator was deprecated because the class
has an explicit copy constructor. According to the standard:

The generation of the implicitly-defined copy assignment operator is
deprecated (since C++11) if T has a user-declared destructor or
user-declared copy constructor.

Recent versions of gcc (9.1+) and clang (10.0) warn about this.
2020-01-28 14:59:55 +01:00
moneromooo-monero
3004835b51 epee: remove backward compatible endian specific address serialization 2020-01-26 18:37:34 +00:00
moneromooo-monero
39a343d76e p2p: remove backward compatible peer list 2020-01-26 18:37:33 +00:00
moneromooo-monero
606318026e p2p: simplify last_seen serialization now we have optional stores 2020-01-26 18:37:32 +00:00
moneromooo-monero
9467b2e44c cryptonote_protocol: omit top 64 bits of difficulty when 0 2020-01-26 18:37:31 +00:00
moneromooo-monero
b595583f3d serialization: do not write optional fields with default value 2020-01-26 18:37:30 +00:00
moneromooo-monero
5f98b46d58 p2p: remove obsolete local time from TIMED_SYNC 2020-01-26 18:37:26 +00:00
Alexander Blair
8eedc8a390 Merge pull request #6140
08635a08 blockchain: speedup fetching pruned contiguous tx blobs (moneromooo-monero)
2020-01-25 16:55:18 -08:00
Alexander Blair
40f82b35ae Merge pull request #6170
56a4469e network: log traffic and add a simple traffic analysis script (moneromooo-monero)
2020-01-25 16:54:24 -08:00
Alexander Blair
a26e5b3d42 Merge pull request #6158
dd8c6b17 wallet: do not split integrated addresses in address book api (moneromooo-monero)
2020-01-25 16:54:08 -08:00
moneromooo-monero
56a4469ef3 network: log traffic and add a simple traffic analysis script 2020-01-26 00:33:41 +00:00
moneromooo-monero
dd8c6b1703 wallet: do not split integrated addresses in address book api 2020-01-26 00:03:53 +00:00
xiphon
dab604e010 wallet2_api: implement estimateTransactionFee 2020-01-25 05:34:51 +00:00
Alexander Blair
59e7d5686b Merge pull request #6093
2e58eb5c lmdb: Remove meaningless const qualifier on function type (Nathan Dorfman)
2020-01-24 20:24:44 -08:00
Alexander Blair
066c327f73 Merge pull request #6300
6f330865 fix tests bug added in #6110 (Dusan Klinec)
2020-01-24 20:23:24 -08:00
Alexander Blair
ae9583d86e Merge pull request #6267
2aa80b1d build: autodetect MSYS2 install path, support non-standard location (xiphon)
2020-01-24 20:22:23 -08:00
Alexander Blair
dbc791b0b0 Merge pull request #6270
957ae887 workflows: add build and test workflow (selsta)
2020-01-24 20:21:57 -08:00
Alexander Blair
605ad84804 Merge pull request #6287
dbcfae6f README: remove unmaintained build status (selsta)
2020-01-24 20:20:53 -08:00
Alexander Blair
ceff65a21c Merge pull request #6247
cce4ea02 README: fix translation link (moneromooo-monero)
2020-01-24 20:20:29 -08:00
Alexander Blair
e8f94e7f1d Merge pull request #6173
8231c7cd rpc: fix bootstrap RPC payment RPC being made in raw JSON, not JSON RPC (moneromooo-monero)
81c26589 rpc: don't auto fail RPC needing payment in bootstrap mode (moneromooo-monero)
2020-01-24 20:19:41 -08:00
Alexander Blair
93d49c1a54 Merge pull request #6172
d7cf8727 rpc: add received_timestamp for pool txes in gettransactions (moneromooo-monero)
2020-01-24 20:17:39 -08:00
Alexander Blair
5fb03130f4 Merge pull request #6164
dc589ef0 Add TheCharlatan pgp key (TheCharlatan)
2020-01-24 20:15:56 -08:00
Alexander Blair
a7a8eb0279 Merge pull request #6160
bd6a5778 Gitian: Fix sigs generation (TheCharlatan)
2020-01-24 20:15:11 -08:00
Alexander Blair
94a4b9351e Merge pull request #6159
f3e155ea add xiphon's GPG key (xiphon)
2020-01-24 20:14:29 -08:00
Alexander Blair
e51ce477db Merge pull request #6157
402dd207 db_lmdb: guard against non NUL terminated keys (moneromooo-monero)
2020-01-24 20:07:37 -08:00
Alexander Blair
159c78758a Merge pull request #6154
3b419333 wallet: don't issue node rpc proxy requests in '--offline' mode (xiphon)
2020-01-24 20:07:01 -08:00
Alexander Blair
f20a962774 Merge pull request #6153
24adee4a p2p: don't request flags after closing connection (moneromooo-monero)
2020-01-24 20:06:46 -08:00
Alexander Blair
d1b08c00cf Merge pull request #6146
70c9cd3c Change to Tx diffusion (Dandelion++ fluff) instead of flooding (Lee Clagett)
2020-01-24 20:06:34 -08:00
Alexander Blair
5558919e56 Merge pull request #6128
9fe8a76c perf_timer: fix pause/resume macros dereferencing too much (moneromooo-monero)
2020-01-24 20:06:12 -08:00
moneromooo-monero
2e9d1e6e1f wallet2: fix store-tx-info loading
The backward compatibility code was always setting it to 1
in modern wallets since store_tx_keys was not present and thus
assumed to be 1 by default.

Reported by SeventhAlpaca
2020-01-24 16:34:07 +00:00
Dusan Klinec
6f330865e5 fix tests bug added in #6110
- e.g., fixes gen_block_big_major_version test, error: generation failed: what=events not set, cannot compute valid RandomX PoW
- ask for events only if difficulty > 1 (when it really matters)
- throwing an exception changed to logging, so it is easy to spot a problem if tests start to fail.
2020-01-19 17:21:04 +01:00
Aaron Hook
d0641b42fe net: fix incorrect less operator for top/i2p addresses 2020-01-18 19:18:56 -08:00
cohcho
fe92fa1391 [randomx] Add missing randomx_vm_set_cache() 2020-01-17 19:25:26 +00:00
Alexander Blair
51873fec04 Merge pull request #6145
1b2953f0 Add __pycache__ directory to .gitignore (Matt Smith)
2020-01-16 17:52:14 -08:00
Alexander Blair
beb815a81d Merge pull request #6144
0e0351c4 wallet_rpc_server: add count parameter to create_address (Matt Smith)
2020-01-16 17:51:25 -08:00
Alexander Blair
8039fd4cab Merge pull request #6143
6efeefbc epee: set application/json MIME type on json errors (moneromooo-monero)
2020-01-16 17:46:13 -08:00
Alexander Blair
c39ea485a0 Merge pull request #6141
b9b5c473 threadpool: use std::move when taking an element off the queue (moneromooo-monero)
2020-01-16 17:45:44 -08:00
Alexander Blair
252092441b Merge pull request #6139
56dced2d translations: fix "monero_" prefix when taking languages from file (moneromooo-monero)
be3a4326 translations: find lrelease disguised as lrelease-qt5 (moneromooo-monero)
2020-01-16 17:43:53 -08:00
Alexander Blair
2ce5529680 Merge pull request #6134
a7a40e28 Actually concatenate error strings. (Bert Peters)
2020-01-16 17:42:27 -08:00
Alexander Blair
f1ca98a7ef Merge pull request #6133
b2ad757f Replace memset with memwipe. (Bert Peters)
2020-01-16 17:41:35 -08:00
Alexander Blair
e4e70b57ca Merge pull request #6130
6dec0013 simplewallet: fix restore height warning (selsta)
2020-01-16 17:39:03 -08:00
Alexander Blair
fbc15de2cd Merge pull request #6125
584d057f epee: fix console_handlers_binder race, wait for thread to finish (xiphon)
2020-01-16 17:32:15 -08:00
Alexander Blair
c4abfbfbe7 Merge pull request #6124
21d4c216 blockchain: error out if the builtin hashes data size is wrong (moneromooo-monero)
2020-01-16 17:31:35 -08:00
Alexander Blair
fe736070d2 Merge pull request #6120
feef1c6a epee: fix peer ids being truncated on display (moneromooo-monero)
2020-01-16 17:30:17 -08:00
Alexander Blair
c6f4113265 Merge pull request #6119
6f45cfa5 p2p: zero last seen timestamp when inserting a new peer (moneromooo-monero)
2020-01-16 17:29:27 -08:00
Alexander Blair
3acb22b889 Merge pull request #6115
27522aaa core_tests: reset thread pool between tests (moneromooo-monero)
2020-01-16 17:27:15 -08:00
selsta
957ae88795 workflows: add build and test workflow 2020-01-17 02:24:21 +01:00
moneromooo-monero
50e59cfada wallet2: reject zero keys in json input
Because the user might do this for reasons unknown.
Values beyond l-1 will be reduced, so are accepted.

Reported by who-biz.
2020-01-16 19:58:21 +00:00
xiphon
ffe7165ebf wallet: reroll fake outs selection on local tx_sanity_check failure 2020-01-14 22:56:23 +00:00
xiphon
2aa80b1d28 build: autodetect MSYS2 install path, support non-standard location 2020-01-13 10:02:18 +00:00
Alexander Blair
e49a055e89 Merge pull request #6112
7c1d31b0 build: fix IOS, build blockchain_db and rpc, skip wallet_rpc_server (xiphon)
2020-01-11 18:10:44 -08:00
Alexander Blair
50c2fda496 Merge pull request #6110
da6c807f tests: fix HF12 chaingen - construct bc object from events (Dusan Klinec)
2020-01-11 18:08:20 -08:00
Alexander Blair
d024695772 Merge pull request #6105
0de8a0d3 wallet_rpc_server: new estimate_tx_size_and_weight RPC (moneromooo-monero)
2020-01-11 18:04:49 -08:00
Tadeas Moravec
096a9dbdf9 Wallet: Distingush amounts for a single subaddress
Adding a new `amounts` field ot the output of `get_transfers` RPC
method. This field specifies individual payments made to a single
subaddress in a single transaction, e.g., made by this command:

    transfer <addr1> <amount1> <addr1> <amount2>
2020-01-11 11:48:27 +01:00
Jonathan Cross
019c1dc0bb gitian-build.py: Fixing check for docker command. 2020-01-10 19:16:24 +01:00
rbrunner7
664720747f Daemon: Guard against reporting "synchronized" too early
The added condition "hshd.current_height >= target" guards against
reporting "synchronized" too early in the special situation that the
very first peer sending us data is synced to a lower height than
ourselves.
2020-01-10 15:49:49 +01:00
moneromooo-monero
0349347e6d ringdb: use a different iv for key and data in rings table
This is technically a record encrypted in two pieces,
so the iv needs to be different.
Some backward compatibility is added to read data written
by existing code, but new data is written with the new code.
2020-01-09 17:32:21 +00:00
moneromooo-monero
7b88208722 simplewallet: reword mixin in user message in terms of ring size 2020-01-09 17:32:21 +00:00
moneromooo-monero
f507a43a23 wallet2: do not remove known rings when a tx fails
Even if it fails, the ring composition is known to a potential
adversary, and so we should reuse the same ring next time
2020-01-09 17:32:21 +00:00
selsta
dbcfae6ffe README: remove unmaintained build status 2020-01-09 18:23:01 +01:00
UkoeHB
02224e714d Fix check_fee() discrepancy.
M100 = max{300kb, min{100block_median, m_long_term_effective_median_block_weight}}
not
M100 = max{300kb, m_long_term_effective_median_block_weight}

Fix base reward in get_dynamic_base_fee_estimate().

get_dynamic_base_fee_estimate() should match check_fee()

Fee is calculated based on block reward, and the reward penalty takes into account 0.5*max_block_weight (both before and after HF_VERSION_EFFECTIVE_SHORT_TERM_MEDIAN_IN_PENALTY).

Moved median calculation according to best practice of 'keep definitions close to where they are used'.
2020-01-09 09:11:09 -06:00
luigi1111
996fa78196 Merge pull request #6231
8e338e5 depends: update libsodium to 1.0.18 (TheCharlatan)
2020-01-08 18:46:02 -05:00
moneromooo-monero
a84131cea3 p2p: fix off by one adding fallback peers
The code would ignore the first one to be added
2020-01-07 14:40:26 +00:00
Riccardo Spagni
3c01bffd0c Merge pull request #6253
f9b48b91c GPGKey: Add Snipa (Alexander Blair)
2020-01-06 21:36:42 +02:00
TheCharlatan
c11e64fc4c Gitian: Change lxc ip link
The ip link currently listed in the README no longer works on the newest
version of lxc shipped with ubuntu 18.04, this commit corrects this.
2020-01-06 13:18:06 +01:00
rating89us
6772ce7062 10 block time is for incoming outputs, not transactions
10 block lock time is for incoming outputs and not only incoming transactions (outgoing transaction has an incoming change output that is also locked for 10 blocks)
2020-01-05 00:21:57 -03:00
moneromooo-monero
36bdf40288 p2p: fix adding wrong indices to the filtered peer list 2020-01-03 17:56:54 +00:00
luigi1111
907292dfb4 Merge pull request #6232
aa9ba30 add binaryFate's PGP key (binaryFate)
2020-01-03 08:21:36 -05:00
moneromooo-monero
d64e5aa719 wallet: allow message sign/verify for subaddresses 2019-12-31 08:44:36 +00:00
moneromooo-monero
a6c24412e5 wallet: fix exceptions getting the hash of a pruned tx 2019-12-30 15:14:57 +00:00
moneromooo-monero
6933693179 rpc: fill miner_tx_hash again
It was removed to save duplicated generation time, but it can
be copied from another instance instead
2019-12-20 14:16:31 +00:00
kozyilmaz
81494e3ffa depends: empty spaces in PATH variable cause build failure 2019-12-19 14:18:51 +01:00
Alexander Blair
f9b48b91c6 GPGKey: Add Snipa
Adds GPG key for Alexander Blair (Snipa)
2019-12-18 22:06:49 -08:00
moneromooo-monero
0eac0c430a depends: set several missing build tags 2019-12-18 12:23:23 +00:00
moneromooo-monero
21c3d42eb9 p2p: drop the peerlist dump to TRACE
It's spammy
2019-12-17 20:27:04 +00:00
moneromooo-monero
cce4ea02ff README: fix translation link 2019-12-17 19:21:23 +00:00
moneromooo-monero
f717d5936c wallet2: guard against race with multiple decrypt_keys users
If more than one thread wants to make sure of the spend secret key,
then we decrypt on the first caller and reencrypt on the last caller,
otherwise we could use an invalid secret key.
2019-12-17 01:38:29 +00:00
moneromooo-monero
352bd13254 abstract_tcp_server2: guard against negative timeouts 2019-12-16 18:24:52 +00:00
moneromooo-monero
716012ca3a rpc: drop the obsolete and wrong "unpruned size" log
Since we now get pruned data in the first place, the "unpruned" data
size will in fact be the pruned data size, leading to confusion
2019-12-16 14:50:07 +00:00
stoffu
ae84ec90c8 wallet-cli/rpc: allow sweep_all to use outputs in all subaddresses within an account 2019-12-16 21:10:11 +09:00
palomato
bc6d8aa343 Corrected message typo
Message was "peer claims higher version that we think"
Requested change "peer claims higher version than we think"
2019-12-14 13:06:09 -05:00
moneromooo-monero
5cbb17b946 wallet2: fix hang in wallet refresh
If the hashes received would move the current blockchain past the
stop point, the short history would not be updated, since we do
not expect another loop, but the daemon might return earlier hashes,
causing the end index to not be enough to reach the threshold and
this require another loop, which will download the same hashes and
cause an infinite loop.
2019-12-14 16:24:04 +00:00
moneromooo-monero
8a276451b2 blockchain: fix flushing txes from the txpool 2019-12-14 02:13:39 +00:00
binaryFate
aa9ba3064e add binaryFate's PGP key 2019-12-13 21:03:56 +01:00
TheCharlatan
8e338e555c depends: update libsodium to 1.0.18 2019-12-12 23:39:37 +01:00
luigi1111
b4e1dc83d2 Merge pull request #6057
3b8dcc2 wallet2: make keys unlocker reentrant (moneromooo-monero)
2019-12-12 13:49:58 -06:00
luigi1111
9d0d4f1d08 Merge pull request #6056
5a44893 python-rpc: add missing strict_balances parameter for get_accounts (moneromooo-monero)
2019-12-12 13:48:15 -06:00
luigi1111
e5cc6d39a9 Merge pull request #6055
886ed25 blockchain: fix comment wrongly refering to SHA-3 rather than Keccak (moneromooo-monero)
2019-12-12 13:47:04 -06:00
luigi1111
ccde60838b Merge pull request #6054
017f816 daemon: handle printing higher hash rates (moneromooo-monero)
2019-12-12 13:45:50 -06:00
luigi1111
fb64463c4c Merge pull request #6052
c96b7ee tx_pool: fix error message assuming incorrectly (moneromooo-monero)
2019-12-12 13:44:50 -06:00
luigi1111
e629db18f4 Merge pull request #6049
45fd72b Updated paper references (SarangNoether)
277003f Minor prover simplification (SarangNoether)
2019-12-12 13:43:57 -06:00
luigi1111
a6fa7d493e Merge pull request #6041
261abf7 functional_tests: ensure mining stops on error in mining test (moneromooo-monero)
2019-12-12 13:41:05 -06:00
luigi1111
425da2381d Merge pull request #6037
f49a8ca easylogging++: add screen.xterm-256color to the 'allow colour' TERM list (moneromooo-monero)
2019-12-12 13:40:09 -06:00
luigi1111
a61db51aae Merge pull request #6027
9768e96 simplewallet: remove remaining payment id dead code (moneromooo-monero)
2019-12-12 13:38:00 -06:00
luigi1111
dad4cf121e Merge pull request #6018
dce6f05 rpc: Only show version string if it matches expected pattern (ndorf)
3293780 daemon: Use rpc for 'version' command (ndorf)
2019-12-12 13:36:05 -06:00
luigi1111
3531cc5fd2 Merge pull request #5965
5d7ae2d Adding support for hidden (anonymity) txpool (vtnerd)
2019-12-12 13:32:35 -06:00
moneromooo-monero
987c3139dc print_coinbase_tx_sum now supports 128 bits sums
The tail emission will bring the total above 64 bits
2019-12-12 01:56:59 +00:00
Howard Chu
c361303184 Silence miner debugmsg spam
Don't try to allocate the dataset repeatedly if it has already failed.
2019-12-09 15:59:52 +00:00
moneromooo-monero
d93e1dffa9 simplewallet: warn on refresh if refresh-from-block-height seems off 2019-12-09 14:09:39 +00:00
moneromooo-monero
a6a2ad6cac simplewallet: set manual refresh mode in rescan_bc
This ensures we get asked for the password if needed
2019-12-07 13:57:26 +00:00
Jason Rhinelander
72ca7e3b0f Fix time comparison math
Dividing `dt` here by 1e6 converts it to seconds, but that is clearly
wrong since `REQUEST_NEXT_SCHEDULED_SPAN_THRESHOLD_STANDBY` is measured
in microseconds.  As a result, this if statement was effectively never
used.
2019-12-05 21:02:18 -04:00
naughtyfox
a2578892c0 --disable-ban-rpc option to prevent RPC users from banning 2019-12-04 17:45:27 +03:00
Bertrand Jacquin
021cf733c6 ssl: server-side: allow multiple version of TLS
boost::asio::ssl::context is created using specifically TLSv1.2, which
blocks the ability to use superior version of TLS like TLSv1.3.

Filtering is also made specially later in the code to remove unsafe
version for TLS such SSLv2, SSLv3 etc..

This change is removing double filtering to allow TLSv1.2 and above to
be used.

testssl.sh 3.0rc5 now reports the following (please note monerod was
built with USE_EXTRA_EC_CERT):

 $ ./testssl.sh --openssl=/usr/bin/openssl \
     --each-cipher --cipher-per-proto \
     --server-defaults --server-preference \
     --vulnerable --heartbleed --ccs --ticketbleed \
     --robot --renegotiation --compression --breach \
     --poodle --tls-fallback --sweet32 --beast --lucky13 \
     --freak --logjam --drown --pfs --rc4 --full \
     --wide --hints 127.0.0.1:38081

 Using "OpenSSL 1.1.1d  10 Sep 2019" [~80 ciphers]
 on ip-10-97-15-6:/usr/bin/openssl
 (built: "Dec  3 21:14:51 2019", platform: "linux-x86_64")

 Start 2019-12-03 21:51:25        -->> 127.0.0.1:38081 (127.0.0.1) <<--

 rDNS (127.0.0.1):       --
 Service detected:       HTTP

 Testing protocols via sockets except NPN+ALPN

 SSLv2      not offered (OK)
 SSLv3      not offered (OK)
 TLS 1      not offered
 TLS 1.1    not offered
 TLS 1.2    offered (OK)
 TLS 1.3    offered (OK): final
 NPN/SPDY   not offered
 ALPN/HTTP2 not offered

 Testing for server implementation bugs

 No bugs found.

 Testing cipher categories

 NULL ciphers (no encryption)                  not offered (OK)
 Anonymous NULL Ciphers (no authentication)    not offered (OK)
 Export ciphers (w/o ADH+NULL)                 not offered (OK)
 LOW: 64 Bit + DES, RC[2,4] (w/o export)       not offered (OK)
 Triple DES Ciphers / IDEA                     not offered (OK)
 Average: SEED + 128+256 Bit CBC ciphers       not offered
 Strong encryption (AEAD ciphers)              offered (OK)

 Testing robust (perfect) forward secrecy, (P)FS -- omitting Null Authentication/Encryption, 3DES, RC4

 PFS is offered (OK), ciphers follow (client/browser support is important here)

Hexcode  Cipher Suite Name (OpenSSL)       KeyExch.   Encryption  Bits     Cipher Suite Name (IANA/RFC)
-----------------------------------------------------------------------------------------------------------------------------
 x1302   TLS_AES_256_GCM_SHA384            ECDH 253   AESGCM      256      TLS_AES_256_GCM_SHA384
 x1303   TLS_CHACHA20_POLY1305_SHA256      ECDH 253   ChaCha20    256      TLS_CHACHA20_POLY1305_SHA256
 xc030   ECDHE-RSA-AES256-GCM-SHA384       ECDH 253   AESGCM      256      TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
 xc02c   ECDHE-ECDSA-AES256-GCM-SHA384     ECDH 253   AESGCM      256      TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
 xcca9   ECDHE-ECDSA-CHACHA20-POLY1305     ECDH 253   ChaCha20    256      TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
 xcca8   ECDHE-RSA-CHACHA20-POLY1305       ECDH 253   ChaCha20    256      TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
 x1301   TLS_AES_128_GCM_SHA256            ECDH 253   AESGCM      128      TLS_AES_128_GCM_SHA256
 xc02f   ECDHE-RSA-AES128-GCM-SHA256       ECDH 253   AESGCM      128      TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
 xc02b   ECDHE-ECDSA-AES128-GCM-SHA256     ECDH 253   AESGCM      128      TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

 Elliptic curves offered:     prime256v1 secp384r1 secp521r1 X25519 X448

 Testing server preferences

 Has server cipher order?     yes (OK)
 Negotiated protocol          TLSv1.3
 Negotiated cipher            TLS_AES_256_GCM_SHA384, 253 bit ECDH (X25519)
 Cipher order
    TLSv1.2:   ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES128-GCM-SHA256
    TLSv1.3:   TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256

 Testing server defaults (Server Hello)

 TLS extensions (standard)    "renegotiation info/#65281" "EC point formats/#11" "supported versions/#43" "key share/#51" "max fragment length/#1" "extended master secret/#23"
 Session Ticket RFC 5077 hint no -- no lifetime advertised
 SSL Session ID support       yes
 Session Resumption           Tickets no, ID: no
 TLS clock skew               Random values, no fingerprinting possible

  Server Certificate #1 (in response to request w/o SNI)
   Signature Algorithm          SHA256 with RSA
   Server key size              RSA 4096 bits
   Server key usage             --
   Server extended key usage    --
   Serial / Fingerprints        01 / SHA1 132E42981812F5575FA0AE64922B18A81B38C03F
                                SHA256 EBA3CC4AA09DEF26706E64A70DB4BC8D723533BB67EAE12B503A845019FB61DC
   Common Name (CN)             (no CN field in subject)
   subjectAltName (SAN)         missing (NOT ok) -- Browsers are complaining
   Issuer
   Trust (hostname)             certificate does not match supplied URI
   Chain of trust               NOT ok (self signed)
   EV cert (experimental)       no
   "eTLS" (visibility info)     not present
   Certificate Validity (UTC)   181 >= 60 days (2019-12-03 21:51 --> 2020-06-02 21:51)
   # of certificates provided   1
   Certificate Revocation List  --
   OCSP URI                     --
                                NOT ok -- neither CRL nor OCSP URI provided
   OCSP stapling                not offered
   OCSP must staple extension   --
   DNS CAA RR (experimental)    not offered
   Certificate Transparency     --

  Server Certificate #2 (in response to request w/o SNI)
   Signature Algorithm          ECDSA with SHA256
   Server key size              EC 256 bits
   Server key usage             --
   Server extended key usage    --
   Serial / Fingerprints        01 / SHA1 E17B765DD8124525B1407E827B89A31FB167647D
                                SHA256 AFB7F44B1C33831F521357E5AEEB813044CB02532143E92D35650A3FF792A7C3
   Common Name (CN)             (no CN field in subject)
   subjectAltName (SAN)         missing (NOT ok) -- Browsers are complaining
   Issuer
   Trust (hostname)             certificate does not match supplied URI
   Chain of trust               NOT ok (self signed)
   EV cert (experimental)       no
   "eTLS" (visibility info)     not present
   Certificate Validity (UTC)   181 >= 60 days (2019-12-03 21:51 --> 2020-06-02 21:51)
   # of certificates provided   1
   Certificate Revocation List  --
   OCSP URI                     --
                                NOT ok -- neither CRL nor OCSP URI provided
   OCSP stapling                not offered
   OCSP must staple extension   --
   DNS CAA RR (experimental)    not offered
   Certificate Transparency     --

 Testing HTTP header response @ "/"

 HTTP Status Code             404 Not found (Hint: supply a path which doesn't give a "404 Not found")
 HTTP clock skew              Got no HTTP time, maybe try different URL?
 Strict Transport Security    not offered
 Public Key Pinning           --
 Server banner                Epee-based
 Application banner           --
 Cookie(s)                    (none issued at "/") -- maybe better try target URL of 30x
 Security headers             --
 Reverse Proxy banner         --

 Testing vulnerabilities

 Heartbleed (CVE-2014-0160)                not vulnerable (OK), no heartbeat extension
 CCS (CVE-2014-0224)                       not vulnerable (OK)
 Ticketbleed (CVE-2016-9244), experiment.  not vulnerable (OK), no session ticket extension
 ROBOT                                     Server does not support any cipher suites that use RSA key transport
 Secure Renegotiation (CVE-2009-3555)      not vulnerable (OK)
 Secure Client-Initiated Renegotiation     not vulnerable (OK)
 CRIME, TLS (CVE-2012-4929)                not vulnerable (OK)
 BREACH (CVE-2013-3587)                    no HTTP compression (OK)  - only supplied "/" tested
 POODLE, SSL (CVE-2014-3566)               not vulnerable (OK)
 TLS_FALLBACK_SCSV (RFC 7507)              No fallback possible, no protocol below TLS 1.2 offered (OK)
 SWEET32 (CVE-2016-2183, CVE-2016-6329)    not vulnerable (OK)
 FREAK (CVE-2015-0204)                     not vulnerable (OK)
 DROWN (CVE-2016-0800, CVE-2016-0703)      not vulnerable on this host and port (OK)
                                           make sure you don't use this certificate elsewhere with SSLv2 enabled services
                                           https://censys.io/ipv4?q=EBA3CC4AA09DEF26706E64A70DB4BC8D723533BB67EAE12B503A845019FB61DC could help you to find out
 LOGJAM (CVE-2015-4000), experimental      not vulnerable (OK): no DH EXPORT ciphers, no DH key detected with <= TLS 1.2
 BEAST (CVE-2011-3389)                     no SSL3 or TLS1 (OK)
 LUCKY13 (CVE-2013-0169), experimental     not vulnerable (OK)
 RC4 (CVE-2013-2566, CVE-2015-2808)        no RC4 ciphers detected (OK)

 Testing ciphers per protocol via OpenSSL plus sockets against the server, ordered by encryption strength

Hexcode  Cipher Suite Name (OpenSSL)       KeyExch.   Encryption  Bits     Cipher Suite Name (IANA/RFC)
-----------------------------------------------------------------------------------------------------------------------------
SSLv2
SSLv3
TLS 1
TLS 1.1
TLS 1.2
 xc030   ECDHE-RSA-AES256-GCM-SHA384       ECDH 253   AESGCM      256      TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
 xc02c   ECDHE-ECDSA-AES256-GCM-SHA384     ECDH 253   AESGCM      256      TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
 xcca9   ECDHE-ECDSA-CHACHA20-POLY1305     ECDH 253   ChaCha20    256      TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
 xcca8   ECDHE-RSA-CHACHA20-POLY1305       ECDH 253   ChaCha20    256      TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
 xc02f   ECDHE-RSA-AES128-GCM-SHA256       ECDH 253   AESGCM      128      TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
 xc02b   ECDHE-ECDSA-AES128-GCM-SHA256     ECDH 253   AESGCM      128      TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS 1.3
 x1302   TLS_AES_256_GCM_SHA384            ECDH 253   AESGCM      256      TLS_AES_256_GCM_SHA384
 x1303   TLS_CHACHA20_POLY1305_SHA256      ECDH 253   ChaCha20    256      TLS_CHACHA20_POLY1305_SHA256
 x1301   TLS_AES_128_GCM_SHA256            ECDH 253   AESGCM      128      TLS_AES_128_GCM_SHA256

 Running client simulations (HTTP) via sockets

 Browser                      Protocol  Cipher Suite Name (OpenSSL)       Forward Secrecy
------------------------------------------------------------------------------------------------
 Android 4.2.2                No connection
 Android 4.4.2                TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Android 5.0.0                TLSv1.2   ECDHE-RSA-AES128-GCM-SHA256       256 bit ECDH (P-256)
 Android 6.0                  TLSv1.2   ECDHE-RSA-AES128-GCM-SHA256       256 bit ECDH (P-256)
 Android 7.0                  TLSv1.2   ECDHE-RSA-CHACHA20-POLY1305       253 bit ECDH (X25519)
 Android 8.1 (native)         No connection
 Android 9.0 (native)         TLSv1.3   TLS_AES_256_GCM_SHA384            253 bit ECDH (X25519)
 Chrome 65 Win 7              TLSv1.2   ECDHE-RSA-CHACHA20-POLY1305       253 bit ECDH (X25519)
 Chrome 74 (Win 10)           No connection
 Firefox 62 Win 7             TLSv1.2   ECDHE-RSA-CHACHA20-POLY1305       253 bit ECDH (X25519)
 Firefox 66 (Win 8.1/10)      TLSv1.3   TLS_AES_256_GCM_SHA384            253 bit ECDH (X25519)
 IE 6 XP                      No connection
 IE 7 Vista                   No connection
 IE 8 Win 7                   No connection
 IE 8 XP                      No connection
 IE 11 Win 7                  No connection
 IE 11 Win 8.1                No connection
 IE 11 Win Phone 8.1          No connection
 IE 11 Win 10                 TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Edge 15 Win 10               TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       253 bit ECDH (X25519)
 Edge 17 (Win 10)             TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       253 bit ECDH (X25519)
 Opera 60 (Win 10)            No connection
 Safari 9 iOS 9               TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Safari 9 OS X 10.11          TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Safari 10 OS X 10.12         TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Apple ATS 9 iOS 9            TLSv1.2   ECDHE-RSA-AES256-GCM-SHA384       256 bit ECDH (P-256)
 Tor 17.0.9 Win 7             No connection
 Java 6u45                    No connection
 Java 7u25                    No connection
 Java 8u161                   TLSv1.2   ECDHE-ECDSA-AES256-GCM-SHA384     256 bit ECDH (P-256)
 Java 9.0.4                   TLSv1.2   ECDHE-ECDSA-AES256-GCM-SHA384     256 bit ECDH (P-256)
 OpenSSL 1.0.1l               TLSv1.2   ECDHE-ECDSA-AES256-GCM-SHA384     256 bit ECDH (P-256)
 OpenSSL 1.0.2e               TLSv1.2   ECDHE-ECDSA-AES256-GCM-SHA384     256 bit ECDH (P-256)
 OpenSSL 1.1.0j (Debian)      TLSv1.2   ECDHE-RSA-CHACHA20-POLY1305       253 bit ECDH (X25519)
 OpenSSL 1.1.1b (Debian)      TLSv1.3   TLS_AES_256_GCM_SHA384            253 bit ECDH (X25519)
 Thunderbird (60.6)           TLSv1.3   TLS_AES_256_GCM_SHA384            253 bit ECDH (X25519)
2019-12-03 22:02:16 +00:00
moneromooo-monero
94266eeb89 simplewallet: fix output age display with duplicate heights
The highlight check was based on height, so would highlight
any output at that height, resulting in several matches if
a fake out was picked at the same height as the real spend
2019-12-03 18:50:28 +00:00
moneromooo-monero
f1d379d27d simplewallet: fix "outputs in same tx" detector
It was comparing source txids, but txids were empty,
so all checks triggered
2019-12-03 18:50:22 +00:00
moneromooo-monero
5985c5afe8 rpc: add bad-blocks to flush_cache RPC
Flushes m_invalid_blocks in Blockchain.
2019-12-02 18:53:30 +00:00
moneromooo-monero
948534877e easylogging++: add emscripten support
This is upstream, but seems to have got lost in conflicts
when merging support for BSDs or android.
2019-12-02 15:09:21 +00:00
TheCharlatan
1d78db2709 Add travis freebsd 2019-12-02 01:04:40 +01:00
woodser
ef95a76d0d remove unused variable 'ptx' from on_describe_transfer() 2019-12-01 13:07:26 -05:00
moneromooo-monero
02b8051339 unit_tests: remove invalid bulletproofs unit test
It was intended to check a case which is actually valid (0 gamma),
but was actually duplicating the bad amount test.

Reported by WhatDo_ on IRC.
2019-12-01 15:40:59 +00:00
moneromooo-monero
5f2a32c15a daemon: run with -rpc-payment-address and --rpc-restricted-bind-port 2019-11-29 20:07:01 +00:00
moneromooo-monero
f8127831c7 simplewallet: fix encrypted payment id note triggering on dummy ones 2019-11-29 20:02:46 +00:00
moneromooo-monero
316ab7b56e wallet2: better error when restoring a wallet with the wrong keys 2019-11-28 18:22:29 +00:00
moneromooo-monero
b90c4bc39e rpc: error out from get_info if the proxied call errors out
Coverity 205410
2019-11-27 19:52:39 +00:00
moneromooo-monero
fa16df9996 make_test_signature: exit nicely on top level exception
Coverity 205411
2019-11-27 19:52:38 +00:00
moneromooo-monero
054b2621b1 node_rpc_proxy: init some new rpc payment fields in invalidate
The cache time would take care of these, but it's cleaner that way

Coverity 205412
2019-11-27 19:52:37 +00:00
moneromooo-monero
d0faae2a92 rpc: init a few missing client_info members
Coverity 205414
2019-11-27 19:52:37 +00:00
moneromooo-monero
d56a483abe rpc: do not propagate exceptions out of a dtor
Coverity 205415
2019-11-27 19:52:36 +00:00
moneromooo-monero
3c849188ab rpc: always set the update field in update on sucess
Coverity 205416
2019-11-27 19:52:33 +00:00
moneromooo-monero
2d1afceb0d net_ssl: load default certificates in CA mode on Windows
Because it always does things wonkily doens't it
2019-11-26 19:34:16 +00:00
moneromooo-monero
3813a992e4 download: catch exceptions checking for size
Happens on at least one windows box
2019-11-26 18:42:00 +00:00
Gingeropolous
0bae2277b5 update readme to encourage joining #monero-dev
replaces #6126 because I can't squash things with the github web GUI
2019-11-26 10:13:59 -05:00
moneromooo-monero
8231c7cd04 rpc: fix bootstrap RPC payment RPC being made in raw JSON, not JSON RPC 2019-11-25 19:28:43 +00:00
moneromooo-monero
e896cca86e epee: reorder a couple init list fields to match declaration
This is a bug waiting to happen
2019-11-25 19:27:54 +00:00
luigi1111
411f1b0ee3 Merge pull request #6174
9cb8d92 ANONYMITY_NETWORKS.md : fix unintentional wrapping (jonathancross)
2019-11-25 12:40:05 -06:00
moneromooo-monero
88b82befc7 simplewallet: point to "set help" in the lock screen message 2019-11-25 13:17:21 +00:00
moneromooo-monero
f19c9f2307 util: allow newlines in string to be split 2019-11-25 13:17:18 +00:00
selsta
7ac7d5d32f updates: fix source code URL on _WIN32 2019-11-25 00:37:54 +01:00
Jonathan Cross
9cb8d92202 ANONYMITY_NETWORKS.md : fix unintentional wrapping 2019-11-23 17:06:57 +01:00
moneromooo-monero
81c2658989 rpc: don't auto fail RPC needing payment in bootstrap mode 2019-11-22 18:12:29 +00:00
moneromooo-monero
d7cf872767 rpc: add received_timestamp for pool txes in gettransactions 2019-11-22 15:53:40 +00:00
Matt Smith
0e0351c456 wallet_rpc_server: add count parameter to create_address 2019-11-22 12:00:01 +00:00
TheCharlatan
dc589ef07e Add TheCharlatan pgp key 2019-11-21 01:44:21 +01:00
luigi1111
3e3db92303 Merge pull request #6117
0f7c9f4 Gitian Readme: adding android signing & fix v0.15 checksum. (jonathancross)
2019-11-20 09:23:19 -06:00
TheCharlatan
bd6a577880 Gitian: Fix sigs generation 2019-11-20 13:03:41 +01:00
xiphon
f3e155ea79 add xiphon's GPG key 2019-11-20 00:23:40 +00:00
luigi1111
f971068363 Merge pull request #6155
d8fc8d8 make d2h et al. constant-time (jtgrassie)
2019-11-19 10:00:09 -06:00
moneromooo-monero
402dd2078c db_lmdb: guard against non NUL terminated keys 2019-11-19 11:12:49 +00:00
Jethro Grassie
d8fc8d8868 make d2h et al. constant-time 2019-11-19 04:21:02 -05:00
xiphon
3b41933335 wallet: don't issue node rpc proxy requests in '--offline' mode 2019-11-19 03:26:42 +00:00
moneromooo-monero
24adee4a08 p2p: don't request flags after closing connection 2019-11-19 02:03:39 +00:00
luigi1111
81da5246e4 Merge pull request #6148
47d094c Fix #6147 DB corruption from child process overwrite (hyc)
2019-11-18 13:24:42 -06:00
luigi1111
ac0e6f7ecd Merge pull request #6118
gitian: add FreeBSD support (75c5a04, 607c01a, cca6e5c, 35b5e91, 024a1c7, b14d9ab, 5eea312, 9cbba5a, 2e435df, abeed9a) (hyc)
2019-11-18 13:21:08 -06:00
Lee Clagett
68a6507c3f Fixed bug in ZMQ JSON-RPC method field 2019-11-18 12:59:41 +00:00
Howard Chu
abeed9a767 "Fix" non-determinism in native_cctools build
By omitting the otool binary which is built non-deterministically.
We don't use it anyway.
2019-11-18 09:18:00 +00:00
Howard Chu
47d094c0c4 Fix #6147 DB corruption from child process overwrite
Don't leave stdout/stderr dangling on a fork.
2019-11-17 14:04:22 +00:00
Howard Chu
2e435dfe76 Fixup compiled python in OSX 2019-11-17 13:44:18 +00:00
Howard Chu
9cbba5a8ec Fix unwind library ordering
Sort objects being archived
2019-11-17 13:44:18 +00:00
Howard Chu
5eea312f6d Fixup sodium darwin
get rid of sodium-darwin.mk special case, unify back with sodium.mk
2019-11-17 13:44:18 +00:00
Howard Chu
b14d9abca9 Use standard time for depends caches
streamline, remove obsolete wrappers
2019-11-17 13:44:18 +00:00
Howard Chu
024a1c7ddf Add ARFLAGS
Needed to invoke deterministic mode on some archivers
2019-11-17 13:44:07 +00:00
luigi1111
df9843212a Merge pull request #6135
09f59ec wallet: set non-empty error string on connection failure (xiphon)
2019-11-16 11:00:33 -06:00
luigi1111
97bdaae7d3 Merge pull request #6107
3d649d5 epee: close connection when the peer has done so (moneromooo-monero)
2019-11-16 10:59:32 -06:00
Matt Smith
1b2953f03d Add __pycache__ directory to .gitignore 2019-11-15 23:39:10 +00:00
moneromooo-monero
6efeefbca2 epee: set application/json MIME type on json errors 2019-11-15 19:39:20 +00:00
moneromooo-monero
b9b5c473d1 threadpool: use std::move when taking an element off the queue
It has a std::function, which can have a capture context, and
the function runtime might be small
2019-11-15 13:24:34 +00:00
moneromooo-monero
08635a0875 blockchain: speedup fetching pruned contiguous tx blobs
About twice as fast, very roughly
2019-11-15 13:23:30 +00:00
moneromooo-monero
56dced2d6d translations: fix "monero_" prefix when taking languages from file 2019-11-15 13:21:46 +00:00
moneromooo-monero
be3a432653 translations: find lrelease disguised as lrelease-qt5 2019-11-15 13:21:22 +00:00
xiphon
09f59eccad wallet: set non-empty error string on connection failure 2019-11-14 19:49:57 +00:00
moneromooo-monero
feef1c6aac epee: fix peer ids being truncated on display 2019-11-14 18:27:12 +00:00
Bert Peters
a7a40e285c Actually concatenate error strings. 2019-11-14 10:36:49 +01:00
Howard Chu
35b5e917aa gitian: add FreeBSD 2019-11-14 07:03:04 +00:00
Howard Chu
cca6e5c645 depends: Add FreeBSD support 2019-11-14 07:03:04 +00:00
Howard Chu
607c01aa56 gitian: Parametrize target platforms 2019-11-14 07:03:04 +00:00
selsta
6dec001359 simplewallet: fix restore height warning 2019-11-14 03:00:20 +01:00
Bert Peters
b2ad757f48 Replace memset with memwipe. 2019-11-13 18:00:50 +01:00
moneromooo-monero
9fe8a76c59 perf_timer: fix pause/resume macros dereferencing too much 2019-11-13 12:08:40 +00:00
Dusan Klinec
da6c807f8b tests: fix HF12 chaingen - construct bc object from events 2019-11-13 10:11:29 +01:00
wowario
67b4a19edf simplewallet: noob-friendly help menu 2019-11-13 10:24:10 +03:00
Nathan Dorfman
dce6f055f9 rpc: Only show version string if it matches expected pattern 2019-11-12 18:19:24 -07:00
Nathan Dorfman
3293780992 daemon: Use rpc for "version" command 2019-11-12 17:57:36 -07:00
xiphon
584d057f74 epee: fix console_handlers_binder race, wait for thread to finish 2019-11-12 16:07:59 +00:00
moneromooo-monero
21d4c21619 blockchain: error out if the builtin hashes data size is wrong 2019-11-12 12:43:08 +00:00
luigi1111
fe3f6a3e6b Merge pull request #6097
27457a2 wallet2: fix pool txes not being flushed when mined (moneromooo-monero)
2019-11-11 15:45:26 -06:00
moneromooo-monero
3d649d528a epee: close connection when the peer has done so
This fixes rapid reconnections failing as the peer hasn't yet
worked out the other side is gone, and will reject "duplicate"
connections until a timeout.
2019-11-11 20:05:24 +00:00
moneromooo-monero
6f45cfa5c5 p2p: zero last seen timestamp when inserting a new peer 2019-11-11 12:44:35 +00:00
Howard Chu
75c5a04ca5 gitian: Update to latest gitian-builder 2019-11-11 08:35:53 +00:00
Jonathan Cross
0f7c9f4f31 Gitian Readme: adding android signing & fix v0.15 checksum. 2019-11-11 00:41:59 +01:00
moneromooo-monero
27522aaa12 core_tests: reset thread pool between tests
Avoids a DB error (leading to an assert) where a thread uses
a read txn previously created with an environment that was
since closed and reopened. While this usually works since
BlockchainLMDB renews txns if it detects the environment has
changed, this will not work if objects end up being allocated
at the same address as the previous instance, leading to stale
data usage.

Thanks hyc for the LMDB debugging.
2019-11-10 12:58:49 +00:00
xiphon
7c1d31b0a1 build: fix IOS, build blockchain_db and rpc, skip wallet_rpc_server 2019-11-09 14:21:22 +00:00
moneromooo-monero
0de8a0d37d wallet_rpc_server: new estimate_tx_size_and_weight RPC 2019-11-06 15:18:21 +00:00
moneromooo-monero
4b38400336 wallet2: don't try to lock an empty filename 2019-11-05 15:33:01 +00:00
moneromooo-monero
b328de6b7a wallet_rpc_server: add tx weight in transfer commands responses 2019-11-05 14:25:06 +00:00
TheGoose
4d804443cd Fixes a minor formatting error
Fixes a minor formatting error
2019-11-05 14:11:17 +11:00
moneromooo-monero
27457a2268 wallet2: fix pool txes not being flushed when mined 2019-11-04 19:32:48 +00:00
moneromooo-monero
a633f85da9 daemon: allow printing N blocks from the end of the chain
It's a very common usage (for my anyway) and avoids the need to
get the current height, paste, subtract one, etc
2019-11-04 17:38:14 +00:00
moneromooo-monero
7ba31191f3 daemon: add +meta print_tx parameter
prints size, weight and (if mined) height
2019-11-04 15:57:56 +00:00
moneromooo-monero
236d2a88e2 blockchain_stats: make it work on pruned blockchains
It reports the actual size as pruned, however
2019-11-04 15:10:01 +00:00
Riccardo Spagni
a48ef0a65a Merge pull request #6088
e8c5ab515 gitian: fix out dir location (iDunk5400)
2019-11-04 06:14:05 -08:00
Riccardo Spagni
b20d8a94fc Merge pull request #6091
5b78c27c5 Copy LICENSE to all archives (Howard Chu)
2019-11-04 06:13:55 -08:00
Nathan Dorfman
2e58eb5cdb lmdb: Remove meaningless const qualifier on function type 2019-11-04 02:28:45 -07:00
iDunk5400
e8c5ab5155 gitian: fix out dir location 2019-11-04 10:25:54 +01:00
Lee Clagett
70c9cd3c9c Change to Tx diffusion (Dandelion++ fluff) instead of flooding 2019-11-04 09:23:20 +00:00
Howard Chu
5b78c27c50 Copy LICENSE to all archives 2019-11-04 05:05:38 +00:00
Lee Clagett
a9bdc6e4c4 Improved performance for epee serialization:
- Removed copy of field names in binary deserialization
  - Removed copy of array values in binary deserialization
  - Removed copy of string values in json deserialization
  - Removed unhelpful allocation in json string value parsing
  - Removed copy of blob data on binary and json serialization
2019-11-04 01:46:41 +00:00
Riccardo Spagni
ff94771b47 Merge pull request #6087
2bfd41b29 depends: fix typo in packages (selsta)
2019-11-03 15:13:52 -08:00
selsta
2bfd41b29c depends: fix typo in packages 2019-11-04 00:08:00 +01:00
Riccardo Spagni
06b0441762 Merge pull request #6074
38f691048 simplewallet: plug a timing leak (moneromooo-monero)
dcff02e4c epee: allow a random component in once_a_time timeouts (moneromooo-monero)
e10833024 wallet: reuse cached height when set after refresh (moneromooo-monero)
5956beaa1 wallet2: fix is_synced checking target height, not height (moneromooo-monero)
fd35e2304 wallet: fix another facet of "did I get some monero" information leak (moneromooo-monero)
d5472bd87 wallet2: do not send an unnecessary last getblocks.bin call on refresh (moneromooo-monero)
97ae7bb5c wallet2: do not repeatedly ask for pool txes sent to us (moneromooo-monero)
2019-11-03 14:52:16 -08:00
Riccardo Spagni
f6201081fa Merge pull request #6077
240dbb124 gitian: add --rebuild option (Howard Chu)
643860776 Add Android support (Howard Chu)
2019-11-03 14:51:52 -08:00
Riccardo Spagni
c751388835 Merge pull request #6084
436e4c336 Fix readline build (Howard Chu)
4ad0f0038 Merge pull request #6079 (Riccardo Spagni)
fb9b741bf README update upgrade table (Gingeropolous)
5ae029881 unit_tests: fix use after free (moneromooo-monero)
d31024c2e cryptonote: untangle dependency from miner to blockchain (moneromooo-monero)
0e3b823a1 daemon: always use bootstrap daemon (if set) in '--no-sync' mode (xiphon)
508dcfada RandomX: Update to v1.1.6 (tevador)
78e59f531 Merge pull request #6059 (Riccardo Spagni)
86ac20f64 blockchain: fix unwanted error when probing the pool for a tx (moneromooo-monero)
8ff9e6bc3 wallet: do not warn if the rpc cost was free (moneromooo-monero)
2019-11-04 02:48:02 +04:00
Howard Chu
240dbb1243 gitian: add --rebuild option
Avoids delays when sourceforge is slow to respond; allows rebuilding
when disconnected from networks.
2019-11-03 21:14:45 +00:00
Howard Chu
643860776e Add Android support 2019-11-03 21:14:45 +00:00
Howard Chu
436e4c3363 Fix readline build
Make sure it links to our libtinfo from our ncurses build.
Hardcode some basic terminal descriptions into our libtinfo.
Re-enable $HOME/.terminfo support to allow user customization.
Use unlikely terminfo-dir, to prevent accidentally using
differently-configured system databases.
2019-11-03 19:03:31 +00:00
Lee Clagett
5d7ae2d279 Adding support for hidden (anonymity) txpool 2019-11-02 20:36:03 +00:00
Riccardo Spagni
4ad0f00385 Merge pull request #6079
e4d1674e8 0.15.0.0 release engineering (Riccardo Spagni)
2019-11-02 17:32:39 +02:00
Riccardo Spagni
eaadbbdab0 Merge pull request #6079
e4d1674e8 0.15.0.0 release engineering (Riccardo Spagni)
2019-11-02 17:31:22 +02:00
Riccardo Spagni
0183ab78bc Merge pull request #6060
1554a7768 unit_tests: fix use after free (moneromooo-monero)
2019-11-02 17:31:06 +02:00
Riccardo Spagni
da31077bed Merge pull request #6047
ebc6ce44f cryptonote: untangle dependency from miner to blockchain (moneromooo-monero)
2019-11-02 17:30:09 +02:00
Riccardo Spagni
e41fc4bfc8 Merge pull request #6051
2e2bf8a20 daemon: always use bootstrap daemon (if set) in '--no-sync' mode (xiphon)
2019-11-02 17:29:23 +02:00
Riccardo Spagni
b533864a41 Merge pull request #6063
2efc6acdb RandomX: Update to v1.1.6 (tevador)
2019-11-02 17:28:52 +02:00
Riccardo Spagni
e4d1674e8c 0.15.0.0 release engineering 2019-11-02 17:21:52 +02:00
Riccardo Spagni
b1d649a3ea Merge pull request #6071
fb9b741bf README update upgrade table (Gingeropolous)
2019-11-02 17:17:03 +02:00
Riccardo Spagni
92f0e9e000 Merge pull request #6070
f89ea437d README update upgrade table with details (Gingeropolous)
2019-11-02 17:16:27 +02:00
moneromooo-monero
38f6910481 simplewallet: plug a timing leak
As reported by Tramèr et al, timing of refresh requests can be used
to see whether a password was requested (and thus at least one output
received) since this will induce a delay in subsequent calls.
To avoid this, we schedule calls at a given time instead of sleeping
for a set time (which would make delays additive).
To further avoid a scheduled call being during the time in which a
password is prompted, the actual scheduled time is now randomized.
2019-11-02 11:41:41 +00:00
JamesWrigley
b9fc206660 Add a --keep-fakechain option to keep fakechain databases
This is handy when doing tests that generate a lot of transactions, since that
takes time it's preferable to re-use the database for future runs.
2019-11-01 23:56:08 +01:00
moneromooo-monero
dcff02e4c3 epee: allow a random component in once_a_time timeouts 2019-11-01 20:57:24 +00:00
moneromooo-monero
e108330248 wallet: reuse cached height when set after refresh
Refreshing sets cached height, which is otherwise got by calling
get_info. Since get_info is called upon needing to display a prompt
after a command has finished, it can be used to determine how much
time a given command took to run if the cache timeout lapses while
the command runs. Refreshing caches the height as a side effect, so
get_info will never be called as a result of displaying a prompt
after refreshing (and potentially leaking how much time it took to
process a set of transactions, therefore leaking whether we got
some monero in them).
2019-11-01 18:59:41 +00:00
moneromooo-monero
5956beaa15 wallet2: fix is_synced checking target height, not height
Target height would be appropriate for the daemon, which syncs
off other daemons, but the wallet syncs off the daemon it's
connected to, and its target is the daemon's current height.
2019-11-01 18:59:39 +00:00
moneromooo-monero
fd35e2304a wallet: fix another facet of "did I get some monero" information leak
We get new pool txes before processing any tx, pool or not.
This ensures that if we're asked for a password, this does not
cause a measurable delay in the txpool query after the last
block query.
2019-11-01 18:59:38 +00:00
moneromooo-monero
d5472bd87b wallet2: do not send an unnecessary last getblocks.bin call on refresh
The "everything refreshed" state was detected when a refresh call did
not return any new blocks. This can be detected without that extra
"empty" call by comparing the claimed node height to the height of
the last block retrieved. Doing this avoids that last call, saves
some bandwidth, and makes the common refresh case use only one call
rather than two.

As a side effect, it prevents an information leak reported by
Tramèr et al: if the wallet retrieves a set of blocks which includes
an output sent to the refreshing wallet, the wallet will prompt the
user for the password to decode the amount and calculate the key
image for the new output, and this will delay subsequent calls to
getblocks.bin, allowing a passive adversary to note the delay and
deduce when the wallet receives at least one output.

This can still happen if the wallet downloads more than 1000 blocks,
since this will be split in several calls, but then the most the
adversary can tell is which 1000 block section the user received
some monero (the adversary can estimate the heights of the blocks
by calculating how many "large" transfers are done, which will be
sections of blocks, the last of which will usually be below 1000,
but the size of the data should allow the actual number of blocks
sent to be determined fairly accurately).

This timing trick still be used via the subsequent scan for incoming
txes in the txpool, which will be fixed later.
2019-11-01 18:59:37 +00:00
moneromooo-monero
22d30866ca simplewallet: add missing inactivity-lock-timeout to set help blurb 2019-11-01 15:37:55 +00:00
Riccardo Spagni
d8d5749b46 Merge pull request #6067
5ae029881 unit_tests: fix use after free (moneromooo-monero)
2019-11-01 17:05:13 +02:00
Riccardo Spagni
8cc7d5b6c0 Merge pull request #6066
d31024c2e cryptonote: untangle dependency from miner to blockchain (moneromooo-monero)
2019-11-01 17:03:58 +02:00
Riccardo Spagni
d4b5ba88df Merge pull request #6064
0e3b823a1 daemon: always use bootstrap daemon (if set) in '--no-sync' mode (xiphon)
2019-11-01 17:03:44 +02:00
Riccardo Spagni
646a7a2800 Merge pull request #6062
508dcfada RandomX: Update to v1.1.6 (tevador)
2019-11-01 17:03:22 +02:00
Riccardo Spagni
78e59f531e Merge pull request #6059
45b6b6038 Updating gitian yml files for v0.15 (Jonathan Cross)
2019-11-01 16:59:20 +02:00
Riccardo Spagni
5068793036 Merge pull request #6059
45b6b6038 Updating gitian yml files for v0.15 (Jonathan Cross)
2019-11-01 16:53:11 +02:00
moneromooo-monero
9f57f0df92 simplewallet: do not mention inactivity if a lock was manual 2019-11-01 14:36:57 +00:00
moneromooo-monero
97ae7bb5cb wallet2: do not repeatedly ask for pool txes sent to us
This lets a passive attacker with access to the network link
between node and wallet perform traffic analysis to deduce
when an idle wallet receives a transaction.

Reported by Tramèr et al.
2019-11-01 10:42:01 +00:00
Gingeropolous
fb9b741bf0 README update upgrade table
with details for nov 30th network upgrade
2019-10-31 15:44:55 -04:00
Gingeropolous
f89ea437d0 README update upgrade table with details
of the november 30th fork
2019-10-31 15:43:05 -04:00
Jonathan Cross
45b6b60385 Updating gitian yml files for v0.15 2019-10-31 17:36:47 +01:00
moneromooo-monero
5ae0298818 unit_tests: fix use after free 2019-10-31 12:03:22 +00:00
moneromooo-monero
d31024c2e1 cryptonote: untangle dependency from miner to blockchain
It causes link errors at least on mac
2019-10-31 01:25:07 +00:00
moneromooo-monero
ebc6ce44f4 cryptonote: untangle dependency from miner to blockchain
It causes link errors at least on mac
2019-10-31 01:06:42 +00:00
Kevin Crumb
f498dfc158 README: add Void Linux package dependencies
see also https://github.com/void-linux/void-packages/blob/master/srcpkgs/monero/template
2019-10-30 21:39:29 +00:00
xiphon
0e3b823a15 daemon: always use bootstrap daemon (if set) in '--no-sync' mode 2019-10-30 19:45:23 +00:00
tevador
2efc6acdb2 RandomX: Update to v1.1.6 2019-10-30 20:25:10 +01:00
tevador
508dcfadac RandomX: Update to v1.1.6 2019-10-30 20:23:45 +01:00
moneromooo-monero
f1091c410f core_tests: remove some useless verbose logs 2019-10-30 18:41:31 +00:00
moneromooo-monero
1554a7768b unit_tests: fix use after free 2019-10-30 18:40:20 +00:00
moneromooo-monero
3b8dcc290d wallet2: make keys unlocker reentrant
protects against having your keys mangled
2019-10-29 13:53:57 +00:00
moneromooo-monero
5a44893a71 python-rpc: add missing strict_balances parameter for get_accounts 2019-10-29 11:52:43 +00:00
moneromooo-monero
886ed25055 blockchain: fix comment wrongly refering to SHA-3 rather than Keccak 2019-10-29 11:37:08 +00:00
moneromooo-monero
017f816897 daemon: handle printing higher hash rates 2019-10-29 11:33:15 +00:00
moneromooo-monero
deb350b783 always print peer IDs in the same format 2019-10-29 11:30:20 +00:00
moneromooo-monero
c96b7ee619 tx_pool: fix error message assuming incorrectly 2019-10-29 10:43:59 +00:00
xiphon
2e2bf8a207 daemon: always use bootstrap daemon (if set) in '--no-sync' mode 2019-10-28 21:52:19 +00:00
Sarang Noether
45fd72b0d7 Updated paper references 2019-10-28 12:34:44 -04:00
moneromooo-monero
65301c406e core: point out when we hit the block rate visibility limit 2019-10-28 16:06:15 +00:00
Sarang Noether
277003f145 Minor prover simplification 2019-10-28 09:34:49 -04:00
luigi1111
4c9fd8d86d Merge pull request #6044
eb16755 blockchain: fix unwanted error when probing the pool for a tx (moneromooo-monero)
2019-10-27 16:28:33 -05:00
luigi1111
f9ddda75a2 Merge pull request #6038
e8964c2 wallet: do not warn if the rpc cost was free (moneromooo-monero)
2019-10-27 16:27:31 -05:00
luigi1111
bb04201505 Merge pull request #6045
86ac20f blockchain: fix unwanted error when probing the pool for a tx (moneromooo-monero)
2019-10-27 16:26:25 -05:00
luigi1111
e59639addc Merge pull request #6039
8ff9e6b wallet: do not warn if the rpc cost was free (moneromooo-monero)
2019-10-27 16:25:03 -05:00
moneromooo-monero
86ac20f64e blockchain: fix unwanted error when probing the pool for a tx 2019-10-27 19:23:36 +00:00
moneromooo-monero
eb16755083 blockchain: fix unwanted error when probing the pool for a tx 2019-10-27 19:23:25 +00:00
moneromooo-monero
261abf79e1 functional_tests: ensure mining stops on error in mining test
this prevents messing up any subsequent test too
2019-10-27 16:21:30 +00:00
moneromooo-monero
2f8f3a9432 rpc: base flush_cache request/response on the new base structs 2019-10-27 16:14:28 +00:00
moneromooo-monero
8ff9e6bc32 wallet: do not warn if the rpc cost was free 2019-10-27 11:12:14 +00:00
moneromooo-monero
e8964c26cc wallet: do not warn if the rpc cost was free 2019-10-27 10:59:31 +00:00
moneromooo-monero
f49a8cad23 easylogging++: add screen.xterm-256color to the "allow colour" TERM list 2019-10-26 20:16:19 +00:00
luigi1111
b928ead30e Merge pull request #6036
7bca3e0 CMake build out of source (trasherdk)
2019-10-26 12:23:28 -05:00
TrasherDK
7bca3e069f CMake build out of source 2019-10-26 15:10:23 +02:00
luigi1111
3b0a43a8d4 Merge pull request #6033
da2ffd6 python-rpc: add missing daemon RPC (moneromooo-monero)
2019-10-25 20:51:04 -05:00
luigi1111
ef8b3a15b4 Merge pull request #6017
5734686 rpc: Include tag in get_info version string (ndorf)
2019-10-25 20:48:04 -05:00
luigi1111
bae2d00ec4 Merge pull request #6025
aceb1dc Translations from weblate + resync (Monero-Weblate)
2019-10-25 20:46:38 -05:00
luigi1111
b408416e7e Merge pull request #6034
f7f7513 rpc: fix PRIx64 build error on some systems (moneromooo-monero)
2019-10-25 20:45:27 -05:00
luigi1111
0aec2613f2 Merge pull request #6032
978a61f functional_tests: fix rpc_payment tests with python 3 (moneromooo-monero)
2019-10-25 20:43:27 -05:00
moneromooo-monero
f7f7513ec3 rpc: fix PRIx64 build error on some systems 2019-10-26 00:05:21 +00:00
moneromooo-monero
978a61f34f functional_tests: fix rpc_payment tests with python 3 2019-10-25 23:20:33 +00:00
moneromooo-monero
da2ffd6abe python-rpc: add missing daemon RPC 2019-10-25 23:10:35 +00:00
luigi1111
7caa2b0d3e Merge pull request #6024
296ec7c device: bounds checking in Ledger send_secret/receive_secret (xiphon)
2019-10-25 16:06:37 -05:00
luigi1111
07c6789148 Merge pull request #5958
d25acd7 Add hmac over encrypted value during transaction (clashm)
34f28a7 Add display address (clashm)
235b94e Revert PR #5835 (export view key) (clashm)
32febd2 Fix debug feature (clashm)
2019-10-25 16:03:24 -05:00
luigi1111
0a4920414f Merge pull request #6031
27cb8bc revert changes to translations (moneromooo-monero)
2019-10-25 14:40:28 -05:00
moneromooo-monero
27cb8bc509 revert changes to translations
Those should be updated from the Weblate tool only
2019-10-25 19:32:07 +00:00
luigi1111
86d085e988 Merge pull request #6028
174a6ac tx_pool: fix divide by 0 in log (moneromooo-monero)
2019-10-25 14:29:15 -05:00
luigi1111
f253bf3846 Merge pull request #6007
a4dc575 rpc: add a flush_cache RPC (moneromooo-monero)
2019-10-25 14:20:20 -05:00
luigi1111
9a995f338a Merge pull request #6023
643dcb9 net: link with libzmq (moneromooo-monero)
2019-10-25 13:56:06 -05:00
luigi1111
bae49e9fbd Merge pull request #6022
dd28383 depends: bump cppzmq version to 4.4.1 (anonimal)
157b3fc depends: bump zeromq version to 4.1.7 (anonimal)
2019-10-25 13:54:15 -05:00
luigi1111
68b03abdc5 Merge pull request #6021
65e8a89 Change monerod --proxy to --tx-proxy (vtnerd)
2019-10-25 13:52:19 -05:00
luigi1111
4e2b139e72 Merge pull request #6020
3816ac2 build: fix building on Windows due to _FORTIFY_SOURCE changes in MSYS2 (iDunk5400)
78b076c Windows: enable high-entropy ASLR where available (iDunk5400)
2019-10-25 13:48:25 -05:00
luigi1111
4a67bdbde4 Merge pull request #6019
d60c1b6 changed 'batttery' to 'battery' (jakehemmerle)
2019-10-25 13:45:59 -05:00
luigi1111
711625c467 Merge pull request #6014
93e7426 wallet2: error out when we need a daemon password but have no prompt function (moneromooo-monero)
2019-10-25 13:44:31 -05:00
luigi1111
59439f8113 Merge pull request #6013
635401b wallet2: fix the logged number of detached transfers (moneromooo-monero)
2019-10-25 13:43:00 -05:00
moneromooo-monero
a4dc575ccb rpc: add a flush_cache RPC
This allows flushing internal caches (for now, the bad tx cache,
which will allow debugging a stuck monerod after it has failed to
verify a transaction in a block, since it would otherwise not try
again, making subsequent log changes pointless)
2019-10-25 18:41:54 +00:00
luigi1111
960c215801 Merge pull request #5357
b3a9a4d add a quick early out to get_blocks.bin when up to date (moneromooo-monero)
2899379 daemon, wallet: new pay for RPC use system (moneromooo-monero)
ffa4602 simplewallet: add public_nodes command (moneromooo-monero)
2019-10-25 13:38:21 -05:00
moneromooo-monero
174a6ac9c5 tx_pool: fix divide by 0 in log
Coverity 205394
2019-10-25 16:56:55 +00:00
moneromooo-monero
9768e96d74 simplewallet: remove remaining payment id dead code
pointed out by coverity
2019-10-25 16:53:15 +00:00
Weblate
aceb1dce85 Translations from weblate + resync
Translators:

* Ukrainian

    * Agent LvM
    * TheFuzzStone

* Italian

    * erciccione
    * Luca Ciavatta
    * Alessandro Lotta
    * stefanomarty

* Chinese (Traditional)

    * Lafudoci

* Catalan

    * Assumpta Anglada
    * BennyBeat
    * Ecron
    * Joan Montané

* Russian

    * Agent LvM
    * TheFuzzStone
    * Russian Bear

* Japanese

    * Andrew Onishi
    * Scott Anecito

* French

    * el00ruobuob
    * glv2
    * Viktor

* Czech

    * dskch83

* Chinese (Simplified)

    * jindouyunz
    * TE Scott
    * razorshaman909

* Dutch

    * Jonathan Heirbaut
    * siesero

* German

    * fullmetalScience
    * Christian
    * M5M400
    * Sneaky Squid
    * Paul Rant
    * Tim Hartmann
2019-10-25 15:08:59 +00:00
xiphon
296ec7c9bb device: bounds checking in Ledger send_secret/receive_secret 2019-10-25 13:13:23 +00:00
moneromooo-monero
643dcb9700 net: link with libzmq 2019-10-25 12:06:16 +00:00
moneromooo-monero
ffa46026b5 simplewallet: add public_nodes command
Lists nodes exposing their RPC port for public use
2019-10-25 09:34:41 +00:00
moneromooo-monero
2899379791 daemon, wallet: new pay for RPC use system
Daemons intended for public use can be set up to require payment
in the form of hashes in exchange for RPC service. This enables
public daemons to receive payment for their work over a large
number of calls. This system behaves similarly to a pool, so
payment takes the form of valid blocks every so often, yielding
a large one off payment, rather than constant micropayments.

This system can also be used by third parties as a "paywall"
layer, where users of a service can pay for use by mining Monero
to the service provider's address. An example of this for web
site access is Primo, a Monero mining based website "paywall":
https://github.com/selene-kovri/primo

This has some advantages:
 - incentive to run a node providing RPC services, thereby promoting the availability of third party nodes for those who can't run their own
 - incentive to run your own node instead of using a third party's, thereby promoting decentralization
 - decentralized: payment is done between a client and server, with no third party needed
 - private: since the system is "pay as you go", you don't need to identify yourself to claim a long lived balance
 - no payment occurs on the blockchain, so there is no extra transactional load
 - one may mine with a beefy server, and use those credits from a phone, by reusing the client ID (at the cost of some privacy)
 - no barrier to entry: anyone may run a RPC node, and your expected revenue depends on how much work you do
 - Sybil resistant: if you run 1000 idle RPC nodes, you don't magically get more revenue
 - no large credit balance maintained on servers, so they have no incentive to exit scam
 - you can use any/many node(s), since there's little cost in switching servers
 - market based prices: competition between servers to lower costs
 - incentive for a distributed third party node system: if some public nodes are overused/slow, traffic can move to others
 - increases network security
 - helps counteract mining pools' share of the network hash rate
 - zero incentive for a payer to "double spend" since a reorg does not give any money back to the miner

And some disadvantages:
 - low power clients will have difficulty mining (but one can optionally mine in advance and/or with a faster machine)
 - payment is "random", so a server might go a long time without a block before getting one
 - a public node's overall expected payment may be small

Public nodes are expected to compete to find a suitable level for
cost of service.

The daemon can be set up this way to require payment for RPC services:

  monerod --rpc-payment-address 4xxxxxx \
    --rpc-payment-credits 250 --rpc-payment-difficulty 1000

These values are an example only.

The --rpc-payment-difficulty switch selects how hard each "share" should
be, similar to a mining pool. The higher the difficulty, the fewer
shares a client will find.
The --rpc-payment-credits switch selects how many credits are awarded
for each share a client finds.
Considering both options, clients will be awarded credits/difficulty
credits for every hash they calculate. For example, in the command line
above, 0.25 credits per hash. A client mining at 100 H/s will therefore
get an average of 25 credits per second.
For reference, in the current implementation, a credit is enough to
sync 20 blocks, so a 100 H/s client that's just starting to use Monero
and uses this daemon will be able to sync 500 blocks per second.

The wallet can be set to automatically mine if connected to a daemon
which requires payment for RPC usage. It will try to keep a balance
of 50000 credits, stopping mining when it's at this level, and starting
again as credits are spent. With the example above, a new client will
mine this much credits in about half an hour, and this target is enough
to sync 500000 blocks (currently about a third of the monero blockchain).

There are three new settings in the wallet:

 - credits-target: this is the amount of credits a wallet will try to
reach before stopping mining. The default of 0 means 50000 credits.

 - auto-mine-for-rpc-payment-threshold: this controls the minimum
credit rate which the wallet considers worth mining for. If the
daemon credits less than this ratio, the wallet will consider mining
to be not worth it. In the example above, the rate is 0.25

 - persistent-rpc-client-id: if set, this allows the wallet to reuse
a client id across runs. This means a public node can tell a wallet
that's connecting is the same as one that connected previously, but
allows a wallet to keep their credit balance from one run to the
other. Since the wallet only mines to keep a small credit balance,
this is not normally worth doing. However, someone may want to mine
on a fast server, and use that credit balance on a low power device
such as a phone. If left unset, a new client ID is generated at
each wallet start, for privacy reasons.

To mine and use a credit balance on two different devices, you can
use the --rpc-client-secret-key switch. A wallet's client secret key
can be found using the new rpc_payments command in the wallet.
Note: anyone knowing your RPC client secret key is able to use your
credit balance.

The wallet has a few new commands too:

 - start_mining_for_rpc: start mining to acquire more credits,
regardless of the auto mining settings
 - stop_mining_for_rpc: stop mining to acquire more credits
 - rpc_payments: display information about current credits with
the currently selected daemon

The node has an extra command:

 - rpc_payments: display information about clients and their
balances

The node will forget about any balance for clients which have
been inactive for 6 months. Balances carry over on node restart.
2019-10-25 09:34:38 +00:00
anonimal
157b3fcff4 depends: bump zeromq version to 4.1.7
Resolves https://hackerone.com/reports/652911
2019-10-25 01:22:17 +00:00
Lee Clagett
65e8a89e1c Change monerod --proxy to --tx-proxy 2019-10-24 21:06:31 -04:00
anonimal
dd28383a4b depends: bump cppzmq version to 4.4.1 2019-10-25 00:47:33 +00:00
luigi1111
cc46f05f1f Merge pull request #6002
0136bf7 v12 fork heights (tevador)
2019-10-24 18:57:05 -05:00
Jake Hemmerle
d60c1b6312 changed 'batttery' to 'battery' 2019-10-24 19:55:28 -04:00
luigi1111
be6c5afabb Merge pull request #6016
afcfb3b easylogging++: windows does not need terminal colour support (moneromooo-monero)
2019-10-24 18:41:38 -05:00
luigi1111
2319b9dd9f Merge pull request #6015
56895ee cmake: Fix generation of version.cpp (ndorf)
2019-10-24 18:39:03 -05:00
iDunk5400
78b076c7f2 Windows: enable high-entropy ASLR where available 2019-10-25 01:22:56 +02:00
iDunk5400
3816ac24f0 build: fix building on Windows due to _FORTIFY_SOURCE changes in MSYS2
Also, enable other hardening options that work on Windows with GCC 9.x
2019-10-25 01:19:26 +02:00
Nathan Dorfman
57346864a3 rpc: Include tag in get_info version string 2019-10-24 13:48:35 -06:00
luigi1111
81f6c3745e Merge pull request #5495
28a627c gen_ssl_cert: new tool to generate SSL certs for Monero (moneromooo-monero)
2019-10-24 13:02:39 -05:00
moneromooo-monero
28a627c5ac gen_ssl_cert: new tool to generate SSL certs for Monero 2019-10-24 17:47:52 +00:00
luigi1111
2200767963 Merge pull request #6004
951ceab daemon: print difficulty in decimal, as it used to be (moneromooo-monero)
2019-10-24 12:43:38 -05:00
luigi1111
42d84ad35e Merge pull request #6006
9f3be3b epee: use SO_REUSEADDR on non-Windows targets (xiphon)
2019-10-24 12:41:59 -05:00
luigi1111
87171916ee Merge pull request #5998
0da09ed protocol: fix syncing from peers being too choosy about peers (moneromooo-monero)
2019-10-24 12:38:35 -05:00
moneromooo-monero
951ceab4f6 daemon: print difficulty in decimal, as it used to be
It got switched to hexadecimal when we went to 128 bit values
2019-10-24 17:37:05 +00:00
luigi1111
f6da34c028 Merge pull request #6011
22d1a6c RandomX: update to v1.1.5 (tevador)
2019-10-24 12:09:39 -05:00
moneromooo-monero
afcfb3b32f easylogging++: windows does not need terminal colour support 2019-10-24 16:00:45 +00:00
luigi1111
f9b5af85ea Merge pull request #6001
705edd8 daemon: fix coinbase txes always being seen as pruned (moneromooo-monero)
2019-10-24 10:57:30 -05:00
luigi1111
8926829569 Merge pull request #6000
641c9cf daemon: add miner tx hash in print_block output (moneromooo-monero)
2019-10-24 10:56:20 -05:00
luigi1111
bef8d3e381 Merge pull request #5999
fbf8168 utils: Increase max block size for import/export (ndorf)
2019-10-24 10:53:53 -05:00
luigi1111
5f6a06e74c Merge pull request #5997
37cccb8 db_lmdb: an empty prunable data record means the tx is not pruned (moneromooo-monero)
2019-10-24 10:52:04 -05:00
moneromooo-monero
b3a9a4d99d add a quick early out to get_blocks.bin when up to date 2019-10-24 11:30:54 +00:00
Nathan Dorfman
56895ee07a cmake: Fix generation of version.cpp 2019-10-23 16:43:30 -06:00
moneromooo-monero
93e74269b3 wallet2: error out when we need a daemon password but have no prompt function 2019-10-23 18:36:53 +00:00
moneromooo-monero
635401b077 wallet2: fix the logged number of detached transfers 2019-10-23 18:29:13 +00:00
tevador
22d1a6c16d RandomX: update to v1.1.5 2019-10-23 19:46:57 +02:00
xiphon
9f3be3baed epee: use SO_REUSEADDR on non-Windows targets 2019-10-22 18:40:01 +00:00
luigi1111
4233d88341 Merge pull request #5973
abd3763 cryptonote: fill in tx weight when syncing from pruned blocks (moneromooo-monero)
2019-10-22 10:54:46 -05:00
luigi1111
bb2bcf3521 Merge pull request #5972
9447e72 cryptonote: add function to get weight from a pruned tx (moneromooo-monero)
2019-10-22 10:52:14 -05:00
luigi1111
6b58d6248a Merge pull request #5996
23ba69e epee: fix SSL server handshake, run_one() can block, use poll_one() (xiphon)
2019-10-22 10:26:31 -05:00
luigi1111
2c497bc411 Merge pull request #5989
4f583d5 daemon: fix print_pl synopsis missing recent options (moneromooo-monero)
2019-10-22 10:24:09 -05:00
luigi1111
18f62f89d8 Merge pull request #5986
1080136 abstract_tcp_server2: move 'Trying to connect' from error to debug (moneromooo-monero)
2019-10-22 10:23:04 -05:00
luigi1111
1e9b577f2a Merge pull request #5985
6fdaaba node.inl, add xmrchain.net IP to hardcoded peers (Gingeropolous)
2019-10-22 10:22:02 -05:00
luigi1111
35da1ce307 Merge pull request #5983
32d6376 simplewallet: add --restore-from-seed alias (moneromooo-monero)
2019-10-22 10:20:46 -05:00
luigi1111
8a88d9186a Merge pull request #5982
bba5bae implewallet: don't trigger idle lock right after a foreground refresh (moneromooo-monero)
2019-10-22 10:19:35 -05:00
luigi1111
426d2ac8ee Merge pull request #5981
88c9d90 protocol: initialize block_weight in block_complete_entry ctor (moneromooo-monero)
fe443bb cryptonote: don't leave block_weight uninitialized (moneromooo-monero)
1ba9baf tx_pool: do not divide by 0 (moneromooo-monero)
2019-10-22 10:18:28 -05:00
luigi1111
3fb85857e0 Merge pull request #5980
ea813cf RandomX: update to v1.1.4 (tevador)
2019-10-22 10:16:39 -05:00
luigi1111
99e4c403cb Merge pull request #5977
e85c838 simplewallet: do not print warning for locked coinbase txes (moneromooo-monero)
2019-10-22 10:14:33 -05:00
luigi1111
cf2d4d9a16 Merge pull request #5974
7fcd0b5 blockchain: initialize pow to ff..ff (moneromooo-monero)
2019-10-22 10:13:34 -05:00
luigi1111
3af7d165d3 Merge pull request #5971
3ed302f Change 'Pootle' to 'Weblate' in Readme (erciccione)
2019-10-22 10:10:51 -05:00
luigi1111
8bb3c6a8e6 Merge pull request #5970
ab96181 blockchain: use effective median block weight for penalty from v12 (moneromooo-monero)
2019-10-22 10:09:56 -05:00
luigi1111
84ce43a239 Merge pull request #5966
be82c40 Support median block size > 4 GB (moneromooo-monero)
2019-10-22 10:08:32 -05:00
luigi1111
c81884f088 Merge pull request #5964
fd48461 Print cdifficulty and don't serialize miner tx hash twice (Doy-lee)
2019-10-22 10:07:17 -05:00
luigi1111
6f202844b5 Merge pull request #5919
01f660f blockchain: fill in cumulative block weight for alt blocks (moneromooo-monero)
2019-10-22 10:06:10 -05:00
moneromooo-monero
be82c40703 Support median block size > 4 GB
add a 128/64 division routine so we can use a > 32 bit median block
size in calculations
2019-10-21 10:41:07 +00:00
xiphon
23ba69ec88 epee: fix SSL server handshake, run_one() can block, use poll_one() 2019-10-18 18:32:33 +00:00
tevador
0136bf7448 v12 fork heights 2019-10-18 20:32:25 +02:00
moneromooo-monero
705edd81d9 daemon: fix coinbase txes always being seen as pruned 2019-10-18 12:25:08 +00:00
moneromooo-monero
641c9cf19d daemon: add miner tx hash in print_block output 2019-10-18 12:21:30 +00:00
Nathan Dorfman
fbf81689d4 utils: Increase max block size for import/export 2019-10-17 19:14:41 -06:00
moneromooo-monero
0da09ede86 protocol: fix syncing from peers being too choosy about peers 2019-10-17 17:40:47 +00:00
moneromooo-monero
37cccb8cfb db_lmdb: an empty prunable data record means the tx is not pruned
as opposed to an absent record
2019-10-17 17:39:05 +00:00
luigi1111
441ed9f2fe Merge pull request #5990
515e931 functional_tests: fix transfer test - long payment ids are gone (moneromooo-monero)
2019-10-16 13:54:06 -05:00
luigi1111
6c05723981 Merge pull request #5984
7fdaa82 Fix build on FreeBSD/!x86 (pkubaj)
0f4fddc Add also ifdef __x86_64__ (pkubaj)
2019-10-16 13:53:14 -05:00
luigi1111
461a25e1b5 Merge pull request #5962
ec14abd tx_pool: make spent return-by-reference as intended (stoffu)
2019-10-16 13:51:34 -05:00
luigi1111
824521b7bc Merge pull request #5959
4d22317 wallet2: don't delete file that may not exist (selsta)
2019-10-16 13:45:22 -05:00
luigi1111
017baeeab5 Merge pull request #5956
ec7f2ff p2p: reject invalid rpc_port in peer lists (xiphon)
2019-10-16 13:44:25 -05:00
luigi1111
67043d642d Merge pull request #5954
4ce40ed p2p: reject invalid pruning seeds in peer lists (moneromooo-monero)
2019-10-16 13:42:23 -05:00
luigi1111
40e71742a0 Merge pull request #5952
93d5cf2 wallet2: add ignore-outputs-{above/below} option (stoffu)
2019-10-16 13:40:44 -05:00
luigi1111
75f7959fa9 Merge pull request #5946
16498dc simplewallet.cpp - clean up welcome message (SomaticFanatic)
2019-10-16 13:38:18 -05:00
luigi1111
7ec8d9640e Merge pull request #5911
e48dcb7 levin: armour against some 'should not happen' case (moneromooo-monero)
2019-10-16 13:35:55 -05:00
luigi1111
83ef900fc0 Merge pull request #5988
c65a221 unit_tests: fix build after rename (moneromooo-monero)
2019-10-16 13:33:52 -05:00
moneromooo-monero
7fcd0b55ea blockchain: initialize pow to ff..ff
as a safety to reject if it somehow does not get initialised
2019-10-16 09:00:30 +00:00
moneromooo-monero
515e9316b1 functional_tests: fix transfer test - long payment ids are gone 2019-10-15 20:11:11 +00:00
moneromooo-monero
4f583d564c daemon: fix print_pl synopsis missing recent options 2019-10-15 13:35:52 +00:00
moneromooo-monero
c65a221549 unit_tests: fix build after rename 2019-10-15 13:15:19 +00:00
moneromooo-monero
e48dcb7a01 levin: armour against some "should not happen" case
If adding a response handler after the protocol is released,
they could never be cancelled again, and would end up keeping
a ref that never goes away
2019-10-15 10:30:08 +00:00
luigi1111
fcb4c72bb5 Merge pull request #5943
d4d2b5c p2p+rpc: don't skip p2p or rpc port bind failure by default (xiphon)
2019-10-14 20:05:25 -05:00
luigi1111
8fcdf77d7b Merge pull request #5947
c9cfbf7 epee: tcp server - set SO_LINGER instead of SO_REUSEADDR option (xiphon)
2019-10-14 20:04:02 -05:00
luigi1111
37a72fd6ae Merge pull request #5941
d37d30f blockchain: tweak fee as a function of median values (moneromooo-monero)
2019-10-14 18:11:13 -05:00
luigi1111
dd24d7f7fd Merge pull request #5940
6b4bc0d RPC on_transfer_split error consistent with on_transfer if no tx sent (binaryFate)
2019-10-14 18:09:44 -05:00
luigi1111
4118e4b1e9 Merge pull request #5937
4b654f6 abstract_tcp_server2: log pointer, not contents, where appropriate (moneromooo-monero)
2019-10-14 18:08:47 -05:00
luigi1111
dc48cdc998 Merge pull request #5933
3455efa ban peers sending bad pow outright (moneromooo-monero)
2019-10-14 18:07:54 -05:00
luigi1111
965adff6bc Merge pull request #5834
b295e3c simplewallet: reinstate short payment id nag, only if non default (moneromooo-monero)
455f9e3 wallet2: ignore received unencrypted payment IDs (but warn hard) (moneromooo-monero)
19c0506 wallet: remove long payment ID sending support (moneromooo-monero)
4d0aadc wallet_rpc_server: don't report integrated addresses for 0 payment ID (moneromooo-monero)
2019-10-14 18:06:29 -05:00
moneromooo-monero
10801362f4 abstract_tcp_server2: move "Trying to connect" from error to debug
and fix the message grammar
2019-10-14 14:15:21 +00:00
moneromooo-monero
4d0aadc081 wallet_rpc_server: don't report integrated addresses for 0 payment ID
These are dummy ones
2019-10-14 11:43:48 +00:00
moneromooo-monero
19c0506e14 wallet: remove long payment ID sending support 2019-10-14 11:43:47 +00:00
moneromooo-monero
455f9e3e9f wallet2: ignore received unencrypted payment IDs (but warn hard) 2019-10-14 11:43:46 +00:00
moneromooo-monero
b295e3cff6 simplewallet: reinstate short payment id nag, only if non default 2019-10-14 11:43:42 +00:00
Gingeropolous
6fdaaba935 node.inl, add xmrchain.net IP to hardcoded peers
added for mainnet, testnet, and stagenet. 

server is owner by snipa, both snipa and I have access to it. No idea where its hosted. 

xmrchain.net is a block explorer thats been around a while.
2019-10-13 17:13:57 -04:00
pkubaj
0f4fddc2f8 Add also ifdef __x86_64__ 2019-10-13 19:08:23 +00:00
tevador
ea813cfb1b RandomX: update to v1.1.4
* Faster cache initialization with SSSE3/AVX2
* Automatic detection of CPU capabilities in RandomX
* Fixed a possible out-of-bounds access in superscalar program generator
* Use MONERO_RANDOMX_UMASK to manually disable RandomX flags in monerod
2019-10-13 18:43:27 +02:00
pkubaj
7fdaa8285e Fix build on FreeBSD/!x86
Checking battery status uses x86-only headers and functions. Remove this functionality to get it to build on other architectures.
2019-10-13 16:43:18 +00:00
xiphon
d4d2b5c79a p2p+rpc: don't skip p2p or rpc port bind failure by default 2019-10-13 13:27:46 +00:00
moneromooo-monero
32d6376673 simplewallet: add --restore-from-seed alias
It may be more intuitive for some people
2019-10-11 14:39:38 +00:00
moneromooo-monero
bba5baec37 simplewallet: don't trigger idle lock right after a foreground refresh 2019-10-11 14:30:20 +00:00
moneromooo-monero
ab96181e91 blockchain: use effective median block weight for penalty from v12
It was using the raw block weight median, which was not what was
intended in ArticMine's design
2019-10-11 14:16:09 +00:00
moneromooo-monero
1ba9bafd33 tx_pool: do not divide by 0
In case of a 0 tx weight, we use a placeholder value to insert in the
fee-per-byte set. This is used for pruning and mining, and those txes
are pruned, so will not be too large, nor added to the block template
if mining, so this is safe.

CID 204465
2019-10-11 14:09:31 +00:00
moneromooo-monero
fe443bbdec cryptonote: don't leave block_weight uninitialized
CID 204467
2019-10-11 14:09:31 +00:00
moneromooo-monero
88c9d90ac4 protocol: initialize block_weight in block_complete_entry ctor
CID 204479
2019-10-11 14:09:31 +00:00
moneromooo-monero
9447e7276d cryptonote: add function to get weight from a pruned tx
The weight of the prunable data is deterministic from the
unpruned data, so it can be determined from a pruned tx
2019-10-11 12:08:36 +00:00
luigi1111
d66db18c06 Merge pull request #5978
77afe91 unit_tests: fix build with boost 1.69 (moneromooo-monero)
2019-10-10 20:56:50 -05:00
moneromooo-monero
77afe91db6 unit_tests: fix build with boost 1.69 2019-10-11 01:16:03 +00:00
moneromooo-monero
01f660f60f blockchain: fill in cumulative block weight for alt blocks 2019-10-10 20:26:40 +00:00
luigi1111
aa72c21d84 Merge pull request #5969
080ea73 easylogging++: fix build with glibc (moneromooo-monero)
2019-10-10 14:30:55 -05:00
moneromooo-monero
e85c838154 simplewallet: do not print warning for locked coinbase txes
since they're all locked for a fixed amount
2019-10-10 18:29:30 +00:00
moneromooo-monero
abd376313b cryptonote: fill in tx weight when syncing from pruned blocks 2019-10-10 11:08:02 +00:00
erciccione
3ed302fd1d Change 'Pootle' to 'Weblate' in Readme 2019-10-10 11:44:49 +02:00
moneromooo-monero
080ea734c2 easylogging++: fix build with glibc 2019-10-08 23:49:28 +00:00
luigi1111
bf525793c7 Merge pull request #5915
8330e77 monerod can now sync from pruned blocks (moneromooo-monero)
2019-10-08 15:55:03 -05:00
luigi1111
0e4ab6091c Merge pull request #5960
ae34e1b unit_tests: fix ringdb unit tests (moneromooo-monero)
2019-10-08 14:49:57 -05:00
luigi1111
5920913171 Merge pull request #5948
1c600a4 Fix randomx cache selection for RPCs (hyc)
2675cf4 Update to RandomX v1.1.3, simplify (hyc)
f54301d Fix for miners on reorg (hyc)
2019-10-08 14:48:36 -05:00
luigi1111
da7a3dd17b Merge pull request #5936
24473d7 build: fix MinGW GUI dependencies build (xiphon)
2019-10-08 14:46:09 -05:00
luigi1111
b0840a8e01 Merge pull request #5932
f3b65c6 Request a thread stack size that is large enough for unbound (omartijn)
2019-10-08 14:45:21 -05:00
luigi1111
577b06028c Merge pull request #5927
6d378d9 easylogging++: always omit ANSI codes when colour is not supported (moneromooo-monero)
2019-10-08 14:43:53 -05:00
luigi1111
a74a82c8b2 Merge pull request #5926
74a23e9 protocol: only print sync complete message when out of precompiled hashes (moneromooo-monero)
2019-10-08 14:42:41 -05:00
luigi1111
29075e69ae Merge pulll request #5924
5bcbd97 Disable easylogging crash log on non-glibc libraries (omartijn)
2019-10-08 14:40:53 -05:00
luigi1111
342e7f844f Merge pull request #5921
2a7d915 Fixed i2p/tor tx flooding bug (white noise disabled) (vtnerd)
2019-10-08 14:31:53 -05:00
luigi1111
18da0fa240 Merge pull request #5918
4371791 epee: implement handshake timeout for SSL connections (xiphon)
2019-10-08 14:30:45 -05:00
luigi1111
ca975bcb79 Merge pull request #5917
7d81850 epee: fix network timeouts in blocked_mode_client (xiphon)
2019-10-08 14:28:50 -05:00
Howard Chu
f54301dd75 Fix for miners on reorg
Make sure dataset gets re-init'd if a reorg changes the epoch
2019-10-07 09:50:00 +01:00
Doyle
fd4846134d Print cdifficulty and don't serialize miner tx hash twice 2019-10-07 12:50:05 +11:00
stoffu
ec14abdbe8 tx_pool: make spent return-by-reference as intended 2019-10-06 12:28:30 +09:00
Howard Chu
2675cf4483 Update to RandomX v1.1.3, simplify
We don't need to detect if the cache has changed, just always
call to set it on the VM. The call will be a no-op if the cache
hasn't changed.
2019-10-05 18:51:20 +01:00
moneromooo-monero
ae34e1ba1c unit_tests: fix ringdb unit tests 2019-10-04 21:11:46 +00:00
selsta
4d22317dee wallet2: don't delete file that may not exist 2019-10-04 20:43:40 +02:00
Howard Chu
1c600a492f Fix randomx cache selection for RPCs
Was using the wrong cache slot, and returning invalid PoW hashes to RPC clients
2019-10-03 20:05:17 +01:00
cslashm
32febd277d Fix debug feature 2019-10-03 16:05:40 +02:00
cslashm
235b94eb59 Revert PR #5835 (export view key) 2019-10-03 16:05:40 +02:00
cslashm
34f28a79bc Add display address 2019-10-03 16:05:32 +02:00
cslashm
d25acd7a1d Add hmac over encrypted value during transaction 2019-10-03 16:01:34 +02:00
moneromooo-monero
4ce40edb27 p2p: reject invalid pruning seeds in peer lists 2019-10-02 19:29:05 +00:00
xiphon
c9cfbf7fb3 epee: tcp server - set SO_LINGER instead of SO_REUSEADDR option 2019-10-02 19:08:02 +00:00
xiphon
ec7f2ff9ed p2p: reject invalid rpc_port in peer lists 2019-10-02 19:04:57 +00:00
stoffu
93d5cf2441 wallet2: add ignore-outputs-{above/below} option
https://github.com/aeonix/aeon/pull/131
2019-10-02 13:04:24 +09:00
SomaticFanatic
16498dc8ef simplewallet.cpp - clean up welcome message
Fixed a typo ("and -are- not visible to the world by default"), removed a few redundant commas, and capitalized words inside the URL.
2019-10-01 02:32:32 +00:00
luigi1111
b60cf6a938 Merge pull request #5939
9baf2a7 build: link wallet_merged against blockchain_db and hardforks obj (xiphon)
2019-09-30 18:57:54 -05:00
luigi1111
b833630eb8 Merge pull request #5913
dbc7c44 README: fix TOC link (selsta)
2019-09-30 18:56:55 -05:00
luigi1111
15b9b4e047 Merge pull request #5910
1b91beb abstract_tcp_server2: fix lingering connections (moneromooo-monero)
2019-09-30 18:55:58 -05:00
luigi1111
d6752b9672 Merge pull request #5908
7336864 refresh language files (erciccione)
2019-09-30 18:54:28 -05:00
luigi1111
3f732841f5 Merge pull request #5906
bd9c12e simplewallet: remove erroneously added line under subaddress-lookahead (stoffu)
2019-09-30 18:53:10 -05:00
luigi1111
17f063a50f Merge pull request #5902
b9da023 blockchain: keep block template timestamp not below recent median (moneromooo-monero)
2019-09-30 18:52:11 -05:00
luigi1111
d9cb50870d Merge pull request #5900
6bbc646 Fix bug in mempool get_transaction_stats histogram calculation (tomsmeding)
2019-09-30 18:49:09 -05:00
luigi1111
237d2dbf11 Merge pull request #5896
6185d6d README: Add deps for translations and hardware wallet support (glv2)
2019-09-30 18:47:57 -05:00
luigi1111
40501cc131 Merge pull request #5895
fdc00d0 unit tests: replace global var with lambda returning static local var (stoffu)
2019-09-30 18:46:34 -05:00
luigi1111
e23b9847d0 Merge pull request #5894
c89f7ef wallet2_api: fix load unsigned tx from file error propagation (xiphon)
2019-09-30 18:45:41 -05:00
luigi1111
c6430f9dd0 Merge pull request #5893
Coverity fixes [3a81639, 1bd962d, 2825f07, d099658, d46f701, cd57a10] (anonimal)
2019-09-30 18:43:48 -05:00
luigi1111
33ce4ae1fb Merge pull request #5653
5f8524e Streamline build setup (hyc)
2019-09-30 18:38:34 -05:00
moneromooo-monero
d37d30f79a blockchain: tweak fee as a function of median values
Use the lesser of the short and long terms medians, rather then
the long term median alone

From ArticMine:

I found a bug in the new fee calculation formula with using only the long term median
It actually needs to be the lesser of the long term median and the old (modified short term median)
short term median with the last 10 blocks calculated as empty
Yes the issue occurs if there is a large long term median and, the short term median then falls and tries to then rise again
The fees are could be not high enough
for example LTM and STM rise to say 2000000 bytes
STM falls back to 300000 bytes
Fees are now based on 2000000 bytes until LTM also falls
So the STM is could prevented from rising back up
STM short term median LTM long term median
2019-09-28 22:53:41 +00:00
binaryFate
6b4bc0d389 RPC on_transfer_split error consistent with on_transfer if no tx sent 2019-09-28 19:22:15 +02:00
xiphon
9baf2a7caa build: link wallet_merged against blockchain_db and hardforks obj 2019-09-28 12:35:33 +00:00
moneromooo-monero
4b654f65a3 abstract_tcp_server2: log pointer, not contents, where appropriate 2019-09-27 15:15:32 +00:00
moneromooo-monero
8330e772f1 monerod can now sync from pruned blocks
If the peer (whether pruned or not itself) supports sending pruned blocks
to syncing nodes, the pruned version will be sent along with the hash
of the pruned data and the block weight. The original tx hashes can be
reconstructed from the pruned txes and theur prunable data hash. Those
hashes and the block weights are hashes and checked against the set of
precompiled hashes, ensuring the data we received is the original data.
It is currently not possible to use this system when not using the set
of precompiled hashes, since block weights can not otherwise be checked
for validity.

This is off by default for now, and is enabled by --sync-pruned-blocks
2019-09-27 00:10:37 +00:00
Guillaume Le Vaillant
6185d6d692 README: Add deps for translations and hardware wallet support 2019-09-26 16:37:06 +02:00
xiphon
24473d7584 build: fix MinGW GUI dependencies build 2019-09-26 01:43:00 +00:00
Riccardo Spagni
b8643752c1 Merge pull request #5549
81c2ad6d RandomX integration (Howard Chu)
2019-09-25 17:52:16 -04:00
Howard Chu
81c2ad6d5b RandomX integration
Support RandomX PoW algorithm
2019-09-25 21:29:42 +01:00
Riccardo Spagni
1b23c05299 Merge pull request #5930
fcfa6665 Don't set ARCH_ID if it's already set (Howard Chu)
2019-09-25 15:45:56 -04:00
Howard Chu
fcfa6665a9 Don't set ARCH_ID if it's already set
Usually it's unset, but depends toolchain files set it explicitly
for cross-compiling. Don't override preset values. But make sure
it's set for all x86 / x86_64 builds, not just Linux.

Also make sure -std=c++11 is set for Darwin builds, not all
submodules were getting it consistently before.
2019-09-25 20:10:57 +01:00
Riccardo Spagni
1fbe7ee8e7 Merge pull request #5929
31bf2e25 Revert "easylogging++: ensure it finds boost headers" (moneromooo-monero)
614d6b57 easylogging++: split strings manually (moneromooo-monero)
2019-09-25 14:59:37 -04:00
moneromooo-monero
3455efafa8 ban peers sending bad pow outright
PoW is expensive to verify, so be strict
2019-09-25 16:00:43 +00:00
Martijn Otto
f3b65c66f8 Request a thread stack size that is large enough for unbound
Unbound uses a 64 kb large character array on the stack, which
leads to a stack overflow for some libc implementations. musl
only gives 80 kb in total. This PR changes the stack size for
these threads to 1mb, which solves the segmentation fault.
2019-09-25 16:37:06 +02:00
moneromooo-monero
31bf2e25c5 Revert "easylogging++: ensure it finds boost headers"
This reverts commit 9a95827ea7.
2019-09-24 20:09:33 +00:00
moneromooo-monero
614d6b5714 easylogging++: split strings manually
Avoids cmake skullduggery
2019-09-24 20:09:32 +00:00
luigi1111
faf5805fc0 Merge pull request #5928
9a95827 easylogging++: ensure it finds boost headers (moneromooo-monero)
2019-09-24 13:50:35 -05:00
moneromooo-monero
9a95827ea7 easylogging++: ensure it finds boost headers 2019-09-24 18:22:37 +00:00
Howard Chu
5f8524ef5f Streamline build setup
Use shorter, prefix-unique directory names
  gitian-builder  -> builder
  gitian-sigs     -> sigs
  monero-binaries -> out

Just use builder/inputs/monero, no need for 2nd repo clone
2019-09-24 17:17:04 +01:00
luigi1111
cb6f96b9d1 Merge pull request #5909
8933955 epee: misc_log_ex.h can now be used in C code (moneromooo-monero)
2019-09-24 10:57:55 -05:00
moneromooo-monero
6d378d90fe easylogging++: always omit ANSI codes when colour is not supported 2019-09-24 15:49:55 +00:00
moneromooo-monero
89339551a2 epee: misc_log_ex.h can now be used in C code
use mfatal/merror/mwarning/minfo/mdebug/mtrace
2019-09-24 15:47:31 +00:00
luigi1111
3f6096867d Merge pull request #5916
7b076d5 p2p: fix bans taking port into account (moneromooo-monero)
2019-09-24 10:42:29 -05:00
luigi1111
cb2bb1a9b8 Merge pull request #5907
3699544 cmake: add protolib to zmq dependency libs (stoffu)
2019-09-24 10:40:44 -05:00
luigi1111
5fe38977b5 Merge pull request #5905
Revert a96c1a4 and adc16d2 (moneromooo-monero)
2019-09-24 10:39:28 -05:00
luigi1111
cbec75ec31 Merge pull request #5892
ab2819a depends: attempt to fix readline (iDunk5400)
2019-09-24 10:34:59 -05:00
luigi1111
77b8e8a536 Merge pull request #5891
e09dbc6 depends: fix monero binaries Boost linking errors (iDunk5400)
2019-09-24 10:30:57 -05:00
luigi1111
f15eded8d7 Merge pull request #5886
ae32862 README: fix master branch spelling, it is not Master (moneromooo-monero)
2019-09-24 10:30:00 -05:00
moneromooo-monero
74a23e9a59 protocol: only print sync complete message when out of precompiled hashes
This avoids most premature triggers
2019-09-24 15:29:59 +00:00
luigi1111
353debe119 Merge pull request #5884
7de6671 Add the iwyu target to get information on unused headers (omartijn)
2019-09-24 10:28:52 -05:00
luigi1111
44aa7d5439 Merge pull request #5882
a444f06 blockchain: enforce 10 block age for spending outputs (moneromooo-monero)
2019-09-24 10:27:22 -05:00
luigi1111
dc64fcb8a6 Merge pull request #5881
11fa442 Makefile: add a top level debug target for ASAN (moneromooo-monero)
2019-09-24 10:12:02 -05:00
luigi1111
06bee964a8 Merge pull request #5878
f9b3f6e Removed Berkeley DB and db switching logic (JesusRami)
2019-09-24 10:10:28 -05:00
luigi1111
ee6e849627 Merge pull request #5877
2cd4fd8 Changed the use of boost:value_initialized for C++ list initializer (JesusRami)
4ad191f Removed unused boost/value_init header (whyamiroot)
928f4be Make null hash constants constexpr (whyamiroot)
2019-09-24 10:08:44 -05:00
luigi1111
eadef8d9cd Merge pull request #5875
0c55837 contrib: add a suppressions file for leak sanitizer (moneromooo-monero)
2019-09-24 10:06:32 -05:00
luigi1111
8c41d36a08 Merge pull request #5864
32f725d Properly format multiline logs (moneromooo-monero)
2019-09-24 10:05:21 -05:00
luigi1111
a1736a9429 Merge pull request #5848
functional_tests (moneromooo-monero)
2019-09-24 10:04:03 -05:00
luigi1111
edfb74b81c Merge pull request #5831
d066383 core: move hardforks into its own lib (moneromooo-monero)
2019-09-24 10:02:28 -05:00
Martijn Otto
5bcbd97488 Disable easylogging crash log on non-glibc libraries
- easylogging assumes certain non-standard headers and functions
- these function only exist in glibc
- compiling under linux without glibc thus broke compilation
2019-09-23 16:30:23 +02:00
moneromooo-monero
d0663837d2 core: move hardforks into its own lib
So it can be used by others without encumbrance
2019-09-19 11:28:18 +00:00
xiphon
4371791977 epee: implement handshake timeout for SSL connections 2019-09-17 22:21:16 +00:00
moneromooo-monero
a444f06e53 blockchain: enforce 10 block age for spending outputs
Some custom wallet code apparently ignores this, which causes users
of that code to be fingerprinted
2019-09-17 11:39:25 +00:00
moneromooo-monero
48cfcb6313 functional_tests: fix failure on windows removing files 2019-09-17 11:38:34 +00:00
moneromooo-monero
75fe790634 fix wallet python test when run with ctest 2019-09-17 11:38:34 +00:00
moneromooo-monero
6b72541dc0 functional_tests: python3 compatibility
and add missing tests
2019-09-17 11:38:33 +00:00
moneromooo-monero
1fac83858a functional_tests: pop exactly what we need to test before testing 2019-09-17 11:38:31 +00:00
moneromooo-monero
e037ecb014 functional_tests: check for RPC methods which aren't exposed 2019-09-17 11:38:30 +00:00
moneromooo-monero
d53a55204f functional_tests: add get_transaction_pool_stats
Also fix part of the RPC results being returned as binary.
This makes the RPC backward incompatible.
2019-09-17 11:38:29 +00:00
moneromooo-monero
51bd45c352 functional_tests: add save_bc 2019-09-17 11:38:28 +00:00
moneromooo-monero
230f73e121 functional_tests: add is_key_image_spent tests 2019-09-17 11:38:28 +00:00
moneromooo-monero
c148002534 functional_tests: add submitblock test 2019-09-17 11:38:27 +00:00
moneromooo-monero
121c1b9475 functional_tests: check transaction fee is around what we expect 2019-09-17 11:38:26 +00:00
moneromooo-monero
170e51f0d9 functional_tests: add tx_notes tests 2019-09-17 11:38:26 +00:00
moneromooo-monero
4c375c9442 functional_tests: add wallet attributes test 2019-09-17 11:38:25 +00:00
moneromooo-monero
f2e811fced functional_tests: add rescan_spent/rescan_blockchain tests 2019-09-17 11:38:24 +00:00
moneromooo-monero
4ba8254a1d functional_tests: add monero: URI tests 2019-09-17 11:38:24 +00:00
moneromooo-monero
cc4be4fa15 wallet: add edit_address_book RPC 2019-09-17 11:38:23 +00:00
moneromooo-monero
4ff40d8d9a functional_tests: add address book tests 2019-09-17 11:38:22 +00:00
moneromooo-monero
0dc49fc918 functional_tests: add wallet password change, store and tag tests 2019-09-17 11:38:22 +00:00
moneromooo-monero
8e077a5fc0 functional_tests: add spend proof tests 2019-09-17 11:38:21 +00:00
moneromooo-monero
a71d91cecf functional_tests: add test for mining via wallet 2019-09-17 11:38:20 +00:00
moneromooo-monero
447268cf29 functional_tests: add multisig state tests 2019-09-17 11:38:19 +00:00
moneromooo-monero
43015bb7e3 functional_tests: add get_transfers test 2019-09-17 11:38:19 +00:00
moneromooo-monero
f23beb879e functional_tests: add missing sweep_dust parameters, and test it
though not a very good test, but we don't have dust handy
2019-09-17 11:38:18 +00:00
moneromooo-monero
b9e09378ad functional_tests: move extraneous stuff out of the framework 2019-09-17 11:38:15 +00:00
moneromooo-monero
7b076d5170 p2p: fix bans taking port into account 2019-09-16 22:45:45 +00:00
xiphon
7d81850a46 epee: fix network timeouts in blocked_mode_client 2019-09-16 18:55:36 +00:00
moneromooo-monero
32f725d32f Properly format multiline logs
As a side effect, colouring on Windows should now work
regardless of version
2019-09-16 16:58:01 +00:00
Jesus Ramirez
f9b3f6ef3b Removed Berkeley DB and db switching logic 2019-09-16 16:18:05 +02:00
selsta
dbc7c4478d README: fix TOC link 2019-09-14 22:02:36 +02:00
luigi1111
2c171a9b02 Merge pull request #5861
f0356f7 wallet2: enable ignoring fractional outputs also when sweeping (stoffu)
2019-09-14 13:27:18 -05:00
luigi1111
d663e1e3db Merge pull request #5818
f91a06c Dropping cppzmq dependency; adding some zmq utils (vtnerd)
2019-09-14 13:25:14 -05:00
luigi1111
dbe31f63e1 Merge pull request #5899
7d3bba5 wallet2_api: add missing parameter (selsta)
2019-09-14 13:23:28 -05:00
luigi1111
b4ac8969a8 Merge pull request #5898
73f22c4 depends: fix MacOS build with Clang 3.7.1 (vtnerd)
2019-09-14 13:22:35 -05:00
luigi1111
b7967572f7 Merge pull request #5897
928a540 updating Readme.md TOC (HarryMacfinned)
2019-09-14 13:21:18 -05:00
luigi1111
76805b62ce Merge pull request #5874
f380f69 simplewallet: warn if invalid default ring size is set and actually ignore the setting (stoffu)
2019-09-14 13:19:01 -05:00
luigi1111
85962ee8e2 Merge pull request #5872
495a7e5 rpc: don't include an address in mining_status when not mining (moneromooo-monero)
2019-09-14 13:16:45 -05:00
luigi1111
d00e511cc6 Merge pull request #5871
3407743 wallet_rpc_server: add locked field to get_transfers/get_{bulk_,}_payments (moneromooo-monero)
2019-09-14 13:14:22 -05:00
luigi1111
e753663d31 Merge pull request #5870
83ca764 wallet_rpc_server: call deinit on exit (moneromooo-monero)
2019-09-14 13:12:44 -05:00
luigi1111
46fbc7e13e Merge pull request #5869
6e46b06 cmake: ensure PYTHON_EXECUTABLE is set (moneromooo-monero)
2019-09-14 13:11:57 -05:00
luigi1111
b526208001 Merge pull request #5868
1f1fff2 daemon: print mining algorithm in mining_status even when not mining (moneromooo-monero)
2019-09-14 13:10:51 -05:00
luigi1111
6e1257cfbd Merge pull request #5866
21f6c80 rpc: move a leftover light wallet RPC out of daemon RPC (moneromooo-monero)
2019-09-14 13:09:32 -05:00
luigi1111
4a39e1a4a5 Merge pull request #5865
11f13da blockchain: fix logging bad number of blocks if first one fails (moneromooo-monero)
19bfe7e simplewallet: fix warnings about useless std::move (moneromooo-monero)
2019-09-14 13:07:35 -05:00
luigi1111
3e75df42a7 Merge pull request #5854
2cb22d4 core: make the 'update probably needed soon' message less scary (moneromooo-monero)
2019-09-14 13:06:05 -05:00
luigi1111
29e0f11305 Merge pull request #5823
26072f1 blockchain: forbid v1 coinbase from v12 (moneromooo-monero)
555dc7c core: from v12, require consistent ring size for mixable txes (moneromooo-monero)
d22dfb7 blockchain: reject rct signatures in coinbase txes from v12 (moneromooo-monero)
2019-09-14 13:04:41 -05:00
moneromooo-monero
1b91bebd2e abstract_tcp_server2: fix lingering connections
Resetting the timer after shutdown was initiated would keep
a reference to the object inside ASIO, which would keep the
connection alive until the timer timed out
2019-09-12 12:10:50 +00:00
moneromooo-monero
b9da0234e9 blockchain: keep block template timestamp not below recent median
Such a template would yield an invalid block, though would require
an attacker to have mined a long blockchain with drifting times
(assuming the miner's clock is roughly correct)

Fixed by crCr62U0
2019-09-11 15:21:52 +00:00
erciccione
7336864f12 refresh language files 2019-09-11 12:33:05 +02:00
stoffu
369954496b cmake: add protolib to zmq dependency libs
Needed for Ubuntu 19.04:
https://ubuntu.pkgs.org/19.04/ubuntu-universe-amd64/libnorm-dev_1.5.8+dfsg2-1_amd64.deb.html
2019-09-11 14:04:55 +09:00
stoffu
bd9c12e18a simplewallet: remove erroneously added line under subaddress-lookahead 2019-09-11 10:50:20 +09:00
moneromooo-monero
62fc4bec4c Revert "cryptonote_protocol: drop peers we can't download from when syncing"
This reverts commit a96c1a46d4.
2019-09-11 01:04:44 +00:00
moneromooo-monero
ea92a32f72 Revert "Fix check for disconnecting peers when syncing"
This reverts commit adc16d2504.
2019-09-11 01:04:01 +00:00
stoffu
f0356f74d3 wallet2: enable ignoring fractional outputs also when sweeping 2019-09-10 12:24:08 +09:00
selsta
7d3bba5ca0 wallet2_api: add missing parameter 2019-09-09 16:03:47 +02:00
Harry MacFinned
928a5409aa updating Readme.md TOC
updating the TOC
2019-09-09 11:19:42 +00:00
iDunk5400
e09dbc6089 depends: fix monero binaries Boost linking errors
It would try to link against host system Boost libs when building outside gitian. Tested with x86_64-linux-gnu target.
2019-09-09 10:00:47 +02:00
stoffu
fdc00d0906 unit tests: replace global var with lambda returning static local var
Fixes assertion failure (curstate == 1) in random.c in debug mode
2019-09-09 11:44:06 +09:00
luigi1111
d0d76f771a Merge pull request #5876
a5c7eeb unit_tests: fix build with CLANG 8 and boost 1.69 (moneromooo-monero)
2019-09-08 20:10:44 -05:00
luigi1111
e7b5b231e0 Merge pull request #5858
5f4bd92 Fix Travis build on Windows + Mac (hyperreality)
2019-09-08 20:09:11 -05:00
luigi1111
93699a27f7 Merge pull request #5857
e907305 ITS#9068 fix backslash escaping (hyc)
2019-09-08 20:07:34 -05:00
luigi1111
d91393daaf Merge pull request #5856
f56e160 unit_tests: Fix uninitialized values (liptakmatyas)
2019-09-08 20:06:04 -05:00
luigi1111
9325501762 Merge pull request #5855
2ec455d wallet: fix mismatch between two concepts of 'balance' (moneromooo-monero)
2019-09-08 20:04:00 -05:00
luigi1111
cdbb225da3 Merge pull request #5851
cbdd76d readme: remove snap monero package and add debian (erciccione)
2019-09-08 20:02:26 -05:00
luigi1111
19ef2e99ad Merge pull request #5850
c4da1a2 wallet2: fix unset_ring tx retrieval checks (moneromooo-monero)
2019-09-08 20:00:55 -05:00
luigi1111
d30b234f08 Merge pull request #5849
b51f4cd daemon: add pruned and publicrpc flags to print_pl (moneromooo-monero)
2019-09-08 19:59:05 -05:00
luigi1111
1fd43d3f9f Merge pull request #5847
894cc81 wallet2: fix cold signing losing tx keys (moneromooo-monero)
2019-09-08 19:57:49 -05:00
luigi1111
871661f3dc Merge pull request #5843
9f68669 blockchain_blackball: add --historical-stat which prints historical stats of spent ratio (stoffu)
2425f27blockchain_blackball: use is_output_spent instead of ringdb.blackballed for spentness test (stoffu)
50813c1 ringdb: fix bug in blackballing (stoffu)
2019-09-08 19:56:33 -05:00
luigi1111
db87e92b34 Merge pull request #5842
87d2f06 simplewallet: moan harder about untrusted nodes (moneromooo-monero)
2019-09-08 19:53:27 -05:00
luigi1111
86938725ae Merge pull request #5841
cae488d p2p: reject incoming connections to self (moneromooo-monero)
2019-09-08 19:48:09 -05:00
luigi1111
21290005d7 Merge pull request #5840
063eebb daemon: implement 'set_bootstrap_daemon' command (xiphon)
2019-09-08 19:46:03 -05:00
luigi1111
15dabf7d18 Merge pull request #5839
e353e3d p2p: sanitize peer lists (moneromooo-monero)
2019-09-08 19:45:09 -05:00
luigi1111
3b28ff2d6d Merge pull request #5838
2e26536 p2p: move log away from global (moneromooo-monero)
2019-09-08 19:43:46 -05:00
luigi1111
4ef3848423 Merge pull request #5835
26f7a26 device: fix ledger requesting secret keys export twice (xiphon)
2019-09-08 19:42:49 -05:00
luigi1111
253786c8ea Merge pull request #5833
289d215 rpc: fix unitialized 'core_rpc_server::m_was_bootstrap_ever_used' (xiphon)
2019-09-08 19:41:27 -05:00
luigi1111
da4512639e Merge pull request #5830
5a4c6cc daemon: fix merge error removing the 'never seen before' timestamp check (moneromooo-monero)
2019-09-08 19:40:29 -05:00
luigi1111
48d8475b6e Merge pull request #5544
d046ca1 difficulty: fix check_hash on big endian (moneromooo-monero)
bdda084 epee: fix local/loopback checks on big endian (moneromooo-monero)
32c3834 storages: fix writing varints on big endian (moneromooo-monero)
516f7b9 storages: fix 'portable' storage on big endian (moneromooo-monero)
0e2fda5 unit_tests: fix levin unit test on big endian (moneromooo-monero)
4672b5c db_lmdb: print percentages as percentages, not ratios (moneromooo-monero)
54fd97a slow-hash: fix CNv2+ on big endian (moneromooo-monero)
c1fa4a7 boost: fix little/big endian compatibility (moneromooo-monero)
bc1144e Fix IP address serialization on big endian (moneromooo-monero)
2019-09-08 19:38:58 -05:00
xiphon
c89f7effd1 wallet2_api: fix load unsigned tx from file error propagation 2019-09-09 00:03:55 +00:00
Lee Clagett
73f22c48e1 depends: fix MacOS build with Clang 3.7.1 2019-09-08 22:49:11 +02:00
anonimal
cd57a10c90 epee: abstract_tcp_server2: resolve CID 203919 (DC.WEAK_CRYPTO)
The problem actually exists in two parts:

1. When sending chunks over a connection, if the queue size is
greater than N, the seed is predictable across every monero node.

>"If rand() is used before any calls to srand(), rand() behaves as if
it was seeded with srand(1). Each time rand() is seeded with the same seed, it
must produce the same sequence of values."

2. The CID speaks for itself: "'rand' should not be used for security-related
applications, because linear congruential algorithms are too easy to break."

*But* this is an area of contention.

One could argue that a CSPRNG is warranted in order to fully mitigate any
potential timing attacks based on crafting chunk responses. Others could argue
that the existing LCG, or even an MTG, would suffice (if properly seeded). As a
compromise, I've used an MTG with a full bit space. This should give a healthy
balance of security and speed without relying on the existing crypto library
(which I'm told might break on some systems since epee is not (shouldn't be)
dependent upon the existing crypto library).
2019-09-08 01:14:39 +00:00
iDunk5400
ab2819a365 depends: attempt to fix readline
Make readline actually compile, and make ncurses use existing terminfo data (if available).
2019-09-07 22:02:11 +02:00
anonimal
d46f701515 tests: rct_mlsag: resolve CID 203914 (UNINIT_CTOR) 2019-09-07 00:38:49 +00:00
anonimal
d099658522 bootstrap_daemon: resolve CID 203915 (UNCAUGHT_EXCEPT)
The issue is triggered by the captured `this` in RPC server, which
passes reference to throwable `core_rpc_server`:

`core_rpc_server.cpp:164: m_bootstrap_daemon.reset(new bootstrap_daemon([this]{ return get_random_public_node(); }));`

The solution is to simply remove noexcept from the remaining `bootstrap_daemon`
constructors because noexcept is false in this context.

>"An exception of type "boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::asio::invalid_service_owner>>" is thrown but the throw list "noexcept" doesn't allow it to be thrown. This will cause a call to unexpected() which usually calls terminate()."
2019-09-07 00:29:09 +00:00
anonimal
2825f07d95 epee: connection_basic: resolve CID 203916 (UNINIT_CTOR) 2019-09-06 23:18:00 +00:00
anonimal
1bd962d9f9 wallet2: resolve CID 203918 null pointer deference (NULL_RETURNS) 2019-09-06 23:11:37 +00:00
anonimal
3a816398b3 epee: connection_basic: resolve CID 203920 (UNINIT_CTOR) 2019-09-06 22:48:16 +00:00
moneromooo-monero
ae32862604 README: fix master branch spelling, it is not Master 2019-09-06 12:30:31 +00:00
Lev Sizov
928f4be953 Make null hash constants constexpr
Simplify m_template initialization in miner
2019-09-05 17:37:19 +02:00
Martijn Otto
7de6671dc2 Add the iwyu target to get information on unused headers
With this change, building the iwyu target will provide information
on unused headers, which can be removed to reduce compilation times.
2019-09-05 17:27:12 +02:00
moneromooo-monero
2ec455df1f wallet: fix mismatch between two concepts of "balance"
One considers the blockchain, while the other considers the
blockchain and some recent actions, such as a recently created
transaction which spend some outputs, but isn't yet mined.

Typically, the "balance" command wants the latter, to reflect
the recent action, but things like proving ownership wants
the former.

This fixes a crash in get_reserve_proof, where a preliminary
check and the main code used two concepts of "balance".
2019-09-05 11:19:34 +00:00
moneromooo-monero
340774341f wallet_rpc_server: add locked field to get_transfers/get_{bulk_,}_payments
Much easier to work with than the raw unlock_time field
2019-09-05 10:54:57 +00:00
moneromooo-monero
bc1144e98e Fix IP address serialization on big endian
IP addresses are stored in network byte order even on little
endian hosts
2019-09-04 14:54:01 +00:00
moneromooo-monero
c1fa4a7f8c boost: fix little/big endian compatibility
When no little/big endian flag is given to the writer, it stores
data in host endianness. When loading, if no flag is set, it also
assumes host endianness. This works as long as the loading and
writing are done on machines with the same endianness.

We change this to default to little endian when saving. This will
cause the loader to see the little endian flag, and swap endianness
when loading on a big endian machine. Similarly, writing on a big
endian machine will swap on save, and a little endian machine will
load little endian data.
2019-09-04 14:54:00 +00:00
moneromooo-monero
54fd97ae3f slow-hash: fix CNv2+ on big endian 2019-09-04 14:53:59 +00:00
moneromooo-monero
4672b5cea9 db_lmdb: print percentages as percentages, not ratios 2019-09-04 14:53:59 +00:00
moneromooo-monero
0e2fda5bf0 unit_tests: fix levin unit test on big endian 2019-09-04 14:53:58 +00:00
moneromooo-monero
516f7b9de0 storages: fix "portable" storage on big endian 2019-09-04 14:53:57 +00:00
moneromooo-monero
32c3834948 storages: fix writing varints on big endian 2019-09-04 14:53:57 +00:00
moneromooo-monero
bdda084651 epee: fix local/loopback checks on big endian
IPv4 addresses are kept in network byte order in memory
2019-09-04 14:53:56 +00:00
moneromooo-monero
d046ca1db0 difficulty: fix check_hash on big endian 2019-09-04 14:53:53 +00:00
luigi1111
1b93cb74bb Merge pull request #5824
2a41dc0 epee: fix connections not being properly closed in some instances (moneromooo-monero)
2019-09-04 09:40:21 -05:00
luigi1111
a567e884b2 Merge pull request #5822
839fc62 reject setting lookahead major or minor to 0 (moneromoo-monero)
2019-09-04 09:39:07 -05:00
luigi1111
e4f11a68fe Merge pull request #5819
07cb087 blockchain: Fix alt chain generated coins overflow (iamamyth)
2019-09-04 09:37:32 -05:00
luigi1111
6fe281d315 Merge pull request #5814
bdcdb0e Remove unused code under WINDWOS_PLATFORM guard (tomsmeding)
a84aa04 syncobj.h no longer defines shared_guard, so remove those define's (tomsmeding)
2019-09-04 09:30:29 -05:00
luigi1111
902e4b6ebf Merge pull request #5806
69465e3 cryptonote_protocol: fix '--no-sync', ignore new blocks and txes (xiphon)
2019-09-04 09:28:22 -05:00
luigi1111
0198b76217 Merge pull request #5799
082730b daemon: automatic public nodes discovering and bootstrap daemon switching (xiphon)
2019-09-04 09:27:02 -05:00
luigi1111
2acd3cee8c Merge pull request #5796
e3cff3d Gitian build script fixes for MacOS (jonathancross)
2019-09-04 09:23:15 -05:00
luigi1111
101c9678a5 Merge pull request #5764
f26e663 Gitian build (mac, linux): gzip => bzip2 (jonathancross)
2019-09-04 09:21:27 -05:00
luigi1111
23547e6ed6 Merge pull request #5536
1a367d6 simplewallet: lock console on inactivity (moneromooo-monero)
2019-09-04 09:18:38 -05:00
moneromooo-monero
11fa442637 Makefile: add a top level debug target for ASAN 2019-09-04 12:11:44 +00:00
Lev Sizov
4ad191ffa9 Removed unused boost/value_init header 2019-09-02 14:38:29 +02:00
Jesus Ramirez
2cd4fd8972 Changed the use of boost:value_initialized for C++ list initializer 2019-09-02 14:16:29 +02:00
moneromooo-monero
a5c7eebaea unit_tests: fix build with CLANG 8 and boost 1.69 2019-08-30 11:43:03 +00:00
luigi1111
98af2e954b Merge pull request #5793
bdfc63a Add ref-counted buffer byte_slice. Currently used for sending TCP data. (vtnerd)
3b24b1d Added support for 'noise' over I1P/Tor to mask Tx transmission. (vtnerd)
2019-08-29 14:36:41 -05:00
moneromooo-monero
0c558378ed contrib: add a suppressions file for leak sanitizer
with the Cryptonight per-thread buffer
2019-08-29 11:11:59 +00:00
stoffu
f380f69c69 simplewallet: warn if invalid default ring size is set and actually ignore the setting 2019-08-29 15:55:53 +09:00
moneromooo-monero
1a367d6a22 simplewallet: lock console on inactivity 2019-08-28 19:01:48 +00:00
moneromooo-monero
495a7e5b97 rpc: don't include an address in mining_status when not mining
Best case is an address mined previously and it'll get returned,
worst case it was never initialized in the first place
2019-08-28 16:02:37 +00:00
moneromooo-monero
83ca76435b wallet_rpc_server: call deinit on exit 2019-08-28 15:59:33 +00:00
moneromooo-monero
6e46b06308 cmake: ensure PYTHON_EXECUTABLE is set 2019-08-28 15:56:32 +00:00
moneromooo-monero
1f1fff2679 daemon: print mining algorithm in mining_status even when not mining 2019-08-28 15:55:31 +00:00
moneromooo-monero
21f6c80fcd rpc: move a leftover light wallet RPC out of daemon RPC 2019-08-28 15:51:28 +00:00
moneromooo-monero
19bfe7e5ab simplewallet: fix warnings about useless std::move 2019-08-28 15:13:50 +00:00
moneromooo-monero
11f13da8b4 blockchain: fix logging bad number of blocks if first one fails 2019-08-28 14:53:29 +00:00
Tom Smeding
6bbc646e6f Fix bug in mempool get_transaction_stats histogram calculation
The 98th percentile position in the agebytes map was incorrectly
calculated: it assumed the transactions in the mempool all have unique
timestamps at second-granularity. This commit fixes this by correctly
finding the right cumulative number of transactions in the map suffix.

This bug could lead to an out-of-bounds write in the rare case that
all transactions in the mempool were received (and added to the mempool)
at a rate of at least 50 transactions per second. (More specifically,
the number of *unique* receive_time values, which have second-
granularity, must be at most 2% of the number of transactions in the
mempool for this crash to trigger.) If this condition is satisfied, 'it'
points to *before* the agebytes map, 'delta' gets a nonsense value, and
the value of 'i' in the first stats.histo-filling loop will be out of
bounds of stats.histo.
2019-08-28 16:46:31 +02:00
luigi1111
85014813cf Merge pull request #5707
3a0451a MLSAG speedup and additional checks (SarangNoether)
2019-08-28 02:22:00 -05:00
luigi1111
46c1198fd7 Merge pull request #5844
a7d1577 build: fix depends Travis ncurses build, don't wipe CONFIG_SHELL (xiphon)
2019-08-27 15:23:08 -05:00
Sarang Noether
3a0451a8be MLSAG speedup and additional checks 2019-08-27 16:22:44 -04:00
luigi1111
174c3a05f6 Merge pull request #5820
ac0a229 Fix Android build in Docker (hyperreality)
2019-08-27 15:22:08 -05:00
luigi1111
a387f0390d Merge pull request #5794
a63e212 Docker updated dependencies cmake boost sodium cppzmq udev protobuf zmq (homdx)
2019-08-27 15:21:17 -05:00
luigi1111
f68512e9e4 Merge pull request #5729
7c894fc device_ledger: add paranoid buffer overflow check (moneromooo-monero)
f07524b device_ledger: fix uninitialized additional_key (moneromooo-monero)
2019-08-27 15:19:47 -05:00
luigi1111
8f6f674753 Merge pull request #5609
1dc3b1a wallet: add --extra-entropy command line flag (moneromooo-monero)
2019-08-27 15:14:15 -05:00
luigi1111
3e80f44503 Merge pull request #5559
33e91e1 wallet, rpc: add a release field to get_version (moneromooo-monero)
2019-08-27 15:09:37 -05:00
luigi1111
3254204fb9 Merge pull request #5416
63186a0 Wallet: Option to export data to ASCII (tmoravec)
2019-08-27 15:02:55 -05:00
xiphon
082730b6e5 daemon: automatic public nodes discovering and bootstrap daemon switching 2019-08-27 12:01:49 +00:00
Matyas Liptak
f56e160217 unit_tests: Fix uninitialized values
-   Initialize the `hash` in the `get_block_hash()` function of the
    `output_distribution` unit test explicitly, to silence `valgrind`
    warnings.
2019-08-27 09:17:34 +02:00
hyperreality
5f4bd92e06 Fix Travis build on Windows + Mac
Following 13c0b8c, the unwind package is being attempted to be built on
Windows and Mac when it should only be built on Linux.
2019-08-27 00:41:03 +01:00
moneromooo-monero
33e91e1a1e wallet, rpc: add a release field to get_version
It does not leak much since you can make a fair guess by RPC
version already, and some people want to avoid non release
clients when using third parties' nodes (because they'd never
lie about it)
2019-08-26 19:28:25 +00:00
Howard Chu
e907305c6c ITS#9068 fix backslash escaping
mdb_load wasn't properly inserting escaped backslashes into the data.
mdb_dump wasn't escaping backslashes when generating printable output.
2019-08-26 17:59:13 +01:00
moneromooo-monero
f07524b56b device_ledger: fix uninitialized additional_key
Coverity 200185
2019-08-26 12:50:29 +00:00
moneromooo-monero
7c894fc7fd device_ledger: add paranoid buffer overflow check
Coverity 200183
2019-08-26 12:50:26 +00:00
moneromooo-monero
2cb22d4071 core: make the "update probably needed soon" message less scary 2019-08-26 07:56:55 +00:00
erciccione
cbdd76d513 readme: remove snap monero package and add debian 2019-08-25 17:22:02 +02:00
moneromooo-monero
c4da1a25c3 wallet2: fix unset_ring tx retrieval checks 2019-08-24 14:46:31 +00:00
moneromooo-monero
87d2f063af simplewallet: moan harder about untrusted nodes 2019-08-24 12:36:10 +00:00
moneromooo-monero
b51f4cdcaf daemon: add pruned and publicrpc flags to print_pl 2019-08-23 19:15:45 +00:00
moneromooo-monero
894cc81e83 wallet2: fix cold signing losing tx keys 2019-08-23 16:38:20 +00:00
xiphon
063eebbd43 daemon: implement 'set_bootstrap_daemon' command 2019-08-23 12:09:02 +00:00
Tom Smeding
a84aa04d57 syncobj.h no longer defines shared_guard, so remove those define's
The removed preprocessor macro's refer to types that are not defined in
the file anymore; the only other place where shared_guard is defined is
in winobj.h, which also defines the same macro's. Therefore, this change
is safe.

(Side note is that these macro's weren't used at all anyway, but that is
orthogonal to the issue.)
2019-08-23 08:42:36 +02:00
xiphon
a7d1577545 build: fix depends Travis ncurses build, don't wipe CONFIG_SHELL 2019-08-23 01:55:33 +00:00
moneromooo-monero
cae488dc9b p2p: reject incoming connections to self 2019-08-22 17:08:29 +00:00
Tadeas Moravec
63186a01ce Wallet: Option to export data to ASCII
New CLI wallet variable: export-format with options "binary" (the default),
or "ascii". "Binary" behaves as before, "ascii" forces the wallet to convert
data to ASCII using base64.

Reading files from the disk tries to auto detect what format has been
used (using a magic string added when exporting the data).

Implements https://github.com/monero-project/monero/issues/2859
2019-08-22 16:03:22 +02:00
stoffu
50813c103e ringdb: fix bug in blackballing 2019-08-22 21:34:48 +09:00
stoffu
2425f27acd blockchain_blackball: use is_output_spent instead of ringdb.blackballed for spentness test 2019-08-22 21:34:47 +09:00
stoffu
9f68669503 blockchain_blackball: add --historical-stat which prints historical stats of spent ratio 2019-08-22 21:34:40 +09:00
moneromooo-monero
1dc3b1a516 wallet: add --extra-entropy command line flag
It lets the user add custom entropy to the PRNG.
It does this by hashing the new data and xoring the resulting
hash with the PRNG state.
2019-08-22 11:12:57 +00:00
luigi1111
cdfa2e58df Merge pull request #5827
30779de fix feature not introduced until boost 1.66 (jtgrassie)
2019-08-21 15:54:10 -05:00
luigi1111
2be47ae02a Merge pull request #5817
50ec40e Increase max_dbs from 20 to 32 (hyc)
2019-08-21 15:49:51 -05:00
luigi1111
7bdff6005f Merge pull request #5815
adc16d2 Fix check for disconnecting peers when syncing (jagerman)
2019-08-21 15:48:09 -05:00
luigi1111
d8244eb39c Merge pull request #5808
5a91b83 simplewallet: add a few missing settings help text (stoffu)
ae7bf37 simplewallet: fix arg indexing bug in set_device_name (stoffu)
2019-08-21 15:41:42 -05:00
luigi1111
0a42fddde4 Merge pull request #5807
4b1df4e Fix for biased signature nonce (SarangNoether)
2019-08-21 15:38:35 -05:00
luigi1111
28e0a28b96 Merge pull request #5800
6ca033d hid_error() could return a null, which causes the program to crash with (TheQuantumPhysicist)
2019-08-21 15:36:05 -05:00
luigi1111
d035af8e92 Merge pull request #5788
de5038f unpushed languages from pootle (synced) (Monero-Weblate)
2019-08-21 15:33:14 -05:00
luigi1111
11ab328ce3 Merge pull request #5778
8703aa5 MMS: Use chans instead of normal addresses for auto-config (rbrunner7)
2019-08-21 15:31:11 -05:00
luigi1111
415005aceb Merge pull request #5777
757b789 Define _WANT_SEMUN for FreeBSD to ensure union semun is defined (odonnellnoel)
2019-08-21 15:28:10 -05:00
luigi1111
17f1ac8a42 Merge pull request #5775
95bebb1 Add nbproject directory to .gitignore (odonnellnoel)
2019-08-21 15:27:06 -05:00
luigi1111
f1e66a03f1 Merge pull request #5757
a12ca68 translations: add a ready file to control which translations to build (moneromooo-monero)
2019-08-21 15:25:18 -05:00
luigi1111
eea0123de4 Merge pull request #5755
7a3e458 improve tx_sanity_check clarification (vicsn)
2019-08-21 15:23:58 -05:00
luigi1111
5aa65adfcf Merge pull request #5735
32b0560 easylogging++: weed out most calls to allowed without locking (moneromooo-monero)
2019-08-21 15:21:51 -05:00
luigi1111
1bd3f1a1fb Merge pull request #5750
884df82 wallet: provide original address for outgoing transfers (xiphon)
2019-08-21 15:20:51 -05:00
luigi1111
0ca1a51033 Merge pull request #5749
45c28d8 build: fix OSX static libusb check and link against static libobjc (xiphon)
2019-08-21 15:19:33 -05:00
luigi1111
a8e99198bf Merge pull request #5748
b350726 boost: update obsolete usage of endian API (moneromooo-monero)
2019-08-21 15:18:38 -05:00
luigi1111
de30131abd Merge pull request #5743
65f29a8 simplewallet: add restore_height command (tobtoht)
2019-08-21 15:17:26 -05:00
luigi1111
b488ee8188 Merge pull request #5742
0d916a6 Fix incorrectly named binding for MMS send_signer_config command (tobtoht)
2019-08-21 15:13:16 -05:00
luigi1111
9e8179ca84 Merge pull request #5740
256d286 Minor formatting fix in help set command (tobtoht)
2019-08-21 15:11:32 -05:00
luigi1111
8956e90c63 Merge pull request #5731
c393e82 CryptonightR_JIT: fix return value on error (selene-kovri)
2019-08-21 15:09:48 -05:00
luigi1111
65e937168e Merge pull request #5722
8be5fea simplewallet: optional all flag to export_outputs/export_key_images (moneromooo-monero)
2019-08-21 15:08:10 -05:00
luigi1111
1b373185aa Merge pull request #5702
13c0b8c Add depends riscv 64 bit support (TheCharlatan)
2019-08-21 14:49:09 -05:00
luigi1111
e72aca57f9 Merge pull request #5511
914b106 wallet_rpc_server: use original addresses in destinations in get_transfers (moneromooo-monero)
da694d4 functional_tests: add tests for pending/out transfer addresses (moneromooo-monero)
2019-08-21 14:47:16 -05:00
moneromooo-monero
e353e3d757 p2p: sanitize peer lists
Also remove the delta time fixup, since we now ignore those
as they're attacker controlled
2019-08-21 15:54:27 +00:00
moneromooo-monero
2e2653602f p2p: move log away from global
It was here while debugging, and I forgot to move it away
2019-08-21 14:00:43 +00:00
rbrunner7
8703aa59db MMS: Use chans instead of normal addresses for auto-config 2019-08-20 19:55:31 +02:00
xiphon
26f7a26ee3 device: fix ledger requesting secret keys export twice 2019-08-20 16:08:09 +00:00
xiphon
289d21500c rpc: fix unitialized 'core_rpc_server::m_was_bootstrap_ever_used' 2019-08-20 15:08:48 +00:00
TheCharlatan
13c0b8c265 Add depends riscv 64 bit support 2019-08-20 15:24:47 +02:00
moneromooo-monero
5a4c6cc3a8 daemon: fix merge error removing the "never seen before" timestamp check 2019-08-20 12:48:55 +00:00
luigi1111
c9df9d683a Merge pull request #5696
fd60d05 daemon: fix print_pl only printing public zone peers (moneromooo-monero)
2019-08-20 01:50:10 -05:00
Jethro Grassie
30779de39d fix feature not introduced until boost 1.66 2019-08-20 01:06:59 -04:00
moneromooo-monero
fd60d05d5d daemon: fix print_pl only printing public zone peers 2019-08-19 23:39:51 +00:00
luigi1111
4947f3bdba Merge pull request #5636
b712ae0 rpc: work around a GCC 7.4.0 (at least) bug (moneromooo-monero)
2019-08-19 17:37:37 -05:00
luigi1111
5fd91463a2 Merge pull request #5773
441f318 fix building on OpenBSD, simplify Readme section (mrme0w/The-King-of-Toasters)
2019-08-19 17:35:26 -05:00
luigi1111
56b98c7003 Merge pull request #5728
6560bfa rpc: get_block_template add optional extra_nonce (jtgrassie)
2019-08-19 17:33:08 -05:00
luigi1111
f205d28e96 Merge pull request #5727
7b9a420 Replace std::random_shuffle with std::shuffle (tomsmeding)
2019-08-19 17:31:39 -05:00
luigi1111
4baec08d5c Merge pull request #5725
dc8b7a8 zmq: MacPorts latest fix (jtgrassie)
2019-08-19 17:29:38 -05:00
luigi1111
f1c3252df3 Merge pull request #5723
a2484a1 README: add coredumpctl info from iDunk (moneromooo-monero)
2019-08-19 17:28:28 -05:00
luigi1111
1010a6503e Merge pull request #5721
c164f90 Remove unnecessary m_check_txin_table, fix const correctness (omartijn)
2019-08-19 17:25:52 -05:00
luigi1111
1499caf596 Merge pull request #5720
bcd2da7 miner: fix --bg-mining-enable description (moneromooo-monero)
2019-08-19 17:18:04 -05:00
luigi1111
2da11baecc Merge pull request #5718
c8709fe wallet: do not print log settings when unset (moneromooo-monero)
7b18e83 unit_tests: check return values on test data parsing (moneromooo-monero)
2019-08-19 17:17:11 -05:00
luigi1111
b7415d3a5c Merge pull request #5706
9a5933f Gitian: Add version string to output tar archives (TheCharlatan)
2019-08-19 17:16:02 -05:00
luigi1111
bc4f1145c3 Merge pull request #5705
59eecc7 Update icu4c to latest support version (TheCharlatan)
2019-08-19 17:14:52 -05:00
luigi1111
198fb35ca3 Merge pull request #5701
962dd93 README: add beginnings of 'Known Issues' (anonimal)
b2813ab README: add blockchain-based issue to 'Known Issues' (anonimal)
2019-08-19 17:13:06 -05:00
moneromooo-monero
2a41dc0453 epee: fix connections not being properly closed in some instances
Fixed by Fixed by crCr62U0
2019-08-19 22:09:55 +00:00
moneromooo-monero
d22dfb7594 blockchain: reject rct signatures in coinbase txes from v12 2019-08-19 16:43:53 +00:00
moneromooo-monero
555dc7c394 core: from v12, require consistent ring size for mixable txes
We're supposed to have a fixed ring size now

Already checked by MLSAG verification, but here seems more intuitive
2019-08-19 16:43:53 +00:00
moneromooo-monero
26072f1393 blockchain: forbid v1 coinbase from v12 2019-08-19 16:43:52 +00:00
moneromooo-monero
839fc6256b reject setting lookahead major or minor to 0 2019-08-19 15:35:12 +00:00
moneromooo-monero
32b0560003 easylogging++: weed out most calls to allowed without locking 2019-08-19 14:52:14 +00:00
hyperreality
ac0a229739 Fix Android build in Docker
Fixes issue with libtinfo5 being required by iconv1.15 but not installed
by default in latest Debian stable.

Tested with a fresh build of the Android image.
2019-08-18 18:02:13 -07:00
iamamyth
07cb087e5d blockchain: Fix alt chain generated coins overflow
Apply the overflow logic used for computing already_generated_coins in
the main chain to alternative chains.
2019-08-18 17:26:58 -07:00
Howard Chu
50ec40ea16 Increase max_dbs from 20 to 32
We've added a lot of new indices recently, and 20 isn't enough for them plus
new DBs opened during format migrations.
2019-08-18 17:10:45 +01:00
luigi1111
459beb50d4 Merge pull request #5685
a604241 simplewallet: don't ask about mining when running a command line (moneromooo-monero)
2019-08-17 15:27:21 -05:00
luigi1111
12d08dcbf5 Merge pull request #5518
def703a wallet_api: add multi destination tx support (selsta)
2019-08-17 15:24:02 -05:00
luigi1111
14602ba5ff Merge pull request #5504
eeca5ca epee: support unicode in parsed strings (moneromooo-monero)
3e11bb5 functional_tests: test creating wallets with local language names (moneromooo-monero)
2019-08-17 15:22:46 -05:00
luigi1111
50c8147568 Merge pull request #5490
1a93aa4 functional_tests: add get_fee_estimate to blockchain test (moneromooo-monero)
2019-08-17 15:20:15 -05:00
Jason Rhinelander
adc16d2504 Fix check for disconnecting peers when syncing
The check added here (in #5732/#5733) is supposed to disconnect behind
peers when the current node is syncing, but actually disconnects behind
peers always.

We are syncing when `target > our_height`, but the check here triggers
when `target > remote_height`, which is basically always true when the
preceding `m_core.have_block(hshd.top_id)` check is true.
2019-08-16 21:16:33 -03:00
moneromooo-monero
3e11bb540e functional_tests: test creating wallets with local language names 2019-08-16 17:06:08 +00:00
moneromooo-monero
eeca5ca0c8 epee: support unicode in parsed strings 2019-08-16 17:06:03 +00:00
selsta
def703abec wallet_api: add multi destination tx support 2019-08-16 16:23:12 +02:00
luigi1111
310c26824d Merge pull request #5756
28c3e73 gitian build README improvements (jonathancross)
2019-08-15 17:34:13 -05:00
luigi1111
9120a73dcd Merge pull request #5691
1a6af80 distinguish "build status" from "build" (ghost)
2019-08-15 17:31:56 -05:00
luigi1111
399a847cfc Merge pull request #5689
1db5357 rpc headers fix (malbit)
2019-08-15 17:29:34 -05:00
luigi1111
017162b5b2 Merge pull request #5682
3768db2 p2p: add a reference to Cao, Tong et al. for the last_seen changes (moneromooo-monero)
2019-08-15 17:27:30 -05:00
luigi1111
6dcd57342e Merge pull request #5679
7fb4edc cmake: fix tests generator (ston1th)
2019-08-15 17:25:47 -05:00
luigi1111
f06c77ab72 Merge pull request #5677
a5127cc tests: functional: fix python syntax (radfish)
2019-08-15 17:24:31 -05:00
luigi1111
8a0711f2f2 Merge pull request #5674
fcbf7b3 p2p: propagate out peers limit to payload handler (moneromooo-monero)
098aadf p2p: close the right number of connections on setting max in/out peers (moneromooo-monero)
2019-08-15 17:22:39 -05:00
luigi1111
6b6593dad9 Merge pull request #5673
097cca5 wallet_api: catch getTxKey exception (ph4r05)
2019-08-15 17:21:26 -05:00
luigi1111
1a259a1c70 Merge pull request #5672
b2bfcab wallet2: fix change subaddress mixup when sending pre rct outputs (moneromooo-monero)
2019-08-15 17:20:18 -05:00
luigi1111
739b02ef38 Merge pull request #5662
64fb0f8 device: tx_key caching fixed, store recovered txkey (ph4r05)
2019-08-15 17:19:12 -05:00
luigi1111
48229234a9 Merge pull request #5659
6bb2797 daemon: print 128bit diff properly (stoffu)
2019-08-15 17:17:36 -05:00
luigi1111
c5e926676a Merge pull request #5656
8ccc30b Fix --restore-date usage (hyc)
2019-08-15 17:14:58 -05:00
luigi1111
86ee631212 Merge pull request #5652
f81cb4f unit_tests: add more leeway to the 'same distribution' check (moneromooo-monero)
2019-08-15 17:13:18 -05:00
luigi1111
df064eaa36 Merge pull request #5649
a182df2 Bans for RPC connections (hyc)
2019-08-15 17:10:49 -05:00
luigi1111
1167370239 Merge pull request #5637
69f9420 core: do not complain about low block rate if disconnected (moneromooo-monero)
2019-08-15 17:09:15 -05:00
Tom Smeding
7b9a420787 Replace std::random_shuffle with std::shuffle
According to [1], std::random_shuffle is deprecated in C++14 and removed
in C++17. Since std::shuffle is available since C++11 as a replacement
and monero already requires C++11, this is a good replacement.

A cryptographically secure random number generator is used in all cases
to prevent people from perhaps copying an insecure std::shuffle call
over to a place where a secure one would be warranted. A form of
defense-in-depth.

[1]: https://en.cppreference.com/w/cpp/algorithm/random_shuffle
2019-08-15 16:33:15 +02:00
Tom Smeding
bdcdb0e813 Remove unused code under WINDWOS_PLATFORM guard
This code has been present, unchanged, ever since the original move to
github in 2014 with commit 296ae46ed.
2019-08-15 14:57:27 +02:00
luigi1111
0ba675622f Merge pull request #5634
1488109 rpc: fix get_transactions getting v1 txes from the txpool (moneromooo-monero)
2019-08-14 15:35:24 -05:00
luigi1111
0e986a86d5 Merge pull request #5607
52cd2fa rpc: implement get_public_nodes command (xiphon)
2019-08-14 15:34:14 -05:00
luigi1111
564bb1da3a Merge pull request #5525
0605406 daemon: sort alt chains by height (moneromooo-monero)
4228ee0  daemon: add optional arguments to alt_chain_info (moneromooo-monero)
880ebfd daemon: add more chain specific info in alt_chain_info (moneromooo-monero)
2019-08-14 15:31:52 -05:00
luigi1111
1ed2c40436 Merge pull request #5498
6eb2638 functional_tests: add a 3/3 multisig test (moneromooo-monero)
2019-08-14 15:29:24 -05:00
luigi1111
2258551ef9 Merge pull request #5487
df83ed7 consensus: from v12, enforce >= 2 outputs (moneromooo-monero)
2019-08-14 15:26:55 -05:00
luigi1111
dd3b5ecb98 Merge pull request #5478
7d9b7fe functional_tests: add validate_address tests (moneromooo-monero)
2019-08-14 15:23:31 -05:00
luigi1111
e37e263fcd Merge pull request #4851
155475d Add IPv6 support (KeeJef/tewinget)
2019-08-14 15:21:47 -05:00
HomDX
a63e212f32 Docker updated dependencies cmake boost sodium cppzmq udev protobuf zmq 2019-08-14 10:47:23 +03:00
stoffu
ae7bf37ed6 simplewallet: fix arg indexing bug in set_device_name 2019-08-13 18:10:32 +09:00
stoffu
5a91b83cb4 simplewallet: add a few missing settings help text 2019-08-13 17:55:41 +09:00
Sarang Noether
4b1df4e50f Fix for biased signature nonce 2019-08-12 15:58:15 -04:00
xiphon
69465e3d83 cryptonote_protocol: fix '--no-sync', ignore new blocks and txes 2019-08-11 20:56:30 +00:00
TheQuantumPhysicist
6ca033d278 hid_error() could return a null, which causes the program to crash with
std::logic_error()
2019-08-09 21:24:48 +02:00
Jonathan Cross
e3cff3d766 Gitian build script fixes for MacOS 2019-08-06 23:18:31 +02:00
luigi1111
1bb4ae3b5e Merge pull request #5779
6da3561 Fixed error preventing build of monero-gui (honzapatCZ)
2019-08-06 15:09:45 -05:00
Monero-Pootle
de5038f387 unpushed languages from pootle (synced) 2019-08-02 10:26:22 +00:00
Thomas Winget
155475d971 Add IPv6 support
new cli options (RPC ones also apply to wallet):
  --p2p-bind-ipv6-address (default = "::")
  --p2p-bind-port-ipv6    (default same as ipv4 port for given nettype)
  --rpc-bind-ipv6-address (default = "::1")

  --p2p-use-ipv6          (default false)
  --rpc-use-ipv6          (default false)

  --p2p-require-ipv4      (default true, if ipv4 bind fails and this is
                           true, will not continue even if ipv6 bind
                           successful)
  --rpc-require-ipv4      (default true, description as above)

ipv6 addresses are to be specified as "[xx:xx:xx::xx:xx]:port" except
in the cases of the cli args for bind address.  For those the square
braces can be omitted.
2019-07-31 20:04:57 -04:00
Jonathan Cross
28c3e736fb gitian build README improvements 2019-07-30 17:30:43 +02:00
stoffu
6bb279710c daemon: print 128bit diff properly 2019-07-30 05:37:38 -07:00
Mr. Me0w
441f318180 fix building on OpenBSD, simplify Readme section
Based on a patch from @mrme0w (#5569). Fixes #5770
2019-07-30 00:34:38 +10:00
moneromooo-monero
7d9b7fee43 functional_tests: add validate_address tests 2019-07-29 14:29:20 +00:00
Lee Clagett
2a7d91523b Fixed i2p/tor tx flooding bug (white noise disabled) 2019-07-29 12:27:00 +00:00
xiphon
52cd2fa0af rpc: implement get_public_nodes command 2019-07-29 10:51:15 +00:00
Nejcraft
6da3561e2a Fixed error preventing build of monero-gui
get_attribute expects 2 values instead of 1
2019-07-28 16:03:45 +02:00
Noel O'Donnell
757b789c30 Define _WANT_SEMUN for FreeBSD to ensure union semun is defined
Build was failing on GhostBSD (FreeBSD-13.0) because `union semun` is switched off by default. Defining _WANT_SEMUN switches it on.
2019-07-27 20:39:50 +01:00
Noel O'Donnell
95bebb1fa2 Add nbproject directory to .gitignore 2019-07-26 02:27:54 +01:00
luigi1111
8adde33e01 Merge pull request #5635
03aa14e tx_sanity_check: don't print an error when not enough outs to check (monermooo-monero)
2019-07-24 14:43:00 -05:00
luigi1111
e675b5223f Merge pull request #5627
afbf05b Add option to run gitian-build.py on non-debian os (TheCharlatan)
2019-07-24 14:41:44 -05:00
luigi1111
bb37e434fc Merge pull request #5624
6b41bd8 Delete more include string.h (wepeng)
2019-07-24 14:39:40 -05:00
luigi1111
d4d5a4433d Merge pull request #5623
b8cfa92 rpc: implement set_bootstrap_daemon method (xiphon)
2019-07-24 14:38:15 -05:00
luigi1111
f2acbd6b19 Merge pull request #5621
c88d6a9 tests: fixed file exec permissions (ston1th)
2019-07-24 14:36:43 -05:00
luigi1111
61512cf798 Merge pull request #5610
068fa1c p2p: delay IGP probing on startup (moneromooo-monero)
2019-07-24 14:35:11 -05:00
luigi1111
5030b8e8aa Merge pull request #5608
c820e18 simplewallet: print errors on exceptions creating wallets (moneromooo-monero)
2019-07-24 14:33:36 -05:00
luigi1111
e05873d873 Merge pull request #5606
cf8cb68 rpc: use ip address string representation for peer::host field (xiphon)
2019-07-24 14:31:59 -05:00
luigi1111
56ce2bd7ec Merge pull request #5605
46c1d88 add 'sponsor' button on GitHub (erciccione)
2019-07-24 14:30:59 -05:00
luigi1111
c4071a00fb Merge pull request #5600
dd58057 Remember RPC version on initial connect (hyc)
2019-07-24 14:29:10 -05:00
luigi1111
015c1792c0 Merge pull request #5597
343c0b4 add a command line option to disable ZMQ server (jtgrassie)
2019-07-24 14:26:59 -05:00
luigi1111
8774555d29 Merge pull request #5595
2aa1134 daemon: display peer address type in print_cn (moneromooo-monero)
2019-07-24 14:25:51 -05:00
luigi1111
8ae2681e08 Merge pull request #5594
f074b6b device: show address on device display (ph4r05)
2019-07-24 14:24:40 -05:00
luigi1111
c62ba1d08f Merge pull request #5591
f17dcde Remove unused txs member in NOTIFY_RESPONSE_GET_OBJECT (Doy-lee)
2019-07-24 14:23:11 -05:00
luigi1111
d450c33ea4 Merge pull request #5589
cb92d5c cmake: push cmake away from boost as much as we can (moneromooo-monero)
2019-07-24 14:21:51 -05:00
luigi1111
96cda93a93 Merge pull request #5588
cd720c7 add cumulative difficulty to diff command (wowario)
2019-07-24 14:20:12 -05:00
luigi1111
9f746b72e2 Merge pull request #5585
270a3ae Unused private member m_miner_address (JesusRami)
2019-07-24 14:19:15 -05:00
luigi1111
e241a6280d Merge pull request #5582
fcfcc3a rpc: in/out peers can now return the setting's value (moneromooo-monero)
2019-07-24 14:18:09 -05:00
luigi1111
8600b3c69d Merge pull request #5576
577324a wallet_manager: omit redundant disconnect, drop unused variable (xiphon)
2019-07-24 14:16:00 -05:00
luigi1111
f1427568dc Merge pull request #5574
162c3e1 blockchain_export: allow exporting blocks.dat format from pruned (moneromooo-monero)
2019-07-24 14:14:35 -05:00
luigi1111
5cecf4138b Merge pull request #5573
c07bbd5 daemon: fix 'never seen before' time span display for peers (moneromooo-monero)
2019-07-24 14:13:33 -05:00
luigi1111
347d6b268a Merge pull request #5556
82f07c5 Close file before exit to avoid potential resource leak (JesusRami)
2019-07-24 14:11:16 -05:00
luigi1111
b333513db7 Merge pull request #5534
4c66614 expose set/get walletcache attribute functionality in wallet api (selsta)
2019-07-24 14:09:58 -05:00
luigi1111
38e0e58a95 Merge pull request #5531
9a6006b abstract_tcp_server2: move some things out of a lock (moneromooo-monero)
2019-07-24 14:08:52 -05:00
luigi1111
e579fe4ae0 Merge pull request #5530
6abaaaa remove obsolete save_graph skeleton code (moneromooo-monero)
2019-07-24 14:07:29 -05:00
luigi1111
7fc76451a5 Merge pull request #5529
de27651 use crypto::rand instead of libc rand in a few tests (moneromooo-monero)
2019-07-24 14:06:11 -05:00
luigi1111
8774384ace Merge pull request #5528
f61a315 net_utils: fix m_ssl type from time_t to bool (moneromooo-monero)
2019-07-24 14:05:18 -05:00
luigi1111
4b76656f5c Merge pull request #5524
06b8f29 blockchain: keep alternative blocks in LMDB (moneromooo-monero)
2019-07-24 14:04:16 -05:00
luigi1111
7138f9d347 Merge pull request #5514
e4d100b wallet2: don't wait a day before using new version fees (moneromooo-monero)
2019-07-24 14:00:54 -05:00
luigi1111
407683a38c Merge pull request #5513
bc94ba4 wallet: distinguish between empty and absent attributes (moneromooo-monero)
2019-07-24 13:59:19 -05:00
luigi1111
a29a89bdf4 Merge pull request #5507
2b198a6 difficulty-tests: remove spurious dependency on cryptonote_core (moneromooo-monero)
2019-07-24 13:58:13 -05:00
luigi1111
e3de4aa68b Merge pull request #5502
25a7cfd add a few checks where it seems appropriate (moneromooo-monero)
1a66a86 remove unused code (moneromooo-monero)
2019-07-24 13:57:06 -05:00
luigi1111
4c4586ca7b Merge pull request #5473
ddf7890 python-rpc: add missing getblock RPC parameters (moneromooo-monero)
2019-07-24 13:55:12 -05:00
luigi1111
2117d0680a Merge pull request #5472
2e514b8 CMakeLists.txt: suggest to update all submodules if one of them is outdated (erciccione)
2019-07-24 13:53:52 -05:00
luigi1111
d433abfe01 Merge pull request #5460
a23dbe6 simplewallet: prompt when spending more than one old out in one tx (moneromooo-monero)
2019-07-24 13:52:29 -05:00
luigi1111
705fbcfda4 Merge pull request #5457
3b9ce45 wallet_rpc_server: remove unused variable (moneromooo-monero)
2019-07-24 13:51:18 -05:00
luigi1111
e8da2f35ad Merge pull request #5451
6aa3c2f dns_checks: new helper program to check on DNSSEC lookups (moneromooo-monero)
2019-07-24 13:49:57 -05:00
luigi1111
1880c1a582 Merge pull request #5363
515ac29 p2p: store network address directly in blocked host list (moneromooo-monero)
65c4004 allow blocking whole subnets (moneromooo-monero)
2019-07-24 13:47:41 -05:00
Lee Clagett
f91a06c6d7 Dropping cppzmq dependency; adding some zmq utils 2019-07-22 06:37:16 +00:00
Jonathan Cross
f26e663a7b Gitian build (mac, linux): gzip => bzip2 2019-07-18 23:02:36 +02:00
Riccardo Spagni
97ffc6dabd Merge pull request #5763
de970334 bump version to 0.14.1.2 (Riccardo Spagni)
4850520b update checkpoints.dat hash (Riccardo Spagni)
2019-07-18 17:18:42 +02:00
Riccardo Spagni
de970334f5 bump version to 0.14.1.2 2019-07-18 16:57:30 +02:00
Riccardo Spagni
4850520b6a update checkpoints.dat hash 2019-07-18 16:54:43 +02:00
Riccardo Spagni
2a02f4c455 Merge pull request #5761
a69dc818 prep for 0.14.1.1 (Riccardo Spagni)
2019-07-17 22:40:47 +02:00
Riccardo Spagni
a69dc81844 prep for 0.14.1.1 2019-07-17 22:25:53 +02:00
Riccardo Spagni
8eb075e789 Merge pull request #5732
a96c1a46 cryptonote_protocol: drop peers we can't download from when syncing (moneromooo-monero)
ab361df2 p2p: add a few missing connection close calls (moneromooo-monero)
2019-07-17 21:18:20 +02:00
Lee Clagett
3b24b1d082 Added support for "noise" over I1P/Tor to mask Tx transmission. 2019-07-17 14:22:37 +00:00
moneromooo-monero
a12ca687e0 translations: add a ready file to control which translations to build
Some translations are committed before they're ready to be used
2019-07-16 19:25:38 +00:00
Lee Clagett
bdfc63ae4d Add ref-counted buffer byte_slice. Currently used for sending TCP data. 2019-07-16 16:30:35 +00:00
moneromooo-monero
65c4004963 allow blocking whole subnets 2019-07-16 11:35:53 +00:00
moneromooo-monero
515ac2951d p2p: store network address directly in blocked host list
rather than their string representation
2019-07-16 11:35:52 +00:00
vicsn
7a3e458881 improve tx_sanity_check clarification 2019-07-15 15:19:14 +02:00
Doyle
f17dcde451 Remove unused txs member in NOTIFY_RESPONSE_GET_OBJECT 2019-07-15 13:27:06 +10:00
luigi1111
fd3ff74164 Merge pull request #5746
3140a37 wallet_rpc_server: fix get_bulk_payments with short payment ids (moneromooo-monero)
2019-07-12 20:28:15 -05:00
luigi1111
309f2def9e Merge pull request #5738
4ee095c p2p: don't connect to more than one IP per class B if we can (moneromooo-monero)
2019-07-12 20:26:43 -05:00
luigi1111
e4e8954c04 Merge pull request #5724
c223832 keccak: guard against misaligned memory accesses on ARM (moneromooo-monero)
2019-07-12 20:23:08 -05:00
luigi1111
f9a3d7fec8 Merge pull request #5704
8f22279 Depends: Update HIDAPI version (TheCharlatan)
2019-07-12 20:21:41 -05:00
luigi1111
496bc96fe9 Merge pull request #5690
1dbfc81 Add debug targets to depends Makefile (TheCharlatan)
cbbb24c Remove clutter in depends installed packages (TheCharlatan)
496cd46 Add ncurses package for linux and darwin readline (TheCharlatan)
2019-07-12 20:17:58 -05:00
xiphon
884df82db3 wallet: provide original address for outgoing transfers 2019-07-10 13:39:18 +00:00
xiphon
45c28d8a0e build: fix OSX static libusb check and link against static libobjc 2019-07-09 22:13:59 +00:00
moneromooo-monero
b350726a5a boost: update obsolete usage of endian API 2019-07-09 15:07:13 +00:00
moneromooo-monero
3140a378da wallet_rpc_server: fix get_bulk_payments with short payment ids 2019-07-09 14:39:44 +00:00
thotbot
65f29a83c8 simplewallet: add restore_height command 2019-07-08 13:51:50 +00:00
tobtoht
0d916a667c Fix incorrectly named binding for MMS send_signer_config command
send_message_config isn't used anywhere else in the code, and it is clear from the help command that it should be named send_signer_config.
2019-07-08 09:53:07 +00:00
tobtoht
256d286215 Minor formatting fix in help set command 2019-07-06 10:12:32 +00:00
moneromooo-monero
4ee095c200 p2p: don't connect to more than one IP per class B if we can 2019-07-05 18:25:52 +00:00
moneromooo-monero
c2238327d0 keccak: guard against misaligned memory accesses on ARM
The code generated is exactly the same as the direct access
one on x86_64
2019-07-04 22:13:16 +00:00
moneromooo-monero
a96c1a46d4 cryptonote_protocol: drop peers we can't download from when syncing
Any peer that's behind us while syncing is useless to us (though
not to them). This ensures that we don't get our peer slots filled
with peers that we can't use. Once we've synced, we can connect
to them and they can then sync off us if they want.
2019-07-04 21:56:10 +00:00
moneromooo-monero
ab361df2cd p2p: add a few missing connection close calls 2019-07-04 21:56:10 +00:00
luigi1111
9d7107c870 Merge pull request #5663
5d6b43b core: fix --prune-blockchain not pruning if no blockchain exists (moneromooo-monero)
2019-07-04 14:46:37 -05:00
luigi1111
59ba0eee69 Merge pull request #5650
3c071d2 blockchain: silence an error getting blocks for pruned nodes (moneromooo-monero)
2019-07-04 14:44:05 -05:00
luigi1111
591c72613b Merge pull request #5647
2ff99fb db_lmdb: commit pruning txn at checkpoints (moneromooo-monero)
2019-07-04 14:41:36 -05:00
selene
c393e824d6 CryptonightR_JIT: fix return value on error
The value was positive rather than zero, but the caller only
checks for negative errors
2019-07-04 12:49:54 +01:00
anonimal
b2813ab5e8 README: add blockchain-based issue to "Known Issues"
Referencing https://hackerone.com/reports/417515
2019-07-04 00:34:44 +00:00
Martijn Otto
c164f9037e Remove unnecessary m_check_txin_table, fix const correctness 2019-07-03 14:39:52 +02:00
Jethro Grassie
6560bfa64c rpc: get_block_template add optional extra_nonce
Circumvents the need to create a new blockhashing blob when you already
know the data you want to set in the extra_nonce (so use this instead of
reserve_size).
2019-07-03 07:57:36 -04:00
moneromooo-monero
a2484a1d5c README: add coredumpctl info from iDunk 2019-07-02 21:08:57 +00:00
moneromooo-monero
8be5fea1de simplewallet: optional all flag to export_outputs/export_key_images 2019-07-02 19:42:28 +00:00
moneromooo-monero
bcd2da76cd miner: fix --bg-mining-enable description 2019-07-02 17:43:36 +00:00
Jethro Grassie
dc8b7a88bd zmq: MacPorts latest fix 2019-07-01 23:13:55 -04:00
moneromooo-monero
7b18e838ea unit_tests: check return values on test data parsing
Won't trigger in practice, but you never know when that code changes

Coverity 199723, 199685
2019-07-01 15:17:30 +00:00
moneromooo-monero
c8709fe52f wallet: do not print log settings when unset
Coverity 199721
2019-07-01 15:17:30 +00:00
luigi1111
633f14b976 Merge pull request #5681
037f94c Remove Xiala.net from the list of dns resolvers (tobtoht)
2019-07-01 01:12:23 -05:00
luigi1111
2db997828a Merge pull request #5678
15c699f rpc: set sanity_check_failed to false when successful (stoffu)
2019-07-01 00:22:07 -05:00
luigi1111
393c33f86c Merge pull request #5675
da3e20e tx_sanity_check: relax the median check a lot (moneromooo-monero)
2019-07-01 00:18:40 -05:00
luigi1111
58e21d0320 Merge pull request #5668
4237707 p2p: don't forget pruning seed or public RPC port when updating peers (moneromooo-monero)
2019-07-01 00:17:18 -05:00
TheCharlatan
9a5933f705 Gitian: Add version string to output tar archives
The tar archives generated by gitian are currently unversioned. This
adds either a tag name when building from a tag, or a short commit id
when building from a commit hash.
2019-06-27 22:25:20 +02:00
TheCharlatan
8f2227940d Depends: Update HIDAPI version
The macos binaries in release v0.14.1.0 were compiled with the buggy
hidapi-0.8.0-rc1 version. This resulted in users not being able to use
their Ledger with the latest cli wallet. After the patch depends now
fetches the source from the libusb hidapi repository that has taken over
maintenance of hidapi.
2019-06-27 17:32:46 +02:00
TheCharlatan
59eecc7ed1 Update icu4c to latest support version
Before this commit the icu4c repo was fetched from TheCharlatan's
repository. This step was made, because up until recently the source
code was hosted on sourceforge and their downloads proved very
unreliable. The origin is now the official icu4c repository.
Also remove some commented lines left over from development.
2019-06-27 16:31:28 +02:00
anonimal
962dd93eba README: add beginnings of "Known Issues"
Referencing https://hackerone.com/reports/592094
2019-06-26 22:32:25 +00:00
moneromooo-monero
4237707d3e p2p: don't forget pruning seed or public RPC port when updating peers
Older nodes don't pass that information around
2019-06-26 10:20:19 +00:00
TheCharlatan
afbf05bc58 Add option to run gitian-build.py on non-debian os
This commits adds the `--no-apt` flag to the gitian-build.py script.
This allows gitian builds to be run without root access and non-debian
based operating systems.
2019-06-26 01:21:59 +02:00
TheCharlatan
496cd46d80 Add ncurses package for linux and darwin readline
Readline support is now compiled with the ncurses backend.
2019-06-25 19:16:20 +02:00
Lazaridis
1a6af8032d distinguish "build status" from "build" 2019-06-25 14:59:33 +03:00
TheCharlatan
cbbb24cfe1 Remove clutter in depends installed packages
To speedup the depends cached builds, remove some some clutter from the package
files. This mainly incldues removing all the shared libraries and .la
linker files. It also gives stronger guarantees that monero only links
the static libs without any external rvalues.
2019-06-25 09:21:33 +02:00
TheCharlatan
1dbfc812e1 Add debug targets to depends Makefile
Packages can now be built individually and for each stage. This allows
easier debugging.
2019-06-25 09:20:47 +02:00
Michal vel m@lbit
1db5357c7b rpc headers fix 2019-06-25 01:49:04 +01:00
moneromooo-monero
a604241ef6 simplewallet: don't ask about mining when running a command line
This is likely to be done via a script
2019-06-22 10:50:20 +00:00
moneromooo-monero
3768db227c p2p: add a reference to Cao, Tong et al. for the last_seen changes
"Exploring the Monero Peer-to-Peer Network". https://eprint.iacr.org/2019/411
2019-06-21 10:34:33 +00:00
tobtoht
037f94c54e Remove Xiala.net from the list of dns resolvers
It is down permanently. See: https://xiala.net/
"Ende November 2018 werden alle Dienste von xiala.net abgeschaltet."
2019-06-21 09:40:10 +00:00
ston1th
7fb4edccdc cmake: fix tests generator
find_package(PythonInterp) needs to be called before the tests.
2019-06-20 18:53:44 +02:00
stoffu
15c699f0a6 rpc: set sanity_check_failed to false when successful 2019-06-20 14:32:49 +09:00
redfish
a5127cca89 tests: functional: fix python syntax 2019-06-19 21:41:37 -04:00
moneromooo-monero
da3e20ee01 tx_sanity_check: relax the median check a lot
we don't want to prevent bona fide txes, just obvious bad ones
2019-06-19 23:31:38 +00:00
moneromooo-monero
098aadf084 p2p: close the right number of connections on setting max in/out peers 2019-06-19 11:49:36 +00:00
moneromooo-monero
fcbf7b3f74 p2p: propagate out peers limit to payload handler 2019-06-19 11:49:36 +00:00
Dusan Klinec
097cca59c1 wallet_api: catch getTxKey exception
- getTxKey method throws an exception, e.g., when user declines txKey export
2019-06-19 12:09:49 +02:00
moneromooo-monero
b2bfcab618 wallet2: fix change subaddress mixup when sending pre rct outputs 2019-06-19 09:39:16 +00:00
moneromooo-monero
5d6b43b672 core: fix --prune-blockchain not pruning if no blockchain exists 2019-06-17 16:26:43 +00:00
Dusan Klinec
f074b6b571 device: show address on device display
- Trezor: support for device address display (subaddress, integrated address)
- Wallet::API support added
- Simplewallet:
  - address device [<index>]
  - address new <label>  // shows address on device also
  - integrated_address [device] <payment_id|address>  // new optional "device" arg to display also on the device
2019-06-17 16:49:04 +02:00
Dusan Klinec
64fb0f872a device: tx_key caching fixed, store recovered txkey 2019-06-17 14:53:39 +02:00
Howard Chu
8ccc30b163 Fix --restore-date usage
The wallet was ignoring --restore-height and --restore-date params and
prompting for them again.
2019-06-16 21:11:33 +01:00
moneromooo-monero
f81cb4f24b unit_tests: add more leeway to the "same distribution" check
This is an inherently probabilistic check, which occasionally fails
for a matching distribution
2019-06-16 12:18:28 +00:00
moneromooo-monero
3c071d203f blockchain: silence an error getting blocks for pruned nodes
This happens often when a pre-pruning node asks a pruned node
for data it does not have
2019-06-16 11:03:41 +00:00
Howard Chu
a182df21d0 Bans for RPC connections
Make bans control RPC sessions too. And auto-ban some bad requests.
Drops HTTP connections whenever response code is 500.
2019-06-16 11:38:08 +01:00
moneromooo-monero
2ff99fb47f db_lmdb: commit pruning txn at checkpoints
to avoid errors when the txn is too large
2019-06-15 09:50:54 +00:00
Riccardo Spagni
6335509727 Merge pull request #5641
633f1542 prep for 0.14.1 release (Riccardo Spagni)
2019-06-14 16:20:02 +02:00
Riccardo Spagni
1d5e8f461d Merge pull request #5639
2eef90d6 rpc: restrict the recent cutoff size in restricted RPC mode (moneromooo-monero)
0564da5f ensure no NULL is passed to memcpy (moneromooo-monero)
bc09766b abstract_tcp_server2: improve DoS resistance (moneromooo-monero)
1387549e serialization: check stream good flag at the end (moneromooo-monero)
a00cabd4 tree-hash: allocate variable memory on heap, not stack (moneromooo-monero)
f2152192 cryptonote: throw on tx hash calculation error (moneromooo-monero)
db2b9fba serialization: fail on read_varint error (moneromooo-monero)
68ad5481 cryptonote_protocol: fix another potential P2P DoS (moneromooo-monero)
1cc61018 cryptonote_protocol: expand basic DoS protection (moneromooo-monero)
8f66b705 cryptonote_protocol_handler: prevent potential DoS (anonimal)
39169ace epee: basic sanity check on allocation size from untrusted source (moneromooo-monero)
2019-06-14 16:19:45 +02:00
Riccardo Spagni
633f1542e2 prep for 0.14.1 release 2019-06-14 16:16:52 +02:00
moneromooo-monero
2eef90d6ef rpc: restrict the recent cutoff size in restricted RPC mode 2019-06-14 08:47:33 +00:00
moneromooo-monero
0564da5fdc ensure no NULL is passed to memcpy
NULL is valid when size is 0, but memcpy uses nonnull attributes,
so let's not poke the bear
2019-06-14 08:47:29 +00:00
moneromooo-monero
bc09766bf9 abstract_tcp_server2: improve DoS resistance 2019-06-14 08:47:26 +00:00
moneromooo-monero
1387549e90 serialization: check stream good flag at the end
just in case
2019-06-14 08:47:23 +00:00
moneromooo-monero
a00cabd4f3 tree-hash: allocate variable memory on heap, not stack
Large amounts might run out of stack

Reported by guidov
2019-06-14 08:47:20 +00:00
moneromooo-monero
f215219252 cryptonote: throw on tx hash calculation error 2019-06-14 08:47:17 +00:00
moneromooo-monero
db2b9fba65 serialization: fail on read_varint error 2019-06-14 08:47:14 +00:00
moneromooo-monero
68ad548193 cryptonote_protocol: fix another potential P2P DoS
When asking for txes in a fluffy transaction, one might ask
for the same (large) tx many times
2019-06-14 08:47:11 +00:00
moneromooo-monero
1cc61018e5 cryptonote_protocol: expand basic DoS protection
Count transactions as well
2019-06-14 08:47:08 +00:00
anonimal
8f66b7053a cryptonote_protocol_handler: prevent potential DoS
Essentially, one can send such a large amount of IDs that core exhausts
all free memory. This issue can theoretically be exploited using very
large CN blockchains, such as Monero.

This is a partial fix. Thanks and credit given to CryptoNote author
'cryptozoidberg' for collaboration and the fix. Also thanks to
'moneromooo'. Referencing HackerOne report #506595.
2019-06-14 08:47:05 +00:00
moneromooo-monero
39169ace09 epee: basic sanity check on allocation size from untrusted source
Reported by guidov
2019-06-14 08:47:01 +00:00
moneromooo-monero
69f9420489 core: do not complain about low block rate if disconnected
In that case, we'll still keep the "Monero is now disconnected
from the network" near the end of the log
2019-06-13 10:25:30 +00:00
moneromooo-monero
b712ae0af2 rpc: work around a GCC 7.4.0 (at least) bug
In static member function ‘static boost::optional<cryptonote::rpc::output_distribution_data> cryptonote::rpc::RpcHandler::get_output_distribution(const std::function<bool(long unsigned int, long unsigned int, long unsigned int, long unsigned int&, std::vector<long unsigned int>&, long unsigned int&)>&, uint64_t, uint64_t, uint64_t, const std::function<crypto::hash(long unsigned int)>&, bool, uint64_t)’:
cc1plus: warning: ‘void* __builtin_memset(void*, int, long unsigned int)’: specified size 18446744073709551536 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
2019-06-12 22:27:07 +00:00
luigi1111
7b3df89bd4 Merge pull request #5632
3a0fbea Don't use -march=native (hyc)
f8b2f25 Allow parallel make (hyc)
01ced20 Delete redundant cppzmq dependency (hyc)
1dc4ebf Use 9 digit build IDs (hyc)
2019-06-12 14:47:33 -05:00
luigi1111
a22bb544a3 Merge pull request #5552
c27d961 [depends] update openssl to 1.0.2r (who-biz)
2019-06-12 14:43:51 -05:00
Howard Chu
1dc4ebfd6c Use 9 digit build IDs 2019-06-12 16:47:33 +01:00
moneromooo-monero
03aa14ec87 tx_sanity_check: don't print an error when not enough outs to check 2019-06-12 12:06:14 +00:00
moneromooo-monero
14881094af rpc: fix get_transactions getting v1 txes from the txpool
It would try to get their prunable hash, but v1 txes don't have one
2019-06-12 11:59:13 +00:00
Howard Chu
01ced20eca Delete redundant cppzmq dependency 2019-06-12 10:20:44 +01:00
Howard Chu
f8b2f250b7 Allow parallel make 2019-06-12 09:00:50 +01:00
Howard Chu
3a0fbea1ff Don't use -march=native 2019-06-12 09:00:44 +01:00
luigi1111
fd0cf689dd Merge pull request #5619
f2f207d miner: fix double free of thread attributes (ston1th)
2019-06-11 18:17:11 -05:00
luigi1111
9c0e9c40ec Merge pull request #5618
b0a04f7 epee: fix SSL autodetect on reconnection (xiphon)
2019-06-11 18:15:48 -05:00
luigi1111
425e61ca6d Merge pull request #5616
643c86a miniupnpc: update to build on BSD (moneromooo-monero)
2019-06-11 18:14:17 -05:00
luigi1111
c48722caa9 Merge pull request #5613
2cbe756 p2p: fix GCC 9.1 crash (moneromooo-monero)
35c20c4 Fix GCC 9.1 build warnings (moneromooo-monero)
e284889 cmake: do not use -mmitigate-rop on GCC >= 9.1 (moneromooo-monero)
2019-06-11 18:13:09 -05:00
Your Name
6b41bd8eb5 Delete more include string.h 2019-06-11 16:08:42 +08:00
xiphon
b8cfa92b7e rpc: implement set_bootstrap_daemon method 2019-06-10 21:10:08 +00:00
xiphon
b0a04f7d45 epee: fix SSL autodetect on reconnection 2019-06-10 10:40:16 +00:00
ston1th
c88d6a9e5b tests: fixed file exec permissions 2019-06-09 17:00:45 +02:00
moneromooo-monero
e2848894c9 cmake: do not use -mmitigate-rop on GCC >= 9.1
It was removed, but it still accepted by the compiler, which warns
for every file
2019-06-09 09:40:47 +00:00
moneromooo-monero
35c20c4332 Fix GCC 9.1 build warnings
GCC wants operator= aand copy ctor to be both defined, or neither
2019-06-09 09:39:18 +00:00
ston1th
f2f207d635 miner: fix double free of thread attributes
issue: #5568
2019-06-09 10:51:18 +02:00
moneromooo-monero
643c86a62a miniupnpc: update to build on BSD 2019-06-08 18:38:51 +00:00
moneromooo-monero
2cbe75661c p2p: fix GCC 9.1 crash 2019-06-08 17:52:53 +00:00
moneromooo-monero
068fa1ca5c p2p: delay IGP probing on startup
We might have external access without having to do this
2019-06-06 10:33:02 +00:00
moneromooo-monero
c820e1839f simplewallet: print errors on exceptions creating wallets
Exceptions would otherwise terminate the process silently
2019-06-06 09:49:47 +00:00
xiphon
cf8cb6873a rpc: use ip address string representation for peer::host field 2019-06-04 19:33:35 +00:00
erciccione
46c1d88565 add 'sponsor' button on GitHub 2019-06-03 15:50:56 +02:00
Howard Chu
dd58057126 Remember RPC version on initial connect
Don't keep asking for it on an intact connection
Wallet is too chatty over the wire
2019-06-02 09:31:50 +01:00
Riccardo Spagni
51766d026b Merge pull request #5583
77594c4f functional_tests: fix python3 compatibility (moneromooo-monero)
2019-06-01 20:27:41 +02:00
Riccardo Spagni
62d32e955a Merge pull request #5577
f950517a core: update pruning if using --prune-blockchain on a pruned blockchain (moneromooo-monero)
2019-06-01 20:25:19 +02:00
Riccardo Spagni
7e417dd408 Merge pull request #5571
35da33be blockchain: do not try to pop blocks down to the genesis block (moneromooo-monero)
4b51f9a3 core: do not commit half constructed batch db txn (moneromooo-monero)
2019-06-01 20:22:19 +02:00
Riccardo Spagni
14d3295649 Merge pull request #5561
9bfa4c20 Fix allow any cert mode in wallet rpc when configured over rpc (Lee Clagett)
3544596f Add ssl_options support to monerod's rpc mode. (Lee Clagett)
c9aaccf3 Fix configuration bug; wallet2 --daemon-ssl-allow-any-cert now works. (Lee Clagett)
2019-06-01 20:21:45 +02:00
Riccardo Spagni
42e2ed31ae Merge pull request #5558
4ac52e52 functional_tests: fix rare get_output_distribution failure (moneromooo-monero)
2019-06-01 20:21:22 +02:00
Riccardo Spagni
df20bcdac5 Merge pull request #5557
dbecfe7d unit_tests: make the density test a bit less stringent (moneromooo-monero)
2019-06-01 20:21:03 +02:00
Riccardo Spagni
fccfc1aa25 Merge pull request #5555
b6830db2 Fix #5553 (Howard Chu)
2019-06-01 20:20:39 +02:00
Jethro Grassie
343c0b4255 add a command line option to disable ZMQ server 2019-06-01 13:03:37 -04:00
moneromooo-monero
880ebfdeea daemon: add more chain specific info in alt_chain_info 2019-06-01 15:43:52 +00:00
moneromooo-monero
2aa11341fc daemon: display peer address type in print_cn 2019-05-31 09:10:05 +00:00
moneromooo-monero
cb92d5cb2c cmake: push cmake away from boost as much as we can
Everything works better without cmake.
2019-05-30 19:38:02 +00:00
moneromooo-monero
fcfcc3ac86 rpc: in/out peers can now return the setting's value 2019-05-30 12:13:31 +00:00
wowario
cd720c7e0b add cumulative difficulty to diff command 2019-05-30 11:57:21 +03:00
Jesus Ramirez
270a3ae58b Unused private member m_miner_address 2019-05-29 10:12:47 -04:00
moneromooo-monero
77594c4f4a functional_tests: fix python3 compatibility
Also add missing bans test to the default tests
2019-05-29 11:59:48 +00:00
moneromooo-monero
f950517a08 core: update pruning if using --prune-blockchain on a pruned blockchain
Avoids a massive amount of spurious warnings if the last update before
the daemon exited was a while ago and the daemon was syncing
2019-05-28 09:12:11 +00:00
xiphon
577324a954 wallet_manager: omit redundant disconnect, drop unused variable 2019-05-27 14:40:29 +00:00
moneromooo-monero
35da33bea9 blockchain: do not try to pop blocks down to the genesis block 2019-05-26 17:11:32 +00:00
moneromooo-monero
4b51f9a34f core: do not commit half constructed batch db txn 2019-05-25 16:24:56 +00:00
moneromooo-monero
162c3e18ec blockchain_export: allow exporting blocks.dat format from pruned
We don't need any of the pruned data for this
2019-05-24 14:12:45 +00:00
moneromooo-monero
c07bbd5c04 daemon: fix "never seen before" time span display for peers 2019-05-24 10:47:36 +00:00
Lee Clagett
9bfa4c20ca Fix allow any cert mode in wallet rpc when configured over rpc 2019-05-22 00:15:14 -04:00
Lee Clagett
3544596f9f Add ssl_options support to monerod's rpc mode. 2019-05-22 00:09:11 -04:00
Lee Clagett
c9aaccf346 Fix configuration bug; wallet2 --daemon-ssl-allow-any-cert now works. 2019-05-21 15:43:27 -04:00
moneromooo-monero
4ac52e523d functional_tests: fix rare get_output_distribution failure
When the wallet auto refreshes after mining the last two blocks
but before popping them, it will then try to use outputs which
are not unlocked yet. This is really a wallet problem, which
will be fixed later.
2019-05-20 13:45:36 +00:00
moneromooo-monero
dbecfe7d5d unit_tests: make the density test a bit less stringent
It's an inherently random test
2019-05-20 10:42:50 +00:00
JesusRami
82f07c5626 Close file before exit to avoid potential resource leak 2019-05-19 05:53:50 +00:00
Howard Chu
b6830db2d4 Fix #5553
Make sure the tip hash still matches the cached block
2019-05-19 03:02:33 +01:00
who-biz
c27d96129e [depends] update openssl to 1.0.2r
- This addresses https://www.openssl.org/news/secadv/20190226.txt (CVE: 2019-1559) which impacted all versions of openssl-1.0.

Note that this does not address CVE-2019-1543 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1543), which impacts all versions of openssl 1.1 through 1.1.0j and 1.1.1b.

The above (1.1) is patched in openssl, where it was marked as low severity.  Similar issues possibly present in monero, should be looked into w.r.t. CVE-2019-1543.
2019-05-18 02:18:55 -04:00
Riccardo Spagni
5fbfa8a656 Merge pull request #5548
915f59e3 wallet: add unlock_time details to show_transfers (moneromooo-monero)
2019-05-17 13:17:40 +02:00
moneromooo-monero
915f59e3c0 wallet: add unlock_time details to show_transfers
also add a note when receiving the tx, because the user
might not notice the "XXX blocks to unlock" in the balance.
2019-05-16 21:37:05 +00:00
Riccardo Spagni
e8487fa46b Merge pull request #5539
3f612cda Changed odd bullet point to low level header (Rohaq)
af9bc4ec Used subeaders to avoid slightly wonky looking formatting (Rohaq)
1873af35 Made code block usage consistent across all .md files (Rohaq)
68103075 Updated Copyright notice (Rohaq)
39bd157f Added Table of Contents to main README.md (Rohaq)
2019-05-15 16:10:41 +02:00
Riccardo Spagni
5e80b3c3ef Merge pull request #5535
e1016bce password: do not use line input on windows (moneromooo-monero)
2019-05-15 16:06:58 +02:00
luigi1111
1607419e38 Merge pull request #5538
615f287 wallet: fix certificate fingerprint length check (moneromooo-monero)
2019-05-14 16:02:59 -05:00
luigi1111
eedf5106f5 Merge pull request #5532
46244dd wallet_rpc_server: use original addresses in destinations in get_transfers (moneromooo-monero)
2019-05-14 15:59:34 -05:00
luigi1111
14723fc6e7 Merge pull request #5527
9a7a453 net_ssl: free certs after setting them up (moneromooo-monero)
2019-05-14 15:55:25 -05:00
luigi1111
5a67ff2b32 Merge pull request #5526
1e8f3f6 rpc: fail update RPC when running offline (moneromooo-monero)
2019-05-14 15:54:10 -05:00
luigi1111
1fc1c7318c Merge pull request #5519
b8b957d cmake: fix incorrect hint for OPENSSL_ROOT_DIR (moneromooo-monero)
367bb80 mlog: default to not showing SSL errors (moneromooo-monero)
2019-05-14 15:52:32 -05:00
luigi1111
266f68be32 Merge pull request #5512
d47292e error: fix compile error on windows with depends (moneromooo-monero)
2019-05-14 15:51:14 -05:00
Rohaq
3f612cda10 Changed odd bullet point to low level header 2019-05-13 03:09:44 +01:00
Rohaq
af9bc4ec3d Used subeaders to avoid slightly wonky looking formatting 2019-05-12 05:24:30 +01:00
Rohaq
1873af35bf Made code block usage consistent across all .md files 2019-05-12 05:16:26 +01:00
Rohaq
6810307505 Updated Copyright notice 2019-05-12 05:05:41 +01:00
Rohaq
39bd157f3a Added Table of Contents to main README.md 2019-05-12 05:03:02 +01:00
moneromooo-monero
615f287aec wallet: fix certificate fingerprint length check
Fixed by crCr62U0
2019-05-11 13:05:06 +00:00
moneromooo-monero
e1016bce14 password: do not use line input on windows
This keeps its builtin command editing away

Thanks iDunk for testing on Windows
2019-05-10 18:56:50 +00:00
dsc
4c666141e3 expose set/get walletcache attribute functionality in wallet api 2019-05-10 19:24:45 +02:00
moneromooo-monero
46244dd08c wallet_rpc_server: use original addresses in destinations in get_transfers
And add them for pending transfers, where they were missing
2019-05-10 14:44:13 +00:00
moneromooo-monero
9a6006bad8 abstract_tcp_server2: move some things out of a lock
The lock is meant for the network throttle object only,
and this should help coverity get unconfused
2019-05-10 14:18:11 +00:00
moneromooo-monero
6abaaaa994 remove obsolete save_graph skeleton code 2019-05-10 14:17:18 +00:00
moneromooo-monero
de27651f80 use crypto::rand instead of libc rand in a few tests
We don't need secure randomness here, but it should shut coverity up
2019-05-10 14:15:35 +00:00
moneromooo-monero
f61a315e8b net_utils: fix m_ssl type from time_t to bool 2019-05-10 14:14:49 +00:00
moneromooo-monero
9a7a453f25 net_ssl: free certs after setting them up 2019-05-10 00:16:49 +00:00
moneromooo-monero
1e8f3f66bf rpc: fail update RPC when running offline 2019-05-09 19:14:49 +00:00
moneromooo-monero
ddf7890730 python-rpc: add missing getblock RPC parameters 2019-05-09 11:48:54 +00:00
moneromooo-monero
4228ee0b9e daemon: add optional arguments to alt_chain_info
>N limits display to alt chains with more than N blocks
-N limits display to alt chains younger than N blocks
2019-05-09 09:13:11 +00:00
moneromooo-monero
0605406714 daemon: sort alt chains by height 2019-05-09 09:12:49 +00:00
moneromooo-monero
06b8f29992 blockchain: keep alternative blocks in LMDB
Alternative blocks are cleared on startup unless --keep-alt-blocks
is passed on the command line
2019-05-08 17:36:52 +00:00
Riccardo Spagni
c0bc6d96cd Merge pull request #5509
a62e0725 net_ssl: SSL config tweaks for compatibility and security (moneromooo-monero)
2019-05-07 17:39:20 +02:00
Riccardo Spagni
9573a2bfd3 Merge pull request #5506
7d5cc035 cmake: fix some case of "backtrace lib not found" breaking (moneromooo-monero)
2019-05-07 17:37:46 +02:00
Riccardo Spagni
f64f59627d Merge pull request #5510
e9809382 fix wide difficulty conversion with some versions of boost (moneromooo-monero)
2019-05-07 17:36:27 +02:00
Riccardo Spagni
97cb1c9436 Merge pull request #5508
1c44e658 wallet2: reject standalone short payment IDs in monero: URI API (moneromooo-monero)
2019-05-07 17:35:28 +02:00
Riccardo Spagni
a22a8b0f2b Merge pull request #5505
7e5158aa mnemonics: fix 4 byte UTF-8 rewriting (moneromooo-monero)
2019-05-07 17:34:53 +02:00
Riccardo Spagni
c20221f290 Merge pull request #5503
ccc1e311 wallet_rpc_server: reject standalone short payment id in address book (moneromooo-monero)
2019-05-07 17:34:16 +02:00
Riccardo Spagni
ebb1c03e8c Merge pull request #5501
b4ca72dd wallet2: fix infinite loop picking outputs in corner case (moneromooo-monero)
2019-05-07 17:32:33 +02:00
Riccardo Spagni
2d04b0e500 Merge pull request #5499
a4c4a2d8 blockchain: keep a rolling long term block weight median (moneromooo-monero)
2019-05-07 17:31:45 +02:00
Riccardo Spagni
9d91301faa Merge pull request #5496
0eb0d6b8 rpc: improve get_output_distribution (moneromooo-monero)
2019-05-07 17:30:27 +02:00
Riccardo Spagni
cf8319602d Merge pull request #5481
28a7d315 p2p: do not send last_seen timestamp to peers (moneromooo-monero)
2019-05-07 17:29:42 +02:00
Riccardo Spagni
123df0eaf7 Merge pull request #5419
f29fecd5 build: debug and test builds via contrib (Dusan Klinec)
2019-05-07 17:26:32 +02:00
moneromooo-monero
a62e072571 net_ssl: SSL config tweaks for compatibility and security
add two RSA based ciphers for Windows/depends compatibility
also enforce server cipher ordering
also set ECDH to auto because vtnerd says it is good :)

When built with the depends system, openssl does not include any
cipher on the current whitelist, so add this one, which fixes the
problem, and does seem sensible.
2019-05-07 10:01:42 +00:00
moneromooo-monero
367bb80ae7 mlog: default to not showing SSL errors 2019-05-06 07:38:52 +00:00
moneromooo-monero
b8b957deaa cmake: fix incorrect hint for OPENSSL_ROOT_DIR
If you use a ; separated set of include and lib directories,
it'll detect the headers in /usr/include and the libraries
where this points to.
2019-05-06 07:38:42 +00:00
moneromooo-monero
e4d100b062 wallet2: don't wait a day before using new version fees
30 blocks should be more than enough to drain the txpool of
transactions made with the old fee scheme
2019-05-02 18:00:25 +00:00
moneromooo-monero
bc94ba4d14 wallet: distinguish between empty and absent attributes 2019-05-02 13:00:08 +00:00
moneromooo-monero
d47292eb3d error: fix compile error on windows with depends
state_not_recoverable is not defined there
2019-05-02 10:14:09 +00:00
moneromooo-monero
a4c4a2d8aa blockchain: keep a rolling long term block weight median 2019-05-02 09:47:01 +00:00
Riccardo Spagni
2bf855e3cd Merge pull request #5497
a59c2746 unit_tests: fix crash in debug in output_distribution test (moneromooo-monero)
2019-05-02 11:30:51 +02:00
Riccardo Spagni
77f9bfa4d5 Merge pull request #5493
5e0da6fb change SSL certificate fingerprint whitelisting from SHA1 to SHA-256 (moneromooo-monero)
2019-05-02 11:30:28 +02:00
Riccardo Spagni
52eb454d7b Merge pull request #5491
98fb98f9 wallet_rpc_server: adding missing return on error in set_daemon (moneromooo-monero)
9074c0d8 wallet_rpc_server: return false on error in set_log_categories (moneromooo-monero)
968848a7 wallet_rpc_server: fix crash in validate_address if no wallet is loaded (moneromooo-monero)
2019-05-02 11:30:11 +02:00
Riccardo Spagni
efd2412e77 Merge pull request #5489
64983fce wallet2: default to trying to keep 5 outputs of 2+ monero (moneromooo-monero)
2019-05-02 11:29:25 +02:00
Riccardo Spagni
17f31c3d51 Merge pull request #5484
36ced067 functional_tests: flush stdout before popening new process (moneromooo-monero)
2019-05-02 11:29:12 +02:00
Riccardo Spagni
08ab0cbdda Merge pull request #5476
0aaf5e2a device/trezor: device sorting and filtering improved (Dusan Klinec)
2019-05-02 11:28:51 +02:00
moneromooo-monero
da694d418a functional_tests: add tests for pending/out transfer addresses 2019-05-02 09:04:42 +00:00
moneromooo-monero
914b1061d4 wallet_rpc_server: use original addresses in destinations in get_transfers
And add them for pending transfers, where they were missing
2019-05-02 09:04:39 +00:00
moneromooo-monero
e980938210 fix wide difficulty conversion with some versions of boost 2019-05-01 19:58:09 +00:00
moneromooo-monero
1c44e65863 wallet2: reject standalone short payment IDs in monero: URI API 2019-05-01 18:41:39 +00:00
moneromooo-monero
2b198a6875 difficulty-tests: remove spurious dependency on cryptonote_core 2019-05-01 10:35:33 +00:00
moneromooo-monero
7d5cc0358b cmake: fix some case of "backtrace lib not found" breaking
It fixes at least one case of building on ARM with Docker
2019-05-01 10:11:41 +00:00
moneromooo-monero
7e5158aa97 mnemonics: fix 4 byte UTF-8 rewriting 2019-04-30 21:10:54 +00:00
moneromooo-monero
ccc1e311dc wallet_rpc_server: reject standalone short payment id in address book 2019-04-30 21:07:37 +00:00
moneromooo-monero
1a66a86f94 remove unused code 2019-04-29 20:52:40 +00:00
moneromooo-monero
25a7cfdb4a add a few checks where it seems appropriate 2019-04-29 20:52:40 +00:00
moneromooo-monero
b4ca72dde9 wallet2: fix infinite loop picking outputs in corner case
If we have fewer outputs available on the chain than what we
require, but the output we're spending already has a ring,
it would loop picking outputs randomly, but never find enough.
Also tune logs for better debugging this kind of thing.
2019-04-29 10:02:20 +00:00
moneromooo-monero
6eb2638463 functional_tests: add a 3/3 multisig test 2019-04-26 15:35:42 +00:00
moneromooo-monero
5e0da6fb68 change SSL certificate fingerprint whitelisting from SHA1 to SHA-256
SHA1 is too close to bruteforceable
2019-04-26 11:37:15 +00:00
moneromooo-monero
98fb98f93f wallet_rpc_server: adding missing return on error in set_daemon 2019-04-25 23:35:37 +00:00
moneromooo-monero
9074c0d8cf wallet_rpc_server: return false on error in set_log_categories
Reported by SmajeNz0
2019-04-25 23:35:37 +00:00
moneromooo-monero
968848a77b wallet_rpc_server: fix crash in validate_address if no wallet is loaded
Reported by SmajeNz0
2019-04-25 23:35:37 +00:00
moneromooo-monero
a59c27465b unit_tests: fix crash in debug in output_distribution test
updating the block size limit needs recent block sizes,
so we feed it dummy ones
2019-04-25 22:49:10 +00:00
moneromooo-monero
0eb0d6b802 rpc: improve get_output_distribution
It can now handle small reorgs without having to rescan the
whole blockchain.

Also add a test for it.
2019-04-25 16:49:29 +00:00
Dusan Klinec
0aaf5e2ac8 device/trezor: device sorting and filtering improved
- Trezor type detection refactored, T1 disabled (was enabled before which was a bug)
- Sort connected devices by env TREZOR_PATH
  - Compatibility with Trezor ecosystem using TREZOR_PATH env var
  - Enables to pick particular Trezor to use in GUI as we don't have the multi-device selection yet
- Dump all detected devices to log for better debugging / troubleshooting
2019-04-25 00:31:10 +02:00
Riccardo Spagni
581994b61c Merge pull request #5486
4be18df3 tx_sanity_check: relax uniqueness check a bit (moneromooo-monero)
b386ae57 wallet2: add missing "sanity check failed" reason message (moneromooo-monero)
2019-04-24 22:41:40 +02:00
Riccardo Spagni
2e2ee3d823 Merge pull request #5485
c519d1df wallet2: fix wrong change being recorded in sweep_all (moneromooo-monero)
2019-04-24 22:41:18 +02:00
Riccardo Spagni
973405018f Merge pull request #5483
c0736643 unit_tests: don't delete log file on windows, it will fail (moneromooo-monero)
2019-04-24 22:40:40 +02:00
Riccardo Spagni
5d09e39174 Merge pull request #5482
9956500d net_helper: clear recv buffer on eof (moneromooo-monero)
2019-04-24 22:40:12 +02:00
Riccardo Spagni
2aa7fbd1d6 Merge pull request #5480
7af49ef0 daemonizer: add --non-interactive for windows (moneromooo-monero)
2019-04-24 22:39:50 +02:00
Riccardo Spagni
d86dd5fa7c Merge pull request #5479
edbae2d0 levin_protocol_handler_async: tune down preallocation a fair bit (moneromooo-monero)
2019-04-24 22:39:30 +02:00
Riccardo Spagni
edcb0cfff2 Merge pull request #5477
97e1c927 wallet: fix key image computation signaling to the device (Dusan Klinec)
2019-04-24 22:38:36 +02:00
Riccardo Spagni
343da95812 Merge pull request #5474
7a9316eb serialization: set default log category (moneromooo-monero)
2019-04-24 22:38:07 +02:00
Riccardo Spagni
fd7ed93526 Merge pull request #5470
31a9aa83 wallet_rpc_server: add block_height and frozen to incoming_transfers (moneromooo-monero)
2019-04-24 22:37:43 +02:00
Riccardo Spagni
eb1da46ac1 Merge pull request #5467
aba2b2e7 functional_tests: reset blockchain on test start (moneromooo-monero)
375fde94 hardfork: fix off by one updating fork index after popping (moneromooo-monero)
2019-04-24 22:37:16 +02:00
moneromooo-monero
28a7d31565 p2p: do not send last_seen timestamp to peers
This can be used for fingerprinting and working out the
network topology.

Instead of sending the first N (which are sorted by last
seen time), we sent a random subset of the first N+N/5,
which ensures reasonably recent peers are used, while
preventing repeated calls from deducing new entries are
peers the target node just connected to.

The list is also randomly shuffled so the original set of
timestamps cannot be approximated.
2019-04-24 17:56:12 +00:00
moneromooo-monero
1a93aa4b79 functional_tests: add get_fee_estimate to blockchain test 2019-04-24 13:27:35 +00:00
moneromooo-monero
64983fcee4 wallet2: default to trying to keep 5 outputs of 2+ monero
In the case where previously a second unneeded output would be
added to a transaction. This should help *some* of the cases
where outputs are slowly being consolidated, leading to the
whole balance being locked when sending monero.
2019-04-24 12:25:43 +00:00
moneromooo-monero
df83ed74e4 consensus: from v12, enforce >= 2 outputs 2019-04-23 22:09:35 +00:00
moneromooo-monero
4be18df32a tx_sanity_check: relax uniqueness check a bit
It triggers easily on testnet
2019-04-23 21:59:57 +00:00
moneromooo-monero
b386ae5725 wallet2: add missing "sanity check failed" reason message 2019-04-23 21:59:57 +00:00
moneromooo-monero
c519d1df34 wallet2: fix wrong change being recorded in sweep_all
leading to the sanity check triggering
2019-04-23 21:58:55 +00:00
moneromooo-monero
36ced06727 functional_tests: flush stdout before popening new process 2019-04-23 18:22:09 +00:00
moneromooo-monero
c07366430a unit_tests: don't delete log file on windows, it will fail 2019-04-23 15:27:54 +00:00
moneromooo-monero
6aa3c2f303 dns_checks: new helper program to check on DNSSEC lookups 2019-04-23 15:20:45 +00:00
moneromooo-monero
9956500d14 net_helper: clear recv buffer on eof 2019-04-23 13:23:17 +00:00
moneromooo-monero
7af49ef0c2 daemonizer: add --non-interactive for windows
The RPC functional tests need it

Thanks to iDunk for debugging/testing
2019-04-23 00:26:51 +00:00
moneromooo-monero
edbae2d05b levin_protocol_handler_async: tune down preallocation a fair bit
It can allocate a lot when getting a lot of connections
(in particular, the stress test on windows apparently pushes
that memory to actual use, rather than just allocated)
2019-04-22 22:35:32 +00:00
Dusan Klinec
97e1c9278c wallet: fix key image computation signaling to the device 2019-04-22 16:14:50 +02:00
moneromooo-monero
7a9316ebef serialization: set default log category 2019-04-21 09:26:25 +00:00
erciccione
2e514b8faa CMakeLists.txt: suggest to update all submodules if one of them is outdated 2019-04-20 15:26:05 +02:00
moneromooo-monero
aba2b2e7a2 functional_tests: reset blockchain on test start 2019-04-20 11:28:19 +00:00
moneromooo-monero
31a9aa83af wallet_rpc_server: add block_height and frozen to incoming_transfers 2019-04-20 08:44:09 +00:00
moneromooo-monero
375fde9454 hardfork: fix off by one updating fork index after popping 2019-04-20 00:05:35 +00:00
Riccardo Spagni
475481949a Merge pull request #5466
55aae6a9 Fix socks tests in windows and handle errors better (Lee Clagett)
2019-04-19 15:49:12 +02:00
Lee Clagett
55aae6a9a3 Fix socks tests in windows and handle errors better 2019-04-19 01:10:02 -04:00
Riccardo Spagni
ef1f1c5314 Merge pull request #5465
3e50a9e8 functional_tests: detect requests python module (moneromooo-monero)
2019-04-18 22:14:44 +02:00
Riccardo Spagni
71c6b24893 Merge pull request #5464
0f52fe4c Windows: work around a boost 1.70 and cmake SNAFU (iDunk5400)
b414b69f Windows: fix a build error in MSYS2 with boost 1.70.0 (iDunk5400)
2019-04-18 22:04:11 +02:00
Riccardo Spagni
2267f110b2 Merge pull request #5463
fbbe75d7 device/trezor: button request callback fix (Dusan Klinec)
2019-04-18 22:03:30 +02:00
Riccardo Spagni
108544deb2 Merge pull request #5461
5d0dcc18 add translations for it, fr, ja, sv from Pootle and refresh template .ts file (Monero-Pootle)
2019-04-18 22:02:54 +02:00
Riccardo Spagni
9b10072f7b Merge pull request #5462
b672d4d6 epee: use boost/timer/timer.hpp, boost/timer.hpp is deprecated (moneromooo-monero)
2019-04-18 22:02:14 +02:00
Riccardo Spagni
950f79dc03 Merge pull request #5389
588e6700 simplewallet: fix output representation offset (moneromooo-monero)
35e0a968 wallet2: "output lineup" fake out selection (moneromooo-monero)
2019-04-18 22:01:51 +02:00
Riccardo Spagni
2e342d8df6 Merge pull request #5458
84047cb7 wallet_rpc_server: add unlocked field to incoming_transfers output (moneromooo-monero)
2019-04-18 22:01:22 +02:00
Riccardo Spagni
b8f1709684 Merge pull request #5456
58eade68 simplewallet: add the change amount to the prompt when locking (moneromooo-monero)
2019-04-18 22:01:03 +02:00
Riccardo Spagni
55807141f2 Merge pull request #5453
71102267 wallet_rpc_server: set suggested_confirmations_threshold for pool txes (moneromooo-monero)
2019-04-18 21:59:01 +02:00
moneromooo-monero
3e50a9e8fc functional_tests: detect requests python module 2019-04-18 19:33:01 +00:00
iDunk5400
0f52fe4c9c Windows: work around a boost 1.70 and cmake SNAFU
Boost got upgraded to 1.70.0 in MSYS2. As a result, cmake (v3.13.4 as of this commit) can not configure boost properly, and cmake configuration fails as a result. This is a workaround as per https://gitlab.kitware.com/cmake/cmake/issues/18865
2019-04-18 19:41:14 +02:00
Dusan Klinec
fbbe75d75f device/trezor: button request callback fix 2019-04-18 18:04:54 +02:00
moneromooo-monero
588e670089 simplewallet: fix output representation offset 2019-04-18 15:14:41 +00:00
moneromooo-monero
35e0a968bd wallet2: "output lineup" fake out selection
Based on python code by sarang:
https://github.com/SarangNoether/skunkworks/blob/outputs/outputs/simulate.py
2019-04-18 15:14:38 +00:00
moneromooo-monero
b672d4d6e5 epee: use boost/timer/timer.hpp, boost/timer.hpp is deprecated 2019-04-18 15:12:34 +00:00
iDunk5400
b414b69f5c Windows: fix a build error in MSYS2 with boost 1.70.0 2019-04-18 17:00:13 +02:00
Monero-Pootle
5d0dcc1805 add translations for it, fr, ja, sv from Pootle and refresh template .ts file 2019-04-18 14:39:03 +00:00
moneromooo-monero
a23dbe69f6 simplewallet: prompt when spending more than one old out in one tx 2019-04-18 12:46:03 +00:00
moneromooo-monero
84047cb729 wallet_rpc_server: add unlocked field to incoming_transfers output 2019-04-17 15:30:49 +00:00
moneromooo-monero
3b9ce453a9 wallet_rpc_server: remove unused variable 2019-04-17 11:25:33 +00:00
moneromooo-monero
58eade689c simplewallet: add the change amount to the prompt when locking 2019-04-17 11:05:18 +00:00
Riccardo Spagni
7973fb6a69 Merge pull request #5415
299052bc Remove unneeded SFINAE on check_tx/block verification in core_tests (Doyle)
2019-04-17 08:28:16 +02:00
Riccardo Spagni
e9464eb5e3 Merge pull request #5413
5fafb90e testdb: add override keyword where missing (stoffu)
2019-04-17 08:27:36 +02:00
Riccardo Spagni
4609b36608 Merge pull request #5455
e3dea478 unit_tests: undo is_blocked implementation factoring (moneromooo-monero)
2019-04-17 08:27:24 +02:00
Riccardo Spagni
a8a445922f Merge pull request #5454
b0a34668 daemon: fix absolute/relative log file test for windows (moneromooo-monero)
2019-04-17 08:27:12 +02:00
stoffu
5fafb90e91 testdb: add override keyword where missing
and delete obsolete BlockchainBDB::get_tx_output_indices along the way
2019-04-17 10:26:25 +09:00
Doyle
299052bca3 Remove unneeded SFINAE on check_tx/block verification in core_tests 2019-04-17 10:43:14 +10:00
moneromooo-monero
e3dea47859 unit_tests: undo is_blocked implementation factoring
The is_host_blocked method is not on master yet
2019-04-16 22:23:15 +00:00
moneromooo-monero
b0a346689b daemon: fix absolute/relative log file test for windows 2019-04-16 22:15:36 +00:00
moneromooo-monero
7110226794 wallet_rpc_server: set suggested_confirmations_threshold for pool txes 2019-04-16 20:59:57 +00:00
Riccardo Spagni
37c4f1b365 Merge pull request #5430
294e858d wallet_rpc_server: add set_log_level/set_log_categories (moneromooo-monero)
2019-04-16 22:51:05 +02:00
moneromooo-monero
294e858d57 wallet_rpc_server: add set_log_level/set_log_categories 2019-04-16 20:50:15 +00:00
Riccardo Spagni
1b092f3a44 Merge pull request #5452
c30d93fc rpc: add a pruned bool to the prune_blockchain call (moneromooo-monero)
2019-04-16 22:48:50 +02:00
Riccardo Spagni
810dd0a5f6 Merge pull request #5450
926e0472 simplewallet: add another warning about long payment ids (moneromooo-monero)
2019-04-16 22:48:18 +02:00
Riccardo Spagni
ba1b6d36c4 Merge pull request #5447
02c01c0b Add Brewfile to allow for an even easier management of dependencies (Florian)
2019-04-16 22:47:56 +02:00
Riccardo Spagni
68d131615e Merge pull request #5448
d009f6dd rpc: fix get_block_hashes.bin from wallet on pruned blockchain (moneromooo-monero)
bb0ef5b1 blockchain: lock the blockchain while pruning (moneromooo-monero)
2019-04-16 22:47:36 +02:00
Riccardo Spagni
c8ce4217cf Merge pull request #5445
b18f0b10 wallet: new --offline option (moneromooo-monero)
2019-04-16 22:46:53 +02:00
Riccardo Spagni
f376cd5605 Merge pull request #5446
7d79222f daemon: remove debug info (moneromooo-monero)
8fec0f98 functional_tests: add sweep_single test (moneromooo-monero)
9880d61b wallet_rpc_server: remove unused code (moneromooo-monero)
8a61b33d rpc: omit irrelevant fields for pool txes in gettransactions (moneromooo-monero)
56508524 rpc: add relayed in get_transaction output (moneromooo-monero)
82e510f1 rpc: set default log category in core_rpc_server.h (moneromooo-monero)
2019-04-16 22:46:29 +02:00
Riccardo Spagni
e98cbfbdfe Merge pull request #5444
6643b047 Increment m_threads_active when mining thread starts (Doyle)
2019-04-16 22:45:42 +02:00
Riccardo Spagni
c5f64bf170 Merge pull request #5443
07dd5536 hardfork: remove "no hf version db" recreation check (moneromooo-monero)
2019-04-16 22:45:23 +02:00
Riccardo Spagni
213fd5007d Merge pull request #5442
428249c5 easylogging++: minimal stdout logging format (moneromooo-monero)
2019-04-16 22:45:02 +02:00
Riccardo Spagni
8af1a89e4c Merge pull request #5441
b3648232 daemon: fix ratio not being floating point (moneromooo-monero)
e1b097b9 core_rpc_server: remove dummy assigning int to bool (moneromooo-monero)
2019-04-16 22:44:41 +02:00
Riccardo Spagni
1fc20ba48a Merge pull request #5439
f26e0b5d cryptonote_protocol: warn when the last connection goes (moneromooo-monero)
2019-04-16 22:44:19 +02:00
Riccardo Spagni
ac8e2a7819 Merge pull request #5437
acb68dba bulletproofs: cut down on keyV allocations (moneromooo-monero)
2019-04-16 22:44:00 +02:00
Riccardo Spagni
e9527f5eed Merge pull request #5436
61d63900 net_helper: avoid unnecessary memcpy (moneromooo-monero)
2019-04-16 22:43:15 +02:00
Riccardo Spagni
b0472c43a1 Merge pull request #5435
5140c15e daemon: if a log file has a /, interpret it from the cwd (moneromooo-monero)
2019-04-16 22:42:26 +02:00
Riccardo Spagni
1f01070a0c Merge pull request #5434
ccb996af rpc: new sanity check on relayed transactions (moneromooo-monero)
2019-04-16 22:41:40 +02:00
Riccardo Spagni
c603044398 Merge pull request #5432
c3cf930f abstract_tcp_server2: fix timeout on exit (moneromooo-monero)
2019-04-16 22:41:18 +02:00
Riccardo Spagni
8deee24cbb Merge pull request #5431
34f8c237 simplewallet: fix warning about long payment id using the old option (moneromooo-monero)
2019-04-16 22:40:34 +02:00
Riccardo Spagni
35b3d754e8 Merge pull request #5429
bcb86ae6 wallet_rpc_server: fix inconsistent wallet caches on reload (moneromooo-monero)
2019-04-16 22:39:37 +02:00
Riccardo Spagni
45e1f7c292 Merge pull request #5428
f3425f8d rpc.getblocktemplate: set reserved_offset to zero when reserve_size==0 (stoffu)
2019-04-16 22:39:18 +02:00
Riccardo Spagni
8d16e92dcb Merge pull request #5425
58585986 p2p: fix integer overflow in host bans (moneromooo-monero)
2019-04-16 22:38:56 +02:00
Riccardo Spagni
a1ea611e24 Merge pull request #5424
93bb2f48 ringct: prevent use of full ringct signatures for more than one input (moneromooo-monero)
2019-04-16 22:38:32 +02:00
Riccardo Spagni
8966ac314c Merge pull request #5422
2c221d1b wallet2: update estimate_rct_tx_size for smaller rct proofs (moneromooo-monero)
2019-04-16 22:38:11 +02:00
Riccardo Spagni
96696d1e75 Merge pull request #5418
374f388d wallet_rpc_server: add a all flag to export_outputs (moneromooo-monero)
2019-04-16 22:37:52 +02:00
Riccardo Spagni
0d2aaac15b Merge pull request #5414
e9fac29a unit_tests/long_term_block_weight: some tweaks that seem to make more sense (stoffu)
467f4c7e tests/block_weight: use integer division when computing median (stoffu)
815d08dc tests/block_weight: remove unused MULTIPLIER_SMALL (stoffu)
661f1fb8 blockchain: remove unused calc of short_term_constraint (stoffu)
2019-04-16 22:37:02 +02:00
Riccardo Spagni
2b81c5b928 Merge pull request #5412
f4f1471c readme: add some more instructions for translators (erciccione)
2019-04-16 22:35:35 +02:00
Riccardo Spagni
613588e1a8 Merge pull request #5410
d4a78c74 build: libusb static compilation fix (Dusan Klinec)
2019-04-16 22:35:16 +02:00
Riccardo Spagni
45a4145f87 Merge pull request #5409
ac874e2d tests: fix test_options initialization error (Dusan Klinec)
2019-04-16 22:34:30 +02:00
Riccardo Spagni
c41d02696c Merge pull request #5407
66d73d2f easylogging++: update to v9.96.7 (moneromooo-monero)
2019-04-16 22:34:12 +02:00
Riccardo Spagni
313a56a2da Merge pull request #5406
bea1918a blockchain_import: error out if preparing to handle blocks fails (moneromooo-monero)
2019-04-16 22:32:27 +02:00
Riccardo Spagni
ce2f46f76b Merge pull request #5405
ffdbcfb6 core: don't check block rate nor fork time in regtest mode (moneromooo-monero)
2019-04-16 22:32:06 +02:00
Riccardo Spagni
2fa31a715c Merge pull request #5404
d34599da wallet: add number of blocks required for the balance to fully unlock (moneromooo-monero)
2019-04-16 22:31:13 +02:00
Riccardo Spagni
46c477ab30 Merge pull request #5400
5e673c03 blockchain_db: fix db txn ending too early (moneromooo-monero)
2019-04-16 22:30:40 +02:00
moneromooo-monero
c30d93fcd9 rpc: add a pruned bool to the prune_blockchain call 2019-04-16 15:15:14 +00:00
moneromooo-monero
926e047288 simplewallet: add another warning about long payment ids 2019-04-16 10:11:02 +00:00
moneromooo-monero
7d79222f5c daemon: remove debug info 2019-04-15 22:32:09 +00:00
moneromooo-monero
d009f6dd61 rpc: fix get_block_hashes.bin from wallet on pruned blockchain
We want to get all blocks here, even pruned ones
2019-04-15 22:27:15 +00:00
moneromooo-monero
bb0ef5b1f2 blockchain: lock the blockchain while pruning 2019-04-15 22:27:12 +00:00
Florian
02c01c0bd8 Add Brewfile to allow for an even easier management of dependencies 2019-04-15 14:46:26 +02:00
moneromooo-monero
b18f0b1051 wallet: new --offline option
It will avoid connecting to a daemon (so useful for cold signing
using a RPC wallet), and not perform DNS queries.
2019-04-15 09:14:12 +00:00
moneromooo-monero
8fec0f9831 functional_tests: add sweep_single test 2019-04-15 09:13:31 +00:00
moneromooo-monero
9880d61b98 wallet_rpc_server: remove unused code 2019-04-15 09:13:12 +00:00
moneromooo-monero
8a61b33d8e rpc: omit irrelevant fields for pool txes in gettransactions 2019-04-15 09:11:54 +00:00
moneromooo-monero
565085245a rpc: add relayed in get_transaction output 2019-04-15 09:11:50 +00:00
moneromooo-monero
82e510f15e rpc: set default log category in core_rpc_server.h 2019-04-15 09:10:29 +00:00
Riccardo Spagni
1f809e7485 Merge pull request #5440
b6420e12 lmdb: catch non-LMDB negative errors before strerror (moneromooo-monero)
2019-04-15 09:23:09 +02:00
Riccardo Spagni
e89aa2ec56 Merge pull request #5421
e78cea74 rpc: fix off by one in get_height (moneromooo-monero)
2019-04-15 09:22:50 +02:00
Riccardo Spagni
16b7665533 Merge pull request #5417
8df82707 Fix linker issues using easylogging (Martijn Otto)
2019-04-15 09:22:27 +02:00
Riccardo Spagni
64a4aa4f60 Merge pull request #5408
c4f8a8a6 build fix: combinator.h stdexcept missing include (Dusan Klinec)
2019-04-15 09:21:00 +02:00
Riccardo Spagni
9bd0983d5e Merge pull request #5402
cbf32241 rpc: make wide_difficulty hexadecimal (moneromooo-monero)
2019-04-15 09:18:10 +02:00
Riccardo Spagni
e31559d319 Merge pull request #5398
41901b8d device/trezor: env-configurable ports (Dusan Klinec)
c97a1f79 tests: trezor tests fixes and improvements (Dusan Klinec)
2019-04-15 09:17:47 +02:00
Riccardo Spagni
8bf0a3f123 Merge pull request #5396
b40392fb wallet2: add --no-dns flag (moneromooo-monero)
2019-04-15 09:17:26 +02:00
Riccardo Spagni
98f4c8af98 Merge pull request #5395
15f27c80 wallet2: support multi out txes without change in sanity check (moneromooo-monero)
2019-04-15 09:17:07 +02:00
Riccardo Spagni
07c1734985 Merge pull request #5393
c5d3ea2f tests: add a few try/catch in main to shut coverity up (moneromooo-monero)
2019-04-15 09:14:48 +02:00
Riccardo Spagni
89b8ecfc7c Merge pull request #5392
a2195b9b crypto: replace rand<T>()%N idiom with unbiased rand_idx(N) (stoffu)
2019-04-15 09:14:28 +02:00
Riccardo Spagni
e46dc055d1 Merge pull request #5369
e72c2c5d do not build in parallel as it is non-deterministic (Jane Mercer)
2019-04-15 09:13:48 +02:00
Riccardo Spagni
3f46c5b4e1 Merge pull request #5365
383c38fd fix init warning on whatever compiler version (italocoin)
2019-04-15 09:12:50 +02:00
Riccardo Spagni
37aea526a9 Merge pull request #5355
c68fe787 device/trezor: add button pressed request (Dusan Klinec)
827f52ad wallet: API changes to enable passphrase entry (Dusan Klinec)
2019-04-15 09:12:20 +02:00
Doyle
6643b04737 Increment m_threads_active when mining thread starts 2019-04-15 13:08:33 +10:00
moneromooo-monero
07dd55363c hardfork: remove "no hf version db" recreation check
This is now obsolete, and this removes the warning on startup
on a new db that confuses some people
2019-04-14 10:34:29 +00:00
moneromooo-monero
f26e0b5d11 cryptonote_protocol: warn when the last connection goes 2019-04-14 10:30:01 +00:00
moneromooo-monero
428249c5d1 easylogging++: minimal stdout logging format
It's a bit of a hack, but doing it right would need a lot
of changes to the easylogging++ source.
2019-04-14 09:43:05 +00:00
moneromooo-monero
b364823286 daemon: fix ratio not being floating point
Coverity 197648
2019-04-14 09:26:12 +00:00
moneromooo-monero
e1b097b99b core_rpc_server: remove dummy assigning int to bool
Coverity 197653
2019-04-14 09:26:12 +00:00
moneromooo-monero
b6420e12a9 lmdb: catch non-LMDB negative errors before strerror
That should hopefully shut coverity up
2019-04-14 09:19:04 +00:00
moneromooo-monero
5e673c03fe blockchain_db: fix db txn ending too early
The db txn in add_block ending caused the entire overarching
batch txn to stop.
Also add a new guard class so a db txn can be stopped in the
face of exceptions.

Also use a read only db txn in init when the db itself is
read only, and do not save the max tx size in that case.
2019-04-14 08:35:38 +00:00
moneromooo-monero
acb68dbaa9 bulletproofs: cut down on keyV allocations 2019-04-13 22:37:08 +00:00
moneromooo-monero
61d63900b9 net_helper: avoid unnecessary memcpy 2019-04-13 13:24:58 +00:00
moneromooo-monero
5140c15e56 daemon: if a log file has a /, interpret it from the cwd
rather than from data dir where it normally is.

It makes things like --log-file ./foo.log behave as you'd expect.
2019-04-13 11:21:08 +00:00
luigi1111
37345921ec Merge pull request #5423
8f1fe45 simplewallet: fix merge error with new welcome command (moneromooo-monero)
2019-04-12 18:28:53 -04:00
moneromooo-monero
ccb996afc6 rpc: new sanity check on relayed transactions
This will weed out some transactions with silly rings
2019-04-12 20:22:09 +00:00
moneromooo-monero
c3cf930f75 abstract_tcp_server2: fix timeout on exit
When closing connections due to exiting, the IO service is
already gone, so the data exchange needed for a gracious SSL
shutdown cannot happen. We just close the socket in that case.
2019-04-12 18:13:31 +00:00
moneromooo-monero
34f8c237c2 simplewallet: fix warning about long payment id using the old option 2019-04-12 14:09:26 +00:00
moneromooo-monero
bcb86ae651 wallet_rpc_server: fix inconsistent wallet caches on reload
Loading the same wallet as the currently loaded one would autosave
the current state after loading it, leading to some kind of rollback
effect. We now save before loading to avoid this. If loading fails,
it means the current wallet will be saved (or maybe not, depending
on where the failure occurs: most of the sanity checks occur before
saving). There is a new autosave_current flag to open/restore calls
so the (enabled by default) autosave can be skipped.
2019-04-12 13:40:42 +00:00
stoffu
f3425f8d32 rpc.getblocktemplate: set reserved_offset to zero when reserve_size==0 2019-04-12 18:55:38 +09:00
moneromooo-monero
5858598604 p2p: fix integer overflow in host bans 2019-04-11 21:59:27 +00:00
moneromooo-monero
93bb2f48f7 ringct: prevent use of full ringct signatures for more than one input 2019-04-11 19:44:06 +00:00
moneromooo-monero
8f1fe45fe1 simplewallet: fix merge error with new welcome command 2019-04-11 18:46:23 +00:00
moneromooo-monero
2c221d1b6c wallet2: update estimate_rct_tx_size for smaller rct proofs 2019-04-11 17:31:18 +00:00
moneromooo-monero
e78cea74bd rpc: fix off by one in get_height 2019-04-11 17:24:02 +00:00
Riccardo Spagni
9c77dbf376 Merge pull request #5386
d843f200 simplewallet: add a welcome/disclaimer message command (moneromooo-monero)
2019-04-11 13:16:28 +02:00
Riccardo Spagni
716f5a2a6a Merge pull request #5384
0eee6cd7 block_weight: catch exceptions in main for clean exit on error (moneromooo-monero)
4b3bb829 epee: init a new ssl related variable in ctor (moneromooo-monero)
2019-04-11 13:15:20 +02:00
Riccardo Spagni
083271375a Merge pull request #5383
0575794f console: simple shell over console.py (moneromooo-monero)
047af5c3 console.py: can now connect to several daemons/wallets (moneromooo-monero)
9f9571aa cmake: always detect python, it's neeed for some tests (moneromooo-monero)
8646bd00 functional_tests: exit with 1 if any test fails (moneromooo-monero)
6fd8834d console.py: add tab completion (moneromooo-monero)
04a20cb2 functional_tests: cold signing key images/outputs import/export (moneromooo-monero)
798e3cad functional_tests: add double spend detection tests (moneromooo-monero)
7c657bb2 functional_tests: add alt chains tests (moneromooo-monero)
f8be31d2 functional_tests: add wallet creation language tests (moneromooo-monero)
2d68b31f functional_tests: add more wallet tests (moneromooo-monero)
23f86dad python-rpc: add set_log_level and set_log_categories (moneromooo-monero)
b3a32d55 functional_tests: add describe_transfer tests (moneromooo-monero)
108f4375 console.py: support connecting to any host, not just 127.0.0.1 (moneromooo-monero)
064ab123 functional_tests: add more blockchain related tests (moneromooo-monero)
21b1ac1d functional_tests: add bans tests (moneromooo-monero)
2019-04-11 13:14:44 +02:00
moneromooo-monero
d843f20044 simplewallet: add a welcome/disclaimer message command
I saw one when landing on www.tribler.org, and it seemed
like a good idea to have something similar, alongside some
more general "what is monero" text.
2019-04-11 11:11:45 +00:00
moneromooo-monero
0eee6cd7fe block_weight: catch exceptions in main for clean exit on error 2019-04-11 11:10:18 +00:00
moneromooo-monero
4b3bb829c2 epee: init a new ssl related variable in ctor 2019-04-11 11:10:15 +00:00
moneromooo-monero
0575794f53 console: simple shell over console.py
to avoid the "python -i" part
2019-04-11 11:08:39 +00:00
moneromooo-monero
047af5c343 console.py: can now connect to several daemons/wallets
Also throw exceptions instead of print+exit, since that makes
the error print last, below the python stack trace, where it's
much less easy to miss it.
2019-04-11 11:08:33 +00:00
moneromooo-monero
9f9571aa3d cmake: always detect python, it's neeed for some tests 2019-04-11 11:08:30 +00:00
moneromooo-monero
8646bd0086 functional_tests: exit with 1 if any test fails 2019-04-11 11:08:27 +00:00
moneromooo-monero
6fd8834d9d console.py: add tab completion 2019-04-11 11:08:24 +00:00
moneromooo-monero
04a20cb242 functional_tests: cold signing key images/outputs import/export 2019-04-11 11:08:20 +00:00
moneromooo-monero
798e3cad2b functional_tests: add double spend detection tests 2019-04-11 11:08:17 +00:00
moneromooo-monero
7c657bb2dd functional_tests: add alt chains tests 2019-04-11 11:08:15 +00:00
moneromooo-monero
f8be31d269 functional_tests: add wallet creation language tests 2019-04-11 11:08:12 +00:00
moneromooo-monero
2d68b31f3e functional_tests: add more wallet tests
get_transfer_by_txid, get_height, open/close
2019-04-11 11:08:09 +00:00
moneromooo-monero
23f86dad02 python-rpc: add set_log_level and set_log_categories 2019-04-11 11:08:06 +00:00
moneromooo-monero
b3a32d5505 functional_tests: add describe_transfer tests 2019-04-11 11:08:04 +00:00
moneromooo-monero
108f4375b8 console.py: support connecting to any host, not just 127.0.0.1 2019-04-11 11:08:01 +00:00
moneromooo-monero
064ab12340 functional_tests: add more blockchain related tests
Related to emission, reorgs, getting tx data back, output
distribution and histogram
2019-04-11 11:07:58 +00:00
moneromooo-monero
21b1ac1dd2 functional_tests: add bans tests 2019-04-11 11:07:55 +00:00
Riccardo Spagni
e03b9bcdfd Merge pull request #5411
3de49afc README.md: fork table, copy lines from release branch (Gingeropolous)
e172fbae README.md: fix missing comma (Tyler Saballus)
97f0899b README.md: minor spelling issue (Justin Gerber)
2019-04-11 13:06:35 +02:00
Riccardo Spagni
5db72d12b4 Merge pull request #5388
0be5b2ee simplewallet: new unset_ring command (moneromooo-monero)
2019-04-11 13:05:43 +02:00
Riccardo Spagni
5c02316598 Merge pull request #5382
c12b43cb wallet: add number of blocks required for the balance to fully unlock (moneromooo-monero)
3f1e9e84 wallet2: set confirmations to 0 for pool txes in proofs (moneromooo-monero)
36c037ec wallet_rpc_server: error out on getting the spend key from a hot wallet (moneromooo-monero)
cd1eaff2 wallet_rpc_server: always fill out subaddr_indices in get_transfers (moneromooo-monero)
2019-04-11 13:03:55 +02:00
Riccardo Spagni
38717dafc0 Merge pull request #5381
def40161 miner: fix race when stopping mining with start mining enabled (moneromooo-monero)
2019-04-11 13:03:32 +02:00
Riccardo Spagni
915d9e5a1f Merge pull request #5380
113e4877 blockchain_stats: fix sign in formatting function (moneromooo-monero)
adaea3ea various: remove unused variables (moneromooo-monero)
631ef00e blockchain: some debug info when adding txes-from-block fails (moneromooo-monero)
2019-04-11 13:02:59 +02:00
Riccardo Spagni
fa789109f6 Merge pull request #5379
83fc45a4 Add NanoX support (cslashm)
2019-04-11 13:02:47 +02:00
Riccardo Spagni
bd429033df Merge pull request #5378
eda2661a Allow pruning before v10 (moneromooo-monero)
2019-04-11 13:02:35 +02:00
Riccardo Spagni
4a2cc76c84 Merge pull request #5376
c746f45d Add hash of top block to /getheight RPC (Howard Chu)
2019-04-11 13:01:54 +02:00
Riccardo Spagni
3a4008f0fc Merge pull request #5374
a2561653 wallet: new option to start background mining (moneromooo-monero)
2019-04-11 13:01:30 +02:00
Riccardo Spagni
036daa3af9 Merge pull request #5373
aff80e70 blockchain: fix returned height in create_block_template (moneromooo-monero)
2019-04-11 13:00:55 +02:00
Riccardo Spagni
8e0c5b34dd Merge pull request #5371
9f8dc4ce simplewallet: new net_stats command (moneromooo-monero)
2019-04-11 13:00:31 +02:00
moneromooo-monero
9f8dc4ce51 simplewallet: new net_stats command
displays total sent and received bytes
2019-04-11 10:46:41 +00:00
Riccardo Spagni
19e37c05d6 Merge pull request #5367
07b716bf util: name replace_file arguments better (moneromooo-monero)
2019-04-11 12:41:55 +02:00
Riccardo Spagni
793651e731 Merge pull request #5366
c2f271d1 device/trezor: increase live-refresh timeout (Dusan Klinec)
2019-04-11 12:41:34 +02:00
Riccardo Spagni
76fbcfe2dd Merge pull request #5123
089c7637 cryptonote: rework block blob size sanity check (moneromooo-monero)
2019-04-11 12:41:07 +02:00
Riccardo Spagni
7d3cb10838 Merge pull request #4939
f064efae README: add and remove dependencies on OSX line (George)
2019-04-11 12:40:53 +02:00
Riccardo Spagni
7c85f3b28e Merge pull request #5320
2e578b82 Enabling daemon-rpc SSL now requires non-system CA verification (Lee Clagett)
d58f3682 Require manual override for user chain certificates. (Lee Clagett)
97cd1fa9 Only check top-level certificate against fingerprint list. (Lee Clagett)
7c388fb3 Call `use_certificate_chain_file` instead of `use_certificate_file` (Lee Clagett)
eca0fea4 Perform RFC 2818 hostname verification in client SSL handshakes (Lee Clagett)
0416764c Require server verification when SSL is enabled. (Lee Clagett)
96d602ac Add `verify_fail_if_no_cert` option for proper client authentication (Lee Clagett)
21eb1b07 Pass SSL arguments via one class and use shared_ptr instead of reference (Lee Clagett)
1f5ed328 Change default SSL to "enabled" if user specifies fingerprint/certificate (Lee Clagett)
f18a069f Do not require client certificate unless server has some whitelisted. (Lee Clagett)
a3b02848 Change SSL certificate file list to OpenSSL builtin load_verify_location (Lee Clagett)
2019-04-11 12:39:56 +02:00
Dusan Klinec
41901b8deb device/trezor: env-configurable ports 2019-04-10 18:29:24 +02:00
Dusan Klinec
c97a1f79d6 tests: trezor tests fixes and improvements
- configurable hardforks via env vars
2019-04-10 17:00:12 +02:00
Dusan Klinec
f29fecd517 build: debug and test builds via contrib 2019-04-10 15:43:52 +02:00
moneromooo-monero
374f388de2 wallet_rpc_server: add a all flag to export_outputs
if we don't want to export new outputs only
2019-04-10 10:37:34 +00:00
Martijn Otto
8df827075f Fix linker issues using easylogging 2019-04-10 11:37:02 +02:00
stoffu
e9fac29a4b unit_tests/long_term_block_weight: some tweaks that seem to make more sense 2019-04-09 20:21:45 +09:00
stoffu
467f4c7ed3 tests/block_weight: use integer division when computing median 2019-04-09 19:40:57 +09:00
stoffu
815d08dc5f tests/block_weight: remove unused MULTIPLIER_SMALL 2019-04-09 19:40:52 +09:00
stoffu
661f1fb8b2 blockchain: remove unused calc of short_term_constraint 2019-04-09 19:39:24 +09:00
erciccione
f4f1471ce8 readme: add some more instructions for translators
- added link to guide for Pootle
- link directly to CLI project on Pootle
- improved wording
2019-04-08 13:04:41 +02:00
Gingeropolous
3de49afc53 README.md: fork table, copy lines from release branch 2019-04-07 21:38:04 +00:00
Tyler Saballus
e172fbaef3 README.md: fix missing comma 2019-04-07 21:35:36 +00:00
Justin Gerber
97f0899b8f README.md: minor spelling issue
The word 'dont' is not spelled correctly.
2019-04-07 21:33:22 +00:00
Lee Clagett
2e578b8214 Enabling daemon-rpc SSL now requires non-system CA verification
If `--daemon-ssl enabled` is set in the wallet, then a user certificate,
fingerprint, or onion/i2p address must be provided.
2019-04-07 13:02:43 -04:00
Dusan Klinec
d4a78c74ac build: libusb static compilation fix 2019-04-07 18:52:25 +02:00
Dusan Klinec
ac874e2d40 tests: fix test_options initialization error 2019-04-07 18:18:54 +02:00
Dusan Klinec
c4f8a8a6a9 build fix: combinator.h stdexcept missing include 2019-04-07 17:41:13 +02:00
moneromooo-monero
66d73d2f7d easylogging++: update to v9.96.7 2019-04-07 14:31:00 +00:00
moneromooo-monero
bea1918a05 blockchain_import: error out if preparing to handle blocks fails
Coverity 197562
2019-04-07 13:48:19 +00:00
moneromooo-monero
ffdbcfb6b3 core: don't check block rate nor fork time in regtest mode 2019-04-07 13:30:02 +00:00
Dusan Klinec
c68fe7873b device/trezor: add button pressed request 2019-04-07 13:35:49 +02:00
Lee Clagett
d58f368289 Require manual override for user chain certificates.
An override for the wallet to daemon connection is provided, but not for
other SSL contexts. The intent is to prevent users from supplying a
system CA as the "user" whitelisted certificate, which is less secure
since the key is controlled by a third party.
2019-04-07 00:44:37 -04:00
Lee Clagett
97cd1fa98d Only check top-level certificate against fingerprint list.
This allows "chain" certificates to be used with the fingerprint
whitelist option. A user can get a system-ca signature as backup while
clients explicitly whitelist the server certificate. The user specified
CA can also be combined with fingerprint whitelisting.
2019-04-07 00:44:37 -04:00
Lee Clagett
7c388fb358 Call use_certificate_chain_file instead of use_certificate_file
The former has the same behavior with single self signed certificates
while allowing the server to have separate short-term authentication
keys with long-term authorization keys.
2019-04-07 00:44:37 -04:00
Lee Clagett
eca0fea45a Perform RFC 2818 hostname verification in client SSL handshakes
If the verification mode is `system_ca`, clients will now do hostname
verification. Thus, only certificates from expected hostnames are
allowed when SSL is enabled. This can be overridden by forcible setting
the SSL mode to autodetect.

Clients will also send the hostname even when `system_ca` is not being
performed. This leaks possible metadata, but allows servers providing
multiple hostnames to respond with the correct certificate. One example
is cloudflare, which getmonero.org is currently using.
2019-04-07 00:44:37 -04:00
Lee Clagett
0416764cae Require server verification when SSL is enabled.
If SSL is "enabled" via command line without specifying a fingerprint or
certificate, the system CA list is checked for server verification and
_now_ fails the handshake if that check fails. This change was made to
remain consistent with standard SSL/TLS client behavior. This can still
be overridden by using the allow any certificate flag.

If the SSL behavior is autodetect, the system CA list is still checked
but a warning is logged if this fails. The stream is not rejected
because a re-connect will be attempted - its better to have an
unverified encrypted stream than an unverified + unencrypted stream.
2019-04-07 00:44:37 -04:00
Lee Clagett
96d602ac84 Add verify_fail_if_no_cert option for proper client authentication
Using `verify_peer` on server side requests a certificate from the
client. If no certificate is provided, the server silently accepts the
connection and rejects if the client sends an unexpected certificate.
Adding `verify_fail_if_no_cert` has no affect on client and for server
requires that the peer sends a certificate or fails the handshake. This
is the desired behavior when the user specifies a fingerprint or CA file.
2019-04-07 00:44:37 -04:00
Lee Clagett
21eb1b0725 Pass SSL arguments via one class and use shared_ptr instead of reference 2019-04-07 00:44:37 -04:00
Lee Clagett
1f5ed328aa Change default SSL to "enabled" if user specifies fingerprint/certificate
Currently if a user specifies a ca file or fingerprint to verify peer,
the default behavior is SSL autodetect which allows for mitm downgrade
attacks. It should be investigated whether a manual override should be
allowed - the configuration is likely always invalid.
2019-04-06 23:47:07 -04:00
Lee Clagett
f18a069fcc Do not require client certificate unless server has some whitelisted.
Currently a client must provide a certificate, even if the server is
configured to allow all certificates. This drops that requirement from
the client - unless the server is configured to use a CA file or
fingerprint(s) for verification - which is the standard behavior for SSL
servers.

The "system-wide" CA is not being used as a "fallback" to verify clients
before or after this patch.
2019-04-06 23:47:06 -04:00
Lee Clagett
a3b0284837 Change SSL certificate file list to OpenSSL builtin load_verify_location
Specifying SSL certificates for peer verification does an exact match,
making it a not-so-obvious alias for the fingerprints option. This
changes the checks to OpenSSL which loads concatenated certificate(s)
from a single file and does a certificate-authority (chain of trust)
check instead. There is no drop in security - a compromised exact match
fingerprint has the same worse case failure. There is increased security
in allowing separate long-term CA key and short-term SSL server keys.

This also removes loading of the system-default CA files if a custom
CA file or certificate fingerprint is specified.
2019-04-06 23:47:06 -04:00
moneromooo-monero
d34599dae1 wallet: add number of blocks required for the balance to fully unlock 2019-04-06 16:36:15 +00:00
Riccardo Spagni
5dbcceb664 Merge pull request #5364
e8cf7dcc rpc: merge the two get_info implementations (moneromooo-monero)
2019-04-06 16:09:06 +02:00
Riccardo Spagni
c34930c207 Merge pull request #5391
71907980 unit_tests: fix long term block weight test after cache change (moneromooo-monero)
2019-04-06 16:04:27 +02:00
moneromooo-monero
e8cf7dcc2b rpc: merge the two get_info implementations 2019-04-06 14:04:24 +00:00
Riccardo Spagni
0baf26c8d6 Merge pull request #5375
1569776a Add missing include (Leon Klingele)
2019-04-06 16:04:06 +02:00
Riccardo Spagni
3759e2359f Merge pull request #5360
b0c552f5 cryptonote_protocol_handler: add block/tx hashes in notify logs (moneromooo-monero)
2019-04-06 16:03:13 +02:00
Riccardo Spagni
17fefb8786 Merge pull request #5358
dffdccdc No longer use deprecated RSA_generate_key in favor of RSA_generate_key_ex (Martijn Otto)
2019-04-06 16:02:31 +02:00
Riccardo Spagni
55e3980d89 Merge pull request #5353
1bc78cc2 tests: trezor_test fix (Dusan Klinec)
2019-04-06 16:02:16 +02:00
Riccardo Spagni
18ceac9ca5 Merge pull request #5351
a299dc96 rpc.gettransactions: fill as_json with partial tx in pruned mode (stoffu)
2019-04-06 16:01:44 +02:00
Riccardo Spagni
c7e536db23 Merge pull request #5350
050bb337 wallet2: factor the watchonly/multisig/etc fields on creation (moneromooo-monero)
2019-04-06 16:00:40 +02:00
Riccardo Spagni
38317f384c Merge pull request #5348
59776a64 epee: some more minor JSON parsing speedup (moneromooo-monero)
2019-04-06 16:00:18 +02:00
Riccardo Spagni
cd8fe937ad Merge pull request #5347
d45b85e1 wallet2: skip derivation precalc for blocks we know we'll skip (moneromooo-monero)
2019-04-06 15:59:56 +02:00
Riccardo Spagni
4ac78e1612 Merge pull request #5346
c84ea299 cryptonote_basic: some more minor speedups (moneromooo-monero)
e40eb2ad cryptonote_basic: speedup calculate_block_hash (moneromooo-monero)
547a9708 cryptonote: block parsing + hash calculation speedup (moneromooo-monero)
11604b6d blockchain: avoid unneeded block copy (moneromooo-monero)
8461df04 save some database calls when getting top block hash and height (moneromooo-monero)
3bbc3661 Avoid repeated (de)serialization when syncing (moneromooo-monero)
2019-04-06 15:59:43 +02:00
Riccardo Spagni
7e5651c346 Merge pull request #5345
678262ab wallet_rpc_server: allow english/local language names in create_wallet (moneromooo-monero)
2019-04-06 15:59:10 +02:00
Riccardo Spagni
c61b3f0ead Merge pull request #5344
5e1a3e48 lmdb: fix size_t size issues on 32 bit (moneromooo-monero)
2019-04-06 15:58:50 +02:00
Riccardo Spagni
9e72f785d6 Merge pull request #5343
cafa15b9 wallet2: set confirmations to 0 for pool txes in proofs (moneromooo-monero)
2019-04-06 15:58:25 +02:00
Riccardo Spagni
6f8e0a28b2 Merge pull request #5342
849a768f perf_timer: move some debug levels to info for consistency (moneromooo-monero)
2019-04-06 15:57:50 +02:00
Riccardo Spagni
c96fc4bf59 Merge pull request #5341
0218bc49 test: hmac_keccak - fix number of chunks counting (Dusan Klinec)
2019-04-06 15:57:28 +02:00
Riccardo Spagni
e1f0e6da5c Merge pull request #5340
16eda54b wallet: use original user address if we have a short payment id (moneromooo-monero)
2019-04-06 15:56:52 +02:00
Dusan Klinec
827f52add0 wallet: API changes to enable passphrase entry 2019-04-05 22:17:50 +02:00
moneromooo-monero
cbf3224180 rpc: make wide_difficulty hexadecimal
This should be friendlier for clients which don't have bignum support
2019-04-05 16:30:16 +00:00
moneromooo-monero
089c7637a6 cryptonote: rework block blob size sanity check
Use the actual block weight limit, assuming that weight is always
greater or equal to size
2019-04-05 09:35:19 +00:00
moneromooo-monero
a2561653cb wallet: new option to start background mining
The setup-background-mining option can be used to select
background mining when a wallet loads. The user will be asked
the first time the wallet is created.
2019-04-04 18:10:45 +00:00
moneromooo-monero
b40392fb02 wallet2: add --no-dns flag 2019-04-04 14:32:40 +00:00
stoffu
a2195b9b7f crypto: replace rand<T>()%N idiom with unbiased rand_idx(N) 2019-04-04 22:38:19 +09:00
stoffu
a299dc96f7 rpc.gettransactions: fill as_json with partial tx in pruned mode 2019-04-04 18:08:01 +09:00
moneromooo-monero
15f27c80b9 wallet2: support multi out txes without change in sanity check 2019-04-03 20:58:21 +00:00
Riccardo Spagni
fe3403c8f0 Merge pull request #5390
8bb253b0 libwallet_merged: add missing net target (selsta)
2019-04-03 19:45:18 +02:00
moneromooo-monero
c5d3ea2fef tests: add a few try/catch in main to shut coverity up 2019-04-03 16:24:09 +00:00
moneromooo-monero
7190798049 unit_tests: fix long term block weight test after cache change 2019-04-03 00:10:48 +00:00
selsta
8bb253b0db libwallet_merged: add missing net target 2019-04-02 21:22:51 +02:00
moneromooo-monero
0be5b2ee78 simplewallet: new unset_ring command
Useful when debugging, though not much for users
2019-04-02 14:18:07 +00:00
Riccardo Spagni
1ef3d05c4a Merge pull request #5387
d3018d0f api/wallet: fix some wrong namespace (stoffu)
2019-04-02 09:44:07 +02:00
George
f064efae66 README: add and remove dependencies on OSX line 2019-04-01 23:57:56 -05:00
stoffu
d3018d0f0b api/wallet: fix some wrong namespace 2019-04-02 10:11:49 +09:00
moneromooo-monero
c12b43cb5a wallet: add number of blocks required for the balance to fully unlock 2019-04-01 19:31:19 +00:00
moneromooo-monero
3f1e9e84c0 wallet2: set confirmations to 0 for pool txes in proofs
It makes more sense than (uint64_t)-1, which is going to look
like very much confirmed when not checking in_pool
2019-04-01 19:31:10 +00:00
moneromooo-monero
36c037ec47 wallet_rpc_server: error out on getting the spend key from a hot wallet 2019-04-01 19:31:01 +00:00
moneromooo-monero
cd1eaff29e wallet_rpc_server: always fill out subaddr_indices in get_transfers
It was not filled out for in and pool types
2019-04-01 19:30:27 +00:00
moneromooo-monero
def4016171 miner: fix race when stopping mining with start mining enabled 2019-04-01 19:28:50 +00:00
moneromooo-monero
113e487739 blockchain_stats: fix sign in formatting function 2019-04-01 19:24:47 +00:00
moneromooo-monero
adaea3ea3c various: remove unused variables 2019-04-01 19:24:41 +00:00
moneromooo-monero
631ef00e76 blockchain: some debug info when adding txes-from-block fails 2019-04-01 19:24:35 +00:00
Riccardo Spagni
b6726aaa6c Merge pull request #5319
f825055d wallet_rpc_server: error out on getting the spend key from a hot wallet (moneromooo-monero)
67aa4adc wallet_rpc_server: add a set_daemon RPC (moneromooo-monero)
705acbac wallet2: init some variables to default values if loading old wallets (moneromooo-monero)
f82bc29e wallet_rpc_server: always fill out subaddr_indices in get_transfers (moneromooo-monero)
01efdc6a wallet_rpc_server: set confirmations to 0 for pending/pool txes (moneromooo-monero)
2019-04-01 20:56:52 +02:00
moneromooo-monero
f825055d22 wallet_rpc_server: error out on getting the spend key from a hot wallet 2019-04-01 16:03:29 +00:00
moneromooo-monero
67aa4adcfc wallet_rpc_server: add a set_daemon RPC 2019-04-01 16:03:25 +00:00
moneromooo-monero
705acbac4d wallet2: init some variables to default values if loading old wallets 2019-04-01 16:03:23 +00:00
moneromooo-monero
f82bc29ec2 wallet_rpc_server: always fill out subaddr_indices in get_transfers
It was not filled out for in and pool types
2019-04-01 16:03:20 +00:00
moneromooo-monero
01efdc6a7e wallet_rpc_server: set confirmations to 0 for pending/pool txes 2019-04-01 16:03:17 +00:00
cslashm
83fc45a413 Add NanoX support 2019-04-01 17:40:24 +02:00
Riccardo Spagni
4308a2e173 Merge pull request #5318
1a91385e block_weight: fix python 2/3 compatibility (moneromooo-monero)
2019-04-01 17:37:57 +02:00
Riccardo Spagni
0eb2c7b272 Merge pull request #5339
9f49722c Fix build on FreeBSD (Nathan Dorfman)
2019-04-01 17:37:14 +02:00
Riccardo Spagni
6e0242f861 Merge pull request #5334
19f8089f p2p: don't lookup seed nodes when offline (moneromooo-monero)
2019-04-01 17:37:01 +02:00
Riccardo Spagni
286dec012d Merge pull request #5333
18faa6da wallet: add freeze/thaw/frozen commands (moneromooo-monero)
2019-04-01 17:36:16 +02:00
Riccardo Spagni
b8ab510f23 Merge pull request #5332
7c440915 Add get_tx_proof support, needed for new sanity check (cslashm)
98fdcb2a Add support for V11 protocol with BulletProofV2 and short amount. New scheme key destination contrfol Fix dummy decryption in debug mode (cslashm)
3a981a33 Add application version compatibility check. (cslashm)
2019-04-01 17:35:12 +02:00
Riccardo Spagni
3b52940471 Merge pull request #5349
f1a3796a wallet2: fix tx sanity check change test for the sweep_all case (moneromooo-monero)
2019-04-01 17:34:43 +02:00
Riccardo Spagni
29e4e70f30 Merge pull request #5352
ae6885f6 blockchain: incremental long term block weight cache (moneromooo-monero)
9b687c78 blockchain: simple cache for the long term block weights (moneromooo-monero)
2019-04-01 17:34:02 +02:00
Riccardo Spagni
e601028649 Merge pull request #5331
32973434 python-rpc: add getblockheadersrange daemon RPC (moneromooo-monero)
c7bfdc35 python-rpc: add console.py (moneromooo-monero)
22b644f4 functional_tests: move RPC API to utils, it is not test specific (moneromooo-monero)
30c865f0 functional_tests: add balance tests (moneromooo-monero)
fdfa832f functional_tests: add missing parameters to get_balance (moneromooo-monero)
cf6d7759 functional_tests: add proofs tests (tx key, in/out tx, reserve) (moneromooo-monero)
a3144bd7 functional_tests: add more transfer tests (moneromooo-monero)
5d580bfa functional_tests: add get_bulk_transfer tests (moneromooo-monero)
0becbd16 functional_tests: add message signing/verification tests (moneromooo-monero)
a5dbf7f5 functional_tests: add multisig and cold signing tests (moneromooo-monero)
b2fc5719 functional_tests: support several daemons/wallets (moneromooo-monero)
9e979ffa functional_tests: add txpool RPC tests (moneromooo-monero)
3e93c157 functional_tests: add integrated address tests (moneromooo-monero)
b384309e functional_tests: add basic transfer tests (moneromooo-monero)
ef7681b6 functional_tests: plug RPC tests into the cmake machinery (moneromooo-monero)
18a2ed45 functional_tests: add basic mining tests (moneromooo-monero)
98e280fc functional_tests: add wallet address/subaddress RPC tests (moneromooo-monero)
8dcd4d3d functional_tests: improve RPC blockchain tests (moneromooo-monero)
2019-04-01 17:33:24 +02:00
Riccardo Spagni
3b1fa543ca Merge pull request #5329
023f2c77 wallet_rpc_server: remove mixin from transfer RPCs (moneromooo-monero)
2019-04-01 17:32:20 +02:00
Riccardo Spagni
1ed6441925 Merge pull request #5327
c23ea796 New interactive daemon command 'print_net_stats': Global traffic stats (rbrunner7)
2019-04-01 17:32:01 +02:00
moneromooo-monero
1a91385eaf block_weight: fix python 2/3 compatibility 2019-04-01 15:31:52 +00:00
Riccardo Spagni
a69b71dc41 Merge pull request #5326
dc20d774 rpc: add miner tx hash to block header response (moneromooo-monero)
2019-04-01 17:31:36 +02:00
Riccardo Spagni
4f3f15edba Merge pull request #5325
760d3a2a daemon: init public_port in all ctors (moneromooo-monero)
2019-04-01 17:31:17 +02:00
Riccardo Spagni
13f414cb9f Merge pull request #5322
85f2f8c9 Fix daemon startup parameter '--limit-rate' processing after parameter defaults (rbrunner7)
2019-04-01 17:31:01 +02:00
Riccardo Spagni
55d7eb06a8 Merge pull request #5317
1730a44f core: improve block rate monitor trigger probabilities (moneromooo-monero)
2019-04-01 17:28:55 +02:00
Riccardo Spagni
99a96db67f Merge pull request #5313
d7dd8575 Upgraded static dependency versions and hashes in Dockerfile. (Norman Moeschter)
2019-04-01 17:28:25 +02:00
Riccardo Spagni
87840192dd Merge pull request #5309
43042a28 Implement array_entry_t copy constructor (Guido Vranken)
2019-04-01 17:28:08 +02:00
Riccardo Spagni
97831e5f8b Merge pull request #5308
a7211793 rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
2019-04-01 17:27:56 +02:00
Riccardo Spagni
5a71fb74f0 Merge pull request #5307
e99b2b12 simplewallet: make the long payment ids warnigns more warney (moneromooo-monero)
2019-04-01 17:27:25 +02:00
Riccardo Spagni
c994dc7ec0 Merge pull request #5306
8a97563a Use threadpool instead of new threads for DNS queries (Howard Chu)
2019-04-01 17:27:09 +02:00
Riccardo Spagni
8b57e33789 Merge pull request #5305
4500236f wallet2: make use_fork_rules handle chain heights lower than leeway (moneromooo-monero)
2019-04-01 17:26:23 +02:00
Riccardo Spagni
30a3a73609 Merge pull request #5303
0a6cb30d wallet: flush output cache upon reorg (moneromooo-monero)
2019-04-01 17:26:10 +02:00
Riccardo Spagni
94880540e7 Merge pull request #5302
23fb056a wallet_rpc_server: new auto_refresh RPC (moneromooo-monero)
2019-04-01 17:25:53 +02:00
Riccardo Spagni
b09f1bdb8f Merge pull request #5299
4ee15655 wallet_rpc_server: fix buffer read overflow in string assignment (moneromooo-monero)
2019-04-01 17:24:33 +02:00
Riccardo Spagni
4a06b3ee62 Merge pull request #5298
8fd7452b wallet: move light wallet RPC out of core RPC (moneromooo-monero)
2019-04-01 17:24:13 +02:00
Riccardo Spagni
f13d38350a Merge pull request #5297
a8b98a0b wallet: fix memory only wallets (moneromooo-monero)
2019-04-01 17:23:37 +02:00
Riccardo Spagni
89fb0e3cd6 Merge pull request #5295
2b10f22a mnemonics: fix half length seed to bytes conversion (moneromooo-monero)
2019-04-01 17:23:25 +02:00
Riccardo Spagni
cabd848efa Merge pull request #5294
77e9815d blockchain: do not try to pop the genesis block (moneromooo-monero)
2019-04-01 17:22:51 +02:00
Riccardo Spagni
6cb0a26d9d Merge pull request #5292
328d291f wallet2: set seed language when creating from json (moneromooo-monero)
2019-04-01 17:22:22 +02:00
Riccardo Spagni
a6b798e72f Merge pull request #5291
a52366c1 wallet2: fix generation from json when restore height is not set (moneromooo-monero)
2019-04-01 17:21:14 +02:00
Riccardo Spagni
574c399386 Merge pull request #5288
39f000b3 miner: fix possible exit crash due to race in stop (moneromooo-monero)
2019-04-01 17:20:25 +02:00
Riccardo Spagni
96e1b4e672 Merge pull request #5289
ab6c3b1d tests: fix path in instructions (moneromooo-monero)
2019-04-01 17:20:06 +02:00
Riccardo Spagni
7ec799c542 Merge pull request #5287
1d14b3f0 ringct: fix capitalization for scaler mult (fuwa)
2019-04-01 17:19:32 +02:00
Riccardo Spagni
e55b3f9dda Merge pull request #5239
91f4c7f4 Make difficulty 128 bit instead of 64 bit (moneromooo-monero)
2019-04-01 17:19:10 +02:00
moneromooo-monero
eda2661aa2 Allow pruning before v10
This check is now not needed anymore, and would prevent people
from using --prune-blockchain when starting a new sync
2019-04-01 14:06:49 +00:00
Howard Chu
c746f45d3e Add hash of top block to /getheight RPC 2019-04-01 01:02:58 +01:00
Leon Klingele
1569776a52 Add missing include 2019-03-31 18:39:25 +02:00
moneromooo-monero
5e1a3e48ba lmdb: fix size_t size issues on 32 bit 2019-03-31 11:12:21 +00:00
moneromooo-monero
aff80e7043 blockchain: fix returned height in create_block_template
It's now needed for CNv4, and was not retained when cached
2019-03-30 20:27:25 +00:00
Jane Mercer
e72c2c5dcc do not build in parallel as it is non-deterministic 2019-03-29 10:31:35 -07:00
moneromooo-monero
07b716bfea util: name replace_file arguments better
It was confusing unless you read code and the rename(2) man page.
2019-03-29 16:32:00 +00:00
Dusan Klinec
c2f271d13a device/trezor: increase live-refresh timeout 2019-03-29 17:23:14 +01:00
italocoin
383c38fdb1 fix init warning on whatever compiler version 2019-03-29 11:25:36 -04:00
moneromooo-monero
ae6885f6b4 blockchain: incremental long term block weight cache 2019-03-28 18:07:57 +00:00
moneromooo-monero
9b687c7873 blockchain: simple cache for the long term block weights 2019-03-28 18:07:57 +00:00
cslashm
7c44091541 Add get_tx_proof support, needed for new sanity check
Enhance debug info
2019-03-28 18:26:15 +01:00
cslashm
98fdcb2aa5 Add support for V11 protocol with BulletProofV2 and short amount.
New scheme key destination contrfol
Fix dummy decryption in debug mode
2019-03-28 18:26:15 +01:00
cslashm
3a981a3313 Add application version compatibility check. 2019-03-28 18:26:15 +01:00
moneromooo-monero
b0c552f50f cryptonote_protocol_handler: add block/tx hashes in notify logs 2019-03-28 00:43:55 +00:00
Riccardo Spagni
423d3bb86b Merge pull request #5359
ef92620c socks: fix build with boost 1.70 (moneromooo-monero)
2019-03-27 15:57:36 +02:00
moneromooo-monero
ef92620c1d socks: fix build with boost 1.70 2019-03-27 13:22:41 +00:00
Martijn Otto
dffdccdc9e No longer use deprecated RSA_generate_key in favor of
RSA_generate_key_ex
2019-03-27 13:23:30 +01:00
Riccardo Spagni
1d83ce8f29 Merge pull request #5090
7acfa9f3 Added socks proxy (tor/i2pd/kovri) support to wallet (Lee Clagett)
2019-03-27 14:09:11 +02:00
moneromooo-monero
050bb337d7 wallet2: factor the watchonly/multisig/etc fields on creation
There's half a dozen calls, and it's easy to miss some when
adding a new field.
2019-03-27 08:51:16 +00:00
Dusan Klinec
1bc78cc29a tests: trezor_test fix 2019-03-26 13:47:28 +01:00
moneromooo-monero
f1a3796a43 wallet2: fix tx sanity check change test for the sweep_all case 2019-03-25 22:41:22 +00:00
moneromooo-monero
59776a64ff epee: some more minor JSON parsing speedup 2019-03-25 14:29:29 +00:00
moneromooo-monero
d45b85e170 wallet2: skip derivation precalc for blocks we know we'll skip 2019-03-25 14:28:05 +00:00
moneromooo-monero
c84ea2993f cryptonote_basic: some more minor speedups 2019-03-25 13:43:38 +00:00
moneromooo-monero
e40eb2ad9d cryptonote_basic: speedup calculate_block_hash
The block 202612 fix can be left tested at the end, if we
already know we're not in the general case
2019-03-25 13:43:29 +00:00
moneromooo-monero
547a9708de cryptonote: block parsing + hash calculation speedup
This saves a duplicate serialization step
2019-03-25 13:43:17 +00:00
moneromooo-monero
11604b6da6 blockchain: avoid unneeded block copy 2019-03-25 13:42:32 +00:00
moneromooo-monero
8461df0405 save some database calls when getting top block hash and height 2019-03-25 13:42:25 +00:00
moneromooo-monero
3bbc366147 Avoid repeated (de)serialization when syncing 2019-03-25 13:42:18 +00:00
moneromooo-monero
678262ab65 wallet_rpc_server: allow english/local language names in create_wallet
and return both in get_languages
2019-03-25 12:52:43 +00:00
moneromooo-monero
a8b98a0bd7 wallet: fix memory only wallets
at least when using restore_deterministic_wallet
2019-03-25 12:49:25 +00:00
fuwa
1d14b3f072 ringct: fix capitalization for scaler mult 2019-03-25 13:00:14 +08:00
Lee Clagett
7acfa9f3cc Added socks proxy (tor/i2pd/kovri) support to wallet 2019-03-25 01:35:13 +00:00
moneromooo-monero
1730a44f90 core: improve block rate monitor trigger probabilities
The original intent of one false positive a week on average
was not met, since what we really want is not the probability
of having N blocks in T seconds, but either N blocks of fewer
in T seconds, or N blocks or more in T seconds.

Some of this could be cached since it calculates the same fairly
complex floating point values, but it seems pretty fast already.
2019-03-25 00:55:09 +00:00
moneromooo-monero
cafa15b904 wallet2: set confirmations to 0 for pool txes in proofs
It makes more sense than (uint64_t)-1, which is going to look
like very much confirmed when not checking in_pool
2019-03-24 21:59:06 +00:00
moneromooo-monero
91f4c7f45f Make difficulty 128 bit instead of 64 bit
Based on Boolberry work by:
  jahrsg <jahr@jahr.me>
  cr.zoidberg <crypto.zoidberg@gmail.com>
2019-03-24 21:03:19 +00:00
moneromooo-monero
849a768f36 perf_timer: move some debug levels to info for consistency 2019-03-24 20:15:33 +00:00
Dusan Klinec
0218bc497d test: hmac_keccak - fix number of chunks counting 2019-03-24 20:24:28 +01:00
Riccardo Spagni
e4b049da05 Merge pull request #5286
cce948a5 simplewallet: add some missing spacing before uses data (moneromooo-monero)
2019-03-24 19:38:50 +02:00
Riccardo Spagni
676b17d36d Merge pull request #5285
6ef816de console_handler: print newline on EOF (moneromooo-monero)
2019-03-24 19:38:04 +02:00
Riccardo Spagni
4176a399de Merge pull request #5282
f962449d wallet_rpc_server: include out subaddress indices in get_transfers (moneromooo-monero)
2019-03-24 19:37:07 +02:00
Riccardo Spagni
8cb4293e82 Merge pull request #5277
adf6d773 wallet: fix offline signing calling a daemon RPC (moneromooo-monero)
2019-03-24 19:35:39 +02:00
Riccardo Spagni
37ee4acf48 Merge pull request #5274
dc0c0c91 tests: disable wallet SSL init for tests involving wallet2 (moneromooo-monero)
2019-03-24 19:35:11 +02:00
Riccardo Spagni
0920ac7642 Merge pull request #5207
be6f426a rpc: Allow submitting tx as hex blob over ZMQ (Nathan Dorfman)
2019-03-24 19:33:36 +02:00
Riccardo Spagni
de4ca3f14e Merge pull request #5324
223c6b07 dns_utils: really add default DNSSEC servers on failure (moneromooo-monero)
2019-03-24 19:05:28 +02:00
Riccardo Spagni
0965b101f2 Merge pull request #5321
e9519e98 cryptonote: fix calculating coinbase tx hash (moneromooo-monero)
2019-03-24 19:04:27 +02:00
rbrunner7
c23ea7962d New interactive daemon command 'print_net_stats': Global traffic stats 2019-03-24 16:58:57 +01:00
moneromooo-monero
16eda54b38 wallet: use original user address if we have a short payment id 2019-03-24 08:58:59 +00:00
Nathan Dorfman
9f49722c4d Fix build on FreeBSD 2019-03-24 01:12:06 -06:00
moneromooo-monero
32973434bd python-rpc: add getblockheadersrange daemon RPC 2019-03-23 18:59:49 +00:00
moneromooo-monero
c7bfdc3566 python-rpc: add console.py
It allows one to connect to a running daemon or wallet, and use
its RPC API from python.

Usage: python -i console.py <port>

It will detect whether it's talking to a daemon or wallet and
initialize itself accordingly.
2019-03-23 18:59:47 +00:00
moneromooo-monero
19f8089fca p2p: don't lookup seed nodes when offline
This will cause DNS requests, which will block and timeout
if there is really no network connectivity
2019-03-22 15:47:48 +00:00
moneromooo-monero
22b644f47e functional_tests: move RPC API to utils, it is not test specific 2019-03-22 15:29:44 +00:00
moneromooo-monero
30c865f0f8 functional_tests: add balance tests 2019-03-22 15:29:44 +00:00
moneromooo-monero
fdfa832f00 functional_tests: add missing parameters to get_balance 2019-03-22 15:29:44 +00:00
moneromooo-monero
18faa6da0c wallet: add freeze/thaw/frozen commands
These commands let one freeze outputs by key image, so they
do not appear in balance, nor are considered when creating
a transaction, etc

This is helpful when receiving an output from a suspected spy,
who might try to track your other outputs by seeing with what
other outputs it gets spent.

The frozen command may be used without parameters to list all
currently frozen outputs.
2019-03-22 09:19:24 +00:00
moneromooo-monero
cf6d775964 functional_tests: add proofs tests (tx key, in/out tx, reserve) 2019-03-21 19:28:56 +00:00
moneromooo-monero
a3144bd7c8 functional_tests: add more transfer tests
manual relay, transfer to integrated address, and a few negative
transfer tests
2019-03-21 19:28:44 +00:00
moneromooo-monero
5d580bfa9c functional_tests: add get_bulk_transfer tests 2019-03-21 19:28:44 +00:00
moneromooo-monero
0becbd1612 functional_tests: add message signing/verification tests 2019-03-21 19:28:44 +00:00
moneromooo-monero
a5dbf7f5fa functional_tests: add multisig and cold signing tests 2019-03-21 19:28:15 +00:00
moneromooo-monero
b2fc571943 functional_tests: support several daemons/wallets 2019-03-21 19:28:06 +00:00
moneromooo-monero
9e979ffa22 functional_tests: add txpool RPC tests 2019-03-21 19:28:06 +00:00
moneromooo-monero
3e93c157bd functional_tests: add integrated address tests 2019-03-21 19:27:47 +00:00
moneromooo-monero
b384309e17 functional_tests: add basic transfer tests 2019-03-21 19:27:45 +00:00
moneromooo-monero
ef7681b699 functional_tests: plug RPC tests into the cmake machinery 2019-03-21 19:27:42 +00:00
moneromooo-monero
18a2ed4518 functional_tests: add basic mining tests 2019-03-21 19:26:49 +00:00
moneromooo-monero
98e280fcb8 functional_tests: add wallet address/subaddress RPC tests 2019-03-21 19:26:49 +00:00
moneromooo-monero
8dcd4d3d11 functional_tests: improve RPC blockchain tests 2019-03-21 19:26:49 +00:00
moneromooo-monero
e9519e9876 cryptonote: fix calculating coinbase tx hash
Also set error flag on exception when handling new txes
to keep tests working
2019-03-21 17:13:01 +00:00
moneromooo-monero
023f2c7747 wallet_rpc_server: remove mixin from transfer RPCs
it's been a while, only use ring_size now
2019-03-21 14:47:39 +00:00
moneromooo-monero
adf6d7730f wallet: fix offline signing calling a daemon RPC 2019-03-21 14:46:29 +00:00
Riccardo Spagni
cd776b1933 Merge pull request #5267
b05f10f8 wallet2: sanity check new tx before sending (moneromooo-monero)
2019-03-21 15:17:06 +02:00
moneromooo-monero
b05f10f82e wallet2: sanity check new tx before sending
We generate and check tx proofs and verify the amounts in those
match what the original amounts were.
2019-03-21 13:03:45 +00:00
Riccardo Spagni
f5d7652f73 Merge pull request #5283
16590294 abstract_tcp_server2: fix crashy race on socket shutdown (moneromooo-monero)
2019-03-21 14:53:03 +02:00
Riccardo Spagni
cac4c3103a Merge pull request #5271
2790d4d3 hardfork: update last_versions on popped block (moneromooo-monero)
2019-03-21 14:52:02 +02:00
Riccardo Spagni
e0a05837ba Merge pull request #5270
5ade7281 Wallet API: multisig_tx_set passing bug fixed (naughtyfox)
2019-03-21 14:51:41 +02:00
Riccardo Spagni
dcfd5a8892 Merge pull request #5266
576116d4 wallet: fix load failure if the mms isn't usable (moneromooo-monero)
2019-03-21 14:51:30 +02:00
Riccardo Spagni
7329a27e14 Merge pull request #5263
22136256 Start monerod as non root user (Jean-Michel DILLY)
2019-03-21 14:49:53 +02:00
Riccardo Spagni
5259dd7a14 Merge pull request #5259
9141a0a1 connection_basic: remove debug exception ^_^ (moneromooo-monero)
2019-03-21 14:49:09 +02:00
Riccardo Spagni
5ac46c5310 Merge pull request #5256
4b21d38d blockchain: speed up getting N blocks weights/long term weights (moneromooo-monero)
2019-03-21 14:48:40 +02:00
Riccardo Spagni
6c0c7d796d Merge pull request #5252
7ac33342 slow-hash: cache TLS references locally once at function start (moneromooo-monero)
2019-03-21 14:48:24 +02:00
Riccardo Spagni
39107e18d5 Merge pull request #5251
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)
2019-03-21 14:47:43 +02:00
Riccardo Spagni
56feda84d3 Merge pull request #5250
a48e49aa aesb: avoid stomping on an existing define on NetBSD (moneromooo-monero)
2019-03-21 14:47:11 +02:00
Riccardo Spagni
30e823e7cd Merge pull request #5248
3f6f90bb wallet2: do not use invalid keys as fake outs in rings (moneromooo-monero)
2019-03-21 14:46:58 +02:00
Riccardo Spagni
df50181ab2 Merge pull request #5237
3907588b rpc: make fill_pow restricted (moneromooo-monero)
2019-03-21 14:46:20 +02:00
Riccardo Spagni
5e03bd06c1 Merge pull request #5235
c6a70af8 wallet2: key image import fixes (moneromooo-monero)
2019-03-21 14:45:58 +02:00
Riccardo Spagni
f9b1c4f962 Merge pull request #5213
efb2bdd3 slow-hash: default to JIT on x86_64 (moneromooo-monero)
2019-03-21 14:44:26 +02:00
Riccardo Spagni
48e3a341f8 Merge pull request #5211
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)
2019-03-21 14:44:04 +02:00
Riccardo Spagni
6f07b8ffa5 Merge pull request #5208
7ec4d2c3 SHALL -> MUST (Jesse Jackson)
2019-03-21 14:43:28 +02:00
Riccardo Spagni
25aaa9f8b0 Merge pull request #5072
5c79abe5 update readme to include blurb on decentralization (Gingeropolous)
2019-03-21 14:43:11 +02:00
Riccardo Spagni
aa164aac56 Merge pull request #4460
0c7e7bce Adding classes, functions, and utilities for common LMDB operations. (Lee Clagett)
2019-03-21 14:42:22 +02:00
Riccardo Spagni
190601e517 Merge pull request #5328
17769db9 epee: fix build with boost 1.70.0 (moneromooo-monero)
d6d6c46c cmake: handle detecting boost using boost's own cmake files (moneromooo-monero)
2019-03-21 14:39:08 +02:00
moneromooo-monero
efb2bdd309 slow-hash: default to JIT on x86_64 2019-03-21 11:29:08 +00:00
moneromooo-monero
17769db946 epee: fix build with boost 1.70.0
get_io_service was deprecated, and got removed
2019-03-21 11:02:02 +00:00
moneromooo-monero
d6d6c46c4d cmake: handle detecting boost using boost's own cmake files
Its version looks like 1.70.1 rather than 107000, so detect range
to know which type we're seeing
2019-03-21 11:02:02 +00:00
moneromooo-monero
dc20d77459 rpc: add miner tx hash to block header response 2019-03-21 00:24:12 +00:00
moneromooo-monero
223c6b0796 dns_utils: really add default DNSSEC servers on failure
Coverity 196597
2019-03-20 23:46:22 +00:00
moneromooo-monero
760d3a2a0c daemon: init public_port in all ctors
Coverity 196596
2019-03-20 23:45:00 +00:00
Dusan Klinec
c9b13fbbc2 tests/trezor: HF9 and HF10 tests
- 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
2019-03-20 21:11:02 +01:00
Dusan Klinec
a1fd1d499c device/trezor: HF10 support added, wallet::API
- 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
2019-03-20 21:11:02 +01:00
Dusan Klinec
d74d26f2c9 crypto: hmac_keccak added 2019-03-20 21:11:01 +01:00
rbrunner7
85f2f8c933 Fix daemon startup parameter '--limit-rate' processing after parameter defaults 2019-03-20 16:40:59 +01:00
Lee Clagett
0c7e7bce18 Adding classes, functions, and utilities for common LMDB operations. 2019-03-19 17:52:26 +00:00
moneromooo-monero
1659029469 abstract_tcp_server2: fix crashy race on socket shutdown 2019-03-19 16:50:00 +00:00
Norman Moeschter
d7dd857579 Upgraded static dependency versions and hashes in Dockerfile. 2019-03-19 14:09:28 +01:00
Riccardo Spagni
f2f725d8db Merge pull request #5201
4921c794 cn_deserialize: remove some unused code (moneromooo-monero)
2019-03-19 10:59:55 +02:00
Riccardo Spagni
695d51a481 Merge pull request #5203
8b514645 add multisig tx sets to describe_transfer rpc endpoint (spoke0)
2019-03-19 10:59:42 +02:00
Riccardo Spagni
acc7211b5b Merge pull request #5199
eef164f7 cryptonote_protocol_handler: search for syncing peers in "cruise mode" (moneromooo-monero)
2019-03-19 10:58:38 +02:00
Riccardo Spagni
2900f6a3ca Merge pull request #5198
9c4d403a dns_utils: use fallback if the default resolver does not support DNSSEC (moneromooo-monero)
2019-03-19 10:58:25 +02:00
Riccardo Spagni
bf0f85221b Merge pull request #5195
a54e81e5 daemon: add '--no-sync' arg to optionally disable blockchain sync (xiphon)
2019-03-19 10:57:28 +02:00
Riccardo Spagni
38dcd975f2 Merge pull request #4889
f42263eb wallet: adds rescan_bc option with preserving key images (Dusan Klinec)
2019-03-19 10:55:45 +02:00
Riccardo Spagni
edb294ef23 Merge pull request #5240
c8c154a2 tests: fix cnv4-jit-test link on mac (moneromooo-monero)
2019-03-19 09:48:16 +02:00
Guido Vranken
43042a28ec Implement array_entry_t copy constructor
Manually initialize the array_entry_t iterator to ensure it points
to the correct m_array, thereby preventing a potential use-after-free
situation.

Signed-off-by: Guido Vranken <guidovranken@gmail.com>
2019-03-18 00:49:12 +01:00
moneromooo-monero
a7211793ba rpc: quantize db size up to 5 GB in restricted mode 2019-03-17 21:27:52 +00:00
moneromooo-monero
e99b2b12fd simplewallet: make the long payment ids warnigns more warney
We want people to really realize it's bad for *their* privacy.
2019-03-17 18:42:52 +00:00
Riccardo Spagni
ea07a9bc61 Merge pull request #5191
1677fb06 unbound: update to get the redefinition fix (moneromooo-monero)
2019-03-17 17:57:09 +02:00
Riccardo Spagni
c3de019f56 Merge pull request #5192
d0e07b3d performance_tests: fix NetBSD build (moneromooo-monero)
7d88d8f2 discontinue use of alloca (moneromooo-monero)
2019-03-17 17:56:52 +02:00
Riccardo Spagni
848591c4d8 Merge pull request #5190
551104fb daemon: add --public-node mode, RPC port propagation over P2P (xiphon)
2019-03-17 17:56:04 +02:00
Riccardo Spagni
429930534d Merge pull request #5185
59478c80 daemon: new mining_status command (moneromooo-monero)
2019-03-17 17:55:32 +02:00
Riccardo Spagni
e1be617ea2 Merge pull request #5182
b674728d Better error when sending a tx with a too large extra field (moneromooo-monero)
2019-03-17 17:55:13 +02:00
Riccardo Spagni
09b3b061bc Merge pull request #5181
8681f8ef OS X -> macOS (Jesse Jackson)
2019-03-17 17:54:27 +02:00
Riccardo Spagni
6031a1f5b4 Merge pull request #5179
7c09882a dns_utils: remove MoneroPulse/checkpoints mention in TXT record code (moneromooo-monero)
2019-03-17 17:53:53 +02:00
Riccardo Spagni
fd231226b9 Merge pull request #5177
bb2aed8e rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
2019-03-17 17:52:56 +02:00
Riccardo Spagni
761ef99e77 Merge pull request #5168
8630a028 wallet: fix payment ID decryption for construction data (Dusan Klinec)
2019-03-17 17:52:41 +02:00
Riccardo Spagni
47c278c90f Merge pull request #5166
75e5aafd device/trezor: dummy payment ID fix (Dusan Klinec)
2019-03-17 17:51:52 +02:00
Riccardo Spagni
6d5849d9bb Merge pull request #5165
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)
2019-03-17 17:51:24 +02:00
Riccardo Spagni
50d48d6118 Merge pull request #5135
de32dcea Human readable message if maximum outputs reached (italocoin)
2019-03-17 17:50:41 +02:00
Riccardo Spagni
4c91eb23a0 Merge pull request #5061
1f2930ce Update 2019 copyright (binaryFate)
2019-03-17 17:49:30 +02:00
Howard Chu
8a97563a93 Use threadpool instead of new threads for DNS queries 2019-03-17 15:39:15 +00:00
moneromooo-monero
4500236f25 wallet2: make use_fork_rules handle chain heights lower than leeway 2019-03-17 14:22:50 +00:00
moneromooo-monero
0a6cb30d62 wallet: flush output cache upon reorg
Fixes output usage tracking
2019-03-17 10:34:07 +00:00
moneromooo-monero
23fb056a72 wallet_rpc_server: new auto_refresh RPC
It can enable/disable auto refresh, and set auto refresh period
2019-03-17 10:33:51 +00:00
Riccardo Spagni
e063615a0e Merge pull request #5249
3ac40938 timings: fix errno.h mispelt as error.h (moneromooo-monero)
2019-03-16 14:06:07 +02:00
Riccardo Spagni
03d1dbc2ad Merge pull request #5280
aac4e2f5 wallet_rpc_server: add missing --rpc-ssl-allowed-fingerprints (moneromooo-monero)
2019-03-16 14:05:30 +02:00
moneromooo-monero
4ee156556d wallet_rpc_server: fix buffer read overflow in string assignment 2019-03-15 19:36:13 +00:00
moneromooo-monero
8fd7452b6e wallet: move light wallet RPC out of core RPC
It's not nothing to do with it
2019-03-15 13:34:08 +00:00
Dusan Klinec
f42263ebb6 wallet: adds rescan_bc option with preserving key images
- 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
2019-03-15 12:55:29 +01:00
moneromooo-monero
2b10f22ae6 mnemonics: fix half length seed to bytes conversion 2019-03-15 11:05:42 +00:00
moneromooo-monero
77e9815db7 blockchain: do not try to pop the genesis block 2019-03-15 10:51:48 +00:00
moneromooo-monero
328d291fe4 wallet2: set seed language when creating from json 2019-03-15 00:16:50 +00:00
moneromooo-monero
a52366c1bf wallet2: fix generation from json when restore height is not set
It was not recovering then, but creating a new random address
2019-03-14 23:41:41 +00:00
moneromooo-monero
ab6c3b1da0 tests: fix path in instructions
Reported by notmike
2019-03-14 19:23:29 +00:00
moneromooo-monero
39f000b394 miner: fix possible exit crash due to race in stop
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).
2019-03-14 16:59:08 +00:00
moneromooo-monero
cce948a5ae simplewallet: add some missing spacing before uses data 2019-03-14 10:07:49 +00:00
Riccardo Spagni
c88e992104 Merge pull request #4977
5ea17909 device/trezor: debugging features, trezor tests (Dusan Klinec)
2019-03-14 09:43:02 +02:00
Riccardo Spagni
503b2fd964 Merge pull request #5273
bc61b5ca wallet2: don't store 0 amount outputs, they'll fail to be spent (moneromooo-monero)
2019-03-14 09:41:02 +02:00
moneromooo-monero
6ef816de2b console_handler: print newline on EOF
This avoids the annoying case where the shell prints its prompt
after the last line from Monero output, causing line editing to
sometimes go wonky, for lack of a better term
2019-03-13 16:52:22 +00:00
moneromooo-monero
f962449d46 wallet_rpc_server: include out subaddress indices in get_transfers 2019-03-13 14:14:15 +00:00
moneromooo-monero
aac4e2f585 wallet_rpc_server: add missing --rpc-ssl-allowed-fingerprints 2019-03-13 12:59:44 +00:00
moneromooo-monero
dc0c0c91c5 tests: disable wallet SSL init for tests involving wallet2 2019-03-12 20:43:02 +00:00
moneromooo-monero
bc61b5ca95 wallet2: don't store 0 amount outputs, they'll fail to be spent
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.
2019-03-12 18:42:30 +00:00
moneromooo-monero
2790d4d30a hardfork: update last_versions on popped block 2019-03-12 13:43:12 +00:00
naughtyfox
5ade72818b Wallet API: multisig_tx_set passing bug fixed 2019-03-12 14:02:01 +03:00
moneromooo-monero
576116d415 wallet: fix load failure if the mms isn't usable 2019-03-11 16:11:48 +00:00
Riccardo Spagni
1d1a02e9f9 Merge pull request #5258
bb8eab24 epee: certificate generation fix, pkey deleted (Dusan Klinec)
2019-03-10 21:11:58 +02:00
Dusan Klinec
bb8eab24da epee: certificate generation fix, pkey deleted
- pkey gets deleted by the pkey_deleter but the caller tries to serialize it which causes errors as the memory is freed
2019-03-10 20:09:51 +01:00
Riccardo Spagni
d281b81962 Merge pull request #5257
b8c2e21c Fix startup errors with SSL cert generation (Howard Chu)
2019-03-10 20:23:26 +02:00
Riccardo Spagni
098596ea12 Merge pull request #5264
4ef3c895 blockchain: fix ahead of time PoW batch calc (moneromooo-monero)
2019-03-10 20:18:26 +02:00
moneromooo-monero
4ef3c895a4 blockchain: fix ahead of time PoW batch calc 2019-03-10 10:16:13 +00:00
Jean-Michel DILLY
22136256a4 Start monerod as non root user 2019-03-09 23:22:03 +01:00
moneromooo-monero
59478c80dd daemon: new mining_status command 2019-03-09 20:51:53 +00:00
moneromooo-monero
9141a0a1ef connection_basic: remove debug exception ^_^ 2019-03-08 20:13:51 +00:00
Howard Chu
b8c2e21cba Fix startup errors with SSL cert generation
Use SSL API directly, skip boost layer
2019-03-08 15:15:24 +00:00
moneromooo-monero
4b21d38dfd blockchain: speed up getting N blocks weights/long term weights 2019-03-08 12:04:14 +00:00
moneromooo-monero
7ac3334217 slow-hash: cache TLS references locally once at function start 2019-03-07 18:11:19 +00:00
moneromooo-monero
7632dede7b crypto: fix PaX issue on NetBSD with CNv4 JIT 2019-03-07 16:46:02 +00:00
moneromooo-monero
89b1630e35 gtest: build fix for NetBSD 2019-03-07 16:46:02 +00:00
moneromooo-monero
fa43b54780 tests: handle any cmake detected python interpreter 2019-03-07 16:46:02 +00:00
moneromooo-monero
a48e49aa36 aesb: avoid stomping on an existing define on NetBSD 2019-03-07 16:08:00 +00:00
moneromooo-monero
3ac40938c3 timings: fix errno.h mispelt as error.h 2019-03-07 16:03:55 +00:00
moneromooo-monero
3f6f90bb31 wallet2: do not use invalid keys as fake outs in rings 2019-03-07 15:49:13 +00:00
Riccardo Spagni
49afbd0c53 Merge pull request #5232
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)
2019-03-07 15:17:31 +02:00
moneromooo-monero
c8c154a2c9 tests: fix cnv4-jit-test link on mac 2019-03-06 15:29:55 +00:00
moneromooo-monero
3907588bf6 rpc: make fill_pow restricted
It's slow work, so let's not expose it
2019-03-06 00:05:41 +00:00
moneromooo-monero
c6a70af86a wallet2: key image import fixes
- 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.
2019-03-05 22:41:44 +00:00
binaryFate
1f2930ce0b Update 2019 copyright 2019-03-05 22:05:34 +01:00
Riccardo Spagni
5bbbe3902b Merge pull request #4852
057c279c epee: add SSL support (Martijn Otto)
2019-03-05 16:21:30 +02:00
spoke0
8b51464516 add multisig tx sets to describe_transfer rpc endpoint 2019-03-05 14:42:43 +01:00
Martijn Otto
057c279cb4 epee: add SSL support
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.
2019-03-05 14:16:08 +01:00
Dusan Klinec
5ea17909ca device/trezor: debugging features, trezor tests 2019-03-05 14:02:45 +01:00
Riccardo Spagni
e65221d690 Merge pull request #5119
f024a10b db_lmdb: make mdb_block_info format conversion more future proof (moneromooo-monero)
2019-03-05 14:12:24 +02:00
Riccardo Spagni
5b9c3df5c1 Merge pull request #5103
ceb72be3 p2p: avoid busy loop when we have nothing to connect to (moneromooo-monero)
2019-03-05 14:09:42 +02:00
Riccardo Spagni
ed6aa76cca Merge pull request #5100
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)
2019-03-05 14:09:19 +02:00
moneromooo-monero
f024a10b68 db_lmdb: make mdb_block_info format conversion more future proof
If mdb_block_info changes again, the v2 to v3 conversion would
convert to an incorrect format.
2019-03-05 12:06:23 +00:00
moneromooo-monero
ceb72be329 p2p: avoid busy loop when we have nothing to connect to 2019-03-05 12:00:45 +00:00
moneromooo-monero
c4851024ce wallet_rpc_server: avoid repeated string allocations when parsing 2019-03-05 11:58:22 +00:00
moneromooo-monero
88c85c18e0 cryptonote: avoid double parsing blocks when syncing 2019-03-05 11:58:18 +00:00
moneromooo-monero
9feda0eeba cryptonote: speed up calculating coinbase tx prunable hash
It's a hash of an empty buffer, so we can avoid keccak
2019-03-05 11:58:16 +00:00
moneromooo-monero
238401d4e9 core: avoid double parsing blocks after hoh 2019-03-05 11:58:13 +00:00
moneromooo-monero
dc5a76095c blockchain: avoid unneeded block copy 2019-03-05 11:58:10 +00:00
moneromooo-monero
79b4e9f377 save some database calls when getting top block hash and height 2019-03-05 11:58:05 +00:00
moneromooo-monero
9827880877 blockchain: avoid pointless transaction copy and temporary 2019-03-05 11:58:02 +00:00
moneromooo-monero
07d655e438 blockchain: avoid duplicate block hash computation 2019-03-05 11:58:00 +00:00
moneromooo-monero
f75d51abda core: avoid calculating tx prefix hash when we don't need it 2019-03-05 11:57:57 +00:00
moneromooo-monero
b044d03a51 Avoid repeated (de)serialization when syncing 2019-03-05 11:57:55 +00:00
Riccardo Spagni
082149c580 fix merge errors, update recommended version to 0.14.0.2 2019-03-05 13:46:35 +02:00
Riccardo Spagni
f3b368c659 update checkpoints hash 2019-03-05 13:06:36 +02:00
Riccardo Spagni
e518f2b1c0 update checkpoints, update README for 0.14.1 release 2019-03-05 13:05:41 +02:00
Riccardo Spagni
8780d6b43d update readme via cherry-pick 2019-03-05 13:00:39 +02:00
Riccardo Spagni
39d7d3113b Merge pull request #5231
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)
2019-03-05 12:40:06 +02:00
moneromooo-monero
b747e836c8 wallet2: don't calculate prefix hash when we don't need it 2019-03-05 10:28:55 +00:00
moneromooo-monero
e69477bf25 db: speedup block addition
by avoiding repeated (de)serialization
2019-03-05 10:28:52 +00:00
moneromooo-monero
108c625b3f CryptonightR: define out i386/x86_64 specific code on other archs 2019-03-05 10:24:24 +00:00
moneromooo-monero
1b8757dddc slow-hash: fix build on arm 2019-03-05 10:24:24 +00:00
TheCharlatan
5057eb1199 cmake: ARCH_ID fixes for cross compilation 2019-03-05 10:24:14 +00:00
Riccardo Spagni
5fb4a9719c Merge pull request #5101
23abe607 check load_t_from_json return values (moneromooo-monero)
e396146a default initialize rpc structures (moneromooo-monero)
ef93b099 various: remove unused variables (moneromooo-monero)
2019-03-05 10:10:57 +02:00
moneromooo-monero
23abe60705 check load_t_from_json return values 2019-03-04 22:38:06 +00:00
moneromooo-monero
e396146aee default initialize rpc structures 2019-03-04 22:38:03 +00:00
moneromooo-monero
ef93b0995c various: remove unused variables 2019-03-04 22:24:49 +00:00
Riccardo Spagni
c83e80c263 Merge pull request #5162
4d3b61a3 Use io_service::work in epee tcp server (Lee Clagett)
2019-03-04 21:33:48 +02:00
Riccardo Spagni
f18a7e39b8 Merge pull request #5160
7af4fbd4 epee: Add space after ':' in additional http response headers (Tom Smeding)
2019-03-04 21:33:24 +02:00
Riccardo Spagni
2f7108f9d7 Merge pull request #5156
3d2772a0 wallet-rpc: get balance for all accounts and subaddresses (stoffu)
2019-03-04 21:33:07 +02:00
Riccardo Spagni
6984a4d69c Merge pull request #5154
8a1ff079 wallet-rpc: get transfers for all accounts and subaddresses (Jethro Grassie)
2019-03-04 21:32:42 +02:00
Riccardo Spagni
5260111631 Merge pull request #5146
4a9257b4 Support docker for gitian builds (TheCharlatan)
2019-03-04 21:32:30 +02:00
Riccardo Spagni
8e3bd389ea Merge pull request #5143
1f5680c8 simplewallet: add help for ask-password options (moneromooo-monero)
c7c74caf simplewallet: mark confirm-missing-payment-id as obsolete (moneromooo-monero)
2019-03-04 21:31:33 +02:00
Riccardo Spagni
27db0e3bb9 Merge pull request #5141
5c81a9f1 wallet_rpc_server: add a validate_address RPC (moneromooo-monero)
2019-03-04 21:30:45 +02:00
Riccardo Spagni
5ab6d68a40 Merge pull request #5140
a3973fc9 debug compilation fix: net lib missing common deps (Dusan Klinec)
2019-03-04 21:30:14 +02:00
Riccardo Spagni
d70de1150a Merge pull request #5136
7da7a9bb Update openssl to 1.0.2q in depends build system (who-biz)
2019-03-04 21:29:28 +02:00
Riccardo Spagni
933c701c6e Merge pull request #5133
f0fc4064 Various speedups to depends and Travis (TheCharlatan)
2019-03-04 21:28:56 +02:00
Riccardo Spagni
66014706bb Merge pull request #5131
d2c95ab9 Don't decrypt keys in view only wallets in wallet_keys_unlocker (Doyle)
2019-03-04 21:28:09 +02:00
Riccardo Spagni
9753daf595 Merge pull request #5129
08f60f8e readme: add new workflow for translations (Pootle) (erciccione)
2019-03-04 21:27:36 +02:00
Riccardo Spagni
42adc50766 Merge pull request #5125
8298f42e miner: it can now autodetect the optimal number of threads (moneromooo-monero)
2019-03-04 21:27:16 +02:00
Riccardo Spagni
d3f39da7c8 Merge pull request #5117
fcd00079 unit_tests: remove leftover debug print (moneromooo-monero)
2019-03-04 21:26:14 +02:00
Riccardo Spagni
4a390d43f8 Merge pull request #5113
c0e9e805 Fixed missing return value in once_a_time class on windows (Markus Behm)
2019-03-04 21:25:44 +02:00
Riccardo Spagni
a6adbdc0b0 Merge pull request #5112
2a94ec22 ITS#8969 tweak mdb_page_split (Howard Chu)
2019-03-04 21:25:24 +02:00
Riccardo Spagni
372c0da086 Merge pull request #5111
6a3608d3 cryptonote_protocol_handler: pad tx messages when using tor/i2p (moneromooo-monero)
2019-03-04 21:24:32 +02:00
Riccardo Spagni
196022530b Merge pull request #5108
1c9d5285 blockchain_prune: don't prune before v10 (moneromooo-monero)
2019-03-04 21:24:09 +02:00
Riccardo Spagni
36344e8e04 Merge pull request #5105
59a7b9aa README.md - add few FreeBSD instructions, fix v13.0 release tag (monerorus)
2019-03-04 21:23:34 +02:00
Riccardo Spagni
a28237c9ca Merge pull request #5102
1eef0565 performance_tests: better stats, and keep track of timing history (moneromooo-monero)
2019-03-04 21:22:51 +02:00
Riccardo Spagni
722a856d7e Merge pull request #5096
7c3ade44 network_throttle: use circular_buffer where appropriate (moneromooo-monero)
2019-03-04 21:21:25 +02:00
Riccardo Spagni
e1a177f0da Merge pull request #5092
eec79276 blockchain: fix default genesis block timestamp (moneromooo-monero)
2019-03-04 21:21:08 +02:00
Riccardo Spagni
4466f4504e Merge pull request #5091
123fc2a2 i2p: initial support (Jethro Grassie)
2019-03-04 21:20:34 +02:00
Riccardo Spagni
b0d326bf2a Merge pull request #5084
9d58749b wallet2: fix hashchain going out of sync on refresh error (moneromooo-monero)
2019-03-04 21:19:12 +02:00
Riccardo Spagni
9d415495bf Merge pull request #5082
1bc5f9fa bulletproofs: speed up vector_power_sum (moneromooo-monero)
2019-03-04 21:18:53 +02:00
Riccardo Spagni
11daa98c0a Merge pull request #5081
d78addcb db_lmdb: don't unnecessarily cast to double on the way to uint64_t (moneromooo-monero)
2019-03-04 21:18:24 +02:00
Riccardo Spagni
46fd181cca Merge pull request #4054
24569454 epee: add SSL support (moneromooo-monero)
2019-03-04 21:17:21 +02:00
Riccardo Spagni
9547e3f451 Merge pull request #5224
807903bb hardfork: fix fork determination for historical heights (moneromooo)
2019-03-04 17:17:34 +02:00
Riccardo Spagni
de6d6c0e29 Merge pull request #5217
fa2fbc39 wallet2: fix mishandling rct outputs in coinbase tx (moneromooo-monero)
2019-03-04 17:15:06 +02:00
Riccardo Spagni
927b2300b3 Merge pull request #5176
5f67e7f5 blockchain: forbid older BP rct versions from v11 (moneromooo-monero)
2019-03-04 17:14:35 +02:00
moneromooo-monero
5f67e7f547 blockchain: forbid older BP rct versions from v11 2019-03-04 15:08:12 +00:00
Riccardo Spagni
09020235bf Merge pull request #5175
85088d9f db_lmdb: fix missing mdb_dbi_close in migration (moneromooo-monero)
2019-03-04 17:06:58 +02:00
Riccardo Spagni
815c8a48ab Merge pull request #5174
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)
2019-03-04 17:06:37 +02:00
Riccardo Spagni
8c53ac2dd1 Merge pull request #5132
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)
2019-03-04 14:58:45 +02:00
Riccardo Spagni
194c4c0bcb Merge pull request #5128
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)
2019-03-04 14:58:04 +02:00
moneromooo-monero
0de14396b9 tests: add a CNv4 JIT test 2019-03-04 11:56:55 +00:00
moneromooo-monero
24d281c324 crypto: plug CNv4 JIT into cn_slow_hash
Enabled by setting the MONERO_USE_CNV4_JIT env var to 1
2019-03-04 11:56:55 +00:00
moneromooo-monero
78ab59ea44 crypto: clear cache after generating random program 2019-03-04 11:56:46 +00:00
moneromooo-monero
b9a618848f performance_tests: add tests for new Cryptonight variants 2019-03-04 11:56:38 +00:00
SChernykh
fff23bf7c6 CNv4 JIT compiler for x86-64 and tests
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
2019-03-04 11:56:29 +00:00
moneromooo-monero
3dde67d82d blockchain: add v10 fork heights 2019-03-04 11:56:22 +00:00
moneromooo-monero
a17da7202b Print the reason why a notification spec failed to parse 2019-03-04 11:48:46 +00:00
moneromooo-monero
356d813799 blockchain: include number of discarded blocks in --reorg-notify 2019-03-04 11:48:44 +00:00
moneromooo-monero
4d598e3d4d core: add a few more block rate window sizes
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.
2019-03-04 11:48:42 +00:00
moneromooo-monero
d4fb9641e0 core: add --block-rate-notify
This runs a command whenever the block rate deviates too much
from the expectation
2019-03-04 11:48:39 +00:00
moneromooo-monero
28b6dbf263 notify: fix tokenizing being too strict 2019-03-04 11:48:36 +00:00
moneromooo
807903bbbf hardfork: fix fork determination for historical heights 2019-03-04 11:19:59 +00:00
Riccardo Spagni
1b4fa00d7c Merge pull request #5126
f1fb06b1 Fixed path to int-util.h (SChernykh)
9da0892b Adding cnv4-2 tweaks (SChernykh)
f51397b3 Cryptonight variant 4 aka CryptonightR (SChernykh)
2019-03-04 12:10:16 +02:00
Riccardo Spagni
55305559c1 Merge pull request #5124
b8787f43 ArticMine's new block weight algorithm (moneromooo-monero)
2019-03-04 12:09:13 +02:00
Riccardo Spagni
35e0bf2e06 Merge pull request #5122
52964501 ringct: fix v1 ecdhInfo serialization (moneromooo-monero)
2019-03-04 12:08:26 +02:00
Riccardo Spagni
4f06639d63 Merge pull request #5120
45b7df70 wallet_rpc_server: remove detached short payment ids support (moneromooo-monero)
2019-03-04 12:07:40 +02:00
Riccardo Spagni
e62ae67d16 Merge pull request #5118
49b2a48a simplewallet: tell the user to complain to the recipient (moneromooo-monero)
2019-03-04 12:07:02 +02:00
Riccardo Spagni
403fa6b4a3 Merge pull request #5115
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)
2019-03-04 12:06:42 +02:00
moneromooo-monero
b8787f4302 ArticMine's new block weight algorithm
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.
2019-03-04 09:33:58 +00:00
moneromooo-monero
fa2fbc3917 wallet2: fix mishandling rct outputs in coinbase tx
Reported by cutcoin
2019-03-03 18:55:12 +00:00
Joel
364516975a Simplify RPC endpoint, emoving second RPC endpoint generate_from_view_key 2019-03-02 23:14:35 +01:00
Nathan Dorfman
be6f426a3f rpc: Allow submitting tx as hex blob over ZMQ 2019-02-27 16:55:04 -07:00
Jesse Jackson
7ec4d2c31a SHALL -> MUST
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
2019-02-27 17:18:47 -06:00
moneromooo-monero
9c4d403ae0 dns_utils: use fallback if the default resolver does not support DNSSEC 2019-02-27 11:08:56 +00:00
moneromooo-monero
4921c79494 cn_deserialize: remove some unused code 2019-02-26 17:57:03 +00:00
moneromooo-monero
eef164f7cc cryptonote_protocol_handler: search for syncing peers in "cruise mode"
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
2019-02-26 12:45:28 +00:00
moneromooo-monero
d0e07b3d86 performance_tests: fix NetBSD build 2019-02-25 11:11:09 +00:00
moneromooo-monero
7d88d8f27c discontinue use of alloca
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++.
2019-02-25 11:11:07 +00:00
xiphon
a54e81e572 daemon: add '--no-sync' arg to optionally disable blockchain sync 2019-02-25 03:22:14 +00:00
xiphon
551104fbf1 daemon: add --public-node mode, RPC port propagation over P2P 2019-02-25 02:40:23 +03:00
moneromooo-monero
1677fb06ad unbound: update to get the redefinition fix 2019-02-24 13:20:03 +00:00
TheCharlatan
f0fc4064a0 Various speedups to depends and Travis
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.
2019-02-23 15:34:59 +01:00
moneromooo-monero
8298f42e9d miner: it can now autodetect the optimal number of threads 2019-02-23 12:22:32 +00:00
moneromooo-monero
b674728dfa Better error when sending a tx with a too large extra field 2019-02-22 11:45:32 +00:00
moneromooo-monero
bb2aed8e4d rpc: quantize db size up to 5 GB in restricted mode 2019-02-21 23:49:53 +00:00
Jesse Jackson
8681f8ef68 OS X -> macOS 2019-02-21 17:14:32 -06:00
moneromooo-monero
7c09882a27 dns_utils: remove MoneroPulse/checkpoints mention in TXT record code
This code is used for more than just these
2019-02-21 17:38:43 +00:00
Joel
c17c81881b Remove code duplication 2019-02-21 15:49:32 +01:00
moneromooo-monero
85088d9f85 db_lmdb: fix missing mdb_dbi_close in migration
Fixed by hyc
2019-02-21 09:52:30 +00:00
stoffu
3d2772a0d6 wallet-rpc: get balance for all accounts and subaddresses 2019-02-20 14:23:36 +09:00
Dusan Klinec
8630a028f2 wallet: fix payment ID decryption for construction data 2019-02-20 03:55:35 +01:00
Dusan Klinec
75e5aafdcb device/trezor: dummy payment ID fix 2019-02-20 02:00:14 +01:00
Joel
acb14c1079 Add generate_from_view_key RPC method 2019-02-19 14:30:35 +01:00
Joel
7dd7a3b791 Add generate_from_keys RPC method 2019-02-19 14:13:01 +01:00
Tom Smeding
7af4fbd4d1 epee: Add space after ':' in additional http response headers 2019-02-18 14:56:28 +01:00
Jethro Grassie
8a1ff079ea wallet-rpc: get transfers for all accounts and subaddresses 2019-02-17 22:21:45 -05:00
TheCharlatan
4a9257b464 Support docker for gitian builds
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.
2019-02-14 23:14:34 +01:00
moneromooo-monero
5c81a9f1a1 wallet_rpc_server: add a validate_address RPC 2019-02-14 21:01:11 +00:00
SChernykh
f1fb06b137 Fixed path to int-util.h 2019-02-14 20:46:56 +01:00
SChernykh
9da0892b10 Adding cnv4-2 tweaks
Co-Authored-By: Lee Clagett <vtnerd@users.noreply.github.com>
2019-02-14 20:42:50 +01:00
SChernykh
f51397b306 Cryptonight variant 4 aka CryptonightR
It introduces random integer math into the main loop.
2019-02-14 11:29:54 +01:00
moneromooo-monero
1f5680c8db simplewallet: add help for ask-password options 2019-02-14 09:21:22 +00:00
moneromooo-monero
c7c74cafec simplewallet: mark confirm-missing-payment-id as obsolete 2019-02-14 09:21:22 +00:00
Dusan Klinec
a3973fc95f debug compilation fix: net lib missing common deps
```
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
```
2019-02-13 23:37:46 +01:00
Doyle
d2c95ab941 Don't decrypt keys in view only wallets in wallet_keys_unlocker 2019-02-13 15:36:49 +11:00
Lee Clagett
4d3b61a31b Use io_service::work in epee tcp server 2019-02-10 13:40:32 -05:00
italocoin
de32dcea1d Human readable message if maximum outputs reached 2019-02-10 09:51:20 -05:00
who-biz
7da7a9bbcc Update openssl to 1.0.2q in depends build system 2019-02-10 08:14:33 -05:00
Markus Behm
c0e9e80581 Fixed missing return value in once_a_time class on windows 2019-02-09 15:24:34 -05:00
cslashm
2dbc487ec0 Add support for V10 protocol with BulletProofV2 and short amount. 2019-02-08 17:02:55 +01:00
cslashm
63cc02c08d Fix dummy decryption in debug mode 2019-02-08 17:02:55 +01:00
cslashm
f0e55cebf7 fix log namespace 2019-02-08 17:02:55 +01:00
cslashm
460da140ec New scheme key destination contrfol
Implies protocol version management.
2019-02-08 17:02:44 +01:00
erciccione
08f60f8e77 readme: add new workflow for translations (Pootle) 2019-02-07 16:09:19 +01:00
moneromooo-monero
49b2a48a46 simplewallet: tell the user to complain to the recipient
for long payment ids
2019-02-03 10:34:07 +00:00
moneromooo-monero
529645014c ringct: fix v1 ecdhInfo serialization
The change made for v2 broke v1, and we have no way to know which
version we're serializing here. However, since we don't actually
care about space savings in this case, we continue serialiazing
both mask and amount.
2019-02-03 10:33:10 +00:00
moneromooo-monero
2456945408 epee: add SSL support
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.
2019-02-02 20:05:33 +00:00
moneromooo-monero
45b7df703b wallet_rpc_server: remove detached short payment ids support 2019-02-02 18:53:14 +00:00
moneromooo-monero
7c3ade4410 network_throttle: use circular_buffer where appropriate 2019-02-01 21:33:13 +00:00
moneromooo-monero
fcd0007952 unit_tests: remove leftover debug print 2019-02-01 19:14:55 +00:00
Tom Smeding
fec359a641 cryptonote: Fix enum check in expand_transaction_2
This was noticed because GCC warned about using an enum value in a
boolean context.
2019-02-01 16:44:58 +01:00
Tom Smeding
9bf0e53751 cryptonote: Add const-qualifier on comparison functor
The original code did not compile with GCC 8.2.1 in C++17 mode, since
comparison functions for std::set's must be invocable as const.
2019-02-01 16:44:56 +01:00
Tom Smeding
5d2fdc2e8c serialization: Use pos_type instead of streampos
According to [1], the ios_base::streampos member type is deprecated, and
removed in C++17. This type was an alias for pos_type, which this commit
uses instead.

[1]: https://en.cppreference.com/w/cpp/io/ios_base
2019-02-01 16:44:55 +01:00
Howard Chu
2a94ec22aa ITS#8969 tweak mdb_page_split
Bump up number of keys for which we use fine-grained splitpoint search
2019-01-30 23:45:48 +00:00
moneromooo-monero
6a3608d3d2 cryptonote_protocol_handler: pad tx messages when using tor/i2p 2019-01-30 23:17:45 +00:00
Jethro Grassie
123fc2a25a i2p: initial support 2019-01-30 13:37:45 -05:00
moneromooo-monero
1c9d5285d1 blockchain_prune: don't prune before v10
This uses system time since it doesn't see the p2p network,
so is not 100% accurate
2019-01-30 16:32:14 +00:00
Riccardo Spagni
31bdf7bd11 Merge pull request #4988
973403bc Adding initial support for broadcasting transactions over Tor (Lee Clagett)
2019-01-29 16:47:17 +02:00
Riccardo Spagni
227bf1407e Merge pull request #5104
dc0b86ab block_queue: fix late sanity check off by one (moneromooo-monero)
2019-01-29 16:45:47 +02:00
monerorus
59a7b9aa91 README.md - add few FreeBSD instructions, fix v13.0 release tag
tested on current FreeBSD 11.2-p4 , used master and release-v0.13 branchs of monero (w\o any patches)
`gmake` - success
`gmake release-static` - fail (-fPIC error, i think i need build dependencies from ports static instead install from pkg)
`gmake debug` - fail (wallet2.cpp.o - file not recognized: file format no recognized)
`gmake release-test` - success (100% passed)
2019-01-29 13:19:48 +00:00
Lee Clagett
973403bc9f Adding initial support for broadcasting transactions over Tor
- Support for ".onion" in --add-exclusive-node and --add-peer
  - Add --anonymizing-proxy for outbound Tor connections
  - Add --anonymous-inbounds for inbound Tor connections
  - Support for sharing ".onion" addresses over Tor connections
  - Support for broadcasting transactions received over RPC exclusively
    over Tor (else broadcast over public IP when Tor not enabled).
2019-01-28 23:56:33 +00:00
moneromooo-monero
dc0b86ab4b block_queue: fix late sanity check off by one 2019-01-28 22:17:43 +00:00
Riccardo Spagni
1e5cd3b35a Merge pull request #5062
acfff8d0 rpc: fix internal daemon calls in restricted rpc getting partial data (moneromooo-monero)
2019-01-28 21:40:11 +02:00
Riccardo Spagni
40bb66cc1e Merge pull request #5053
23813c71 blockchain: add --reorg-notify (moneromooo-monero)
f6db59b0 notify: handle arbitrary tags (moneromooo-monero)
ff959216 notify: warn if the spec contains one of '"\ (moneromooo-monero)
13852678 common: set MONERO_DEFAULT_LOG_CATEGORY for notify and spawn (moneromooo-monero)
2019-01-28 21:35:46 +02:00
moneromooo-monero
acfff8d0ce rpc: fix internal daemon calls in restricted rpc getting partial data 2019-01-28 19:35:20 +00:00
Riccardo Spagni
23c7663167 Merge pull request #5080
d294a577 daemon: extend 'print_pl' command, optional filter by type and limit (xiphon)
2019-01-28 21:34:17 +02:00
Riccardo Spagni
32506a6ca7 Merge pull request #5079
efec3ed2 Resync to upstream mdb.master (Howard Chu)
2019-01-28 21:33:59 +02:00
Riccardo Spagni
c07c907114 Merge pull request #5074
b8c5f550 wallet api: don't truncate address in subaddress_account (selsta)
2019-01-28 21:33:33 +02:00
Riccardo Spagni
d214992a7f Merge pull request #5073
45ea19fa bump sodium to 1.0.16 (italocoin)
2019-01-28 21:33:11 +02:00
moneromooo-monero
23813c7160 blockchain: add --reorg-notify
This will trigger if a reorg is seen. This may be used to do things
like stop automated withdrawals on large reorgs.

%s is replaced by the height at the split point
%h is replaced by the height of the new chain
%n is replaced by the number of new blocks after the reorg
2019-01-28 19:32:31 +00:00
moneromooo-monero
f6db59b011 notify: handle arbitrary tags 2019-01-28 19:32:28 +00:00
moneromooo-monero
ff95921668 notify: warn if the spec contains one of '"\
These aren't processed as a shell does, so this may surprise users
2019-01-28 19:32:25 +00:00
moneromooo-monero
13852678e1 common: set MONERO_DEFAULT_LOG_CATEGORY for notify and spawn 2019-01-28 19:32:22 +00:00
Riccardo Spagni
4f104a0dc3 Merge pull request #5069
2112060d wallet2: fix duplicate tx notifications for pool txes (moneromooo-monero)
2019-01-28 21:32:14 +02:00
Riccardo Spagni
b7719022fd Merge pull request #5068
96e35506 wallet2: fix incorrect patch for determining fork rules (moneromooo-monero)
2019-01-28 21:31:47 +02:00
Riccardo Spagni
fbecfc3c8f Merge pull request #5065
ca86ef1b readline: don't dereference possible NULL pointer (Jethro Grassie)
2019-01-28 21:31:20 +02:00
Riccardo Spagni
8fafdc4767 Merge pull request #5064
5ecc5cc7 added two tests for partial word and case tolerance in mnemonics (Paul Shapiro)
2019-01-28 21:30:54 +02:00
Riccardo Spagni
f2ca4e3205 Merge pull request #5063
11227e0b mnemonics: compare canonical words (lowercase) (moneromooo-monero)
2019-01-28 21:30:26 +02:00
Riccardo Spagni
3749b9b4ad Merge pull request #5060
cb3b4adb translations: update and sync all language files (erciccione)
dc0f618e utils: 'update-translations.sh' now removes obsolete strings (erciccione)
2019-01-28 21:28:36 +02:00
Riccardo Spagni
a2b5f658de Merge pull request #5058
99b3bc5b README.md: updated build instructions for OpenBSD 6.4 (ston1th)
2019-01-28 21:28:06 +02:00
Riccardo Spagni
756ed760f7 Merge pull request #5056
8258a9e7 wallet: do not check txpool in background mode (moneromooo-monero)
2019-01-28 21:27:34 +02:00
Riccardo Spagni
77e96d0948 Merge pull request #5055
6c060e6a device: proper handling of user input (selsta)
2019-01-28 21:27:10 +02:00
Riccardo Spagni
0c970fde1c Merge pull request #5054
93c21644 device_ledger: remove full_name variable (selsta)
2019-01-28 21:26:44 +02:00
Riccardo Spagni
0daa00e035 Merge pull request #5052
b6534c40 ringct: remove unused senderPk from ecdhTuple (moneromooo-monero)
7d375981 ringct: the commitment mask is now deterministic (moneromooo-monero)
99d946e6 ringct: encode 8 byte amount, saving 24 bytes per output (moneromooo-monero)
cdc3ccec ringct: save 3 bytes on bulletproof size (moneromooo-monero)
f931e16c add a bulletproof version, new bulletproof type, and rct config (moneromooo-monero)
2019-01-28 21:24:55 +02:00
moneromooo-monero
1eef056588 performance_tests: better stats, and keep track of timing history 2019-01-28 15:45:37 +00:00
Riccardo Spagni
4a0e4c7d70 Merge pull request #4843
b750fb27 Pruning (moneromooo-monero)
2019-01-28 13:55:50 +02:00
moneromooo-monero
eec792764d blockchain: fix default genesis block timestamp 2019-01-26 21:39:00 +00:00
moneromooo-monero
b6534c40e6 ringct: remove unused senderPk from ecdhTuple
This was an early ringct field, which was never used in production
2019-01-22 23:17:42 +00:00
moneromooo-monero
7d37598158 ringct: the commitment mask is now deterministic
saves space in the tx and is safe

Found by knaccc
2019-01-22 23:17:39 +00:00
moneromooo-monero
99d946e619 ringct: encode 8 byte amount, saving 24 bytes per output
Found by knaccc
2019-01-22 23:17:31 +00:00
moneromooo-monero
cdc3ccec5f ringct: save 3 bytes on bulletproof size
Found by luigi1111
2019-01-22 23:17:27 +00:00
moneromooo-monero
f931e16c6e add a bulletproof version, new bulletproof type, and rct config
This makes it easier to modify the bulletproof format
2019-01-22 23:17:24 +00:00
moneromooo-monero
b750fb27b0 Pruning
The blockchain prunes seven eighths of prunable tx data.
This saves about two thirds of the blockchain size, while
keeping the node useful as a sync source for an eighth
of the blockchain.

No other data is currently pruned.

There are three ways to prune a blockchain:

- run monerod with --prune-blockchain
- run "prune_blockchain" in the monerod console
- run the monero-blockchain-prune utility

The first two will prune in place. Due to how LMDB works, this
will not reduce the blockchain size on disk. Instead, it will
mark parts of the file as free, so that future data will use
that free space, causing the file to not grow until free space
grows scarce.

The third way will create a second database, a pruned copy of
the original one. Since this is a new file, this one will be
smaller than the original one.

Once the database is pruned, it will stay pruned as it syncs.
That is, there is no need to use --prune-blockchain again, etc.
2019-01-22 20:30:51 +00:00
Jethro Grassie
ca86ef1beb readline: don't dereference possible NULL pointer 2019-01-21 01:57:14 -05:00
moneromooo-monero
9d58749b85 wallet2: fix hashchain going out of sync on refresh error 2019-01-19 16:47:13 +00:00
moneromooo-monero
1bc5f9fa4b bulletproofs: speed up vector_power_sum
found by sarang
2019-01-19 00:18:34 +00:00
moneromooo-monero
d78addcbc0 db_lmdb: don't unnecessarily cast to double on the way to uint64_t 2019-01-19 00:03:04 +00:00
Riccardo Spagni
4e72384318 Merge pull request #5008
c6d38718 core: include a dummy encrypted payment id when no payment is used (moneromooo-monero)
b7441c4a core, wallet: remember original text version of destination address (moneromooo-monero)
a9b1c04a crptonote_core: do not error out sending unparsable extra field (moneromooo-monero)
2019-01-18 19:12:58 +02:00
Riccardo Spagni
5753d71922 Merge pull request #5050
07cb574c ringct: remove duplicate rv.mixRing = mixRing; in genRctSimple (stoffu)
2019-01-18 19:02:01 +02:00
Riccardo Spagni
8ba36cf6d4 Merge pull request #5049
0a29660f message_store: init me field (moneromooo-monero)
2019-01-18 19:01:23 +02:00
Riccardo Spagni
416b6719bd Merge pull request #5047
584126d1 i18n: filter LANG/LC_LANG for valid characters, and handle @ (moneromooo-monero)
2019-01-18 19:01:02 +02:00
Riccardo Spagni
54eb3318e2 Merge pull request #5048
a67b77a9 blockchain: don't propagate exception past dtor (moneromooo-monero)
2019-01-18 19:00:47 +02:00
Riccardo Spagni
08f08beede Merge pull request #5046
524bf750 core_tests: add a --list_tests command line switch (moneromooo-monero)
2019-01-18 19:00:16 +02:00
moneromooo-monero
c6d387184e core: include a dummy encrypted payment id when no payment is used
For better transaction uniformity, even though this wastes space.
2019-01-18 16:58:50 +00:00
moneromooo-monero
b7441c4a32 core, wallet: remember original text version of destination address 2019-01-18 16:58:47 +00:00
moneromooo-monero
a9b1c04acf crptonote_core: do not error out sending unparsable extra field
extra is arbitrary, and the user may well want to send custom data
2019-01-18 16:58:45 +00:00
Riccardo Spagni
13b12973d1 Merge pull request #5037
51b0625e simplewallet: improve punctuation in user visible string (selsta)
2019-01-18 09:25:59 +02:00
Riccardo Spagni
aa5b0c7f71 Merge pull request #5028
464097e5 blockchain_ancestry: allow getting ancestry of a single output (moneromooo-monero)
a6216d1a blockchain_db: allow getting output keys without commitment (moneromooo-monero)
2019-01-18 09:25:34 +02:00
Riccardo Spagni
f3368acef5 Merge pull request #5020
1ef79b43 simplewallet: disable long payment ids by default (moneromooo-monero)
2019-01-18 09:25:18 +02:00
Riccardo Spagni
b65106ce93 Merge pull request #5017
21777daf epee: speedup word/number matching (moneromooo-monero)
2019-01-18 09:24:41 +02:00
Riccardo Spagni
3c80562861 Merge pull request #5014
0debe7d7 wallet2: remember which output keys map to which key images (moneromooo-monero)
2019-01-18 09:24:19 +02:00
Riccardo Spagni
fad4716abc Merge pull request #5010
b4433abc Optimize the depends builds for faster compilation (TheCharlatan)
2019-01-18 09:23:46 +02:00
Riccardo Spagni
4fb9cfa017 Merge pull request #4971
15904610 simplewallet: remove extra colon in a few calls to input_secure_line (stoffu)
247dab73 simplewallet: avoid conversion to string in input_secure_line (stoffu)
bf9ef7ad simplewallet: factor yesno hint into input_line (stoffu)
2019-01-18 09:23:03 +02:00
Riccardo Spagni
851c94eab8 Merge pull request #4966
1717e635 simplewallet: fix help text of rescan_bc to mention the "hard" option (stoffu)
2019-01-18 09:22:36 +02:00
xiphon
d294a577fa daemon: extend 'print_pl' command, optional filter by type and limit 2019-01-18 01:32:18 +00:00
stoffu
1717e63551 simplewallet: fix help text of rescan_bc to mention the "hard" option 2019-01-18 09:51:44 +09:00
stoffu
1590461005 simplewallet: remove extra colon in a few calls to input_secure_line 2019-01-18 09:48:54 +09:00
stoffu
247dab7304 simplewallet: avoid conversion to string in input_secure_line 2019-01-18 09:48:52 +09:00
stoffu
bf9ef7adb6 simplewallet: factor yesno hint into input_line 2019-01-18 09:48:48 +09:00
Howard Chu
efec3ed235 Resync to upstream mdb.master 2019-01-17 19:49:26 +00:00
TheCharlatan
b4433abc64 Optimize the depends builds for faster compilation
This includes more fine grained configure options and skipping the
openssl and zlib dependencies when compiling qt. The zlib and libevent
packages are removed.
2019-01-17 13:23:24 +01:00
moneromooo-monero
464097e592 blockchain_ancestry: allow getting ancestry of a single output
This involved a reorg of the code, to factor and speedup some bits,
as well as using the cache for all modes, and making both modes
usable in the same run.
2019-01-16 20:13:12 +00:00
moneromooo-monero
a6216d1ac2 blockchain_db: allow getting output keys without commitment
Since the commitment has to be calculated for non rct outputs,
it slows down a lot unnecessarily if we don't need it
2019-01-16 20:13:08 +00:00
moneromooo-monero
1ef79b430f simplewallet: disable long payment ids by default
unless --long-payment-id-support is used
2019-01-16 20:06:04 +00:00
moneromooo-monero
21777daf6e epee: speedup word/number matching
Number matching semantics are slightly changed: since this is used
as a filter to check whether a number is signed and/or floating
point, we can speed this up further. strto* functions are called
afterwards and will error out where necessary. We now also accept
numbers like .4 which were not accepted before.

The strto* calls on a boost::string_ref will not access unallocated
memory since the parsers always stop at the first bad character,
and the original string is zero terminated.

in arbitrary time measurement units for some arbitrary test case:

match_number2: 235 -> 70
match_word2: 330 -> 108
2019-01-16 19:59:40 +00:00
moneromooo-monero
0debe7d7d3 wallet2: remember which output keys map to which key images
This allows filling in transfer_details when a cold signed tx
gets seen in a block next
2019-01-16 19:58:13 +00:00
Riccardo Spagni
961bb1bd28 Merge pull request #5043
3dd89bdd Changed Windows build commands. (Aniket Pradhan)
2019-01-16 21:45:46 +02:00
selsta
51b0625e00 simplewallet: improve punctuation in user visible string 2019-01-16 20:45:39 +01:00
Riccardo Spagni
6285c43ffc Merge pull request #5042
c1081091 simplewallet: Show new address after going multisig (rbrunner7)
2019-01-16 21:42:17 +02:00
Riccardo Spagni
7e172dc8b0 Merge pull request #5036
d6dde478 remove trailing whitespace in README.md (David Meister)
2019-01-16 21:41:09 +02:00
Riccardo Spagni
8e4c0de46a Merge pull request #5035
53fcd159 simplewallet: don't subtract 1 to estimate blockchain height (moneromooo-monero)
2019-01-16 21:40:56 +02:00
Riccardo Spagni
c84d559fb1 Merge pull request #5034
13785ec9 wallet api/device: set estimated restore height if none is provided (selsta)
2019-01-16 21:40:20 +02:00
Riccardo Spagni
dc726f4b3b Merge pull request #5032
5ee6f037 blockchain: fix wrong hf version when popping multiple blocks (moneromooo-monero)
634d359a blockchain: use the version passed as parameter, not a new one (moneromooo-monero)
94a375d5 hardfork: remove batch transactions setup (moneromooo-monero)
2019-01-16 21:40:06 +02:00
Riccardo Spagni
e59813c3d7 Merge pull request #5029
d1b3990d p2p: don't stop the idle thread when no gray peers are found (moneromooo-monero)
2019-01-16 21:39:19 +02:00
Riccardo Spagni
3eb96fa512 Merge pull request #5027
9092fc4b wallet: do not display daemon controlled text if untrusted (moneromooo-monero)
2019-01-16 21:38:15 +02:00
Riccardo Spagni
246b28e47a Merge pull request #5022
37a9bcf4 Remove visibility settings from boost.mk (TheCharlatan)
2019-01-16 21:37:52 +02:00
Riccardo Spagni
a093a7569e Merge pull request #5021
b82efa32 epee: speed up json parsing (moneromooo-monero)
2019-01-16 21:37:29 +02:00
Riccardo Spagni
17878369f9 Merge pull request #5019
65ce387c daemon: add a +hex option to print_block (moneromooo-monero)
2019-01-16 21:36:08 +02:00
Riccardo Spagni
46fcae717a Merge pull request #5018
8bd71677 simplewallet: remove ability to transfer with detached short payment ids (moneromooo-monero)
2019-01-16 21:35:48 +02:00
Riccardo Spagni
a80978e699 Merge pull request #5015
6f2081f8 cryptonote_core: revert extra_tx_map (moneromooo-monero)
2019-01-16 21:32:14 +02:00
Riccardo Spagni
00090aae7f Merge pull request #5012
d7354c78 wallet_rpc_server: add all field to export_key_images (moneromooo-monero)
2019-01-16 21:31:40 +02:00
Riccardo Spagni
f8a10bcc07 Merge pull request #5009
5e10dee3 simplewallet: fix show_transfers colouring, and add red for failed (moneromooo-monero)
2019-01-16 21:30:52 +02:00
Riccardo Spagni
0673ed54cf Merge pull request #5006
7c58421c blockchain_blackball: make log file name consistent with executable (stoffu)
2019-01-16 19:29:29 +02:00
Riccardo Spagni
e0c107ee51 Merge pull request #5004
de9dcdd1 wallet2: finalize_multisig now rejects non N-1/N multisig wallets (moneromooo-monero)
2019-01-16 19:28:51 +02:00
Riccardo Spagni
36d420413b Merge pull request #5005
306a1244 core_tests: rename invalid multisig tests to read "invalid" (moneromooo-monero)
2019-01-16 19:28:15 +02:00
Riccardo Spagni
3e9bb9626a Merge pull request #5001
a5ffc2d5 Remove boost::lexical_cast for uuid and unused uuid function (Lee Clagett)
2019-01-16 19:27:13 +02:00
Riccardo Spagni
8e04070d9d Merge pull request #4995
99765b21 Remove unused hash in export_key_images (doy-lee)
2019-01-16 19:08:48 +02:00
Riccardo Spagni
47213e2519 Merge pull request #4994
c5e0539c device/trezor: store tx_prefix_hash in tx key aux (Dusan Klinec)
2019-01-16 19:08:13 +02:00
Riccardo Spagni
1f71bfc8d0 Merge pull request #4993
b8342dd5 blockchain: fix block rate check for empty blockchains (moneromooo-monero)
2019-01-16 19:07:55 +02:00
Riccardo Spagni
538043bdcd Merge pull request #4987
841a6acd wallet2: fix accessing unwound stack on exception (moneromooo-monero)
2019-01-16 19:07:13 +02:00
Riccardo Spagni
8bfce660a5 Merge pull request #4986
d24c325c daemon: print human friendly timestamp too (moneromooo-monero)
2019-01-16 19:06:53 +02:00
Riccardo Spagni
63b5c933ef Merge pull request #4985
808a1f1e wallet2: cut down on the number of useless derivation threads (moneromooo-monero)
2019-01-16 19:06:31 +02:00
Riccardo Spagni
9d57ee9ff6 Merge pull request #4984
008647d7 blockchain_db: speedup tx output gathering (moneromooo-monero)
2019-01-16 19:06:07 +02:00
Riccardo Spagni
cb996d15c5 Merge pull request #4981
60b35c91 Add --restore-date param (Howard Chu)
2019-01-16 19:05:31 +02:00
Riccardo Spagni
a193f1e236 Merge pull request #4980
219548f2 Sync hashchain bug fixed (naughtyfox)
2019-01-16 19:05:09 +02:00
Riccardo Spagni
b565115c84 Merge pull request #4979
611db08a Wallet: Initialize members without default ctor. (Tadeas Moravec)
2019-01-16 19:04:45 +02:00
Riccardo Spagni
846362842c Merge pull request #4976
85665003 epee: better network buffer data structure (moneromooo-monero)
2019-01-16 19:04:22 +02:00
Riccardo Spagni
c07969d0d1 Merge pull request #4973
aaafa8a9 ringct: avoid repeated point conversion (moneromooo-monero)
2019-01-16 19:03:45 +02:00
Riccardo Spagni
dfa1e56fbb Merge pull request #4972
b97059fc add erciccione's pgp key (erciccione)
2019-01-16 19:03:33 +02:00
selsta
b8c5f550c1 wallet api: don't truncate address in subaddress_account
Same behaviour as subaddress.cpp now.
2019-01-15 22:19:50 +01:00
italocoin
45ea19fafb bump sodium to 1.0.16 2019-01-15 07:35:45 -05:00
Gingeropolous
5c79abe539 update readme to include blurb on decentralization
it occurred to me that someone discovering monero for the first time, through the code and actually reading the readme, would not have any indication of the design focuses of keeping monero decentralized, both in terms of the mining infrastructure and the low cost of node operation.  I know the topic is sort of a ... wishy washy thing, but I tried to craft some language that gets the point across in general terms.
2019-01-13 23:40:13 -05:00
moneromooo-monero
96e35506e9 wallet2: fix incorrect patch for determining fork rules
Half of the patch was correct, but half was introducing another bug,
where a wallet asking for a fork that the daemon does not know about
yet would decide to use those rules.
2019-01-13 14:48:16 +00:00
moneromooo-monero
2112060d03 wallet2: fix duplicate tx notifications for pool txes 2019-01-13 14:47:42 +00:00
Paul Shapiro
5ecc5cc790 added two tests for partial word and case tolerance in mnemonics 2019-01-11 13:46:20 -06:00
moneromooo-monero
11227e0ba2 mnemonics: compare canonical words (lowercase) 2019-01-11 16:45:48 +00:00
erciccione
cb3b4adba5 translations: update and sync all language files 2019-01-11 15:19:56 +01:00
erciccione
dc0f618e90 utils: 'update-translations.sh' now removes obsolete strings 2019-01-11 15:19:28 +01:00
ston1th
99b3bc5b42 README.md: updated build instructions for OpenBSD 6.4 2019-01-09 20:38:33 +01:00
selsta
6c060e6aaa device: proper handling of user input
(1) If the user denies something on the Ledger,
    a proper error message is now shown.
(2) Ledger doesn't time out anymore while waiting
    on user input.
(3) Lower the timeout to 2 seconds, this is enough for
    normal Ledger <-> System communication.
2019-01-09 15:45:06 +01:00
moneromooo-monero
8258a9e7a9 wallet: do not check txpool in background mode
This avoids the constant message about needed to run refresh
to enter a password.
Also mention the txpool when asking for the password if the
reason is a pool tx.
2019-01-09 11:21:39 +00:00
selsta
93c2164434 device_ledger: remove full_name variable
This variable was never set, resulting in the
device name always showing as "disconnected".
2019-01-09 05:33:49 +01:00
moneromooo-monero
584126d15b i18n: filter LANG/LC_LANG for valid characters, and handle @
If there are more valid characters, add them in, I did not find
an actual list.
2019-01-08 16:03:30 +00:00
stoffu
07cb574ca4 ringct: remove duplicate rv.mixRing = mixRing; in genRctSimple 2019-01-08 11:51:35 +09:00
Riccardo Spagni
094b0c4d00 Merge pull request #5045
050ee521 wallet_api: fix usage of LOG_ERROR (moneromooo-monero)
2019-01-07 21:27:34 +02:00
Riccardo Spagni
4902b2ad3d Merge pull request #5016
434a147b blocks: fix checkpoint code generation on OpenBSD (moneromooo-monero)
2019-01-07 21:27:14 +02:00
Riccardo Spagni
53fba1455c Merge pull request #5007
68f095f0 message_store: fix error message adding const char * with offset (moneromooo-monero)
2019-01-07 21:26:52 +02:00
Riccardo Spagni
dd29284100 Merge pull request #4970
ec68cf82 Make get_output_key method const (moneroexamples)
2019-01-07 21:26:32 +02:00
moneromooo-monero
0a29660f5c message_store: init me field
Coverity 190651
2019-01-07 16:41:34 +00:00
moneromooo-monero
a67b77a9eb blockchain: don't propagate exception past dtor
Coverity 190660
2019-01-07 16:32:50 +00:00
moneromooo-monero
524bf750c0 core_tests: add a --list_tests command line switch 2019-01-07 14:42:19 +00:00
moneromooo-monero
050ee52162 wallet_api: fix usage of LOG_ERROR 2019-01-07 11:57:10 +00:00
moneroexamples
ec68cf822f Make get_output_key method const
get_output_key method is commonly used when working with txs and their key images. Because the method is not const, passing blockchain object though const& or pointers to const is not possible in this context. This is especially problematic in external projects (e.g., projects in moneroexamples) that use monero C++ api to operate on the blockchain and txs.

Thus, having get_output_key method will simplify moving blockchain object around through const references and pointers to const objects.
2019-01-07 05:53:14 +08:00
Riccardo Spagni
42abea7f72 Merge pull request #4969
08bcbd65 update expiry date for both signing and encryption keys (moneromooo-monero)
2019-01-06 20:45:32 +02:00
Riccardo Spagni
b67eb481a7 Merge pull request #4956
2d7b0236 wallet2: clear all payments on soft rescan_bc (moneromooo-monero)
2019-01-06 20:40:06 +02:00
Riccardo Spagni
be625a95af Merge pull request #4954
93c59b29 perf_timer: check allowed categories before logging (moneromooo-monero)
6a507dab perf_timer: add a way to get and reset the current time (moneromooo-monero)
c1581a5b perf_timer: only log to file (moneromooo-monero)
2019-01-06 20:39:29 +02:00
Riccardo Spagni
577a8f5c84 Merge pull request #4952
570dd369 p2p: use vector instead of list for peer lists (moneromooo-monero)
2019-01-06 20:39:07 +02:00
Riccardo Spagni
e723eb960d Merge pull request #4951
b21a60ef mlocker: set default log category (moneromooo-monero)
2019-01-06 20:38:33 +02:00
Riccardo Spagni
3ce7977389 Merge pull request #4950
68f045de easylogging++: check allowed categories before logging (moneromooo-monero)
2019-01-06 20:38:10 +02:00
Riccardo Spagni
13b006137c Merge pull request #4949
5464725a protocol: change standby mode to not wait sleeping (moneromooo-monero)
85807dfb add a once_a_time_milliseconds class (moneromooo-monero)
2019-01-06 20:37:51 +02:00
Riccardo Spagni
ad1eb3338c Merge pull request #4938
a13eb0a1 epee: speed up string matching a bit (moneromooo-monero)
3a3858dc epee: avoid string allocation when parsing a pod from string (moneromooo-monero)
2019-01-06 20:36:46 +02:00
Riccardo Spagni
31b6d128f2 Merge pull request #4934
5dc590cb wallet2: speedup output tracking (moneromooo-monero)
db3f2a91 wallet: optionally keep track of owned outputs uses (moneromooo-monero)
2019-01-06 20:36:01 +02:00
Aniket Pradhan
3dd89bdd19 Changed Windows build commands.
`pacman -Syuu` can either upgrade or degrade the packages (depending upon the package lists), and should not be normally used. Instead of that, one should use `pacman -Syu` which only upgrades the packages.
2019-01-04 22:17:07 +05:30
rbrunner7
c108109102 simplewallet: Show new address after going multisig 2019-01-04 16:33:02 +01:00
selsta
13785ec96b wallet api/device: set estimated restore height if none is provided 2019-01-02 11:25:49 +01:00
David Meister
d6dde478de remove trailing whitespace in README.md 2019-01-02 12:25:18 +11:00
moneromooo-monero
53fcd15953 simplewallet: don't subtract 1 to estimate blockchain height
in case it returns 0, and other uses don't, plus it's a estimation anyway.
2019-01-02 00:55:19 +00:00
moneromooo-monero
5ee6f03742 blockchain: fix wrong hf version when popping multiple blocks
Since we keep track of the hf version in the db, we pick it up
from there instead of doing the full reorg call, which is quite
expensive
2019-01-01 18:28:01 +00:00
moneromooo-monero
634d359a84 blockchain: use the version passed as parameter, not a new one 2019-01-01 18:28:01 +00:00
moneromooo-monero
94a375d559 hardfork: remove batch transactions setup
This is now default, so it spares us the warnings
2019-01-01 18:28:01 +00:00
moneromooo-monero
5dc590cbdb wallet2: speedup output tracking
It can get heavy for large wallets
2018-12-31 23:57:54 +00:00
moneromooo-monero
db3f2a91fa wallet: optionally keep track of owned outputs uses 2018-12-31 23:57:51 +00:00
luigi1111
e344d93ce7 Merge pull request #4960
b56b5b5 ignore child process when exec (jtgrassie)
2018-12-31 16:32:12 -06:00
luigi1111
53760ee044 Merge pull request #4957
0e2f5cb perf_timer: make all logs Info level (moneromooo-monero)
2018-12-31 16:30:47 -06:00
luigi1111
1aaa82cb1a Merge pull request #4955
25e5a85 singleton: fix missing *this return value in operator= (monermooo-monero)
2018-12-31 16:28:49 -06:00
luigi1111
61c0083105 Merge pull request #4953
dbbb3ce cryptonote: don't serialize for blob size if already known (moneromooo-monero)
2018-12-31 16:26:22 -06:00
luigi1111
a872a2a41a Merge pull request #4948
1d892ec simplewallet: donate command validate amount (selsta)
2018-12-31 16:10:30 -06:00
luigi1111
69e8567c0e Merge pull request #4946
6644b9b blockchain_db: remove a couple unused functions (moneromooo-monero)
ce594f5 blockchain_db: allocate known size vector only once (moneromooo-monero)
8332698 db_lmdb: inline check_open, it's trivial and called everywhere (moneromooo-monero)
5511563 db_lmdb: avoid pointless division (moneromooo-monero)
d1efe3d cryptonote: set tx hash on newly parsed txes when known (moneromooo-monero)
9cc68a2 tx_pool: add a few std::move where it can make a difference (moneromooo-monero)
2018-12-31 16:06:50 -06:00
luigi1111
9c2d671397 Merge pull request #4945
e37154a build: protobuf dependency fixes, libusb build (ph4r05)
2018-12-31 15:53:59 -06:00
luigi1111
6e4e228461 Merge pull request #4944
1505dd3 util: set MONERO_DEFAULT_LOG_CATEGORY (moneromooo-monero)
db57374 util: use fcntl instead of flock, for compatibility (moneromooo-monero)
2018-12-31 15:52:17 -06:00
luigi1111
4a78bcd275 Merge pull request #4941
1cfd6f1 unit_tests: strengthen notify test against OS scheduling (moneromooo-monero)
2018-12-31 15:48:52 -06:00
luigi1111
c7af379d29 Merge pull request #4940
9e64a71 blockchain: call deinit in dtor (moneromooo-monero)
2018-12-31 15:44:49 -06:00
luigi1111
f03f4ddb96 Merge pull request #4936
7d9aeb7 easylogging++: avoid uneeded temporary std::string object (moneromooo-monero)
2018-12-31 15:37:28 -06:00
luigi1111
8bfbb8d598 Merge pull request #4935
ea85de4 CONTRIBUTING: mention not changing spelling/typoes in code (moneromooo-monero)
2018-12-31 15:36:03 -06:00
luigi1111
d8c03191ca Merge pull request #4933
3cf85f0 Changed RECIEVED to RECEIVED in log messages. (normoes)
2018-12-31 15:33:18 -06:00
luigi1111
3adac4ee2b Merge pull request #4929
5a76933 Add glibc back compat code (TheCharlatan)
2018-12-31 15:31:01 -06:00
luigi1111
6d3caaff70 Merge pull request #4928
affff94 blockchain: fix race between two external mining threads (moneromooo-monero)
2018-12-31 15:28:25 -06:00
luigi1111
a7ff63ec77 Merge pull request #4898
e6f026e Simplewallet: Unify usage messages. (tmoravec)
2018-12-31 15:15:46 -06:00
luigi1111
c93c638199 Merge pull request #4864
707c2f8 Remove -Werror (moneromooo-monero)
2018-12-31 15:13:59 -06:00
moneromooo-monero
d1b3990d40 p2p: don't stop the idle thread when no gray peers are found 2018-12-30 19:32:38 +00:00
moneromooo-monero
9092fc4bfd wallet: do not display daemon controlled text if untrusted 2018-12-30 01:32:57 +00:00
TheCharlatan
37a9bcf483 Remove visibility settings from boost.mk
Clang gave a visibility error when compiling boost with visibility
hidden.
2018-12-27 23:30:22 +01:00
moneromooo-monero
b82efa32e7 epee: speed up json parsing 2018-12-27 14:28:30 +00:00
moneromooo-monero
8bd716777e simplewallet: remove ability to transfer with detached short payment ids
It seemed like a good idea at the time
2018-12-27 00:45:04 +00:00
moneromooo-monero
65ce387c93 daemon: add a +hex option to print_block 2018-12-26 17:55:28 +00:00
moneromooo-monero
d24c325c7d daemon: print human friendly timestamp too 2018-12-26 14:01:18 +00:00
moneromooo-monero
434a147b57 blocks: fix checkpoint code generation on OpenBSD
Its od outputs small decimals with leading 0, which means octal in C
2018-12-25 19:11:39 +00:00
moneromooo-monero
6f2081f867 cryptonote_core: revert extra_tx_map
While the lookups are faster, the zeroCommit calls have to be
done again when storing the new outputs in the db, which ends
up making the whole thing slower after all, and the ways this
can be cached aren't very nice code wise, so let's forget it
since the gains aren't very large anyway.
2018-12-25 15:19:41 +00:00
moneromooo-monero
d7354c7864 wallet_rpc_server: add all field to export_key_images
To use if you want all key images, not just the ones for
recently imported outputs
2018-12-24 13:00:29 +00:00
Tadeas Moravec
e6f026e530 Simplewallet: Unify usage messages.
Help messages describe the commands usage. When users run the command
with wrong arguments, it usually helpfully offers the usage, too.
Unfortunately, these two usage messages were duplicated in the code and
started to get out of sync.

Fixing with constant strings.
2018-12-23 20:12:50 +00:00
moneromooo-monero
85665003a7 epee: better network buffer data structure
avoids pointless allocs and memcpy
2018-12-23 16:46:07 +00:00
moneromooo-monero
5e10dee3ea simplewallet: fix show_transfers colouring, and add red for failed
Also add the type back, as it was somehow weirdly split into
two different fields, one being a union...
2018-12-23 15:15:55 +00:00
Lee Clagett
a5ffc2d5ad Remove boost::lexical_cast for uuid and unused uuid function 2018-12-23 11:11:30 +00:00
moneromooo-monero
68f095f059 message_store: fix error message adding const char * with offset 2018-12-22 15:52:10 +00:00
stoffu
7c58421c79 blockchain_blackball: make log file name consistent with executable 2018-12-22 14:46:35 +09:00
moneromooo-monero
306a124494 core_tests: rename invalid multisig tests to read "invalid" 2018-12-22 01:31:43 +00:00
moneromooo-monero
de9dcdd179 wallet2: finalize_multisig now rejects non N-1/N multisig wallets 2018-12-21 23:41:16 +00:00
Riccardo Spagni
ed54ac8fdf Merge pull request #4902
118db4f3 Cleanup leftovers from migrating depends from bitcoin (TheCharlatan)
2018-12-20 12:36:07 +02:00
Riccardo Spagni
c8fc06c7b6 Merge pull request #4849
1ebcd7b9 MMS (Multisig Messaging System): Initial version (rbrunner7)
2018-12-20 12:33:59 +02:00
doy-lee
99765b218e Remove unused hash in export_key_images 2018-12-19 14:45:13 +11:00
Dusan Klinec
c5e0539cb5 device/trezor: store tx_prefix_hash in tx key aux
- tx_prefix_hash is required in the key derivation for decryption of the tx keys
2018-12-18 22:20:18 +01:00
moneromooo-monero
b8342dd52c blockchain: fix block rate check for empty blockchains 2018-12-18 18:47:54 +00:00
Dusan Klinec
e37154a879 build: protobuf dependency fixes, libusb build
- docker protobuf dependencies, cross-compilation
- device/trezor protobuf build fixes, try_compile
- libusb built under all platforms, used by trezor for direct connect
2018-12-18 16:50:19 +01:00
moneromooo-monero
008647d7eb blockchain_db: speedup tx output gathering
We know all the data we'll want for getblocks.bin is contiguous
2018-12-18 11:55:21 +00:00
moneromooo-monero
808a1f1e8a wallet2: cut down on the number of useless derivation threads 2018-12-16 18:31:10 +00:00
moneromooo-monero
841a6acda2 wallet2: fix accessing unwound stack on exception 2018-12-16 18:30:02 +00:00
Howard Chu
60b35c91b9 Add --restore-date param
Estimate restore height from given date
Check date format early, error out early if invalid
2018-12-14 19:11:35 +00:00
naughtyfox
219548f299 Sync hashchain bug fixed 2018-12-14 17:42:11 +03:00
Tadeas Moravec
611db08a00 Wallet: Initialize members without default ctor.
Found by Coverity (188336 in Anonimal's Coverity account).
2018-12-14 13:45:41 +00:00
rbrunner7
1ebcd7b9b0 MMS (Multisig Messaging System): Initial version 2018-12-12 21:49:20 +01:00
erciccione
b97059fc8e add erciccione's pgp key 2018-12-12 14:44:43 +01:00
moneromooo-monero
aaafa8a946 ringct: avoid repeated point conversion 2018-12-12 12:48:10 +00:00
TheCharlatan
118db4f357 Cleanup leftovers from migrating depends from bitcoin
Depends still contained some leftovers, like the `wallet` target that
included bdb from bitcoin. This commit removes these unneeded targets,
the miniupnpc package and the berkeley db package. Reflect the changes
in the README as well.
2018-12-12 12:14:20 +01:00
Riccardo Spagni
6bc0c7e685 Merge pull request #4927
6456cb41 Bulletproof: Initialize members in default construtor. (Tadeas Moravec)
2018-12-12 12:01:31 +02:00
Riccardo Spagni
5e9225e637 Merge pull request #4925
ab783b17 easylogging++: ensure logger is initialized before main (moneromooo-monero)
9b69a0ae daemon: print monero version at startup when calling a detached daemon (moneromooo-monero)
4d71d463 mlocker: remove early page size log (moneromooo-monero)
2018-12-12 12:01:18 +02:00
Riccardo Spagni
51874e5a40 Merge pull request #4924
0c5dd316 cryptonote: add a set_null for transaction_prefix (moneromooo-monero)
2018-12-12 12:00:50 +02:00
Riccardo Spagni
fe3c8c9682 Merge pull request #4923
aba9a9c2 daemon: stop miner before we bring the whole thing down (moneromooo-monero)
2018-12-12 12:00:37 +02:00
Riccardo Spagni
e9aa886d9e Merge pull request #4921
ac665418 ringct: fix dummy bulletproofs on ledger in fake mode (moneromooo-monero)
2018-12-12 11:59:56 +02:00
Riccardo Spagni
e19a205ff4 Merge pull request #4920
e98ae34e core: fix adding new pre-hoh block when a tx is already in the pool (moneromooo-monero)
2018-12-12 11:59:43 +02:00
Riccardo Spagni
83684ea515 Merge pull request #4909
756684bb blockchain: avoid unnecessary DB lookups when syncing (moneromooo-monero)
2018-12-12 11:59:25 +02:00
Riccardo Spagni
4556f0e2b8 Merge pull request #4908
5ca4994c rpc: speed up the common get_output_distribution case while syncing (moneromooo-monero)
2018-12-12 11:59:04 +02:00
Riccardo Spagni
0fccc78e39 Merge pull request #4903
dc1c1252 add command pop_blocks (Jason Wong)
2018-12-12 11:58:37 +02:00
Riccardo Spagni
d855f9bb92 Merge pull request #4901
a48f2dab blockchain_prune_known_spent_data: blackball file is now optional (moneromooo-monero)
17b45725 Outputs where all amounts are known spent can now be pruned (moneromooo-monero)
2018-12-12 11:57:31 +02:00
Riccardo Spagni
2dd6fe4898 Merge pull request #4900
4f74a31e http -> https (Dimitris Apostolou)
2018-12-12 11:56:55 +02:00
Riccardo Spagni
85262ca8cd Merge pull request #4899
2be31b4c blockchain_blackball: spot when all outputs of an amount are spent (moneromooo-monero)
2018-12-12 11:56:21 +02:00
Riccardo Spagni
c73ac91af8 Merge pull request #4897
9b5efad2 simplewallet: enable donation on testnet/stagenet for easier testing (stoffu)
2018-12-12 11:55:13 +02:00
Riccardo Spagni
5123749d79 Merge pull request #4840
721aacd8 easylogging++: faster access to logging (moneromooo-monero)
7cc27b36 Revert "easylogging++: make the logger handle early/late logging" (moneromooo-monero)
2018-12-12 11:54:11 +02:00
Riccardo Spagni
0b31baf6e4 Merge pull request #4839
d71f89e2 device/trezor: device/trezor: correct device initialization, status check (Dusan Klinec)
65b9bca7 device/trezor: python2 compatibility - bundle dependencies (Dusan Klinec)
9cf636af device/trezor: ask for KI sync on first refresh (Dusan Klinec)
d21dad70 device: enable to use multiple independent device wallets (Dusan Klinec)
318cc784 device/trezor: passphrase entry on host (Dusan Klinec)
2018-12-12 11:53:42 +02:00
Riccardo Spagni
dde1e69723 Merge pull request #4787
3dba7f25 protocol: option to pad transaction relay to the next kB (moneromooo-monero)
2018-12-12 11:53:10 +02:00
moneromooo-monero
08bcbd65a5 update expiry date for both signing and encryption keys 2018-12-11 20:31:19 +00:00
Jethro Grassie
b56b5b52eb ignore child process when exec 2018-12-08 20:52:54 -05:00
moneromooo-monero
0e2f5cb5fc perf_timer: make all logs Info level
and make them not default at log level 1
2018-12-08 10:53:09 +00:00
moneromooo-monero
2d7b0236eb wallet2: clear all payments on soft rescan_bc
They'll get duplicated otherwise
2018-12-08 10:39:54 +00:00
moneromooo-monero
a13eb0a1a4 epee: speed up string matching a bit 2018-12-08 02:00:37 +00:00
moneromooo-monero
3a3858dc90 epee: avoid string allocation when parsing a pod from string 2018-12-08 02:00:34 +00:00
moneromooo-monero
25e5a8539c singleton: fix missing *this return value in operator=
while there, disable both operator= and copy ctor, since they
are not supposed to be around for a singleton
2018-12-07 16:56:59 +00:00
moneromooo-monero
93c59b29a8 perf_timer: check allowed categories before logging 2018-12-07 14:23:47 +00:00
moneromooo-monero
6a507dab6f perf_timer: add a way to get and reset the current time 2018-12-07 14:23:47 +00:00
moneromooo-monero
c1581a5bb8 perf_timer: only log to file 2018-12-07 14:23:47 +00:00
moneromooo-monero
dbbb3ce9d8 cryptonote: don't serialize for blob size if already known 2018-12-07 14:07:26 +00:00
moneromooo-monero
68f045de8c easylogging++: check allowed categories before logging 2018-12-07 13:25:39 +00:00
moneromooo-monero
570dd3690e p2p: use vector instead of list for peer lists 2018-12-07 13:20:34 +00:00
moneromooo-monero
b21a60efd9 mlocker: set default log category 2018-12-07 13:13:24 +00:00
moneromooo-monero
5464725a29 protocol: change standby mode to not wait sleeping 2018-12-07 12:53:11 +00:00
selsta
1d892ec881 simplewallet: donate command validate amount 2018-12-07 13:43:21 +01:00
moneromooo-monero
85807dfb25 add a once_a_time_milliseconds class 2018-12-07 12:36:33 +00:00
moneromooo-monero
db5737413e util: use fcntl instead of flock, for compatibility
in particular with NFS
2018-12-06 12:59:29 +00:00
moneromooo-monero
9cc68a2f74 tx_pool: add a few std::move where it can make a difference 2018-12-05 21:13:37 +00:00
moneromooo-monero
d1efe3d91c cryptonote: set tx hash on newly parsed txes when known 2018-12-05 21:13:29 +00:00
moneromooo-monero
5511563e92 db_lmdb: avoid pointless division 2018-12-05 21:13:24 +00:00
moneromooo-monero
833269834d db_lmdb: inline check_open, it's trivial and called everywhere 2018-12-05 21:13:21 +00:00
moneromooo-monero
ce594f5af7 blockchain_db: allocate known size vector only once 2018-12-05 21:13:18 +00:00
moneromooo-monero
6644b9b7b7 blockchain_db: remove a couple unused functions 2018-12-05 21:13:13 +00:00
moneromooo-monero
1505dd38c9 util: set MONERO_DEFAULT_LOG_CATEGORY
Otherwise it'd end up with whatever was included last
2018-12-05 14:53:30 +00:00
moneromooo-monero
1cfd6f1060 unit_tests: strengthen notify test against OS scheduling 2018-12-05 00:32:02 +00:00
moneromooo-monero
9e64a71e7d blockchain: call deinit in dtor
This ensures the io service that runs in another thread cannot
access data after it's deleted
2018-12-05 00:13:28 +00:00
Dusan Klinec
d71f89e2a2 device/trezor: device/trezor: correct device initialization, status check
- checks if the device is in the correct usable state
- implements check for the v2.0.9 firmware which does not support payment IDs
- simple transacttion check, payment id fmt consistency
- minor fixes, refactoring, webusb session counting fix
2018-12-04 20:12:03 +01:00
Dusan Klinec
65b9bca70e device/trezor: python2 compatibility - bundle dependencies 2018-12-04 18:38:18 +01:00
Dusan Klinec
9cf636af69 device/trezor: ask for KI sync on first refresh
When doing a first refresh on HW-token based wallet KI sync is required if money were received. Received money may indicate wallet was already used before the restore I.e., some transaction could have been already sent from the wallet. The spent UTXO would not be detected as spent which could lead to double spending errors on submitting a new transaction.

Thus if the wallet is HW-token based with the cold signing protocol and the first refresh detected received money the user is asked to perform the key image sync.
2018-12-04 18:38:17 +01:00
Dusan Klinec
d21dad70dd device: enable to use multiple independent device wallets
- adds a new option `--hw-device-deriv-path` to the simple wallet. Enables to specify wallet derivation path / wallet code (path avoided so it can be misinterpreted as a file path).
- devices can use different derivation mechanisms. Trezor uses standard SLIP-10 mechanism with fixed SLIP-44 prefix for Monero
- Trezor: when empty, the default derivation mechanism is used with 44'/128'/0'. When entered the derivation path is 44'/128'/PATH.
- Trezor: the path is always taken as elements are hardened (1<<31 bit turned on)
2018-12-04 18:38:16 +01:00
Riccardo Spagni
7e957c162a Merge pull request #4879
243f010e rpc: mask values that are nobody else's business in restricted RPC (moneromooo-monero)
2018-12-04 17:34:57 +02:00
Riccardo Spagni
5ed45acaec Merge pull request #4906
506472e0 protocol: fix use after free when dropping a connection (moneromooo-monero)
2018-12-04 17:33:53 +02:00
Riccardo Spagni
36219feff1 Merge pull request #4895
3de7d52f unit_tests: fix malloc/delete mismatch (moneromooo-monero)
2018-12-04 17:33:31 +02:00
Riccardo Spagni
81418cb281 Merge pull request #4894
aee7a4e3 wallet_rpc_server: do not use RPC data if the call failed (moneromooo-monero)
1a0733e5 windows_service: fix memory leak (moneromooo-monero)
0dac3c64 unit_tests: do not rethrow a copy of an exception (moneromooo-monero)
5d9915ab cryptonote: fix get_unit for non default settings (moneromooo-monero)
d4f50cb1 remove some unused code (moneromooo-monero)
61163971 a few minor (but easy) performance tweaks (moneromooo-monero)
30023074 tests: slow_memmem now returns size_t (moneromooo-monero)
2018-12-04 17:33:19 +02:00
Riccardo Spagni
6d1c2a9304 Merge pull request #4892
c28e3d2d rctOps: add braces to suppress warnings (stoffu)
2018-12-04 17:32:42 +02:00
moneromooo-monero
243f010edc rpc: mask values that are nobody else's business in restricted RPC 2018-12-04 15:32:21 +00:00
Riccardo Spagni
117d1e4512 Merge pull request #4891
4cd88136 Updated dependencies Cmake 3.13, CPPZMQ 4.3.0, OPENSSL 1.1.0j (Hom DX)
2018-12-04 17:32:11 +02:00
Riccardo Spagni
0e0777e4d1 Merge pull request #4888
b0d9d605 cn_deserialize: allow parsing partially valid tx extra (moneromooo-monero)
2018-12-04 17:31:43 +02:00
Riccardo Spagni
6e74aa9a6c Merge pull request #4885
b5573fc2 wallet2: resume processing when tx extra is partially broken (stoffu)
2018-12-04 17:31:27 +02:00
Riccardo Spagni
1bebe99496 Merge pull request #4884
56e616e8 wallet2: add n_vouts to capture list (moneromooo-monero)
2018-12-04 17:31:15 +02:00
Riccardo Spagni
16dc6900fb Merge pull request #4883
40485a73 mlocker: fix access to global lock map after dtor on exit (moneromooo-monero)
2018-12-04 17:30:46 +02:00
Riccardo Spagni
302fd80826 Merge pull request #4882
6bfcc573 scoped_message_writer: protect all std::cout usage from readline (moneromooo-monero)
2018-12-04 17:30:30 +02:00
Riccardo Spagni
e799fc87ae Merge pull request #4866
9c923bad epee: fix network packet header field endianness (moneromooo-monero)
ec1a62b5 move int-util.h to epee (moneromooo-monero)
2018-12-04 17:30:11 +02:00
Riccardo Spagni
d4a0fb2b89 Merge pull request #4880
96e6b439 blockchain_stats: don't use gmtime_r on Windows (moneromooo-monero)
2018-12-04 17:29:46 +02:00
Riccardo Spagni
e282e9fa40 Merge pull request #4878
517f25ef rpc: add version to get_info (Jethro Grassie)
2018-12-04 17:28:24 +02:00
Riccardo Spagni
868630c1db Merge pull request #4877
c25260f5 protocol: fix incorrect tx hash in log (moneromooo-monero)
2018-12-04 17:16:52 +02:00
Riccardo Spagni
3d745573d7 Merge pull request #4876
1132436f Only show a single mlock() error, to avoid flooding the log (Martijn Otto)
2018-12-04 17:16:29 +02:00
Riccardo Spagni
f6e8ab0dc6 Merge pull request #4875
23829ebb mlocker: don't throw from lock/unlock (moneromooo-monero)
2018-12-04 17:15:07 +02:00
moneromooo-monero
9c923bad9b epee: fix network packet header field endianness 2018-12-04 15:14:32 +00:00
moneromooo-monero
ec1a62b50d move int-util.h to epee 2018-12-04 15:14:29 +00:00
Riccardo Spagni
a605c0da08 Merge pull request #4872
fc99f177 lmdb: fix gcc 7.3.0 'implicit-fallthrough' warning (xiphon)
2018-12-04 17:13:21 +02:00
Riccardo Spagni
e7d30780de Merge pull request #4869
60f36386 Avoid unnecessary temp block and copy ctor (moneromooo-monero)
2018-12-04 17:12:47 +02:00
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
40650b43b8 Merge pull request #4850
b36353e2 unit_tests: add some hex parsing test for non hex input (xiphon)
6671110c unit_tests: add a test for parse_hexstr_to_binbuff (moneromooo-monero)
f6187cd8 epee: speed up parse_hexstr_to_binbuff a little (Howard Chu)
2018-12-04 17:07:19 +02:00
Riccardo Spagni
3552553f89 Merge pull request #4848
80be2dca unit_tests: don't take the address of an unwrapped secret key (moneromooo-monero)
2018-12-04 17:06:47 +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
Riccardo Spagni
d64e662146 Merge pull request #4838
8dde0d48 readme 0.13.0.4 in the table (Gingeropolous)
2018-12-04 17:05:26 +02:00
Riccardo Spagni
90c9cd2051 Merge pull request #4817
0e2a5d75 simplewallet: use is_transfer_unlocked instead of is_tx_spendtime_unlocked for show_transfers (stoffu)
2018-12-04 17:05:08 +02:00
Norman Moeschter
3cf85f0e83 Changed RECIEVED to RECEIVED in log messages. 2018-12-04 07:27:08 +01: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
7d9aeb7195 easylogging++: avoid uneeded temporary std::string object 2018-12-03 21:34:28 +00:00
moneromooo-monero
ea85de4f02 CONTRIBUTING: mention not changing spelling/typoes in code 2018-12-03 20:07:47 +00: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
Dimitris Apostolou
4f74a31ecd http -> https 2018-12-01 12:57:37 +02:00
moneromooo-monero
ab783b1700 easylogging++: ensure logger is initialized before main 2018-11-30 17:58:58 +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
4d71d46373 mlocker: remove early page size log
It comes before the logger is initialized, so gets displayed
even though it should not be by default, and apparenly comes
too early for (some versions of) Android, where it crashes.
2018-11-30 16:52:50 +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
721aacd88e easylogging++: faster access to logging
Turns out getting the global shared_ptr hits the profile,
and passing it around still keeps it at close to ~1% CPU,
which is too much for mostly silent logging.

Leak the object instead, which is even safer for late logging.
2018-11-27 13:55:21 +00:00
moneromooo-monero
7cc27b367e Revert "easylogging++: make the logger handle early/late logging"
This reverts commit 7f8bdeb35c.
2018-11-27 13:55:18 +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
6e100964ea Merge pull request #4832
9da6c52b unit_tests: add logging unit test (moneromooo-monero)
2018-11-26 20:29:53 +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
299accd81f Merge pull request #4819
7c298f5d No longer use a list for registering self references in the abstract tcp server (Martijn Otto)
2018-11-26 20:26:28 +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
Martijn Otto
1132436f97 Only show a single mlock() error, to avoid flooding the log 2018-11-26 09:37:07 +01: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
3de7d52f7c unit_tests: fix malloc/delete mismatch 2018-11-23 15:55:41 +00: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
0dac3c6428 unit_tests: do not rethrow a copy of an exception
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
Hom DX
4cd881369a Updated dependencies Cmake 3.13, CPPZMQ 4.3.0, OPENSSL 1.1.0j 2018-11-23 09:48:41 +03: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
moneromooo-monero
40485a73b6 mlocker: fix access to global lock map after dtor on exit
as the lock, it now leaks
2018-11-22 01:43:42 +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
moneromooo-monero
23829ebb09 mlocker: don't throw from lock/unlock
This prevents exceptions from showing up in various awkward
places such as dtors, since the only exception that can be
thrown is a lock failure, and nothing handles a lock failure
anyway.
2018-11-20 15:26:00 +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
Riccardo Spagni
6c223fa96f Merge pull request #4812
31d80027 tests: add unit tests for get_output_distribution (moneromooo-monero)
0936dae8 blockchain: remove "0 is height" shortcut from get_output_distribution (moneromooo-monero)
872c7eb2 Revert "blockchain: simplify output distribution code" (moneromooo-monero)
2018-11-20 12:34:25 +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
80be2dca2b unit_tests: don't take the address of an unwrapped secret key 2018-11-16 19:36:02 +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
d850e05b53 Merge pull request #4820
e27e421f Fix version prefix in gitian build (TheCharlatan)
2018-11-16 11:18:11 +02:00
Riccardo Spagni
a3d0c7c55c Merge pull request #4807
b620443b epee: log HTTP/RPC calls at info level (moneromooo-monero)
2018-11-16 11:17:18 +02: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
afaff5fb77 Merge pull request #4803
fa3f756b unit_tests: fix leak when the test check fails (moneromooo-monero)
2018-11-16 11:15:15 +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
fc3768293a Merge pull request #4796
f92682ec build: ubuntu 16 ppc build fixes (Jethro Grassie)
2018-11-16 11:11:29 +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
42dbb3aa1b Merge pull request #4785
0cfd2ae5 mlocker: fix dtor ordering problem (moneromooo-monero)
2018-11-16 11:06:09 +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
3880cae134 Merge pull request #4775
741e4a11 epee: speed up json number parsing (moneromooo-monero)
2018-11-16 11:00:56 +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
xiphon
b36353e268 unit_tests: add some hex parsing test for non hex input 2018-11-15 23:34:15 +00:00
moneromooo-monero
6671110ca3 unit_tests: add a test for parse_hexstr_to_binbuff 2018-11-15 23:34:15 +00:00
Howard Chu
f6187cd811 epee: speed up parse_hexstr_to_binbuff a little 2018-11-15 23:34:15 +00: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
d0c4123034 Merge pull request #4842
37d5b8d9 CMakeLists.txt: add -ftemplate-depth=900 (moneromooo-monero)
2018-11-14 21:43:37 +02: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
58a07752eb Merge pull request #4756
aa40047e README.md: increase swap size on Raspberry Pi (Neofito89)
2018-11-14 21:33:49 +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
d750ffae3b Merge pull request #4751
6789385c Dockerfile: add udev, libusb and hidapi build (MoroccanMalinois)
2018-11-14 21:32:44 +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
Riccardo Spagni
9f4ae98d29 Merge pull request #4844
d01bdaca common: fix base58 gcc -Werror=implicit-fallthrough (xiphon)
2018-11-14 21:29:58 +02:00
stoffu
6d3311aceb libwallet_api_tests: add missing dependency on Boost Locale and ICU 2018-11-15 00:19:41 +09: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
moneromooo-monero
37d5b8d9c2 CMakeLists.txt: add -ftemplate-depth=900 2018-11-12 22:35:21 +00:00
Gingeropolous
8dde0d4899 readme 0.13.0.4 in the table
its the one thing I do. I change the table.
2018-11-11 22:51:53 -05: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
9da6c52bb2 unit_tests: add logging unit test 2018-11-09 16:57:03 +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
TheCharlatan
e27e421f98 Fix version prefix in gitian build
The version prefix 'v' should just be set constantly.
Reflect this change in the README as well.

This should allow building commits as well, if a commit
is passed in instead of a tag.
2018-11-07 18:30:49 +01: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
Riccardo Spagni
3c83e3a63b Merge pull request #4818
ba2055a2 api/wallet: fix compile errors made in #4720 (stoffu)
2018-11-07 14:34:41 +02:00
Martijn Otto
7c298f5d14 No longer use a list for registering self references in the abstract tcp
server

Updated assert message

Use a local variable that won't destruct at the end of the if-branch

Updated comment
2018-11-07 11:21:52 +01: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
2aabaea1d9 Merge pull request #4713
2587aec1 easylogging++: update to latest upstream (v9.96.5) (moneromooo-monero)
2018-11-06 21:34:07 +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
fa56a09335 Merge pull request #4740
f067bb0c tests: fix MSYS2 warning 'MONERO_DEFAULT_LOG_CATEGORY redefined' (xiphon)
2018-11-06 21:32:18 +02:00
Riccardo Spagni
f7edda5304 Merge pull request #4739
9c1c92db tests: fix MSYS2 gcc 7.3.0 warning -Wtype-limits (xiphon)
2018-11-06 21:32:06 +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
e00a6ce9c7 Merge pull request #4732
3a056b73 performance_tests: add ge_p3_tobytes (moneromooo-monero)
30f728e3 performance_tests: measure ge_frombytes_vartime only (moneromooo-monero)
2018-11-06 21:30:40 +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
Riccardo Spagni
ab6b2a5cdb Merge pull request #4730
dff0adfe cmake: fix readline detection when the readline library is not found (moneromooo-monero)
2018-11-06 21:29:53 +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
moneromooo-monero
2587aec121 easylogging++: update to latest upstream (v9.96.5) 2018-11-06 14:26:09 +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
4ccb97cea8 Merge pull request #4722
8a512b1d Minor wording changes; added research repository links (Sarang Noether)
e9fc9ff2 Added research information to main readme (Sarang Noether)
2018-11-06 14:53:25 +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
7ceeaec2e5 Merge pull request #4709
07c62809 epee: some minor speedup in parsing (moneromooo-monero)
2018-11-06 14:50:57 +02:00
Riccardo Spagni
b0d9d1afd0 Merge pull request #4708
6cd929ea easylogging++: remove std::deque usage (moneromooo-monero)
2018-11-06 14:50:30 +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
Riccardo Spagni
dd973179ad Merge pull request #3970
3381b651 abstract_tcp_server2: fix busy calling of idle IO service (moneromooo-monero)
2018-11-06 14:49:32 +02:00
Riccardo Spagni
4c621b13d0 Merge pull request #4760
8a7e20f8 build: older git versions don't have '-C' flag (xiphon)
2018-11-06 14:47:27 +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
Riccardo Spagni
6148726e2c Merge pull request #4797
e178bf23 rpc: fix linking error of 6097472a, get_output_distribution (Dusan Klinec)
2018-11-05 19:16:52 +02:00
moneromooo-monero
b620443b08 epee: log HTTP/RPC calls at info level
It's useful info to have when investigating logs
2018-11-05 16:14:06 +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
moneromooo-monero
fa3f756bfb unit_tests: fix leak when the test check fails
Coverity 189527
2018-11-05 11:15:39 +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
Jethro Grassie
f92682ec0a build: ubuntu 16 ppc build fixes 2018-11-04 13:55:00 -05: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
22da14bb1c Merge pull request #4736
f48db530 unit_tests: fix notify unit test when /tmp does not exist (moneromooo-monero)
2018-11-04 20:41:45 +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
moneromooo-monero
0cfd2ae5e7 mlocker: fix dtor ordering problem
leak the mutex instead, it's a one off
2018-11-02 12:59:43 +00: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
963d247154 Merge pull request #4676
3b402ebb Updating Monero GUI repo link in README.i18n.md (Jkat)
2018-11-01 22:34:51 +02: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
741e4a1172 epee: speed up json number parsing 2018-11-01 16:36:16 +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
moneromooo-monero
00cc1a1657 unit_tests: notify test special case for the usual weirdo 2018-11-01 15:51:16 +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
xiphon
8a7e20f8a5 build: older git versions don't have '-C' flag 2018-10-30 05:25:58 +00:00
moneromooo-monero
db24a2e509 hash: fix hash_permutation on big endian 2018-10-29 22:26:44 +00:00
Neofito89
aa40047e48 README.md: increase swap size on Raspberry Pi
Increased swap size on raspberry pi compiling guide, since it might crash if the raspberry has any service runing in the background
2018-10-29 23:14:25 +01: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
2362baf735 network_throttle: initialize m_last_sample_time in ctor
Coverity 136593
2018-10-29 16:23:14 +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
MoroccanMalinois
6789385cd0 Dockerfile: add udev, libusb and hidapi build 2018-10-29 09:17:32 +01:00
xiphon
9c1c92db65 tests: fix MSYS2 gcc 7.3.0 warning -Wtype-limits 2018-10-29 08:20:15 +03: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
xiphon
f067bb0c8b tests: fix MSYS2 warning 'MONERO_DEFAULT_LOG_CATEGORY redefined' 2018-10-27 15:08:52 +00:00
moneromooo-monero
107f33985d wallet2: fix ring reuse breaking when using histogram 2018-10-27 14:35:00 +00:00
moneromooo-monero
f48db530be unit_tests: fix notify unit test when /tmp does not exist 2018-10-27 11:19:54 +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
4cbb476cd1 Merge pull request #4721
a9f9406c unit_tests: notify test special case for the usual weirdo (moneromooo-monero)
2018-10-26 22:42:58 +02: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
b9a5e47490 Merge pull request #4679
7d21c9b5 CMakeLists.txt: only use libatomic when found (moneromooo-monero)
2018-10-26 22:41:03 +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
6a54830107 Merge pull request #4646
109717a5 Remove Travis check in depends toolchain file (TheCharlatan)
2018-10-26 22:40:10 +02:00
Riccardo Spagni
d4448e8e24 Merge pull request #4620
ad4cce93 build: fixed submodule check (xiphon)
2018-10-26 22:39:51 +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
b5fafa6c61 Merge pull request #4613
45a6880d unit_tests: call umask before mkstemp (moneromooo-monero)
2018-10-26 22:38:18 +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
e5f2d982e9 Merge pull request #4607
e623f2b2 Add building with depends to the Makefile (TheCharlatan)
2018-10-26 22:36:36 +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
650cd352c4 Merge pull request #4597
9ea50781 README: add libnorm to the dependency list (moneromooo-monero)
2018-10-26 22:35:22 +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
360fb989d3 Merge pull request #4585
5dff61d4 readme: update OSX build badges (xiphon)
2018-10-26 22:34:42 +02:00
Riccardo Spagni
8f9c381f86 Merge pull request #4580
938476c9 CMakeLists.txt: detect and use -pthread compiler flag (moneromooo-monero)
2018-10-26 22:34:21 +02:00
Riccardo Spagni
442c58e994 Merge pull request #4573
8f3c7937 readline_buffer: fix "cursor in prompt" bug (moneromooo-monero)
2018-10-26 22:34:04 +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
8236bfd971 Merge pull request #4553
d46c765d README: mention max_usb_current setting on Raspberry Pi (moneromooo-monero)
2018-10-26 22:32:52 +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
a91b432591 Merge pull request #4526
8f96c718 Adapt Readme and script to monero gitian build signing (TheCharlatan)
9617fad0 Add OSX gitian descriptor (TheCharlatan)
d147d240 Add windows descriptor to gitian descriptors (TheCharlatan)
fed4e598 Change gitian.sigs repo from bitcoin-core to monero-project remote host (TheCharlatan)
f2127f9d Add checksums for download tools (TheCharlatan)
c2f17890 Add gitian build script (TheCharlatan)
6d0ca4e2 Prepare Depends Packages for Gitian Scripts (TheCharlatan)
2018-10-26 22:19:57 +02:00
Riccardo Spagni
9b7902f3ef Merge pull request #4513
539debc4 Finish all contexts but simple_wallet, translate 23% of simple_wallet (sanecito)
ee71ba98 Add translations for Monero::PendingTransactionImpl, command_line Contexts (sanecito)
5c4fe3d4 Create Japanese file, add translations for "Monero::AddressBookImpl" and "Wallet" Contexts (sanecito)
2018-10-26 22:19:21 +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
Riccardo Spagni
affab99b8a Merge pull request #4715
9168fc9f Makefile: fix building without a git tree (moneromooo-monero)
2018-10-26 22:14:50 +02:00
moneromooo-monero
3a056b7393 performance_tests: add ge_p3_tobytes 2018-10-26 17:02:11 +00:00
moneromooo-monero
30f728e362 performance_tests: measure ge_frombytes_vartime only
not an extra dynamic cast, which might be heavy
2018-10-26 17:01:05 +00:00
moneromooo-monero
dff0adfee5 cmake: fix readline detection when the readline library is not found 2018-10-26 11:47:15 +00: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
a9f9406c5b unit_tests: notify test special case for the usual weirdo 2018-10-24 21:55:03 +00:00
moneromooo-monero
0aff49873c rpc: fix build with older compilers 2018-10-24 20:36:58 +00:00
Sarang Noether
8a512b1d31 Minor wording changes; added research repository links 2018-10-24 19:41:59 +00:00
moneromooo-monero
9168fc9f78 Makefile: fix building without a git tree 2018-10-24 14:44:04 +00:00
Sarang Noether
e9fc9ff268 Added research information to main readme 2018-10-24 13:41:46 +00:00
moneromooo-monero
07c6280909 epee: some minor speedup in parsing 2018-10-24 08:34:25 +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
moneromooo-monero
6cd929eaa3 easylogging++: remove std::deque usage
It's not actually needed for this use, and saves a STL header
2018-10-23 20:26:46 +00:00
Howard Chu
a43daebf57 Add stats utility
Report statistics from a blockchain DB
2018-10-23 19:43:31 +01:00
Riccardo Spagni
1e74586ee9 Merge pull request #4697
61f83316 wallet2: extend fake out picks away from the gamma pick (moneromooo-monero)
2018-10-23 18:03:45 +02:00
Riccardo Spagni
af7caf78a1 Merge pull request #4640
11415128 unit_tests: fix notify test when run from make *test (moneromooo-monero)
2018-10-23 11:45:57 +02: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
Riccardo Spagni
bf38d75454 Merge pull request #4699
9da67502 update readme for 0.13.0.4 (Riccardo Spagni)
2018-10-22 23:28:13 +02:00
Riccardo Spagni
9da67502d5 update readme for 0.13.0.4 2018-10-22 23:12:23 +02: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
c415df97bd performance_tests: sc_check and ge_dsm_precomp 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
Paul Shapiro
cf646e3afe wallet2/create_transactions_2: removed extraneous shuffle before sort of unused_*_indices_per_subaddr 2018-10-21 12:43:31 -05:00
moneromooo-monero
3a85af403d core: fix handle_incoming_tx* comment about return value 2018-10-21 17:09:21 +00:00
moneromooo-monero
7d21c9b573 CMakeLists.txt: only use libatomic when found 2018-10-20 21:37:40 +00:00
Riccardo Spagni
2287fb9fb4 Merge pull request #4524
f5f7c2ac rpc: blanket initialize 0MQ request and response structures (moneromooo-monero)
2018-10-20 20:40:56 +02:00
Riccardo Spagni
a145ae52b6 Merge pull request #4523
6ca00b6d miner: really reset flags/precision on std::cout (moneromooo-monero)
2018-10-20 20:40:36 +02:00
Riccardo Spagni
5c418c0522 Merge pull request #4522
a39c0358 blockchain: add check test options are given for fakechain mode (moneromooo-monero)
2018-10-20 20:40:16 +02:00
Riccardo Spagni
14dbe67fa7 Merge pull request #4521
6653062e unit_tests: add unit test for alloc alignment being a power of 2 (moneromooo-monero)
2018-10-20 20:39:58 +02:00
Riccardo Spagni
ed4b953bb7 Merge pull request #4518
92a0827e wallet2: make fake out selection messages less spammy (moneromooo-monero)
2018-10-20 20:39:36 +02:00
Riccardo Spagni
2c08fd472d Merge pull request #4669
d3cda5ad console_handler: add a global log when exiting via EOF (moneromooo-monero)
2018-10-20 20:39:08 +02:00
Riccardo Spagni
a38299801f Merge pull request #4666
cf75ee72 blockchain: move two new verification errors to the verify category (moneromooo-monero)
2018-10-20 20:38:37 +02:00
Riccardo Spagni
9f34a3a29a Merge pull request #4659
b916ca63 rpc: fix output distribution caching ignoring chain changes (moneromooo-monero)
2018-10-20 20:37:54 +02:00
Riccardo Spagni
4cd8850fce Merge pull request #4642
25d327e7 device: extended logging, refactored device selection code (xiphon)
825d836f device: fixed Ledger Nano S device selection (xiphon)
2018-10-20 20:37:28 +02:00
Riccardo Spagni
bdd32bc2b2 Merge pull request #4650
99cd6f96 Rename "blackball" for clarity (moneromooo-monero)
2018-10-20 20:36:58 +02:00
Riccardo Spagni
93f2c13a39 Merge pull request #4637
c39e0a17 core: don't verify range proofs multiple times (moneromooo-monero)
2018-10-20 20:36:33 +02:00
Riccardo Spagni
313f16e83c Merge pull request #4635
776aefda tx_pool: revert #4592 and move bin2hex conversion to on_get_transaction_pool (stoffu)
2018-10-20 20:35:22 +02:00
Riccardo Spagni
6ef07b10b9 Merge pull request #4520
2e2daebc ANSI colors in Windows 10 (iDunk5400)
2018-10-20 20:34:47 +02:00
Riccardo Spagni
fe0e426be4 Merge pull request #4629
c7743929 spawn: close all file descriptors before execve (moneromooo-monero)
2018-10-20 20:34:15 +02:00
Riccardo Spagni
ea99acad5a Merge pull request #4626
a69fc05a util: close keys file lock on exec (moneromooo-monero)
2018-10-20 20:34:01 +02:00
moneromooo-monero
62f94e1b9d device_io_hid.cpp: fix copyright header 2018-10-20 10:31:27 +00:00
moneromooo-monero
d3cda5ad39 console_handler: add a global log when exiting via EOF
It's a common confusion point for users which run monerod
without stdin and with --detach
2018-10-20 09:13:55 +00:00
moneromooo-monero
cf75ee722a blockchain: move two new verification errors to the verify category
Lest we get people get scared again
2018-10-19 21:11:12 +00:00
moneromooo-monero
61304151b4 db_lmdb: use MDB_MULTIPLE_NEXT where possible for some speedup 2018-10-19 16:47:29 +00:00
moneromooo-monero
b916ca63a8 rpc: fix output distribution caching ignoring chain changes
0 is placeholder for whole chain, so we should compare chain
height changes rather than chain-height-or-zero. Even this isn't
totally foolproof if a blocks are popped and the same number
added again, but it is much better as it prevents the data from
slowly going out of sync.
2018-10-19 09:22:35 +00:00
moneromooo-monero
ca9b996dcb perf_timer: separate log categories based on caller categories
Also default to microseconds, for homogeneity

Makes it easier to enable what we need
2018-10-19 08:59:56 +00:00
moneromooo-monero
a7bffead9e daemon: fix base fee stating /kB even when it is per byte 2018-10-19 08:39:33 +00:00
Michał Sałaban
ade369f96f Add RPC error code for non-deterministic wallet 2018-10-18 23:14:06 +02:00
moneromooo-monero
99cd6f961a Rename "blackball" for clarity
Apparently some people seem to think it's a censorship list...
2018-10-18 18:45:45 +00:00
xiphon
25d327e796 device: extended logging, refactored device selection code 2018-10-18 17:53:06 +03:00
TheCharlatan
8f96c718bc Adapt Readme and script to monero gitian build signing
The sigs should be produced in a seperate step by default.
Remove windows and osx sig options that are not needed for monero.
2018-10-18 16:39:35 +02:00
TheCharlatan
109717a5fd Remove Travis check in depends toolchain file
The architecture for darwin is now detected correctly, remove the
override for it.
2018-10-18 11:54:20 +02:00
Ted Moravec
6f88c03dfc Simplewallet: update help text for show_transfers.
Describe the output format.
2018-10-18 09:14:15 +00:00
Ricardo de Vries
e54e5668a8 daemon: Show mining address 2018-10-18 10:45:42 +02:00
xiphon
825d836f9f device: fixed Ledger Nano S device selection 2018-10-18 07:42:29 +03:00
stoffu
776aefdac1 tx_pool: revert #4592 and move bin2hex conversion to on_get_transaction_pool 2018-10-18 08:01:56 +09:00
moneromooo-monero
1141512811 unit_tests: fix notify test when run from make *test 2018-10-17 21:13:21 +00:00
Cactii1
ec3013903b Update db_lmdb.cpp 2018-10-17 21:36:10 +02:00
moneromooo-monero
c39e0a1706 core: don't verify range proofs multiple times 2018-10-17 16:23:10 +00:00
moneromooo-monero
c774392985 spawn: close all file descriptors before execve
No need to give whatever we're calling access to what we use
2018-10-17 09:31:34 +00:00
moneromooo-monero
a69fc05a0c util: close keys file lock on exec 2018-10-16 17:20:44 +00:00
Riccardo Spagni
5c85da5a73 Merge pull request #4610
9b6dd934 Providing user supplied default constructor for expect<void> (Lee Clagett)
2018-10-16 18:25:14 +02:00
Riccardo Spagni
d4e4fac209 Merge pull request #4602
6f28667a daemon: fix reading past stack on exit (moneromooo-monero)
2018-10-16 18:23:44 +02:00
Riccardo Spagni
c5be5ca6b4 Merge pull request #4623
99d45a95 wallet_rpc_server: fix change_wallet_password RPC (moneromooo-monero)
2018-10-16 18:23:30 +02:00
moneromooo-monero
99d45a9578 wallet_rpc_server: fix change_wallet_password RPC 2018-10-16 15:19:05 +00:00
Riccardo Spagni
e0a1d45d76 Merge pull request #4621
0cdd4b07 wallet2_api: fix generating new wallet in the GUI (moneromooo-monero)
2018-10-16 17:13:39 +02:00
moneromooo-monero
0cdd4b074e wallet2_api: fix generating new wallet in the GUI
It was creating a new wallet without a password first (this should
be fixed), then not changing the password correctly
2018-10-16 14:46:17 +00:00
xiphon
ad4cce930b build: fixed submodule check 2018-10-16 14:43:56 +00:00
moneromooo-monero
3ffbec1556 rpc: init m_rpc_version in Message ctor
Coverity 182501
2018-10-16 11:58:54 +00:00
moneromooo-monero
bfa2dce171 rpc: remove unused ctors
Also prevents coverity from moaning about them not initializing fields
2018-10-16 11:58:52 +00:00
moneromooo-monero
7cc39845be account: init creation timestamp to 0
Never actually used uninitialized

Coverity 136615
2018-10-16 11:58:50 +00:00
moneromooo-monero
3212378912 wallet2: initialize some scalar fields in ctor where appropriate
Coverity 188336
2018-10-16 11:58:48 +00:00
moneromooo-monero
4eca42b241 blockchain_db: initialize m_hardfork in ctor just in case
Coverity 136568
2018-10-16 11:58:46 +00:00
mmitkevich
a7960542a9 WalletAPI: rescanBlockchain, rescanBlockchainAsync 2018-10-16 14:58:22 +03:00
Riccardo Spagni
636153b205 Merge pull request #4572
e7f24850 Fix Windows build after epee dependency change (iDunk5400)
2018-10-16 12:43:13 +02:00
moneromooo-monero
2d48861db7 p2p: only deinitialize what's been initialized in offline mode 2018-10-16 09:20:05 +00:00
moneromooo-monero
45a6880d78 unit_tests: call umask before mkstemp
Coverity 188788
2018-10-16 09:19:27 +00:00
Lee Clagett
9b6dd9348c Providing user supplied default constructor for expect<void> 2018-10-15 23:42:29 -04:00
TheCharlatan
e623f2b225 Add building with depends to the Makefile
Depends can now be compiled with `make depends target=$triple`, where
$triple is one of the supported build targets.

Adapt the Makefile for this change, remove not needed windows deps from
depends setup description.
2018-10-16 03:39:17 +02:00
iDunk5400
e7f24850d5 Fix Windows build after epee dependency change 2018-10-15 23:08:17 +00:00
moneromooo-monero
0fbbb065d4 p2p: a negative result from UPNP_GetValidIGD is an error
as per the source documentation
2018-10-15 22:41:00 +00:00
moneromooo-monero
6f28667aa3 daemon: fix reading past stack on exit 2018-10-15 22:13:05 +00:00
moneromooo-monero
9ea507812e README: add libnorm to the dependency list 2018-10-15 13:00:32 +00:00
Riccardo Spagni
1afc1d0d26 Merge pull request #4502
9a856697 rpc: fixed typo in JSON command error response message (AnythingTechPro)
2018-10-15 13:38:47 +02:00
Riccardo Spagni
3284a4fb62 Merge pull request #4494
0a9bd1b3 Move cross compiling steps into proper heading (K3v1n Kur14k053)
2018-10-15 13:38:08 +02:00
Riccardo Spagni
5ccd3d32b4 Merge pull request #4489
00901e9c epee: initialize a few data members where it seems to be appropriate (moneromooo-monero)
144a6c32 abstract_tcp_server2: move m_period to subclass (moneromooo-monero)
758d7684 connection_basic: remove unused floating time start time (moneromooo-monero)
e5108a29 Catch more exceptions in dtors (moneromooo-monero)
2018-10-15 13:37:18 +02:00
Riccardo Spagni
215fa6b5ce Merge pull request #4481
98c92258 unit_tests: add a notifier test (moneromooo-monero)
2018-10-15 13:36:41 +02:00
Riccardo Spagni
c531df734f Merge pull request #4389
6844ae1b tx_pool: avoid parsing a whole tx if only the prefix is needed (moneromooo-monero)
2018-10-15 13:36:15 +02:00
Riccardo Spagni
ad8e6ee8c7 Merge pull request #4592
a677492f tx_pool: store hex string instead of raw binary to tx_blob of get_transaction_pool RPC (stoffu)
2018-10-15 13:33:40 +02:00
Riccardo Spagni
a5e498f859 Merge pull request #4591
991613f8 Dockerfile: init and update submodules (Tyler Baker)
2018-10-15 13:32:57 +02:00
Riccardo Spagni
7c6a7c1945 Merge pull request #4565
bf842a6a build: use ARCH 'native' by default, allow to configure and override it (xiphon)
2018-10-15 13:31:57 +02:00
Riccardo Spagni
544413de8f Merge pull request #4577
d886b97f SOFTWARE is the default wallet device (m2049r)
2018-10-15 13:31:29 +02:00
Riccardo Spagni
f6cfca9a40 Merge pull request #4551
c0822fdd simplewallet: mark default-ring-size setting as obsolete (moneromooo-monero)
2018-10-15 13:30:01 +02:00
Riccardo Spagni
fa7278d6b5 Merge pull request #4578
76d6d832 Revert "p2p: connect via the bound ip, if any" (moneromooo-monero)
2018-10-15 13:29:21 +02:00
Riccardo Spagni
f916ef81f1 Merge pull request #4571
c3b8328c daemon: do not run complex code in a signal handler (moneromooo-monero)
e736964a Remove epee header dependency on cryptonote_core (moneromooo-monero)
2018-10-15 13:28:42 +02:00
Riccardo Spagni
175bfe4747 Merge pull request #4567
14ed029b simplewallet: fix view key parsing in --generate-from-view-key (moneromooo-monero)
2018-10-15 13:26:29 +02:00
Riccardo Spagni
40980b33b7 Merge pull request #4550
0e33cf89 password: fix secure input with echo on windows (moneromooo-monero)
2018-10-15 13:25:50 +02:00
Riccardo Spagni
ae5ca0bea1 Merge pull request #4549
dc8f6924 password: fix backspace outputting ^? on linux on echoing secure input (moneromooo-monero)
2018-10-15 13:24:55 +02:00
stoffu
a677492f1b tx_pool: store hex string instead of raw binary to tx_blob of get_transaction_pool RPC
Inspired by https://github.com/masari-project/masari/issues/93
2018-10-15 11:57:02 +09:00
Tyler Baker
991613f88a Dockerfile: init and update submodules
The Docker image is failing to build, as the submodules are not being
explicitly initialized and updated.

Fixes: https://github.com/monero-project/monero/issues/4582

Signed-off-by: Tyler Baker <tyler@foundries.io>
2018-10-14 14:42:51 -07:00
xiphon
5dff61d4c3 readme: update OSX build badges 2018-10-14 10:51:52 +00:00
moneromooo-monero
938476c9a5 CMakeLists.txt: detect and use -pthread compiler flag
The cmake thread detection just ain't enough to always work
2018-10-13 18:12:09 +00:00
moneromooo-monero
76d6d832d2 Revert "p2p: connect via the bound ip, if any"
This reverts commit 909398efc7.

It looks like it's causing trouble with tor on some setups
2018-10-13 10:20:04 +00:00
xiphon
bf842a6a1e build: use ARCH 'native' by default, allow to configure and override it 2018-10-13 09:46:37 +00:00
m2049r
d886b97fe2 SOFTWARE is the default wallet device 2018-10-13 09:25:49 +02:00
moneromooo-monero
8f3c793749 readline_buffer: fix "cursor in prompt" bug
It happens when readline displays a prompt just before switching
to a shorter one
2018-10-12 21:03:59 +00:00
moneromooo-monero
c3b8328cd3 daemon: do not run complex code in a signal handler
instead, delegate the work to a one off thread
and notify it from the signal handler
2018-10-12 17:44:04 +00:00
moneromooo-monero
e736964a0c Remove epee header dependency on cryptonote_core 2018-10-12 17:16:44 +00:00
moneromooo-monero
14ed029b24 simplewallet: fix view key parsing in --generate-from-view-key 2018-10-12 12:54:42 +00:00
moneromooo-monero
f5f7c2ac24 rpc: blanket initialize 0MQ request and response structures 2018-10-12 09:57:41 +00:00
Michał Sałaban
04ddf02e3a Return appropriate RPC error code when key image signature check fails 2018-10-11 18:12:17 +02:00
TheCharlatan
9617fad070 Add OSX gitian descriptor 2018-10-11 01:39:44 +02:00
xiphon
68e9744d44 simplewallet: perform trivial error checks before password prompt 2018-10-10 20:01:04 +00:00
xiphon
f2c2c47a4b simplewallet: fixed deadlock if a user hits CTRL+C twice
Co-authored-by: moneromooo-monero <moneromooo-monero@users.noreply.github.com>
2018-10-10 19:39:51 +00:00
moneromooo-monero
d46c765dca README: mention max_usb_current setting on Raspberry Pi 2018-10-10 16:47:07 +00:00
moneromooo-monero
67e76aa06c wallet_rpc_server: optionally return tx keys in sign_transfer 2018-10-10 15:55:35 +00:00
moneromooo-monero
c0822fdd30 simplewallet: mark default-ring-size setting as obsolete 2018-10-10 15:04:11 +00:00
moneromooo-monero
0e33cf89d2 password: fix secure input with echo on windows
Thanks to iDunk for the testing back and forth
2018-10-10 12:37:47 +00:00
moneromooo-monero
dc8f6924b2 password: fix backspace outputting ^? on linux on echoing secure input 2018-10-10 08:58:40 +00:00
moneromooo-monero
92a0827eea wallet2: make fake out selection messages less spammy 2018-10-09 21:46:33 +00:00
Riccardo Spagni
77e1ebff26 Merge pull request #4543
bf60e98a fix version changes on master (Riccardo Spagni)
2018-10-09 23:03:01 +02:00
Riccardo Spagni
bf60e98abc fix version changes on master 2018-10-09 22:36:44 +02:00
TheCharlatan
d147d24058 Add windows descriptor to gitian descriptors
Windows is built with a seperate descriptor to handle additional changes
that need to be done to the end binary. Consolidate the gitian-build
script for this change.
2018-10-09 22:24:49 +02:00
Gregory Lemercier
93a88d7323 Utils: add support for newer Windows versions detection 2018-10-09 19:19:12 +02:00
Riccardo Spagni
c23b6f8f56 Merge pull request #4540
8833aec0 wallet2: fix cold signing using non padded bulletproofs (moneromooo-monero)
2018-10-09 16:43:01 +02:00
Riccardo Spagni
9349f9ece7 Merge pull request #4517
02c2b43a Utils: Add Dockerfile for android 64-bit build (Gregory Lemercier)
2018-10-09 16:42:43 +02:00
Riccardo Spagni
0c135c9420 Merge pull request #4535
c716a331 device: increase ledger timeout to 2 minutes (selsta)
2018-10-09 16:42:30 +02:00
Riccardo Spagni
18318e0dbc Merge pull request #4538
bd7b800f device_io_hid: fix DEFAULT_* type (too short) and init time (moneromooo-monero)
2018-10-09 16:42:16 +02:00
moneromooo-monero
8833aec083 wallet2: fix cold signing using non padded bulletproofs
This code was deciding which bulletproof configuration to use
based on ptx which weren't created yet.
2018-10-09 14:32:38 +00:00
Gregory Lemercier
02c2b43a72 Utils: Add Dockerfile for android 64-bit build 2018-10-09 15:58:18 +02:00
moneromooo-monero
977fc1bceb wallet_rpc_server: add describe_transfer RPC
for unsigned tx sets using a view only wallet
2018-10-09 10:47:32 +00:00
TheCharlatan
fed4e59886 Change gitian.sigs repo from bitcoin-core to monero-project remote host 2018-10-09 11:12:32 +02:00
moneromooo-monero
bd7b800f0a device_io_hid: fix DEFAULT_* type (too short) and init time 2018-10-09 08:18:50 +00:00
selsta
c716a331f3 device: increase ledger timeout to 2 minutes 2018-10-09 02:17:40 +02:00
TheCharlatan
f2127f9dca Add checksums for download tools
The signature prepare tool and the gitian-builder git repo should be
checked for their content. For this purpose, checkout the gitian-builder
repo at a specific commit and take the sha256sum of the osslsigncode
tool.
2018-10-08 23:14:46 +02:00
Riccardo Spagni
31155115d2 Merge pull request #4532
8f22e808 device: destroy device objects on exit (moneromooo-monero)
2018-10-08 22:30:50 +02:00
Riccardo Spagni
d6dbb6601b Merge pull request #4530
77471e23 blockchain_blackball: fix stray ! (moneromooo-monero)
2018-10-08 22:05:29 +02:00
Riccardo Spagni
6a7cd09685 Merge pull request #4529
c95a1408 CMakeLists.txt: Fix typo (erciccione)
2018-10-08 22:05:15 +02:00
Riccardo Spagni
91c6725b88 Merge pull request #4527
c5a97315 Remove last traces of libpcsc-lite (moneromooo-monero)
2018-10-08 22:04:45 +02:00
Riccardo Spagni
68f5f20c5d Merge pull request #4519
17701864 Depends: build hidapi with -fPIC (iDunk5400)
2018-10-08 22:02:11 +02:00
Riccardo Spagni
ac5674524a Revert "Merge pull request #4472"
This reverts commit 79d46c4d55, reversing
changes made to c9fc61dbb5.
2018-10-08 21:39:54 +02:00
moneromooo-monero
8f22e80865 device: destroy device objects on exit 2018-10-08 19:22:31 +00:00
moneromooo-monero
77471e23bd blockchain_blackball: fix stray ! 2018-10-08 17:37:31 +00:00
erciccione
c95a14088c CMakeLists.txt: Fix typo 2018-10-08 18:33:16 +01:00
TheCharlatan
c2f178902a Add gitian build script
This adds a build script to run gitian builds for linux.
The build script was copied from bitcoin and then adapted for monero.
Build step documentation is outlined in the README in the contrib/gitian
directory.
2018-10-08 17:29:40 +02:00
moneromooo-monero
c5a97315ee Remove last traces of libpcsc-lite 2018-10-08 14:22:10 +00:00
TheCharlatan
6d0ca4e25e Prepare Depends Packages for Gitian Scripts
The gitian environment does not treat whitespaces in configure lines,
like most other systems. The solution is to just remove them.
2018-10-08 15:53:22 +02:00
iDunk5400
2e2daebcc9 ANSI colors in Windows 10 2018-10-08 14:56:16 +02:00
moneromooo-monero
6ca00b6d75 miner: really reset flags/precision on std::cout 2018-10-08 12:12:36 +00:00
moneromooo-monero
a39c035846 blockchain: add check test options are given for fakechain mode
Coverity 188616
2018-10-08 11:37:58 +00:00
moneromooo-monero
6653062e61 unit_tests: add unit test for alloc alignment being a power of 2 2018-10-08 11:36:42 +00:00
Riccardo Spagni
3f2bfe87f7 Merge pull request #4514
85e58cb2 blockchain_blackball: fix stats double counting (moneromooo-monero)
2018-10-08 13:02:33 +02:00
iDunk5400
17701864c4 Depends: build hidapi with -fPIC 2018-10-08 12:50:04 +02:00
moneromooo-monero
6844ae1b8d tx_pool: avoid parsing a whole tx if only the prefix is needed 2018-10-08 10:18:01 +00:00
moneromooo-monero
85e58cb24a blockchain_blackball: fix stats double counting 2018-10-08 08:55:56 +00:00
sanecito
539debc477 Finish all contexts but simple_wallet, translate 23% of simple_wallet 2018-10-07 14:27:41 -07:00
Riccardo Spagni
e19652df51 Merge pull request #4036
9acf42d3 Multisig M/N functionality core tests added (naughtyfox)
9f3963e8 Arbitrary M/N multisig schemes: * support in wallet2 * support in monero-wallet-cli * support in monero-wallet-rpc * support in wallet api * support in monero-gen-trusted-multisig * unit tests for multisig wallets creation (naughtyfox)
2018-10-07 19:57:26 +02:00
Riccardo Spagni
890824dbc0 Merge pull request #4510
21a624af Consolidate HID depends makefiles into single recipe (TheCharlatan)
2018-10-07 19:51:09 +02:00
Riccardo Spagni
ad99a35d6b Merge pull request #4511
f9485a36 tests: update crypto tests data file after PRNG changes (moneromooo-monero)
2018-10-07 19:50:45 +02:00
moneromooo-monero
f9485a36cf tests: update crypto tests data file after PRNG changes 2018-10-07 17:44:02 +00:00
TheCharlatan
21a624af23 Consolidate HID depends makefiles into single recipe
Make sure all required dependencies are linked statically, by only
providing the static libraries.
2018-10-07 19:16:22 +02:00
Riccardo Spagni
533d31d050 Merge pull request #4509
0656050f README: update MSYS2 dependencies for Ledger (Lafudoci)
2018-10-07 18:59:06 +02:00
Riccardo Spagni
7189d699d1 Merge pull request #4508
3d722db4 wallet-cli: Update French translation (Guillaume LE VAILLANT)
2018-10-07 18:58:32 +02:00
Riccardo Spagni
9da6d2969b Merge pull request #4506
cbdd6b91 Linux: Fix building of static binaries with hw device support (iDunk5400)
2018-10-07 18:58:00 +02:00
Riccardo Spagni
757704f0c7 Merge pull request #4505
977df631 Fix some calls to the translation function (Guillaume LE VAILLANT)
2018-10-07 18:57:26 +02:00
Riccardo Spagni
e67cb38e5a Merge pull request #4501
fb3593c2 Add check if submodules need to be updated (TheCharlatan)
2018-10-07 18:57:10 +02:00
moneromooo-monero
9907ea0694 cryptonote: sort tx_extra fields
This removes some small amount of fingerprinting entropy.
There is no consensus rule to require this since this field
is technically free form, and a transaction is free to have
custom data in it.
2018-10-07 11:13:22 +00:00
Lafudoci
0656050f76 README: update MSYS2 dependencies for Ledger 2018-10-07 10:15:30 +08:00
iDunk5400
cbdd6b910b Linux: Fix building of static binaries with hw device support
This should enable building static binaries on Linux systems where dependencies are already built with -fPIC, such as Ubuntu 18.04.
2018-10-06 16:48:14 +02:00
Guillaume LE VAILLANT
3d722db487 wallet-cli: Update French translation 2018-10-06 16:23:52 +02:00
Guillaume LE VAILLANT
977df6315f Fix some calls to the translation function
Some strings were not detected by lupdate because "tr() cannot be called without
context".
2018-10-06 10:26:06 +02:00
TheCharlatan
fb3593c22e Add check if submodules need to be updated
Adds CMake check that pulls from the different git remotes and checks if
there is any output.
2018-10-05 23:54:49 +02:00
Riccardo Spagni
79d46c4d55 Merge pull request #4472
02d3ef7b blocks: use auto-generated .c files instead of 'LD -r -b binary' (xiphon)
2018-10-05 23:13:32 +02:00
Riccardo Spagni
c9fc61dbb5 Merge pull request #4495
34a85e0c wallet2: disable height based segregation (moneromooo-monero)
2018-10-05 23:13:15 +02:00
Riccardo Spagni
21960a5b5a Merge pull request #4499
c5928bde wallet2_api: fix build with C++14 (moneromooo-monero)
2018-10-05 23:12:57 +02:00
Riccardo Spagni
445d9c86f2 Merge pull request #4390
a0613532 secure_pwd_reader: Add proper Unicode handling [Ryo contribution] (fireice-uk)
579383c2 simplewallet: Add Unicode input_line [Ryo backport] (fireice-uk)
2018-10-05 23:12:42 +02:00
Riccardo Spagni
1e0ccf53bb Merge pull request #4492
7f2ad1a7 functional_tests: fix linking on Windows (iDunk5400)
2018-10-05 23:12:26 +02:00
Riccardo Spagni
6762897f70 Merge pull request #4487
7c790f11 Fix rtxn usage in BlockchainLMDB::get_estimated_batch_size (Howard Chu)
2018-10-05 23:12:11 +02:00
sanecito
ee71ba9869 Add translations for Monero::PendingTransactionImpl, command_line Contexts 2018-10-05 00:39:23 -07:00
AnythingTechPro
9a85669724 rpc: fixed typo in JSON command error response message 2018-10-04 22:12:53 -04:00
Jkat
3b402ebb85 Updating Monero GUI repo link in README.i18n.md 2018-10-04 14:43:14 -04:00
fireice-uk
a061353254 secure_pwd_reader: Add proper Unicode handling [Ryo contribution] 2018-10-04 19:31:59 +01:00
moneromooo-monero
c5928bdec6 wallet2_api: fix build with C++14 2018-10-04 13:42:01 +00:00
sanecito
5c4fe3d4a5 Create Japanese file, add translations for "Monero::AddressBookImpl" and "Wallet" Contexts 2018-10-04 01:43:16 -07:00
xiphon
02d3ef7bda blocks: use auto-generated .c files instead of 'LD -r -b binary' 2018-10-04 00:01:09 +00:00
moneromooo-monero
34a85e0cc3 wallet2: disable height based segregation
It can still be enable via DNS if a key reusing fork pops up
2018-10-03 20:44:48 +00:00
K3v1n Kur14k053
0a9bd1b3c2 Move cross compiling steps into proper heading
As per #3430
2018-10-03 18:51:06 +05:30
iDunk5400
7f2ad1a768 functional_tests: fix linking on Windows 2018-10-03 01:06:03 +02:00
Riccardo Spagni
215651cbb3 Merge pull request #4485
5ec929fb daemon: do not display uptime when not known (moneromooo-monero)
2018-10-02 22:43:00 +02:00
Riccardo Spagni
932a17018a Merge pull request #4490
bccd88dd wallet2: clear found out for every tx key (doy-lee)
2018-10-02 22:41:24 +02:00
Riccardo Spagni
6cb9c815d4 Merge pull request #4484
2c74b1a1 wallet_rpc_server: include all transfer records for a txid (moneromooo-monero)
2018-10-02 22:40:51 +02:00
Riccardo Spagni
66094dee00 Merge pull request #4482
25e5890d wallet: fix --generate-from-json using wrong password (moneromooo-monero)
2018-10-02 22:39:57 +02:00
Riccardo Spagni
be6063ea59 Merge pull request #4479
d5541e44 common: Windows 'spawn' support for tx and block notifications (xiphon)
2018-10-02 22:39:34 +02:00
Riccardo Spagni
d1d64327b6 Merge pull request #4476
fa9e54b6 build: fix gcc false positive 'stringop-overflow' warning (xiphon)
2018-10-02 22:38:32 +02:00
Riccardo Spagni
64412acd31 Merge pull request #4475
6da36ea0 wallet2_api: blackball/unblackball now take two parameters (moneromooo-monero)
2018-10-02 22:38:09 +02:00
Riccardo Spagni
b5c570c53b Merge pull request #4471
31559e6a Update unbound submodule to 7f23967 (iDunk5400)
2018-10-02 22:37:43 +02:00
Riccardo Spagni
3a4fbdd9ec Merge pull request #4470
2fbf38ee Fix 32bit depends builds (TheCharlatan)
17142ec9 malloc scratchpad for all supported android archs (m2049r)
6a781408 Make depends use self built clang for darwin (TheCharlatan)
69da14e1 fixes make debug compilation on OSX (Dusan Klinec)
fe125647 Fixup RENAME_DB() macro (Howard Chu)
b2972927 osx compilation fix: missing boost libs added (Dusan Klinec)
174f31bf simplewallet: don't complain about payment id on pool mined blocks (moneromooo-monero)
89288863 README: mention ASAN usage alongside valgrind (moneromooo-monero)
83debef9 wallet_rpc_server: remove verbose field in incoming_transfers query (moneromooo-monero)
a69271fa Fixed a typo (Piotr Kąkol)
92d1da28 unit_tests: fix build with GCC 5.4.0 on ubuntu (moneromooo-monero)
a21da905 Wallet: use unique_ptr for WalletImpl members (oneiric)
7a056f44 WalletAPI: multisigSignData bug fixed (naughtyfox)
43a06350 ringdb: use cursors to be a bit faster (moneromooo-monero)
7964d4f8 wallet2: handle corner case in picking fake outputs (moneromooo-monero)
6f5360b3 bump version to 0.13.0.1 (Riccardo Spagni)
cf470bf3 switch from master to rc (Riccardo Spagni)
2018-10-02 22:37:18 +02:00
Riccardo Spagni
e2da7c7817 Merge pull request #4467
fa942ef6 daemon: silence daemon update warnings on testnet (iDunk5400)
2018-10-02 22:36:57 +02:00
Riccardo Spagni
f34f9312f2 Merge pull request #4464
bef1750f unit_tests: fix longstanding DNS related unit test (moneromooo-monero)
2018-10-02 22:36:39 +02:00
Riccardo Spagni
8d03350244 Merge pull request #4463
8110bea3 dns_utils: refresh list of usable DNSSEC servers (moneromooo-monero)
2018-10-02 22:36:18 +02:00
moneromooo-monero
00901e9c93 epee: initialize a few data members where it seems to be appropriate 2018-10-02 17:28:50 +00:00
moneromooo-monero
144a6c32c9 abstract_tcp_server2: move m_period to subclass
This is where it is actually used, and initialized
2018-10-02 17:28:48 +00:00
moneromooo-monero
758d768486 connection_basic: remove unused floating time start time 2018-10-02 17:28:46 +00:00
moneromooo-monero
e5108a294a Catch more exceptions in dtors
Misc coverity reports
2018-10-02 17:28:44 +00:00
Howard Chu
7c790f11f2 Fix rtxn usage in BlockchainLMDB::get_estimated_batch_size
Should only stop the rtxn if we actually started it
Fixes Coverity 184960
2018-10-02 16:14:20 +01:00
doy-lee
bccd88ddf5 wallet2: clear found out for every tx key
Avoids triggering the sanity check
2018-10-02 08:53:28 +00:00
moneromooo-monero
5ec929fb3a daemon: do not display uptime when not known 2018-10-02 08:40:38 +00:00
xiphon
d5541e44fe common: Windows 'spawn' support for tx and block notifications 2018-10-02 01:53:27 +03:00
naughtyfox
9acf42d371 Multisig M/N functionality core tests added 2018-10-01 19:17:34 +03:00
naughtyfox
9f3963e823 Arbitrary M/N multisig schemes:
* support in wallet2
* support in monero-wallet-cli
* support in monero-wallet-rpc
* support in wallet api
* support in monero-gen-trusted-multisig
* unit tests for multisig wallets creation
2018-10-01 19:16:56 +03:00
moneromooo-monero
2c74b1a1c4 wallet_rpc_server: include all transfer records for a txid
Since subaddresses were added, a tx can now create more than
one payment
2018-10-01 14:47:26 +00:00
moneromooo-monero
25e5890d37 wallet: fix --generate-from-json using wrong password 2018-10-01 12:32:26 +00:00
moneromooo-monero
98c9225823 unit_tests: add a notifier test 2018-10-01 09:14:20 +00:00
xiphon
fa9e54b6ee build: fix gcc false positive 'stringop-overflow' warning 2018-09-30 10:58:00 +00:00
moneromooo-monero
6da36ea057 wallet2_api: blackball/unblackball now take two parameters
amount and offset (instead of pubkey)
2018-09-30 08:10:30 +00:00
iDunk5400
31559e6ad2 Update unbound submodule to 7f23967
Fixes building in MSYS2 with openssl 1.1.1
2018-09-29 23:11:59 +02:00
Riccardo Spagni
83d8f03c23 Merge pull request #4333
73403004 add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc} (moneromooo-monero)
2018-09-29 22:20:44 +02:00
Riccardo Spagni
4a2664f743 Merge pull request #4461
7dd11711 wallet2: fix transfers between subaddresses hitting the sanity check (moneromooo-monero)
2018-09-29 22:20:41 +02:00
Riccardo Spagni
effcbf2060 Merge pull request #4459
bcf3f6af fuzz_tests: catch unhandled exceptions (moneromooo-monero)
3ebd05d4 miner: restore stream flags after changing them (moneromooo-monero)
a093092e levin_protocol_handler_async: do not propagate exception through dtor (moneromooo-monero)
1eebb82b net_helper: do not propagate exceptions through dtor (moneromooo-monero)
fb6a3630 miner: do not propagate exceptions through dtor (moneromooo-monero)
2e2139ff epee: do not propagate exception through dtor (moneromooo-monero)
0749a8bd db_lmdb: do not propagate exceptions in dtor (moneromooo-monero)
1b0afeeb wallet_rpc_server: exit cleanly on unhandled exceptions (moneromooo-monero)
418a9936 unit_tests: catch unhandled exceptions (moneromooo-monero)
ea7f9543 threadpool: do not propagate exceptions through the dtor (moneromooo-monero)
6e855422 gen_multisig: nice exit on unhandled exception (moneromooo-monero)
53df2deb db_lmdb: catch error in mdb_stat calls during migration (moneromooo-monero)
e67016dd blockchain_blackball: catch failure to commit db transaction (moneromooo-monero)
661439f4 mlog: don't remove old logs if we failed to rename the current file (moneromooo-monero)
5fdcda50 easylogging++: test for NULL before dereference (moneromooo-monero)
7ece1550 performance_test: fix bad last argument calling add_arg (moneromooo-monero)
a085da32 unit_tests: add check for page size > 0 before dividing (moneromooo-monero)
d8b1ec8b unit_tests: use std::shared_ptr to shut coverity up about leaks (moneromooo-monero)
02563bf4 simplewallet: top level exception catcher to print nicer messages (moneromooo-monero)
c57a65b2 blockchain_blackball: fix shift range for 32 bit archs (moneromooo-monero)
2018-09-29 22:20:38 +02:00
Riccardo Spagni
9a54d0033e Merge pull request #4458
921b0fb1 use default create_address_file argument (m2049r)
2018-09-29 22:20:35 +02:00
Riccardo Spagni
4e3bff92ab Merge pull request #4457
85318e78 build: set ARCH_FLAG before compiler/linker flag checks (xiphon)
2018-09-29 22:20:31 +02:00
Riccardo Spagni
e951258543 Merge pull request #4456
06d05c21 device: set device name correctly if key_on_device is set (Dusan Klinec)
2018-09-29 22:20:27 +02:00
Riccardo Spagni
2ec0d780c4 Merge pull request #4449
17142ec9 malloc scratchpad for all supported android archs (m2049r)
2018-09-29 22:20:24 +02:00
Riccardo Spagni
8e98ed8c71 Merge pull request #4448
6a781408 Make depends use self built clang for darwin (TheCharlatan)
2018-09-29 22:20:20 +02:00
Riccardo Spagni
5bcead236f Merge pull request #4446
69da14e1 fixes make debug compilation on OSX (Dusan Klinec)
2018-09-29 22:20:15 +02:00
Riccardo Spagni
09fb2bb5f8 Merge pull request #4445
fe125647 Fixup RENAME_DB() macro (Howard Chu)
2018-09-29 22:20:12 +02:00
Riccardo Spagni
b4ec67b2f7 Merge pull request #4443
b2972927 osx compilation fix: missing boost libs added (Dusan Klinec)
2018-09-29 22:20:09 +02:00
Riccardo Spagni
b710d78026 Merge pull request #4439
174f31bf simplewallet: don't complain about payment id on pool mined blocks (moneromooo-monero)
2018-09-29 22:20:05 +02:00
Riccardo Spagni
365a9d0c09 Merge pull request #4434
89288863 README: mention ASAN usage alongside valgrind (moneromooo-monero)
2018-09-29 22:20:03 +02:00
Riccardo Spagni
54d883d826 Merge pull request #4427
83debef9 wallet_rpc_server: remove verbose field in incoming_transfers query (moneromooo-monero)
2018-09-29 22:19:58 +02:00
Riccardo Spagni
8e07e26555 Merge pull request #4425
a69271fa Fixed a typo (Piotr Kąkol)
2018-09-29 22:19:47 +02:00
Riccardo Spagni
876282fd69 Merge pull request #4424
92d1da28 unit_tests: fix build with GCC 5.4.0 on ubuntu (moneromooo-monero)
2018-09-29 22:19:44 +02:00
Riccardo Spagni
cd5638f894 Merge pull request #4417
a21da905 Wallet: use unique_ptr for WalletImpl members (oneiric)
2018-09-29 22:19:40 +02:00
Riccardo Spagni
e4130e6ae6 Merge pull request #4409
7a056f44 WalletAPI: multisigSignData bug fixed (naughtyfox)
2018-09-29 22:19:36 +02:00
Riccardo Spagni
402349760f Merge pull request #4407
43a06350 ringdb: use cursors to be a bit faster (moneromooo-monero)
2018-09-29 22:19:32 +02:00
TheCharlatan
2fbf38ee91 Fix 32bit depends builds
Add architecture flags when cmake invokes gcc manually.
Add 32bit to Travis.
2018-09-29 22:16:42 +02:00
Riccardo Spagni
a5476f82ca Merge pull request #4449
17142ec9 malloc scratchpad for all supported android archs (m2049r)
2018-09-29 22:15:31 +02:00
Riccardo Spagni
50f9472911 Merge pull request #4448
6a781408 Make depends use self built clang for darwin (TheCharlatan)
2018-09-29 22:14:56 +02:00
Riccardo Spagni
bf6388e4d4 Merge pull request #4446
69da14e1 fixes make debug compilation on OSX (Dusan Klinec)
2018-09-29 22:14:28 +02:00
Riccardo Spagni
05c942aba8 Merge pull request #4445
fe125647 Fixup RENAME_DB() macro (Howard Chu)
2018-09-29 22:14:09 +02:00
Riccardo Spagni
735de189ab Merge pull request #4443
b2972927 osx compilation fix: missing boost libs added (Dusan Klinec)
2018-09-29 22:13:34 +02:00
Riccardo Spagni
931e7faa0b Merge pull request #4439
174f31bf simplewallet: don't complain about payment id on pool mined blocks (moneromooo-monero)
2018-09-29 22:13:17 +02:00
Riccardo Spagni
559a0cfc92 Merge pull request #4434
89288863 README: mention ASAN usage alongside valgrind (moneromooo-monero)
2018-09-29 22:12:56 +02:00
Riccardo Spagni
52b639bcd0 Merge pull request #4427
83debef9 wallet_rpc_server: remove verbose field in incoming_transfers query (moneromooo-monero)
2018-09-29 22:12:31 +02:00
Riccardo Spagni
1011142868 Merge pull request #4425
a69271fa Fixed a typo (Piotr Kąkol)
2018-09-29 22:12:14 +02:00
Riccardo Spagni
3d8f54daad Merge pull request #4424
92d1da28 unit_tests: fix build with GCC 5.4.0 on ubuntu (moneromooo-monero)
2018-09-29 22:11:50 +02:00
Riccardo Spagni
86a137aff3 Merge pull request #4417
a21da905 Wallet: use unique_ptr for WalletImpl members (oneiric)
2018-09-29 22:11:32 +02:00
Riccardo Spagni
acc9b32749 Merge pull request #4409
7a056f44 WalletAPI: multisigSignData bug fixed (naughtyfox)
2018-09-29 22:11:13 +02:00
Riccardo Spagni
9d0b177720 Merge pull request #4407
43a06350 ringdb: use cursors to be a bit faster (moneromooo-monero)
2018-09-29 22:10:48 +02:00
Riccardo Spagni
ff0d7a7678 Merge pull request #4406
7964d4f8 wallet2: handle corner case in picking fake outputs (moneromooo-monero)
2018-09-29 22:09:46 +02:00
Riccardo Spagni
2a44e13658 Merge pull request #4441
6f5360b3 bump version to 0.13.0.1 (Riccardo Spagni)
2018-09-29 22:09:26 +02:00
Riccardo Spagni
0d062bacfb Merge pull request #4406
7964d4f8 wallet2: handle corner case in picking fake outputs (moneromooo-monero)
2018-09-29 21:51:51 +02:00
iDunk5400
fa942ef610 daemon: silence daemon update warnings on testnet 2018-09-29 14:42:10 +02:00
moneromooo-monero
83debef99e wallet_rpc_server: remove verbose field in incoming_transfers query
The key image (which was only supplied if verbose was true) is
readily available, not a secret key, and it was only modelled
after the CLI command because it's a bit spammy for the CLI.
2018-09-28 17:06:56 +00:00
moneromooo-monero
bef1750f65 unit_tests: fix longstanding DNS related unit test 2018-09-28 15:28:38 +00:00
moneromooo-monero
8110bea34b dns_utils: refresh list of usable DNSSEC servers
A few of them are now returning invalid replies.
2018-09-28 15:23:59 +00:00
Dusan Klinec
b2972927ea osx compilation fix: missing boost libs added 2018-09-26 21:23:01 +02:00
m2049r
17142ec9bb malloc scratchpad for all supported android archs 2018-09-26 00:59:12 +02:00
TheCharlatan
6a78140863 Make depends use self built clang for darwin
The configure script in hidapi and libsodium tried to find clang in /usr/bin,
even though the correct prefix was passed in. This sets the correct CC flag.
This was previously undetected, because clang and the sdk where
installed in the global environment.

This also fixes a subsequent error, where IOKIT and CoreFoundation are
not found, again for the reason stated above.
2018-09-25 23:05:16 +02:00
Dusan Klinec
69da14e105 fixes make debug compilation on OSX 2018-09-25 22:44:00 +02:00
Howard Chu
fe1256471a Fixup RENAME_DB() macro
Make sure target DB's record is on a writable page
2018-09-25 21:01:03 +01:00
Riccardo Spagni
558da3684c Merge pull request #4441
6f5360b3 bump version to 0.13.0.1 (Riccardo Spagni)
2018-09-25 15:54:01 +02:00
Riccardo Spagni
6f5360b3c6 bump version to 0.13.0.1 2018-09-25 15:48:56 +02:00
Riccardo Spagni
3882b30076 Merge pull request #4440
cf470bf3 switch from master to rc (Riccardo Spagni)
2018-09-25 15:26:24 +02:00
Riccardo Spagni
cf470bf3d6 switch from master to rc 2018-09-25 15:07:28 +02:00
moneromooo-monero
174f31bf7d simplewallet: don't complain about payment id on pool mined blocks
Those use the extra nonce without a payment id
2018-09-25 12:34:42 +00:00
Riccardo Spagni
8bf5a00564 Merge pull request #4423
357441a2 add checkpoints for testnet and mainnet (Riccardo Spagni)
d9f666d7 update checkpoints.dat (Riccardo Spagni)
6b1b4e83 update version to 13.0 (Riccardo Spagni)
6f153533 update readme with v13.0 (Riccardo Spagni)
2018-09-25 13:33:52 +02:00
Riccardo Spagni
f2eee1eb8c Merge pull request #4438
e350cc5a wallet2: fix duplicate output making it to the RPC (moneromooo-monero)
bf9a0f4c epee: fix stack overflow on crafted input (moneromooo-monero)
45683ee0 epee: fix invalid memory write reading an array entry (moneromooo-monero)
2018-09-25 13:33:37 +02:00
moneromooo-monero
e350cc5ad5 wallet2: fix duplicate output making it to the RPC 2018-09-25 11:28:39 +00:00
moneromooo-monero
bf9a0f4c65 epee: fix stack overflow on crafted input 2018-09-25 11:27:50 +00:00
moneromooo-monero
45683ee02c epee: fix invalid memory write reading an array entry
Reported by Lilith Wyatt at Talos.

Since this is not needed in normal operation, I just let this
error out.
2018-09-25 11:27:48 +00:00
Riccardo Spagni
689758d691 Merge pull request #4435
c39ad0cd tx_pool: fix tx removal at startup keeping references (moneromooo-monero)
2018-09-25 13:11:05 +02:00
Riccardo Spagni
13d9bdb849 Merge pull request #4431
5c234cbd Add hidapi to depends (TheCharlatan)
2018-09-25 13:09:54 +02:00
TheCharlatan
5c234cbdcb Add hidapi to depends
Clang needs to get its cctools path passed directly for the hid build to
succeed.
Make gperf a permanent external dependency.
Remove pcsc from depends.
2018-09-25 12:13:54 +02:00
Riccardo Spagni
295bae10ba Merge pull request #4412
4d0a8db0 device: fix warnings about overridden functions (moneromooo-monero)
2018-09-25 12:13:51 +02:00
Riccardo Spagni
e67789d075 Merge pull request #4422
6e270fbd wallet2_api: fix for latest code changes (moneromooo-monero)
2018-09-25 12:13:34 +02:00
Riccardo Spagni
0d206dccda Merge pull request #4430
50981c40 blockchain: add stagenet v8 and v9, two weeks before mainnet (moneromooo-monero)
2018-09-25 12:12:29 +02:00
Riccardo Spagni
cd8c7f6e78 Merge pull request #4433
b35beaa8 wallet_rpc_server: include account index in incoming_transfers RPC (moneromooo-monero)
2018-09-25 12:12:14 +02:00
Riccardo Spagni
d2f9a4c584 Merge pull request #4420
0f4f873b Fix Darwin Sodium build (TheCharlatan)
bf1e1d97 A Travis to monero (TheCharlatan)
2018-09-25 12:06:20 +02:00
Riccardo Spagni
c1182e433e Merge pull request #4419
936e22a9 Dockerfile: use single build dir (MoroccanMalinois)
2018-09-25 12:05:23 +02:00
Riccardo Spagni
78fd2599c2 Merge pull request #4414
83907f88 wallet_rpc_server: fix --run-as-service on Windows (moneromooo-monero)
2018-09-25 12:04:52 +02:00
moneromooo-monero
c39ad0cd72 tx_pool: fix tx removal at startup keeping references 2018-09-25 09:58:37 +00:00
moneromooo-monero
89288863a4 README: mention ASAN usage alongside valgrind 2018-09-25 09:41:41 +00:00
Riccardo Spagni
357441a2fa add checkpoints for testnet and mainnet 2018-09-25 10:02:05 +02:00
MoroccanMalinois
936e22a9b5 Dockerfile: use single build dir 2018-09-25 00:16:13 +02:00
moneromooo-monero
50981c40ce blockchain: add stagenet v8 and v9, two weeks before mainnet 2018-09-24 20:43:39 +00:00
Riccardo Spagni
59024a9e88 Merge pull request #4203
bb6e3bbc Replace USB-CCID (smartcard) by USB-HID (cslashm)
2018-09-24 22:19:49 +02:00
cslashm
bb6e3bbc0f Replace USB-CCID (smartcard) by USB-HID
Remove PCSC dependencies which is a bit hard (not user friendly) to install on linux and Mac

Split Ledger logic and device IO
2018-09-24 21:57:42 +02:00
moneromooo-monero
b35beaa8d6 wallet_rpc_server: include account index in incoming_transfers RPC 2018-09-24 19:42:26 +00:00
Riccardo Spagni
5c637c7910 Merge pull request #4429
1dd5c73f bulletproofs: multiply points by 8 first thing in verification (moneromooo-monero)
2018-09-24 16:15:49 +02:00
moneromooo-monero
1dd5c73f62 bulletproofs: multiply points by 8 first thing in verification
instead of merging that with other scalar multiplications
where possible for speed, since this is not actually safe
2018-09-24 14:02:51 +00:00
Piotr Kąkol
a69271faf7 Fixed a typo 2018-09-23 18:31:30 +02:00
moneromooo-monero
92d1da28ef unit_tests: fix build with GCC 5.4.0 on ubuntu 2018-09-23 14:38:31 +00:00
Riccardo Spagni
d9f666d78c update checkpoints.dat 2018-09-23 09:51:15 +02:00
moneromooo-monero
6e270fbd29 wallet2_api: fix for latest code changes 2018-09-22 23:00:34 +00:00
oneiric
a21da9058b Wallet: use unique_ptr for WalletImpl members
Use unique_ptr to manage WalletImpl internals, rather than raw
pointers.
2018-09-22 22:03:36 +00:00
TheCharlatan
0f4f873bf3 Fix Darwin Sodium build
Clang needs to get its cctools path passed.
2018-09-22 21:50:08 +02:00
Riccardo Spagni
6b1b4e83dd update version to 13.0 2018-09-22 21:36:11 +02:00
Riccardo Spagni
6f153533e2 update readme with v13.0 2018-09-22 21:31:06 +02:00
Riccardo Spagni
8a61f669a9 Merge pull request #4416
c05f98d4 README: remove overlooked conflict (moneromooo-monero)
2018-09-22 21:09:29 +02:00
moneromooo-monero
c05f98d4c3 README: remove overlooked conflict 2018-09-22 19:07:48 +00:00
Riccardo Spagni
fb47963e09 Merge pull request #4404
f3cd51a1 cryptonote tweak v2.2 (Lee Clagett)
2018-09-22 20:32:40 +02:00
moneromooo-monero
7964d4f8ea wallet2: handle corner case in picking fake outputs
If we originally think we have enough outputs on the blockchain
to pick random fake outputs, we might end up with not enough of
them if enough are actually blackballed.
2018-09-22 15:57:47 +00:00
moneromooo-monero
83907f8829 wallet_rpc_server: fix --run-as-service on Windows
Thanks iDunk for the windows testing
2018-09-22 11:56:30 +00:00
Lee Clagett
f3cd51a12b cryptonote tweak v2.2 2018-09-22 03:47:50 +00:00
TheCharlatan
bf1e1d979c A Travis to monero
Add a Travis build script for Monero. This was blatantly copied from
Bitcoin. It spawns jobs in docker containers running an ubuntu bionic
image.

This commit also a fixes a problem where librt was still linked, even
when compiling statically.
2018-09-22 01:49:53 +02:00
moneromooo-monero
4d0a8db06d device: fix warnings about overridden functions 2018-09-21 19:33:15 +00:00
Riccardo Spagni
7aa5112280 Merge pull request #4411
e03402b0 wallet_rpc_server: fix build for windows (moneromooo-monero)
2018-09-21 20:51:39 +02:00
moneromooo-monero
e03402b0c7 wallet_rpc_server: fix build for windows
Thanks iDunk for building patches on windows
2018-09-21 18:50:05 +00:00
Riccardo Spagni
b65e236fda Merge pull request #4405
8db2d8d4 simplewallet: fix --generate-from-json setting wrong wallet filename (moneromooo-monero)
2018-09-21 20:46:54 +02:00
Riccardo Spagni
de5631c6be Merge pull request #4402
a2505c2f gpg_keys: bump my key validity for two more years (moneromooo-monero)
2018-09-21 20:46:41 +02:00
Riccardo Spagni
85110b42ab Merge pull request #4401
66901901 README: harmonize command formatting inside README.md (Andrea)
8cd98408 disable AES on s390x architecture (Tuan M. Hoang)
4ed30bab wallet: implement coin splitting for sweep_* 'outputs' option (whythat)
24f52396 wallet: add 'outputs' option for sweep_* commands (whythat)
52e19d69 README: Compile boost with cxxflags=-fPIC cflags=-fPIC (Italocoin Project)
0c77523d README: fill in libsodium package name for Arch (phloatingman)
2018-09-21 20:46:22 +02:00
Riccardo Spagni
fd74815f65 Merge pull request #4399
f77ce675 rpc: allow pruning of json encoded txs (cryptochangements34)
2018-09-21 20:46:00 +02:00
Riccardo Spagni
93f473e9f8 Merge pull request #4397
a4065bf2 Fixes Dockerfile build problem #4396 (OPSXCQ)
2018-09-21 20:45:48 +02:00
Riccardo Spagni
aa1d321e5f Merge pull request #4395
9bf0105e Fixed Keccak implementation on big-endian platforms (Alexandro Sanchez)
2018-09-21 20:45:23 +02:00
Riccardo Spagni
63eeb9df80 Merge pull request #4394
b7660149 node_rpc_proxy: return a non empty error string on connection failure (moneromooo-monero)
2018-09-21 20:44:48 +02:00
Riccardo Spagni
37a306370d Merge pull request #4388
05edc969 simplewallet: remove obsolete transfer_original command (moneromooo-monero)
2018-09-21 20:44:19 +02:00
Riccardo Spagni
bc208be63d Merge pull request #4385
6dbbc690 unit_tests: sanity check on transaction weight (moneromooo-monero)
2018-09-21 20:44:00 +02:00
Riccardo Spagni
14ab2e4db1 Merge pull request #4384
27af46c9 tests: update test wallet keys file for encrypted keys (moneromooo-monero)
2018-09-21 20:43:32 +02:00
Riccardo Spagni
85d731c66d Merge pull request #4382
ff72200d update readme fork table (Gingeropolous)
2018-09-21 20:43:16 +02:00
Riccardo Spagni
4a652d6b52 Merge pull request #4379
607301bf rct: avoid repeated unnecessary conversions when accummulating (moneromooo-monero)
2018-09-21 20:42:41 +02:00
Riccardo Spagni
0645dcdbdb Merge pull request #4378
ac934663 rpc: add a "is an update available" flag in get_info (moneromooo-monero)
2018-09-21 20:41:53 +02:00
Riccardo Spagni
b88bbf59c3 Merge pull request #4377
4d52ec0c mlog: do not display http errors by default (moneromooo-monero)
2018-09-21 20:41:17 +02:00
Riccardo Spagni
dc9a69d980 Merge pull request #4376
2ace509a simplewallet: print reason why refresh+password is needed (moneromooo-monero)
2018-09-21 20:40:46 +02:00
Riccardo Spagni
629db71593 Merge pull request #4373
4f81cd3a rpc: add cumulative difficulty in block header data (moneromooo-monero)
2018-09-21 20:40:23 +02:00
Riccardo Spagni
a059bcd74e Merge pull request #4371
55c7cd14 Adding expect<T> - a value-or-error implementation (Lee Clagett)
2018-09-21 20:31:47 +02:00
Riccardo Spagni
d6893aedf6 Merge pull request #4369
b2bb9312 blockchain: simplify output distribution code (moneromooo-monero)
befdcbf4 db_lmdb: do not use base for cumulative distribution (moneromooo-monero)
2018-09-21 20:31:21 +02:00
Riccardo Spagni
90d1a00c10 Merge pull request #4266
bce474be query backing device (m2049r)
2018-09-21 20:31:04 +02:00
Riccardo Spagni
bb3ff2bb36 Merge pull request #4209
26a42fe5 Added features to epee::span<T> :   - Support for classes   - Added `remove_prefix` function   - Added `to_mut_span` and `as_mut_byte_span` (Lee Clagett)
2018-09-21 20:30:36 +02:00
naughtyfox
7a056f4425 WalletAPI: multisigSignData bug fixed 2018-09-21 14:40:37 +03:00
moneromooo-monero
341b3931ed cryptonote_core: warn when the block rate deviates from expectations
The warning threshold is set to allow a false positive every
ten days on average.
2018-09-20 14:01:52 +00:00
moneromooo-monero
43a06350cf ringdb: use cursors to be a bit faster 2018-09-20 12:21:57 +00:00
moneromooo-monero
8db2d8d416 simplewallet: fix --generate-from-json setting wrong wallet filename 2018-09-19 20:22:46 +00:00
m2049r
bce474be7d query backing device 2018-09-19 18:25:38 +02:00
fireice-uk
579383c26b simplewallet: Add Unicode input_line [Ryo backport] 2018-09-19 13:39:01 +01:00
moneromooo-monero
a2505c2fcc gpg_keys: bump my key validity for two more years 2018-09-19 07:50:49 +00:00
Riccardo Spagni
bad2c7cf31 Merge pull request #4391
e9bce045 Fix missing std::runtime_error def in difficulty.cpp (Howard Chu)
2018-09-18 18:00:18 +02:00
Riccardo Spagni
2371a814cf Merge pull request #4387
6e6ffc06 wallet2_api: bring up to latest wallet api (moneromooo-monero)
2018-09-18 17:59:44 +02:00
Riccardo Spagni
68dcf73de2 Merge pull request #4366
67a56a9f rctTypes: fix incorrect serialization (stoffu)
2018-09-18 17:59:20 +02:00
Riccardo Spagni
535bd0eb7e Merge pull request #4361
26971d46 WalletAPI: 'hasMultisigPartialKeyImages' function added (naughtyfox)
2018-09-18 17:58:53 +02:00
Riccardo Spagni
08f0c60ffc Merge pull request #4360
7a76354c wallet2: import_multisig forward refresh exception (naughtyfox)
2018-09-18 17:58:14 +02:00
Riccardo Spagni
df98bc50a6 Merge pull request #4357
8501b8df crypto_ops_builder: link to EdDSA/Ed25519 draft RFC (moneromooo-monero)
2018-09-18 17:57:45 +02:00
Riccardo Spagni
f9d97f3fec Merge pull request #4356
89202ce4 Docker android: add libsodium (MoroccanMalinois)
e774f249 Docker android: use common prefix (MoroccanMalinois)
2018-09-18 17:57:17 +02:00
Riccardo Spagni
9d0565615c Merge pull request #4354
03c07b16 rpc: return "already mining" in start_mining if already mining (moneromooo-monero)
2018-09-18 17:56:51 +02:00
Riccardo Spagni
7781675f22 Merge pull request #4349
7418aa60 README: bump cmake requirement to 3.5, as required by miniupnpc (moneromooo-monero)
2018-09-18 17:55:51 +02:00
Riccardo Spagni
0ff0850545 Merge pull request #4344
cd647612 rpc: don't include start time if restricted (moneromooo-monero)
2018-09-18 17:54:25 +02:00
Riccardo Spagni
7ab49f96ad Merge pull request #4341
e6117282 daemon: request no PoW hashes we don't need when asking for blocks (moneromooo-monero)
2018-09-18 17:39:56 +02:00
Riccardo Spagni
22a6591a70 Merge pull request #4325
4e1e9a60 blockchain: add mainnet v8 height targetting 18 october (moneromooo-monero)
2018-09-18 17:39:16 +02:00
Riccardo Spagni
4a1744e93e Merge pull request #4322
9a66d9f4 Docker: Updated dependencies cmake 3.12.1 and boost 1.68 (HomDx)
2018-09-18 17:37:50 +02:00
Riccardo Spagni
3cfa45cc7d Merge pull request #4317
76f95f05 rpc: allow to pass RPC login via RPC_LOGIN env var (Dusan Klinec)
2018-09-18 17:36:43 +02:00
Riccardo Spagni
e468d541b4 Merge pull request #4311
f0bc684c mnemonics: fix outrageous compile time with CLANG in release (moneromooo-monero)
2018-09-18 17:36:13 +02:00
Riccardo Spagni
580497d5f9 Merge pull request #4306
56b50faa wallet: use wipeable_string in more places where a secret is used (moneromooo-monero)
07ec748c wipeable_string: add hex_to_pod function (moneromooo-monero)
2018-09-18 17:32:11 +02:00
Riccardo Spagni
b174527f1d Merge pull request #4302
ba8dd347 api/wallet: properly disable key encryption (stoffu)
2018-09-18 17:31:35 +02:00
Riccardo Spagni
b4a9ebad6c Merge pull request #4299
f9b22a7b hw_device: support for multiple devices added [for review] (Dusan Klinec)
2018-09-18 17:29:26 +02:00
Riccardo Spagni
728a947646 Merge pull request #4273
c336d0f2 add daemonizer to rpc wallet (jcktm)
2018-09-18 16:40:04 +02:00
Riccardo Spagni
9c40bc62fc Merge pull request #3430
42397359 Fixup 32bit arm build (TheCharlatan)
a06d2581 Fix Windows build (TheCharlatan)
ecaf5b3f Add libsodium to the packages, the arm build was complaining about it. (TheCharlatan)
cbbf4d24 Adapt translations to upstream changes (TheCharlatan)
db571546 Updated pcsc url (TheCharlatan)
f0ba19fd Add lrelease to the depends (TheCharlatan)
cfb30462 Add Miniupnp submodule (TheCharlatan)
5f7da005 Unbound is now a submodule. Adapt depends for this. (TheCharlatan)
d6b9bdd3 Update readmes to reflect the usage of depends (TheCharlatan)
56b6e41e Add support for apple and arm building (TheCharlatan)
29311fd1 Disable stack unwinding for mingw32 depends build. (TheCharlatan)
8db3d573 Modify depends for monero's dependencies (TheCharlatan)
0806a23a Initial depends addition (TheCharlatan)
2018-09-18 16:33:21 +02:00
Andrea
669019010e README: harmonize command formatting inside README.md
rebased by moneromooo
2018-09-18 11:02:10 +00:00
Tuan M. Hoang
8cd9840859 disable AES on s390x architecture
rebased by moneromooo
2018-09-18 11:02:06 +00:00
whythat
4ed30bab50 wallet: implement coin splitting for sweep_* 'outputs' option
Implemented strategy splits total amount into N equal parts,
where N is a specified number of outputs. If N > 1, dummy
change output is NOT created.

rebased by moneromooo
2018-09-18 11:02:03 +00:00
whythat
24f5239693 wallet: add 'outputs' option for sweep_* commands
'outputs' option allows to specify the number of
separate outputs of smaller denomination that will
be created by sweep operation.

rebased by moneromooo
2018-09-18 11:01:59 +00:00
Italocoin Project
52e19d6955 README: Compile boost with cxxflags=-fPIC cflags=-fPIC
Rebased and squashed by moneromooo
2018-09-18 10:23:32 +00:00
phloatingman
0c77523d61 README: fill in libsodium package name for Arch
Rebased by moneromooo, with a sensible commit message
2018-09-18 10:16:50 +00:00
TheCharlatan
423973596b Fixup 32bit arm build
Set the architecture in the toolchain file correctly
2018-09-18 02:52:57 +02:00
cryptochangements34
f77ce675cb rpc: allow pruning of json encoded txs 2018-09-17 20:38:40 -04:00
TheCharlatan
a06d2581c3 Fix Windows build
icu tex support is not required, so just disable it.
Re-add mistakingly removed crypt32 lib.
2018-09-17 23:59:37 +02:00
Alexandro Sanchez
9bf0105e25 Fixed Keccak implementation on big-endian platforms 2018-09-17 18:24:20 +02:00
OPSXCQ
a4065bf267 Fixes Dockerfile build problem #4396 2018-09-17 14:36:33 +00:00
TheCharlatan
ecaf5b3feb Add libsodium to the packages, the arm build was complaining about it.
Fixup arm toolchain file.
2018-09-17 16:09:50 +02:00
stoffu
ba8dd3479d api/wallet: properly disable key encryption 2018-09-17 22:15:29 +09:00
moneromooo-monero
b766014933 node_rpc_proxy: return a non empty error string on connection failure
This makes it easier to avoid bugs on the caller side if errors are
represented by non empty strings.

This fixes the refresh height setting in new wallets when no daemon
is running.
2018-09-17 11:03:46 +00:00
Howard Chu
e9bce045a4 Fix missing std::runtime_error def in difficulty.cpp 2018-09-16 19:35:07 +00:00
moneromooo-monero
05edc969c0 simplewallet: remove obsolete transfer_original command 2018-09-16 14:29:41 +00:00
moneromooo-monero
6e6ffc0650 wallet2_api: bring up to latest wallet api 2018-09-16 13:24:48 +00:00
moneromooo-monero
6dbbc69055 unit_tests: sanity check on transaction weight 2018-09-15 16:14:38 +00:00
moneromooo-monero
27af46c930 tests: update test wallet keys file for encrypted keys 2018-09-15 09:34:11 +00:00
jcktm
c336d0f217 add daemonizer to rpc wallet 2018-09-15 06:24:27 +10:00
Riccardo Spagni
bb30a72367 Merge pull request #4381
4cb1d879 blockchain_blackball: s/return false;/return 0;/ (moneromooo-monero)
9bdc9109 blockchain_blackball: use %zu for size_t (moneromooo-monero)
db3db093 blockchain_blackball: use mdb_size_t where appropriate (moneromooo-monero)
b1f05f58 blockchain_blackball: error out on fgets error (moneromooo-monero)
2018-09-14 22:22:43 +02:00
moneromooo-monero
4cb1d879f6 blockchain_blackball: s/return false;/return 0;/ 2018-09-14 20:08:52 +00:00
Gingeropolous
ff72200d0a update readme fork table
with consensus rules and block heights
2018-09-14 15:59:27 -04:00
moneromooo-monero
9bdc9109fb blockchain_blackball: use %zu for size_t 2018-09-14 17:16:08 +00:00
moneromooo-monero
db3db0930e blockchain_blackball: use mdb_size_t where appropriate 2018-09-14 17:11:11 +00:00
moneromooo-monero
b1f05f589e blockchain_blackball: error out on fgets error 2018-09-14 16:31:24 +00:00
Dusan Klinec
f9b22a7b01 hw_device: support for multiple devices added [for review]
- device name is a new wallet property
- full device name is now a bit more structured so we can address particular device vendor + device path. Example: 'Ledger', 'Trezor:udp', 'Trezor:udp:127.0.0.1:21324', 'Trezor:bridge:usb01'. The part before ':' identifies HW device implementation, the optional part after ':' is device path to look for.
- new --hw-device parameter added to the wallet, can name the hardware device
- device reconnect added
2018-09-14 16:02:00 +02:00
Riccardo Spagni
d743994086 Merge pull request #4324
44259e56 wallet: ask-password can now ask without encrypting the secret spend key (moneromooo-monero)
2018-09-14 13:15:41 +02:00
moneromooo-monero
44259e560e wallet: ask-password can now ask without encrypting the secret spend key 2018-09-14 11:14:21 +00:00
Riccardo Spagni
fd194aaa4d Merge pull request #4347
df0e7c2f wallet2: fix secondary partially signed multisig txes (moneromooo-monero)
2018-09-14 13:06:38 +02:00
Riccardo Spagni
7850541074 Merge pull request #4337
97764bae wallet_rpc_server: error out if wallet-file and wallet-dir are both used (moneromooo-monero)
2018-09-14 13:06:22 +02:00
Riccardo Spagni
b182dc8262 Merge pull request #4336
5f8f5631 wallet2.get_reserve_proof: throw when specified amount is zero (stoffu)
2018-09-14 13:06:06 +02:00
Riccardo Spagni
dd2fc3afe3 Merge pull request #4332
20171746 wallet2: factor the creation of a new wallet keys file (moneromooo-monero)
be6acfd5 wallet2: factor new blockchain setup (moneromooo-monero)
2018-09-14 13:05:43 +02:00
Riccardo Spagni
1396b65bbc Merge pull request #4331
88fbc4a5 wallet2: fill in v2 height for stagenet (moneromooo-monero)
2018-09-14 13:05:02 +02:00
Riccardo Spagni
7addabce8f Merge pull request #4330
93e7627d cryptonote_format_utils: do not early out on invalid tx pubkeys (moneromooo-monero)
2018-09-14 13:04:40 +02:00
Riccardo Spagni
5f9374c735 Merge pull request #4329
45c85c89 remove unused fields from relay_tx RPC (el00ruobuob)
2018-09-14 13:03:46 +02:00
Riccardo Spagni
9f24e57dc2 Merge pull request #4326
bcda7adc NetBSD support (thomasvaughan)
2018-09-14 13:02:58 +02:00
Riccardo Spagni
15570f9a8f Merge pull request #4380
53a99ca1 cn_deserialize: comment out pruned tx case (moneromooo-monero)
2018-09-14 13:01:41 +02:00
Riccardo Spagni
3584a852a3 Merge pull request #4372
1660b0e7 tx_pool: make the max tx size a consensus rule from v8 (moneromooo-monero)
2018-09-14 12:56:01 +02:00
moneromooo-monero
53a99ca112 cn_deserialize: comment out pruned tx case
it's not merged yet
2018-09-14 10:55:50 +00:00
Riccardo Spagni
239a7e10ff Merge pull request #4253
be001326 remove obsolete daemon selection of fake outs and old tx construction (moneromooo-monero)
2018-09-14 12:54:25 +02:00
moneromooo-monero
be001326d1 remove obsolete daemon selection of fake outs and old tx construction 2018-09-14 10:51:45 +00:00
Riccardo Spagni
1c36fcf886 Merge pull request #4309
5083614f dns_util: add new DNSSEC trust anchor for rollover (moneromooo-monero)
2018-09-14 12:46:56 +02:00
Riccardo Spagni
20087b3a9d Merge pull request #4307
4469b0c4 abstract_tcp_server2: fix binding to the wrong IP (moneromooo-monero)
8eab6147 epee: use the socket::bind variant which does not throw (moneromooo-monero)
2018-09-14 12:46:08 +02:00
Riccardo Spagni
c6f57d9db4 Merge pull request #4286
b4679f37 One build directory per branch/arch. (cslashm)
2018-09-14 12:45:46 +02:00
Riccardo Spagni
c74d9057f8 Merge pull request #4260
a54dbaee blockchain_blackball: add --force-chain-reaction-pass flag (moneromooo-monero)
44439c32 record blackballs as amount/offset, and add export ability (moneromooo-monero)
4bce935b blockchain_blackball: more optimizations (moneromooo-monero)
b66ba783 blockchain_blackball: do not process duplicate blockchains parts (moneromooo-monero)
639a3c01 blockchain_blackball: make it clear secondary passes are not incremental (moneromooo-monero)
eb8a51be blockchain_blackball: detect spent outputs by partial ring reuse (moneromooo-monero)
d6d276c6 blockchain_blackball: fix chain reaction phase in incremental mode (moneromooo-monero)
2b2a681b blockchain_blackball: avoid false positives for different amounts (moneromooo-monero)
80e4fef3 blockchain_blackball: set transaction looping txn to read only (moneromooo-monero)
4801d6b5 blockchain_blackball: add stats (moneromooo-monero)
846190fd blockchain_blackball: support pre-v2 databases (moneromooo-monero)
daa6cc7d blockchain_blackball: use LMDB for the cache (moneromooo-monero)
50cb370d ringdb: allow blackballing many outputs at once (moneromooo-monero)
2018-09-14 12:45:18 +02:00
Riccardo Spagni
885d3d5a99 Merge pull request #4254
de905d4b fuzz_tests: use __AFL_INIT when available (moneromooo-monero)
2018-09-14 12:44:47 +02:00
Riccardo Spagni
fa53b76129 Merge pull request #4251
cd236aeb Add bulletproof support (cslashm)
2018-09-14 12:39:40 +02:00
Riccardo Spagni
466f079586 Merge pull request #4232
9e6c7784 CMakeLists.txt: add -mmitigate-rop to security flags if found (moneromooo-monero)
2018-09-14 12:39:17 +02:00
Riccardo Spagni
438781afc4 Merge pull request #4221
62511df6 wallet2: fix refresh retry when a block/tx fails to parse (moneromooo-monero)
b219c24c wallet2: trim hash chain after fast refresh of hashes (moneromooo-monero)
5b6bcca3 wallet2: fix checking the wrong vector when adding hashes (moneromooo-monero)
2018-09-14 12:38:36 +02:00
Riccardo Spagni
d794abb8c5 Merge pull request #4208
2c636e45 simplewallet: handle transfers using a monero: URI (moneromooo-monero)
2018-09-14 12:36:27 +02:00
Riccardo Spagni
e8049be955 Merge pull request #4178
347bba9d CMakeLists.txt: detect -fcf-protection=full and -fstack-clash-protection (moneromooo-monero)
2018-09-14 12:20:32 +02:00
Riccardo Spagni
5fe6aa19f6 Merge pull request #4154
5019852a cn_deserialize: extract payment ids from extra nonce (moneromooo-monero)
2af1ec3a cn_deserialize: support pruned transactions (moneromooo-monero)
2018-09-14 12:20:10 +02:00
Riccardo Spagni
249feda4e1 Merge pull request #4147
a4d2d842 blockchain_depth: add average min depth (moneromooo-monero)
289880d8 blockchain_depth: get the average min depth of a set of txes (moneromooo-monero)
628428a0 blockchain_ancestry: faster and uses less memory (moneromooo-monero)
2382484d blockchain_ancestry: add an incremental mode (moneromooo-monero)
888324fa blockchain_ancestry: finds all ancestors of a tx, block, or chain (moneromooo-monero)
2018-09-14 12:19:44 +02:00
moneromooo-monero
607301bf6d rct: avoid repeated unnecessary conversions when accummulating 2018-09-14 10:18:01 +00:00
moneromooo-monero
ac9346637a rpc: add a "is an update available" flag in get_info
Make it easier for a user to be told when to update
2018-09-14 09:28:03 +00:00
moneromooo-monero
4d52ec0ca4 mlog: do not display http errors by default
They're controllable by potential attackers and would just spam
2018-09-14 09:23:00 +00:00
moneromooo-monero
2ace509a78 simplewallet: print reason why refresh+password is needed 2018-09-14 08:26:36 +00:00
cslashm
b4679f37f4 One build directory per branch/arch.
This proposal allows to perform multiple compilation from different branch/arch in
separate directories.
Example:

    build
    ├── GNU_Linux
    │   ├── multi-compilation
    │   │   └── release
    │   └── NanoS-USBHID
    │       └── release
    └── Msys
        └── NanoS-USBHID
            └── release

Edit 1:

Try to handle special char as : / \ .

--data-dir in unit test not yet tested

Edit 2:

donot use param for uname. -o is not supported by MacOS.
2018-09-13 17:36:31 +02:00
moneromooo-monero
4f81cd3a3c rpc: add cumulative difficulty in block header data 2018-09-13 12:41:59 +00:00
moneromooo-monero
1660b0e72c tx_pool: make the max tx size a consensus rule from v8 2018-09-13 09:43:29 +00:00
cslashm
cd236aebca Add bulletproof support 2018-09-13 09:50:43 +02:00
Lee Clagett
55c7cd1458 Adding expect<T> - a value-or-error implementation 2018-09-12 22:44:34 +00:00
moneromooo-monero
b2bb9312a7 blockchain: simplify output distribution code 2018-09-12 19:20:16 +00:00
moneromooo-monero
befdcbf4be db_lmdb: do not use base for cumulative distribution
it's confusing and needlessly complicated
2018-09-12 19:20:13 +00:00
stoffu
67a56a9f8b rctTypes: fix incorrect serialization 2018-09-12 20:33:10 +09:00
moneromooo-monero
56b50faab2 wallet: use wipeable_string in more places where a secret is used 2018-09-12 09:26:11 +00:00
moneromooo-monero
07ec748c82 wipeable_string: add hex_to_pod function 2018-09-12 09:26:09 +00:00
Riccardo Spagni
11dbfbc5b3 Merge pull request #4342
6929b524 Windows: don't preset CMAKE_SYSTEM_NAME (iDunk5400)
2018-09-11 21:27:13 +02:00
Riccardo Spagni
157690caaa Merge pull request #4352
0664a984 wallet_rpc_server: remove some unused code (moneroexamples)
2018-09-11 21:26:50 +02:00
thomasvaughan
bcda7adcd4 NetBSD support 2018-09-11 14:32:33 +00:00
Riccardo Spagni
e6d36c1701 Merge pull request #4219
9137ad2c blockchain: add a testnet v9 a day after v8 (moneromooo-monero)
ac4f71c2 wallet2: bump testnet rollback to account for coming reorg (moneromooo-monero)
8f418a6d bulletproofs: #include <openssl/bn.h> (moneromooo-monero)
2bf63650 bulletproofs: speed up the latest changes a bit (moneromooo-monero)
044dff5a bulletproofs: scale points by 8 to ensure subgroup validity (moneromooo-monero)
c83012c4 bulletproofs: match aggregated verification to sarang's latest prototype (moneromooo-monero)
ce0c7432 performance_tests: add padded bulletproof construction (moneromooo-monero)
1224e53b core_tests: add a test for 4-aggregated BP verification (moneromooo-monero)
0e6ed559 fuzz_tests: add a bulletproof fuzz test (moneromooo-monero)
463434d1 more comprehensive test for ge_p3 comparison to identity/point at infinity (moneromooo-monero)
d0a0565f unit_tests: add a few more multiexp unit tests (moneromooo-monero)
6526d87f core_tests: add a test for a tx with empty bulletproof (moneromooo-monero)
a129bbd9 multiexp: fix maxscalar off by one (moneromooo-monero)
7ed496cc ringct: error out when hashToPoint* returns the point at infinity (moneromooo-monero)
d1591853 cryptonote_basic: check output type before using it (moneromooo-monero)
61632dc1 ringct: prevent a potential very large allocation (moneromooo-monero)
a4317e61 crypto: some paranoid checks in generate_signature/check_signature (moneromooo-monero)
7434df1c crypto: never return zero in random32_unbiased (moneromooo-monero)
0825e974 multiexp: fix wrong Bos-Coster result for 1 non trivial input (moneromooo-monero)
a1359ad4 Check inputs to addKeys are in range (moneromooo-monero)
fe0fa3b9 bulletproofs: reject x, y, z, or w[i] being zero (moneromooo-monero)
5ffb2ff9 v8: per byte fee, pad bulletproofs, fixed 11 ring size (moneromooo-monero)
869b3bf8 bulletproofs: a few fixes from the Kudelski review (moneromooo-monero)
c4291762 bulletproofs: reject points not in the main subgroup (moneromooo-monero)
15697177 bulletproofs: speed up a few multiplies using existing Hi cache (moneromooo-monero)
0b05a0fa Add Pippenger cache and limit Straus cache size (moneromooo-monero)
51eb3bdc add pippenger unit tests (moneromooo-monero)
b17b8db3 performance_tests: add stats and loop count multiplier options (moneromooo-monero)
7314d919 perf_timer: split timer class into a base one and a logging one (moneromooo-monero)
d126a02b performance_tests: add aggregated bulletproof tx verification (moneromooo-monero)
263431c4 Pippenger multiexp (moneromooo-monero)
1ed0ed4d multiexp: cut down on memory allocations (moneromooo-monero)
1b867e7f precalc the ge_p3 representation of H (moneromooo-monero)
ef56529f performance_tests: document the tested bulletproof layouts (moneromooo-monero)
30111780 unit_tests: a couple more bulletproof unit tests for gamma (moneromooo-monero)
c444b1b2 require canonical multi output bulletproof layout (moneromooo-monero)
7e67c52f Add a define for the max number of bulletproof multi-outputs (moneromooo-monero)
2a8fcb42 Bulletproof aggregated verification and tests (moneromooo-monero)
126196b0 multiexp: some speedups (moneromooo-monero)
71d67bda aligned: aligned memory alloc/realloc/free (moneromooo-monero)
cb9ecab1 performance_tests: add signature generation/verification (moneromooo-monero)
bacf0a1e bulletproofs: add aggregated verification (moneromooo-monero)
e895c3de make straus cached mode thread safe, and add tests for it (moneromooo-monero)
7f48bf05 multiexp: bos coster now works for just one point (moneromooo-monero)
9ce9f8ca bulletproofs: add multi output bulletproofs to rct (moneromooo-monero)
f34e2e20 performance_tests: add tx checking tests with more than 2 outputs (moneromooo-monero)
0793184b performance_tests: add a --verbose flag, and default to terse (moneromooo-monero)
939bc223 add Straus multiexp (moneromooo-monero)
9ff6e6a0 ringct: add bos coster multiexp (moneromooo-monero)
e9164bb3 bulletproofs: misc optimizations (moneromooo-monero)
112f32f0 performance_tests: add crypto ops (moneromooo-monero)
f5d7b993 performance_tests: add bulletproofs (moneromooo-monero)
8f4ce989 performance_tests: add RingCT MLSAG gen/ver tests (moneromooo-monero)
1aa10c43 performance_tests: add (Borromean) range proofs (moneromooo-monero)
aacfd6e3 bulletproofs: multi-output bulletproofs (moneromooo-monero)
cb1cc757 performance_tests: don't override log level to 0 (moneromooo-monero)
2018-09-11 15:45:56 +02:00
moneromooo-monero
9137ad2c63 blockchain: add a testnet v9 a day after v8
So that bulletproofs become mandatory
2018-09-11 13:38:36 +00:00
moneromooo-monero
ac4f71c200 wallet2: bump testnet rollback to account for coming reorg 2018-09-11 13:38:35 +00:00
moneromooo-monero
8f418a6db0 bulletproofs: #include <openssl/bn.h>
Apparently needed for openssl 1.1.x
2018-09-11 13:38:34 +00:00
moneromooo-monero
2bf636503f bulletproofs: speed up the latest changes a bit 2018-09-11 13:38:32 +00:00
moneromooo-monero
044dff5a30 bulletproofs: scale points by 8 to ensure subgroup validity 2018-09-11 13:38:31 +00:00
moneromooo-monero
c83012c476 bulletproofs: match aggregated verification to sarang's latest prototype 2018-09-11 13:38:30 +00:00
moneromooo-monero
ce0c743205 performance_tests: add padded bulletproof construction 2018-09-11 13:38:24 +00:00
moneromooo-monero
1224e53b74 core_tests: add a test for 4-aggregated BP verification 2018-09-11 13:38:22 +00:00
moneromooo-monero
0e6ed559c6 fuzz_tests: add a bulletproof fuzz test 2018-09-11 13:38:21 +00:00
moneromooo-monero
463434d1f7 more comprehensive test for ge_p3 comparison to identity/point at infinity
Reported by QuarksLab.
2018-09-11 13:38:20 +00:00
moneromooo-monero
d0a0565f7d unit_tests: add a few more multiexp unit tests 2018-09-11 13:38:19 +00:00
moneromooo-monero
6526d87f17 core_tests: add a test for a tx with empty bulletproof 2018-09-11 13:38:18 +00:00
moneromooo-monero
a129bbd944 multiexp: fix maxscalar off by one
Reported by QuarksLab.
2018-09-11 13:38:17 +00:00
moneromooo-monero
7ed496cc78 ringct: error out when hashToPoint* returns the point at infinity
Reported by QuarksLab.
2018-09-11 13:38:16 +00:00
moneromooo-monero
d1591853bf cryptonote_basic: check output type before using it
Reported by QuarksLab.
2018-09-11 13:38:15 +00:00
moneromooo-monero
61632dc166 ringct: prevent a potential very large allocation
Reported by QuarksLab.
2018-09-11 13:38:14 +00:00
moneromooo-monero
a4317e61b5 crypto: some paranoid checks in generate_signature/check_signature
Reported by QuarksLab.
2018-09-11 13:38:12 +00:00
moneromooo-monero
7434df1cc6 crypto: never return zero in random32_unbiased
This avoids problems when the caller can't deal with a zero
walue, which happens often enough that it's worth nipping the
problem in the bud.
2018-09-11 13:38:12 +00:00
moneromooo-monero
0825e97436 multiexp: fix wrong Bos-Coster result for 1 non trivial input
Reported by QuarksLab.
2018-09-11 13:38:10 +00:00
moneromooo-monero
a1359ad43c Check inputs to addKeys are in range
Reported by QuarksLab.
2018-09-11 13:38:09 +00:00
moneromooo-monero
fe0fa3b9c5 bulletproofs: reject x, y, z, or w[i] being zero
Also try again when we're generate a proof with those characteristics

Reported by QuarksLab.
2018-09-11 13:38:08 +00:00
moneromooo-monero
5ffb2ff9b7 v8: per byte fee, pad bulletproofs, fixed 11 ring size 2018-09-11 13:38:07 +00:00
moneromooo-monero
869b3bf824 bulletproofs: a few fixes from the Kudelski review
- fix integer overflow in n_bulletproof_amounts
- check input scalars are in range
- remove use of environment variable to tweak straus performance
- do not use implementation defined signed shift for signum
2018-09-11 13:38:05 +00:00
moneromooo-monero
c429176248 bulletproofs: reject points not in the main subgroup 2018-09-11 13:38:04 +00:00
moneromooo-monero
1569717718 bulletproofs: speed up a few multiplies using existing Hi cache 2018-09-11 13:38:03 +00:00
moneromooo-monero
0b05a0fa74 Add Pippenger cache and limit Straus cache size 2018-09-11 13:38:02 +00:00
moneromooo-monero
51eb3bdcd6 add pippenger unit tests 2018-09-11 13:37:49 +00:00
moneromooo-monero
b17b8db3f5 performance_tests: add stats and loop count multiplier options
Stats are: min, median, standard deviation
2018-09-11 13:37:48 +00:00
moneromooo-monero
7314d919e7 perf_timer: split timer class into a base one and a logging one 2018-09-11 13:37:47 +00:00
moneromooo-monero
d126a02b5d performance_tests: add aggregated bulletproof tx verification 2018-09-11 13:37:46 +00:00
moneromooo-monero
263431c486 Pippenger multiexp
Based on sarang's python code
2018-09-11 13:37:45 +00:00
moneromooo-monero
1ed0ed4de4 multiexp: cut down on memory allocations 2018-09-11 13:37:44 +00:00
moneromooo-monero
1b867e7f40 precalc the ge_p3 representation of H 2018-09-11 13:37:42 +00:00
moneromooo-monero
ef56529f93 performance_tests: document the tested bulletproof layouts 2018-09-11 13:37:41 +00:00
moneromooo-monero
3011178021 unit_tests: a couple more bulletproof unit tests for gamma 2018-09-11 13:37:40 +00:00
moneromooo-monero
c444b1b229 require canonical multi output bulletproof layout 2018-09-11 13:37:39 +00:00
moneromooo-monero
7e67c52fa2 Add a define for the max number of bulletproof multi-outputs 2018-09-11 13:37:38 +00:00
moneromooo-monero
2a8fcb421b Bulletproof aggregated verification and tests
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero
126196b017 multiexp: some speedups
- use a raw memory block to store cache
- use aligned memory
- use doubling API where appropriate
- calculate straus in bands
2018-09-11 13:37:35 +00:00
moneromooo-monero
71d67bda74 aligned: aligned memory alloc/realloc/free 2018-09-11 13:37:34 +00:00
moneromooo-monero
cb9ecab197 performance_tests: add signature generation/verification 2018-09-11 13:37:33 +00:00
moneromooo-monero
bacf0a1e2f bulletproofs: add aggregated verification
Ported from sarang's java code
2018-09-11 13:37:32 +00:00
moneromooo-monero
e895c3def1 make straus cached mode thread safe, and add tests for it 2018-09-11 13:37:31 +00:00
moneromooo-monero
7f48bf05d7 multiexp: bos coster now works for just one point 2018-09-11 13:37:30 +00:00
moneromooo-monero
9ce9f8caf6 bulletproofs: add multi output bulletproofs to rct 2018-09-11 13:37:28 +00:00
moneromooo-monero
f34e2e20bd performance_tests: add tx checking tests with more than 2 outputs 2018-09-11 13:37:27 +00:00
moneromooo-monero
0793184bd0 performance_tests: add a --verbose flag, and default to terse 2018-09-11 13:37:26 +00:00
moneromooo-monero
939bc22332 add Straus multiexp 2018-09-11 13:37:25 +00:00
moneromooo-monero
9ff6e6a0a7 ringct: add bos coster multiexp 2018-09-11 13:37:24 +00:00
moneromooo-monero
e9164bb38b bulletproofs: misc optimizations
Use double mults where possible, avoid conversions, simplify
2018-09-11 13:37:23 +00:00
moneromooo-monero
112f32f068 performance_tests: add crypto ops 2018-09-11 13:37:22 +00:00
moneromooo-monero
f5d7b9933a performance_tests: add bulletproofs 2018-09-11 13:37:21 +00:00
moneromooo-monero
8f4ce989c2 performance_tests: add RingCT MLSAG gen/ver tests 2018-09-11 13:37:19 +00:00
moneromooo-monero
1aa10c4364 performance_tests: add (Borromean) range proofs 2018-09-11 13:37:18 +00:00
moneromooo-monero
aacfd6e370 bulletproofs: multi-output bulletproofs 2018-09-11 13:37:17 +00:00
moneromooo-monero
cb1cc757ba performance_tests: don't override log level to 0 2018-09-11 13:37:16 +00:00
Riccardo Spagni
f0ab4dc7b2 Merge pull request #4218
5fd83c13 Cryptonight variant 2 (SChernykh)
2018-09-11 15:22:25 +02:00
TheCharlatan
cbbf4d241b Adapt translations to upstream changes 2018-09-10 22:18:18 +02:00
TheCharlatan
db5715468a Updated pcsc url 2018-09-10 22:08:06 +02:00
TheCharlatan
f0ba19fde5 Add lrelease to the depends
This includes a minimal qt build without gui
2018-09-10 22:08:05 +02:00
luigi1111
ab85b924c9 Merge pull request #4293
9d65399 is_hdd update (p8p)
2018-09-10 15:07:02 -05:00
TheCharlatan
cfb3046222 Add Miniupnp submodule
Drop miniupnp and unbound depends builds. Make sure that build variables are propageted properly to unbound and miniupnp.
Rebase to after the v0.12 release
2018-09-10 22:05:37 +02:00
TheCharlatan
5f7da005a3 Unbound is now a submodule. Adapt depends for this.
Fix builds for native linux and windows

The architecture flag was set incorrectly.
It needs to be set only when compiling arm6.
2018-09-10 22:05:37 +02:00
TheCharlatan
d6b9bdd322 Update readmes to reflect the usage of depends
Explain the role of the SDK in the darwin build.
Add instructions to compile depends to the basic readme.
2018-09-10 22:05:37 +02:00
TheCharlatan
56b6e41ea7 Add support for apple and arm building
Add pcsc-lite to linux builds
Fixup windows icu4c linking with depends, the static libraries have an 's' appended to them
Compiling depends arm-linux-gnueabihf will allow you to compile armv6zk monero binaries
2018-09-10 22:05:36 +02:00
luigi1111
46bcd91db4 Merge pull request #4256
d6fc870 db_lmdb: resize blockchain database when 90% filled (moneromooo-monero)
2018-09-10 15:04:50 -05:00
TheCharlatan
29311fd140 Disable stack unwinding for mingw32 depends build. 2018-09-10 22:03:42 +02:00
TheCharlatan
8db3d5731b Modify depends for monero's dependencies
Add readline, ldns, graphviz, unbound to depends packages

Add a cmake toolchain file to depends that is uniquely created for every build and placed in triple/share/toolchain.cmake
This file is then passed to cmake with -DCMAKE_TOOLCHAIN_FILE=/path/to/triple/share/toolchain.cmake

Add the boost locale package to depends

In the depends cmake toolchain file, a DEPENDS flag is added
to exclude, or change cmake checks done that are required for depends

Link miniupnpc and unwind from depends and not external

Add libiconv and icu4c to depends, required for mingw32 builds.

Headers (winsock) need to be lower case in order to compile on unix systems.
This should not affect building on windows.
2018-09-10 22:03:42 +02:00
TheCharlatan
0806a23a6e Initial depends addition
Depends cross compiles project dependencies for linux, mac and windows and multiple architectures.
Depends is original work by Cory Fields and used in bitcoin and a wide range of bitcoin related projects.
2018-09-10 22:03:42 +02:00
luigi1111
36d7b1b67c Merge pull request #4230
96c1de9 fixed cncrypto tests not passing after the change in random_scalar (msgmaxim)
2018-09-10 15:03:01 -05:00
luigi1111
55b9acfce5 Merge pull request #4007
54b859b wallet rpc: Add close_wallet RPC (glv2)
2018-09-10 15:00:21 -05:00
naughtyfox
26971d46fc WalletAPI: 'hasMultisigPartialKeyImages' function added 2018-09-10 19:33:08 +03:00
naughtyfox
7a76354c8b wallet2: import_multisig forward refresh exception 2018-09-10 18:45:37 +03:00
MoroccanMalinois
89202ce462 Docker android: add libsodium 2018-09-10 10:12:43 -04:00
MoroccanMalinois
e774f2498a Docker android: use common prefix 2018-09-10 10:11:58 -04:00
moneromooo-monero
a54dbaee08 blockchain_blackball: add --force-chain-reaction-pass flag 2018-09-10 09:04:21 +00:00
moneromooo-monero
44439c3208 record blackballs as amount/offset, and add export ability 2018-09-10 09:04:18 +00:00
SChernykh
5fd83c13fb Cryptonight variant 2
Contains two modifications to improve ASIC resistance: shuffle and integer math.

Shuffle makes use of the whole 64-byte cache line instead of 16 bytes only, making Cryptonight 4 times more demanding for memory bandwidth.

Integer math adds 64:32 bit integer division followed by 64 bit integer square root, adding large and unavoidable computational latency to the main loop.

More details and performance numbers: https://github.com/SChernykh/xmr-stak-cpu/blob/master/README.md
2018-09-09 20:43:01 +02:00
moneromooo-monero
8501b8dffb crypto_ops_builder: link to EdDSA/Ed25519 draft RFC
instead of including the text, as it's not fully free to redistribute
2018-09-09 16:18:49 +00:00
moneromooo-monero
03c07b167d rpc: return "already mining" in start_mining if already mining 2018-09-09 15:27:30 +00:00
moneroexamples
0664a98421 wallet_rpc_server: remove some unused code 2018-09-09 12:37:01 +00:00
moneromooo-monero
4bce935b40 blockchain_blackball: more optimizations 2018-09-09 12:03:02 +00:00
moneromooo-monero
b66ba78306 blockchain_blackball: do not process duplicate blockchains parts 2018-09-09 12:02:48 +00:00
moneromooo-monero
639a3c019c blockchain_blackball: make it clear secondary passes are not incremental
yet
2018-09-09 12:02:42 +00:00
moneromooo-monero
eb8a51be68 blockchain_blackball: detect spent outputs by partial ring reuse 2018-09-09 12:02:39 +00:00
moneromooo-monero
d6d276c604 blockchain_blackball: fix chain reaction phase in incremental mode
It makes it a lot slower, unfortunately
2018-09-09 12:02:36 +00:00
moneromooo-monero
2b2a681b01 blockchain_blackball: avoid false positives for different amounts
Identical offset based rings may not actually be identical rings
since they represent different outputs
2018-09-09 12:02:32 +00:00
moneromooo-monero
80e4fef3c6 blockchain_blackball: set transaction looping txn to read only 2018-09-09 12:02:25 +00:00
moneromooo-monero
4801d6b514 blockchain_blackball: add stats 2018-09-09 12:02:02 +00:00
moneromooo-monero
846190fd18 blockchain_blackball: support pre-v2 databases 2018-09-09 12:01:59 +00:00
moneromooo-monero
daa6cc7d73 blockchain_blackball: use LMDB for the cache
This uses less memory and makes it faster to load/save, though
makes it slower to run (which is actually faster since it would
previously start swapping anyway).
2018-09-09 12:01:49 +00:00
moneromooo-monero
50cb370d5b ringdb: allow blackballing many outputs at once
It cuts down on txn commits, and speeds up blackballing substantially
2018-09-09 12:01:43 +00:00
moneromooo-monero
347bba9dd1 CMakeLists.txt: detect -fcf-protection=full and -fstack-clash-protection
Introduced with GCC 8.2
2018-09-09 11:53:42 +00:00
moneromooo-monero
7418aa6005 README: bump cmake requirement to 3.5, as required by miniupnpc 2018-09-09 10:50:34 +00:00
moneromooo-monero
4469b0c41e abstract_tcp_server2: fix binding to the wrong IP 2018-09-09 10:48:21 +00:00
moneromooo-monero
df0e7c2feb wallet2: fix secondary partially signed multisig txes 2018-09-08 23:12:06 +00:00
moneromooo-monero
97764bae3a wallet_rpc_server: error out if wallet-file and wallet-dir are both used 2018-09-08 20:54:14 +00:00
moneromooo-monero
cd647612b0 rpc: don't include start time if restricted 2018-09-07 13:28:40 +00:00
iDunk5400
6929b52426 Windows: don't preset CMAKE_SYSTEM_NAME
Let it be autodiscovered instead to avoid cmake thinking it's crosscompiling builds where host = target. This resolves a cmake configure error in MSYS2 caused by CMAKE_CROSSCOMPILING checks in #4294.
2018-09-06 12:56:21 +02:00
Guillaume LE VAILLANT
54b859bea5 wallet rpc: Add close_wallet RPC
And close the current wallet automatically if necessary when opening another
wallet.
2018-09-05 16:52:16 +02:00
moneromooo-monero
e611728228 daemon: request no PoW hashes we don't need when asking for blocks
This fixes the horrendous slowdown in bc_dyn_stats
2018-09-05 09:43:44 +00:00
luigi1111
fad88e18a9 Merge pull request #4290
2bc977b CMakeLists.txt: disable -fstack-protector* on windows
2018-09-04 18:12:52 -05:00
luigi1111
e98e03566a Merge pull request #4271
7c8f95d ringct: make conversion functions return const refs (moneromooo-monero)
2018-09-04 13:35:36 -05:00
luigi1111
ca4e477dc2 Merge pull request #4298
67666b1 unit_tests: disable mlocker tests on windows (no implementation) (moneromooo-monero)
2018-09-04 13:30:13 -05:00
luigi1111
6cc1ed8dc1 Merge pull request #4295
ce63d56 Windows: fix undefined references after unbound submodule update (iDunk5400)
2018-09-04 13:28:52 -05:00
moneromooo-monero
7c8f95d3e2 ringct: make conversion functions return const refs
This might avoid unnecessary copies.

Reported by stoffu
2018-09-04 18:28:20 +00:00
luigi1111
39bcb974c4 Merge pull request #4294
620105e Translations: handle cross compiling (MoroccanMalinois)
fa814af Build: Fix target release-static-android (MoroccanMalinois)
339a23a Docker: Fix android build (MorrocanMalinois)
2018-09-04 13:27:33 -05:00
luigi1111
03738fdde1 Merge pull request #4276
48a7bc4 tx_pool: fix infinite loop when failing to find a meta record (moneromooo-monero)
2018-09-04 13:25:44 -05:00
luigi1111
0722287774 Merge pull request #4275
2a100fd unit_tests: add tests for incremental keccak (moneromooo-monero)
2018-09-04 13:23:10 -05:00
luigi1111
b2038e24f0 Merge pull request #4274
11c6718 util: remove unused <ustat.h> (moneromooo-monero)
2018-09-04 13:21:53 -05:00
luigi1111
77ed11e627 Merge pull request #4270
29dea03 epee: resize vectors where possible in serialization (moneromooo-monero)
76affd9 epee: some speedup in parsing (moneromooo-monero)
dc6c069 db_lmdb: speedup the get_output_distribution common case (moneromooo-monero)
76ac5a8 wallet2: ask for a binary output distribution, for speed (moneromooo-monero)
2018-09-04 13:19:58 -05:00
luigi1111
59e6fb06f9 Merge pull request #4269
3d5abbe [#4027] add change_wallet_password wallet rpc command (artyomsol)
2018-09-04 13:17:40 -05:00
luigi1111
5f1bbe3bce Merge pull request #4268
1f2409e Do memwipe for critical secret keys copied to rct::key (stoffu)
2018-09-04 13:16:04 -05:00
luigi1111
ad5aabc85a Merge pull request #4264
0c8d8f6 unit_tests: remove std::move in return statement (moneromooo-monero)
2018-09-04 13:14:08 -05:00
luigi1111
085b6ba98e Merge pull request #4263
5ed6669 wallet_rpc_server: remove unused amount_keys field in transfer RPC (moneromooo-monero)
2018-09-04 13:12:48 -05:00
luigi1111
8bbae77134 Merge pull request #4262
c3c14f3 simplewallet: allow named priority levels for default-priority (moneromooo-monero)
2018-09-04 13:11:18 -05:00
luigi1111
e4378ed8aa Merge pull request #4259
4e08100 Incremental Keccak API added (pr4r05)
2018-09-04 13:09:48 -05:00
luigi1111
59dc37a1b0 Merge pull request #4257
b21fdaa fuzz: set address properly (stoffu)
2018-09-04 13:07:11 -05:00
luigi1111
6d4d4ddb68 Merge pull request #4252
ac09cfa wallet2: remove obsolete pruned/unpruned case (moneromooo-monero)
2018-09-04 13:05:12 -05:00
luigi1111
88e5ed0072 Merge pull request #4245
8ca1215 wallet: store trusted-daemon flag in wallet2 (stoffu)
2018-09-04 13:03:37 -05:00
luigi1111
46d8bc2a33 Merge pull request #4160
704b60c block_queue: faster check whether a block was requested (moneromooo-monero)
2018-09-04 13:02:09 -05:00
stoffu
5f8f56315c wallet2.get_reserve_proof: throw when specified amount is zero 2018-09-04 13:00:38 +09:00
moneromooo-monero
20171746de wallet2: factor the creation of a new wallet keys file 2018-09-03 11:27:46 +00:00
moneromooo-monero
be6acfd5be wallet2: factor new blockchain setup 2018-09-03 11:27:43 +00:00
moneromooo-monero
88fbc4a567 wallet2: fill in v2 height for stagenet 2018-09-03 11:26:28 +00:00
moneromooo-monero
93e7627d5a cryptonote_format_utils: do not early out on invalid tx pubkeys
Another such pubkey might be valid
2018-09-02 23:00:44 +00:00
el00ruobuob
45c85c89de remove unused fields from relay_tx RPC 2018-09-02 23:50:31 +02:00
moneromooo-monero
4e1e9a607e blockchain: add mainnet v8 height targetting 18 october
and v9 a day later
2018-09-02 16:02:17 +00:00
HomDx
9a66d9f48b Docker: Updated dependencies cmake 3.12.1 and boost 1.68 2018-09-01 22:20:12 +03:00
Dusan Klinec
76f95f052e rpc: allow to pass RPC login via RPC_LOGIN env var
- passing by parameter is insecure as it is shown in the process list
2018-08-31 15:51:59 +02:00
moneromooo-monero
f0bc684ccd mnemonics: fix outrageous compile time with CLANG in release
from several minutes to 10-15 seconds
2018-08-29 09:53:48 +00:00
moneromooo-monero
2c636e45f2 simplewallet: handle transfers using a monero: URI 2018-08-28 19:55:49 +00:00
moneromooo-monero
5083614ffa dns_util: add new DNSSEC trust anchor for rollover
It should be useful from the 11th of october 2018.

The old key is still trusted for now.

https://www.icann.org/resources/pages/ksk-rollover
2018-08-28 11:29:51 +00:00
moneromooo-monero
8eab6147f4 epee: use the socket::bind variant which does not throw
When this throws in a loop, stack trace generation can take
a significant amount of CPU
2018-08-27 17:02:07 +00:00
moneromooo-monero
5019852adc cn_deserialize: extract payment ids from extra nonce 2018-08-25 18:39:48 +00:00
moneromooo-monero
2af1ec3af7 cn_deserialize: support pruned transactions 2018-08-25 18:39:45 +00:00
p8p
9d6539923e is_hdd update 2018-08-25 04:31:22 -07:00
moneromooo-monero
67666b14ba unit_tests: disable mlocker tests on windows (no implementation) 2018-08-23 21:59:33 +00:00
luigi1111
91c7d68b2d Merge pull request #4223
c955257 electrum-words: fix bytes_to_words on big endian (moneromooo-monero)
2018-08-23 14:04:26 -05:00
luigi1111
fa7cdd6420 Merge pull request #3999
d2e26c2 add and use constant time 32 byte equality function (moneromooo-monero)
2018-08-23 14:03:09 -05:00
iDunk5400
ce63d5634e Windows: fix undefined references after unbound submodule update 2018-08-23 11:17:42 +02:00
moneromooo-monero
c955257c4a electrum-words: fix bytes_to_words on big endian
Reported by cslashm
2018-08-23 07:58:23 +00:00
moneromooo-monero
d2e26c23f3 add and use constant time 32 byte equality function 2018-08-23 07:56:51 +00:00
stoffu
8ca1215f25 wallet: store trusted-daemon flag in wallet2 2018-08-23 14:55:09 +09:00
luigi1111
510dbf3329 Merge pull request #4249
77655b0 simplewallet: Simplify LOCK_IDLE_SCOPE macro (rbrunner7)
2018-08-22 21:07:00 -05:00
luigi1111
1db7a29e12 Merge pull request #4247
10475ab node_rpc_proxy: fix fork earliest height caching [RYO backport] (fireice-uk)
2018-08-22 21:04:34 -05:00
luigi1111
04845b1868 Merge pull request #4243
95766fe README: add dependency on libpgm-dev (stoffu)
2018-08-22 21:01:25 -05:00
luigi1111
2e7bfd0de5 Merge pull request #4242
6fcdc9e rpc-wallet: refresh command added (ph4r05)
2018-08-22 21:00:10 -05:00
luigi1111
ec6982f8eb Merge pull request #4240
83f5587 blockchain: use uint64_t for height, not size_t (moneromooo-monero)
2018-08-22 20:58:55 -05:00
luigi1111
e07ace0896 Merge pull request #4235
3411326 Docker: updated cmake version (homdx)
13a43fc Added Codefresh.yml pipeline (homdx)
2018-08-22 20:57:45 -05:00
luigi1111
1eed62c618 Merge pull request #4234
5dd0384 Updating Qt download link (Jkat)
2018-08-22 20:55:56 -05:00
luigi1111
b0c00b0752 Merge pull request #4231
3e914ad simplewallet: add a warning and prompt on rescan_blockchain (moneromooo-monero)
2018-08-22 20:55:00 -05:00
luigi1111
3f662876e6 Merge pull request #4225
2fd9be1 simplewallet: correct number of human-readable months (rbrunner7)
2018-08-22 20:52:43 -05:00
luigi1111
4e6187faf3 Merge pull request #4224
c5e2aee updates: fix hash sanity checking (moneromooo-monero)
2018-08-22 20:51:32 -05:00
luigi1111
17eefe7928 Merge pull request #4215
b0b6959 update README to change all 0.12.2 to 0.12.3 (Gingeropolous)
2018-08-22 20:50:08 -05:00
luigi1111
89645ec86e Merge pull request #4214
3411326 Docker: updated cmake version (homdx)
2018-08-22 20:48:35 -05:00
luigi1111
a5d21be843 Merge pull request #4210
4616cf2 Fixed ZMQ-RPC for transactions and GET_BLOCKS_FAST (vtnerd)
2018-08-22 20:47:28 -05:00
luigi1111
0d415ff638 Merge pull request #4207
ce9457a cryptonote_protocol: don't serialize an unneeded new block message (moneromooo-monero)
2018-08-22 20:45:09 -05:00
luigi1111
4a4ea78ecd Merge pull request #4204
b278b83 core: sync database based on bytes added, not blocks added (moneromooo-monero)
2018-08-22 20:43:51 -05:00
luigi1111
6e8e4fb3b7 Merge pull request #4202
8439306 wallet2: do not divide by 0 on invalid daemon response (moneromooo-monero)
2018-08-22 20:42:20 -05:00
luigi1111
7e4507a048 Merge pull request #4200
43f7110 blockchain_db: remove unused get_output_key variant (moneromooo-monero)
2018-08-22 20:40:37 -05:00
luigi1111
140eb78231 Merge pull request #4179
262e391 mlog: handle filenames without parent directories (moneromooo-monero)
2018-08-22 20:39:09 -05:00
luigi1111
1eebb3d8fc Merge pull request #4146
82d1b74 core: cache block template where possible (moneromooo-monero)
2018-08-22 20:37:06 -05:00
luigi1111
13a34faeb0 Merge pull request #4131
ea37614 wallet: wipe seed from memory where appropriate (moneromooo-monero)
e9ffa91 store secret keys encrypted where possible (moneromooo-monero)
70271fa common: add a class to safely wrap mlock/munlock (moneromooo-monero)
ab74dc2 crypto: make secret_key automatically mlock (moneromooo-monero)
2018-08-22 20:32:55 -05:00
luigi1111
68813d2694 Merge pull request #4105
e2311db Build: bump rapidjson to 129d19b
78a6690 Build: bump unbound to 1.7.3
4e409be Build: bump miniupnp to 2.1
2018-08-22 20:27:43 -05:00
MoroccanMalinois
339a23a85e Docker: Fix android build 2018-08-22 21:21:34 +00:00
Dusan Klinec
6fcdc9e0b2 rpc-wallet: refresh command added 2018-08-22 16:57:55 +02:00
moneromooo-monero
62511df622 wallet2: fix refresh retry when a block/tx fails to parse
It would switch to a new set of blocks and fail, getting out of sync
with the hash chain in the process
2018-08-22 09:57:46 +00:00
moneromooo-monero
b219c24c3a wallet2: trim hash chain after fast refresh of hashes
This ensures it can't end up filled with the actual placeholders
2018-08-22 09:57:42 +00:00
moneromooo-monero
5b6bcca32a wallet2: fix checking the wrong vector when adding hashes
The two vectors should be the same size anyway, so add an assert
to catch any case where they aren't
2018-08-22 09:57:39 +00:00
MoroccanMalinois
fa814af969 Build: Fix target release-static-android 2018-08-21 23:25:14 +00:00
MoroccanMalinois
620105ecaf Translations: handle cross compiling 2018-08-21 23:22:33 +00:00
iDunk5400
2bc977bab9 CMakeLists.txt: disable -fstack-protector* on windows
Current GCC produces broken binaries with these options
2018-08-21 22:41:35 +00:00
moneromooo-monero
2a100fd81f unit_tests: add tests for incremental keccak 2018-08-20 08:47:31 +00:00
moneromooo-monero
48a7bc4280 tx_pool: fix infinite loop when failing to find a meta record 2018-08-19 17:47:05 +00:00
moneromooo-monero
76ac5a8fbe wallet2: ask for a binary output distribution, for speed 2018-08-19 15:58:25 +00:00
moneromooo-monero
dc6c0696fd db_lmdb: speedup the get_output_distribution common case 2018-08-19 15:58:21 +00:00
moneromooo-monero
76affd941b epee: some speedup in parsing 2018-08-19 15:29:01 +00:00
moneromooo-monero
11c6718865 util: remove unused <ustat.h>
It's obsolete and removed from at least Arch Linux 8.2

Reported by moneroexamples
2018-08-17 13:06:38 +00:00
artyomsol
3d5abbe86b [#4027] add change_wallet_password wallet rpc command 2018-08-17 09:54:26 +03:00
moneromooo-monero
29dea03091 epee: resize vectors where possible in serialization
to avoid unnecessary repeated reallocation
2018-08-17 01:08:52 +00:00
stoffu
1f2409e9e2 Do memwipe for critical secret keys copied to rct::key 2018-08-16 22:26:30 +09:00
moneromooo-monero
82d1b74500 core: cache block template where possible
This avoids constant rechecking of the same things each time
a miner asks for the block template. The tx pool maintains
a cookie to allow users to detect when the pool state changed,
which means the block template needs rebuilding.
2018-08-16 12:44:33 +00:00
moneromooo-monero
ab74dc277a crypto: make secret_key automatically mlock 2018-08-16 11:57:49 +00:00
moneromooo-monero
70271fa788 common: add a class to safely wrap mlock/munlock
This class will allow mlocking small objects, of which there
may be several per page. It adds refcounting so pages are only
munlocked when the last object on that page munlocks.
2018-08-16 11:57:46 +00:00
moneromooo-monero
e9ffa91257 store secret keys encrypted where possible
The secret spend key is kept encrypted in memory, and
decrypted on the fly when needed.

Both spend and view secret keys are kept encrypted in a JSON
field in the keys file. This avoids leaving the keys in
memory due to being manipulated by the JSON I/O API.
2018-08-16 11:57:43 +00:00
moneromooo-monero
ea37614efe wallet: wipe seed from memory where appropriate 2018-08-16 09:17:52 +00:00
luigi1111
b780cf4db1 Merge pull request #4191
a64f57f wallet2: make --restricted-rpc available for wallet RPC only (stoffu)
2018-08-15 20:11:54 -05:00
stoffu
a64f57fe42 wallet2: make --restricted-rpc available for wallet RPC only 2018-08-16 09:54:23 +09:00
luigi1111
4d66939791 Merge pull request #4196
361513a blockchain_blackball: use a bit less memory (moneromooo-monero)
2018-08-15 18:13:08 -05:00
luigi1111
41e583b0a2 Merge pull request #4195
f13c7a8 simplewallet: make sure wallet config is stored right after creation (stoffu)
2018-08-15 17:58:24 -05:00
luigi1111
e69e0e9e34 Merge pull request #4194
0f75717 wallet2: avoid using arbitrary random values when unknown (moneromooo-monero)
2018-08-15 17:56:23 -05:00
luigi1111
1c55a3756b Merge pull request #4193
4520cfd wallet2: guard against bad outputs in import_outputs (moneromooo-monero)
2018-08-15 17:54:49 -05:00
luigi1111
05485bd1c5 Merge pull request #4192
5860611 blockchain_blackball: allow resumable interrupt with ^C (moneromooo-monero)
2018-08-15 17:53:42 -05:00
luigi1111
8d2e454929 Merge pull request #4188
a3fe1c5 simplewallet: add set_tx_key for importing tx keys from 3rd party wallets (stoffu)
2018-08-15 17:47:05 -05:00
luigi1111
b82bcdea2d Merge pull request #4186
c8226ad unit_tests: use valid key images, pub keys, etc (moneromooo-monero)
2018-08-15 17:44:34 -05:00
luigi1111
0415863747 Merge pull request #4177
e7c0fcd epee: set jsonrpc to '2.0' in parse error return data (moneromooo-monero)
2018-08-15 17:42:09 -05:00
luigi1111
7aa2030cee Merge pull request #4174
ff37bd0 wallet2: fix O(n^2) behaviour in import_key_images (moneromooo-monero)
2018-08-15 17:40:55 -05:00
luigi1111
b531858c02 Merge pull request #4173
3940e12 daemon.print_bc: don't print difficulty twice (stoffu)
2018-08-15 17:39:35 -05:00
luigi1111
2102e6c738 Merge pull request #4172
3a4c3ac simplewallet.unspent_outputs: fix wrong logic for parsing (stoffu)
2018-08-15 17:38:36 -05:00
luigi1111
a68143bc52 Merge pull request #4171
9127a8b wallet-rpc: filter getbalance response by address index (stoffu)
2018-08-15 17:37:23 -05:00
luigi1111
564e9c3b5f Merge pull request #4170
1c6cfd3 wallet-rpc: add get_address_index command (stoffu)
2018-08-15 17:35:49 -05:00
luigi1111
8c4b3f3736 Merge pull request #4166
5e675de simplewallet: fix language detection when using --use-english-language-names (moneromooo-monero)
2018-08-15 17:34:29 -05:00
luigi1111
01475c36c0 Merge pull request #4165
68b1197 tests: ringdb: use system's temporary dir path (radfish)
2018-08-15 17:33:06 -05:00
luigi1111
fd3b71129b Merge pull request #4164
8e24533 blockchain: some batch tx scanning speedup (moneromooo-monero)
2018-08-15 17:31:24 -05:00
luigi1111
2530dc6710 Merge pull request #4161
be02eb9 db_lmdb: demote the 'batch already enabled' log, it's harmless (moneromooo-monero)
2018-08-15 17:27:48 -05:00
luigi1111
e7328ed5b7 Merge pull request #4158
7db7ec8 wallet rpc: support making integrated address of given standard address (stoffu)
2018-08-15 17:25:19 -05:00
luigi1111
5e795ee7af Merge pull request #4153
37f0799 wallet: distinguish coinbase from other txes in show_transfers (moneromooo-monero)
2018-08-15 17:23:56 -05:00
luigi1111
2a44c2defd Merge pull request #4150
f2e65c6 wallet2: consider minimum fee when testing if balance is sufficient (stoffu)
2018-08-15 17:22:36 -05:00
luigi1111
dc7dd56867 Merge pull request #4148
fead7eb Clarification of boolean options in config file (jonathancross)
2018-08-15 17:21:10 -05:00
luigi1111
88369c6685 Merge pull request #4138
7f8bdeb easylogging++: make the logger handle early/late logging (moneromooo-monero)
bc8cbdb stack_trace: print stack traces on stdout if the logger isn't live (moneromooo-monero)
2018-08-15 17:19:04 -05:00
luigi1111
5295e4eb82 Merge pull request #4137
63e342b crypto: move null_pkey/null_skey to the cpp file (moneromooo-monero)
0496c7c crypto: do not use boost::value_initialized to init null skey/pkey (moneromooo-monero)
2018-08-15 17:17:34 -05:00
luigi1111
1d2c08610b Merge pull request #4136
4307489 wallet: disable core dumps on startup in release mode (moneromooo-monero)
2018-08-15 17:15:49 -05:00
luigi1111
3b409a3b8a Merge pull request #4130
979105b abstract_tcp_server2: fix race on shutdown (moneromooo-monero)
2018-08-15 17:13:35 -05:00
luigi1111
ad13b6d25a Merge pull request #4106
20eb192 simplewallet: reword 'seed encryption' to 'seed offset' (moneromooo-monero)
2018-08-15 17:12:12 -05:00
luigi1111
017e07a035 Merge pull request #4103
bcab579 wallet: allow adjusting number of rounds for the key derivation function (stoffu)
2018-08-15 17:09:52 -05:00
luigi1111
dd966c8a3a Merge pull request #4090
42f3b7c http_protocol_handler: catch invalid numbers when parsing (moneromooo-monero)
0a4a7da http_protocol_handler: fix HTTP/x.y parsing (moneromooo-monero)
2018-08-15 17:08:10 -05:00
luigi1111
b586ae1310 Merge pull request #4089
909398e p2p: connect via the bound ip, if any (moneromooo-monero)
2018-08-15 17:06:17 -05:00
luigi1111
dd8354aa08 Merge pull request #4024
5a2864c simplewallet: fix delay when setting auto-refresh off (moneromooo-monero)
2018-08-15 17:05:14 -05:00
luigi1111
4745e3be22 Merge pull request #4020
c24a0af [monerod] Added blocks remaining count during syncronisation. (Jorropo)
2018-08-15 17:03:35 -05:00
luigi1111
4cde4cb946 Merge pull request #3528
34d4b79 wallet2: use a gamma distribution to pick fake outs (moneromooo-monero)
2018-08-15 17:00:32 -05:00
Dusan Klinec
4e081001c0 Incremental Keccak API added
- needed for TREZOR integration
2018-08-15 18:20:22 +02:00
moneromooo-monero
0c8d8f6b2e unit_tests: remove std::move in return statement
This actually prevents copy elision
2018-08-15 13:38:47 +00:00
moneromooo-monero
5ed6669130 wallet_rpc_server: remove unused amount_keys field in transfer RPC 2018-08-15 12:47:33 +00:00
moneromooo-monero
c3c14f3083 simplewallet: allow named priority levels for default-priority
to match those used by the various transfer functions
2018-08-15 12:16:17 +00:00
stoffu
b21fdaa874 fuzz: set address properly 2018-08-14 20:17:51 +09:00
moneromooo-monero
d6fc870d04 db_lmdb: resize blockchain database when 90% filled
instead of a random ratio from 60% to 90%.
2018-08-14 08:55:49 +00:00
moneromooo-monero
de905d4b48 fuzz_tests: use __AFL_INIT when available
alleged to speed things up
2018-08-13 22:13:56 +00:00
fireice-uk
10475ab23f node_rpc_proxy: fix fork earliest height caching [RYO backport]
xref https://github.com/ryo-currency/ryo-currency/pull/86
2018-08-13 22:16:17 +02:00
rbrunner7
77655b0a0e simplewallet: Simplify LOCK_IDLE_SCOPE macro 2018-08-13 21:21:24 +02:00
moneromooo-monero
ac09cfa6be wallet2: remove obsolete pruned/unpruned case
All daemons will not support pruned blocks
2018-08-13 13:17:27 +00:00
moneromooo-monero
4307489147 wallet: disable core dumps on startup in release mode 2018-08-12 16:28:10 +00:00
moneromooo-monero
bc8cbdb25d stack_trace: print stack traces on stdout if the logger isn't live 2018-08-12 16:18:07 +00:00
moneromooo-monero
b278b83860 core: sync database based on bytes added, not blocks added
Blocks have a very wide range, whereas actual size is the relevant
quantity to consider when syncing
2018-08-12 16:13:46 +00:00
stoffu
95766fe878 README: add dependency on libpgm-dev 2018-08-12 20:12:41 +09:00
moneromooo-monero
83f5587167 blockchain: use uint64_t for height, not size_t 2018-08-09 17:09:26 +00:00
moneromooo-monero
361513ac81 blockchain_blackball: use a bit less memory 2018-08-09 14:50:20 +00:00
moneromooo-monero
ce9457a379 cryptonote_protocol: don't serialize an unneeded new block message
Non fluffy block nodes should now be very rare
2018-08-09 14:45:31 +00:00
HomDx
13a43fcf0b Added Codefresh.yml pipeline 2018-08-08 20:11:04 +03:00
moneromooo-monero
a4d2d84209 blockchain_depth: add average min depth 2018-08-07 21:20:54 +00:00
moneromooo-monero
289880d82d blockchain_depth: get the average min depth of a set of txes 2018-08-07 21:20:49 +00:00
Jkat
5dd03846b6 Updating Qt download link 2018-08-07 17:07:58 -04:00
stoffu
bcab579864 wallet: allow adjusting number of rounds for the key derivation function 2018-08-08 01:56:54 +09:00
moneromooo-monero
9e6c7784ea CMakeLists.txt: add -mmitigate-rop to security flags if found
This is GCC/x86/x86_64 only
2018-08-07 13:05:52 +00:00
moneromooo-monero
3e914ad831 simplewallet: add a warning and prompt on rescan_blockchain
Many people are using this as a "let's see what this does" command
when something doesn't work as they thought it should, and thus
destroying info that they might still need.
2018-08-07 12:49:23 +00:00
Maxim Shishmarev
96c1de979a fixed cncrypto tests not passing after the change in random_scalar 2018-08-07 15:58:40 +10:00
rbrunner7
2fd9be1646 simplewallet: correct number of human-readable months 2018-08-05 09:58:33 +02:00
moneromooo-monero
c5e2aee961 updates: fix hash sanity checking 2018-08-05 00:19:45 +00:00
Lee Clagett
26a42fe54a Added features to epee::span<T> :
- Support for classes
  - Added `remove_prefix` function
  - Added `to_mut_span` and `as_mut_byte_span`
2018-08-03 20:33:07 -04:00
moneromooo-monero
37f0799284 wallet: distinguish coinbase from other txes in show_transfers 2018-08-03 12:48:16 +00:00
Gingeropolous
b0b6959c1d update README to change all 0.12.2 to 0.12.3
I didn't change the minimum version in the table though, because 0.12.0 will work for this block version
2018-08-02 23:25:03 -04:00
HomDx
3411326a04 Docker: updated cmake version 2018-08-02 23:29:01 +03:00
Lee Clagett
4616cf2641 Fixed ZMQ-RPC for transactions and GET_BLOCKS_FAST 2018-08-02 07:30:20 +00:00
moneromooo-monero
8439306212 wallet2: do not divide by 0 on invalid daemon response 2018-07-31 14:26:00 +00:00
stoffu
1c6cfd34f4 wallet-rpc: add get_address_index command 2018-07-31 21:36:12 +09:00
stoffu
9127a8b79f wallet-rpc: filter getbalance response by address index 2018-07-31 20:45:41 +09:00
moneromooo-monero
43f71100bc blockchain_db: remove unused get_output_key variant
It was actually incorrect, as it would not return commitment
2018-07-30 21:57:47 +00:00
moneromooo-monero
628428a0df blockchain_ancestry: faster and uses less memory 2018-07-30 21:39:25 +01:00
moneromooo-monero
2382484dcd blockchain_ancestry: add an incremental mode 2018-07-30 21:39:22 +01:00
moneromooo-monero
888324fa57 blockchain_ancestry: finds all ancestors of a tx, block, or chain 2018-07-30 21:39:18 +01:00
moneromooo-monero
0f757177fe wallet2: avoid using arbitrary random values when unknown 2018-07-30 13:34:15 +01:00
moneromooo-monero
4520cfd978 wallet2: guard against bad outputs in import_outputs
also some minor speedup
2018-07-30 13:21:58 +01:00
stoffu
a3fe1c56ee simplewallet: add set_tx_key for importing tx keys from 3rd party wallets 2018-07-30 20:50:05 +09:00
stoffu
f13c7a8263 simplewallet: make sure wallet config is stored right after creation 2018-07-30 20:39:05 +09:00
moneromooo-monero
5860611afa blockchain_blackball: allow resumable interrupt with ^C 2018-07-30 11:14:45 +01:00
moneromooo-monero
c8226ad1f7 unit_tests: use valid key images, pub keys, etc 2018-07-28 19:39:59 +01:00
luigi1111
0dddfeacc9 Merge pull request #4129
ee31383 db_lmdb: don't sync a read only DB (moneromooo-monero)
2018-07-27 14:30:57 -05:00
luigi1111
21b1fa1c35 Merge pull request #4126
8d578f1 memwipe: don't call the workhorse for 0 bytes (moneromooo-monero)
2018-07-27 14:29:55 -05:00
luigi1111
ff01c3ade4 Merge pull request #4110
639ca3b core_tests: add --filter to select which tests to run (moneromooo-monero)
2018-07-27 14:28:49 -05:00
luigi1111
f739a3cbb8 Merge pull request #4109
2951436 wallet: warn when payment IDs are used (moneromooo-monero)
2018-07-27 14:27:47 -05:00
luigi1111
dda05f357a Merge pull request #4108
8c05237 blockchain: cache next block difficulty after adding a block (moneromooo-monero)
2018-07-27 14:26:01 -05:00
luigi1111
8eb5b0be36 Merge pull request #4098
96f8c62 README: remove mentions of external miniupnpc dependency (moneromooo-monero)
2018-07-27 14:25:02 -05:00
luigi1111
3fde902394 Merge pull request #4097
61caab8 crypto: remove slight bias in key generation due to modulo (moneromooo-monero)
2018-07-27 14:23:54 -05:00
luigi1111
92b5d6c204 Merge pull request #4091
a4272de wallet2: unlock keys file before calling verify_password (needed for Windows) (stoffu)
2018-07-27 14:22:34 -05:00
luigi1111
b293c487fb Merge pull request #3629
ed7825d monero-wallet-cli: added locked_sweep_all command (jcktm)
2018-07-27 14:20:23 -05:00
moneromooo-monero
262e391fb1 mlog: handle filenames without parent directories
eg, --log-file=foo.log

This would otherwise throw and crash with a stack overflow
2018-07-26 22:49:54 +01:00
moneromooo-monero
e7c0fcd8f3 epee: set jsonrpc to "2.0" in parse error return data 2018-07-25 23:00:19 +01:00
Jorropo
c24a0af9f1 [monerod] Added blocks remaining count during syncronisation.
And percent if usefull (% < 99)
2018-07-25 10:16:01 +02:00
moneromooo-monero
ff37bd00bc wallet2: fix O(n^2) behaviour in import_key_images
That takes a lot of time for even not so large wallets
2018-07-24 14:34:19 +01:00
stoffu
3940e12933 daemon.print_bc: don't print difficulty twice 2018-07-24 16:17:49 +09:00
stoffu
3a4c3ac891 simplewallet.unspent_outputs: fix wrong logic for parsing 2018-07-24 13:32:58 +09:00
jcktm
ed7825dc0c monero-wallet-cli: added locked_sweep_all command 2018-07-23 10:35:58 +10:00
redfish
68b1197f5d tests: ringdb: use system's temporary dir path
Fixes failing test during Arch package build (due to attempt to write to
~/.bitmonero/...).

Prefix temp dir path with "monero-" because we are not putting it on the
system, so good to identify ourselves in case the dir gets left over due
to crash, etc.
2018-07-22 14:14:54 -04:00
moneromooo-monero
5e675de7c2 simplewallet: fix language detection when using --use-english-language-names 2018-07-22 14:26:38 +01:00
moneromooo-monero
8e24533a7f blockchain: some batch tx scanning speedup 2018-07-21 12:05:12 +01:00
moneromooo-monero
be02eb9389 db_lmdb: demote the "batch already enabled" log, it's harmless 2018-07-20 23:41:40 +01:00
moneromooo-monero
0496c7c91a crypto: do not use boost::value_initialized to init null skey/pkey 2018-07-20 23:06:22 +01:00
moneromooo-monero
704b60caf0 block_queue: faster check whether a block was requested 2018-07-20 16:05:56 +01:00
stoffu
7db7ec8591 wallet rpc: support making integrated address of given standard address 2018-07-20 21:33:36 +09:00
luigi1111
702a41034d Merge pull request #4088
8c4db68 node_rpc_proxy: factor a few RPC calls using get_info (moneromooo-monero)
2018-07-19 14:15:16 -05:00
luigi1111
5c102c60dc Merge pull request #4087
d6440ab wallet2: recover from index out of hashchain bounds error (moneromooo-monero)
2018-07-19 14:14:10 -05:00
luigi1111
61eea83978 Merge pull request #4081
d95bc44 blockchain: fix getting invalid block data on failure (moneromooo-monero)
2018-07-19 14:12:30 -05:00
luigi1111
9474567d76 Merge pull request #4076
aa0ea0a blockchain: set the m_verifivation_failed flag in a couple more places (moneromooo-monero)
2018-07-19 14:11:24 -05:00
luigi1111
f6d7e87b67 Merge pull request #4075
438d52d remove epee from link lines where it's redundant (moneromooo-monero)
2018-07-19 14:10:20 -05:00
luigi1111
326437c5ff Merge pull request #4074
ef649f9 crypto: remove unused unsafe random scalar generator (moneromooo-monero)
2018-07-19 14:08:56 -05:00
luigi1111
5fad1c505a Merge pull request #4073
3474154 gtest: use -fPIC with CLANG too (moneromooo-monero)
2018-07-19 14:07:49 -05:00
luigi1111
be81a27fa4 Merge pull request #4071
d6d78f1 Allow fractional outputs to be ignored (stoffu)
2018-07-19 14:06:54 -05:00
luigi1111
173f7b8f42 Merge pull request #4064
80d7c6c blockchain_utilities: report file offset where a read error occurs (moneromooo-monero)
2018-07-19 14:05:51 -05:00
luigi1111
69502c4040 Merge pull request #4062
13851b2 simplewallet.sweep_all: show usage when parsing fails (stoffu)
2018-07-19 14:04:42 -05:00
luigi1111
007b835daa Merge pull request #4061
e6f4d4a unit_tests: do not recreate the same base rct sig all the time (moneromooo-monero)
2018-07-19 14:03:38 -05:00
luigi1111
5cade94189 Merge pull request #4047
41b4bf9 tx_pool: cache check_tx_inputs results (moneromooo-monero)
2018-07-19 14:02:20 -05:00
luigi1111
94ed562148 Merge pull request #4045
7cdd147 Changed URLs to HTTPS (einsteinsfool)
2018-07-19 13:56:38 -05:00
luigi1111
9315e12d34 Merge pull request #4033
3e46db9 rpc: add a non binary get_transaction_pool_hashes RPC (moneromooo-monero)
2018-07-19 13:55:37 -05:00
luigi1111
cff15e4123 Merge pull request #4032
87e158b device_ledger: factor the prologue code (moneromooo-monero)
2018-07-19 13:54:39 -05:00
luigi1111
3235abc184 Merge pull request #4030
0c41488 miner: show id and height when a block is found (stoffu)
2018-07-19 13:53:36 -05:00
luigi1111
138aefd0e7 Merge pull request #4029
bd9e4e3 daemon: show a bit more info with print_block (stoffu)
2018-07-19 13:52:41 -05:00
luigi1111
2e4653c077 Merge pull request #4023
6cb9707 simplewallet: remove leftover global debug trace (moneromooo-monero)
2018-07-19 13:51:44 -05:00
luigi1111
d14a074055 Merge pull request #4021
09f43b9 crypto: add a README pointing to the SUPERCOP licence (moneromooo-monero)
2018-07-19 13:50:37 -05:00
luigi1111
3e026ff6ed Merge pull request #4013
e5592c4 rpc: add blockchain disk size to getinfo (moneromooo-monero)
2018-07-19 13:40:42 -05:00
luigi1111
21afa71ba6 Merge pull request #3981
45e419b db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19 13:39:24 -05:00
luigi1111
d518dae4bf Merge pull request #3973
50af357 alt_chain_info can now give more info about a particular alt chain (moneromooo-monero)
2018-07-19 13:37:10 -05:00
luigi1111
025187e6c9 Merge pull request #3854
149da42 db_lmdb: enable batch transactions by default (stoffu)
34cb6b4 add --regtest and --fixed-difficulty for regression testing (vicsn)
9e1403e update get_info RPC and bump RPC version (vicsn)
207b66e first new functional tests (vicsn)
2018-07-19 13:35:25 -05:00
luigi1111
33122ab8a6 Merge pull request #3617
4c00a4d unit_tests: add device unit tests (moneromooo-monero)
2018-07-19 13:32:36 -05:00
stoffu
f2e65c6e50 wallet2: consider minimum fee when testing if balance is sufficient 2018-07-19 20:31:07 +09:00
Jonathan Cross
fead7ebab0 Clarification of boolean options in config file 2018-07-18 20:07:05 +02:00
moneromooo-monero
d6440ab319 wallet2: recover from index out of hashchain bounds error
This can happen when there's a very large reorg on the daemon
(ie, on testnet)
2018-07-16 23:13:56 +01:00
moneromooo-monero
7f8bdeb35c easylogging++: make the logger handle early/late logging 2018-07-15 19:10:44 +01:00
moneromooo-monero
63e342be84 crypto: move null_pkey/null_skey to the cpp file 2018-07-15 19:09:36 +01:00
moneromooo-monero
979105b298 abstract_tcp_server2: fix race on shutdown 2018-07-15 19:08:49 +01:00
moneromooo-monero
45e419bd5c db: store cumulative rct output distribution in the db for speed
This gets rid of the temporary precalc cache.

Also make the RPC able to send data back in binary or JSON,
since there can be a lot of data

This bumps the LMDB database format to v3, with migration.
2018-07-13 11:37:04 +01:00
moneromooo-monero
2951436704 wallet: warn when payment IDs are used
Subaddresses are better for privacy
2018-07-12 19:37:29 +01:00
moneromooo-monero
ee31383a52 db_lmdb: don't sync a read only DB
This would only throw
2018-07-11 18:14:22 +01:00
moneromooo-monero
8d578f1f2d memwipe: don't call the workhorse for 0 bytes
Some of them don't like it
2018-07-10 15:37:22 +01:00
Riccardo Spagni
7d2d8055ac Merge pull request #4117
fc39d3b2 wallet2: ensure outputs are processed only once (moneromooo-monero)
2018-07-10 12:59:01 +02:00
Riccardo Spagni
2790ebc9f0 Merge pull request #4060
22411149 blockchain_import: make sleep compile on Windows (iDunk5400)
2018-07-10 09:34:41 +02:00
moneromooo-monero
fc39d3b23c wallet2: ensure outputs are processed only once
This should be proof against any way one might get to multiple
processing, such as generating the same derivation from the
same pubkey, etc
2018-07-08 12:56:51 +01:00
moneromooo-monero
8c0523771f blockchain: cache next block difficulty after adding a block
It's not 100% certain it'll be needed, but it avoids getinfo
needing the blockchain lock and potentially blocking
2018-07-07 19:34:21 +01:00
moneromooo-monero
639ca3b1fa core_tests: add --filter to select which tests to run 2018-07-07 19:33:35 +01:00
moneromooo-monero
20eb192162 simplewallet: reword "seed encryption" to "seed offset"
avoids people thinking it's somehow a generic AE system
2018-07-07 11:35:41 +01:00
anonimal
4e409be887 Build: bump miniupnp to 2.1 2018-07-06 21:38:52 +00:00
anonimal
78a6690a6f Build: bump unbound to 1.7.3 2018-07-06 21:37:37 +00:00
anonimal
e2311db717 Build: bump rapidjson to 129d19b
Includes various rapidjson fixes.
2018-07-06 21:35:39 +00:00
Riccardo Spagni
ebf2818ab5 Merge pull request #4101
e6479220 bump version to 12.3 (Riccardo Spagni)
2018-07-06 12:11:08 +02:00
Riccardo Spagni
e647922080 bump version to 12.3 2018-07-06 07:57:00 +02:00
moneromooo-monero
61caab8a8c crypto: remove slight bias in key generation due to modulo 2018-07-05 09:18:01 +01:00
moneromooo-monero
96f8c62dc4 README: remove mentions of external miniupnpc dependency 2018-07-04 23:59:06 +01:00
Riccardo Spagni
eed4dba880 Merge pull request #4094
9c211b50 docker: update to new versions of dependencies (HomDx)
2018-07-04 15:29:39 +02:00
moneromooo-monero
0a4a7da35c http_protocol_handler: fix HTTP/x.y parsing
It was accepting any character for the dot (yeah, massive big I know)
2018-07-03 23:16:48 +01:00
moneromooo-monero
42f3b7cbca http_protocol_handler: catch invalid numbers when parsing 2018-07-03 23:16:44 +01:00
HomDx
9c211b50de docker: update to new versions of dependencies 2018-07-03 21:52:07 +03:00
iDunk5400
2241114965 blockchain_import: make sleep compile on Windows 2018-07-03 20:33:18 +02:00
moneromooo-monero
34d4b798d4 wallet2: use a gamma distribution to pick fake outs
as per "An Empirical Analysis of Linkability in the Monero
Blockchain", by Miller et al.
2018-07-03 18:10:48 +01:00
Riccardo Spagni
40f85f478e Merge pull request #3985
58cceaad wallet2: fix double counting outs if the tx pubkey is duplicated (moneromooo-monero)
2018-07-03 15:51:41 +02:00
Riccardo Spagni
c58758a016 Merge pull request #4080
dead780f abstract_tcp_server2: fix use after free (moneromooo-monero)
2018-07-03 15:24:01 +02:00
Riccardo Spagni
d1f102626c Merge pull request #4043
34de7bc2 device_ledger: fix buffer underflow on bad data from device (moneromooo-monero)
41e9cab4 device: misc cleanup (moneromooo-monero)
3b4dec2d device_ledger: fix potential buffer overflow from bad size calc (moneromooo-monero)
2018-07-03 15:21:56 +02:00
Riccardo Spagni
82c39355ac Merge pull request #4042
9d7f6e60 simplewallet: init trusted daemon flag to false when autodetecting (moneromooo-monero)
2018-07-03 15:21:27 +02:00
Riccardo Spagni
f449dbe8eb Merge pull request #4041
df9d50a8 wallet2: fix read buffer overflow in import_key_images (moneromooo-monero)
2018-07-03 15:20:42 +02:00
Riccardo Spagni
94803bad01 Merge pull request #4035
66df13a5 wallet-rpc.getaddress: throw if index is out of bound (stoffu)
2018-07-03 15:19:54 +02:00
Riccardo Spagni
97f5a130d6 Merge pull request #4028
2a19697b wallet2: fix double header in unsigned transfer file (moneromooo-monero)
2018-07-03 15:19:24 +02:00
Riccardo Spagni
21807217e2 Merge pull request #4012
5b5828fc zmq_server: fix bind call when address and/or port are empty (moneromooo-monero)
2018-07-03 15:18:40 +02:00
Riccardo Spagni
e451c76181 Merge pull request #4005
b85acb4c Fix RPC crashes that didn't check for an open wallet (Howard Chu)
2018-07-03 15:18:05 +02:00
Riccardo Spagni
27ca6ca594 Merge pull request #4004
bc443494 wallet2: fix out of sync account tag cache (moneromooo-monero)
2018-07-03 15:16:37 +02:00
moneromooo-monero
58cceaad71 wallet2: fix double counting outs if the tx pubkey is duplicated 2018-07-03 14:16:30 +01:00
Riccardo Spagni
318fb23d7a Merge pull request #3997
1a526ed5 abstract_tcp_server2: restart async accept on error (moneromooo-monero)
2018-07-03 15:16:04 +02:00
stoffu
a4272de797 wallet2: unlock keys file before calling verify_password (needed for Windows)
Also added notes to WalletManager::verifyWalletPassword (which afaik seems unused
by anyone at the moment) regarding the need to unlock the keys file beforehand.
2018-07-03 18:07:20 +09:00
stoffu
d6d78f157b Allow fractional outputs to be ignored 2018-07-03 18:04:31 +09:00
moneromooo-monero
909398efc7 p2p: connect via the bound ip, if any 2018-07-02 18:06:04 +01:00
moneromooo-monero
8c4db68ff7 node_rpc_proxy: factor a few RPC calls using get_info
Takes advantage of caching
2018-07-02 17:59:44 +01:00
moneromooo-monero
d95bc44c6b blockchain: fix getting invalid block data on failure 2018-06-29 15:50:34 +01:00
moneromooo-monero
dead780f8a abstract_tcp_server2: fix use after free 2018-06-29 15:40:48 +01:00
victorsintnicolaas
207b66ecc2 first new functional tests 2018-06-29 10:06:22 +02:00
victorsintnicolaas
9e1403e155 update get_info RPC and bump RPC version 2018-06-29 10:06:18 +02:00
victorsintnicolaas
34cb6b4b70 add --regtest and --fixed-difficulty for regression testing
on_generateblocks RPC call combines functionality from the on_getblocktemplate and on_submitblock RPC calls to allow rapid block creation. Difficulty is set permanently to 1 for regtest.
Makes use of FAKECHAIN network type, but takes hard fork heights from mainchain
Default reserve_size in generate_blocks RPC call is now 1. If it is 0, the following error occurs 'Failed to calculate offset for'.
Queries hard fork heights info of other network types
2018-06-29 10:06:11 +02:00
moneromooo-monero
aa0ea0aafc blockchain: set the m_verifivation_failed flag in a couple more places
when a block being added to the main chain is invalid.

This ensures the peer is banned after a number of these.
2018-06-28 16:57:22 +01:00
moneromooo-monero
438d52deaf remove epee from link lines where it's redundant
For some reason, this confuses and kills ASAN on startup
as it thinks const uint8_t ipv4_network_address::ID is
defined multiple times.
2018-06-28 16:45:22 +01:00
moneromooo-monero
ef649f998d crypto: remove unused unsafe random scalar generator 2018-06-28 16:44:13 +01:00
moneromooo-monero
3474154b75 gtest: use -fPIC with CLANG too 2018-06-28 16:42:52 +01:00
luigi1111
a9b83f5a6e Merge pull request #4067
9a39b7d wallet2: fix build for windows (std::max again) (moneromooo-monero)
2018-06-27 21:28:34 -05:00
luigi1111
65c09beaf7 Merge pull request #4069
49dc78d util: fix mistakes made in #3994 (stoffu)
2018-06-27 21:25:00 -05:00
luigi1111
8b18401ea0 Merge pull request #4068
29254fc api/wallet: add missing arg to wallet2::refresh() (stoffu)
2018-06-27 21:23:50 -05:00
stoffu
49dc78d99b util: fix mistakes made in #3994 2018-06-28 10:39:04 +09:00
stoffu
29254fc06e api/wallet: add missing arg to wallet2::refresh() 2018-06-28 10:24:05 +09:00
luigi1111
ba0a7294d0 Merge pull request #4000
4510f41 Wallet API: add some missing override keyword (stoffu)
2018-06-27 20:18:41 -05:00
luigi1111
4c6de54ee2 Merge pull request #3994
1d17647 epee.string_tools: add conversion between UTF-8 and UTF-16 (stoffu)
59de6f8 util: add file_locker class (stoffu)
3d623a8 wallet: prevent the same wallet file from being opened by multiple processes (stoffu)
2018-06-27 20:17:25 -05:00
luigi1111
008b9036a3 Merge pull request #4066
84d9e7f blockchain: fix build after waiter::wait prototype change (moneromooo-monero)
2018-06-27 20:15:10 -05:00
luigi1111
0c76dbdd00 Merge pull request #4065
9b38551 wallet_rpc_server: fix build - forgot to build rpc version (moneromooo-monero)
2018-06-27 20:13:38 -05:00
stoffu
4510f417f9 Wallet API: add some missing override keyword
Also remove dust() from UnsignedTransactionImpl (already in PendingTransactionImpl)
2018-06-28 09:59:09 +09:00
stoffu
3d623a86d1 wallet: prevent the same wallet file from being opened by multiple processes 2018-06-28 09:41:43 +09:00
stoffu
59de6f8d99 util: add file_locker class 2018-06-28 09:40:31 +09:00
stoffu
1d176473e9 epee.string_tools: add conversion between UTF-8 and UTF-16 2018-06-28 09:40:26 +09:00
moneromooo-monero
9a39b7dd7f wallet2: fix build for windows (std::max again) 2018-06-28 00:47:48 +01:00
moneromooo-monero
84d9e7faec blockchain: fix build after waiter::wait prototype change 2018-06-28 00:24:39 +01:00
moneromooo-monero
9b38551c3c wallet_rpc_server: fix build - forgot to build rpc version 2018-06-27 23:34:02 +01:00
luigi1111
2329d2f4c8 Merge pull request #3907
dcbc17e wallet: include a suggested number of confirmations based on amount (moneromooo-monero)
2018-06-27 16:32:33 -05:00
luigi1111
8a27caeb22 Merge pull request #3998
8db23df wallet: on first refresh, start off with a quantized height (moneromooo-monero)
2018-06-27 16:30:38 -05:00
luigi1111
9453573581 Merge pull request #3995
0a5292c wallet2: use decoded amount when reporting repeated output key (stoffu)
2018-06-27 16:28:57 -05:00
luigi1111
c28a2b0d7d Merge pull request #3992
25c15dc wallet2: use correct fee for split txes (stoffu)
2018-06-27 16:26:23 -05:00
luigi1111
5eb2e01216 Merge pull request #3991
798dfcf wallet: allow unspendable unmixable outputs to be discarded (stoffu)
2018-06-27 16:25:03 -05:00
luigi1111
cbfa0a2a7e Merge pull request #3987
2d10830 db_ldmb: print db version when complaining about incompatibility (moneromooo-monero)
2018-06-27 16:23:17 -05:00
luigi1111
87d7612311 Merge pull request #3986
b628503 Remove old logic saved in comments. (jeandudey)
2018-06-27 16:22:03 -05:00
luigi1111
3ad4ecd4ff Merge pull request #3982
08b85a8 cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X (stoffu)
0cf80ba net_node: resolve host for node addresses given via command line flags (stoffu)
2018-06-27 15:38:23 -05:00
moneromooo-monero
dcbc17e97e wallet: include a suggested number of confirmations based on amount
This is based on how much an attacking miner stands to lose in block
rewardy by mining a private chain which double spends a payment.
This is not foolproof, since mining is based on luck, and breaks
down as the attacking miner nears 50% of the network hash rate,
and the estimation is based on a constant block reward.
2018-06-27 21:38:21 +01:00
luigi1111
2d92fa5d69 Merge pull request #3979
362f5e6 simplewallet: don't confirm missing payment ID when sending to only subaddresses (stoffu)
2018-06-27 15:36:54 -05:00
luigi1111
a844844cda Merge pull request #3716
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27 15:33:01 -05:00
stoffu
13851b28c7 simplewallet.sweep_all: show usage when parsing fails 2018-06-27 22:54:10 +09:00
moneromooo-monero
80d7c6c730 blockchain_utilities: report file offset where a read error occurs 2018-06-27 14:11:35 +01:00
moneromooo-monero
e6f4d4acf0 unit_tests: do not recreate the same base rct sig all the time
Helps a bit when running with valgrind
2018-06-27 11:11:14 +01:00
moneromooo-monero
0e4c7d0fae wallet2: cache ringdb key while refreshing
Speeds up syncing with a lot of outgoing outputs as key generation
runs Cryptonight.
2018-06-26 22:15:38 +01:00
moneromooo-monero
2771a18e85 threadpool: allow leaf functions to run concurrently
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
2018-06-26 22:15:22 +01:00
moneromooo-monero
2704624eae wallet2: remove unneeded divisions 2018-06-26 22:15:20 +01:00
moneromooo-monero
5d3e70229e wallet2: remove old blockchain size cache hack 2018-06-26 22:15:18 +01:00
moneromooo-monero
dcfd299239 wallet2: speedup refresh
key derivation and checking for incoming outputs are threaded
in batch before adding blocks to the local blockchain. Other
minor bits and bobs are also cached.
2018-06-26 22:15:16 +01:00
moneromooo-monero
ef2cb63287 blockchain: simplify/speedup handle_get_objects 2018-06-26 22:15:14 +01:00
moneromooo-monero
f025ae9760 wallet2: avoid re-parsing blocks when refreshing in a loop 2018-06-26 22:15:12 +01:00
moneromooo-monero
41be339655 wallet2: avoid duplicate parsing of tx extra 2018-06-26 22:15:10 +01:00
moneromooo-monero
f7f1917ed4 wallet2: remove useless device locking 2018-06-26 22:14:35 +01:00
moneromooo-monero
ba8331ce41 wallet2: parse blocks in the RPC thread, not the processing thread
Processing typically is the bottleneck
2018-06-26 22:14:33 +01:00
moneromooo-monero
31a895e876 wallet2: simplify/speedup process_blocks 2018-06-26 22:14:31 +01:00
moneromooo-monero
57ea90285c wallet: don't process miner tx if we're refreshing with no-coinbase 2018-06-26 22:14:26 +01:00
moneromooo-monero
a830db2577 rpc: rework to avoid repeated calculations in get_blocks.bin 2018-06-26 22:14:23 +01:00
moneromooo-monero
ed2c81ed95 replace std::list with std::vector on some hot paths
also use reserve where appropriate
2018-06-26 22:14:21 +01:00
moneromooo-monero
209ec963b5 rpc: sanity check on number of txes in a block 2018-06-26 22:14:18 +01:00
moneromooo-monero
6795bd0d4e rpc: add option to skip coinbase info in get_blocks.bin 2018-06-26 22:14:16 +01:00
moneromooo-monero
a2b557fe5c wallet2: use std::move on containers where appropriate 2018-06-26 22:14:14 +01:00
moneromooo-monero
50af3579ee alt_chain_info can now give more info about a particular alt chain 2018-06-26 08:19:51 +01:00
luigi1111
31f47d72fe Merge pull request #3977
0309615 device_ledger: fix bad memory access on connect error (moneromooo-monero)
2018-06-25 15:26:23 -05:00
luigi1111
14372ca95a Merge pull request #3975
2d5921e blockchain: avoid duplicate db query for height (moneromooo-monero)
2018-06-25 15:24:45 -05:00
luigi1111
ab7ab29fc0 Merge pull request #3974
1789b76 cryptonote_protocol_handler: log when dropping a peer (moneromooo-monero)
2018-06-25 15:23:31 -05:00
luigi1111
c0c6102260 Merge pull request #3972
8766528 epee: fallback to a counter if gmtime fails when rotating logs (moneromooo-monero)
2018-06-25 15:21:25 -05:00
luigi1111
a2b08db9c9 Merge pull request #3971
4ecf714 epee: fix include for ofstream (moneromooo-monero)
2018-06-25 15:20:12 -05:00
luigi1111
b1be364f08 Merge pull request #3966
948c482 simplewallet: grammar fix in warning message (moneromooo-monero)
2018-06-25 15:16:38 -05:00
luigi1111
3afaedf365 Merge pull request #3964
9ddb07f update readme to include debian one liner for deps (Gingeropolous)
2018-06-25 15:15:32 -05:00
luigi1111
89b99ef2d8 Merge pull request #3963
f61fe2e Update readme to include pcslite dependency (Gingeropolous)
2018-06-25 15:13:57 -05:00
luigi1111
8fad35f8e2 Merge pull request #3962
55c7fb8 epee: adaptive connection timeout system (moneromooo-monero)
2018-06-25 15:12:37 -05:00
luigi1111
66212837ab Merge pull request #3957
2bb2c1b password: flush cout when prompting for password without newline (moneromooo-monero)
2018-06-25 15:10:54 -05:00
luigi1111
506be80601 Merge pull request #3955
d7a6b72 wallet2: fix bulletproof cold signing (moneromooo-monero)
2018-06-25 15:09:48 -05:00
luigi1111
741a773025 Merge pull request #3948
c367609 blockchain_import: warn+delay about using --dangerous-unverified-import (moneromooo-monero)
2018-06-25 14:58:19 -05:00
luigi1111
ea1d54aeb7 Merge pull request #3947
8cc4606 snap: strip metadata from icon.png (moneromooo-monero)
2018-06-25 14:56:07 -05:00
luigi1111
26562e9f3c Merge pull request #3941
bf26920 wallet2: fix get_approximate_blockchain_height for stagenet (stoffu)
2018-06-25 14:54:54 -05:00
luigi1111
c3ec5373b3 Merge pull request #3936
d81e042 tx_pool: initialize bitflags padding since it gets written to storage (moneromooo-monero)
2018-06-25 14:53:27 -05:00
luigi1111
473d984d88 Merge pull request #3921
8fc0cdb wallet2: lower default for subaddress lookahead when restoring with hardware (stoffu)
248310d Move parse_subaddress_lookahead() from simplewallet.cpp to util.cpp (stoffu)
46e90b7 Wallet API: add support for wallet creation from hardware device (stoffu)
2018-06-25 14:49:30 -05:00
luigi1111
1eddabf0a4 Merge pull request #3677
d45cd37 fix typos in language files and rpc_args.cpp (ordtrogen)
2018-06-25 14:41:48 -05:00
luigi1111
ff7dc087ae Merge pull request #3407
7bf99a2 fix string handling for donation message (cryptochangements34)
2018-06-25 14:39:01 -05:00
moneromooo-monero
87e158b5b9 device_ledger: factor the prologue code 2018-06-25 12:35:10 +01:00
moneromooo-monero
41b4bf9d6d tx_pool: cache check_tx_inputs results
This is called a lot when creating a block template, and
does not change until the blockchain changes.
This also avoids tx parsing when cached.
2018-06-24 11:22:26 +01:00
einsteinsfool
7cdd147da5 Changed URLs to HTTPS 2018-06-23 21:15:29 +02:00
moneromooo-monero
34de7bc267 device_ledger: fix buffer underflow on bad data from device 2018-06-23 15:43:31 +01:00
moneromooo-monero
41e9cab4e1 device: misc cleanup
use snprintf "just in case" where appropriate
consistently use unsigned for temp values
pass std::string by const ref rather than by value
add length check (which can't happen in practice) for memcpy
2018-06-23 15:28:48 +01:00
moneromooo-monero
3b4dec2d12 device_ledger: fix potential buffer overflow from bad size calc 2018-06-23 15:28:45 +01:00
moneromooo-monero
9d7f6e6089 simplewallet: init trusted daemon flag to false when autodetecting 2018-06-23 09:53:50 +01:00
moneromooo-monero
df9d50a8a4 wallet2: fix read buffer overflow in import_key_images 2018-06-23 09:22:20 +01:00
ordtrogen
d45cd37c53 fix typos in language files and rpc_args.cpp 2018-06-21 19:14:14 +02:00
moneromooo-monero
3e46db97e5 rpc: add a non binary get_transaction_pool_hashes RPC 2018-06-21 09:02:42 +01:00
stoffu
46e90b7780 Wallet API: add support for wallet creation from hardware device 2018-06-21 12:36:27 +09:00
stoffu
248310de06 Move parse_subaddress_lookahead() from simplewallet.cpp to util.cpp 2018-06-21 12:36:17 +09:00
stoffu
8fc0cdb96f wallet2: lower default for subaddress lookahead when restoring with hardware 2018-06-21 12:35:23 +09:00
stoffu
66df13a58b wallet-rpc.getaddress: throw if index is out of bound 2018-06-21 10:49:03 +09:00
moneromooo-monero
e5592c4bab rpc: add blockchain disk size to getinfo
This should help new nodes predict how much disk space will be
needed for a full sync
2018-06-20 23:48:37 +01:00
luigi1111
ffab67004c Merge pull request #3784
261ee56 don't limit miner threads in wallet (cryptochangements34)
2018-06-20 15:15:19 -05:00
cryptochangements34
7bf99a2376 fix string handling for donation message 2018-06-20 15:57:23 -04:00
luigi1111
9a3712541e Merge pull request #3939
62c8c07 wallet: do not log by default if we're not asked to log to console (moneromooo-monero)
2018-06-20 14:52:55 -05:00
luigi1111
34c57d071f Merge pull request #3938
01cc978 ringct: remove an unnecessary scalarmultBase in zeroCommit (moneromooo-monero)
2018-06-20 14:51:31 -05:00
luigi1111
0a24673fef Merge pull request #3933
2861289 readme - explain building master vs. release (Gingeropolous)
2018-06-20 14:46:04 -05:00
luigi1111
3721298cf6 Merge pull request #3932
8962f00 simplewallet: add optional trusted/untrusted argument to set_daemon (moneromooo-monero)
941a608 util: consider Tor/I2P addresses to be non local (moneromooo-monero)
2b3357e README: mention --untrusted-daemon (moneromooo-monero)
2018-06-20 14:44:54 -05:00
luigi1111
306365d4e6 Merge pull request #3927
5f00df3 Update Readme to indicate recommended version (Gingeropolous)
2018-06-20 14:42:38 -05:00
luigi1111
7935bc5f6b Merge pull request #3924
afed978 Fixes #3645: error on freebsd lambda return values forced to std::string (rockhouse)
2018-06-20 14:41:05 -05:00
luigi1111
9eb51887b0 Merge pull request #3919
ace2eda blockchain: pop forked blocks only when DB is not read-only (stoffu)
2018-06-20 14:39:09 -05:00
luigi1111
5a221c0e48 Merge pull request #3904
4f3a4fb blockchain: return error when requesting non existent output (moneromooo-monero)
2018-06-20 14:33:08 -05:00
luigi1111
81a2ff768b Merge pull request #3903
2b0c632 tx_pool: hold off parsing a tx blob till we actually need it (moneromooo-monero)
2018-06-20 14:31:33 -05:00
luigi1111
c678413a89 Merge pull request #3902
f8dd433 epee: fix detection of 172.16.0.0/172.31.255.255 local IP range (moneromooo-monero)
5db9e3c unit_tests: add tests for local IP range detection (moneromooo-monero)
2018-06-20 14:22:44 -05:00
luigi1111
51cdd76bbd Merge pull request #3897
63d0ab0 mlog: --max-log-files to set the max number of rotated log files (stoffu)
2018-06-20 14:19:30 -05:00
luigi1111
034b0c7adb Merge pull request #3896
6b8568e simplewallet.sign_transfer: rename export to export_raw, add help message (stoffu)
2018-06-20 14:13:59 -05:00
luigi1111
17fd575fe4 Merge pull request #3888
1aae39d daemon: fix readline interfering with std::cerr usage (moneromooo-monero)
2018-06-20 14:12:18 -05:00
luigi1111
36aeaa7545 Merge pull request #3757
6f9260e handle optional miner params better (cryptochangements34)
2018-06-20 14:09:42 -05:00
luigi1111
70f932fe0a Merge pull request #3880
91663fc adding win building details. (k1nghat)
2018-06-20 14:08:19 -05:00
luigi1111
4aa832e534 Merge pull request #3702
099bb83 easylogging++: cached allowed categories (moneromooo-monero)
2018-06-20 14:02:12 -05:00
stoffu
0c4148845b miner: show id and height when a block is found 2018-06-20 12:08:40 +09:00
stoffu
bd9e4e3149 daemon: show a bit more info with print_block 2018-06-20 12:04:03 +09:00
moneromooo-monero
2a19697bd4 wallet2: fix double header in unsigned transfer file 2018-06-19 22:30:02 +01:00
luigi1111
896512b2b6 Merge pull request #3878
5a412b7 disable file size sanity check when loading the wallet cache (moneromooo-monero)
2018-06-19 12:57:59 -05:00
luigi1111
cb130c7590 Merge pull request #3861
de1ffe0 p2p: warn when no incoming connections are seen for a while (moneromooo-monero)
2018-06-19 12:56:31 -05:00
luigi1111
26dd216c67 Merge pull request #3852
26c569d add disclaimer about 3rd party packages (jtgrassie)
2018-06-19 12:55:17 -05:00
luigi1111
9a3bd88b9f Merge pull request #3851
a87980f fix build with GCC 8.1.0 (moneromooo-monero)
2018-06-19 12:51:13 -05:00
luigi1111
61f3916b4a Merge pull request #3844
bdf5a3a Fix PCSC compilation under windows (cslashm)
f17383a Fix CMAKE config for PCSC in order to avoid msys DLL dependencies (cslashm)
2018-06-19 12:49:30 -05:00
luigi1111
1db8cf0db9 Merge pull request #3835
d44d19c Fixed for compilation in big endian PPC. (nioroso-x3)
2018-06-19 12:46:39 -05:00
luigi1111
d841339b09 Merge pull request #3829
4764929 use deterministic viewkey if not supplied (cryptochangements34)
2018-06-19 12:43:10 -05:00
luigi1111
50bc95519e Merge pull request #3828
16e209e core: lock incoming tx lock when checking the txpool and chain (moneromooo-monero)
2018-06-19 12:41:07 -05:00
luigi1111
f62399b88d Merge pull request #3821
558d05b epee: log type name when a container size check fails (moneromooo-monero)
a2566db object_sizes: add a few useful types (moneromooo-monero)
2018-06-19 12:39:12 -05:00
moneromooo-monero
1a526ed571 abstract_tcp_server2: restart async accept on error 2018-06-18 23:34:01 +01:00
moneromooo-monero
09f43b9a6b crypto: add a README pointing to the SUPERCOP licence 2018-06-18 21:28:08 +01:00
moneromooo-monero
5a2864c1fb simplewallet: fix delay when setting auto-refresh off 2018-06-18 21:05:42 +01:00
moneromooo-monero
6cb97076ce simplewallet: remove leftover global debug trace 2018-06-18 21:05:13 +01:00
luigi1111
cfd66dae4b Merge pull request #3691
db55263 threadpool: allow constructing an object, and misc tweaks (moneromooo-monero)
ce173cb core: remove threadpool dependency from header (moneromooo-monero)
3147468 unit_tests: add threadpool unit test (moneromooo-monero)
2018-06-17 22:04:39 -05:00
moneromooo-monero
5b5828fcec zmq_server: fix bind call when address and/or port are empty 2018-06-17 21:25:11 +01:00
luigi1111
9226acca4b Merge pull request #3804
89e51ec simple-wallet-cli: Add warnings about inaccurate balances to to watch-only wallet (jcktm)
2018-06-16 14:15:52 -05:00
luigi1111
fceb774344 Merge pull request #3798
f357210 Fix Typo (Rafficer)
2018-06-16 14:14:19 -05:00
luigi1111
4e7897e57c Merge pull request #3780
9c2a7b4 wallet-rpc: watch-only and cold wallet features added (ph4r05)
2018-06-16 14:12:57 -05:00
luigi1111
e3012444fb Merge pull request #3762
eb9f3a3 check_spend_proof (itssteven)
2018-06-16 14:10:11 -05:00
luigi1111
7af0b7fffc Merge pull request #3735
4812c06 add .load() to make Boost 1.67 happy with its new is_integral check (Teutone)
2018-06-16 14:07:25 -05:00
luigi1111
fb2b16f10a Merge pull request #3732
fa0839f Ensure m_timestamps has the correct number for computing difficulty. (thaerkh)
2018-06-16 14:05:53 -05:00
luigi1111
abfff766e5 Merge pull request #3737
1590183 p2p: fix fallback seed node usage (moneromooo-monero)
2018-06-16 14:04:01 -05:00
luigi1111
b3363e8e0a Merge pull request #3726
b5cb1bc blockchain: avoid exception if asked for a block we do not have (moneromooo-monero)
2018-06-16 14:02:56 -05:00
luigi1111
42e7f31613 Merge pull request #3725
9cc0d42 connection_context: remove state_ prefix from state names (moneromooo-monero)
d9d002c daemon: print peer state in sync_info (moneromooo-monero)
2018-06-16 14:01:12 -05:00
luigi1111
53b5d03b82 Merge pull request #3708
a7ce392 Updating the FindReadline CMake hint to search in homebrew's default directory (gene-telligent)
2018-06-16 13:57:54 -05:00
luigi1111
6447dc72e9 Merge pull request #3652
b43b9a1 wallet-rpc: added IPs to error logging in simple_http_connection_handler (jcktm)
2018-06-16 13:54:10 -05:00
luigi1111
aada0670ba Merge pull request #3538
f4e3295 simplewallet: set_ring can now take a file with rings (moneromooo-monero)
2018-06-16 13:51:57 -05:00
Jethro Grassie
26c569d6f6 add disclaimer about 3rd party packages
Demoted the 3rd party maintained package installs to after compiling
from repository source and removed the broken Homebrew package
instructions.
2018-06-16 09:39:28 -04:00
Howard Chu
b85acb4cb8 Fix RPC crashes that didn't check for an open wallet 2018-06-15 20:18:41 +01:00
moneromooo-monero
bc443494f3 wallet2: fix out of sync account tag cache
This would cause crashes when trying to tag an account that was
just created
2018-06-15 20:18:12 +01:00
stoffu
149da420e9 db_lmdb: enable batch transactions by default 2018-06-14 20:56:11 +02:00
moneromooo-monero
8db23df581 wallet: on first refresh, start off with a quantized height
for privacy reasons, so an untrusted node can't easily track
wallets from IP address to IP address, etc. The granularity
is 1024 blocks, which is about a day and a half.
2018-06-13 22:44:27 +01:00
jcktm
b43b9a1304 wallet-rpc: added IPs to error logging in simple_http_connection_handler 2018-06-13 15:41:51 +10:00
stoffu
63d0ab09b5 mlog: --max-log-files to set the max number of rotated log files 2018-06-13 12:44:27 +09:00
stoffu
798dfcfe79 wallet: allow unspendable unmixable outputs to be discarded 2018-06-13 11:56:40 +09:00
luigi1111
62f3f0480a Merge pull request #3701
3ca267b cn_deserialize: dump additional tx pubkeys (moneromooo-monero)
2018-06-12 12:24:20 -05:00
luigi1111
a915d49307 Merge pull request #3700
efcecb4 mnemonics: add some logs to help debug failures (moneromooo-monero)
2018-06-12 12:23:12 -05:00
luigi1111
6be2516140 Merge pull request #3687
6b13976 blockchain: log in DEBUG when a block is found, and where (moneromooo-monero)
2018-06-12 12:22:12 -05:00
luigi1111
41d04a87b2 Merge pull request #3648
6f36cf0 Improve 'show_transfers' date formatting (ryan-ronnander)
2018-06-12 12:18:17 -05:00
luigi1111
ed139efc5d Merge pull request #3643
e2b7558 handle improper log levels (cryptochangements34)
2018-06-12 12:13:07 -05:00
stoffu
0a5292c339 wallet2: use decoded amount when reporting repeated output key 2018-06-13 01:06:44 +09:00
stoffu
25c15dca5c wallet2: use correct fee for split txes 2018-06-12 12:06:51 +09:00
moneromooo-monero
2d10830cfb db_ldmb: print db version when complaining about incompatibility 2018-06-11 17:57:02 +01:00
Jean Pierre Dudey
b628503bad Remove old logic saved in comments.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-06-11 09:36:05 -04:00
stoffu
0cf80baea4 net_node: resolve host for node addresses given via command line flags 2018-06-11 20:17:13 +09:00
stoffu
08b85a8e00 cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X 2018-06-11 20:17:02 +09:00
moneromooo-monero
55c7fb87a9 epee: adaptive connection timeout system
a connection's timeout is halved for every extra connection
from the same host.

Also keep track of when we don't need to use a connection
anymore, so we can close it and free the resource for another
connection.

Also use the longer timeout for non routable local addresses.
2018-06-10 19:39:38 +01:00
stoffu
362f5e6eb8 simplewallet: don't confirm missing payment ID when sending to only subaddresses 2018-06-10 20:00:59 +09:00
moneromooo-monero
03096150c6 device_ledger: fix bad memory access on connect error 2018-06-09 20:52:34 +01:00
moneromooo-monero
2d5921eefa blockchain: avoid duplicate db query for height 2018-06-09 19:51:27 +01:00
moneromooo-monero
1789b76b5d cryptonote_protocol_handler: log when dropping a peer 2018-06-09 19:27:21 +01:00
moneromooo-monero
87665281ea epee: fallback to a counter if gmtime fails when rotating logs 2018-06-09 19:23:48 +01:00
moneromooo-monero
4ecf71405f epee: fix include for ofstream 2018-06-09 19:19:27 +01:00
moneromooo-monero
3381b6517e abstract_tcp_server2: fix busy calling of idle IO service
This would make monerod use 100% CPU when running with torsocks
without Tor running
2018-06-09 12:38:29 +01:00
moneromooo-monero
f4e329583e simplewallet: set_ring can now take a file with rings 2018-06-09 00:28:31 +01:00
moneromooo-monero
948c48271a simplewallet: grammar fix in warning message 2018-06-08 21:28:11 +01:00
luigi1111
25e7a7d96f Merge pull request #3340
284fe64 db_lmdb: warn about slowness when running off a spinning disk (moneromooo-monero)
2018-06-08 15:16:59 -05:00
Gingeropolous
9ddb07fcc4 update readme to include debian one liner for deps
update readme to include debian one liner for deps , because who wants to select all of those individually
2018-06-08 16:13:51 -04:00
Gingeropolous
f61fe2ef28 Update readme to include pcslite dependency
Update readme to include pcslite dependency
2018-06-08 16:05:50 -04:00
moneromooo-monero
284fe6438d db_lmdb: warn about slowness when running off a spinning disk 2018-06-08 20:59:02 +01:00
luigi1111
2619d966c6 Merge pull request #3908
827ca3f bump version for 0.12.2 point release (fluffypony)
95ccf50 update checkpoints.dat for point release (fluffypony)
2018-06-08 14:53:54 -05:00
luigi1111
13d73d9ed6 Merge pull request #3604
54d9fff gtest: Fix compilation on MinGW with pthread /googletest#621 (stoffu)
2018-06-08 14:51:32 -05:00
luigi1111
6884db7b31 Merge pull request #3599
8787fd8 WalletApi: publicMultisigSignerKey method (naughtyfox)
2018-06-08 14:45:46 -05:00
luigi1111
00635bd68b Merge pull request #3598
b21bc00 Wallet: added methods to sign and verify arbitrary message with multisig public signer's key (libwallet & wallet api) (naughtyfox)
2018-06-08 14:40:06 -05:00
luigi1111
112f3678bc Merge pull request #3887
14f0d38 Incorporate Window debug build targets (philkode)
2018-06-08 14:34:01 -05:00
luigi1111
22c8730261 Merge pull request #3450
3b941be core: add get_earliest_ideal_height_for_version() (stoffu)
2018-06-08 14:31:49 -05:00
luigi1111
5321769b65 Merge pull request #3444
a79fc21 hardfork: fix get_earliest_ideal_height_for_version() to support non-existent versions (stoffu)
7e30ead unit_tests/hardfork: add tests for check_for_height() (stoffu)
98cf62c hardfork: fix get_next_version() (stoffu)
0321d1a unit_tests/hardfork: add tests for get_voting_info() (stoffu)
2018-06-08 14:29:38 -05:00
luigi1111
9e5f2738fd Merge pull request #3428
b26cd26 blockchain_utilities: do not link against unneeded p2p lib (moneromooo-monero)
66f4700 blockchain_blackball: add incremental mode (moneromooo-monero)
e09710f blockchain_blackball: also blackball N N-sized duplicate rings (moneromooo-monero)
2018-06-08 14:26:38 -05:00
luigi1111
03b4cca6c2 Merge pull request #3910
f2cb56a protocol: drop (and increase fails) if most blocks hashes are invalid (moneromooo-monero)
2018-06-07 12:24:02 -05:00
luigi1111
5bfe03804c Merge pull request #3892
d344736 rpc: convert distribution to cumulative after caching (moneromooo-monero)
2018-06-07 12:22:04 -05:00
luigi1111
8a1f0d7d13 Merge pull request #3940
f24cbc5 blockchain: fix deadlock with the difficulty cache (moneromooo-monero)
2018-06-07 12:19:43 -05:00
luigi1111
48fcf76be9 Merge pull request #3911
f0322a0 blockchain: demote a hash-of-hashes validation warning to debug (moneromooo-monero)
2018-06-07 12:17:06 -05:00
luigi1111
e1a940806a Merge pull request #3899
ab87e7f rpc: the cache is still for non cumulative on that branch (moneromooo-monero)
2018-06-07 12:15:13 -05:00
luigi1111
1af890287b Merge pull request #3890
f80b157 wallet2: don't ask for pruned txes yet, we still parse the entire tx (moneromooo-monero)
2018-06-07 12:12:28 -05:00
luigi1111
e69849e979 Merge pull request #3857
8a6c081 rapidjson: remove outdated in-tree, use submodule (anonimal)
2018-06-07 12:07:13 -05:00
moneromooo-monero
2bb2c1b9d7 password: flush cout when prompting for password without newline 2018-06-07 13:48:30 +01:00
moneromooo-monero
d7a6b72c15 wallet2: fix bulletproof cold signing
Cold signing was always using Borromean range proofs, causing
a larger tx, and an incorrect fee
2018-06-07 12:29:30 +01:00
moneromooo-monero
c367609447 blockchain_import: warn+delay about using --dangerous-unverified-import
This is the new name for --guard-against-pwnage 0
2018-06-07 06:47:00 +01:00
moneromooo-monero
8cc46069ac snap: strip metadata from icon.png
Reported to "contain[s] an embedded color calibration (ICC) profile
which is copyright Hewlett Packard but lack license"
2018-06-06 15:29:18 +01:00
stoffu
bf26920f27 wallet2: fix get_approximate_blockchain_height for stagenet 2018-06-06 20:33:01 +09:00
moneromooo-monero
f24cbc5245 blockchain: fix deadlock with the difficulty cache 2018-06-06 10:37:51 +01:00
moneromooo-monero
62c8c07c47 wallet: do not log by default if we're not asked to log to console
This means monero-wallet-rpc still does, but the user level program
does not.
2018-06-06 10:15:13 +01:00
moneromooo-monero
01cc978722 ringct: remove an unnecessary scalarmultBase in zeroCommit 2018-06-06 10:14:36 +01:00
cryptochangements34
4764929ecb use deterministic viewkey if not supplied 2018-06-05 19:32:03 -04:00
moneromooo-monero
d81e042306 tx_pool: initialize bitflags padding since it gets written to storage
Avoids valgrind reporting uninitialized data usage
2018-06-05 20:26:44 +01:00
moneromooo-monero
2b3357ee98 README: mention --untrusted-daemon
when connecting the wallet to a daemon on a tor hidden service
2018-06-05 16:55:27 +01:00
moneromooo-monero
941a608d52 util: consider Tor/I2P addresses to be non local 2018-06-05 16:55:23 +01:00
moneromooo-monero
8962f0032f simplewallet: add optional trusted/untrusted argument to set_daemon
Otherwise the previous daemon's trustedness would carry over.
If not specified, the local address check is performed again.
2018-06-05 16:55:20 +01:00
Gingeropolous
2861289efd readme - explain building master vs. release
Update readme to explain and warn about building master, and encourage (via example) to build release branches.  

Also updated instance where example build instructions had 0.11.0 as the most recent release.
2018-06-05 08:31:55 -04:00
Gingeropolous
5f00df3cf9 Update Readme to indicate recommended version
... is v0.12.2.0
2018-06-04 22:32:43 -04:00
stoffu
ace2edacb6 blockchain: pop forked blocks only when DB is not read-only 2018-06-04 20:59:50 +09:00
S
afed9787cd Fixes #3645: error on freebsd lambda return values forced to std::string 2018-06-04 13:44:17 +02:00
moneromooo-monero
f2cb56a2eb protocol: drop (and increase fails) if most blocks hashes are invalid 2018-06-03 17:34:08 +01:00
Dusan Klinec
9c2a7b4638 wallet-rpc: watch-only and cold wallet features added
- unsigned_txset, signed_txset in transfer / submit_transfer / sign_transfer
- export_outputs, import_outputs

Squashed commits:
[f4d9f3d4] wallet-rpc: do_not_relay removed from submit_transfer
[5b16a86f] wallet-rpc: review-fix - method signature changes, renaming
[b7fbb10a] wallet-rpc: naming fixes (unsigned vs signed), consts renamed
[8c7d2727] wallet-rpc: sign_transfer added
[481d024a] wallet2: sign_tx splitted to work with strings and structs, more granular
[2a474db9] wallet-rpc: wallet2::load_unsigned_tx split to load from str, file
[b1e3a018] wallet-rpc: review fix, load_tx_from_str variable rename
[1f6373be] wallet-rpc: review fix: save_tx_to_{str,file}
[2a08eafc] wallet-rpc: review comments fixes
- redundant this removed from wallet2.cpp
- load_tx_from_str, load_tx_from_file
[43498052] wallet-rpc: submit_transfer added
[9c45d1ad] wallet-rpc: watch_only check, return unsigned_txset
[62831396] wallet2: added string variants to load_tx, save_tx

- analogously to save_multisig_tx
- required for monero-wallet-rpc to support watch-only wallet
2018-06-03 13:21:00 +02:00
moneromooo-monero
f0322a083a blockchain: demote a hash-of-hashes validation warning to debug
This data comes from untrusted peers, and validation failures
are therefore normal.
2018-06-02 23:48:12 +01:00
Riccardo Spagni
95ccf508cd update checkpoints.dat for point release 2018-06-02 14:31:37 +02:00
Riccardo Spagni
827ca3fd3b bump version for 0.12.2 point release 2018-06-02 14:31:33 +02:00
moneromooo-monero
2b0c632f32 tx_pool: hold off parsing a tx blob till we actually need it 2018-06-02 09:17:41 +01:00
moneromooo-monero
4f3a4fb701 blockchain: return error when requesting non existent output
avoids RPC thread dying, causing the wallet to timeout
2018-06-01 21:52:04 +01:00
moneromooo-monero
5db9e3c28e unit_tests: add tests for local IP range detection 2018-06-01 21:47:25 +01:00
moneromooo-monero
f8dd433110 epee: fix detection of 172.16.0.0/172.31.255.255 local IP range 2018-06-01 21:47:21 +01:00
moneromooo-monero
ab87e7fdae rpc: the cache is still for non cumulative on that branch 2018-06-01 09:05:47 +01:00
stoffu
6b8568e9a1 simplewallet.sign_transfer: rename export to export_raw, add help message 2018-06-01 09:38:14 +09:00
luigi1111
8a7b3ff138 Merge pull request #3866
6a58c88 console_handler: fix start_default_console use of prompt parameter (moneromooo-monero)
885a117 http_protocol_handler: speedup newline discarding (moneromooo-monero)
4d15864 abstract_tcp_server2: timeout on RPC connections (moneromooo-monero)
dfd36bb http_protocol_handler: limit the number of starting newlines (moneromooo-monero)
2018-05-31 14:54:55 -05:00
luigi1111
503d2693fd Merge pull request #3640
f36132a wallet cli/rpc: terminate execution with code 0 when --help or --version is given (stoffu)
2018-05-31 14:44:54 -05:00
luigi1111
3ee6a1b706 Merge pull request #3635
c1bda09 wallet_rpc_server: add a get_version RPC (moneromooo-monero)
2018-05-31 14:43:18 -05:00
luigi1111
b6eb7484d1 Merge pull request #3592
90a16b1 crypto: fix initialization order issue with random mutex (moneromooo-monero)
6a61f52 unit_tests: add ringdb unit tests (moneromooo-monero)
2018-05-31 14:41:17 -05:00
luigi1111
40dd59fb8e Merge pull request #3583
372ffeb Add a space in mining to testnet/stagenet string (cryptochangements34)
2018-05-31 14:39:28 -05:00
luigi1111
737712c0c6 Merge pull request #3561
353e9c0 Core RPC: optionally add POW hash to block_header_response (stoffu)
2018-05-31 14:38:01 -05:00
luigi1111
c8378933ae Merge pull request #3543
6fc97c9 blockchain_usage: don't divide by 0 when there is nothing to process (moneromooo-monero)
2018-05-31 14:36:33 -05:00
luigi1111
3a373c3d3a Merge pull request #3489
47fdb74 WalletApi: getMultisigInfo entry for gui wallets... (naughtyfox)
47fdb74 Refactored: work with wallet api statuses to make setting and getting operations atomic along with error strings (naughtyfox)
2018-05-31 14:34:34 -05:00
luigi1111
64adb566e5 Merge pull request #3499
0da5d37 wallet: fix shared ring db path (stoffu)
2018-05-31 14:27:13 -05:00
luigi1111
9fde7aafe8 Merge pull request #3882
b665bab rpc: fix get_output_distribution cache for the cumulative case (moneromooo-monero)
2018-05-31 14:25:57 -05:00
moneromooo-monero
d3447364d0 rpc: convert distribution to cumulative after caching
This avoids double conversion on a later cache hit
2018-05-31 16:54:57 +01:00
moneromooo-monero
f80b1571c6 wallet2: don't ask for pruned txes yet, we still parse the entire tx 2018-05-31 16:46:58 +01:00
cslashm
f17383afc2 Fix CMAKE config for PCSC in order to avoid msys DLL dependencies
merge of PR #3886
2018-05-31 15:30:16 +02:00
moneromooo-monero
1aae39dff2 daemon: fix readline interfering with std::cerr usage
Once readline is initialized, std::cerr's operator<< will
output a 0xff byte for unknown reasons.
2018-05-31 12:15:06 +01:00
philkode
14f0d38cd6 Incorporate Window debug build targets 2018-05-31 10:49:24 +01:00
stoffu
0da5d37bf3 wallet: fix shared ring db path 2018-05-31 08:16:45 +09:00
luigi1111
9bc8f76924 Merge pull request #3525
66a659b blockchain: add scope guard to waiter for threaded txv1 verification (stoffu)
2018-05-30 16:08:50 -05:00
luigi1111
882ce8f7b1 Merge pull request #3522
52a4b70 Add key for Sarang Noether (SarangNoether)
2018-05-30 16:03:53 -05:00
luigi1111
f0f3157183 Merge pull request #3504
a0a810c performance_tests: fix subaddress expansion test not expanding (moneromooo-monero)
2018-05-30 15:57:42 -05:00
luigi1111
f03bf36c85 Merge pull request #3491
c8cb5fc exit if specified wallet file doesn't exist (cryptochangements34)
2018-05-30 15:55:37 -05:00
luigi1111
d735f9b24a Merge pull request #3442
8df202e Updates italian localizations. (hrumag)
2018-05-30 15:51:32 -05:00
luigi1111
daeb3a974c Merge pull request #3433
b55c14c fix sha256sum check, which requires two spaces. added set -ex to catch this, and other, errors in the future. (cornfeedhobo)
2018-05-30 15:49:33 -05:00
luigi1111
a7ea14dc6a Merge pull request #3876
740da1b core: fix automatic safe db sync mode switching (moneromooo-monero)
e942d34 protocol: do not switch to unsafe sync mode for just a few blocks (moneromooo-monero)
2018-05-30 15:46:13 -05:00
luigi1111
4267a0bb51 Merge pull request #3731
a66f152 Use median timestamp if current time renders a block invalid. (thaerkh)
2018-05-30 15:44:25 -05:00
moneromooo-monero
b665bab1d6 rpc: fix get_output_distribution cache for the cumulative case
The distribution was not converted to cumulative after a cache hit
2018-05-30 15:03:36 +01:00
moneromooo-monero
e09710f76e blockchain_blackball: also blackball N N-sized duplicate rings
These are unlikely to happen at random, but Wijaya et al made
a paper about it, so people might try it on purpose now (and it
turns out it's easy to add anyway)
2018-05-30 11:45:20 +01:00
moneromooo-monero
66f4700f57 blockchain_blackball: add incremental mode 2018-05-30 11:45:16 +01:00
moneromooo-monero
b26cd26333 blockchain_utilities: do not link against unneeded p2p lib 2018-05-30 11:45:13 +01:00
stoffu
0321d1ac79 unit_tests/hardfork: add tests for get_voting_info() 2018-05-30 09:49:58 +09:00
stoffu
98cf62cc45 hardfork: fix get_next_version() 2018-05-30 09:49:57 +09:00
stoffu
7e30eadb32 unit_tests/hardfork: add tests for check_for_height() 2018-05-30 09:49:55 +09:00
stoffu
a79fc219b7 hardfork: fix get_earliest_ideal_height_for_version() to support non-existent versions 2018-05-30 09:49:52 +09:00
luigi1111
c534fe8d19 Merge pull request #3251
b9389e5 db_lmdb: save pruned and prunable tx data separately (moneromooo-monero)
2018-05-29 17:56:26 -05:00
luigi1111
c4907d24cb Merge pull request #3477
3f5fb6f simplewallet: add --untrusted-daemon option (moneromooo-monero)
2018-05-29 13:01:50 -05:00
luigi1111
8e1b322a15 Merge pull request #3470
ad19f86 don't show error twice when starting simplewallet (cryptochangements34)
2018-05-29 12:59:58 -05:00
luigi1111
ed72f35e9a Merge pull request #3446
a6b8d3f tx_pool: remove old comment from fill_block_template() (stoffu)
2018-05-29 12:57:43 -05:00
luigi1111
764340d112 Merge pull request #3420
a6a54fa blockchain: cache difficulty for next block (moneromooo-monero)
2018-05-29 12:55:19 -05:00
luigi1111
5b189ce2a8 Merge pull request #3405
80d2f80 wallet2: Update function parameter documentation (leonklingele)
2018-05-29 12:52:43 -05:00
luigi1111
08819705fc Merge pull request #3847
49f4645 bump version for point release (fluffypony)
6715c90 update checkpoints for point release (fluffypony)
45975fd update checkpoints (fluffypony)
2018-05-29 12:48:35 -05:00
k1nghat
91663fcc00 adding win building details.
cloning and extra build details included.
2018-05-29 12:20:35 -05:00
moneromooo-monero
5a412b7a3f disable file size sanity check when loading the wallet cache 2018-05-28 14:58:22 +01:00
moneromooo-monero
e942d34d54 protocol: do not switch to unsafe sync mode for just a few blocks 2018-05-28 14:36:12 +01:00
moneromooo-monero
740da1ba95 core: fix automatic safe db sync mode switching 2018-05-28 12:14:04 +01:00
stoffu
a6b8d3fee1 tx_pool: remove old comment from fill_block_template() 2018-05-28 13:41:39 +09:00
moneromooo-monero
dfd36bbebb http_protocol_handler: limit the number of starting newlines 2018-05-27 09:43:54 +01:00
moneromooo-monero
4d15864728 abstract_tcp_server2: timeout on RPC connections 2018-05-26 20:18:36 +01:00
moneromooo-monero
885a117ddb http_protocol_handler: speedup newline discarding 2018-05-26 20:18:33 +01:00
moneromooo-monero
6a58c88e2d console_handler: fix start_default_console use of prompt parameter
It had not been updated to the function type change
2018-05-26 20:18:30 +01:00
moneromooo-monero
a87980f6c2 fix build with GCC 8.1.0 2018-05-26 14:54:10 +01:00
moneromooo-monero
de1ffe07b1 p2p: warn when no incoming connections are seen for a while 2018-05-26 14:37:07 +01:00
anonimal
8a6c081df7 rapidjson: remove outdated in-tree, use submodule
Includes ~2 years worth of fixes including security and build.

Note: this pulls directly from master, not a release branch/tag. See
https://github.com/Tencent/rapidjson/issues/1265
2018-05-25 04:50:20 +00:00
moneromooo-monero
b9389e582e db_lmdb: save pruned and prunable tx data separately
This bumps DB version to 2, migration code will run for v1 DBs
2018-05-23 22:48:12 +01:00
Riccardo Spagni
45975fd8eb update checkpoints 2018-05-23 21:20:15 +02:00
Riccardo Spagni
6715c90667 update checkpoints for point release 2018-05-23 21:20:10 +02:00
Riccardo Spagni
49f4645f1d bump version for point release 2018-05-23 21:20:05 +02:00
cslashm
bdf5a3ad3f Fix PCSC compilation under windows
PR3843 based on release-v0.12 => rebased on master
2018-05-23 10:22:55 +02:00
Riccardo Spagni
a2cef8cba4 Merge pull request #3800
9317bce9 crypto: more places needing fixing for GCC 8.1 (moneroexamples)
4a72d595 chacha: fix build with GCC 8.1 (moneromooo-monero)
2018-05-21 21:58:49 +02:00
Riccardo Spagni
0889d2f85e Merge pull request #3842
64f82e04 unit_tests: fix build after get_output_didstribution signature change (moneromooo-monero)
2018-05-21 21:57:30 +02:00
moneromooo-monero
64f82e0481 unit_tests: fix build after get_output_didstribution signature change 2018-05-21 20:49:02 +01:00
Riccardo Spagni
f794d3b3df Merge pull request #3787
ce63ab09 blockchain: invalidate misc caches when popping blocks (moneromooo-monero)
2018-05-21 21:36:38 +02:00
Riccardo Spagni
e6d45d2db6 Merge pull request #3782
18cd6837 Fix mdb_load append option (hyc)
97050326 ITS#8831 move flag init into readhdr (hyc)
2018-05-21 21:36:02 +02:00
Riccardo Spagni
709658d166 Merge pull request #3832
cb9c7972 Fix output shuffling for multisig (stoffu)
2018-05-21 20:57:52 +02:00
Riccardo Spagni
4dae04dde2 Merge pull request #3837
18761b37 simplewallet: use correct unit for fee command (stoffu)
2018-05-21 20:57:07 +02:00
Riccardo Spagni
d6cefbd1b8 Merge pull request #3745
b13bddc3 Wallet API: allow log path to be non-default & console output to be configurable (stoffu)
2018-05-21 20:56:20 +02:00
Riccardo Spagni
2a1e23e087 Merge pull request #3814
5f8ffca3 speed up get_output_distribution (and precalc common case) (moneromooo-monero)
2018-05-21 20:55:02 +02:00
moneromooo-monero
5f8ffca34d speed up get_output_distribution (and precalc common case) 2018-05-21 19:51:58 +01:00
Riccardo Spagni
2f5506daf8 Merge pull request #3830
29fbaeaa daemon: request unpruned transactions for print_tx (moneromooo-monero)
2018-05-21 20:46:57 +02:00
Riccardo Spagni
73a45e98ad Merge pull request #3765
b6a76f76 Update readme to include link to announcement list (Gingeropolous)
2018-05-21 20:46:13 +02:00
Riccardo Spagni
791da4343c Merge pull request #3749
872cb4ef blockchain: pop top if block version disagrees with the ideal fork version (stoffu)
2018-05-21 20:45:35 +02:00
Riccardo Spagni
2906a24179 Merge pull request #3809
b88c9a00 unit_tests: set default data dir to the source tree at build time (moneromooo-monero)
2018-05-21 20:44:07 +02:00
Riccardo Spagni
ed22abb798 Merge pull request #3807
a5c98609 version.cmake: fix configuring version.cpp without git (moneromooo-monero)
2018-05-21 20:43:11 +02:00
Riccardo Spagni
81db197383 Merge pull request #3841
ff31611a Revert "Merge pull request #3775" (Riccardo Spagni)
2018-05-21 20:41:44 +02:00
Riccardo Spagni
ff31611a32 Revert "Merge pull request #3775"
This reverts commit 20ef37bbca, reversing
changes made to 40070a661f.
2018-05-21 20:30:31 +02:00
stoffu
18761b372f simplewallet: use correct unit for fee command 2018-05-20 23:16:31 +09:00
moneromooo-monero
3147468d35 unit_tests: add threadpool unit test 2018-05-20 12:06:10 +01:00
moneromooo-monero
ce173cbb5b core: remove threadpool dependency from header 2018-05-20 12:06:07 +01:00
moneromooo-monero
db55263b4c threadpool: allow constructing an object, and misc tweaks
use unsigned int to avoid having to range check negative numbers,
use const where possible, don't needlessly create empty objects,
use std::move where possible
2018-05-20 12:06:03 +01:00
stoffu
cb9c7972b6 Fix output shuffling for multisig 2018-05-20 09:38:41 +09:00
Judemir Ribeiro
d44d19ca79 Fixed for compilation in big endian PPC. "Everything is broken thought due to little endian logic." 2018-05-19 18:03:59 -04:00
moneromooo-monero
29fbaeaae5 daemon: request unpruned transactions for print_tx
instead of uninitialized
2018-05-19 00:04:46 +01:00
moneromooo-monero
16e209e08d core: lock incoming tx lock when checking the txpool and chain
This gets rid of an innocuous race trying to add the same tx
twice to the txpool
2018-05-18 09:39:56 +01:00
moneromooo-monero
a2566db09e object_sizes: add a few useful types 2018-05-17 10:40:11 +01:00
moneromooo-monero
558d05b47e epee: log type name when a container size check fails 2018-05-17 10:40:08 +01:00
moneromooo-monero
b88c9a003e unit_tests: set default data dir to the source tree at build time 2018-05-15 21:45:34 +01:00
moneromooo-monero
a5c98609a1 version.cmake: fix configuring version.cpp without git 2018-05-15 18:40:16 +01:00
jcktm
89e51ecd38 simple-wallet-cli: Add warnings about inaccurate balances to to watch-only wallet 2018-05-15 15:28:42 +10:00
Thaer Khawaja
a66f152f75 Use median timestamp if current time renders a block invalid. 2018-05-13 11:58:05 -07:00
moneroexamples
9317bce9ca crypto: more places needing fixing for GCC 8.1 2018-05-13 18:17:13 +01:00
moneromooo-monero
4a72d595a6 chacha: fix build with GCC 8.1 2018-05-13 18:17:11 +01:00
Rafficer
f357210c00 Fix Typo 2018-05-12 20:18:21 +02:00
Riccardo Spagni
4b728d7dd4 Merge pull request #3794
a58d9738 wallet2: consider 6 outputs or less to be unmixable from v7 (moneromooo-monero)
2018-05-10 17:22:58 -07:00
moneromooo-monero
a58d9738c9 wallet2: consider 6 outputs or less to be unmixable from v7 2018-05-10 21:19:33 +01:00
moneromooo-monero
b5cb1bc403 blockchain: avoid exception if asked for a block we do not have
This can happen if a peer tries to obtain the next span from other
peers if that span is needed for not downloaded yet. Also if the
peer maliciously requests a non existent block hash.
2018-05-09 14:03:07 +01:00
moneromooo-monero
ce63ab09db blockchain: invalidate misc caches when popping blocks
Might be a bit heavy handed, but conservative.
2018-05-09 09:10:56 +01:00
cryptochangements34
261ee5628b don't limit miner threads in wallet 2018-05-08 19:09:14 -04:00
Riccardo Spagni
52f6b33890 Merge pull request #3775
6f859e43 cryptonote: make sure outPk setup always happens (moneromooo-monero)
2018-05-08 09:59:28 +02:00
hyc
18cd6837b6 Fix mdb_load append option
Use MDB_CURRENT to avoid seeking to new key when appending DUPs.
Reinit cursor on new batch, if appending DUPs.
2018-05-08 06:29:13 +01:00
hyc
9705032618 ITS#8831 move flag init into readhdr
Avoid stomping on flags from 1st readhdr invocation
2018-05-08 06:13:21 +01:00
Gene Peters
a7ce392eef Updating the FindReadline CMake hint to search in homebrew's default directory 2018-05-07 14:44:38 -07:00
moneromooo-monero
6f859e4328 cryptonote: make sure outPk setup always happens 2018-05-07 19:21:52 +01:00
Gingeropolous
b6a76f76e7 Update readme to include link to announcement list
Added link to readme for https://lists.getmonero.org
2018-05-06 14:23:53 -04:00
itssteven
eb9f3a3294 check_spend_proof
My intention is to mitigate #3761 by returning "bad signature", rather than throwing an error, as the error is triggered inappropriately in the case of checking a different txid than the one used to create the signature, which causes issues for monerophp: https://github.com/monero-integrations/monerophp/issues/72 & my temp fix: https://github.com/monero-integrations/monerophp/pull/74
2018-05-06 17:42:27 +01:00
cryptochangements34
6f9260e38e handle optional miner params better 2018-05-06 12:28:57 -04:00
stoffu
872cb4efd8 blockchain: pop top if block version disagrees with the ideal fork version 2018-05-06 20:50:46 +09:00
Teutone
4812c062c5 add .load() to make Boost 1.67 happy with its new is_integral check 2018-05-05 21:44:28 +02:00
Riccardo Spagni
7ed94d3122 Merge pull request #3752
5f193847 ringct: do not show verification errors with default settings (moneromooo-monero)
2018-05-05 08:58:31 +02:00
moneromooo-monero
5f19384729 ringct: do not show verification errors with default settings 2018-05-04 08:27:55 +01:00
stoffu
b13bddc3c9 Wallet API: allow log path to be non-default & console output to be configurable 2018-05-04 10:21:25 +09:00
Thaer Khawaja
fa0839f2f5 Ensure m_timestamps has the correct number for computing difficulty. 2018-04-29 19:50:55 -07:00
Riccardo Spagni
6b9d9f56a1 Merge pull request #3719
3880bf39 cryptonote_protocol_handler.inl: remove span read just now that failed to pass some basic tests (stoffu)
da249fd5 cryptonote_protocol_handler.inl: fix return type mismatches (int vs bool) (stoffu)
2018-04-29 21:38:22 +02:00
Riccardo Spagni
88c78d1683 Merge pull request #3729
e3c68b90 README.md: mention building deps with -fPIC for static builds (moneromooo-monero)
2018-04-29 21:38:12 +02:00
moneromooo-monero
e3c68b9018 README.md: mention building deps with -fPIC for static builds 2018-04-29 20:06:19 +01:00
moneromooo-monero
1590183965 p2p: fix fallback seed node usage
Those were added to the seed nodes list even when they had already
been added. Moreover, the current index was not reset after they
were added, typically causing previous seeds to be used, and some
of those fallback seeds to not be tried.
2018-04-29 14:58:42 +01:00
Riccardo Spagni
07e55b0496 Merge pull request #3720
c1886155 unit_tests: fix build after get_output_didstribution signature change (moneromooo-monero)
2018-04-28 22:20:46 +02:00
moneromooo-monero
d9d002c3c1 daemon: print peer state in sync_info
It's often relevant
2018-04-28 19:56:39 +01:00
moneromooo-monero
9cc0d4220f connection_context: remove "state_" prefix from state names
It's redundant and makes it easier to print them in columns
2018-04-28 19:56:28 +01:00
moneromooo-monero
c1886155ed unit_tests: fix build after get_output_didstribution signature change 2018-04-28 18:02:58 +01:00
Riccardo Spagni
cd22cb807a Merge pull request #3709
82b05d50 Adding required library (dependency of boost::this_thread::sleep_for) (Gene Peters)
2018-04-28 17:02:22 +02:00
Riccardo Spagni
69b6f5b6a6 Merge pull request #3705
f9d0827b Fix broken interactive daemon 'limit' commands plus RPC calls (rbrunner7)
2018-04-28 17:02:08 +02:00
Riccardo Spagni
5bca8c6998 Merge pull request #3667
53a1962d epee: Drop deprecated Boost.Thread header (Jan Beich)
2018-04-28 17:01:32 +02:00
Riccardo Spagni
66e18cc92f Merge pull request #3703
18c2f6e2 mlog: fix setting no logs (moneromooo-monero)
2018-04-28 16:59:29 +02:00
Riccardo Spagni
26cae8f4f1 Merge pull request #3695
b1a9e97b slow-hash: fix memory leak for Windows /karbowanec#41 (aivve)
2018-04-28 16:59:02 +02:00
Riccardo Spagni
8c27f127ec Merge pull request #3692
7346a59c Build: update miniupnp submodule (anonimal)
2018-04-28 16:58:04 +02:00
Riccardo Spagni
2ab5b1a21f Merge pull request #3683
dad10775 Only log an error if fork version is higher AND is not known. (Thaer Khawaja)
2018-04-28 16:57:36 +02:00
Riccardo Spagni
93e76e14a2 Merge pull request #3685
ffeeefde speedup get_output_histogram for all amounts when min_count > 0 (moneromooo-monero)
2dae0f20 wallet2: add missing parameters to get_output_histogram (moneromooo-monero)
2018-04-28 16:56:22 +02:00
Riccardo Spagni
35299644b2 Merge pull request #3650
5bd7f760 import_multisig_info: fix sanity check crash in detach_blockchain (Mikhail Mitkevichl)
2018-04-28 16:54:37 +02:00
stoffu
3880bf396a cryptonote_protocol_handler.inl: remove span read just now that failed to pass some basic tests 2018-04-28 11:10:59 +09:00
stoffu
da249fd5ba cryptonote_protocol_handler.inl: fix return type mismatches (int vs bool) 2018-04-28 11:07:51 +09:00
Gene Peters
82b05d5054 Adding required library (dependency of boost::this_thread::sleep_for) 2018-04-25 21:02:54 -07:00
moneromooo-monero
18c2f6e21d mlog: fix setting no logs 2018-04-25 20:42:11 +01:00
moneromooo-monero
099bb830cf easylogging++: cached allowed categories
It turns out this can be fairly heavy when logging a lot
2018-04-25 20:39:46 +01:00
rbrunner7
f9d0827bba Fix broken interactive daemon 'limit' commands plus RPC calls 2018-04-25 21:37:10 +02:00
naughtyfox
b21bc00704 Wallet: added methods to sign and verify arbitrary message with multisig public signer's key (libwallet & wallet api) 2018-04-25 17:55:54 +03:00
moneromooo-monero
3ca267b546 cn_deserialize: dump additional tx pubkeys 2018-04-25 14:28:39 +01:00
moneromooo-monero
efcecb42f3 mnemonics: add some logs to help debug failures 2018-04-25 14:27:24 +01:00
aivve
b1a9e97b2d slow-hash: fix memory leak for Windows /karbowanec#41 2018-04-24 20:47:29 +09:00
anonimal
7346a59c75 Build: update miniupnp submodule
f21df05 was never supposed to be merged into the master branch.
fluffypony merged #3670 before #3668 was rebased and resolved.

Note: the cherry-picked commit hashes are now invalid because #3670
was merged before #3668 was rebased with the updated repo location.
2018-04-23 22:27:54 +00:00
moneromooo-monero
6b13976330 blockchain: log in DEBUG when a block is found, and where
Eases up debugging
2018-04-23 11:43:12 +01:00
moneromooo-monero
ffeeefde60 speedup get_output_histogram for all amounts when min_count > 0
This skips the vast majority of "dust" output amounts with just
one instance on the chain. Clocks in at 0.15% of the original
time on testnet.
2018-04-23 10:54:28 +01:00
moneromooo-monero
2dae0f203a wallet2: add missing parameters to get_output_histogram 2018-04-23 10:54:25 +01:00
Thaer Khawaja
dad1077577 Only log an error if fork version is higher AND is not known. 2018-04-22 17:26:44 -07:00
stoffu
f36132a837 wallet cli/rpc: terminate execution with code 0 when --help or --version is given 2018-04-22 11:48:44 +09:00
Mikhail Mitkevichl
5bd7f760e9 import_multisig_info: fix sanity check crash in detach_blockchain 2018-04-21 23:25:01 +03:00
Riccardo Spagni
8fdf645397 Merge pull request #3670
19e01378 Build: remove UPnP definition from snap (anonimal)
6b853980 Build: update CMake and p2p for in-tree miniupnp (anonimal)
859db52f CMake: update new location of in-tree miniupnpc (anonimal)
f21df05c Build: add miniupnp submodule (anonimal)
10685648 Build: remove in-tree miniupnpc (anonimal)
2018-04-21 22:01:54 +02:00
Riccardo Spagni
a429f06b18 Merge pull request #3579
0b88fff3 simplewallet: fix help message of sign_transfer (stoffu)
2018-04-21 21:58:52 +02:00
Riccardo Spagni
a3a617f35f Merge pull request #3576
f82c10dc WalletManagerImpl: reuse existing connection to daemon instead of reconnectivng every time (stoffu)
2018-04-21 21:58:10 +02:00
Riccardo Spagni
6189a775b0 Merge pull request #3636
998c1461 daemon: read config file before reading any other args (stoffu)
2018-04-21 21:57:31 +02:00
Riccardo Spagni
bcb71797c8 Merge pull request #3633
f914df84 device: add a one off override keyword where appropriate (moneromooo-monero)
2018-04-21 21:55:44 +02:00
Riccardo Spagni
7e98e9d7ce Merge pull request #3630
51b511be simplewallet: add version command (moneromooo-monero)
35d1269f daemon: add a version command (moneromooo-monero)
2018-04-21 21:55:28 +02:00
Riccardo Spagni
e6cf9c06fc Merge pull request #3624
d8584fc8 util: log stack trace on crash (moneromooo-monero)
2018-04-21 21:55:02 +02:00
Riccardo Spagni
03ff3be10e Merge pull request #3672
875c1cab wallet2: increase rpc timeout for get_output_distribution (moneromooo-monero)
70f23217 add top height to get_output_distribution, and cache it for rct (moneromooo-monero)
8c7363fb rpc: add missing perf timer for get_output_distribution (moneromooo-monero)
2018-04-21 21:54:08 +02:00
anonimal
19e0137805 Build: remove UPnP definition from snap
(cherry picked from commit 5ef6dcb1c4b08497533a20d0addcf1b09db51166)
2018-04-21 09:43:23 +00:00
anonimal
6b85398031 Build: update CMake and p2p for in-tree miniupnp
(cherry picked from commit a7366b5feeffaeb65b217b2d6f138e0ab1c90192)
2018-04-21 09:43:23 +00:00
moneromooo-monero
875c1cabb9 wallet2: increase rpc timeout for get_output_distribution 2018-04-19 16:06:26 +01:00
moneromooo-monero
70f2321763 add top height to get_output_distribution, and cache it for rct
This should cache the vast majority of calls for long running wallets
2018-04-19 16:06:22 +01:00
moneromooo-monero
8c7363fbef rpc: add missing perf timer for get_output_distribution 2018-04-19 16:06:20 +01:00
anonimal
859db52fda CMake: update new location of in-tree miniupnpc
(cherry picked from commit b16a282f97d8f6c967e8a0b1ecfd75110f095182)
2018-04-19 10:56:09 +00:00
anonimal
f21df05c77 Build: add miniupnp submodule
Though we only need miniupnpc, rebasing and maintaining a miniupnpc-only
repo is unrealistic.

(cherry picked from commit 3c40eb768c292a4dec79d7dffd6685fd37940a2a)
2018-04-19 10:55:56 +00:00
anonimal
1068564867 Build: remove in-tree miniupnpc
Will be replaced by a submodule.

(cherry picked from commit e962216678)
2018-04-19 10:55:29 +00:00
Jan Beich
53a1962da1 epee: Drop deprecated Boost.Thread header
In file included from src/cryptonote_basic/hardfork.cpp:33:
In file included from src/blockchain_db/blockchain_db.h:42:
In file included from src/cryptonote_basic/hardfork.h:31:
contrib/epee/include/syncobj.h:37:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/rpc/daemon_handler.cpp:29:
In file included from src/rpc/daemon_handler.h:36:
In file included from src/p2p/net_node.h:41:
In file included from contrib/epee/include/net/levin_server_cp2.h:32:
In file included from contrib/epee/include/net/abstract_tcp_server2.h:324:
contrib/epee/include/net/abstract_tcp_server2.inl:44:10: fatal error: 'boost/thread/v2/thread.hpp' file not found
#include <boost/thread/v2/thread.hpp> // TODO
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~

contrib/epee/include/math_helper.h: In member function 'bool epee::math_helper::average<val, default_base>::set_base()':
contrib/epee/include/syncobj.h:227:56: error: 'sleep_for' is not a member of 'boost::this_thread'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^~~~~~~~~
contrib/epee/include/syncobj.h:227:56: note: suggested alternative: 'sleep'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^
contrib/epee/include/syncobj.h:227:56: note: in definition of macro 'CRITICAL_REGION_LOCAL'
 #define  CRITICAL_REGION_LOCAL(x) {boost::this_thread::sleep_for(boost::chrono::milliseconds(epee::debug::g_test_dbg_lock_sleep()));}   epee::critical_region_t<decltype(x)>   critical_region_var(x)
                                                        ^~~~~~~~~
2018-04-19 09:15:09 +00:00
Ryan Ronnander
6f36cf02e7 Improve 'show_transfers' date formatting
Change the wallet's 'show_transfers' command to always output the transaction date with timestamp (24 hour UTC).
2018-04-15 19:23:15 -07:00
cryptochangements34
e2b75586fb handle improper log levels 2018-04-15 11:33:22 -04:00
stoffu
998c1461c3 daemon: read config file before reading any other args 2018-04-14 22:05:24 +09:00
moneromooo-monero
c1bda097c1 wallet_rpc_server: add a get_version RPC 2018-04-14 13:34:05 +01:00
moneromooo-monero
f914df8494 device: add a one off override keyword where appropriate 2018-04-14 10:59:38 +01:00
moneromooo-monero
51b511be4c simplewallet: add version command 2018-04-13 18:47:33 +01:00
moneromooo-monero
35d1269fac daemon: add a version command 2018-04-13 18:47:30 +01:00
naughtyfox
8787fd899b WalletApi: publicMultisigSignerKey method 2018-04-13 13:15:20 +03:00
moneromooo-monero
d8584fc8d7 util: log stack trace on crash 2018-04-12 20:36:16 +01:00
Riccardo Spagni
6f6521ad7a Merge pull request #3606
b5d6c723 wallet2: store subaddress lookahead settings (stoffu)
2018-04-12 15:27:49 +02:00
stoffu
b5d6c723e9 wallet2: store subaddress lookahead settings 2018-04-12 22:23:53 +09:00
Riccardo Spagni
1f96755ddc Merge pull request #3618
3367ed86 blockchain_blackball: fix build with CLANG 5 (moneromooo-monero)
2018-04-12 15:10:21 +02:00
moneromooo-monero
3367ed863c blockchain_blackball: fix build with CLANG 5
It doesn't like the explicit NULL dereference (which is fine, honest)
2018-04-12 13:51:26 +01:00
moneromooo-monero
4c00a4d31e unit_tests: add device unit tests
Annoyingly, its locking semantics are borked since it does not
do any locking
2018-04-12 13:49:05 +01:00
Riccardo Spagni
079dd5dfef Merge pull request #3616
94b899db Use 'boost' mutex instead of 'std' mutex (cslashm)
2c274e05 Fix sub-address tx scan. (cslashm)
2018-04-12 14:41:51 +02:00
cslashm
94b899db26 Use 'boost' mutex instead of 'std' mutex 2018-04-12 13:58:57 +02:00
cslashm
2c274e05fe Fix sub-address tx scan.
When additional keys was needed, the TX scan failed because the
derivation data was always recomputed with the main tx_key and not
the corresponding additional one.

Moreover this patch avoid perf decreasing when not using HW device.
2018-04-12 13:58:57 +02:00
Riccardo Spagni
5e08fd89ea Merge pull request #3549
73951cbd wallet2: request transactions in slices when scanning for known rings (moneromooo-monero)
25fe67e4 rpc: allow getting pruned blocks from gettransactions (moneromooo-monero)
2018-04-12 13:49:33 +02:00
Riccardo Spagni
a95461e76d Merge pull request #3609
08343aba tx_pool: fix loading with colliding key images (moneromooo-monero)
2018-04-12 13:48:44 +02:00
Riccardo Spagni
1e9cc3e43e Merge pull request #3602
a9cc88ee common: make this build with unbound 1.4.20 (moneromooo-monero)
2018-04-12 13:48:12 +02:00
Riccardo Spagni
14c870ee5f Merge pull request #3615
24acb66e wallet2: fix misc issues when the ringdb can't be initialized (moneromooo-monero)
2018-04-12 13:47:54 +02:00
Riccardo Spagni
3b8704b0fa Merge pull request #3555
0b26c4d5 wallet2: move segregation height to v7 (moneromooo-monero)
2018-04-12 13:47:39 +02:00
Riccardo Spagni
5d8439e310 Merge pull request #3534
eecfb57d wallet: warn if not using the default ring size (moneromooo-monero)
2018-04-12 13:47:20 +02:00
Riccardo Spagni
f6094bb225 Merge pull request #3532
aa5c2e01 simplewallet: warn about key reuse on startup (moneromooo-monero)
2018-04-12 13:46:50 +02:00
Riccardo Spagni
226de8e928 Merge pull request #3530
eb59f7c5 cryptonote_tx_util: make destinations properly shuffled (stoffu)
2018-04-12 13:46:34 +02:00
Riccardo Spagni
8703f1d80e Merge pull request #3516
1e0958c0 wallet: fix default mixin (4 -> 6) (sneurlax)
2018-04-12 13:46:18 +02:00
moneromooo-monero
24acb66eac wallet2: fix misc issues when the ringdb can't be initialized 2018-04-12 11:07:07 +01:00
Riccardo Spagni
3a9290ba6f Merge pull request #3511
0beb94f3 device: fix endianess dependence on subaddress secret key generation (moneromooo-monero)
2018-04-12 11:15:27 +02:00
Riccardo Spagni
5053f8f40b Merge pull request #3502
11c933e1 fix lambda compile error on openbsd (moneromooo-monero)
2018-04-12 11:14:43 +02:00
Riccardo Spagni
96b2fee721 Merge pull request #3536
c77d2bfa Add the possibility to export private view key for fast scan. (cslashm)
100b7bc1 Change mutex lock model to avoid dead lock and ensure locks are always released. (cslashm)
641dfc99 Automatic height setup when creating/restoring hw device. (cslashm)
2018-04-12 11:12:33 +02:00
Riccardo Spagni
60b18cdd1f Merge pull request #3492
dac3895a update block hashes for checkpoints.dat (Riccardo Spagni)
2018-04-12 11:07:16 +02:00
Riccardo Spagni
93047ce762 Merge pull request #3485
1834127c rpc: make get_output_distribution a non-restricted RPC (moneromooo-monero)
2018-04-12 11:06:26 +02:00
Riccardo Spagni
1b4dc46129 Merge pull request #3473
eaa8bfe7 wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly The previous expression (stoffu)
0a619f78 wallet2: enable the mitigation only after the fork height (stoffu)
2018-04-12 11:05:31 +02:00
Riccardo Spagni
3d6636e79c Merge pull request #3471
5f664793 p2p: correct port number for seed nodes (stoffu)
2018-04-12 11:02:46 +02:00
Riccardo Spagni
ebb55f797b Merge pull request #3468
0098ed33 wallet2: fix for loading settings of key reuse mitigation (stoffu)
2018-04-12 11:00:47 +02:00
Riccardo Spagni
8902ddb91a Merge pull request #3466
1d79c14d Revert bb19386b (Howard Chu)
522be96f Fix generating version.cpp (Howard Chu)
2018-04-12 11:00:14 +02:00
Riccardo Spagni
628946c1f8 Merge pull request #3464
e520cc06 change wording in hard fork description section (Gingeropolous)
2018-04-12 10:59:44 +02:00
Riccardo Spagni
959f6ed9a5 Merge pull request #3461
57300491 wallet: catch exceptions dealing with ringdb and warn (moneromooo-monero)
2018-04-12 10:57:50 +02:00
moneromooo-monero
08343abaf4 tx_pool: fix loading with colliding key images
A key image may be present more than once if all but one of the
txes spending that key image are coming from blocks. When loading
a txpool from storage, we must load the one that's not from a
block first to avoid rejection
2018-04-11 15:27:56 +01:00
moneromooo-monero
6a61f520e2 unit_tests: add ringdb unit tests 2018-04-11 11:43:39 +01:00
stoffu
54d9fffa10 gtest: Fix compilation on MinGW with pthread /googletest#621 2018-04-11 11:35:45 +09:00
moneromooo-monero
a9cc88ee76 common: make this build with unbound 1.4.20
Common on currently used distros
2018-04-10 23:46:18 +01:00
moneromooo-monero
90a16b119f crypto: fix initialization order issue with random mutex 2018-04-10 12:30:48 +01:00
cryptochangements34
372ffeba21 Add a space in mining to testnet/stagenet string 2018-04-08 00:23:59 -04:00
stoffu
0b88fff3a5 simplewallet: fix help message of sign_transfer 2018-04-07 22:51:03 +09:00
moneromooo-monero
73951cbd39 wallet2: request transactions in slices when scanning for known rings
This avoid massive memory consumption for huge wallets
2018-04-07 08:31:46 +01:00
moneromooo-monero
25fe67e4cf rpc: allow getting pruned blocks from gettransactions
and get them pruned in find_and_save_rings, since it does not need
the pruned data in the first place.

Also set decode_to_json to false where missing, we don't need this
either.
2018-04-07 08:29:11 +01:00
stoffu
f82c10dc96 WalletManagerImpl: reuse existing connection to daemon instead of reconnectivng every time 2018-04-07 14:06:29 +09:00
stoffu
353e9c0c90 Core RPC: optionally add POW hash to block_header_response 2018-04-05 23:15:15 +09:00
moneromooo-monero
0b26c4d57c wallet2: move segregation height to v7
since people seem to really want to use things the wrong way.
2018-04-05 12:49:38 +01:00
moneromooo-monero
6fc97c97eb blockchain_usage: don't divide by 0 when there is nothing to process
Coverity 184942
2018-04-03 11:16:38 +01:00
cslashm
c77d2bfaa0 Add the possibility to export private view key for fast scan.
On client startup the device asks for authorization to export the private view key.
If user agree, the client hold the private view key allowing a fast blockchain scan.
If the user does not agree, the blockchain scan is fully done via the device.
2018-03-31 18:00:33 +02:00
cslashm
100b7bc10d Change mutex lock model to avoid dead lock and ensure locks are always released.
Additional cosmetic fixes:
 move 'name' as protected
 remove unnecessary local var
 Fix debug log
2018-03-31 18:00:33 +02:00
cslashm
641dfc991f Automatic height setup when creating/restoring hw device.
When creating/restoring wallet, if --restore-height option is not used the current estimate
height is used for starting the scan. In other words it is assume we are creating a new account.
2018-03-31 18:00:33 +02:00
moneromooo-monero
eecfb57df9 wallet: warn if not using the default ring size 2018-03-31 15:47:02 +01:00
moneromooo-monero
aa5c2e01e7 simplewallet: warn about key reuse on startup 2018-03-31 10:52:10 +01:00
stoffu
eb59f7c563 cryptonote_tx_util: make destinations properly shuffled 2018-03-31 18:37:46 +09:00
stoffu
66a659bb03 blockchain: add scope guard to waiter for threaded txv1 verification 2018-03-30 19:22:32 +09:00
Sarang Noether
52a4b70afd Add key for Sarang Noether 2018-03-29 19:54:16 -04:00
sneurlax
1e0958c083 wallet: fix default mixin (4 -> 6) 2018-03-28 09:30:11 -07:00
naughtyfox
5a96056600 WalletApi: getMultisigInfo entry for gui wallets
WalletApi: makeMultisig call introduced

WalletApi: finalizeMultisig call introduced

WalletApi: new calls exportMultisigImages and importMultisigImages

WalletApi: method to return multisig wallet creation state

WalletApi: create multisig transaction, sign multisig transaction, commit transaction and get multisig data are added

WalletApi: identation and style fixes
2018-03-28 18:22:13 +03:00
naughtyfox
47fdb74273 Refactored: work with wallet api statuses to make setting and getting operations atomic along with error strings
WalletApi: added method statusWithErrorString to atomically retrieve error with error string
2018-03-28 16:11:16 +03:00
moneromooo-monero
0beb94f323 device: fix endianess dependence on subaddress secret key generation
We now force little endianness
2018-03-28 11:14:25 +01:00
moneromooo-monero
a0a810ccd4 performance_tests: fix subaddress expansion test not expanding 2018-03-27 15:06:19 +01:00
moneromooo-monero
11c933e137 fix lambda compile error on openbsd 2018-03-27 14:48:36 +01:00
cryptochangements34
c8cb5fca5e exit if specified wallet file doesn't exist 2018-03-24 11:13:21 -04:00
Riccardo Spagni
dac3895ac1 update block hashes for checkpoints.dat 2018-03-24 08:36:10 +02:00
moneromooo-monero
1834127c82 rpc: make get_output_distribution a non-restricted RPC
so that those nodes can still be used for sending transactions
2018-03-23 10:56:55 +00:00
hrumag
8df202ec79 Updates italian localizations. 2018-03-22 22:31:41 +01:00
moneromooo-monero
3f5fb6fe6d simplewallet: add --untrusted-daemon option 2018-03-22 14:20:55 +00:00
stoffu
eaa8bfe7c0 wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly
The previous expression

    req_t.from_height = X ? Y >= Z : 0;

forces the parameter to take the value of either 0 or 1.
2018-03-22 20:02:25 +09:00
stoffu
0a619f789b wallet2: enable the mitigation only after the fork height 2018-03-22 20:02:14 +09:00
stoffu
5f6647934b p2p: correct port number for seed nodes 2018-03-22 14:56:35 +09:00
stoffu
0098ed338c wallet2: fix for loading settings of key reuse mitigation 2018-03-22 12:10:46 +09:00
cryptochangements34
ad19f8679e don't show error twice when starting simplewallet 2018-03-21 22:56:04 -04:00
Howard Chu
1d79c14dbb Revert bb19386b
The requirement for CMake 3.2.0 was introduced erroneously
in commit e29282d208 and is no
longer present
2018-03-21 17:16:06 +00:00
Howard Chu
522be96fe4 Fix generating version.cpp
Also removes BYPRODUCT dependency on CMake 3.2
2018-03-21 16:33:52 +00:00
Gingeropolous
e520cc06a9 change wording in hard fork description section
changed wording in hard fork section because reasons. Added prospective slot of next hardfork to communicate that more are coming because it never stops.

its everywhere and all at the same time.
2018-03-21 16:27:21 +00:00
moneromooo-monero
5730049178 wallet: catch exceptions dealing with ringdb and warn 2018-03-21 14:29:49 +00:00
stoffu
3b941befae core: add get_earliest_ideal_height_for_version() 2018-03-21 01:53:24 +09:00
Riccardo Spagni
8361d60aef Merge pull request #3434
b1398fff core: fix use of uninitialised data (moneromooo-monero)
2018-03-19 11:39:59 +02:00
Riccardo Spagni
2c145f4a38 Merge pull request #3431
bb07d8d7 README: add instructions for cloning / submodules (anonimal)
2018-03-19 11:39:22 +02:00
moneromooo-monero
a6a54fa883 blockchain: cache difficulty for next block
Takes about 10 ms, which takes pretty much all of the get_info
RPC, which is called pretty often from wallets.

Also add a new lock so we don't need to lock the blockchain lock,
which will avoid blocking for a long time when calling the getinfo
RPC while syncing. Users of get_difficulty_for_next_block who need
the lock will have locked it already.
2018-03-19 09:05:40 +00:00
moneromooo-monero
b1398fff40 core: fix use of uninitialised data 2018-03-18 23:37:00 +00:00
cornfeedhobo
b55c14cd1f fix sha256sum check, which requires two spaces. added set -ex to catch this, and other, errors in the future. 2018-03-18 18:07:10 -05:00
anonimal
bb07d8d7f7 README: add instructions for cloning / submodules 2018-03-18 17:14:07 +00:00
Riccardo Spagni
5710edf040 Merge pull request #3429
428fb45f update checkpoints (Riccardo Spagni)
3fedd51d update checkpoints.dat to block 1532400 (Riccardo Spagni)
83dbc5be update version to 0.12 Lithium Luna (Riccardo Spagni)
2018-03-18 18:51:11 +02:00
Riccardo Spagni
1f6e6001ed Merge pull request #2133
efe70a15 Unbound: add git submodule for unbound (anonimal)
84c5a9ba Unbound: remove unbound from in-tree source (anonimal)
2018-03-18 18:50:21 +02:00
anonimal
efe70a15f8 Unbound: add git submodule for unbound 2018-03-18 15:52:27 +00:00
anonimal
84c5a9ba48 Unbound: remove unbound from in-tree source
We'll instead use a git submodule to pull from our unbound repo.
2018-03-18 15:52:19 +00:00
Riccardo Spagni
428fb45f68 update checkpoints 2018-03-18 16:44:36 +02:00
Riccardo Spagni
3fedd51d26 update checkpoints.dat to block 1532400 2018-03-18 16:42:20 +02:00
Riccardo Spagni
83dbc5be76 update version to 0.12 Lithium Luna 2018-03-18 16:15:50 +02:00
Riccardo Spagni
df91d7bcbd Merge pull request #3426
8ea3c4d5 simplewallet: new --use-english-language-names flag (moneromooo-monero)
2018-03-18 15:58:12 +02:00
Riccardo Spagni
b8ccd47b9f Merge pull request #3419
1e393f4b wallet: make the segregation height settable (moneromooo-monero)
2018-03-18 15:57:58 +02:00
Riccardo Spagni
ebbd001a89 Merge pull request #3424
bb20f104 Move v7 fork to 1546000 to give more update time (moneromooo-monero)
2018-03-18 15:53:26 +02:00
moneromooo-monero
bb20f104ba Move v7 fork to 1546000 to give more update time 2018-03-18 09:29:31 +00:00
moneromooo-monero
8ea3c4d544 simplewallet: new --use-english-language-names flag
On some Windows systems, displaying language names in their own
languages freezes the display.
2018-03-17 22:46:41 +00:00
moneromooo-monero
1e393f4bb7 wallet: make the segregation height settable
via user setting first, then DNS TXT record, hardcoded fallback
2018-03-17 14:56:31 +00:00
Riccardo Spagni
5cd36e48bf Merge pull request #3421
9732a37e wallet_rpc_server: add sweep_unmixable as alias for sweep_dust (moneromooo-monero)
2018-03-17 16:52:46 +02:00
Riccardo Spagni
83651630bc Merge pull request #3418
20a00266 blockchain: forbid bulletproof types before v8 (moneromooo-monero)
2018-03-17 16:51:47 +02:00
Riccardo Spagni
1e2fd27189 Merge pull request #3412
b86f1e5d Add command line option allowing to restrict the default sub-address lookahead in order to avoid so looooong time of set-up when creating a HW based wallet. (stoffu)
2018-03-17 16:49:34 +02:00
moneromooo-monero
9732a37e9a wallet_rpc_server: add sweep_unmixable as alias for sweep_dust 2018-03-17 11:22:58 +00:00
moneromooo-monero
20a002667c blockchain: forbid bulletproof types before v8
They were already forbidden implicitely, but let's make that
explicit for robustness
2018-03-16 18:18:34 +00:00
stoffu
b86f1e5dad Add command line option allowing to restrict the default sub-address lookahead in order to avoid
so looooong time of set-up when creating a HW based wallet.
2018-03-16 18:00:28 +01:00
Riccardo Spagni
a14eabc043 Merge pull request #3416
6f54c910 simplewallet: fix restore height prompt that got disabled by #3175 (stoffu)
2018-03-16 18:10:20 +02:00
Riccardo Spagni
432480fa42 Merge pull request #3414
524cbdc1 blockchain: fix log message about per-kB fee (stoffu)
2018-03-16 18:09:34 +02:00
Riccardo Spagni
2a9839cc3e Merge pull request #3376
833f9fcf show '<Not set>' for empty wallet description (cryptochangements34)
2018-03-16 18:08:52 +02:00
Riccardo Spagni
0f27fc57ac Merge pull request #3336
57c0b1ed Fix typos in various files (Dimitris Apostolou)
2018-03-16 18:08:07 +02:00
Riccardo Spagni
7d928be240 Merge pull request #3322
eac3a11e wallet: more user friendly print_ring (moneromooo-monero)
79853514 wallet2_api: add key reuse mitigations API (moneromooo-monero)
b057a21d wallet2_api: add ring api (moneromooo-monero)
d32ef7b0 ringdb: factor ring addition code (moneromooo-monero)
a7da8208 wallet2_api: add blackball api (moneromooo-monero)
2ab66ff1 liblmdb: install lmdb library for wallet2_api usage (stoffu)
504428ab ringdb: use the genesis block as a db name (moneromooo-monero)
b09e5181 wallet: add a set_ring command (moneromooo-monero)
0590f62a new blockchain_usage tool, reports on output usage (moneromooo-monero)
db10dd6d wallet: make ringdb an object with database state (moneromooo-monero)
df6fad4c blockchain_utilities: new blockchain_blackball tool (moneromooo-monero)
d29ea045 wallet: add an output blackball list to avoid using those in rings (moneromooo-monero)
18eaf194 wallet: key reuse mitigation options (moneromooo-monero)
5f146873 wallet: add shared ring database (moneromooo-monero)
41f727ce add RPC to get a histogram of outputs of a given amount (moneromooo-monero)
2018-03-16 18:07:33 +02:00
moneromooo-monero
eac3a11ed3 wallet: more user friendly print_ring
It can now take a txid (to display rings for all its inputs),
and will print rings in a format that set_ring understands
2018-03-16 12:07:45 +00:00
moneromooo-monero
798535149d wallet2_api: add key reuse mitigations API 2018-03-16 12:07:42 +00:00
moneromooo-monero
b057a21d56 wallet2_api: add ring api 2018-03-16 10:33:05 +00:00
moneromooo-monero
d32ef7b0f2 ringdb: factor ring addition code 2018-03-16 10:33:02 +00:00
moneromooo-monero
a7da8208f5 wallet2_api: add blackball api 2018-03-16 10:32:59 +00:00
stoffu
2ab66ff1d4 liblmdb: install lmdb library for wallet2_api usage 2018-03-16 10:32:57 +00:00
moneromooo-monero
504428ab4a ringdb: use the genesis block as a db name
This will avoid careless forkers polluting the shared database
even if they make their own chain. They'll then automatically
start using another subdb, and any key-reusing fork of those
forks will reuse their subdbs.
2018-03-16 10:32:54 +00:00
moneromooo-monero
b09e5181cc wallet: add a set_ring command
This is so one can set rings for spent key images in case the
attackers don't merge the ring matching patch set.
2018-03-16 10:32:51 +00:00
moneromooo-monero
0590f62ab6 new blockchain_usage tool, reports on output usage 2018-03-16 10:32:46 +00:00
moneromooo-monero
db10dd6d83 wallet: make ringdb an object with database state 2018-03-16 10:32:42 +00:00
moneromooo-monero
df6fad4c62 blockchain_utilities: new blockchain_blackball tool
It scans for known spent outputs and stores their public keys
in a database which can then be read by the wallet, which can
then avoid using those as fake outs in new transactions.

Usage: monero-blockchain-blackball db1 db2...

This uses the shared database in ~/.shared-ringdb
2018-03-16 10:32:39 +00:00
moneromooo-monero
d29ea0455a wallet: add an output blackball list to avoid using those in rings 2018-03-16 10:32:37 +00:00
moneromooo-monero
18eaf19489 wallet: key reuse mitigation options
If a pre-fork output is spent on both Monero and attack chain,
any post-fork output can be deduced to be a fake output, thereby
decreasing the effective ring size.

The segregate-per-fork-outputs option, on by default, allows
selecting only pre-fork outputs in this case, so that the same
ring can be used when spending it on the other side, which does
not decrease the effective ring size.

This is intended to be SET when intending to spend Monero on the
attack fork, and to be UNSET if not intending to spend Monero
on the attack fork (since it leaks the fact that the output being
spent is pre-fork).

If the user is not certain yet whether they will spend pre-fork
outputs on a key reusing fork, the key-reuse-mitigation2 option
should be SET instead.

If you use this option and intend to spend Monero on both forks,
then spend real Monero first.
2018-03-16 10:32:34 +00:00
moneromooo-monero
5f146873c5 wallet: add shared ring database
This maps key images to rings, so that different forks can reuse
the rings by key image. This avoids revealing the real inputs like
would happen if two forks spent the same outputs with different
rings. This database is meant to be shared with all Monero forks
which don't bother making a new chain, putting users' privacy at
risk in the process. It is placed in a shared data directory by
default ($HOME/.shared-ringdb on UNIX like systems). You may
use --shared-ringdb-dir to override this location, and should
then do so for all Monero forks for them to share the database.
2018-03-16 10:32:29 +00:00
moneromooo-monero
41f727ce42 add RPC to get a histogram of outputs of a given amount 2018-03-16 10:32:26 +00:00
cryptochangements34
833f9fcfe9 show '<Not set>' for empty wallet description 2018-03-15 23:22:45 -04:00
stoffu
6f54c910f7 simplewallet: fix restore height prompt that got disabled by #3175 2018-03-16 11:55:31 +09:00
stoffu
524cbdc1e2 blockchain: fix log message about per-kB fee 2018-03-16 10:43:19 +09:00
Dimitris Apostolou
57c0b1ed9f Fix typos in various files 2018-03-15 18:25:38 +02:00
Riccardo Spagni
51bb7fafac Merge pull request #3410
c5024c5b simplewallet: add a warning when getting a daemon error in transfer (moneromooo-monero)
2018-03-15 17:10:01 +02:00
Riccardo Spagni
60af9d689b Merge pull request #3408
e1b526b3 Remove the `Blockchain::get_all_known_block_ids` function. (Jean Pierre Dudey)
2018-03-15 17:09:13 +02:00
Riccardo Spagni
0683f3190d Merge pull request #3403
843f65cb tests/hash: correctly reference crypto HASH_SIZE for less confusion (AnythingTechPro)
2018-03-15 17:08:51 +02:00
Riccardo Spagni
a3f0292c06 Merge pull request #3271
a7266d6d wallet2+cli+rpc: eliminate redundant m_http_client from cli/rpc and delegate calls to wallet2 (stoffu)
71d18656 replace invoke_http_json("/json_rpc",...) with invoke_http_json_rpc("/json_rpc",methodname,...) to reduce boilerplate (stoffu)
2018-03-15 17:07:03 +02:00
moneromooo-monero
c5024c5b73 simplewallet: add a warning when getting a daemon error in transfer
A malicious daemon (or MITM) could attempt to add spurious errors
so the wallet tries again, sending another set of fake outs.
2018-03-15 13:33:19 +00:00
stoffu
a7266d6d7b wallet2+cli+rpc: eliminate redundant m_http_client from cli/rpc and delegate calls to wallet2 2018-03-15 22:01:51 +09:00
Jean Pierre Dudey
e1b526b371 Remove the Blockchain::get_all_known_block_ids function.
This function isn't used in the codebase.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-03-14 21:56:19 -04:00
Leon Klingele
80d2f8007c wallet2: Update function parameter documentation
This completes and fixes various parameters docs
2018-03-14 16:41:24 +01:00
AnythingTechPro
843f65cbda tests/hash: correctly reference crypto HASH_SIZE for less confusion 2018-03-14 11:10:54 -04:00
stoffu
71d186566e replace invoke_http_json("/json_rpc",...) with invoke_http_json_rpc("/json_rpc",methodname,...) to reduce boilerplate 2018-03-14 23:23:59 +09:00
Riccardo Spagni
a69c713f8e Merge pull request #3398
c577abab wallet: fix auto low priority so that it takes effect only when saved default is 0 (stoffu)
2018-03-14 16:18:15 +02:00
Riccardo Spagni
2fe1504c03 Merge pull request #3399
1d39b265 wallet2: fix use_fork_rules() when querying version that is defined but not enabled yet (stoffu)
2018-03-14 16:17:59 +02:00
Riccardo Spagni
f9f2d182da Merge pull request #3395
523371c0 p2p: fix network ID being uninitialised when using exclusive peers (moneromooo-monero)
2018-03-14 16:10:42 +02:00
Riccardo Spagni
8b90e3141a Merge pull request #3386
9abeff59 wallet2: handle no blocks returned in refresh to mean no new blocks (moneromooo-monero)
2018-03-14 16:10:00 +02:00
Riccardo Spagni
7a44301675 Merge pull request #3385
ec41006c node_rpc_proxy: fix target height caching (moneromooo-monero)
2018-03-14 16:09:40 +02:00
Riccardo Spagni
534369eece Merge pull request #3384
b63ea060 simplewallet: do not call a RPC when displaying the prompt (moneromooo-monero)
2018-03-14 16:08:14 +02:00
Riccardo Spagni
cb72b85bbf Merge pull request #3372
c3e23b2d ringct: 17% improvement in Borromean signature verification (moneromooo-monero)
2018-03-14 16:06:16 +02:00
Riccardo Spagni
102a51bcd4 Merge pull request #3350
4405e4fc wallet2: check_tx_key() shouldn't require hardware encryption (stoffu)
7dfa5e9e chacha: call prehashed version explicitly as generate_chacha_key_prehashed hash: add prehashed version cn_slow_hash_prehashed slow-hash: let cn_slow_hash take 4th parameter for deciding prehashed or not slow-hash: add support for prehashed version for the other 3 platforms (stoffu)
b2d23b18 crypto: revert odd namespace changes made in #3303 (stoffu)
8705beaf keypair::generate: always require hw::device to avoid possible mistake (stoffu)
27a196b1 device: untangle cyclic depenency (stoffu)
c9b38b47 device: made function prototypes consistent with pre-#3303 codebase (stoffu)
2018-03-14 16:04:10 +02:00
stoffu
4405e4fc73 wallet2: check_tx_key() shouldn't require hardware encryption 2018-03-14 21:00:18 +09:00
stoffu
7dfa5e9e6e chacha: call prehashed version explicitly as generate_chacha_key_prehashed
hash: add prehashed version cn_slow_hash_prehashed
slow-hash: let cn_slow_hash take 4th parameter for deciding prehashed or not
slow-hash: add support for prehashed version for the other 3 platforms
2018-03-14 21:00:17 +09:00
stoffu
b2d23b189e crypto: revert odd namespace changes made in #3303 2018-03-14 21:00:17 +09:00
stoffu
8705beaf51 keypair::generate: always require hw::device to avoid possible mistake 2018-03-14 21:00:16 +09:00
stoffu
27a196b126 device: untangle cyclic depenency
When #3303 was merged, a cyclic dependency chain was generated:

    libdevice <- libcncrypto <- libringct <- libdevice

This was because libdevice needs access to a set of basic crypto operations
implemented in libringct such as scalarmultBase(), while libringct also needs
access to abstracted crypto operations implemented in libdevice such as
ecdhEncode(). To untangle this cyclic dependency chain, this patch splits libringct
into libringct_basic and libringct, where the basic crypto ops previously in
libringct are moved into libringct_basic. The cyclic dependency is now resolved
thanks to this separation:

    libcncrypto <- libringct_basic <- libdevice <- libcryptonote_basic <- libringct

This eliminates the need for crypto_device.cpp and rctOps_device.cpp.

Also, many abstracted interfaces of hw::device such as encrypt_payment_id() and
get_subaddress_secret_key() were previously implemented in libcryptonote_basic
(cryptonote_format_utils.cpp) and were then called from hw::core::device_default,
which is odd because libdevice is supposed to be independent of libcryptonote_basic.
Therefore, those functions were moved to device_default.cpp.
2018-03-14 21:00:15 +09:00
stoffu
c9b38b4765 device: made function prototypes consistent with pre-#3303 codebase 2018-03-14 21:00:06 +09:00
Riccardo Spagni
a03d34f4e1 Merge pull request #3378
0014a7cc README.md: Updated OpenBSD build instructions (ston1th)
2018-03-14 13:39:04 +02:00
Riccardo Spagni
f2e8e8d23c Merge pull request #3377
aa8bef0c fix error message typo in wallet2.cpp (cryptochangements34)
2018-03-14 13:38:50 +02:00
Riccardo Spagni
ba5f143c09 Merge pull request #3381
fcb180f5 systemd,readme: torsocks config for service (redfish)
2018-03-14 13:38:12 +02:00
Riccardo Spagni
376ca73499 Merge pull request #3375
733deab2 Adjust to the MSYS2/MinGW static ICU library file renaming (rbrunner7)
2018-03-14 13:37:51 +02:00
Riccardo Spagni
2a257521e3 Merge pull request #3374
402c7162 Updated Swedish localization (Ordtrogen Översättning)
2018-03-14 13:37:40 +02:00
Riccardo Spagni
9a63fbcf83 Merge pull request #3371
84decbea core: add v7 for 1539500 on mainnet (moneromooo-monero)
2018-03-14 13:37:25 +02:00
Riccardo Spagni
3bc2537f5a Merge pull request #3369
1979d53d wallet: fixes and tweaks to the save_watch_only command (moneromooo-monero)
2018-03-14 13:37:14 +02:00
Riccardo Spagni
0f2d6d40b4 Merge pull request #3360
1ff35fda Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) (stoffu)
2018-03-14 13:37:00 +02:00
Riccardo Spagni
2e074e2ae7 Merge pull request #3358
978663d4 Stagenet: successive forks up to v7 (stoffu)
2018-03-14 13:36:47 +02:00
Riccardo Spagni
117cf12509 Merge pull request #3355
0bbd521f libwallet_merged: added missing libdevice (stoffu)
2018-03-14 13:36:36 +02:00
Riccardo Spagni
33158f089d Merge pull request #3354
ffe70b8f Make mixin optional with default for rpc transfer (cryptochangements34)
2018-03-14 13:36:25 +02:00
Riccardo Spagni
2dfb4f098e Merge pull request #3353
73dd883d Ledger HW Bug fixes (Cédric)
2018-03-14 13:36:14 +02:00
Riccardo Spagni
cfc5a3d4d4 Merge pull request #3345
e0cda74a wallet2_api: add info/error/warning entry points (moneromooo-monero)
2018-03-14 13:35:53 +02:00
Riccardo Spagni
67978b78ce Merge pull request #3337
91d97dd4 fuzz_tests: set small subaddress lookahead for speed (moneromooo-monero)
5f85cc7e wallet2: guard against overflowing of subaddress indices (moneromooo-monero)
2018-03-14 13:35:41 +02:00
Riccardo Spagni
3fed788603 Merge pull request #3315
649a1b7a wallet2 / simplewallet: Must opt-in to create '.address.txt' files for new wallets (Leon Klingele)
2018-03-14 13:35:11 +02:00
moneromooo-monero
91d97dd4ab fuzz_tests: set small subaddress lookahead for speed 2018-03-14 11:34:09 +00:00
moneromooo-monero
5f85cc7e3d wallet2: guard against overflowing of subaddress indices 2018-03-14 11:34:06 +00:00
stoffu
1d39b26556 wallet2: fix use_fork_rules() when querying version that is defined but not enabled yet 2018-03-14 19:02:21 +09:00
stoffu
c577abab61 wallet: fix auto low priority so that it takes effect only when saved default is 0 2018-03-14 18:33:43 +09:00
moneromooo-monero
523371c042 p2p: fix network ID being uninitialised when using exclusive peers 2018-03-13 11:20:49 +00:00
ston1th
0014a7ccb8 README.md: Updated OpenBSD build instructions
* Removed the db package, as it is not required
* Added the libiconv package
* Updated the boost build instructions (added locale)
* Updated cppzmq to version 4.2.3 which does not require the symlink hack anymore

added missing hashes for boost patches
2018-03-12 19:48:55 +01:00
Cédric
73dd883d51 Ledger HW Bug fixes
Fix the way the REAL mode is handle:
  Let create_transactions_2 and create_transactions_from construct the vector of transactions.
  Then iterate on it and resign.
  We just need to add 'outs' list in the TX struct for that.

Fix default secret keys value when DEBUG_HWDEVICE mode is off
  The magic value (00...00 for view key and FF..FF for spend key) was not correctly set
  when DEBUG_HWDEVICE was off. Both was set to 00...00.

Add sub-address info in ABP map in order to correctly display destination sub-address on device

Fix DEBUG_HWDEVICE mode:
   - Fix compilation errors.
   - Fix control device init in ledger device.
   - Add more log.

Fix sub addr control

Fix debug Info
2018-03-12 10:43:06 +01:00
moneromooo-monero
9abeff5911 wallet2: handle no blocks returned in refresh to mean no new blocks
This is not a possible return from the daemon, but I want this in
now so all wallets handle this when the daemon starts doing so.
2018-03-11 21:16:15 +00:00
moneromooo-monero
ec41006cad node_rpc_proxy: fix target height caching 2018-03-11 13:11:49 +00:00
moneromooo-monero
b63ea060de simplewallet: do not call a RPC when displaying the prompt
Speeds up refresh when you have a lot of in/out transactions
2018-03-11 10:23:45 +00:00
redfish
fcb180f590 systemd,readme: torsocks config for service 2018-03-10 12:17:14 -05:00
Leon Klingele
649a1b7ae6 wallet2 / simplewallet: Must opt-in to create '.address.txt' files for new wallets
Previously, a file containing the unencrypted Monero address was
created by default in the wallet's directory. This file might pose
as a privacy risk. The creation of this file is now opt-in and can
be enabled by providing

    --create-address-file
2018-03-10 16:28:23 +01:00
cryptochangements34
aa8bef0cb3 fix error message typo in wallet2.cpp 2018-03-09 17:22:26 -05:00
stoffu
978663d461 Stagenet: successive forks up to v7 2018-03-09 13:59:11 +09:00
rbrunner7
733deab249 Adjust to the MSYS2/MinGW static ICU library file renaming
In package mingw-w64-x86_64-icu, version 58.2-3, the names of static
library files were changed, which leads to changes in CMakeLists.txt as
needed for compiling for Windows.
2018-03-08 19:10:44 +01:00
Riccardo Spagni
e9f41e405f Merge pull request #3368
38657fd0 Bump min ring size from 5 to 7 from v7 (moneromooo-monero)
2018-03-08 18:47:41 +02:00
Riccardo Spagni
546e380cab Merge pull request #3370
04a0cc89 slow-hash: fix uint64 type typo (moneromooo-monero)
2018-03-08 18:44:47 +02:00
Riccardo Spagni
3a12f2588a Merge pull request #3365
55a65f32 Wallet API: corrected testnet/mainnet ordering (stoffu)
2018-03-08 18:44:18 +02:00
Riccardo Spagni
f4cf613e34 Merge pull request #3362
49c70962 device: remove dependency on readline (stoffu)
2018-03-08 18:43:37 +02:00
Riccardo Spagni
220cb62ca4 Merge pull request #3357
557a6fb6 cn_deserialize: link with device and ringct (moneromooo-monero)
2018-03-08 18:43:20 +02:00
Riccardo Spagni
5d80f38e36 Merge pull request #3356
7c81cc49 Dockerfile: add boost locale (MoroccanMalinois)
2018-03-08 18:42:59 +02:00
Riccardo Spagni
60c8544e77 Merge pull request #3347
9a6be3da wallet_manager: fixed typo deviuce/device.hpp (stoffu)
2018-03-08 18:42:24 +02:00
Ordtrogen Översättning
402c716212 Updated Swedish localization 2018-03-08 05:47:32 +01:00
moneromooo-monero
c3e23b2dce ringct: 17% improvement in Borromean signature verification 2018-03-08 00:41:54 +00:00
moneromooo-monero
84decbea48 core: add v7 for 1539500 on mainnet 2018-03-07 17:19:50 +00:00
moneromooo-monero
1979d53d78 wallet: fixes and tweaks to the save_watch_only command
- save the new keys file as FOO-watchonly.keys, not FOO.keys-watchonly
- catch any exception (eg, I/O errors) and error out
- print the new keys filename in simplewallet
2018-03-07 14:24:14 +00:00
moneromooo-monero
38657fd0e9 Bump min ring size from 5 to 7 from v7 2018-03-07 13:19:04 +00:00
moneromooo-monero
04a0cc89cf slow-hash: fix uint64 type typo 2018-03-07 09:48:58 +00:00
stoffu
55a65f3269 Wallet API: corrected testnet/mainnet ordering 2018-03-07 13:56:17 +09:00
stoffu
49c70962ee device: remove dependency on readline 2018-03-07 07:42:28 +09:00
stoffu
1ff35fda7c Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) 2018-03-06 21:14:52 +09:00
Riccardo Spagni
c102c49da5 Merge pull request #3253
e136bc6b tweaks to the monerov1 cryptonight algorithm (Lee Clagett)
d58c9ec9 slow-hash: optimized version (SChernykh)
608fd6f1 Monero Cryptonight variants, and add one for v7 (moneromooo-monero)
2018-03-06 08:41:02 +02:00
moneromooo-monero
557a6fb6ea cn_deserialize: link with device and ringct 2018-03-05 20:52:18 +00:00
MoroccanMalinois
7c81cc495f Dockerfile: add boost locale 2018-03-05 18:28:37 +00:00
Lee Clagett
e136bc6b8a tweaks to the monerov1 cryptonight algorithm 2018-03-05 18:18:45 +00:00
SChernykh
d58c9ec99c slow-hash: optimized version 2018-03-05 18:18:43 +00:00
moneromooo-monero
608fd6f14a Monero Cryptonight variants, and add one for v7
This is the first variant of many, with the intent to improve
Monero's resistance to ASICs and encourage mining decentralization.
2018-03-05 18:18:39 +00:00
stoffu
0bbd521fa2 libwallet_merged: added missing libdevice 2018-03-06 02:36:37 +09:00
cryptochangements34
ffe70b8f61 Make mixin optional with default for rpc transfer 2018-03-05 12:27:22 -05:00
Riccardo Spagni
0d150aca5c Merge pull request #3261
73ca4724 Use `genesis_tx` parameter in `generate_genesis_block`. (Jean Pierre Dudey)
2018-03-05 19:18:07 +02:00
Riccardo Spagni
a21c927d7d Merge pull request #3298
f2bb8085 Fix #3297 use the password_prompter helper (Howard Chu)
2018-03-05 19:17:51 +02:00
Riccardo Spagni
b4223f7ca2 Merge pull request #3304
6d4da1fc Update French translation (Guillaume LE VAILLANT)
2018-03-05 19:17:22 +02:00
Riccardo Spagni
0c2b25204e Merge pull request #3312
399120dd simplewallet: set seed language when restoring from english-old seed (stoffu)
2018-03-05 19:16:52 +02:00
Riccardo Spagni
237f0179b7 Merge pull request #3313
43026822 Wallet2 + CLI wallet: UTF-8 support for filenames and paths under Windows (rbrunner7)
2018-03-05 19:15:54 +02:00
Riccardo Spagni
baf640887d Merge pull request #3343
3d452367 allow using ring size instead of mixin for rpc transfer (cryptochangements34)
2018-03-05 19:14:03 +02:00
Riccardo Spagni
98acbe83fc Merge pull request #3348
c95dddd2 remove unused function keyImageV (h908714124)
2018-03-05 19:13:52 +02:00
Riccardo Spagni
05f0762dc5 Merge pull request #3346
25ea307d Fix invalid device unique_ptr cast (MoroccanMalinois)
2018-03-05 19:13:40 +02:00
Riccardo Spagni
9841a452e5 Merge pull request #3338
51219457 core: fix sending to the source address with a short payment id (moneromooo-monero)
2018-03-05 19:13:28 +02:00
Riccardo Spagni
61ac5b0471 Merge pull request #3332
6b40ea93 simplewallet: fix print_ring_members printing wrong heights (moneromooo-monero)
2018-03-05 19:12:59 +02:00
Riccardo Spagni
204d3f451b Merge pull request #3316
18057b20 Updating Boost download URL. (Tadeas Moravec)
2018-03-05 19:12:42 +02:00
Riccardo Spagni
5b25cbb5a7 Merge pull request #3314
71bff546 wallet api: when restoring from EnglishOld, set language to English (stoffu)
2018-03-05 19:12:24 +02:00
Riccardo Spagni
abcdb7b5c4 Merge pull request #3308
6f8779d2 blockchain: fix random sync failures (moneromooo-monero)
2018-03-05 19:12:05 +02:00
Riccardo Spagni
0e5c006207 Merge pull request #3307
223d7d0c db_lmdb: fix free space reporting (moneromooo-monero)
2018-03-05 19:11:52 +02:00
Riccardo Spagni
5950d356b6 Merge pull request #3301
34a2a085 rctSigs - loop invariant code removed from the loop (Dusan Klinec)
2018-03-05 19:11:35 +02:00
Riccardo Spagni
4f93f74528 Merge pull request #3277
0e7ad2e2 Wallet API: generalize 'bool testnet' to 'NetworkType nettype' (stoffu)
af773211 Stagenet (stoffu)
cc9a0bee command_line: allow args to depend on more than one args (stoffu)
55f8d917 command_line::get_arg: remove 'required' for dependent args as they're always optional (stoffu)
450306a0 command line: allow has_arg to handle arg_descriptor<bool,false,true> #3318 (stoffu)
9f9e095a Use `genesis_tx` parameter in `generate_genesis_block`. #3261 (Jean Pierre Dudey)
2018-03-05 19:11:20 +02:00
Riccardo Spagni
033ead4bad Merge pull request #3273
f3b74e75 Fix refresh height estimation (Howard Chu)
2018-03-05 19:11:07 +02:00
Riccardo Spagni
b54587d7b3 Merge pull request #3259
6d900a40 removed systemd private tempdir (ston1th)
496055d1 monerod: do not log to tmpdir in daemon mode (ston1th)
2018-03-05 19:10:51 +02:00
Riccardo Spagni
302aedb845 Merge pull request #3156
fbcc91c2 Correct spelling mistakes. (Edward Betts)
2018-03-05 19:10:22 +02:00
Edward Betts
fbcc91c2a4 Correct spelling mistakes. 2018-03-05 17:00:40 +00:00
cryptochangements34
3d452367b0 allow using ring size instead of mixin for rpc transfer 2018-03-05 10:10:35 -05:00
stoffu
0e7ad2e2c9 Wallet API: generalize 'bool testnet' to 'NetworkType nettype' 2018-03-05 23:59:16 +09:00
h908714124
c95dddd2d2 remove unused function keyImageV 2018-03-05 09:21:44 +01:00
stoffu
9a6be3da25 wallet_manager: fixed typo deviuce/device.hpp 2018-03-05 11:57:30 +09:00
stoffu
af773211cb Stagenet 2018-03-05 11:55:05 +09:00
stoffu
cc9a0bee04 command_line: allow args to depend on more than one args 2018-03-05 11:19:08 +09:00
stoffu
55f8d917fd command_line::get_arg: remove 'required' for dependent args as they're always optional 2018-03-05 11:19:06 +09:00
stoffu
450306a01c command line: allow has_arg to handle arg_descriptor<bool,false,true> #3318 2018-03-05 11:19:04 +09:00
Jean Pierre Dudey
9f9e095a8c Use genesis_tx parameter in generate_genesis_block. #3261
* src/cryptnote_config.h: The constant `config::testnet::GENESIS_TX` was
changed to be the same as `config::GENESIS_TX` (the mainnet's transaction)
because the mainnet's transaction was being used for both networks.

* src/cryptonote_core/cryptonote_tx_utils.cpp: The `generate_genesis_block` function
was ignoring the  `genesis_tx` parameter, and instead it was using the `config::GENESIS_TX`
constant. That's why the testnet genesis transaction was changed. Also five lines of unused
code were removed.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-03-05 11:19:01 +09:00
MoroccanMalinois
25ea307d67 Fix invalid device unique_ptr cast 2018-03-04 18:56:48 +00:00
moneromooo-monero
e0cda74ace wallet2_api: add info/error/warning entry points 2018-03-04 18:07:30 +00:00
Riccardo Spagni
c7ace5fa3d Merge pull request #3303
e745c1e3 Code modifications to integrate Ledger HW device into monero-wallet-cli. (cslashm)
2018-03-04 19:03:41 +02:00
cslashm
e745c1e38d Code modifications to integrate Ledger HW device into monero-wallet-cli.
The basic approach it to delegate all sensitive data (master key, secret
ephemeral key, key derivation, ....) and related operations to the device.
As device has low memory, it does not keep itself the values
(except for view/spend keys) but once computed there are encrypted (with AES
are equivalent) and return back to monero-wallet-cli. When they need to be
manipulated by the device, they are decrypted on receive.

Moreover, using the client for storing the value in encrypted form limits
the modification in the client code. Those values are transfered from one
C-structure to another one as previously.

The code modification has been done with the wishes to be open to any
other hardware wallet. To achieve that a C++ class hw::Device has been
introduced. Two initial implementations are provided: the "default", which
remaps all calls to initial Monero code, and  the "Ledger", which delegates
all calls to Ledger device.
2018-03-04 12:54:53 +01:00
moneromooo-monero
51219457b1 core: fix sending to the source address with a short payment id
It would fail to send, thinking it needs a destination address,
since the destination matches the change address in this case.
2018-03-02 23:27:57 +00:00
moneromooo-monero
6b40ea937a simplewallet: fix print_ring_members printing wrong heights
And also use uint64_t instead of int for heights where appropriate
2018-03-02 00:25:16 +00:00
Tadeas Moravec
18057b20a3 Updating Boost download URL.
Boost does not use Sourceforge anymore. Instead, their download links
point to dl.bintray.com.

Earlier today Sourceforge was down, and later the Boost downloaded file
checksum did not match, which further reinforces the need to change
the URL.
2018-02-25 19:40:25 +01:00
stoffu
71bff546d3 wallet api: when restoring from EnglishOld, set language to English 2018-02-25 22:04:36 +09:00
rbrunner7
430268224d Wallet2 + CLI wallet: UTF-8 support for filenames and paths under Windows 2018-02-25 12:57:58 +01:00
stoffu
399120ddad simplewallet: set seed language when restoring from english-old seed 2018-02-25 12:44:10 +09:00
ston1th
6d900a40d9 removed systemd private tempdir 2018-02-23 21:28:08 +01:00
ston1th
496055d128 monerod: do not log to tmpdir in daemon mode
The logging to /tmp/bitmonero.daemon.stdout.stderr caused segfaults
if the /tmp mount was full (#2851).
Now the daemon is only logging to /tmp/bitmonero.daemon.stdout.stderr
in the debug builds.
2018-02-23 21:27:14 +01:00
moneromooo-monero
6f8779d282 blockchain: fix random sync failures
When a block is added as part of a chunk (when syncing historical
blocks), a block may end up already in the blockchain if it was
added to the queue before being added to the chain (though it's
not clear how that could happen, but it's an implementation detail)
and thus may not be added to the chain when add_block is called.
This would cause m_blocks_txs_check to not be cleared, causing it
to get out of sync at next call, and thus wrongfully reject the
next block.
2018-02-23 19:47:17 +00:00
moneromooo-monero
223d7d0c7a db_lmdb: fix free space reporting
reported by Brad Richards
2018-02-23 09:06:10 +00:00
Guillaume LE VAILLANT
6d4da1fc90 Update French translation 2018-02-22 14:44:05 +01:00
Dusan Klinec
34a2a08530 rctSigs - loop invariant code removed from the loop 2018-02-21 16:35:06 +01:00
Riccardo Spagni
421ab3119c Merge pull request #3245
54c256bc unit_tests.serialization: refactored with ASSERT_EQ_MAP (stoffu)
e6a60938 unit_tests: added gtest utility ASSERT_EQ_MAP for easily testing key-value map (stoffu)
2018-02-20 17:53:52 +02:00
Riccardo Spagni
2ac3da1251 Merge pull request #3256
df5273de wallet2: fix auto_low_priority field name typo on load (moneromooo-monero)
2018-02-20 17:53:38 +02:00
Riccardo Spagni
0d530bd04e Merge pull request #3295
6514f0ed db_lmdb: fix return code mixup in for_all_* (moneromooo-monero)
2018-02-20 17:49:16 +02:00
Riccardo Spagni
46903ec26a Merge pull request #3294
fd57e13a simplewallet: typo in generate-from-multisig-keys (stoffu)
2018-02-20 17:49:05 +02:00
Riccardo Spagni
21335e5c6b Merge pull request #3293
4a78a99f cryptonote_core: change wording of fork warning message (moneromooo-monero)
2018-02-20 17:48:54 +02:00
Riccardo Spagni
de79aba488 Merge pull request #3292
b372ec43 ITS#8324 More for Win32 NTDLL junk (Howard Chu)
2018-02-20 17:48:42 +02:00
Riccardo Spagni
299af8e43e Merge pull request #3290
1d28c0d8 p2p: restore m_testnet assignment lost during rebase (whythat)
2018-02-20 17:48:29 +02:00
Riccardo Spagni
854a87d633 Merge pull request #3289
4789f859 wipeable_string: don't try to wipe an empty buffer (moneromooo-monero)
2018-02-20 17:48:16 +02:00
Riccardo Spagni
ea9ddcac7f Merge pull request #3288
10f78f63 p2p: need libcryptonote_core due to arg_testnet_on being used (stoffu)
2018-02-20 17:48:05 +02:00
Riccardo Spagni
8e049d669d Merge pull request #3266
bb19386b README.md: bump minimum cmake version to 3.2.0 (iDunk5400)
2018-02-20 17:47:53 +02:00
Riccardo Spagni
fc57e0ef2d Merge pull request #3263
d4e728c9 simplewallet: reword donate command message for clarity (Serhack)
2018-02-20 17:47:42 +02:00
Riccardo Spagni
c9aa9370f9 Merge pull request #3260
b2d4bb9b Remove `voting_version` parameter documentation. (Jean Pierre Dudey)
2018-02-20 17:47:31 +02:00
Riccardo Spagni
4e9de94565 Merge pull request #3257
da25757b simplewallet: do nothing in on_skip_transaction (wallet2 already logs warnings) (stoffu)
2018-02-20 17:47:20 +02:00
Riccardo Spagni
ff36fd93fd Merge pull request #3255
3962bcb2 Closes #2886: really ignore battery checking (Timothy D. Prime)
2018-02-20 17:47:03 +02:00
Riccardo Spagni
f952da17c3 Merge pull request #3254
37ee966c add reference to localization workgroup in README.i18n.md (erciccione)
2018-02-20 17:46:52 +02:00
Riccardo Spagni
cfa3af4078 Merge pull request #3247
89ad162a wallet2: remove unused m_subaddresses_inv (moneromooo-monero)
f2c4c399 wallet2: speed up subaddress generation (by about a third) (moneromooo-monero)
2018-02-20 17:46:40 +02:00
Riccardo Spagni
6920fdaf4f Merge pull request #3246
3c33e131 wallet2: don't store invalid key image when watch-only (stoffu)
0133b348 wallet2: don't throw when spent amount is inconsistent (stoffu)
2018-02-20 17:46:29 +02:00
Riccardo Spagni
e3ad0c9ca6 Merge pull request #3243
2bc8c3db epee get_ns_count: cast to uint64_t before multiplying 10^9 to avoid overflow (stoffu)
2018-02-20 17:46:15 +02:00
Riccardo Spagni
0fc5eec9cd Merge pull request #3235
6866ed46 Add default value to max_height, otherwise it's 0 (Michał Sałaban)
2018-02-20 17:46:00 +02:00
Howard Chu
f2bb8085ec Fix #3297 use the password_prompter helper 2018-02-20 02:25:20 +00:00
moneromooo-monero
6514f0ed7b db_lmdb: fix return code mixup in for_all_* 2018-02-19 14:55:58 +00:00
stoffu
fd57e13a84 simplewallet: typo in generate-from-multisig-keys 2018-02-19 09:51:30 +09:00
moneromooo-monero
4a78a99f96 cryptonote_core: change wording of fork warning message
An udpate may or may not be available now, but should be soon if not.
This will prevent too many people freaking out.
2018-02-18 23:44:59 +00:00
Howard Chu
b372ec4375 ITS#8324 More for Win32 NTDLL junk
Use GetProcAddress at runtime, avoid buildtime NTDLL link issues
2018-02-18 21:56:55 +00:00
whythat
1d28c0d8a9 p2p: restore m_testnet assignment lost during rebase 2018-02-18 17:09:39 +02:00
moneromooo-monero
4789f8598f wipeable_string: don't try to wipe an empty buffer
memset_s doesn't like it
2018-02-18 14:02:36 +00:00
stoffu
10f78f63f1 p2p: need libcryptonote_core due to arg_testnet_on being used 2018-02-18 16:40:43 +09:00
Riccardo Spagni
4f80c50730 Merge pull request #3275
de397e3f refresh language files (erciccione)
264a8756 fix build error removing <> from payment_id (erciccione)
2018-02-17 21:49:26 +01:00
Riccardo Spagni
8154df778a Merge pull request #3276
ed6c68db crypto: add missing include (WIN32) (iDunk5400)
2018-02-17 21:48:59 +01:00
Riccardo Spagni
5a8e7fd0e5 Merge pull request #3249
a4b50a6f handle ^D and ^C while password prompting (Jethro Grassie)
2018-02-17 21:48:30 +01:00
Riccardo Spagni
5aa50a4504 Merge pull request #3274
dfabc005 memwipe: add missing #include <stdio.h> (stoffu)
2018-02-17 11:54:40 +01:00
Riccardo Spagni
6198c816b1 Merge pull request #3170
b3b2d4d2 options: add testnet option dependencies (whythat)
c5f55bb4 common: implement dynamic option dependencies mechanism (whythat)
05a12ccc options: remove testnet-* options (whythat)
c33cb60e common: implement dependent option descriptor (whythat)
2018-02-17 11:51:57 +01:00
Riccardo Spagni
a2cbedd29f Merge pull request #3191
3607d467 core: add --no-fluffy-blocks, and enable fluffy blocks by default (moneromooo-monero)
2018-02-17 11:48:31 +01:00
Riccardo Spagni
bed951323d Merge pull request #3211
7c1a607c txpool: Don't bail out when blob_size == tx_size_limit (Leon Klingele)
2018-02-17 11:47:17 +01:00
whythat
b3b2d4d20c options: add testnet option dependencies 2018-02-16 22:32:01 +02:00
whythat
c5f55bb4c0 common: implement dynamic option dependencies mechanism 2018-02-16 22:32:01 +02:00
whythat
05a12ccc2d options: remove testnet-* options 2018-02-16 22:32:01 +02:00
iDunk5400
ed6c68db1b crypto: add missing include (WIN32) 2018-02-16 19:35:31 +01:00
moneromooo-monero
89ad162a3f wallet2: remove unused m_subaddresses_inv 2018-02-16 17:13:09 +00:00
moneromooo-monero
f2c4c39971 wallet2: speed up subaddress generation (by about a third) 2018-02-16 17:13:06 +00:00
stoffu
dfabc005d1 memwipe: add missing #include <stdio.h> 2018-02-17 01:06:05 +09:00
erciccione
de397e3f55 refresh language files 2018-02-16 17:01:14 +01:00
erciccione
264a875685 fix build error removing <> from payment_id 2018-02-16 16:58:53 +01:00
Leon Klingele
7c1a607c40 txpool: Don't bail out when blob_size == tx_size_limit
Previously, when blob_size == tx_size_limit, the "m_too_big" property was set
and the transaction was rejected. This should not have been the case.
2018-02-16 16:27:08 +01:00
whythat
c33cb60eb6 common: implement dependent option descriptor 2018-02-16 16:44:40 +02:00
Howard Chu
f3b74e75b0 Fix refresh height estimation
Since commit b0426d4c refresh height for a newly created wallet
connected to a sync'd daemon was off by a month. Now we only use
the 1 month safety margin if we're unable to talk to a daemon.
2018-02-16 14:17:36 +00:00
moneromooo-monero
3607d467f3 core: add --no-fluffy-blocks, and enable fluffy blocks by default 2018-02-16 13:46:46 +00:00
Riccardo Spagni
ef91d6e61e Merge pull request #3196
eda9fb5b p2p: fix testnet/mainnet port mixup (moneromooo-monero)
2018-02-16 14:31:16 +01:00
Riccardo Spagni
6b1382b6b6 Merge pull request #3199
30ce8c59 cn_deserialize: check for raw tx_extra (moneromooo-monero)
2018-02-16 14:29:51 +01:00
Riccardo Spagni
f4a6bc79d9 Merge pull request #3226
e4646379 keccak: fix mdlen bounds sanity checking (moneromooo-monero)
2e3e90ac pass large parameters by const ref, not value (moneromooo-monero)
61defd89 blockchain: sanity check number of precomputed hash of hash blocks (moneromooo-monero)
9af6b2d1 ringct: fix infinite loop in unused h2b function (moneromooo-monero)
8cea8d0c simplewallet: double check a new multisig wallet is multisig (moneromooo-monero)
9b98a6ac threadpool: catch exceptions in dtor, to avoid terminate (moneromooo-monero)
24803ed9 blockchain_export: fix buffer overflow in exporter (moneromooo-monero)
f3f7da62 perf_timer: rewrite to make it clear there is no division by zero (moneromooo-monero)
c6ea3df0 performance_tests: remove add_arg call stray extra param (moneromooo-monero)
fa6b4566 fuzz_tests: fix an uninitialized var in setup (moneromooo-monero)
03887f11 keccak: fix sanity check bounds test (moneromooo-monero)
ad11db91 blockchain_db: initialize m_open in base class ctor (moneromooo-monero)
bece67f9 miner: restore std::cout precision after modification (moneromooo-monero)
1aabd14c db_lmdb: check hard fork info drop succeeded (moneromooo-monero)
2018-02-16 14:26:58 +01:00
Riccardo Spagni
64fabf2eb7 Merge pull request #3252
f689a77e Fix #602 Turn on socket keepalive (Howard Chu)
2018-02-16 14:24:30 +01:00
Riccardo Spagni
24d8f9237f Merge pull request #3248
d6a0ae96 blockchain: don't try to use hash check array after it's freed (moneromooo-monero)
2018-02-16 14:24:22 +01:00
Riccardo Spagni
853dd2d4f7 Merge pull request #3232
b81e276c connection_context: initialize m_last_request_time to current time (moneromooo-monero)
2018-02-16 14:24:12 +01:00
Riccardo Spagni
260d666cf4 Merge pull request #3231
84a8b2da Don't create readtxn until after txn_safe gate check (Howard Chu)
2018-02-16 14:24:01 +01:00
Riccardo Spagni
ef47ba95c8 Merge pull request #3229
928c1825 cryptonote_protocol: guard against all threads in standby (moneromooo-monero)
2018-02-16 14:23:53 +01:00
Riccardo Spagni
b5b88c2747 Merge pull request #3225
71806327 dns: change default DNS to a worldwide selection (moneromooo-monero)
2018-02-16 14:23:34 +01:00
Riccardo Spagni
a54247b993 Merge pull request #3221
2e584dcb p2p: do not try to connect to peers in offline mode (moneromooo-monero)
2018-02-16 14:23:22 +01:00
Riccardo Spagni
0c71197892 Merge pull request #3217
fde4489e wipeable_string: call memwipe directly (moneromooo-monero)
2018-02-16 14:23:08 +01:00
Riccardo Spagni
38f61ef8e2 Merge pull request #3216
5c99608d Fix coverity issues in performance_tests/main.cpp (h908714124)
2018-02-16 14:22:53 +01:00
Riccardo Spagni
9c4428e583 Merge pull request #3214
214d251c wallet: suggest the use of sweep_unmixable when not_enough_outs_to_mix is thrown (stoffu)
2018-02-16 14:22:41 +01:00
Riccardo Spagni
bfddb2283b Merge pull request #3210
39992134 txpool: Properly bail out when outputs_amount == inputs_amount (Leon Klingele)
2018-02-16 14:22:10 +01:00
Riccardo Spagni
9681a885d1 Merge pull request #3207
a99ef176 wallet-rpc: take subaddress account as arg for get_transfer_by_txid (stoffu)
77125096 wallet-rpc: rename *_INDEX_OUTOFBOUND into *_INDEX_OUT_OF_BOUNDS (stoffu)
2018-02-16 14:21:59 +01:00
Riccardo Spagni
079eea7b70 Merge pull request #3205
bc61ae69 tx_pool: add a max pool size, settable with --max-txpool-size (moneromooo-monero)
3b4e6b35 txpool: increase unmined tx expiry to three days (moneromooo-monero)
2018-02-16 14:21:50 +01:00
Riccardo Spagni
ac27f35c2a Merge pull request #3200
49c803ad Dockerfile: build dependencies with -fPIC (MoroccanMalinois)
2018-02-16 14:21:35 +01:00
Riccardo Spagni
b23578e473 Merge pull request #3197
f90c76be Return appropriate error code when there's no connection to daemon (Michał Sałaban)
3cb65b3f Return appropriate error code when not enough money for tx (Michał Sałaban)
2018-02-16 14:21:00 +01:00
Riccardo Spagni
172b7824d1 Merge pull request #3195
9017084a cmake: add -DHAVE_ defines to the command line (moneromooo-monero)
2018-02-16 14:20:46 +01:00
Riccardo Spagni
666a76652b Merge pull request #3187
851bd057 call _exit instead of abort in release mode (moneromooo-monero)
2018-02-16 14:20:31 +01:00
Riccardo Spagni
9cfe8876c5 Merge pull request #3184
32d5e731 Update translation source from create to generate (Maxithi)
2018-02-16 14:20:05 +01:00
Riccardo Spagni
bdf0339dda Merge pull request #3181
e3f0980a daemon: don't drop RPC with busy error when running offline (moneromooo-monero)
2018-02-16 14:19:54 +01:00
Riccardo Spagni
ba22928d4b Merge pull request #3180
1dfed567 Fixed #if instead of #ifdef (Matt Little)
7c442453 Support building cncrypto lib with msvc (Matt Little)
2018-02-16 14:19:42 +01:00
Riccardo Spagni
82599ef0e3 Merge pull request #3175
3be98036 wallet-cli: Do not ask for scan_from_height if it explicitly is set to zero. (Maximilian Lupke)
2018-02-16 14:19:24 +01:00
Riccardo Spagni
a43be404c7 Merge pull request #3171
402c9eef cryptonote_tx_utils: fixed logic bug in get_destination_view_key_pub (stoffu)
2018-02-16 14:19:10 +01:00
Riccardo Spagni
04a676397f Merge pull request #3165
7539603f Bootstrap daemon (stoffu)
2018-02-16 14:18:50 +01:00
Riccardo Spagni
381faf06c7 Merge pull request #3163
628b78ae Fix in_peers/out_peers RPC operations (Erik de Castro Lopo)
ece9bcf5 rpc_client: Fix error handling (Erik de Castro Lopo)
8f30350d Fix method name in invoke_http_json_rpc (Erik de Castro Lopo)
32c0f908 Allow the number of incoming connections to be limited (Erik de Castro Lopo)
d609a2c1 Rename delete_connections to delete_out_connections (Erik de Castro Lopo)
b927c0fc Rename connections_count to max_out_connection_count (Erik de Castro Lopo)
2018-02-16 14:18:38 +01:00
Riccardo Spagni
0bffd2ec64 Merge pull request #3161
78a2e15b daemon: exit with 0 when successful (moneromooo-monero)
2018-02-16 14:18:29 +01:00
Riccardo Spagni
1f277f7c1e Merge pull request #3160
a3c5a73c Update readme with correct tag version (Calvin Liang)
2018-02-16 14:18:06 +01:00
Riccardo Spagni
5d36ed6613 Merge pull request #3094
a85dbb3f Fixed typos and wording tweaks (Maxithi)
2018-02-16 14:17:46 +01:00
stoffu
da25757b42 simplewallet: do nothing in on_skip_transaction (wallet2 already logs warnings) 2018-02-15 17:20:39 +09:00
Jean Pierre Dudey
73ca47243f Use genesis_tx parameter in generate_genesis_block.
* src/cryptnote_config.h: The constant `config::testnet::GENESIS_TX` was
changed to be the same as `config::GENESIS_TX` (the mainnet's transaction)
because the mainnet's transaction was being used for both networks.

* src/cryptonote_core/cryptonote_tx_utils.cpp: The `generate_genesis_block` function
was ignoring the  `genesis_tx` parameter, and instead it was using the `config::GENESIS_TX`
constant. That's why the testnet genesis transaction was changed. Also five lines of unused
code were removed.

Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-02-14 16:31:17 -04:00
iDunk5400
bb19386bbc README.md: bump minimum cmake version to 3.2.0 2018-02-14 21:24:39 +01:00
Serhack
d4e728c995 simplewallet: reword donate command message for clarity 2018-02-14 08:28:22 -05:00
Riccardo Spagni
370b43d12b Merge pull request #3138
19ff243f wallets: reorg 61 more days on testnet (moneromooo-monero)
c70f03ca blockchain: move bulletproofs to v8 (moneromooo-monero)
2018-02-14 12:49:57 +01:00
Riccardo Spagni
589a53f479 Merge pull request #2959
3f1a3fac bulletproofs: more robust challenge computation (moneromooo-monero)
2018-02-14 12:08:52 +01:00
Riccardo Spagni
a9421f7802 Merge pull request #2939
b8090589 ringct: pseudoOuts moved to prunable in the simple bulletproof case (moneromooo-monero)
2018-02-14 12:08:14 +01:00
Jean Pierre Dudey
b2d4bb9b64 Remove voting_version parameter documentation.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-02-13 15:04:12 -04:00
moneromooo-monero
df5273def5 wallet2: fix auto_low_priority field name typo on load 2018-02-13 00:33:55 +00:00
Timothy D. Prime
3962bcb2a2 Closes #2886: really ignore battery checking
Move option test first.
2018-02-12 10:29:22 -08:00
erciccione
37ee966c40 add reference to localization workgroup in README.i18n.md 2018-02-12 17:32:51 +01:00
stoffu
54c256bc26 unit_tests.serialization: refactored with ASSERT_EQ_MAP 2018-02-12 21:56:51 +09:00
stoffu
e6a6093871 unit_tests: added gtest utility ASSERT_EQ_MAP for easily testing key-value map 2018-02-12 21:56:36 +09:00
stoffu
3c33e1317b wallet2: don't store invalid key image when watch-only 2018-02-12 20:36:15 +09:00
Howard Chu
f689a77e56 Fix #602 Turn on socket keepalive 2018-02-11 23:32:37 +00:00
Jethro Grassie
a4b50a6f51 handle ^D and ^C while password prompting 2018-02-10 18:29:49 -05:00
moneromooo-monero
d6a0ae96c6 blockchain: don't try to use hash check array after it's freed
It's freed when we've synced past its end, but we might still
find an old chain somewhere
2018-02-10 11:26:06 +00:00
stoffu
0133b3481a wallet2: don't throw when spent amount is inconsistent 2018-02-10 12:59:25 +09:00
moneromooo-monero
71806327f5 dns: change default DNS to a worldwide selection
DNSSEC aware servers picked from https://wiki.ipfire.org/dns/public-servers
2018-02-08 09:46:16 +00:00
stoffu
2bc8c3db5c epee get_ns_count: cast to uint64_t before multiplying 10^9 to avoid overflow 2018-02-08 16:04:50 +09:00
stoffu
214d251c48 wallet: suggest the use of sweep_unmixable when not_enough_outs_to_mix is thrown 2018-02-08 08:02:12 +09:00
h908714124
5c99608d95 Fix coverity issues in performance_tests/main.cpp 2018-02-07 19:11:29 +01:00
moneromooo-monero
bc61ae69bf tx_pool: add a max pool size, settable with --max-txpool-size 2018-02-07 13:42:12 +00:00
moneromooo-monero
e4646379a6 keccak: fix mdlen bounds sanity checking
found by h908714124
2018-02-07 13:39:32 +00:00
Michał Sałaban
6866ed469a Add default value to max_height, otherwise it's 0 2018-02-05 23:39:37 +01:00
moneromooo-monero
b81e276cab connection_context: initialize m_last_request_time to current time
This prevents spurious early peer drops
2018-02-04 13:13:08 +00:00
moneromooo-monero
928c1825f0 cryptonote_protocol: guard against all threads in standby 2018-02-02 22:33:53 +00:00
moneromooo-monero
2e3e90acbe pass large parameters by const ref, not value
Coverity 136394 136397 136409 136526 136529 136533 175302
2018-02-02 19:36:09 +00:00
moneromooo-monero
61defd89e3 blockchain: sanity check number of precomputed hash of hash blocks
Coverity 142951
2018-02-02 17:10:13 +00:00
moneromooo-monero
9af6b2d1b8 ringct: fix infinite loop in unused h2b function
Coverity 146775
2018-02-02 16:44:28 +00:00
moneromooo-monero
8cea8d0cef simplewallet: double check a new multisig wallet is multisig
Coverity 182493
2018-02-02 16:41:16 +00:00
moneromooo-monero
9b98a6ac8f threadpool: catch exceptions in dtor, to avoid terminate
If an exception is thrown, it is ignored. While this may hide
a bug, this should only be system exceptions in boost, which
is pretty unlikely. Morever, wait should be called manually
before the dtor anyway. Add an error message if the dtor has
to wait in case some such cases creep in so they get fixed.

Coverity 182538
2018-02-02 16:27:39 +00:00
moneromooo-monero
24803ed91f blockchain_export: fix buffer overflow in exporter
Coverity 182550
2018-02-02 16:11:15 +00:00
moneromooo-monero
f3f7da624d perf_timer: rewrite to make it clear there is no division by zero
It could have happened if epee::misc_utils::get_ns_count
is buggy, at a push

Coverity 182561
2018-02-02 16:06:36 +00:00
moneromooo-monero
c6ea3df0ae performance_tests: remove add_arg call stray extra param
Coverity 182572
2018-02-02 15:59:54 +00:00
moneromooo-monero
fa6b45665d fuzz_tests: fix an uninitialized var in setup
and comment it out, it's only used to generate a starting test case

Coverity 182506
2018-02-02 15:56:44 +00:00
moneromooo-monero
03887f1140 keccak: fix sanity check bounds test
Nothing calls this with those inputs
2018-02-02 15:48:06 +00:00
moneromooo-monero
ad11db9144 blockchain_db: initialize m_open in base class ctor
It's cleaner this way, since it's a base class field

Coverity 136568
2018-02-02 15:21:39 +00:00
moneromooo-monero
bece67f9e8 miner: restore std::cout precision after modification
Coverity 136462
2018-02-02 15:15:21 +00:00
moneromooo-monero
1aabd14c21 db_lmdb: check hard fork info drop succeeded
Coverity 136364
2018-02-02 15:08:22 +00:00
MoroccanMalinois
49c803ad7d Dockerfile: build dependencies with -fPIC 2018-02-02 13:45:28 +00:00
moneromooo-monero
3b4e6b35b3 txpool: increase unmined tx expiry to three days 2018-02-01 22:48:52 +00:00
moneromooo-monero
2e584dcb1f p2p: do not try to connect to peers in offline mode 2018-02-01 20:18:30 +00:00
moneromooo-monero
851bd057ec call _exit instead of abort in release mode
Avoids cores being created, as they're nowadays often piped
to some call home system
2018-02-01 13:32:46 +00:00
Leon Klingele
399921347f txpool: Properly bail out when outputs_amount == inputs_amount
Previously, when outputs_amount == inputs_amount, the "m_overspend" property
was set, whereas "m_fee_too_low" would have been the correct property to set.

This is unlikely to ever occur and just something I've noticed while reading
through the code.
2018-02-01 00:48:45 +01:00
Howard Chu
84a8b2da14 Don't create readtxn until after txn_safe gate check 2018-01-31 18:18:01 +00:00
moneromooo-monero
3f1a3fac00 bulletproofs: more robust challenge computation
Changes from sarang, from a recommendation by an anonymous reviewer
2018-01-31 15:57:01 +00:00
moneromooo-monero
b809058993 ringct: pseudoOuts moved to prunable in the simple bulletproof case
Saves 64 bytes non prunable data per typical tx

This breaks v7 consensus, will require a testnet reorg from v6
2018-01-31 15:56:26 +00:00
moneromooo-monero
19ff243f52 wallets: reorg 61 more days on testnet 2018-01-31 15:52:43 +00:00
moneromooo-monero
c70f03cacf blockchain: move bulletproofs to v8
and set v7 height to 1057027 on testnet (one block earlier)
This is to easily dump current nodes since we're going to change
the v7 rules with this.
2018-01-31 15:52:39 +00:00
moneromooo-monero
fde4489e1d wipeable_string: call memwipe directly
since the original reason for the indirect call (that memwipe
was not in contrib) is now gone
2018-01-31 12:25:30 +00:00
stoffu
a99ef17695 wallet-rpc: take subaddress account as arg for get_transfer_by_txid 2018-01-31 17:53:02 +09:00
stoffu
7712509644 wallet-rpc: rename *_INDEX_OUTOFBOUND into *_INDEX_OUT_OF_BOUNDS 2018-01-31 17:52:31 +09:00
stoffu
7539603f94 Bootstrap daemon 2018-01-30 20:15:47 +09:00
Maxithi
a85dbb3f2f Fixed typos and wording tweaks 2018-01-29 12:13:23 +01:00
stoffu
402c9eef0e cryptonote_tx_utils: fixed logic bug in get_destination_view_key_pub 2018-01-29 17:05:07 +09:00
Michał Sałaban
f90c76beb4 Return appropriate error code when there's no connection to daemon 2018-01-29 08:28:25 +01:00
Erik de Castro Lopo
628b78ae8a Fix in_peers/out_peers RPC operations
Original implementations could never have worked.
2018-01-29 11:54:57 +11:00
Erik de Castro Lopo
ece9bcf5c6 rpc_client: Fix error handling
Previous code was unable to distingush between a connection error
and a communication error.
2018-01-29 11:54:57 +11:00
Erik de Castro Lopo
8f30350d03 Fix method name in invoke_http_json_rpc
Previously, the method name was printed as an exmpty string because
the input string had already been moved with `std::move`.
2018-01-29 11:14:02 +11:00
Erik de Castro Lopo
32c0f908cd Allow the number of incoming connections to be limited
It was already possible to limit outgoing connections. One might want
to do this on home network connections with high bandwidth but low
usage caps.
2018-01-29 11:14:02 +11:00
Erik de Castro Lopo
d609a2c164 Rename delete_connections to delete_out_connections
This rename is needed so that delete_in_connections can be added.
2018-01-29 07:06:08 +11:00
Erik de Castro Lopo
b927c0fc7a Rename connections_count to max_out_connection_count
This is needed so that a max_in_connection_count can be added.
2018-01-29 07:06:08 +11:00
Riccardo Spagni
ed67e5c001 Merge pull request #3198
1c99a628 Tests: Fix building of two fuzz tests on Windows (iDunk5400)
2018-01-28 09:59:59 -08:00
Riccardo Spagni
4fcf609942 Merge pull request #3186
7ed62e63 cryptonote_protocol: fix std::move usage on different types (moneromooo-monero)
2018-01-28 09:54:17 -08:00
moneromooo-monero
30ce8c5926 cn_deserialize: check for raw tx_extra 2018-01-28 15:23:05 +00:00
iDunk5400
1c99a628e3 Tests: Fix building of two fuzz tests on Windows 2018-01-28 14:51:02 +01:00
Michał Sałaban
3cb65b3f69 Return appropriate error code when not enough money for tx 2018-01-28 12:52:05 +01:00
moneromooo-monero
eda9fb5b98 p2p: fix testnet/mainnet port mixup 2018-01-28 09:44:04 +00:00
moneromooo-monero
9017084a7b cmake: add -DHAVE_ defines to the command line
since there's no config.h here
2018-01-28 08:57:51 +00:00
Riccardo Spagni
6ed314854c Merge pull request #3188
fbc0a6dd Bugfix : Missing i18n import in simplewallet (Neozaru)
2018-01-27 18:21:55 -08:00
Riccardo Spagni
00a1166c95 Merge pull request #3185
fccd1df1 performance_tests: fix build after merging two conflicting patches (moneromooo-monero)
2018-01-27 18:21:40 -08:00
Riccardo Spagni
29fafa4ca7 Merge pull request #3123
30c44bce wallet: automatically use low priority if safe (no backlog & recent blocks not full) (stoffu)
c903df5e simplewallet: bug fix for backlog estimate (stoffu)
2f5a9b6b wallet2: split estimate_backlog to allow for raw fee levels (moneromooo-monero)
2018-01-27 18:08:56 -08:00
stoffu
30c44bce06 wallet: automatically use low priority if safe (no backlog & recent blocks not full) 2018-01-28 11:04:52 +09:00
stoffu
c903df5ece simplewallet: bug fix for backlog estimate 2018-01-28 10:52:25 +09:00
moneromooo-monero
2f5a9b6bb3 wallet2: split estimate_backlog to allow for raw fee levels 2018-01-28 10:52:16 +09:00
Riccardo Spagni
d061c312fb Merge pull request #3116
269ba252 wallet2::import_blockchain fix import loop (Jaquee)
2018-01-27 17:27:07 -08:00
Riccardo Spagni
76a6a794f9 Merge pull request #2969
95171614 Remove is_pod trait, and replace with is_standard_layout requirement (Lee Clagett)
2018-01-27 17:26:58 -08:00
Riccardo Spagni
86da46e224 Merge pull request #3151
ab2e9953 unit_tests: do not ASSERT_TRUE(decodeRct(...)) (moneromooo-monero)
2018-01-27 17:25:55 -08:00
Riccardo Spagni
a4ae78a335 Merge pull request #3145
fd1dfac5 p2p: don't lookup seed IPs if using an exclusive peer (moneromooo-monero)
b50182ae p2p: don't connect to seeds if using an exclusive peer (moneromooo-monero)
2018-01-27 17:25:47 -08:00
Riccardo Spagni
f7dcb730cb Merge pull request #3144
42f86624 rpc: expose recent median block size in getinfo (moneromooo-monero)
2018-01-27 17:25:40 -08:00
Riccardo Spagni
e93ff8f22d Merge pull request #3143
ba6d2975 cryptonote_core: add --disable-dns-checkpoints flag (moneromooo-monero)
2018-01-27 17:25:33 -08:00
Riccardo Spagni
1506f33075 Merge pull request #3142
a9cae0ab Wallet API: remove unused enum Priority from UnsignedTransaction (stoffu)
2018-01-27 17:25:25 -08:00
Riccardo Spagni
5603d5aaea Merge pull request #3141
3160a930 wallet2: remove {set|get}_default_decimal_point and use the same funcs under cryptonote:: instead (stoffu)
7d1088d3 wallet2: make scan_output const and omit keys arg (stoffu)
bc1ee2c2 wallet2: make member functions const when possible (stoffu)
2018-01-27 17:25:15 -08:00
Riccardo Spagni
6d48bddffd Merge pull request #3136
e0404d35 rpc: default do_not_relay to false in sendrawtransaction (moneromooo-monero)
2018-01-27 17:25:07 -08:00
Riccardo Spagni
d3e1244466 Merge pull request #3121
6fbb0b06 cmake: set API header install path to what Qt wallet expects (redfish)
2018-01-27 17:24:57 -08:00
Riccardo Spagni
4c302c6385 Merge pull request #3120
6cf56682 perf_timer: add faster x86_64 timers, and pause/resume (moneromooo-monero)
411da337 perf_timer: use std::unique_ptr instead of new/delete (moneromooo-monero)
2018-01-27 17:24:49 -08:00
Riccardo Spagni
7de1685bd8 Merge pull request #3119
c4f43779 crypto: add a ge_p3_identity constant (moneromooo-monero)
13b4c90e crypto: add scalar mult functions returning ge_p3 instead of ge_p2 (moneromooo-monero)
2018-01-27 17:24:42 -08:00
Riccardo Spagni
e1ba5b95c1 Merge pull request #3118
ca336c62 simplewallet: check file overwrite when exporting stuff (stoffu)
2018-01-27 17:24:34 -08:00
Riccardo Spagni
92ea8af34d Merge pull request #3114
fb5c971c Allow retrieving spend key via RPC (Michał Sałaban)
2018-01-27 17:24:26 -08:00
Riccardo Spagni
73a19e0b06 Merge pull request #3113
ffc2e570 wallet rpc: show fees when querying incoming transfers (stoffu)
2018-01-27 17:24:15 -08:00
Riccardo Spagni
087a773247 Merge pull request #3104
939629e8 Wallet API: all recover options with password (m2049r)
2018-01-27 17:24:08 -08:00
Riccardo Spagni
0d328cffda Merge pull request #3102
3050a4f0 simplewallet: fix typo get_tx_proof_out to get_tx_proof (stoffu)
2018-01-27 17:24:00 -08:00
Riccardo Spagni
baaeefdecc Merge pull request #3098
935e39c7 levin_protocol_handler_async: erase from back of vector instead of front (stoffu)
2018-01-27 17:23:53 -08:00
Riccardo Spagni
36241552b5 Merge pull request #3075
84a7f6a4 Readd copyright starting date (xmr-eric)
18216f19 Update 2018 copyright (xmr-eric)
2018-01-27 17:23:26 -08:00
Matt Little
1dfed567e2 Fixed #if instead of #ifdef 2018-01-27 13:33:11 -07:00
xmr-eric
84a7f6a482 Readd copyright starting date 2018-01-26 10:03:20 -05:00
xmr-eric
18216f19dd Update 2018 copyright 2018-01-26 10:03:20 -05:00
Neozaru
fbc0a6dd23 Bugfix : Missing i18n import in simplewallet 2018-01-26 13:58:49 +01:00
moneromooo-monero
7ed62e63e5 cryptonote_protocol: fix std::move usage on different types 2018-01-26 10:13:06 +00:00
moneromooo-monero
fccd1df125 performance_tests: fix build after merging two conflicting patches 2018-01-26 10:09:59 +00:00
Maxithi
32d5e731d0 Update translation source from create to generate 2018-01-26 09:58:36 +01:00
stoffu
a9cae0abe7 Wallet API: remove unused enum Priority from UnsignedTransaction 2018-01-26 10:59:49 +09:00
stoffu
3160a93027 wallet2: remove {set|get}_default_decimal_point and use the same funcs under cryptonote:: instead 2018-01-26 10:59:32 +09:00
stoffu
7d1088d337 wallet2: make scan_output const and omit keys arg 2018-01-26 10:59:31 +09:00
stoffu
bc1ee2c2ee wallet2: make member functions const when possible 2018-01-26 10:59:30 +09:00
stoffu
3050a4f05b simplewallet: fix typo get_tx_proof_out to get_tx_proof 2018-01-26 10:59:15 +09:00
stoffu
ffc2e5705d wallet rpc: show fees when querying incoming transfers 2018-01-26 10:58:23 +09:00
stoffu
935e39c7f3 levin_protocol_handler_async: erase from back of vector instead of front 2018-01-26 10:58:07 +09:00
stoffu
ca336c62e3 simplewallet: check file overwrite when exporting stuff 2018-01-26 10:57:13 +09:00
Riccardo Spagni
09d19c9139 Merge pull request #3130
5ae617d5 simplewallet: single out 0 amount destinations as dummy ones (moneromooo-monero)
c1d19f3c wallet2: fix sweep_all sending an atomic unit (moneromooo-monero)
2018-01-25 16:57:03 -08:00
Riccardo Spagni
700b3193f8 Merge pull request #3084
5f5a51a6 util: warn if unbound was not built with threads (moneromooo-monero)
2018-01-25 16:56:28 -08:00
Riccardo Spagni
ea75e71dd2 Merge pull request #3052
d507167f Removed unused mac-specific output folder path (Maxithi)
2018-01-25 16:54:45 -08:00
Riccardo Spagni
fdb0a92f1b Merge pull request #3155
21bd2157 remove unnecessary include (Jethro Grassie)
2018-01-25 16:52:12 -08:00
Riccardo Spagni
5a15a8322e Merge pull request #3153
ab58b150 p2p: fix picking peers off an empty gray list (moneromooo-monero)
2018-01-25 16:51:50 -08:00
Riccardo Spagni
ef4b69f8bb Merge pull request #3126
ff5626d7 ringct: handle exceptions verifying bulletproofs in worker threads (moneromooo-monero)
2018-01-25 16:50:47 -08:00
Riccardo Spagni
d25217f058 Merge pull request #3105
b56f4645 cryptonote_protocol: fix size_t used in wire format (moneromooo-monero)
2018-01-25 16:50:18 -08:00
Riccardo Spagni
f31f5c9a3e Merge pull request #3093
d188840c Improved terminology from create to generate (Maxithi)
2018-01-25 16:49:54 -08:00
Riccardo Spagni
0a94399a05 Merge pull request #3082
8b50209c fix for warning (Onur Altun)
2018-01-25 16:49:20 -08:00
Riccardo Spagni
e3d47d40b1 Merge pull request #3078
c6775868 Ignore cmake-build-debug folder (Maxithi)
2018-01-25 16:48:57 -08:00
Riccardo Spagni
39bd6c6815 Merge pull request #3072
0811b924 fix some confirmation dialog, add missing symbols (AJIekceu4)
2018-01-25 16:48:00 -08:00
Riccardo Spagni
c222b6485e Merge pull request #3068
301ec15c Change cryptonote::COMMAND_RPC_SET_LIMIT::response to use int64_t (Nick Johnson)
2018-01-25 16:47:29 -08:00
Riccardo Spagni
66a2751d68 Merge pull request #3065
3e635a3c wallet2: allow failing parse_tx_extra (moneromooo-monero)
2018-01-25 16:47:08 -08:00
Riccardo Spagni
395ab6c430 Merge pull request #3064
62c45c0d performance_tests: add a --filter option to select what to run (moneromooo-monero)
2018-01-25 16:46:41 -08:00
Riccardo Spagni
ede4e1c54c Merge pull request #3057
9ffa97fe Factor the monero donation address (Maxithi)
2018-01-25 16:46:18 -08:00
Riccardo Spagni
008b492963 Merge pull request #3047
fa5c0bab Implement #3045, fixing RPC snakecases (Nick Johnson)
2018-01-25 16:45:45 -08:00
Riccardo Spagni
f5c6f8f22f Merge pull request #3042
ed215d34 performance_tests: add RingCT MLSAG gen/ver tests (moneromooo-monero)
2018-01-25 16:45:16 -08:00
Riccardo Spagni
5a312752af Merge pull request #3040
69f9a075 cryptonote_protocol: fix missing space in version mismatch message (moneromooo-monero)
2018-01-25 16:44:51 -08:00
Riccardo Spagni
153e319cd4 Merge pull request #3038
eb39a3d7 wallet_api: make this optional but not built by default (moneromooo-monero)
2018-01-25 16:44:23 -08:00
Riccardo Spagni
492fcbbcc0 Merge pull request #3036
ab10f4ce added Swedish translation (ordtrogen)
2018-01-25 16:44:01 -08:00
Riccardo Spagni
b2ce5739df Merge pull request #3028
a4b006f9 wallet2 bugfix: initialize subaddress table when generating from keys (stoffu)
2018-01-25 16:42:06 -08:00
Riccardo Spagni
960b32ba70 Merge pull request #3027
6d40a920 Reserve proof (stoffu)
2018-01-25 16:40:59 -08:00
Riccardo Spagni
5e211b4186 Merge pull request #3020
03ac3890 zmq: use older 3-arg version of setsockopt (stoffu)
2018-01-25 16:40:03 -08:00
Riccardo Spagni
75cbb7719e Merge pull request #3015
f06603a4 cryptonote_protocol: update target height when receiving blocks (moneromooo-monero)
2018-01-25 16:39:16 -08:00
Riccardo Spagni
9872620781 Merge pull request #3014
deeffaeb blockchain: remove minor floating point usage (moneromooo-monero)
2018-01-25 16:38:32 -08:00
Riccardo Spagni
c16261c8da Merge pull request #3013
fe436eca apply_permutation.h: add #pragma once (moneromooo-monero)
2018-01-25 16:37:28 -08:00
Riccardo Spagni
9fff66f004 Merge pull request #3012
e4bbeff2 epee: check some error return values (moneromooo-monero)
2018-01-25 16:36:27 -08:00
Riccardo Spagni
92826e3d8b Merge pull request #3011
619bb723 daemon+simplewallet: given an unknown command, show it (stoffu)
2018-01-25 16:34:45 -08:00
Riccardo Spagni
f077bbb4f1 Merge pull request #3010
07da9c80 Resolve addresses in get_transfers (Michał Sałaban)
2018-01-25 16:32:40 -08:00
Riccardo Spagni
d9e3e32838 Merge pull request #3009
78835645 Added Fedora devel dependencies (Jonny Heggheim)
2018-01-25 16:27:47 -08:00
Riccardo Spagni
ca199aa08a Merge pull request #3008
50786ac7 simplewallet: Correct 3 multisig command usage help texts, e.g. for 'export_multisig_info' (rbrunner7)
2018-01-25 16:25:01 -08:00
Matt Little
7c4424531f Support building cncrypto lib with msvc 2018-01-25 13:00:45 -07:00
moneromooo-monero
e3f0980a1d daemon: don't drop RPC with busy error when running offline 2018-01-25 13:35:58 +00:00
Maximilian Lupke
3be98036e7 wallet-cli: Do not ask for scan_from_height if it explicitly is set to zero.
Fixes #3080
2018-01-24 18:01:08 +01:00
moneromooo-monero
78a2e15bea daemon: exit with 0 when successful 2018-01-20 13:34:32 +00:00
Calvin Liang
a3c5a73cd0 Update readme with correct tag version 2018-01-19 19:34:14 -08:00
Jethro Grassie
21bd21576d remove unnecessary include 2018-01-18 19:03:05 -05:00
Riccardo Spagni
5f09d6c833 Merge pull request #3115
e8d773a0 unbound: always build with -fPIC (moneromooo-monero)
2018-01-18 18:14:34 -05:00
Riccardo Spagni
d2ff91cb17 Merge pull request #3107
b7e5a70b epee: detect strptime, use std::get_time as fallback (moneromooo-monero)
2018-01-18 18:14:12 -05:00
Riccardo Spagni
ca5383efa9 Merge pull request #3103
f65711a2 miniupnpc: always build with -fPIC (moneromooo-monero)
2018-01-18 18:14:03 -05:00
Riccardo Spagni
dd4f89cf3c Merge pull request #3099
be1826c0 Keep readline optional (Jethro Grassie)
2018-01-18 18:13:51 -05:00
moneromooo-monero
ab58b150ef p2p: fix picking peers off an empty gray list 2018-01-18 17:11:37 +00:00
moneromooo-monero
ab2e9953b4 unit_tests: do not ASSERT_TRUE(decodeRct(...))
decodeRct returns the amount, which may be zero
2018-01-18 13:55:51 +00:00
Lee Clagett
951716146f Remove is_pod trait, and replace with is_standard_layout requirement 2018-01-18 02:26:19 -05:00
m2049r
939629e837 Wallet API: all recover options with password
also renamed memo => mnemonic in api method parms
2018-01-17 18:46:31 +01:00
moneromooo-monero
fd1dfac5d2 p2p: don't lookup seed IPs if using an exclusive peer 2018-01-17 12:15:12 +00:00
moneromooo-monero
b50182aee7 p2p: don't connect to seeds if using an exclusive peer 2018-01-17 11:17:21 +00:00
moneromooo-monero
42f86624a3 rpc: expose recent median block size in getinfo 2018-01-17 11:12:26 +00:00
moneromooo-monero
ba6d2975bc cryptonote_core: add --disable-dns-checkpoints flag 2018-01-17 10:14:48 +00:00
moneromooo-monero
5ae617d5ae simplewallet: single out 0 amount destinations as dummy ones
Avoids surprising the user with "sending 0 to..."
2018-01-16 15:41:25 +00:00
moneromooo-monero
e0404d35fe rpc: default do_not_relay to false in sendrawtransaction 2018-01-16 11:15:01 +00:00
moneromooo-monero
c1d19f3c84 wallet2: fix sweep_all sending an atomic unit 2018-01-15 15:54:19 +00:00
moneromooo-monero
ff5626d785 ringct: handle exceptions verifying bulletproofs in worker threads 2018-01-15 11:48:23 +00:00
redfish
6fbb0b065d cmake: set API header install path to what Qt wallet expects 2018-01-14 20:14:07 -05:00
moneromooo-monero
6cf56682bc perf_timer: add faster x86_64 timers, and pause/resume 2018-01-15 00:35:55 +00:00
moneromooo-monero
411da337d2 perf_timer: use std::unique_ptr instead of new/delete 2018-01-15 00:35:24 +00:00
moneromooo-monero
c4f437796d crypto: add a ge_p3_identity constant 2018-01-15 00:30:46 +00:00
moneromooo-monero
13b4c90e01 crypto: add scalar mult functions returning ge_p3 instead of ge_p2
ge_scalarmult_p3
ge_double_scalarmult_precomp_vartime2_p3
ge_double_scalarmult_base_vartime_p3

This makes it possible to reuse the result without having to
convert back to unsigned char[32] and back to ge types.
2018-01-15 00:30:26 +00:00
Jaquee
269ba25228 wallet2::import_blockchain fix import loop 2018-01-14 20:30:35 +01:00
moneromooo-monero
e8d773a049 unbound: always build with -fPIC 2018-01-14 18:51:51 +00:00
Michał Sałaban
fb5c971cc6 Allow retrieving spend key via RPC 2018-01-14 06:23:12 +01:00
moneromooo-monero
b7e5a70bb1 epee: detect strptime, use std::get_time as fallback 2018-01-11 21:41:07 +00:00
Jethro Grassie
be1826c0fb Keep readline optional 2018-01-11 13:51:13 -05:00
moneromooo-monero
b56f46457c cryptonote_protocol: fix size_t used in wire format
This is 32 bits on 32 bit platforms, but 64 bits on 64 bit platforms.
2018-01-11 17:31:47 +00:00
moneromooo-monero
f65711a29b miniupnpc: always build with -fPIC
since we now build PIE binaries
2018-01-11 15:51:32 +00:00
stoffu
6d40a92026 Reserve proof 2018-01-10 20:37:18 +09:00
moneromooo-monero
deeffaeb5c blockchain: remove minor floating point usage 2018-01-10 11:05:30 +00:00
Riccardo Spagni
35d5aa36c9 Merge pull request #3091
64f36300 Check if lrelease is working before trying to use it (Guillaume LE VAILLANT)
2018-01-10 11:56:11 +01:00
Riccardo Spagni
bfc0bd82dd Merge pull request #3063
dff97112 easylogging++: do not use crash log code on android, etc (moneromooo-monero)
2018-01-10 11:55:58 +01:00
Riccardo Spagni
d5dad4f0a2 Merge pull request #3062
f035478d Fix translations header generation when cross-compilating (Guillaume LE VAILLANT)
2018-01-10 11:55:46 +01:00
Riccardo Spagni
e61f655440 Merge pull request #3061
fc041b58 common cmake: make sure translation_files.h is generated for i18n.cpp (stoffu)
2018-01-10 11:55:35 +01:00
Riccardo Spagni
00f4ff26c8 Merge pull request #3021
dc6729a6 wallet2: std::unordered_set ctor is sometimes explicit (moneromooo-monero)
2018-01-10 11:55:19 +01:00
Riccardo Spagni
397a9f0656 Merge pull request #3007
0281f634 cmake: fix boost version detection (moneromooo-monero)
2018-01-10 11:55:00 +01:00
Riccardo Spagni
4e3716a2d2 Merge pull request #3005
369884a6 mnemonics: typo fix (4 bytes == 3 words, not 8 bytes) (stoffu)
2018-01-10 11:54:38 +01:00
Riccardo Spagni
0b5994fbec Merge pull request #3004
a2c845c7 cryptonote_protocol: internal error consistency size check (moneromooo-monero)
2018-01-10 11:54:23 +01:00
Riccardo Spagni
990389f09d Merge pull request #3002
9996d5e9 wallet2: guard against the dameon sending blocks before last checkpoint (moneromooo-monero)
eadaa6aa wallet_rpc_server: fix wallet leak on error exit (moneromooo-monero)
2018-01-10 11:54:11 +01:00
Riccardo Spagni
229e1ce7d1 Merge pull request #2997
7c4f01a7 blockchain_import: more informative verification switch (moneromooo-monero)
2018-01-10 11:53:57 +01:00
Riccardo Spagni
1c11ec71b5 Merge pull request #2995
6ccc51f6 wipeable_string: fix buffer overread (moneromooo-monero)
2018-01-10 11:53:42 +01:00
Riccardo Spagni
d08aee7a7e Merge pull request #2993
776b44f1 Add misc hardening flags to the cmake machinery (moneromooo-monero)
2018-01-10 11:53:26 +01:00
Riccardo Spagni
f9c66ba67c Merge pull request #2990
2d17feb0 factor STL container serialization (moneromooo-monero)
2018-01-10 11:53:05 +01:00
Riccardo Spagni
6c7eb5109d Merge pull request #2989
66eeeaa1 wallet2: fix failure to create tx if inputs are not enough for fee (moneromooo-monero)
2018-01-10 11:52:49 +01:00
Riccardo Spagni
529ca39e9d Merge pull request #2988
8a4610c3 blake256: fix wrong hash when computed in parts (moneromooo-monero)
2018-01-10 11:52:32 +01:00
Riccardo Spagni
2d60c9b738 Merge pull request #2986
373d1d50 epee: use strptime instead of std::get_time, for compatibility (moneromooo-monero)
2018-01-10 11:51:20 +01:00
Riccardo Spagni
ab8a32429a Merge pull request #2985
6d8b29ef fix some link errors in debug mode for macos (stoffu)
fdd4c5e5 move memwipe to epee to avoid common<->crypto circular dependencies (moneromooo-monero)
40ab12a7 epee: remove dependency on common (moneromooo-monero)
2018-01-10 11:50:58 +01:00
Riccardo Spagni
3ce7f2bead Merge pull request #2983
6fc4fc85 sweep_below: do not prematurely exclude subaddresses set (stoffu)
2018-01-10 11:50:36 +01:00
Riccardo Spagni
a71db6d239 Merge pull request #2981
b63afbaa simplewallet: detect typo for incoming_transfers options (stoffu)
2018-01-10 11:50:21 +01:00
Riccardo Spagni
9d73cd894c Merge pull request #2978
0e93b098 Add checks for termcap if needed by readline (Jethro Grassie)
2018-01-10 11:50:00 +01:00
Riccardo Spagni
bfe580787d Merge pull request #2976
c765f951 simplewallet: disable donations on testnet (Matt Smith)
2018-01-10 11:49:14 +01:00
Riccardo Spagni
420a803ff8 Merge pull request #2973
277a5aef wallet2: fix m_key_image_{partial,known} in_light_wallet code (moneromooo-monero)
2018-01-10 11:48:42 +01:00
Riccardo Spagni
c951bf1f72 Merge pull request #2972
586ee642 simplewallet: lock idle scope in {im,ex}port_{key_images,outputs} (moneromooo-monero)
2018-01-10 11:48:12 +01:00
Riccardo Spagni
0a110aefbb Merge pull request #2971
ae860230 Fix exceptions not finding txpool txes when relaying (moneromooo-monero)
2018-01-10 11:45:15 +01:00
stoffu
6d8b29ef28 fix some link errors in debug mode for macos 2018-01-10 01:57:56 +00:00
moneromooo-monero
fdd4c5e577 move memwipe to epee to avoid common<->crypto circular dependencies 2018-01-10 01:57:54 +00:00
moneromooo-monero
40ab12a773 epee: remove dependency on common 2018-01-10 01:57:51 +00:00
Maxithi
d188840cc2 Improved terminology from create to generate 2018-01-09 21:46:44 +01:00
Guillaume LE VAILLANT
64f36300fb Check if lrelease is working before trying to use it
On some systems, there is a /usr/bin/lrelease wrapper even if the real
lrelease program is not installed. So let's try to execute lrelease
after it has been found by find_program to see if it is really working.
2018-01-09 10:35:14 +01:00
moneromooo-monero
5f5a51a6c8 util: warn if unbound was not built with threads
This can causes crashes in libunbound
2018-01-08 10:58:50 +00:00
Onur Altun
8b50209ca0 fix for warning
monero/tests/unit_tests/memwipe.cpp:50:8: Warning: suggest explicit braces to avoid ambiguous 'else' [-Wdangling-else]
     if (wipe) ASSERT_TRUE(memcmp(quux, "bar", 3));
2018-01-08 06:58:48 +03:00
Maxithi
c677586842 Ignore cmake-build-debug folder 2018-01-07 18:05:55 +01:00
Nick Johnson
fa5c0bab44 Implement #3045, fixing RPC snakecases 2018-01-06 15:11:36 -06:00
AJIekceu4
0811b9242b fix some confirmation dialog, add missing symbols
Change some confirmation dialog to look like other ones (add symbol ":" and space)
So, it will look like: (Y/Yes/N/No): y
Now it look: (Y/Yes/N/No)y
2018-01-06 22:04:04 +07:00
Maxithi
9ffa97fe98 Factor the monero donation address
Signed-off-by: Maxithi <34792056+Maxithi@users.noreply.github.com>
2018-01-05 12:58:40 +01:00
Nick Johnson
301ec15c49 Change cryptonote::COMMAND_RPC_SET_LIMIT::response to use int64_t 2018-01-04 21:01:10 -06:00
Maxithi
d507167fa5 Removed unused mac-specific output folder path 2018-01-04 21:16:44 +01:00
moneromooo-monero
3e635a3cef wallet2: allow failing parse_tx_extra
It can fail if it fails to parse extra, while still having filled
the returned data with partial contents
2018-01-04 15:38:49 +00:00
moneromooo-monero
62c45c0df1 performance_tests: add a --filter option to select what to run
Removes a good bit of annoyance running those
2018-01-04 14:46:51 +00:00
moneromooo-monero
dff97112c8 easylogging++: do not use crash log code on android, etc 2018-01-04 12:50:43 +00:00
Guillaume LE VAILLANT
f035478d35 Fix translations header generation when cross-compilating
Define generate_translations_header as an external project to be able
to use the compilation toolchain for the host instead of the toolchain
for the target.
2018-01-04 11:36:29 +01:00
stoffu
fc041b58d6 common cmake: make sure translation_files.h is generated for i18n.cpp 2018-01-04 12:24:06 +09:00
Jethro Grassie
0e93b0986c Add checks for termcap if needed by readline 2018-01-02 13:26:22 -05:00
Riccardo Spagni
a529f0a6c9 Merge pull request #3019
294adc83 Additional fix for core_tests (Howard Chu)
d52b732e Fix stale readcursor flags (Howard Chu)
2018-01-02 00:32:12 +02:00
Riccardo Spagni
aa4195e199 Merge pull request #2977
c70e8daa threadpool: fix deadlock in recursive waiter usage (moneromooo-monero)
2018-01-02 00:31:56 +02:00
Riccardo Spagni
803f54b9fd Merge pull request #2967
55556fab wallet_rpc_server: factor transfer info return and add missing info (moneromooo-monero)
2018-01-02 00:31:30 +02:00
Riccardo Spagni
d7df56341e Merge pull request #2965
5388c81b Added using TOOLCHAIN_DIR varable on symlinking in android dockerfiles (damir)
2018-01-02 00:31:15 +02:00
Riccardo Spagni
989c9309ec Merge pull request #2964
3ed1a74c tests: remove unused/unfinished keccak bits (moneromooo-monero)
2018-01-02 00:30:54 +02:00
Riccardo Spagni
753215b9c6 Merge pull request #2963
0e19a394 tests: test wallets don't need a dummy temp file anymore (moneromooo-monero)
2018-01-02 00:30:33 +02:00
Riccardo Spagni
ee02c7ab03 Merge pull request #2962
14c29814 wallet2: fix use of uninitialized data (moneromooo-monero)
2018-01-02 00:30:01 +02:00
Riccardo Spagni
eb617be8f4 Merge pull request #2960
5cbcf0aa wallet: support for multisig seeds (moneromooo-monero)
2018-01-02 00:29:36 +02:00
Riccardo Spagni
759d8e8f80 Merge pull request #2956
dc642631 performance_tests: add a test for subaddress expansion (moneromooo-monero)
2018-01-02 00:29:15 +02:00
Riccardo Spagni
dd11bfb89c Merge pull request #2934
db2bc965 Embed the translation files in the binary (Guillaume LE VAILLANT)
2018-01-02 00:28:45 +02:00
moneromooo-monero
ed215d34e9 performance_tests: add RingCT MLSAG gen/ver tests 2017-12-31 18:58:45 +00:00
moneromooo-monero
69f9a07553 cryptonote_protocol: fix missing space in version mismatch message 2017-12-31 17:32:57 +00:00
moneromooo-monero
776b44f17b Add misc hardening flags to the cmake machinery
See https://wiki.debian.org/Hardening#User_Space
2017-12-31 14:26:12 +00:00
moneromooo-monero
eb39a3d7d3 wallet_api: make this optional but not built by default
It means it can still be built with make -C build/debug wallet_api
but still not DoS us while debugging
2017-12-31 11:14:20 +00:00
ordtrogen
ab10f4cea5 added Swedish translation 2017-12-30 21:52:41 +01:00
stoffu
a4b006f965 wallet2 bugfix: initialize subaddress table when generating from keys 2017-12-29 15:53:28 +09:00
Howard Chu
294adc8341 Additional fix for core_tests
Reset thread-local info if it doesn't match the current env.
Only happens when a process opens/closes env multiple times in the
same process, doesn't affect monerod.
2017-12-28 20:24:08 +00:00
moneromooo-monero
dc6729a66a wallet2: std::unordered_set ctor is sometimes explicit 2017-12-28 10:20:12 +00:00
Riccardo Spagni
a0a8706946 Merge pull request #2955
0bcaf86c tests: fix link error in hash tests now needing common (moneromooo-monero)
2017-12-28 09:00:21 +02:00
Riccardo Spagni
a1a8262355 Merge pull request #2949
e20e489a Better definite article use (xmr-eric)
2017-12-28 09:00:00 +02:00
Riccardo Spagni
4f4174f330 Merge pull request #2947
e12ee76a README.md: Improve copy for supporting the project (xmr-eric)
2017-12-28 08:59:46 +02:00
Riccardo Spagni
3bbe2481ce Merge pull request #2946
1a686bf8 daemon: print num txes in print_bc (moneromooo-monero)
2017-12-28 08:59:31 +02:00
Riccardo Spagni
95a687d584 Merge pull request #2945
9e07ccf1 daemon: remove some superfluous includes (moneromooo-monero)
2017-12-28 08:59:16 +02:00
Riccardo Spagni
838b2e8a52 Merge pull request #2944
223e3788 unit_tests: fix memwipe test comparison (moneromooo-monero)
2017-12-28 08:59:01 +02:00
Riccardo Spagni
0ae3651cc9 Merge pull request #2942
4f45f9da simplewallet: factor out tx exceptions (moneromooo-monero)
2017-12-28 08:58:46 +02:00
Riccardo Spagni
5f562cf9e6 Merge pull request #2941
d0d38dc8 wallet2: print tx size in bytes and kB (moneromooo-monero)
2017-12-28 08:58:30 +02:00
Riccardo Spagni
8980aacbe8 Merge pull request #2940
da0fd71d only include the easylogging++ stack trace code when needed (moneromooo-monero)
81b04cfa easlogging++: omit some unneded macros (moneromooo-monero)
2017-12-28 08:57:59 +02:00
stoffu
03ac389022 zmq: use older 3-arg version of setsockopt 2017-12-28 13:15:49 +09:00
Howard Chu
d52b732efb Fix stale readcursor flags
Reset thread-specific flags when a write txn is started.
Also remove some redundant start-readtxn code.
2017-12-28 00:59:04 +00:00
stoffu
b63afbaa99 simplewallet: detect typo for incoming_transfers options 2017-12-28 07:53:31 +09:00
stoffu
6fc4fc850e sweep_below: do not prematurely exclude subaddresses set 2017-12-28 07:52:53 +09:00
moneromooo-monero
f06603a439 cryptonote_protocol: update target height when receiving blocks 2017-12-27 13:54:19 +00:00
moneromooo-monero
fe436eca46 apply_permutation.h: add #pragma once 2017-12-27 12:15:51 +00:00
Riccardo Spagni
395e209745 Merge pull request #2952
e3530789 wallet-api: added Utils::onStartup (stoffu)
2017-12-27 10:00:01 +02:00
stoffu
619bb7233b daemon+simplewallet: given an unknown command, show it 2017-12-27 15:23:34 +09:00
Michał Sałaban
07da9c806d Resolve addresses in get_transfers 2017-12-27 01:35:48 +01:00
moneromooo-monero
e4bbeff2f5 epee: check some error return values 2017-12-27 00:14:43 +00:00
Riccardo Spagni
270236e8f4 Merge pull request #2996
1a271d25 unbound: enable SHA1 (moneromooo-monero)
2017-12-26 17:42:57 +02:00
Jonny Heggheim
7883564541 Added Fedora devel dependencies 2017-12-26 15:13:41 +01:00
rbrunner7
50786ac70c simplewallet: Correct 3 multisig command usage help texts, e.g. for 'export_multisig_info' 2017-12-26 14:57:08 +01:00
moneromooo-monero
0281f63486 cmake: fix boost version detection 2017-12-26 12:09:54 +00:00
moneromooo-monero
da0fd71d3e only include the easylogging++ stack trace code when needed 2017-12-26 11:40:15 +00:00
moneromooo-monero
81b04cfa88 easlogging++: omit some unneded macros 2017-12-26 11:40:12 +00:00
stoffu
e3530789d3 wallet-api: added Utils::onStartup 2017-12-26 08:23:32 +09:00
Riccardo Spagni
4b156c003b Merge pull request #2611
cdd516fa tests : remove lib_wallet_api tests (guzzijones)
2017-12-25 22:49:07 +02:00
Riccardo Spagni
40df4905fd Merge pull request #3006
7e7b1a82 Revert "return subaddress in get_bulk_payments" (moneromooo-monero)
2017-12-25 22:08:56 +02:00
moneromooo-monero
7e7b1a8252 Revert "return subaddress in get_bulk_payments"
This reverts commit b60f48f0e3.
2017-12-25 20:04:40 +00:00
Riccardo Spagni
ca8c7e863f Merge pull request #2895
5ad312a1 wallet2: switch to chacha20 instead of chacha8 (moneromooo-monero)
1e5491e9 Add a chacha20 variant to go with chacha8 (moneromooo-monero)
2017-12-25 22:00:44 +02:00
Riccardo Spagni
0a5bfa7c73 Merge pull request #2938
aaae94f0 wallet2: reinstate the single preferred output selection (moneromooo-monero)
2017-12-25 21:42:22 +02:00
moneromooo-monero
5ad312a1c3 wallet2: switch to chacha20 instead of chacha8
Wallet caches and keys files are loaded with chacha8 as needed,
but only saved with chacha20. Other data (eg, cold wallet data
files, etc) will be incompatible.
2017-12-25 19:28:06 +00:00
moneromooo-monero
1e5491e942 Add a chacha20 variant to go with chacha8 2017-12-25 19:28:03 +00:00
Riccardo Spagni
6ca30ae666 Merge pull request #2936
cb9aa23c levin_protocol_handler_async: another attempt at fixing at exception (moneromooo-monero)
64d23ce3 Revert "epee: keep a ref to a connection we're deleting" (moneromooo-monero)
2017-12-25 21:21:17 +02:00
Riccardo Spagni
409e9bb029 Merge pull request #2931
04349492 wallet2: error out in get_seed if the language is invalid (moneromooo-monero)
2017-12-25 21:21:00 +02:00
Riccardo Spagni
effdc82b58 Merge pull request #2930
7f4bb612 levin_protocol_handler_async: add missing response handler locking (moneromooo-monero)
2017-12-25 21:20:41 +02:00
Riccardo Spagni
b38f6dcf0b Merge pull request #2929
ae55bacd resumption support for updates using range requests (moneromooo-monero)
fe0fae50 epee: add a get_file_size function (moneromooo-monero)
2017-12-25 21:20:22 +02:00
Riccardo Spagni
c611cca462 Merge pull request #2928
d28c388f p2p: stop net server before closing starting connections (moneromooo-monero)
2017-12-25 21:19:58 +02:00
Riccardo Spagni
db09247c68 Merge pull request #2926
6b5bd129 Account tagging (stoffu)
2017-12-25 21:19:33 +02:00
Riccardo Spagni
3b33bc0819 Merge pull request #2924
67fe4b1b Add Guix SD to available distro packages in README.md (vasi)
2017-12-25 21:19:16 +02:00
Riccardo Spagni
c443a98217 Merge pull request #2923
a7e2e1b0 fix: bind RPC to all interfaces inside Docker container (Alexander Azarov)
2017-12-25 21:18:59 +02:00
Riccardo Spagni
32c14e0f37 Merge pull request #2922
a1d44f27 updates: use https for updates (moneromooo-monero)
472a93c8 download: SSL suport (moneromooo-monero)
2017-12-25 21:18:29 +02:00
Riccardo Spagni
2b00899bb2 Merge pull request #2920
bd5cce07 network_throttle: fix ineffective locking (moneromooo-monero)
e0a61299 network_throttle: remove unused xxx static member (moneromooo-monero)
24f584d9 cryptonote_core: remove unused functions with off by one bugs (moneromooo-monero)
b1634aa3 blockchain: don't leave dangling pointers in this (moneromooo-monero)
8e60b81c cryptonote_core: fix db leak on error (moneromooo-monero)
213e326c abstract_tcp_server2: log init_server errors as fatal (moneromooo-monero)
b51dc566 use const refs in for loops for non tiny types (moneromooo-monero)
f0568ca6 net_parse_helpers: fix regex error checking (moneromooo-monero)
b49ddc76 check accessing an element past the end of a container (moneromooo-monero)
2305bf26 check return value for generate_key_derivation and derive_public_key (moneromooo-monero)
a4240d9f catch const exceptions (moneromooo-monero)
45a1c4c0 add empty container sanity checks when using front() and back() (moneromooo-monero)
56fa6ce1 tests: fix a buffer overread in a unit test (moneromooo-monero)
b4524892 rpc: guard against json parsing a non object (moneromooo-monero)
c2ed8618 easylogging++: avoid buffer underflow (moneromooo-monero)
187a6ab2 epee: trap failure to parse URI from request (moneromooo-monero)
061789b5 checkpoints: trap failure to load JSON checkpoints (moneromooo-monero)
ba2fefb9 checkpoints: pass std::string by const ref, not const value (moneromooo-monero)
38c8f4e0 mlog: terminate a string at last char, just in case (moneromooo-monero)
d753d716 fix a few leaks by throwing objects, not newed pointers to objects (moneromooo-monero)
fe568db8 p2p: use size_t for arbitrary counters instead of uint8_t (moneromooo-monero)
46d6fa35 cryptonote_protocol: sanity check chain hashes from peer (moneromooo-monero)
25584f86 cryptonote_protocol: print peer versions when unexpected (moneromooo-monero)
490a5d41 rpc: do not try to use an invalid txid in relay_tx (moneromooo-monero)
2017-12-25 21:17:52 +02:00
Riccardo Spagni
170f598ac9 Merge pull request #2918
f5bc7f18 simplewallet: fix default unspent_outputs output with subaddresses (moneromooo-monero)
2017-12-25 21:17:32 +02:00
Riccardo Spagni
8b40bc27a2 Merge pull request #2916
a9217641 wallet-rpc: added receiving address to res of get(_bulk)_payments; selective addresses for getaddress (stoffu)
2017-12-25 21:17:16 +02:00
Riccardo Spagni
f04d4a78de Merge pull request #2910
37f9c6e6 Dockerfile: add option to set build parallelism (MoroccanMalinois)
2017-12-25 21:17:00 +02:00
Riccardo Spagni
13b846971c Merge pull request #2909
dba2de61 levin_protocol_handler_async: call handler destroy function on dtor (moneromooo-monero)
2017-12-25 21:16:37 +02:00
Riccardo Spagni
9d1c4408ad Merge pull request #2905
bd1f6029 http_client: rewrite header parsing manually for speed (moneromooo-monero)
ec724eb6 tests: add levin fuzz test (moneromooo-monero)
f1bdc9a4 tests: add http client fuzz test (moneromooo-monero)
0272df9e add parse_url fuzz test (moneromooo-monero)
261b0dd0 tests: add base58 fuzz test (moneromooo-monero)
fd052087 fuzz_testing: allow automatically resuming an interrupted job (moneromooo-monero)
c80bb0eb tests: don't init stuff we don't need in fuzz tests - faster (moneromooo-monero)
53b83a83 tests: better load-from-binary fuzz test data file (moneromooo-monero)
1a379ef6 fuzz_testing: build with ASAN (assumed to be available) (moneromooo-monero)
4cd4a431 fuzz_testing: create out directory if needed, and fix filename passing (moneromooo-monero)
c27d9092 Makefile: build fuzz tests statically, starts faster (moneromooo-monero)
95aa0bf7 add load_from_binary/load_from_json fuzzers (moneromooo-monero)
2017-12-25 21:16:21 +02:00
Riccardo Spagni
d06f3ea9ad Merge pull request #2902
1741fb5f node_rpc_proxy: remove unused local and time call (moneromooo-monero)
2017-12-25 21:16:01 +02:00
Riccardo Spagni
b3dddb22fe Merge pull request #2899
b60f48f0 return subaddress in get_bulk_payments (Dmitriy Plekhanov)
2017-12-25 21:15:08 +02:00
Riccardo Spagni
fae44be777 Merge pull request #2897
463d385c add libsodium as dependency for building in readme (Gingeropolous)
2017-12-25 21:14:43 +02:00
Riccardo Spagni
2ef299f2a9 Merge pull request #2891
3f24e901 wallet2: don't write a .new file when not needed (moneromooo-monero)
2017-12-25 21:14:20 +02:00
Riccardo Spagni
2f09828ea8 Merge pull request #2890
83b0f9e6 version: add -master to master version (moneromooo-monero)
493f7d09 util: allow non numeric version parts (moneromooo-monero)
2017-12-25 21:13:59 +02:00
Riccardo Spagni
2d1965f31b Merge pull request #2888
ca18ff64 wallet2: detect spends in txes without a valid public tx key (moneromooo-monero)
6afcd8e3 cn_deserialize: print tx extra fields in partly decoded tx extra (moneromooo-monero)
2017-12-25 21:13:33 +02:00
stoffu
369884a669 mnemonics: typo fix (4 bytes == 3 words, not 8 bytes) 2017-12-25 19:57:38 +09:00
Riccardo Spagni
b373d0f15e Merge pull request #2994
2018cf74 Fix Windows build (dEBRUYNE-1)
2017-12-24 18:49:48 +02:00
moneromooo-monero
a2c845c7e3 cryptonote_protocol: internal error consistency size check 2017-12-24 13:04:40 +00:00
moneromooo-monero
9996d5e96c wallet2: guard against the dameon sending blocks before last checkpoint 2017-12-24 12:12:40 +00:00
moneromooo-monero
eadaa6aaa3 wallet_rpc_server: fix wallet leak on error exit
Makes it easier to debug leaks
2017-12-24 12:12:37 +00:00
moneromooo-monero
7c4f01a792 blockchain_import: more informative verification switch 2017-12-23 18:47:05 +00:00
moneromooo-monero
1a271d25a1 unbound: enable SHA1
Fixes the unit test failure about SHA1 being unavailable,
and hopefully the monerod complaints about not being able
to verify DNSSEC.

Thanks to iDunk for the remote Windows testing.
2017-12-23 16:14:49 +00:00
moneromooo-monero
6ccc51f645 wipeable_string: fix buffer overread 2017-12-23 15:30:04 +00:00
dEBRUYNE-1
2018cf74a6 Fix Windows build
Fix no new line
2017-12-23 15:27:30 +01:00
moneromooo-monero
bd1f6029a3 http_client: rewrite header parsing manually for speed
boost::regex is stupendously atrocious at parsing malformed data
2017-12-23 11:29:58 +00:00
moneromooo-monero
ec724eb64a tests: add levin fuzz test 2017-12-23 11:29:55 +00:00
moneromooo-monero
f1bdc9a42a tests: add http client fuzz test 2017-12-23 11:29:52 +00:00
moneromooo-monero
0272df9e61 add parse_url fuzz test 2017-12-23 11:29:49 +00:00
moneromooo-monero
261b0dd0e0 tests: add base58 fuzz test 2017-12-23 11:27:45 +00:00
moneromooo-monero
fd05208762 fuzz_testing: allow automatically resuming an interrupted job 2017-12-23 11:27:42 +00:00
moneromooo-monero
c80bb0eb6f tests: don't init stuff we don't need in fuzz tests - faster 2017-12-23 11:27:40 +00:00
moneromooo-monero
53b83a83fc tests: better load-from-binary fuzz test data file
Looks like there's some kind of header/signature
2017-12-23 11:27:37 +00:00
moneromooo-monero
1a379ef656 fuzz_testing: build with ASAN (assumed to be available) 2017-12-23 11:27:34 +00:00
moneromooo-monero
4cd4a4313d fuzz_testing: create out directory if needed, and fix filename passing 2017-12-23 11:27:31 +00:00
moneromooo-monero
c27d909239 Makefile: build fuzz tests statically, starts faster 2017-12-23 11:27:28 +00:00
moneromooo-monero
95aa0bf79b add load_from_binary/load_from_json fuzzers 2017-12-23 11:27:25 +00:00
moneromooo-monero
c70e8daa91 threadpool: fix deadlock in recursive waiter usage
If a queued job uses a waiter, then we want to run that waiter's
jobs in the current thread if all threads are busy, even if the
queue is empty, since there is no guarantee that any thread will
free up to take care of that new job, since all the threads might
be running a job which spawns such a recursive job and will block
till that recursive job is done, which it will never be since it
relies on the queue being polled by one of those blocked threads.
2017-12-23 09:00:43 +00:00
guzzijones
cdd516fae3 tests : remove lib_wallet_api tests 2017-12-22 20:52:22 +00:00
moneromooo-monero
2d17feb060 factor STL container serialization 2017-12-22 19:47:12 +00:00
moneromooo-monero
8a4610c315 blake256: fix wrong hash when computed in parts
This does not happen when used by the monero code
2017-12-22 12:08:02 +00:00
moneromooo-monero
66eeeaa1a2 wallet2: fix failure to create tx if inputs are not enough for fee 2017-12-21 22:11:16 +00:00
moneromooo-monero
373d1d504b epee: use strptime instead of std::get_time, for compatibility 2017-12-21 16:04:47 +00:00
Matt Smith
c765f9512c simplewallet: disable donations on testnet 2017-12-20 17:12:22 +00:00
moneromooo-monero
277a5aefaa wallet2: fix m_key_image_{partial,known} in_light_wallet code 2017-12-20 14:54:14 +00:00
moneromooo-monero
586ee64209 simplewallet: lock idle scope in {im,ex}port_{key_images,outputs}
This ensures we can't get races
2017-12-20 14:21:50 +00:00
moneromooo-monero
ae8602303a Fix exceptions not finding txpool txes when relaying 2017-12-20 13:02:53 +00:00
moneromooo-monero
5cbcf0aa25 wallet: support for multisig seeds
They are hex rather than words, because they are a lot longer
than "normal" seeds, as they have to embed a lot more information
2017-12-20 10:22:29 +00:00
moneromooo-monero
55556fabf9 wallet_rpc_server: factor transfer info return and add missing info
Additional tx keys, amounts and fees were missing in some cases
2017-12-20 08:56:31 +00:00
Riccardo Spagni
7a9a4a6669 Merge pull request #2961
6c94516f wipeable_string: move a wipe from reserve to grow (moneromooo-monero)
5f801b6a wipeable_string: ignore reserve size less than actual size (moneromooo-monero)
9ec44a2b wipeable_string: fix clear and push_back (moneromooo-monero)
2017-12-19 22:03:07 +02:00
damir
5388c81bbc Added using TOOLCHAIN_DIR varable on symlinking in android dockerfiles 2017-12-19 17:32:49 +03:00
moneromooo-monero
6c94516fb4 wipeable_string: move a wipe from reserve to grow
That way, all implicit wipes ends up in grow, which is more robust
2017-12-19 14:06:42 +00:00
moneromooo-monero
5f801b6adf wipeable_string: ignore reserve size less than actual size
This was asserting, but stoffu pointed out the std::string standard
considers this ok and ignorable
2017-12-19 14:00:41 +00:00
moneromooo-monero
3ed1a74ca3 tests: remove unused/unfinished keccak bits
The author doesn't seem to be finishing/fixing this, and it
doesn't do anything.
2017-12-19 13:14:12 +00:00
moneromooo-monero
0e19a39469 tests: test wallets don't need a dummy temp file anymore 2017-12-19 12:56:21 +00:00
moneromooo-monero
14c2981469 wallet2: fix use of uninitialized data 2017-12-19 12:33:01 +00:00
moneromooo-monero
9ec44a2b06 wipeable_string: fix clear and push_back 2017-12-19 11:55:45 +00:00
moneromooo-monero
dc64263155 performance_tests: add a test for subaddress expansion 2017-12-18 16:15:34 +00:00
moneromooo-monero
4f45f9da40 simplewallet: factor out tx exceptions 2017-12-18 15:56:36 +00:00
moneromooo-monero
bd5cce07b3 network_throttle: fix ineffective locking 2017-12-18 15:16:11 +00:00
moneromooo-monero
e0a61299fb network_throttle: remove unused xxx static member 2017-12-18 15:16:09 +00:00
moneromooo-monero
24f584d90d cryptonote_core: remove unused functions with off by one bugs 2017-12-18 15:16:06 +00:00
moneromooo-monero
b1634aa3e8 blockchain: don't leave dangling pointers in this 2017-12-18 15:16:03 +00:00
moneromooo-monero
8e60b81c48 cryptonote_core: fix db leak on error 2017-12-18 15:16:00 +00:00
moneromooo-monero
213e326cc9 abstract_tcp_server2: log init_server errors as fatal
so they show up by default
2017-12-18 15:15:57 +00:00
moneromooo-monero
b51dc56687 use const refs in for loops for non tiny types 2017-12-18 15:15:54 +00:00
moneromooo-monero
f0568ca6ac net_parse_helpers: fix regex error checking 2017-12-18 15:15:52 +00:00
moneromooo-monero
b49ddc766d check accessing an element past the end of a container 2017-12-18 15:15:49 +00:00
moneromooo-monero
2305bf260d check return value for generate_key_derivation and derive_public_key 2017-12-18 15:15:46 +00:00
moneromooo-monero
a4240d9ffc catch const exceptions 2017-12-18 15:15:43 +00:00
moneromooo-monero
45a1c4c088 add empty container sanity checks when using front() and back() 2017-12-18 15:15:40 +00:00
moneromooo-monero
56fa6ce15f tests: fix a buffer overread in a unit test
and remove a leftover debugging sanity check
2017-12-18 15:15:37 +00:00
moneromooo-monero
b4524892fb rpc: guard against json parsing a non object 2017-12-18 15:15:32 +00:00
moneromooo-monero
c2ed8618e4 easylogging++: avoid buffer underflow 2017-12-18 15:15:29 +00:00
moneromooo-monero
187a6ab2d2 epee: trap failure to parse URI from request 2017-12-18 15:15:26 +00:00
moneromooo-monero
061789b5dd checkpoints: trap failure to load JSON checkpoints 2017-12-18 15:15:23 +00:00
moneromooo-monero
ba2fefb9a4 checkpoints: pass std::string by const ref, not const value 2017-12-18 15:15:19 +00:00
moneromooo-monero
38c8f4e0a3 mlog: terminate a string at last char, just in case 2017-12-18 15:15:16 +00:00
moneromooo-monero
d753d716a6 fix a few leaks by throwing objects, not newed pointers to objects 2017-12-18 15:15:13 +00:00
moneromooo-monero
fe568db83d p2p: use size_t for arbitrary counters instead of uint8_t 2017-12-18 15:15:10 +00:00
moneromooo-monero
46d6fa35c9 cryptonote_protocol: sanity check chain hashes from peer 2017-12-18 15:15:07 +00:00
moneromooo-monero
25584f8639 cryptonote_protocol: print peer versions when unexpected
also avoid integer underflow on zero height
2017-12-18 15:15:05 +00:00
moneromooo-monero
490a5d41ca rpc: do not try to use an invalid txid in relay_tx 2017-12-18 15:15:01 +00:00
moneromooo-monero
0bcaf86cbd tests: fix link error in hash tests now needing common 2017-12-18 15:06:01 +00:00
stoffu
a921764162 wallet-rpc: added receiving address to res of get(_bulk)_payments; selective addresses for getaddress 2017-12-18 10:22:34 +09:00
stoffu
6b5bd129b4 Account tagging 2017-12-18 10:21:47 +09:00
Riccardo Spagni
1cc7451130 Merge pull request #2134
ceabc4f9 change the N-1/N multisig second message signer for auth (moneromooo-monero)
55c2845d core_tests: multisig test now tests multiple inputs (moneromooo-monero)
98db7ee4 wallet: factor multisig info parsing (moneromooo-monero)
31a97e76 wallet: use raw encrypted data in multisig import/export RPC (moneromooo-monero)
2fa707d1 wallet: add multisig sign/submit RPC (moneromooo-monero)
e36f5b60 Match surae's recommendation to derive multisig keys (moneromooo-monero)
a36c261d wallet2: fix slow multisig unit tests with subaddress patch (moneromooo-monero)
fa569712 make multisig work with subaddresses (moneromooo-monero)
dffa0dce simplewallet: add export_raw_multisig command (moneromooo-monero)
7f4c220b simplewallet: add multisig to wallet type in wallet_info output (moneromooo-monero)
26529038 wallet: guard against partly initialized multisig wallet (moneromooo-monero)
66e34e85 add multisig core test and factor multisig building blocks (moneromooo-monero)
f4eda44c N-1/N multisig (moneromooo-monero)
cd64c799 multisig address generation RPC (moneromooo-monero)
fff871a4 gen_multisig: generates multisig wallets if participants trust each other (moneromooo-monero)
95a21a79 wallet2: allow empty wallet filename to avoid saving data (moneromooo-monero)
b84b3565 tests: add multisig unit tests (moneromooo-monero)
4c313324 Add N/N multisig tx generation and signing (moneromooo-monero)
6d219a92 wallet: add multisig key generation (moneromooo-monero)
2017-12-17 21:05:16 +02:00
Riccardo Spagni
2879a9be3c Merge pull request #2950
d9b137f1 cryptonote_core: fix blockchain init call after prototype change (moneromooo-monero)
2017-12-17 21:04:17 +02:00
moneromooo-monero
d9b137f161 cryptonote_core: fix blockchain init call after prototype change 2017-12-17 18:47:46 +00:00
xmr-eric
e20e489a64 Better definite article use 2017-12-17 12:33:43 -05:00
xmr-eric
e12ee76ad2 README.md: Improve copy for supporting the project 2017-12-17 12:11:25 -05:00
moneromooo-monero
ceabc4f92b change the N-1/N multisig second message signer for auth 2017-12-17 16:12:50 +00:00
moneromooo-monero
55c2845d1a core_tests: multisig test now tests multiple inputs 2017-12-17 16:12:47 +00:00
moneromooo-monero
98db7ee467 wallet: factor multisig info parsing 2017-12-17 16:12:44 +00:00
moneromooo-monero
31a97e761e wallet: use raw encrypted data in multisig import/export RPC 2017-12-17 16:12:41 +00:00
moneromooo-monero
2fa707d1a5 wallet: add multisig sign/submit RPC 2017-12-17 16:12:35 +00:00
moneromooo-monero
e36f5b6021 Match surae's recommendation to derive multisig keys 2017-12-17 16:12:32 +00:00
moneromooo-monero
a36c261d7a wallet2: fix slow multisig unit tests with subaddress patch
While there, move the wallet2 ctor to the cpp file as it's a huge
amount of init list now, and remove an unused one.
2017-12-17 16:12:30 +00:00
moneromooo-monero
fa5697127f make multisig work with subaddresses
Thanks to kenshi84 for help getting this work
2017-12-17 16:12:27 +00:00
moneromooo-monero
dffa0dceaf simplewallet: add export_raw_multisig command
It exports raw transactions, so they may be used by other tools,
for instance to be relayed to the network externally.
2017-12-17 16:12:24 +00:00
moneromooo-monero
7f4c220b70 simplewallet: add multisig to wallet type in wallet_info output 2017-12-17 16:12:21 +00:00
moneromooo-monero
265290388b wallet: guard against partly initialized multisig wallet 2017-12-17 16:12:18 +00:00
moneromooo-monero
66e34e85b1 add multisig core test and factor multisig building blocks 2017-12-17 16:12:15 +00:00
moneromooo-monero
f4eda44ce3 N-1/N multisig 2017-12-17 16:12:12 +00:00
moneromooo-monero
cd64c7990c multisig address generation RPC 2017-12-17 16:12:09 +00:00
moneromooo-monero
fff871a455 gen_multisig: generates multisig wallets if participants trust each other 2017-12-17 16:12:06 +00:00
moneromooo-monero
95a21a793d wallet2: allow empty wallet filename to avoid saving data
Useful to speed tests up and avoid unnecessary leftover files
2017-12-17 16:12:03 +00:00
moneromooo-monero
b84b3565f3 tests: add multisig unit tests 2017-12-17 16:12:00 +00:00
moneromooo-monero
4c313324b1 Add N/N multisig tx generation and signing
Scheme by luigi1111:

    Multisig for RingCT on Monero

    2 of 2

    User A (coordinator):
    Spendkey b,B
    Viewkey a,A (shared)

    User B:
    Spendkey c,C
    Viewkey a,A (shared)

    Public Address: C+B, A

    Both have their own watch only wallet via C+B, a

    A will coordinate spending process (though B could easily as well, coordinator is more needed for more participants)

    A and B watch for incoming outputs

    B creates "half" key images for discovered output D:
    I2_D = (Hs(aR)+c) * Hp(D)

    B also creates 1.5 random keypairs (one scalar and 2 pubkeys; one on base G and one on base Hp(D)) for each output, storing the scalar(k) (linked to D),
    and sending the pubkeys with I2_D.

    A also creates "half" key images:
    I1_D = (Hs(aR)+b) * Hp(D)

    Then I_D = I1_D + I2_D

    Having I_D allows A to check spent status of course, but more importantly allows A to actually build a transaction prefix (and thus transaction).

    A builds the transaction until most of the way through MLSAG_Gen, adding the 2 pubkeys (per input) provided with I2_D
    to his own generated ones where they are needed (secret row L, R).

    At this point, A has a mostly completed transaction (but with an invalid/incomplete signature). A sends over the tx and includes r,
    which allows B (with the recipient's address) to verify the destination and amount (by reconstructing the stealth address and decoding ecdhInfo).

    B then finishes the signature by computing ss[secret_index][0] = ss[secret_index][0] + k - cc[secret_index]*c (secret indices need to be passed as well).

    B can then broadcast the tx, or send it back to A for broadcasting. Once B has completed the signing (and verified the tx to be valid), he can add the full I_D
    to his cache, allowing him to verify spent status as well.

    NOTE:
    A and B *must* present key A and B to each other with a valid signature proving they know a and b respectively.
    Otherwise, trickery like the following becomes possible:
    A creates viewkey a,A, spendkey b,B, and sends a,A,B to B.
    B creates a fake key C = zG - B. B sends C back to A.
    The combined spendkey C+B then equals zG, allowing B to spend funds at any time!
    The signature fixes this, because B does not know a c corresponding to C (and thus can't produce a signature).

    2 of 3

    User A (coordinator)
    Shared viewkey a,A
    "spendkey" j,J

    User B
    "spendkey" k,K

    User C
    "spendkey" m,M

    A collects K and M from B and C
    B collects J and M from A and C
    C collects J and K from A and B

    A computes N = nG, n = Hs(jK)
    A computes O = oG, o = Hs(jM)

    B anc C compute P = pG, p = Hs(kM) || Hs(mK)
    B and C can also compute N and O respectively if they wish to be able to coordinate

    Address: N+O+P, A

    The rest follows as above. The coordinator possesses 2 of 3 needed keys; he can get the other
    needed part of the signature/key images from either of the other two.

    Alternatively, if secure communication exists between parties:
    A gives j to B
    B gives k to C
    C gives m to A

    Address: J+K+M, A

    3 of 3

    Identical to 2 of 2, except the coordinator must collect the key images from both of the others.
    The transaction must also be passed an additional hop: A -> B -> C (or A -> C -> B), who can then broadcast it
    or send it back to A.

    N-1 of N

    Generally the same as 2 of 3, except participants need to be arranged in a ring to pass their keys around
    (using either the secure or insecure method).
    For example (ignoring viewkey so letters line up):
    [4 of 5]
    User: spendkey
    A: a
    B: b
    C: c
    D: d
    E: e

    a -> B, b -> C, c -> D, d -> E, e -> A

    Order of signing does not matter, it just must reach n-1 users. A "remaining keys" list must be passed around with
    the transaction so the signers know if they should use 1 or both keys.
    Collecting key image parts becomes a little messy, but basically every wallet sends over both of their parts with a tag for each.
    Thia way the coordinating wallet can keep track of which images have been added and which wallet they come from. Reasoning:
    1. The key images must be added only once (coordinator will get key images for key a from both A and B, he must add only one to get the proper key actual key image)
    2. The coordinator must keep track of which helper pubkeys came from which wallet (discussed in 2 of 2 section). The coordinator
    must choose only one set to use, then include his choice in the "remaining keys" list so the other wallets know which of their keys to use.

    You can generalize it further to N-2 of N or even M of N, but I'm not sure there's legitimate demand to justify the complexity. It might
    also be straightforward enough to support with minimal changes from N-1 format.
    You basically just give each user additional keys for each additional "-1" you desire. N-2 would be 3 keys per user, N-3 4 keys, etc.

The process is somewhat cumbersome:

To create a N/N multisig wallet:

 - each participant creates a normal wallet
 - each participant runs "prepare_multisig", and sends the resulting string to every other participant
 - each participant runs "make_multisig N A B C D...", with N being the threshold and A B C D... being the strings received from other participants (the threshold must currently equal N)

As txes are received, participants' wallets will need to synchronize so that those new outputs may be spent:

 - each participant runs "export_multisig FILENAME", and sends the FILENAME file to every other participant
 - each participant runs "import_multisig A B C D...", with A B C D... being the filenames received from other participants

Then, a transaction may be initiated:

 - one of the participants runs "transfer ADDRESS AMOUNT"
 - this partly signed transaction will be written to the "multisig_monero_tx" file
 - the initiator sends this file to another participant
 - that other participant runs "sign_multisig multisig_monero_tx"
 - the resulting transaction is written to the "multisig_monero_tx" file again
 - if the threshold was not reached, the file must be sent to another participant, until enough have signed
 - the last participant to sign runs "submit_multisig multisig_monero_tx" to relay the transaction to the Monero network
2017-12-17 16:11:57 +00:00
moneromooo-monero
6d219a9250 wallet: add multisig key generation
Scheme by luigi1111
2017-12-17 16:11:53 +00:00
moneromooo-monero
1a686bf8cc daemon: print num txes in print_bc 2017-12-17 12:55:40 +00:00
Riccardo Spagni
a3a8343051 Merge pull request #2857
7193b89f Scrub keys from memory just before scope end. (moneromooo-monero)
2017-12-17 13:00:11 +02:00
Riccardo Spagni
066fd7aced Merge pull request #2877
43f5269f Wallets now do not depend on the daemon rpc lib (moneromooo-monero)
bb89ae8b move connection_basic and network_throttle from src/p2p to epee (moneromooo-monero)
4abf25f3 cryptonote_core does not depend on p2p anymore (moneromooo-monero)
2017-12-17 12:59:44 +02:00
Riccardo Spagni
b806d9844e Merge pull request #2864
09ce03d6 move includes around to lessen overall load (moneromooo-monero)
2017-12-17 12:58:46 +02:00
moneromooo-monero
9e07ccf1f5 daemon: remove some superfluous includes 2017-12-17 10:28:39 +00:00
moneromooo-monero
223e3788ac unit_tests: fix memwipe test comparison
free might overwrite the memory, so we can't expect to see
the NULs we overwrote with, but at least we shouldn't see
the original data.
2017-12-17 09:56:36 +00:00
moneromooo-monero
43f5269f84 Wallets now do not depend on the daemon rpc lib
The shared RPC code is now moved off into a separate lib
2017-12-16 23:28:59 +00:00
moneromooo-monero
bb89ae8b20 move connection_basic and network_throttle from src/p2p to epee
These even had the epee namespace.
This fixes some ugly circular dependencies.
2017-12-16 23:28:43 +00:00
moneromooo-monero
4abf25f3c9 cryptonote_core does not depend on p2p anymore
As a followon side effect, this makes a lot of inline code
included only in particular cpp files (and instanciated
when necessary.
2017-12-16 23:28:38 +00:00
moneromooo-monero
09ce03d612 move includes around to lessen overall load 2017-12-16 22:46:38 +00:00
moneromooo-monero
7193b89fe5 Scrub keys from memory just before scope end.
Partially implements #74.

Securely erases keys from memory after they are no longer needed. Might have a
performance impact, which I haven't measured (perf measurements aren't
generally reliable on laptops).

Thanks to @stoffu for the suggestion to specialize the pod_to_hex/hex_to_pod
functions. Using overloads + SFINAE instead generalizes it so other types can
be marked as scrubbed without adding more boilerplate.
2017-12-16 15:40:33 -07:00
Riccardo Spagni
38ecd0526e Merge pull request #2881
41fc11fa Scheduled mandatory software upgrades (xmr-eric)
3b5382fe Keep VRP a proper noun (xmr-eric)
7160cbd6 CONTRIBUTING.md capitalization (xmr-eric)
f36ffc07 Shorten a title, remove a section, small edits (xmr-eric)
00179917 Capitalization on first word only (xmr-eric)
6ffae079 Readme.md: Normalize heading capitalization (xmr-eric)
2017-12-16 23:27:47 +02:00
Riccardo Spagni
8da24c2a57 Merge pull request #2878
abebe392 rpc: add offline state in info rpc (moneromooo-monero)
7696e849 core: make --offline also disable DNS lookups (moneromooo-monero)
2017-12-16 23:27:00 +02:00
Riccardo Spagni
ec63d64a67 Merge pull request #2874
25f4ab81 fixed linking against libreadline on OpenBSD (ston1th)
2017-12-16 23:26:13 +02:00
Riccardo Spagni
b88f0879b5 Merge pull request #2873
1c838552 Simplewallet.cpp: Fewer pleases in seed NOTE (xmr-eric)
3f18c642 Fix password capitalization mismatch (xmr-eric)
2017-12-16 23:25:43 +02:00
Riccardo Spagni
7998ffc26b Merge pull request #2871
2b0a32f8 Small cleanup of daemon synchronization output (xmr-eric)
2017-12-16 23:25:02 +02:00
Riccardo Spagni
9b511d3e93 Merge pull request #2866
cf5f6236 Corrections in rate limiting / trottle code, especially in 'out' direction (rbrunner7)
2017-12-16 23:24:41 +02:00
Riccardo Spagni
87158dca68 Merge pull request #2885
a1e3670b catch wallet decrypt false positive (Riccardo Spagni)
2017-12-16 23:24:16 +02:00
Riccardo Spagni
6c0953b15a Merge pull request #2860
3dffe71b new wipeable_string class to replace std::string passphrases (moneromooo-monero)
7a2a5741 utils: initialize easylogging++ in on_startup (moneromooo-monero)
54950829 use memwipe in a few relevant places (moneromooo-monero)
000666ff add a memwipe function (moneromooo-monero)
2017-12-16 23:19:27 +02:00
Riccardo Spagni
ce951ef560 Merge pull request #2856
009eed17 rpc: increase the max number of outs one can request (moneromooo-monero)
2017-12-16 23:15:43 +02:00
Riccardo Spagni
9045ff56fc Merge pull request #2551
3af19c80 set_node command, allows setting node without restart (Tobias Hoffmann)
2017-12-16 23:12:44 +02:00
moneromooo-monero
d0d38dc8e6 wallet2: print tx size in bytes and kB
Helpful now that tx sizes are smaller
2017-12-16 18:40:21 +00:00
moneromooo-monero
aaae94f00b wallet2: reinstate the single preferred output selection
Removing it nullified the min-outputs-{count,value} system,
and will not increase the number of attempted transactions
in the general case.
2017-12-16 12:31:03 +00:00
moneromooo-monero
cb9aa23cc5 levin_protocol_handler_async: another attempt at fixing at exception 2017-12-15 18:38:53 +00:00
Guillaume LE VAILLANT
db2bc96512 Embed the translation files in the binary
If a translation file exists in a "translations" directory located in
the same directory as the binary, it is used in priority (this can be
useful when working on translations as you don't have to recompile the
whole program all the time), and if no such file is found the embedded
translation file is used (if it exists).
2017-12-15 18:44:01 +01:00
vasi
67fe4b1b06 Add Guix SD to available distro packages in README.md 2017-12-15 15:00:04 +01:00
moneromooo-monero
64d23ce331 Revert "epee: keep a ref to a connection we're deleting"
This reverts commit f2939bdce8.
2017-12-15 13:23:21 +00:00
moneromooo-monero
043494924b wallet2: error out in get_seed if the language is invalid 2017-12-15 11:01:14 +00:00
moneromooo-monero
7f4bb612fb levin_protocol_handler_async: add missing response handler locking 2017-12-15 10:47:45 +00:00
moneromooo-monero
ae55bacd8c resumption support for updates using range requests 2017-12-15 10:46:23 +00:00
moneromooo-monero
fe0fae5089 epee: add a get_file_size function 2017-12-15 10:32:36 +00:00
moneromooo-monero
d28c388f88 p2p: stop net server before closing starting connections
This fixes a hang on exit due to race where a connection adds
itself to the server after the starting connections are closed,
but before the net server marks itself as stopped.
2017-12-15 10:31:12 +00:00
Alexander Azarov
a7e2e1b07f fix: bind RPC to all interfaces inside Docker container
Binding RPC to 127.0.0.1 makes no sense. Despite the fact port 18081 is
exposed, no one will be able to connect to the daemon.

RPC should be listening at all interfaces when running inside a Docker
container.
2017-12-14 23:11:30 +02:00
moneromooo-monero
a1d44f2746 updates: use https for updates 2017-12-14 13:33:06 +00:00
moneromooo-monero
472a93c83a download: SSL suport 2017-12-14 09:12:58 +00:00
moneromooo-monero
f5bc7f1855 simplewallet: fix default unspent_outputs output with subaddresses
If no subaddress index is given, consider all of them
2017-12-13 10:09:42 +00:00
Riccardo Spagni
319163d276 Merge pull request #2913
b927f0b1 cryptonote_protocol: fix corner case looping asking for same block hashes (moneromooo-monero)
2017-12-12 17:48:29 +02:00
MoroccanMalinois
37f9c6e651 Dockerfile: add option to set build parallelism 2017-12-11 23:33:08 +00:00
moneromooo-monero
dba2de61e7 levin_protocol_handler_async: call handler destroy function on dtor 2017-12-11 18:33:37 +00:00
Riccardo Spagni
f51bac990e Merge pull request #2906
27aa8ce9 net_utils_base: fix peer list parsing (moneromooo-monero)
fe5ab2c4 epee: fix kv_unserialize return value when a field is not found (moneromooo-monero)
2017-12-10 13:08:23 +02:00
Riccardo Spagni
f270382718 Merge pull request #2900
5cc84693 easylogging: show the 'no stack trace' warning only once (ston1th)
2017-12-10 12:57:23 +02:00
moneromooo-monero
27aa8ce95b net_utils_base: fix peer list parsing
Fields are written with their "name" as key, and that name changed.
2017-12-09 22:16:58 +00:00
Riccardo Spagni
0e7b29d62d Merge pull request #2904
46eaaae7 ringct: always use outPk.mask to decode amounts (moneromooo-monero)
2017-12-09 20:14:41 +02:00
moneromooo-monero
46eaaae79b ringct: always use outPk.mask to decode amounts 2017-12-09 18:02:55 +00:00
Riccardo Spagni
2b5abb8269 Merge pull request #2903
8d4469a0 ringct: do not include bulletproof commitments in signed message (moneromooo-monero)
2017-12-09 19:05:56 +02:00
Riccardo Spagni
2808585b24 Merge pull request #2901
ead48f7d core: fix input ordering from v7 (moneromooo-monero)
2017-12-09 19:05:37 +02:00
moneromooo-monero
8d4469a0ac ringct: do not include bulletproof commitments in signed message
Those are not serialized, but are restored from the outPk masks,
so depending on what tries to validate the tx, those commitments
may or may not be filled with valid data at the time. The outPk
masks are already hashed as part of the rctSigBase field.
2017-12-09 15:30:15 +00:00
moneromooo-monero
1741fb5f2b node_rpc_proxy: remove unused local and time call 2017-12-09 11:28:18 +00:00
moneromooo-monero
ead48f7d92 core: fix input ordering from v7 2017-12-09 11:24:38 +00:00
ston1th
5cc8469332 easylogging: show the 'no stack trace' warning only once
If execinfo.h is not available, output the stack trace warning only once, so we don't spam the build logs with it.
2017-12-09 10:01:31 +01:00
Riccardo Spagni
782a84f7b4 Merge pull request #2883
c83d0b3e add bulletproofs from v7 on testnet (moneromooo-monero)
8620ef0a bulletproofs: switch H/G in Pedersen commitments to match rct (moneromooo-monero)
d58835b2 integrate bulletproofs into monero (moneromooo-monero)
90b8d9f2 add bulletproofs to the build, with basic unit tests (moneromooo-monero)
fe120264 perf_timer: add non scoped start/stop timer defines (moneromooo-monero)
ada42914 add a version of ge_double_scalarmult_precomp_vartime with A precomp (moneromooo-monero)
d43eef6d ringct: add a version of addKeys which returns the result (moneromooo-monero)
7ff07928 sc_mul and sc_muladd (luigi1111)
3d0b54bd epee: add do while(0) around brace statement in a macro (moneromooo-monero)
2017-12-08 23:30:51 +02:00
Dmitriy Plekhanov
b60f48f0e3 return subaddress in get_bulk_payments 2017-12-08 18:45:53 +03:00
moneromooo-monero
c83d0b3ee2 add bulletproofs from v7 on testnet 2017-12-08 13:50:45 +00:00
moneromooo-monero
8620ef0a0d bulletproofs: switch H/G in Pedersen commitments to match rct
Changes from sarang
2017-12-08 13:48:18 +00:00
moneromooo-monero
d58835b2f6 integrate bulletproofs into monero 2017-12-08 13:48:15 +00:00
moneromooo-monero
90b8d9f271 add bulletproofs to the build, with basic unit tests
Based on Java code from Sarang Noether
2017-12-08 13:41:13 +00:00
Gingeropolous
463d385c96 add libsodium as dependency for building in readme
this finally got my debug-static-all to build. Obviously, its me, so this could use some edits or something.
2017-12-07 22:47:50 -05:00
xmr-eric
41fc11fab3 Scheduled mandatory software upgrades 2017-12-07 18:12:19 -05:00
moneromooo-monero
fe1202646c perf_timer: add non scoped start/stop timer defines 2017-12-07 19:23:14 +00:00
moneromooo-monero
ada4291469 add a version of ge_double_scalarmult_precomp_vartime with A precomp 2017-12-07 19:23:10 +00:00
moneromooo-monero
d43eef6def ringct: add a version of addKeys which returns the result 2017-12-07 19:23:08 +00:00
luigi1111
7ff07928ad sc_mul and sc_muladd 2017-12-07 19:23:05 +00:00
moneromooo-monero
3d0b54bd01 epee: add do while(0) around brace statement in a macro
Allows use in more complex expressions
2017-12-07 19:23:02 +00:00
moneromooo-monero
3f24e90149 wallet2: don't write a .new file when not needed 2017-12-07 12:07:18 +00:00
moneromooo-monero
83b0f9e6c5 version: add -master to master version
This makes master versions play better with automated update checks
2017-12-07 10:33:12 +00:00
moneromooo-monero
493f7d0974 util: allow non numeric version parts 2017-12-07 10:32:48 +00:00
Tobias Hoffmann
3af19c8011 set_node command, allows setting node without restart 2017-12-06 18:16:50 +01:00
moneromooo-monero
ca18ff644b wallet2: detect spends in txes without a valid public tx key 2017-12-06 15:55:06 +00:00
moneromooo-monero
6afcd8e37d cn_deserialize: print tx extra fields in partly decoded tx extra 2017-12-06 15:54:17 +00:00
xmr-eric
3b5382fe70 Keep VRP a proper noun 2017-12-05 10:54:51 -05:00
xmr-eric
7160cbd683 CONTRIBUTING.md capitalization 2017-12-04 21:21:55 -05:00
xmr-eric
f36ffc0714 Shorten a title, remove a section, small edits 2017-12-04 21:11:31 -05:00
xmr-eric
0017991753 Capitalization on first word only 2017-12-04 14:59:47 -05:00
Riccardo Spagni
a1e3670b33 catch wallet decrypt false positive 2017-12-04 11:07:32 +02:00
moneromooo-monero
b927f0b17e cryptonote_protocol: fix corner case looping asking for same block hashes 2017-12-03 13:05:10 +00:00
xmr-eric
6ffae07919 Readme.md: Normalize heading capitalization 2017-12-02 15:40:29 -05:00
Riccardo Spagni
8512a83572 Merge pull request #2845
c256a248 Android dockerfile: add zmq dependency (MoroccanMalinois)
2017-12-02 09:27:04 +02:00
Riccardo Spagni
55e2b5c0b0 Merge pull request #2844
8198f031 Add mdb_drop tool (Howard Chu)
2017-12-02 09:26:48 +02:00
Riccardo Spagni
bacbc0705f Merge pull request #2843
26ce640f Update README.md with info about release timelines (Gingeropolous)
2017-12-02 09:26:32 +02:00
Riccardo Spagni
3052dab81d Merge pull request #2836
23b6f685 RPC: allow binding of restricted port in addition to core port (Tim L)
2017-12-02 09:26:15 +02:00
Riccardo Spagni
81fb832082 Merge pull request #2833
b0426d4c Fixes #759 Add sanity check on restore height (Cifrado)
2017-12-02 09:25:53 +02:00
Riccardo Spagni
b0c63ceb73 Merge pull request #2854
36b41ab2 added missing link for OpenBSD build instructions (ston1th)
2017-12-02 09:25:05 +02:00
Riccardo Spagni
63f0031965 Merge pull request #2853
c0ae52c0 simplewallet: prevent (wrong) integrated adresses on accounts > 0 (moneromooo-monero)
2017-12-02 09:24:53 +02:00
Riccardo Spagni
476e64053d Merge pull request #2852
631b35e7 CONTRIBUTING.md: mention git add -p as a way to avoid spurious changes (moneromooo-monero)
2017-12-02 09:24:39 +02:00
Riccardo Spagni
301279709d Merge pull request #2850
d875a9ff wallet2: detect multiple outputs from a tx to different subaddresses (moneromooo-monero)
2017-12-02 09:24:25 +02:00
Riccardo Spagni
bae16bf878 Merge pull request #2847
7256d9a7 Fix versioning (vdo)
e459d467 Update snap version to 0.11.1 (vdo)
2017-12-02 09:24:08 +02:00
Riccardo Spagni
57ac2c2642 Merge pull request #2840
f9fad186 blockchain_db: sanity check on tx/hash vector sizes (flozilla)
2017-12-02 09:23:36 +02:00
Riccardo Spagni
ed8fc8ac1c Merge pull request #2838
310b790a make connection_id a string in RPC (moneromooo-monero)
2017-12-02 09:23:22 +02:00
Riccardo Spagni
4adcacd800 Merge pull request #2835
e41cc58d Fix docker image dependencies, don't install libraries statically linked (Bruno Clermont)
2ddbc3ef use make (Bruno Clermont)
81ac0e91 Force docker image to use --non-interactive (Bruno Clermont)
e03be11a fix and improve docker image, add doc for docker-compose (Bruno Clermont)
2017-12-02 09:23:01 +02:00
Riccardo Spagni
1fec38e736 Merge pull request #2832
287dde63 Added command descriptions (Cifrado)
2017-12-02 09:22:43 +02:00
Riccardo Spagni
7227cde3dc Merge pull request #2831
d73d7aca Add two configuration options to monerod.service: (0xB44EFD8751077F97)
2017-12-02 09:22:29 +02:00
Riccardo Spagni
0d7162dc10 Merge pull request #2830
f5461a6a RPC: CORS add Access-Control-Allow-Headers to OPTIONS preflight (Tim L)
2017-12-02 09:22:17 +02:00
Riccardo Spagni
0bf4d6deea Merge pull request #2828
6cbe7bcd wallet2: check generate_key_derivation return value (moneromooo-monero)
2017-12-02 09:21:55 +02:00
moneromooo-monero
fe5ab2c439 epee: fix kv_unserialize return value when a field is not found 2017-12-01 16:43:57 +00:00
moneromooo-monero
abebe392c7 rpc: add offline state in info rpc 2017-11-30 15:44:01 +00:00
moneromooo-monero
7696e84952 core: make --offline also disable DNS lookups 2017-11-30 15:35:52 +00:00
rbrunner7
cf5f623616 Corrections in rate limiting / trottle code, especially in 'out' direction
Deleted 3 out of 4 calls to method connection_basic::sleep_before_packet
that were erroneous / superfluous, which enabled the elimination of a
"fudge" factor of 2.1 in connection_basic::set_rate_up_limit;
also ended the multiplying of limit values and numbers of bytes
transferred by 1024 before handing them over to the global throttle
objects
2017-11-28 21:18:01 +01:00
ston1th
25f4ab81ce fixed linking against libreadline on OpenBSD
To fix the linking error described here https://github.com/monero-project/monero/pull/2841#issuecomment-346129030 we also need to link libcurses.
2017-11-28 19:03:07 +01:00
xmr-eric
1c838552ed Simplewallet.cpp: Fewer pleases in seed NOTE
Monero.ts: Fewer pleases in seed NOTE

Monero_it.ts: Fewer pleases in seed NOTE

Monero_fr.ts: Fewer pleases in seed NOTE
2017-11-28 11:41:26 -05:00
xmr-eric
3f18c642fc Fix password capitalization mismatch 2017-11-28 11:15:50 -05:00
moneromooo-monero
3dffe71b72 new wipeable_string class to replace std::string passphrases 2017-11-27 22:25:57 +00:00
moneromooo-monero
7a2a574118 utils: initialize easylogging++ in on_startup
It will be reinitialized later once we know about log file
and other command line configuration
2017-11-27 22:15:40 +00:00
moneromooo-monero
549508296d use memwipe in a few relevant places 2017-11-27 22:15:37 +00:00
moneromooo-monero
000666ff78 add a memwipe function
It's meant to avoid being optimized out

memory_cleanse lifted from bitcoin
2017-11-27 22:15:34 +00:00
xmr-eric
2b0a32f8af Small cleanup of daemon synchronization output
Add period to second sentence
2017-11-27 16:37:20 -05:00
Riccardo Spagni
9fad4008ef Merge pull request #2863
37c1ce3b tests: disable libwallet_api_tests when BUILD_GUI_DEPS is not set (moneromooo-monero)
2017-11-27 22:44:13 +02:00
Riccardo Spagni
c97bb7455f Merge pull request #2841
36f0538a cmake: fix building when readline is not found (moneromooo-monero)
2017-11-27 22:43:46 +02:00
Riccardo Spagni
51e7645836 Merge pull request #2839
0b08bf39 fixed common/util.cpp to link against libressl (ston1th)
2017-11-27 22:43:01 +02:00
Cifrado
287dde63d8 Added command descriptions 2017-11-26 10:37:37 +01:00
moneromooo-monero
37c1ce3b68 tests: disable libwallet_api_tests when BUILD_GUI_DEPS is not set 2017-11-26 08:25:42 +00:00
Riccardo Spagni
8a8c918dc3 Merge pull request #2827
fdf0acbf Tools, daemonizer: fix building on Windows (iDunk5400)
2017-11-25 19:54:14 +02:00
Riccardo Spagni
ac261d0d87 Merge pull request #2825
ac5cd865 simplewallet: fix typo in incoming monero message (moneromooo-monero)
2017-11-25 19:53:58 +02:00
Riccardo Spagni
2e54e7ff0b Merge pull request #2824
51895fd7 split wallet and wallet_api (moneromooo-monero)
2017-11-25 19:53:35 +02:00
Riccardo Spagni
4c90d638bc Merge pull request #2823
0d149f70 Add out-of-bound exceptions and handle them in RPC (Michał Sałaban)
2017-11-25 19:53:12 +02:00
Riccardo Spagni
a7211b5a07 Merge pull request #2822
93c33985 simplewallet: translate ring size 0 to mixin 0 (default values) (moneromooo-monero)
2017-11-25 19:52:52 +02:00
Riccardo Spagni
64d301a7b0 Merge pull request #2817
f493eabb unit_tests: fix running without --data-dir (moneromooo-monero)
2017-11-25 19:52:33 +02:00
Riccardo Spagni
fbfdaae06f Merge pull request #2807
61712384 daemon & simplewallet: don't set max-concurrency when unspecified (stoffu)
2017-11-25 19:51:52 +02:00
Riccardo Spagni
82375f7de7 Merge pull request #2806
da706b61 Fix false GCC warning '‘*((void*)& subaddr_account +4)’ may be used unitialized' (binaryFate)
2017-11-25 19:51:28 +02:00
Riccardo Spagni
df032aac69 Merge pull request #2800
0b726be7 wallet2: minimize the number of construct_tx calls (moneromooo-monero)
9d505d26 wallet2: cleanup some debug logs (moneromooo-monero)
2017-11-25 19:50:58 +02:00
Riccardo Spagni
1de386111f Merge pull request #2797
7e387fb1 wallet2: only add a dummy 0 output if there's one output otherwise (moneromooo-monero)
2017-11-25 19:50:21 +02:00
Riccardo Spagni
eefd6a7878 Merge pull request #2796
b42ee213 Wallet: update ring size in outdated error msgs with set_default_ring_size (binaryFate)
2017-11-25 19:49:48 +02:00
Riccardo Spagni
7dc58410e5 Merge pull request #2784
54a4c1cb cryptonote: do not overwrite const data (moneromooo-monero)
2017-11-25 19:49:22 +02:00
Riccardo Spagni
539f511eb1 Merge pull request #2368
b0b7e0f0 Spend proof without txkey (stoffu)
2017-11-25 19:48:56 +02:00
Riccardo Spagni
ed2fc4a1ff Merge pull request #2794
43f27c7d core: warn when free disk space is low (moneromooo-monero)
2017-11-25 19:48:33 +02:00
Riccardo Spagni
7ae7e5ef93 Merge pull request #2793
3501ed1f Do not require libatomic on FreeBSD (Vasil Dimov)
2017-11-25 19:48:12 +02:00
Riccardo Spagni
29b0bb8952 Merge pull request #2792
47c0948a Implement missing miner functions on FreeBSD (Vasil Dimov)
fdb5bd16 Remove unused variables and fix typos in comments (Vasil Dimov)
2017-11-25 19:47:49 +02:00
Riccardo Spagni
d3785066d0 Merge pull request #2791
5b452248 fixed easylogging compile issue on OpenBSD (Dyrcona)
2017-11-25 19:47:36 +02:00
Riccardo Spagni
d80a3e5c38 Merge pull request #2788
9739da1e wallet_rpc_server: new relay_tx command (moneromooo-monero)
01dc8297 wallet: transfer RPC can now return tx metadata (pending_tx) (moneromooo-monero)
83fa9047 serialization: add std::set and std::unordered_set serialization (moneromooo-monero)
2017-11-25 19:47:05 +02:00
Riccardo Spagni
5eb825b876 Merge pull request #2785
2d1ccc1b mnemonics: support for arbitrary (if multiple of 4 bytes) length data (moneromooo-monero)
2017-11-25 19:46:52 +02:00
Riccardo Spagni
7a6358408d Merge pull request #2846
be1c0129 fix for tx proof: use exception instead of error_str when signature gen failed (stoffu)
2017-11-25 19:46:07 +02:00
moneromooo-monero
9739da1e84 wallet_rpc_server: new relay_tx command
It takes a full tx+metadata hex string as input
2017-11-24 14:03:55 +00:00
moneromooo-monero
01dc829784 wallet: transfer RPC can now return tx metadata (pending_tx) 2017-11-24 14:03:52 +00:00
moneromooo-monero
83fa9047d8 serialization: add std::set and std::unordered_set serialization 2017-11-24 13:45:48 +00:00
moneromooo-monero
009eed17f1 rpc: increase the max number of outs one can request
It's getting hit too easily
2017-11-23 19:15:45 +00:00
ston1th
36b41ab2d1 added missing link for OpenBSD build instructions 2017-11-22 22:27:28 +01:00
moneromooo-monero
c0ae52c081 simplewallet: prevent (wrong) integrated adresses on accounts > 0 2017-11-22 16:20:11 +00:00
moneromooo-monero
631b35e7db CONTRIBUTING.md: mention git add -p as a way to avoid spurious changes 2017-11-22 13:30:11 +00:00
moneromooo-monero
54a4c1cbf7 cryptonote: do not overwrite const data 2017-11-22 11:17:22 +00:00
vdo
7256d9a7cd Fix versioning 2017-11-22 11:18:54 +01:00
moneromooo-monero
d875a9ff90 wallet2: detect multiple outputs from a tx to different subaddresses 2017-11-21 23:22:15 +00:00
stoffu
b0b7e0f09a Spend proof without txkey 2017-11-21 16:49:16 +09:00
stoffu
be1c01298a fix for tx proof: use exception instead of error_str when signature gen failed 2017-11-21 16:48:22 +09:00
vdo
e459d467f6 Update snap version to 0.11.1 2017-11-20 22:33:23 +01:00
Riccardo Spagni
49ce59462a Merge pull request #2783
416a7933 Print msg upon success for commands that were silent (binaryFate)
2017-11-20 12:09:02 +09:00
Riccardo Spagni
8d9e4920fc Merge pull request #2768
ef941855 Wallet RPC: Add prompt-for-password flag (Tim L)
2017-11-20 12:08:31 +09:00
Riccardo Spagni
72dfce861f Merge pull request #2487
998777ec Tx proof (revised): - refactoring: proof generation/checking code was moved from simplewallet.cpp to wallet2.cpp - allow an arbitrary message to be signed together with txid - introduce two types (outbound & inbound) of tx proofs; with the same syntax, inbound is selected when <address> belongs to this wallet, outbound otherwise. see GitHub thread for more discussion - wallet RPC: added get_tx_key, check_tx_key, get_tx_proof, check_tx_proof - wallet API: moved WalletManagerImpl::checkPayment to Wallet::checkTxKey, added Wallet::getTxProof/checkTxProof - get_tx_key/check_tx_key: handle additional tx keys by concatenating them into a single string (stoffu)
2017-11-20 12:07:24 +09:00
MoroccanMalinois
c256a248a5 Android dockerfile: add zmq dependency 2017-11-20 00:36:11 +00:00
Howard Chu
8198f031f3 Add mdb_drop tool 2017-11-19 19:48:01 +00:00
Gingeropolous
26ce640f82 Update README.md with info about release timelines
Added a heading in the readme that describes the release staging schedule and protocol.
2017-11-19 13:16:34 -05:00
moneromooo-monero
36f0538a0a cmake: fix building when readline is not found 2017-11-19 09:27:26 +00:00
ston1th
0b08bf3968 fixed common/util.cpp to link against libressl 2017-11-18 19:02:09 +01:00
stoffu
998777ecd7 Tx proof (revised):
- refactoring: proof generation/checking code was moved from simplewallet.cpp to wallet2.cpp
- allow an arbitrary message to be signed together with txid
- introduce two types (outbound & inbound) of tx proofs; with the same syntax, inbound is selected when <address> belongs to this wallet, outbound otherwise. see GitHub thread for more discussion
- wallet RPC: added get_tx_key, check_tx_key, get_tx_proof, check_tx_proof
- wallet API: moved WalletManagerImpl::checkPayment to Wallet::checkTxKey, added Wallet::getTxProof/checkTxProof
- get_tx_key/check_tx_key: handle additional tx keys by concatenating them into a single string
2017-11-18 20:44:27 +09:00
Bruno Clermont
e41cc58d7a Fix docker image dependencies, don't install libraries statically linked 2017-11-18 14:45:39 +08:00
Bruno Clermont
2ddbc3ef6e use make 2017-11-18 11:27:14 +08:00
Bruno Clermont
81ac0e91cb Force docker image to use --non-interactive 2017-11-18 11:22:45 +08:00
moneromooo-monero
310b790a64 make connection_id a string in RPC
It's sent as JSON, so raw binary is not appropriate
2017-11-18 00:13:07 +00:00
Tim L
23b6f685de RPC: allow binding of restricted port in addition to core port 2017-11-17 16:23:41 -05:00
Bruno Clermont
e03be11a0e fix and improve docker image, add doc for docker-compose 2017-11-17 21:51:22 +08:00
Cifrado
b0426d4cf2 Fixes #759 Add sanity check on restore height 2017-11-17 08:35:59 +01:00
0xB44EFD8751077F97
d73d7aca86 Add two configuration options to monerod.service:
Restart=always
    PrivateTmp=true
2017-11-16 11:58:18 -07:00
Tim L
f5461a6a07 RPC: CORS add Access-Control-Allow-Headers to OPTIONS preflight 2017-11-16 13:56:16 -05:00
moneromooo-monero
51895fd7df split wallet and wallet_api
This speeds up building a lot when wallet2.h (or something it
includes) changes, since all the API includes wallet2.h
2017-11-16 12:10:29 +00:00
moneromooo-monero
6cbe7bcdd2 wallet2: check generate_key_derivation return value 2017-11-16 10:31:47 +00:00
stoffu
6171238416 daemon & simplewallet: don't set max-concurrency when unspecified 2017-11-16 08:03:25 +09:00
iDunk5400
fdf0acbf97 Tools, daemonizer: fix building on Windows 2017-11-15 23:12:02 +01:00
Tim L
ef941855ae Wallet RPC: Add prompt-for-password flag 2017-11-15 13:21:55 -05:00
moneromooo-monero
0b726be703 wallet2: minimize the number of construct_tx calls 2017-11-15 18:01:35 +00:00
moneromooo-monero
9d505d26b8 wallet2: cleanup some debug logs 2017-11-15 18:01:32 +00:00
moneromooo-monero
ac5cd865b2 simplewallet: fix typo in incoming monero message 2017-11-15 17:52:37 +00:00
Michał Sałaban
0d149f708f Add out-of-bound exceptions and handle them in RPC 2017-11-15 16:35:14 +01:00
moneromooo-monero
93c3398503 simplewallet: translate ring size 0 to mixin 0 (default values)
Avoids turning it to a huge number
2017-11-15 15:07:10 +00:00
Riccardo Spagni
dc6a8014bd Merge pull request #2818
c4587e83 simplewallet: wrong ns for input_line in sweep_single (fix #2634) (stoffu)
2017-11-15 16:56:18 +02:00
stoffu
c4587e83f8 simplewallet: wrong ns for input_line in sweep_single (fix #2634) 2017-11-15 20:45:58 +09:00
moneromooo-monero
f493eabba7 unit_tests: fix running without --data-dir
While there, also use the new is_arg_defaulted API instead of
going to poke the internal API directly.
2017-11-15 10:45:14 +00:00
flozilla
f9fad18608 blockchain_db: sanity check on tx/hash vector sizes
It could trip on a corrupt/crafted file if the user has disabled
input verification.
2017-11-15 10:02:23 +00:00
Riccardo Spagni
cd070874bf Merge pull request #2778
c957795b fix output_stream_header memory leak (MaxXor)
2017-11-15 11:40:38 +02:00
Riccardo Spagni
3abd6f1fd0 Merge pull request #2773
ffe5b857 Correct totals computation (Michał Sałaban)
2017-11-15 11:24:08 +02:00
Riccardo Spagni
c9a410e394 Merge pull request #2772
5d92c7cc wallet2: typo fix in error message (moneromooo-monero)
2017-11-15 11:23:22 +02:00
Riccardo Spagni
5c2dfe157b Merge pull request #2771
e3e838d0 kaccak: remove unused return value (moneromooo-monero)
4877aca2 keccak: some paranoid "can't happen" checks (moneromooo-monero)
2017-11-15 11:22:56 +02:00
Riccardo Spagni
0d4d628805 Merge pull request #2634
b738f4b5 wallet: add sweep_single command (stoffu)
2017-11-15 11:17:01 +02:00
Riccardo Spagni
39bc39b86e Merge pull request #2628
7cb303a4 wallet2: simplify incoming tx processing code (moneromooo-monero)
2017-11-15 11:14:58 +02:00
stoffu
b738f4b59d wallet: add sweep_single command 2017-11-15 17:51:54 +09:00
Riccardo Spagni
2751a477d8 Merge pull request #2816
a17b8233 wallet2 bugfix: loading old m_unconfirmed_payments (stoffu)
2017-11-15 10:48:09 +02:00
stoffu
a17b8233da wallet2 bugfix: loading old m_unconfirmed_payments 2017-11-15 17:30:49 +09:00
Riccardo Spagni
0ddf3b6c75 Merge pull request #2814
987eb662 More missed readline dependencies thru scoped_message_writer (Howard Chu)
2017-11-15 00:47:28 +02:00
Howard Chu
987eb662bf More missed readline dependencies thru scoped_message_writer 2017-11-14 22:43:52 +00:00
Riccardo Spagni
e35162b366 Merge pull request #2813
29cee4ec Fix 383ff4f689 (Howard Chu)
b85e82bf Fix e89994e98f (Howard Chu)
95e784ad Fix 437421ce42 (Howard Chu)
2017-11-14 22:40:04 +02:00
Howard Chu
29cee4ec4f Fix 383ff4f689
Missed a crypto::null_pkey in PR#2629
2017-11-14 20:36:21 +00:00
Howard Chu
b85e82bf6a Fix e89994e98f
Missed an input_line() change
2017-11-14 20:34:32 +00:00
Howard Chu
95e784ad00 Fix 437421ce42
Missing an error argument for an exception
2017-11-14 20:29:05 +00:00
Riccardo Spagni
86a35eeed2 Merge pull request #2789
b0416f07 checkpoints: add a testnet checkpoint at 1000000 (moneromooo-monero)
2017-11-14 22:17:07 +02:00
Riccardo Spagni
0c4df51bbb Merge pull request #2765
fc85d7a9 simplewallet: fix in show_transfer passing wrong arg to wallet2::get_payments etc (stoffu)
2017-11-14 22:16:37 +02:00
Riccardo Spagni
6e92354284 Merge pull request #2774
a3ea62f2 CMake: include RPC when building GUI deps (anonimal)
2017-11-14 22:16:06 +02:00
anonimal
a3ea62f209 CMake: include RPC when building GUI deps 2017-11-14 19:45:58 +00:00
Riccardo Spagni
74b699beda Merge pull request #2812
9ac52127 unit_tests: fix build after wallet2 list/vector change (moneromooo-monero)
2017-11-14 21:33:38 +02:00
Riccardo Spagni
2c12847dd6 Merge pull request #2811
f80f408b epee: don't disable -Wtautological-constant-out-of-range-compare on GCC (moneromooo-monero)
2017-11-14 21:33:20 +02:00
Riccardo Spagni
10a237783a Merge pull request #2692
0f2c2d4c rpc: remove obsolete busy core checks (moneromooo-monero)
2017-11-14 21:32:33 +02:00
Riccardo Spagni
815e158bdf Merge pull request #2739
99f398a2 wallet2: avoid growing the short history when refreshing in a loop (moneromooo-monero)
2017-11-14 21:32:13 +02:00
Riccardo Spagni
edebe4e3b6 Merge pull request #2736
0d9c0db9 Do not build against epee_readline if it was not built (Howard Chu)
178014c9 split off readline code into epee_readline (moneromooo-monero)
a9e14a19 link against readline only for monerod and wallet-wallet-{rpc,cli} (moneromooo-monero)
437421ce wallet: move some scoped_message_writer calls from the libs (moneromooo-monero)
e89994e9 wallet: rejig to avoid prompting in wallet2 (moneromooo-monero)
ec5135e5 move input_line from command_line to simplewallet (moneromooo-monero)
082db75f move cryptonote command line options to cryptonote_core (moneromooo-monero)
2017-11-14 21:31:51 +02:00
Riccardo Spagni
922aaf4e2a Merge pull request #2644
a17efcb0 make this build on SunOS/Solaris (Pavel Maryanov)
2017-11-14 21:31:09 +02:00
Riccardo Spagni
41a8bf4f4c Merge pull request #2636
ad03f778 simplewallet: factor transfer related exception handling (moneromooo-monero)
2017-11-14 21:30:25 +02:00
Riccardo Spagni
5de492be40 Merge pull request #2629
383ff4f6 remove "using namespace std" from headers (moneromooo-monero)
2017-11-14 21:29:49 +02:00
moneromooo-monero
9ac5212775 unit_tests: fix build after wallet2 list/vector change 2017-11-14 18:30:58 +00:00
moneromooo-monero
f80f408b7e epee: don't disable -Wtautological-constant-out-of-range-compare on GCC
It's a CLANG only option, and causes GCC to error out
2017-11-14 17:22:39 +00:00
moneromooo-monero
0f2c2d4c34 rpc: remove obsolete busy core checks 2017-11-14 17:15:19 +00:00
moneromooo-monero
99f398a25e wallet2: avoid growing the short history when refreshing in a loop 2017-11-14 17:09:11 +00:00
Howard Chu
0d9c0db996 Do not build against epee_readline if it was not built 2017-11-14 17:06:37 +00:00
moneromooo-monero
178014c995 split off readline code into epee_readline 2017-11-14 17:06:35 +00:00
moneromooo-monero
a9e14a19dc link against readline only for monerod and wallet-wallet-{rpc,cli} 2017-11-14 17:06:32 +00:00
moneromooo-monero
437421ce42 wallet: move some scoped_message_writer calls from the libs 2017-11-14 17:06:29 +00:00
moneromooo-monero
e89994e98f wallet: rejig to avoid prompting in wallet2
wallet2 is a library, and should not prompt for stdin. Instead,
pass a function so simplewallet can prompt on stdin, and a GUI
might display a window, etc.
2017-11-14 17:06:26 +00:00
moneromooo-monero
ec5135e5b7 move input_line from command_line to simplewallet
It was only used there, and this removes one part of the common
dependency on libreadline
2017-11-14 17:06:23 +00:00
moneromooo-monero
082db75f28 move cryptonote command line options to cryptonote_core
Those have no reason to be in a generic module
2017-11-14 17:06:19 +00:00
Pavel Maryanov
a17efcb039 make this build on SunOS/Solaris 2017-11-14 17:03:48 +00:00
moneromooo-monero
ad03f77856 simplewallet: factor transfer related exception handling
This ensures they don't go out of sync when adding/changing them,
and makes the code easier to deal with.
2017-11-14 17:00:39 +00:00
moneromooo-monero
383ff4f689 remove "using namespace std" from headers
It's nasty, and actually breaks on Solaris, where if.h fails to
build due to:

  struct map *if_memmap;
2017-11-14 16:56:10 +00:00
stoffu
fc85d7a998 simplewallet: fix in show_transfer passing wrong arg to wallet2::get_payments etc 2017-11-15 00:25:17 +09:00
Riccardo Spagni
f48aeab5c4 Merge pull request #2756
0bf09154 Fix file permission issue (Tim L)
2017-11-14 16:02:28 +02:00
Riccardo Spagni
910218b14e Merge pull request #2755
d70515fc Used declared default refresh status as default rather than it's current value (Maxime THIEBAUT)
2017-11-14 15:57:25 +02:00
Riccardo Spagni
a2241e8151 Merge pull request #2753
fa514082 RPC: get_info add rpc_connections_count (Tim L)
2017-11-14 15:54:33 +02:00
Riccardo Spagni
68d5952f6a Merge pull request #2752
68c01782 updates: add a special case for "install-" build tags on windows (moneromooo-monero)
2017-11-14 15:49:53 +02:00
Riccardo Spagni
95c34e17cd Merge pull request #2750
424852a6 Fix 'sweep_all' command when called with no args (Leon Klingele)
2017-11-14 15:49:15 +02:00
Riccardo Spagni
a2b427b1bf Merge pull request #2749
f732e723 Disguise password length in prompt (Leon Klingele)
2017-11-14 15:35:47 +02:00
Riccardo Spagni
1e874186b3 Merge pull request #2747
37e1fd94 simplewallet: mark the active account in print_accounts (moneromooo-monero)
2017-11-14 15:32:29 +02:00
Riccardo Spagni
55603627c9 Merge pull request #2745
6cf33446 Remove wallet dependency on p2p (moneromooo-monero)
2017-11-14 15:31:40 +02:00
Riccardo Spagni
176dd1fbe5 Merge pull request #2743
9ff8e139 epee: disable a spurious warning for a storage function (moneromooo-monero)
2017-11-14 15:30:43 +02:00
Riccardo Spagni
0d0ce8c21e Merge pull request #2742
7c7d3672 Increase LMDB maxreaders if large number of threads in use (Howard Chu)
6738753b Use max_concurrency as-is (Howard Chu)
2017-11-14 15:30:03 +02:00
Riccardo Spagni
e0e6e375bb Merge pull request #2738
4a17f0c2 rpc: add performance timers (moneromooo-monero)
2017-11-14 15:28:47 +02:00
Riccardo Spagni
e759c78a17 Merge pull request #2735
a524b750 rpc: added miner_tx_hash to resp of getblock (stoffu)
2017-11-14 15:27:51 +02:00
Riccardo Spagni
90d78b825a Merge pull request #2730
ba1b89fb Updated OpenBSD build instructions and fixed libressl linking issue (ston1th)
2017-11-14 15:26:57 +02:00
Riccardo Spagni
29d77e5686 Merge pull request #2727
9d6c6c5d wallet2: do not bother downloading block hashes below last checkpoint (moneromooo-monero)
2017-11-14 15:21:58 +02:00
moneromooo-monero
7cb303a44b wallet2: simplify incoming tx processing code 2017-11-14 13:20:51 +00:00
Riccardo Spagni
25b97ee937 Merge pull request #2624
2677ade5 simplewallet: forbid 0 ring size (moneromooo-monero)
da8b60cb simplewallet: reject attempts to use too low mixin early (moneromooo-monero)
2017-11-14 15:20:45 +02:00
Riccardo Spagni
4754390725 Merge pull request #2720
110339f5 unit_tests: fix data dir determination (moneromooo-monero)
2017-11-14 15:16:23 +02:00
Riccardo Spagni
cdab85db41 Merge pull request #2701
867b67c4 Wallet API: override update subdir when built from src (Jaquee)
2017-11-14 15:15:25 +02:00
Riccardo Spagni
2458ff1a6d Merge pull request #2697
d269bff2 wallet2: use a vector, not a list, for selected_transfers (moneromooo-monero)
2017-11-14 15:14:07 +02:00
Riccardo Spagni
8df6b010eb Merge pull request #2696
937e7f8a Initialize openssl on startup (moneromooo-monero)
2017-11-14 15:13:44 +02:00
moneromooo-monero
2677ade502 simplewallet: forbid 0 ring size
It'd be interpreted as a huge one (~0 fake outs)
2017-11-14 13:12:42 +00:00
Riccardo Spagni
8d8032b4c6 Merge pull request #2691
f92f1606 core_tests: do not include chaingen_tests_list.h in all tests (moneromooo-monero)
2017-11-14 15:12:40 +02:00
moneromooo-monero
da8b60cbbf simplewallet: reject attempts to use too low mixin early
This yields a clear error message rather then some possibly
confusing more technical errors down the line
2017-11-14 13:12:39 +00:00
Riccardo Spagni
0c5872c869 Merge pull request #2686
21b9f6f3 always use core_tests for consistency, not coretests (moneromooo-monero)
2017-11-14 15:12:23 +02:00
Riccardo Spagni
6172248acf Merge pull request #2685
1ff638e9 protocol: drop connections which don't handshake after some time (moneromooo-monero)
2017-11-14 15:04:40 +02:00
Riccardo Spagni
f4fded6fcf Merge pull request #2683
105425b7 simplewallet: reject invalid argument for boolean parameter (stoffu)
2017-11-14 15:04:15 +02:00
Riccardo Spagni
f1ca1f35d1 Merge pull request #2682
8ddcf1e7 simplewallet: remove XMR mentions (moneromooo-monero)
2017-11-14 15:03:15 +02:00
Riccardo Spagni
48ff10f77f Merge pull request #2681
ec48e8d8 core: do not forbid txes without destination (moneromooo-monero)
523084bc core: don't add empty additional pub keys field to extra (moneromooo-monero)
2017-11-14 15:02:55 +02:00
Riccardo Spagni
256a1d9ead Merge pull request #2675
00cc1fdd subaddress: remove unneeded scalarmultBase (kenshi84)
2017-11-14 15:02:14 +02:00
Riccardo Spagni
5d52463b57 Merge pull request #2670
4fb77946 unit tests: OOB indexes & adding subaddress (Cole Lightfighter)
4fd6a3d2 Subaddress unit tests (Cole Lightfighter)
2017-11-14 15:01:49 +02:00
Riccardo Spagni
2ddb894607 Merge pull request #2661
ac4018a7 wallet2: workaround for lightwallet before supporting subaddress (followup #2656) (kenshi84)
2017-11-14 15:01:25 +02:00
Riccardo Spagni
474e02ccde Merge pull request #2651
118a1bed rpc: make get_coinbase_tx_sum a restricted RPC (moneromooo-monero)
2017-11-14 15:00:39 +02:00
Riccardo Spagni
9d481f57f9 Merge pull request #2645
6bab9efe debug utils: fix debug build: rm unused identifier (redfish)
b92d3f96 cmake: fix shared library build (redfish)
2017-11-14 15:00:00 +02:00
Riccardo Spagni
395025bb23 Merge pull request #2633
ad96c478 wallet-cli: added --generate-from-spend-key option (stoffu)
2017-11-14 14:56:07 +02:00
Riccardo Spagni
94b85b450b Merge pull request #2630
0aa4cc80 ITS#8339 Solaris 10/11 robust mutex fixes (Howard Chu)
2017-11-14 14:55:14 +02:00
Riccardo Spagni
f26e7a84a6 Merge pull request #2620
6bd4dac6 util: ignore SIGPIPE (moneromooo-monero)
2017-11-14 14:54:42 +02:00
Riccardo Spagni
9317c9c57e Merge pull request #2617
7dbf76d0 Fix an object lifetime bug in net load tests (moneromooo-monero)
2017-11-14 14:54:05 +02:00
Riccardo Spagni
fd0740e5e7 Merge pull request #2615
10013e94 Protect node privacy by proper filtering in restricted-mode RPC answers (binaryFate)
2017-11-14 14:53:10 +02:00
Riccardo Spagni
3fff292dc1 Merge pull request #2509
ccf53a56 track double spending in the txpool (moneromooo-monero)
2017-11-14 14:50:03 +02:00
Riccardo Spagni
0fa3c27869 Merge pull request #2805
78cf010e Add stoffu's GPG key (stoffu)
2017-11-14 14:08:41 +02:00
moneromooo-monero
43f27c7d43 core: warn when free disk space is low 2017-11-14 10:21:34 +00:00
binaryFate
da706b6102 Fix false GCC warning '‘*((void*)& subaddr_account +4)’ may be used unitialized' 2017-11-14 09:45:43 +01:00
stoffu
78cf010e4e Add stoffu's GPG key 2017-11-14 16:34:37 +09:00
stoffu
105425b7f6 simplewallet: reject invalid argument for boolean parameter 2017-11-14 16:33:17 +09:00
stoffu
a524b7508e rpc: added miner_tx_hash to resp of getblock 2017-11-14 16:31:46 +09:00
stoffu
ad96c478b1 wallet-cli: added --generate-from-spend-key option 2017-11-14 16:30:59 +09:00
moneromooo-monero
d269bff2ab wallet2: use a vector, not a list, for selected_transfers
Friendlier on memory/speed, we know in advance the max amount
of items, which are small and constant size, and there's a lot
of list walking involved.
2017-11-13 19:36:18 +00:00
moneromooo-monero
7e387fb1ad wallet2: only add a dummy 0 output if there's one output otherwise 2017-11-13 14:08:10 +00:00
binaryFate
b42ee213e8 Wallet: update ring size in outdated error msgs with set_default_ring_size 2017-11-13 09:53:18 +01:00
Dyrcona
5b452248a8 fixed easylogging compile issue on OpenBSD
Issue: #2575
Add ELPP_OS_OPENBSD macros to easylogging++.h so that it will build on
OpenBSD.
2017-11-12 00:56:07 +01:00
Vasil Dimov
47c0948ab0 Implement missing miner functions on FreeBSD
cryptonote::miner::get_system_times(): Fetch the system's total and
idle time using sysctl kern.cp_time.

cryptonote::miner::get_process_time(): Use the same implementation as
Linux and OSX, the times(3) function conforms to POSIX.1 and is
available on FreeBSD.

cryptonote::miner::on_battery_power(): Try to fetch the battery status
using sysctl hw.acpi.acline. If that fails (if ACPI is not enabled on
the system), then try querying /dev/apm.
2017-11-11 16:27:19 +02:00
Vasil Dimov
fdb5bd161d Remove unused variables and fix typos in comments 2017-11-11 16:17:19 +02:00
Vasil Dimov
3501ed1fdf Do not require libatomic on FreeBSD
f3e09f36 hooked a dependency on libatomic on 32 bit machines if Clang is
used because compilation failed with:

`std::__atomic_base<unsigned long long>::load(std::memory_order) const':
/usr/bin/../lib/gcc/i686-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/bits/atomic_base.h:396:
undefined reference to `__atomic_load_8'

But that does not happen on FreeBSD. The problem is likely that on Linux
Clang tries to use GCC-provided C++11 library. Further,
__atomic_load_8() (for 8-byte integers) is not readily available on 32
bit machines. From https://gcc.gnu.org/wiki/Atomic/GCCMM: "When lock
free instructions are not available (either through hardware or OS
support) atomic operations are left as function calls to be resolved by
a library."
2017-11-11 15:29:42 +02:00
moneromooo-monero
e3e838d0cf kaccak: remove unused return value 2017-11-11 11:20:48 +00:00
moneromooo-monero
b0416f070e checkpoints: add a testnet checkpoint at 1000000
Makes working on testnet a lot easier (much less I/O when loading
and saving wallets, and exercises the hashchain code before any
changes are merged)
2017-11-11 11:16:48 +00:00
binaryFate
416a793326 Print msg upon success for commands that were silent 2017-11-10 09:42:40 +01:00
Riccardo Spagni
af448d3883 Merge pull request #2694
11e0deef cmake: add dep of version lib on version.cpp (redfish)
35340259 .gitignore: do not ignore cmake source files (redfish)
2017-11-09 18:22:25 +02:00
moneromooo-monero
2d1ccc1b88 mnemonics: support for arbitrary (if multiple of 4 bytes) length data 2017-11-09 10:58:10 +00:00
MaxXor
c957795bfa fix output_stream_header memory leak 2017-11-08 19:59:09 +01:00
binaryFate
10013e9434 Protect node privacy by proper filtering in restricted-mode RPC answers
This patch allows to filter out sensitive information for queries that rely on the pool state, when running in restricted mode.
This filtering is only applied to data sent back to RPC queries. Results of inline commands typed locally in the daemon are not affected.
In practice, when running with `--restricted-rpc`:
* get_transaction_pool will list relayed transactions with the fields "last relayed time" and "received time" set to zero.
* get_transaction_pool will not list transaction that have do_not_relay set to true, and will not list key images that are used only for such transactions
* get_transaction_pool_hashes.bin will not list such transaction
* get_transaction_pool_stats will not count such transactions in any of the aggregated values that are computed

The implementation does not make filtering the default, so developers should be mindful of this if they add new RPC functionality.
Fixes #2590.
2017-11-08 13:07:07 +01:00
Michał Sałaban
ffe5b857e1 Correct totals computation 2017-11-08 12:09:50 +01:00
Tim L
fa51408272 RPC: get_info add rpc_connections_count 2017-11-07 16:34:49 -05:00
Riccardo Spagni
a2c2f4e4b0 Merge pull request #2764
37c3792b wallet2 bugfix: supply missing subaddr_account arg to balance() and unlocked balance() (stoffu)
2017-11-07 19:14:40 +02:00
moneromooo-monero
5d92c7ccf6 wallet2: typo fix in error message 2017-11-07 14:04:40 +00:00
moneromooo-monero
4877aca2b6 keccak: some paranoid "can't happen" checks 2017-11-07 14:02:37 +00:00
stoffu
37c3792b00 wallet2 bugfix: supply missing subaddr_account arg to balance() and unlocked balance() 2017-11-06 10:15:38 +09:00
moneromooo-monero
ccf53a566c track double spending in the txpool
Transactions in the txpool are marked when another transaction
is seen double spending one or more of its inputs.
This is then exposed wherever appropriate.

Note that being marked with this "double spend seen" flag does
NOT mean this transaction IS a double spend and will never be
mined: it just means that the network has seen at least another
transaction spending at least one of the same inputs, so care
should be taken to wait for a few confirmations before acting
upon that transaction (ie, mostly of use for merchants wanting
to accept unconfirmed transactions).
2017-11-06 00:05:44 +00:00
Riccardo Spagni
3dd31d33fa Merge pull request #2605
b370ef54 Wallet: Descriptions through new commands 'set_description', 'get_description' (rbrunner7)
2017-11-06 01:56:06 +02:00
Riccardo Spagni
f960ef9454 Merge pull request #2595
8041b4e9 wallet-cli: allow priority argument for sweep_all and donate (stoffu)
2017-11-06 01:55:15 +02:00
Riccardo Spagni
7452359d8f Merge pull request #2591
93ad1f87 Fix #2559: more flexible print_tx daemon command (binaryFate)
2017-11-06 01:54:48 +02:00
Riccardo Spagni
32b083d8bd Merge pull request #2546
b2d416f2 Distinguish "not enough money" and "not enough unlocked money" (binaryFate)
2017-11-06 01:53:43 +02:00
Riccardo Spagni
9d65a9cc98 Merge pull request #2483
ff7745bb Edited test readme for accuracy and depth (Cole Lightfighter)
c300ae56 Added test documentation & Keccak unit test (Cole Lightfighter)
f6119a8e Added test documentation & Keccak unit test (Cole Lightfighter)
2017-11-06 01:52:08 +02:00
Riccardo Spagni
4022a0a57e Merge pull request #2729
161401dd Fix JSON-RPC response object over ZMQ (Lee Clagett)
2017-11-06 01:42:55 +02:00
stoffu
8041b4e901 wallet-cli: allow priority argument for sweep_all and donate 2017-11-04 12:11:04 +09:00
Tim L
0bf0915446 Fix file permission issue
This branch fixes a file permission issue introduced by 69c37200aa
2017-11-03 11:27:50 -04:00
Maxime THIEBAUT
d70515fca4 Used declared default refresh status as default rather than it's current value 2017-11-03 16:15:02 +01:00
Riccardo Spagni
13a84caa22 Merge pull request #2662
88ebfd64 core_tests: fix for subaddress patch (kenshi84)
e373a203 performance_tests: add master spend pubkey to subaddress hashtable (kenshi84)
2017-11-03 11:58:06 +02:00
moneromooo-monero
68c0178220 updates: add a special case for "install-" build tags on windows
Those will have a ".exe" file extension, not .zip.
2017-11-03 09:45:08 +00:00
Leon Klingele
424852a627 Fix 'sweep_all' command when called with no args
Executing 'sweep_all' with no arguments segfaulted before.
2017-11-03 04:52:26 +01:00
Leon Klingele
f732e723b7 Disguise password length in prompt 2017-11-03 04:04:54 +01:00
moneromooo-monero
37e1fd94d5 simplewallet: mark the active account in print_accounts 2017-11-02 23:46:12 +00:00
Howard Chu
7c7d36725a Increase LMDB maxreaders if large number of threads in use 2017-11-02 16:33:48 +00:00
Howard Chu
6738753b30 Use max_concurrency as-is
Don't try to 2nd guess user
2017-11-02 16:33:48 +00:00
moneromooo-monero
6cf3344605 Remove wallet dependency on p2p 2017-11-02 16:13:24 +00:00
Riccardo Spagni
4146f2e202 Merge pull request #2666
8233a24b unit_tests: fix build on windows (moneromooo-monero)
2017-11-02 11:44:36 +02:00
Riccardo Spagni
ef3c77117a Merge pull request #2689
6a90506a Link against libpgm/libnorm if found, optional libzmq ldependencies (moneromooo-monero)
2017-11-01 11:26:22 +02:00
Riccardo Spagni
35dbb3be33 Merge pull request #2663
4b228dd3 cmake: epee: use var from FindOpenSSL.cmake (redfish)
29497f79 epee: use boost type for SSL error code (redfish)
2017-11-01 11:25:53 +02:00
Riccardo Spagni
32b46c594b Merge pull request #2703
d0463312 fix libwallet api test after api change (Jaquee)
a46c1eed Wallet2: Don't throw when subaddress label doesn't exist (Jaquee)
086b7db2 Wallet API: default values for account and subaddr index (Jaquee)
2017-11-01 11:24:54 +02:00
Riccardo Spagni
1648c1d466 Merge pull request #2659
52c13810 blockchain_utilities: Add monero-blockchain-{ex,im}port binaries to default install targets (Bertrand Jacquin)
2017-10-31 20:42:48 +02:00
Riccardo Spagni
9b5e2ceb40 Merge pull request #2684
66255c0e Problem: Copyright notice is very confusing (Gareth)
2017-10-31 20:41:45 +02:00
Riccardo Spagni
54463b33b3 Merge pull request #2723
69c37200 RPC Add cross origin resource sharing support (Tim L)
2017-10-31 20:38:38 +02:00
Riccardo Spagni
5ef9c69ef5 Merge pull request #2711
fab3b722 Add more specific RPC error codes (Michał Sałaban)
2017-10-31 20:35:41 +02:00
Riccardo Spagni
00270dd279 Merge pull request #2737
935f7462 blockchain: do not lock the blockchain lock for simple DB getters (moneromooo-monero)
2017-10-31 20:34:22 +02:00
Riccardo Spagni
c97fbb0176 Merge pull request #2718
626e8078 wallet2: fix show_transfers missing multiple incoming outputs (moneromooo-monero)
2017-10-31 20:33:44 +02:00
Riccardo Spagni
3fe07603e4 Merge pull request #2705
44f14638 wallet2: fix tx size estimator for large number of inputs (moneromooo-monero)
2017-10-31 20:33:19 +02:00
Riccardo Spagni
75ad92c82c Merge pull request #2702
f946bb7b fixed an LMDB issue on OpenBSD (#2699) which leads to a crash in monerod (ston1th)
2017-10-31 20:31:42 +02:00
Riccardo Spagni
0e15653536 Merge pull request #2687
969b5a2a net_helper: fix massive slowdown after SSL support (moneromooo-monero)
2017-10-31 20:30:36 +02:00
Riccardo Spagni
784f7b07f0 Merge pull request #2660
4dd05a2f subaddress: change prefix so that it starts with 8 (kenshi84)
2017-10-31 20:28:00 +02:00
Riccardo Spagni
6d1562d94c Merge pull request #2715
ca87cbd8 wallet2: fix subaddress fields serialization (moneromooo-monero)
2017-10-31 20:25:40 +02:00
moneromooo-monero
9d6c6c5dec wallet2: do not bother downloading block hashes below last checkpoint 2017-10-31 10:29:54 +00:00
Tim L
69c37200aa RPC Add cross origin resource sharing support 2017-10-30 13:55:56 -04:00
moneromooo-monero
4a17f0c2c7 rpc: add performance timers
Enable with perf:DEBUG
2017-10-30 09:39:36 +00:00
moneromooo-monero
935f746249 blockchain: do not lock the blockchain lock for simple DB getters
It is safe in those cases, though might return slightly out of date
information if another thread is busy modifying the blockchain,
but it avoids potentially lengthy delays just to get things like
the current blockchain height.
2017-10-30 08:23:40 +00:00
Jaquee
d04633121b fix libwallet api test after api change 2017-10-29 15:26:23 +01:00
Jaquee
a46c1eed8c Wallet2: Don't throw when subaddress label doesn't exist 2017-10-29 15:26:22 +01:00
Jaquee
867b67c4fd Wallet API: override update subdir when built from src 2017-10-29 15:17:31 +01:00
moneromooo-monero
9ff8e139cd epee: disable a spurious warning for a storage function 2017-10-28 11:52:14 +01:00
ston1th
ba1b89fbb7 Updated OpenBSD build instructions and fixed libressl linking issue
Issue: #2575

Build instructions for OpenBSD 6.2:
* boost (built with clang)
* cppzmq

Fixed a issue, where cmake was not able to find and link against libressl in unbound.

restored OpenBSD 5.8 build instructions
2017-10-27 18:18:18 +02:00
Lee Clagett
161401ddca Fix JSON-RPC response object over ZMQ 2017-10-26 17:25:14 -04:00
ston1th
f946bb7be6 fixed an LMDB issue on OpenBSD (#2699) which leads to a crash in monerod 2017-10-26 17:16:06 +02:00
moneromooo-monero
110339f553 unit_tests: fix data dir determination 2017-10-24 10:22:46 +01:00
moneromooo-monero
626e80780b wallet2: fix show_transfers missing multiple incoming outputs 2017-10-23 14:38:07 +01:00
moneromooo-monero
ca87cbd852 wallet2: fix subaddress fields serialization
When loading an older wallet cache, they wouldn't be initialized,
leading them to have random(ish) values, and so assigned to some
random subaddress.
2017-10-23 11:53:49 +01:00
Michał Sałaban
fab3b7221b Add more specific RPC error codes 2017-10-23 04:27:02 +02:00
moneromooo-monero
44f1463867 wallet2: fix tx size estimator for large number of inputs 2017-10-22 19:46:07 +01:00
moneromooo-monero
1ff638e927 protocol: drop connections which don't handshake after some time 2017-10-22 19:45:30 +01:00
Jaquee
086b7db2c7 Wallet API: default values for account and subaddr index 2017-10-22 18:15:23 +02:00
moneromooo-monero
937e7f8aa6 Initialize openssl on startup 2017-10-21 10:17:18 +01:00
moneromooo-monero
6a90506a8d Link against libpgm/libnorm if found, optional libzmq ldependencies 2017-10-21 08:39:52 +01:00
redfish
11e0deef31 cmake: add dep of version lib on version.cpp
Also, move cmake source files into cmake/ to keep them together.
2017-10-20 22:07:34 -04:00
redfish
353402595c .gitignore: do not ignore cmake source files 2017-10-20 22:05:41 -04:00
moneromooo-monero
f92f160674 core_tests: do not include chaingen_tests_list.h in all tests
This fixes all tests being annoyingly rebuilt when one changes
2017-10-20 18:53:43 +01:00
moneromooo-monero
969b5a2ae3 net_helper: fix massive slowdown after SSL support 2017-10-20 17:27:15 +01:00
Cole Lightfighter
4fb7794651 unit tests: OOB indexes & adding subaddress
Tests for checking proper error throwing for out-of-bounds subaddress
indexes, and proper addition of subaddresses.

Signed-off-by: Cole Lightfighter <cole@onicsla.bz>
2017-10-19 20:33:58 -06:00
moneromooo-monero
21b9f6f3c7 always use core_tests for consistency, not coretests
Other tests use unit_tests, performance_tests, etc.
This fixes getting it wrong half the time when typing.
2017-10-19 23:11:29 +01:00
Gareth
66255c0ea1 Problem: Copyright notice is very confusing
Solution: add line break to copyright notice and fix grammar.
2017-10-19 21:21:52 +08:00
moneromooo-monero
8ddcf1e714 simplewallet: remove XMR mentions
They are actually wrong if the wallet is setup in a different
denomination, and it's incursion of extrinsic lingo where monero
fits perfectly in the first place.
2017-10-19 13:10:29 +01:00
moneromooo-monero
ec48e8d81d core: do not forbid txes without destination
This was spuriously forbidden in the recent subaddress patch,
which isn't inherently incompatible with these.
2017-10-19 09:11:12 +01:00
moneromooo-monero
523084bc79 core: don't add empty additional pub keys field to extra
Saves a couple bytes per tx
2017-10-19 09:11:10 +01:00
kenshi84
00cc1fdd22 subaddress: remove unneeded scalarmultBase 2017-10-18 08:46:00 +09:00
redfish
4b228dd356 cmake: epee: use var from FindOpenSSL.cmake
This fixes linking when path to openssl
is defined manually:
cmake -DOPENSSL_ROOT_DIR='/usr/include/openssl-1.0;/usr/lib/openssl-1.0' ...

This is useful for building with OpenSSL v1.0
when default system installation is v1.1.

The linking error is undefined SSL_load_error_strings symbol.
This is due to -L /usr/lib/openssl-1.0 not making it onto
the linkline (so -lssl pulls in the default system openssl).
2017-10-17 16:13:07 -04:00
redfish
29497f7920 epee: use boost type for SSL error code
Fixes compile error when building with OpenSSL v1.1:

contrib/epee/include/net/net_helper.h: In member function ‘void epee::net_utils::blocked_mode_client::shutdown_ssl()’:
contrib/epee/include/net/net_helper.h:579:106: error: ‘SSL_R_SHORT_READ’ was not declared in this scope
    if (ec.category() == boost::asio::error::get_ssl_category() && ec.value() != ERR_PACK(ERR_LIB_SSL, 0, SSL_R_SHORT_READ))
                                                                                                          ^
contrib/epee/include/net/net_helper.h:579:106: note: suggested alternative: ‘SSL_F_SSL_READ’

See boost/asio/ssl/error.hpp.
Boost handles differences between OpenSSL versions.

cmake: fail if Boost is too old for OpenSSL v1.1
2017-10-17 16:12:58 -04:00
Cole Lightfighter
4fd6a3d27f Subaddress unit tests
Basic unit test fixture, and initialization of a subaddress account.

Signed-off-by: Cole Lightfighter <cole@onicsla.bz>
2017-10-17 10:59:53 -06:00
kenshi84
88ebfd646a core_tests: fix for subaddress patch 2017-10-17 22:29:01 +09:00
rbrunner7
b370ef54b9 Wallet: Descriptions through new commands 'set_description', 'get_description' 2017-10-16 22:24:09 +02:00
binaryFate
b2d416f211 Distinguish "not enough money" and "not enough unlocked money"
Fix #1530
2017-10-16 15:14:09 +02:00
moneromooo-monero
8233a24ba8 unit_tests: fix build on windows
Reported by iDunk on IRC
2017-10-16 09:37:51 +01:00
kenshi84
e373a2037b performance_tests: add master spend pubkey to subaddress hashtable 2017-10-16 13:08:44 +09:00
kenshi84
ac4018a7e6 wallet2: workaround for lightwallet before supporting subaddress (followup #2656) 2017-10-16 12:03:09 +09:00
kenshi84
4dd05a2f9b subaddress: change prefix so that it starts with 8 2017-10-16 10:35:59 +09:00
Bertrand Jacquin
52c1381049 blockchain_utilities: Add monero-blockchain-{ex,im}port binaries to
default install targets

Binaries available to download on https://getmonero.org/downloads/ as
embedding monerod, monero-wallet-{cli,rpc} and
monero-blockchain-{ex,im}port.

This change synchronise download results with a manual build from
source
2017-10-15 22:19:38 +01:00
Riccardo Spagni
8d511f3c24 Merge pull request #2601
4d35ad76 Fix compiler warnings with Clang 6.0.0. (Vasil Dimov)
2017-10-15 21:36:36 +02:00
Vasil Dimov
4d35ad7603 Fix compiler warnings with Clang 6.0.0.
monero/src/cryptonote_protocol/block_queue.cpp:208:44: error:
      suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
  static const boost::uuids::uuid uuid0 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                           {                                          }

monero/src/wallet/wallet_rpc_server.cpp:1895:43: error:
      lambda capture 'wal' is not used [-Werror,-Wunused-lambda-capture]
  tools::signal_handler::install([&wrpc, &wal](int) {
                                          ^

monero/src/cryptonote_protocol/cryptonote_protocol_handler.inl:1616:40: error:
      lambda capture 'arg' is not used [-Werror,-Wunused-lambda-capture]
    m_p2p->for_each_connection([this, &arg, &fluffy_arg, &exclude_context, &fullConnections...
                                       ^

monero/src/cryptonote_protocol/cryptonote_protocol_handler.inl:1616:46: error:
      lambda capture 'fluffy_arg' is not used [-Werror,-Wunused-lambda-capture]
    m_p2p->for_each_connection([this, &arg, &fluffy_arg, &exclude_context, &fullConnections...
                                             ^

monero/src/blockchain_utilities/blockchain_export.cpp:181:3: error:
      bool literal returned from 'main' [-Werror,-Wmain]
  CHECK_AND_ASSERT_MES(r, false, "Failed to initialize source blockchain storage");
  ^                       ~~~~~
monero/contrib/epee/include/misc_log_ex.h:180:97: note:
      expanded from macro 'CHECK_AND_ASSERT_MES'
  ...fail_ret_val, message)   do{if(!(expr)) {LOG_ERROR(message); return fail_ret_val;};}while(0)
                                                                  ^      ~~~~~~~~~~~~
monero/src/blockchain_utilities/blockchain_export.cpp:195:3: error:
      bool literal returned from 'main' [-Werror,-Wmain]
  CHECK_AND_ASSERT_MES(r, false, "Failed to export blockchain raw data");
  ^                       ~~~~~
monero/contrib/epee/include/misc_log_ex.h:180:97: note:
      expanded from macro 'CHECK_AND_ASSERT_MES'
  ...fail_ret_val, message)   do{if(!(expr)) {LOG_ERROR(message); return fail_ret_val;};}while(0)
                                                                  ^      ~~~~~~~~~~~~
2017-10-15 22:02:24 +03:00
Riccardo Spagni
48af25ed83 Merge pull request #2658
fddd8d22 performance_tests: fix build after subaddress patch (moneromooo-monero)
2017-10-15 21:01:20 +02:00
moneromooo-monero
fddd8d226f performance_tests: fix build after subaddress patch 2017-10-15 19:58:53 +01:00
Riccardo Spagni
da1bb4b0af Merge pull request #2657
52ec0e7f epee: link against ssl/crypto for the new SSL code (moneromooo-monero)
2017-10-15 20:13:53 +02:00
moneromooo-monero
52ec0e7f4e epee: link against ssl/crypto for the new SSL code 2017-10-15 19:11:34 +01:00
Riccardo Spagni
97c11caf07 Merge pull request #2656
3492de01 fix lightwallet and subaddresses conflict (Jaquee)
329f149e remove reference to cryptonote::null_hash (Jaquee)
2017-10-15 19:32:18 +02:00
Jaquee
3492de010b fix lightwallet and subaddresses conflict 2017-10-15 19:19:40 +02:00
Jaquee
329f149e95 remove reference to cryptonote::null_hash 2017-10-15 19:19:40 +02:00
Riccardo Spagni
b293ad9a1a Merge pull request #2640
22b51e06 db_lmdb: include chain height when failing to find an output key (moneromooo-monero)
5db433b3 blockchain: avoid exceptions in output verification (moneromooo-monero)
2017-10-15 18:59:45 +02:00
Riccardo Spagni
344c01c712 Merge pull request #2638
529a6a4a core: guard against a mined block not finding all txes in the pool (moneromooo-monero)
2017-10-15 18:58:57 +02:00
Riccardo Spagni
845afb5191 Merge pull request #2613
2051f89f cmake: build tests last (redfish)
2017-10-15 18:58:31 +02:00
Riccardo Spagni
b4126266d4 Merge pull request #2610
44c1d160 unit_tests: fix compiling on Windows (iDunk5400)
2017-10-15 18:54:32 +02:00
Riccardo Spagni
6159a83175 Merge pull request #2608
fe484f30 unit_tests: data dir is now overridden with --data-dir (moneromooo-monero)
2017-10-15 18:54:16 +02:00
Riccardo Spagni
73f0c16743 Merge pull request #2606
4090e8c6 simplewallet: add get/set for refresh-from-height (moneromooo-monero)
2017-10-15 18:51:11 +02:00
Riccardo Spagni
d5ab55b8d7 Merge pull request #2604
0a872798 protocol: kick idle peers by dropping them (moneromooo-monero)
2017-10-15 18:50:32 +02:00
Riccardo Spagni
f1bee553b1 Merge pull request #2602
bc1b9333 frob level 1 logs a bit for consistency (moneromooo-monero)
2017-10-15 18:49:48 +02:00
Riccardo Spagni
62d2a55719 Merge pull request #2600
885c773a cmake: print which stack trace lib is used (redfish)
2017-10-15 18:49:11 +02:00
Riccardo Spagni
f484b162db Merge pull request #2599
b776c725 daemon: use @N syntax to output_histogram for specific amounts (moneromooo-monero)
2017-10-15 18:48:19 +02:00
Riccardo Spagni
e50bf5f811 Merge pull request #2597
c4136134 miner: always update block template when starting (moneromooo-monero)
2017-10-15 18:47:43 +02:00
Riccardo Spagni
5c3275ddbe Merge pull request #2596
06fb9bcf wallet2: fix refresh height calc for new wallets (moneromooo-monero)
2017-10-15 18:47:16 +02:00
Riccardo Spagni
71253c1dcd Merge pull request #2592
dc19659d Remove network_address_base which has been merged with ipv4_network_address in 8b006877 (Michał Sałaban)
2183ade0 Don't try to create wallet-dir when it's not given, don't crash if wallet-dir already exists. (Michał Sałaban)
2017-10-15 18:39:13 +02:00
Riccardo Spagni
1280ba4f5b Merge pull request #2589
8f0cea63 add a command_line function to check for defaulted options (moneromooo-monero)
2017-10-15 18:38:46 +02:00
Riccardo Spagni
3eac7ab94f Merge pull request #2587
cba34494 rpc: out_peers now works again (moneromooo-monero)
2017-10-15 18:38:12 +02:00
Riccardo Spagni
50f0c1f0e0 Merge pull request #2586
7b8d3ec6 wallet-cli: add --do-not-relay option (stoffu)
2017-10-15 18:37:38 +02:00
Riccardo Spagni
1740f0a13e Merge pull request #2583
27fdaaa4 Fix building with -DARCH=default -DNO_AES=ON (moneromooo-monero)
2017-10-15 18:37:14 +02:00
Riccardo Spagni
cb9b1fcc94 Merge pull request #2582
240f769d tests: add sha256sum unit test (moneromooo-monero)
2017-10-15 18:36:38 +02:00
Riccardo Spagni
6ad660a82e Merge pull request #2578
e6636577 Add needed dependencies (Emilien Devos)
2017-10-15 18:36:05 +02:00
Riccardo Spagni
147ecb6b7a Merge pull request #2573
7e7acdc3 daemon: catch out of range exceptions too when calling stoll/stoi (moneromooo-monero)
2017-10-15 18:34:48 +02:00
Riccardo Spagni
1e577e8fbf Merge pull request #2571
8028dde7 block_queue: use boost::uuids::nil_uuid where appropriate (moneromooo-monero)
2017-10-15 18:34:26 +02:00
Riccardo Spagni
27ed7419bb Merge pull request #2570
f139a6ca wallet2: fix backlog being off by 1 (moneromooo-monero)
2017-10-15 18:33:51 +02:00
Riccardo Spagni
1039b5e813 Merge pull request #2569
b5b4abb8 simplewallet: fix setting default-ring-size to 0 (moneromooo-monero)
2017-10-15 18:32:41 +02:00
Riccardo Spagni
c45f3ac4d9 Merge pull request #2568
7130cf0c Add tools::on_startup, and warn about glibc 2.25 bug if found (moneromooo-monero)
2017-10-15 18:32:09 +02:00
Riccardo Spagni
2babd2e0a3 Merge pull request #2567
54940d8c blockchain_import: remove a few commented out obsolete lines (moneromooo-monero)
2017-10-15 18:29:18 +02:00
Riccardo Spagni
1c546e0d81 Merge pull request #2565
452d4fae tests: fix hashchain unit tests (moneromooo-monero)
2017-10-15 18:27:08 +02:00
Riccardo Spagni
51bfdfb674 Merge pull request #2556
acc186eb README: Add package installation instructions for Void Linux (Helmut Pozimski)
2017-10-15 18:26:46 +02:00
Riccardo Spagni
960886aa04 Merge pull request #2109
97c2e449 wallet2+API: use separate callbacks for lightwallets (Jaquee)
d9261867 walletAPI: correct confirmations in txHistory for unsynced wallets (Jaquee)
9442b043 walletAPI: lightwallet exceptions (Jaquee)
fc922934 walletAPI: add lightwallet login() and importWalletRequest() (Jaquee)
79207743 walletAPI: init() lightwallet and SSL support (Jaquee)
dde5a1fc walletAPI: add tx unlock_time (Jaquee)
bba5cbed wallet2: remove obsolete get_num_rct_outputs() call from create_transactions_2 (Jaquee)
7a482f30 wallet2: create_transactions_2 lightwallet support (Jaquee)
ce61b818 wallet2: get_outs lightwallet support (Jaquee)
1197cb71 wallet2: commit_tx() lightwallet support (Jaquee)
43b57804 wallet2: refactor is_tx_spendtime_unlocked() (Jaquee)
32e2b003 wallet2: add lightwallet exceptions to common functions (Jaquee)
2e692fc0 wallet2: refresh() lightwallet support (Jaquee)
f44d156c my/openmonero API functions (Jaquee)
288d3c75 wallet2: add remove_obsolete_pool_txs() (Jaquee)
2c6aad7e wallet2: add on_pool_tx_removed callback (Jaquee)
ff7c30aa wallet2: light wallet member variables (Jaquee)
e2a276cb wallet2: add ssl option to init() (Jaquee)
a13540be add string_tools::validate_hex() (Jaquee)
fd773d88 refactor cryptonote_basic::add_tx_pub_key_to_extra (Jaquee)
8bfa6c2d lightwallet rpc server commands (Jaquee)
76961ddc Serializer: string to integer conversion for MyMonero compatibility (Jaquee)
1cf940f2 epee http_client SSL support (Jaquee)
eec10137 CMakeLists.txt - Add openssl include dir (Jaquee)
2017-10-15 18:25:08 +02:00
Jaquee
97c2e449ce wallet2+API: use separate callbacks for lightwallets 2017-10-15 17:58:28 +02:00
Jaquee
d92618675b walletAPI: correct confirmations in txHistory for unsynced wallets 2017-10-15 17:58:28 +02:00
Jaquee
9442b04302 walletAPI: lightwallet exceptions 2017-10-15 17:57:45 +02:00
Jaquee
fc9229342d walletAPI: add lightwallet login() and importWalletRequest() 2017-10-15 17:57:43 +02:00
Jaquee
79207743b8 walletAPI: init() lightwallet and SSL support 2017-10-15 17:56:35 +02:00
Jaquee
dde5a1fc36 walletAPI: add tx unlock_time 2017-10-15 17:54:17 +02:00
Jaquee
bba5cbed8f wallet2: remove obsolete get_num_rct_outputs() call from create_transactions_2 2017-10-15 17:54:14 +02:00
Jaquee
7a482f302b wallet2: create_transactions_2 lightwallet support 2017-10-15 17:51:20 +02:00
Jaquee
ce61b8189b wallet2: get_outs lightwallet support 2017-10-15 17:50:03 +02:00
Jaquee
1197cb71e9 wallet2: commit_tx() lightwallet support 2017-10-15 17:48:45 +02:00
Jaquee
43b57804f8 wallet2: refactor is_tx_spendtime_unlocked() 2017-10-15 17:48:45 +02:00
Jaquee
32e2b0030e wallet2: add lightwallet exceptions to common functions 2017-10-15 17:48:41 +02:00
Jaquee
2e692fc05a wallet2: refresh() lightwallet support 2017-10-15 17:42:50 +02:00
Jaquee
f44d156cbd my/openmonero API functions 2017-10-15 17:42:29 +02:00
Jaquee
288d3c75c3 wallet2: add remove_obsolete_pool_txs() 2017-10-15 17:39:54 +02:00
Jaquee
2c6aad7ea7 wallet2: add on_pool_tx_removed callback 2017-10-15 17:35:15 +02:00
Jaquee
ff7c30aadc wallet2: light wallet member variables 2017-10-15 17:35:08 +02:00
Riccardo Spagni
56ea442fd3 Merge pull request #2555
a4b4651c dns_utils: allow an optional DNS server IP in DNS_PUBLIC (moneromooo-monero)
2017-10-15 17:33:09 +02:00
Riccardo Spagni
d316b3d266 Merge pull request #2554
d74336d5 wallet: encrypt (un)signed tx, also optionally save unencrypted raw tx hexstr (stoffu)
2017-10-15 17:32:30 +02:00
Jaquee
e2a276cbb5 wallet2: add ssl option to init() 2017-10-15 17:32:13 +02:00
Jaquee
a13540be6f add string_tools::validate_hex() 2017-10-15 17:32:13 +02:00
Jaquee
fd773d88cd refactor cryptonote_basic::add_tx_pub_key_to_extra 2017-10-15 17:32:09 +02:00
Riccardo Spagni
d8bc28cc36 Merge pull request #2552
69ce33f2 core: fix failure to sync when a tx is already in the pool (moneromooo-monero)
2017-10-15 17:31:37 +02:00
Riccardo Spagni
62629541a5 Merge pull request #2550
735fafec simplewallet: allow 1/yes/y as well as true for start_mining options (moneromooo-monero)
2017-10-15 17:31:14 +02:00
Riccardo Spagni
ce1016254a Merge pull request #2549
bf2d9113 simplewallet: fix --restore-from-height being ignored (moneromooo-monero)
2017-10-15 17:30:53 +02:00
Jaquee
8bfa6c2d9f lightwallet rpc server commands 2017-10-15 17:30:23 +02:00
Riccardo Spagni
bb268cad96 Merge pull request #2538
efb95f96 readme: update Arch/AUR pkg name; post-rebranding (redfish)
2017-10-15 17:30:13 +02:00
Riccardo Spagni
cce1548db8 Merge pull request #2507
787ff011 add Mishi Choudhary's GPG key (Riccardo Spagni)
2017-10-15 17:29:41 +02:00
Jaquee
76961ddc3e Serializer: string to integer conversion for MyMonero compatibility
mymonero timestamp conversion
2017-10-15 17:29:07 +02:00
Jaquee
1cf940f2a1 epee http_client SSL support 2017-10-15 17:29:04 +02:00
Riccardo Spagni
5df4ecbb83 Merge pull request #2528
551a8ea6 mnemonics: new Lojban word list (Wei Tang)
2017-10-15 17:27:58 +02:00
Jaquee
eec1013785 CMakeLists.txt - Add openssl include dir 2017-10-15 17:25:26 +02:00
Riccardo Spagni
5ea20d6944 Merge pull request #2469
7adceee6 precomputed block hashes are now in blocks of N (currently 256) (moneromooo-monero)
2017-10-15 17:23:50 +02:00
Riccardo Spagni
f7b9f44c1b Merge pull request #2056
53ad5a0f Subaddresses (kenshi84)
2017-10-15 17:21:12 +02:00
moneromooo-monero
118a1bed28 rpc: make get_coinbase_tx_sum a restricted RPC
It's pretty slow and I/O intensive
2017-10-14 09:49:24 +01:00
moneromooo-monero
7130cf0c61 Add tools::on_startup, and warn about glibc 2.25 bug if found
https://sourceware.org/bugzilla/show_bug.cgi?id=21778
2017-10-14 09:12:28 +01:00
redfish
6bab9efe00 debug utils: fix debug build: rm unused identifier 2017-10-13 15:38:02 +00:00
redfish
b92d3f96c0 cmake: fix shared library build 2017-10-13 15:37:52 +00:00
moneromooo-monero
22b51e0672 db_lmdb: include chain height when failing to find an output key
To help debugging logs.
2017-10-12 13:28:28 +01:00
moneromooo-monero
5db433b3f7 blockchain: avoid exceptions in output verification
This can happen if we get a bad tx, so let's not spam the log.
2017-10-12 13:27:20 +01:00
moneromooo-monero
529a6a4af8 core: guard against a mined block not finding all txes in the pool
This can happen for several reasons, but mainly if another block
was received, which took that tx off the pool.
2017-10-11 13:00:49 +01:00
Howard Chu
0aa4cc8028 ITS#8339 Solaris 10/11 robust mutex fixes
Check for PTHREAD_MUTEX_ROBUST_NP definition (this doesn't work
on Linux/glibc because they used an enum). Zero out mutex before
initing.
2017-10-10 19:04:11 +01:00
moneromooo-monero
a4b4651cb0 dns_utils: allow an optional DNS server IP in DNS_PUBLIC
tcp://a.b.c.d
2017-10-10 12:29:05 +01:00
moneromooo-monero
6bd4dac6e2 util: ignore SIGPIPE
In practice, this seems to cause monero-wallet-rpc to exit
when ^C quits whatever its output is piped into (such as tee),
but it saves, while it did not before.
2017-10-09 21:46:01 +01:00
moneromooo-monero
7dbf76d0da Fix an object lifetime bug in net load tests
The commands handler must not be destroyed before the config
object, or we'll be accessing freed memory.

An earlier attempt at using boost::shared_ptr to control object
lifetime turned out to be very invasive, though would be a
better solution in theory.
2017-10-09 16:46:42 +01:00
redfish
2051f89fbe cmake: build tests last
Keep -Werror for src, contrib and do not pass it for tests/
2017-10-08 20:47:50 -04:00
iDunk5400
44c1d160c8 unit_tests: fix compiling on Windows 2017-10-08 23:59:08 +02:00
binaryFate
93ad1f8723 Fix #2559: more flexible print_tx daemon command 2017-10-08 22:35:35 +02:00
moneromooo-monero
fe484f3049 unit_tests: data dir is now overridden with --data-dir
rather than a raw string without option
2017-10-08 21:19:05 +01:00
moneromooo-monero
4090e8c6e5 simplewallet: add get/set for refresh-from-height 2017-10-08 10:14:44 +01:00
moneromooo-monero
0a872798bc protocol: kick idle peers by dropping them
This is safer, as we don't risk break expectations (eg, requesting
block hashes and then receiving a late set of blocks). Dropping a
connection means another will be attempted in a fresh state.

Also bump the kick timeout to 5 minutes, to ensure we only kick
really idle peers.
2017-10-07 20:29:11 +01:00
moneromooo-monero
bc1b93333e frob level 1 logs a bit for consistency
Level 1 logs map to INFO, so setting log level to 1 should
show these. Demote some stuff to DEBUG to avoid spam, though.
2017-10-07 20:03:42 +01:00
Michał Sałaban
dc19659d16 Remove network_address_base which has been merged with ipv4_network_address in 8b006877 2017-10-07 19:29:30 +02:00
redfish
885c773af3 cmake: print which stack trace lib is used
To avoid the suprize of stack tracing being enabled
but libunwind not being linked in.
2017-10-07 12:13:31 -04:00
moneromooo-monero
b776c72568 daemon: use @N syntax to output_histogram for specific amounts
Makes debugging tx verification easier
2017-10-07 16:45:54 +01:00
moneromooo-monero
c413613416 miner: always update block template when starting
This fixes using the previous address when starting mining,
then stopping and restarting with a different address
2017-10-07 11:32:36 +01:00
moneromooo-monero
06fb9bcfcc wallet2: fix refresh height calc for new wallets 2017-10-07 11:21:11 +01:00
kenshi84
53ad5a0f42 Subaddresses 2017-10-07 13:06:21 +09:00
stoffu
7b8d3ec6ba wallet-cli: add --do-not-relay option 2017-10-07 12:46:09 +09:00
stoffu
d74336d5c9 wallet: encrypt (un)signed tx, also optionally save unencrypted raw tx hexstr 2017-10-07 12:45:32 +09:00
Michał Sałaban
2183ade0c4 Don't try to create wallet-dir when it's not given, don't crash if wallet-dir already exists. 2017-10-07 02:04:33 +02:00
Riccardo Spagni
86e9de588c Merge pull request #2548
7d4ef258 rpc: fix getting txpool transactions (moneromooo-monero)
2017-10-06 23:00:43 +04:00
Riccardo Spagni
09ccd07bbc Merge pull request #2542
180a848c wallet2: Missing underflow check on low heights (landergate)
2017-10-06 23:00:24 +04:00
Riccardo Spagni
e8a7291d12 Merge pull request #2541
15e62581 connection_context: initialize m_callback_request_count to 0 (moneromooo-monero)
5fa199c6 copyable_atomic: add a ctor with initial value (moneromooo-monero)
2017-10-06 22:58:54 +04:00
Riccardo Spagni
2ff832c576 Merge pull request #2540
71c7f8d0 core: fix logging the one time public key on error (moneromooo-monero)
2017-10-06 22:58:20 +04:00
Riccardo Spagni
fb7dcb6ec0 Merge pull request #2539
93ed9321 cmake: add libversion and libcheckpoints to libwallet_merged (redfish)
2017-10-06 22:57:20 +04:00
Riccardo Spagni
4a20a5b5ea Merge pull request #2537
269a2a01 blockchain: fix off by one getting blocks (moneromooo-monero)
2017-10-06 22:56:17 +04:00
Riccardo Spagni
478b14b565 Merge pull request #2534
4e115a3a core: remove out sorting from v7 rules (moneromooo-monero)
2017-10-06 22:55:00 +04:00
Riccardo Spagni
6cf36b4e96 Merge pull request #2530
cbc5508b construct_tx_and_get_tx_key: return sorted sources for print_ring_memebrs to work properly (stoffu)
2017-10-06 22:54:19 +04:00
Riccardo Spagni
1c044b162c Merge pull request #2529
bd937139 wallet2: error check for generate_key_image_helper, removed redundant wallet_generate_key_image_helper (stoffu)
2017-10-06 22:53:28 +04:00
Riccardo Spagni
a21572757e Merge pull request #2524
38f2ccbe fix portable binaries build targets (lancillotto)
2017-10-06 22:52:45 +04:00
Riccardo Spagni
8661f4e868 Merge pull request #2523
540d6fa3 tests: pass data dir as arg (redfish)
2017-10-06 22:51:22 +04:00
Riccardo Spagni
c58ec8cdc1 Merge pull request #2468
986d03d4 simplewallet: allow to set threshold before warning about tx backlog (selsta)
2017-10-06 22:50:41 +04:00
Riccardo Spagni
3bcce5be86 Merge pull request #2345
8b006877 Upgrades to epee::net_utils::network_address   - internal nullptr checks   - prevent modifications to network_address (shallow copy issues)   - automagically works with any type containing interface functions   - removed fnv1a hashing   - ipv4_network_address now flattened with no base class (Lee Clagett)
2017-10-06 22:49:45 +04:00
moneromooo-monero
8f0cea6355 add a command_line function to check for defaulted options 2017-10-06 10:56:18 +01:00
moneromooo-monero
27fdaaa409 Fix building with -DARCH=default -DNO_AES=ON 2017-10-06 08:47:03 +01:00
moneromooo-monero
cba3449415 rpc: out_peers now works again 2017-10-06 08:40:14 +01:00
moneromooo-monero
240f769d21 tests: add sha256sum unit test 2017-10-05 17:03:37 +01:00
Lee Clagett
8b00687735 Upgrades to epee::net_utils::network_address
- internal nullptr checks
  - prevent modifications to network_address (shallow copy issues)
  - automagically works with any type containing interface functions
  - removed fnv1a hashing
  - ipv4_network_address now flattened with no base class
2017-10-05 11:57:09 -04:00
Emilien Devos
e663657727 Add needed dependencies 2017-10-04 14:05:11 +02:00
moneromooo-monero
7e7acdc32b daemon: catch out of range exceptions too when calling stoll/stoi
And any other exception, just to be safe
2017-10-03 17:36:44 +01:00
moneromooo-monero
8028dde7a6 block_queue: use boost::uuids::nil_uuid where appropriate 2017-10-03 11:55:45 +01:00
moneromooo-monero
f139a6cad0 wallet2: fix backlog being off by 1
We don't want to count "partly filled" blocks in this case
2017-10-03 11:49:46 +01:00
moneromooo-monero
b5b4abb8a6 simplewallet: fix setting default-ring-size to 0
It'd be set to the current wallet default instead
2017-10-03 11:45:02 +01:00
moneromooo-monero
54940d8ca4 blockchain_import: remove a few commented out obsolete lines 2017-10-03 09:15:57 +01:00
moneromooo-monero
452d4fae39 tests: fix hashchain unit tests
and relax the not-empty safety check to stay more intuitiuve
2017-10-03 00:51:53 +01:00
stoffu
bd9371395e wallet2: error check for generate_key_image_helper, removed redundant wallet_generate_key_image_helper 2017-10-03 08:13:00 +09:00
stoffu
cbc5508b15 construct_tx_and_get_tx_key: return sorted sources for print_ring_memebrs to work properly 2017-10-03 08:12:28 +09:00
Riccardo Spagni
a2041c9874 Merge pull request #2518
6a0fb301 performance_tests: adjust some iterations down a bit (moneromooo-monero)
2017-10-02 23:31:27 +04:00
Riccardo Spagni
5f430cedd8 Merge pull request #2515
c34093db simplewallet: add privacy warning when using an untrusted demon (moneromooo-monero)
2017-10-02 23:30:20 +04:00
Riccardo Spagni
87d0516f7d Merge pull request #2513
309290d1 Source updates are in a source subdirectory (moneromooo-monero)
2017-10-02 23:29:25 +04:00
Riccardo Spagni
3bab2676ec Merge pull request #2512
792ba4f0 Log categories can now be added to and removed from (moneromooo-monero)
48f92eb6 easylogging++: add categories getter (moneromooo-monero)
f35afe62 epee: factor log level/categories setting (moneromooo-monero)
2017-10-02 23:28:59 +04:00
Riccardo Spagni
db45291c8d Merge pull request #2506
c3de19ed json_object: add missing do_not_relay to tx_in_pool serialization (moneromooo-monero)
2017-10-02 23:27:21 +04:00
selsta
986d03d4b2 simplewallet: allow to set threshold before warning about tx backlog 2017-10-02 21:23:33 +02:00
Riccardo Spagni
abe24f4429 Merge pull request #2504
f182acdd dns_utils: query DNS records in parallel (moneromooo-monero)
2017-10-02 23:21:10 +04:00
Riccardo Spagni
fb568a6e8e Merge pull request #2503
d73162f9 update translation: final changes (lancillotto)
688acacb update translation: typo fix and changes (lancillotto)
2017-10-02 23:20:10 +04:00
Riccardo Spagni
1aab83ebf7 Merge pull request #2502
e914153f Include additional instructions for Jessie (Mike C)
7cdb3431 Update Raspberry Pi build instructions (Mike C)
2017-10-02 23:19:30 +04:00
Riccardo Spagni
4a450042f7 Merge pull request #2495
2540d162 Add -a append option to mdb_load (Howard Chu)
2017-10-02 23:18:48 +04:00
Riccardo Spagni
737717c111 Merge pull request #2491
d5a9edf2 wallet2: fix exception on split txes (moneromooo-monero)
5c5b0fd0 wallet2: print unused indices on a single line (moneromooo-monero)
2017-10-02 23:17:57 +04:00
Riccardo Spagni
c08b6cc485 Merge pull request #2475
f2939bdc epee: keep a ref to a connection we're deleting (moneromooo-monero)
2017-10-02 23:15:56 +04:00
Riccardo Spagni
3bf20a77f2 Merge pull request #2470
2e59f6ea rpc: add new RPCs to get and set limits (MaxXor)
2017-10-02 23:15:22 +04:00
Riccardo Spagni
e93e0c2be3 Merge pull request #2467
2e82b232 epee: give virtual dtor to network_address_base (moneromooo-monero)
2017-10-02 23:14:03 +04:00
Riccardo Spagni
27da943d9f Merge pull request #2561
37c12119 wallet2: fix hash chain trimming when the inner chain becomes empty (moneromooo-monero)
2017-10-02 23:11:49 +04:00
moneromooo-monero
37c12119ab wallet2: fix hash chain trimming when the inner chain becomes empty
It'd prevent further syncing. Recovery of empty hash chains is
automatic, but requires a running daemon
2017-10-02 12:52:22 +01:00
Cole Lightfighter
ff7745bb87 Edited test readme for accuracy and depth
Removed some erroneous instructions, and added information about
different test suites.

Signed-off-by: Cole Lightfighter <cole@onicsla.bz>
2017-10-01 12:11:59 -06:00
Helmut Pozimski
acc186ebb1 README: Add package installation instructions for Void Linux 2017-10-01 10:42:38 +02:00
moneromooo-monero
69ce33f217 core: fix failure to sync when a tx is already in the pool 2017-09-29 21:34:10 +01:00
moneromooo-monero
735fafecb0 simplewallet: allow 1/yes/y as well as true for start_mining options
Also mention those options in the start_mining help line
2017-09-29 19:17:25 +01:00
moneromooo-monero
bf2d911365 simplewallet: fix --restore-from-height being ignored 2017-09-29 19:06:14 +01:00
moneromooo-monero
7d4ef25800 rpc: fix getting txpool transactions 2017-09-29 16:29:26 +01:00
redfish
540d6fa3d5 tests: pass data dir as arg
This fixes test failure on builds that happen
to be built in 'build/' instead of 'build/release'.

Use boost filesystem path type.
2017-09-28 01:41:44 -04:00
moneromooo-monero
4e115a3a4c core: remove out sorting from v7 rules
and restore random shuffle of outputs

This turned out to have a flaw (sort order depends on output
index), and this doesn't really bring much anyway
2017-09-27 12:42:08 +01:00
landergate
180a848cbe wallet2: Missing underflow check on low heights
Lack of it results in `m_refresh_from_block_height` being < 0 (18446744...) on low heights, which blocks `process_new_blockchain_entry` and never process coins on heights less than blocks_per_month.
Follow-up to #2258
2017-09-27 14:17:48 +03:00
moneromooo-monero
15e6258136 connection_context: initialize m_callback_request_count to 0 2017-09-27 11:43:12 +01:00
moneromooo-monero
5fa199c652 copyable_atomic: add a ctor with initial value 2017-09-27 11:43:08 +01:00
moneromooo-monero
71c7f8d0dc core: fix logging the one time public key on error 2017-09-27 11:40:05 +01:00
redfish
93ed932143 cmake: add libversion and libcheckpoints to libwallet_merged
Needed to link monero-core Qt wallet.
2017-09-27 00:57:02 -04:00
redfish
efb95f9615 readme: update Arch/AUR pkg name; post-rebranding 2017-09-26 21:19:50 -04:00
moneromooo-monero
269a2a01ef blockchain: fix off by one getting blocks 2017-09-27 00:31:49 +01:00
Mike C
e914153ff5 Include additional instructions for Jessie
Raspbian Jessie users must compile boost themselves.
2017-09-26 13:00:21 -06:00
Riccardo Spagni
5f7cddeb53 Merge pull request #2533
97cdd4c9 core: undo output sorting (moneromooo-monero)
2017-09-26 15:59:32 +02:00
moneromooo-monero
97cdd4c92f core: undo output sorting
It looks like it may be buggy
2017-09-26 13:23:31 +01:00
Wei Tang
551a8ea60e mnemonics: new Lojban word list
Word list authored by: sorpaas
Sources:
  lo gimste jo'u lo ma'oste (http://guskant.github.io/lojbo/gismu-cmavo.html)
  N-grams of Lojban corpus (https://mw.lojban.org/papri/N-grams_of_Lojban_corpus)
2017-09-26 06:42:17 +08:00
Riccardo Spagni
21c2c08041 Merge pull request #2527
ba6907f6 core: fix creation of v1 txes (moneromooo-monero)
2017-09-25 23:29:32 +02:00
moneromooo-monero
ba6907f661 core: fix creation of v1 txes 2017-09-25 22:27:30 +01:00
Riccardo Spagni
0c5730b101 Merge pull request #2526
db215ecd checkpoints: add missing CMakeLists.txt (moneromooo-monero)
2017-09-25 22:46:46 +02:00
moneromooo-monero
db215ecdb6 checkpoints: add missing CMakeLists.txt 2017-09-25 21:44:53 +01:00
Riccardo Spagni
29d601563f Merge pull request #2434
36c3465b wallet2: do not keep block hashes below last checkpoint (moneromooo-monero)
cdbbe99c checkpoints: add a token checkpoint on testnet (the genesis block) (moneromooo-monero)
493fad80 serialization: add deque serialization (moneromooo-monero)
fa54b205 fix typo in basic and core CMakeLists.txt (moneromooo-monero)
5d65a75b move checkpoints in a separate library (moneromooo-monero)
2017-09-25 22:27:44 +02:00
moneromooo-monero
36c3465b98 wallet2: do not keep block hashes below last checkpoint
This saves a lot of space and load/save time for wallet caches
2017-09-25 21:16:40 +01:00
moneromooo-monero
cdbbe99c82 checkpoints: add a token checkpoint on testnet (the genesis block) 2017-09-25 21:16:35 +01:00
moneromooo-monero
493fad8053 serialization: add deque serialization 2017-09-25 21:16:32 +01:00
moneromooo-monero
fa54b20584 fix typo in basic and core CMakeLists.txt 2017-09-25 21:16:29 +01:00
moneromooo-monero
5d65a75b69 move checkpoints in a separate library 2017-09-25 21:16:26 +01:00
Riccardo Spagni
85f4b600d2 Merge pull request #2466
bc429e9c daemon: make this build with boost 1.61 (moneromooo-monero)
2017-09-25 21:06:47 +02:00
Riccardo Spagni
031f486e12 Merge pull request #2486
8b1acc9a Fix OpenSSL 1.1 detection for static builds (hyc)
2017-09-25 20:25:29 +02:00
Riccardo Spagni
7b8398eed7 Merge pull request #2485
a3691ae3 daemon: fix static building with libzmq (iDunk5400)
2017-09-25 20:25:10 +02:00
Riccardo Spagni
0d52b1392f Merge pull request #2525
8e0670c6 version: fix link to new version strings (moneromooo-monero)
2017-09-25 20:14:18 +02:00
Riccardo Spagni
999c097941 Merge pull request #2439
06a681cf performance_tests: add a test for is_out_to_acc_precomp (moneromooo-monero)
2ec928ba wallet2: simplify tx processing a bit (moneromooo-monero)
740e6533 wallet2: factor some of the tx scanning code (moneromooo-monero)
2017-09-25 20:13:34 +02:00
moneromooo-monero
8e0670c684 version: fix link to new version strings
p2p uses it, and the cpp file needs to know the symbols should
be public
2017-09-25 19:01:56 +01:00
moneromooo-monero
06a681cf5b performance_tests: add a test for is_out_to_acc_precomp 2017-09-25 18:35:55 +01:00
moneromooo-monero
2ec928badb wallet2: simplify tx processing a bit 2017-09-25 18:35:51 +01:00
lancillotto
38f2ccbe1e fix portable binaries build targets 2017-09-25 19:04:03 +02:00
moneromooo-monero
740e6533a5 wallet2: factor some of the tx scanning code 2017-09-25 16:11:28 +01:00
Riccardo Spagni
5530a0e4db Merge pull request #2500
022888fd README Network Consensus Protocol Upgrade Table (Gingeropolous)
2017-09-25 17:06:49 +02:00
Riccardo Spagni
d812d4ed82 Merge pull request #2498
527472d0 README: Add libzmq to dependencies and update MSYS2 dependencies (iDunk5400)
2017-09-25 17:06:20 +02:00
Riccardo Spagni
74c4f1a563 Merge pull request #2460
3487d810 cryptonote_protocol: fix needless chain hashes downloads (moneromooo-monero)
2017-09-25 17:01:53 +02:00
Riccardo Spagni
13be8115e4 Merge pull request #2458
7f2f6ee1 protocol: remove hop count on block propagation (moneromooo-monero)
2017-09-25 17:00:47 +02:00
Riccardo Spagni
e5a2cdbfad Merge pull request #2457
d2d8a41c Use actual batch size for resize estimates (Howard Chu)
2017-09-25 16:57:07 +02:00
Riccardo Spagni
cd22a268ea Merge pull request #2454
5112b28d Readline is now supported directly (Howard Chu)
2017-09-25 16:54:27 +02:00
Riccardo Spagni
32bbe62120 Merge pull request #2456
91def9a5 daemon, wallet: add --max-log-file-size option (selsta)
2017-09-25 16:54:08 +02:00
Riccardo Spagni
0e74777071 Merge pull request #2452
0aaaca29 tx_pool: set the "invalid input" bit when check_tx_inputs fails (moneromooo-monero)
9236823b simplewallet: print tx rejection reason where it was missing (moneromooo-monero)
3dee3301 core_rpc_server: print tx rejection reason at L0 too (moneromooo-monero)
2017-09-25 16:53:07 +02:00
Riccardo Spagni
c2346c6c59 Merge pull request #2424
28b72b6e tx_pool: pre-init tvc.m_verifivation_failed before processing (moneromooo-monero)
50a629b2 core_tests: catch (impossible in practice) tx extra api failure (moneromooo-monero)
fee15ef1 wallet2: catch failure to parse address (moneromooo-monero)
1399e26d net_peerlist: remove dead code (moneromooo-monero)
50e09698 tx_pool: guard against failure getting tx hash (moneromooo-monero)
54cc209a wallet_rpc_server: catch failure to create directory (moneromooo-monero)
3e55099c wallet_rpc_server: init m_vm to NULL in ctor (moneromooo-monero)
7d0dde5e wallet_args: remove redundant default value for --log-file (moneromooo-monero)
ed4a3350 wallet2: catch failure to save keys file (moneromooo-monero)
44434c8a wallet2_api: check whether dynamic_cast returns NULL (moneromooo-monero)
92f2f687 core: check return value from parse_hexstr_to_binbuff (moneromooo-monero)
5475692e wallet2_api: remove an unused, uninitialized, field (moneromooo-monero)
a7ba3de1 libwallet_api_tests: initialize newblock_triggered on reset (moneromooo-monero)
b2763ace wallet2_api: init error code to "no error" in the ctor (moneromooo-monero)
b5faac53 get_blockchain_top now returns void (moneromooo-monero)
2e44d8f2 wallet_rpc_server: guard against exceptions (moneromooo-monero)
4230876b simplewallet: guard against I/O exceptions (moneromooo-monero)
06c1e057 daemon: initialize decode_as_json in RPC request (moneromooo-monero)
11f71af5 http_base: init size_t in http_request_info ctor (moneromooo-monero)
2017-09-25 16:52:27 +02:00
Riccardo Spagni
5953724f69 Merge pull request #2443
ffe27127 wallet_rpc_server: fix index for newly added address book entry (moneromooo-monero)
2017-09-25 16:51:07 +02:00
Riccardo Spagni
b911130a46 Merge pull request #2442
e29282d2 build: auto update version info without manually deleting version.h (stoffu)
2017-09-25 16:50:35 +02:00
Riccardo Spagni
08ada1fa8b Merge pull request #2440
6137a0b9 blockchain: reject unsorted ins and outs from v7 (moneromooo-monero)
16afab90 core: sort ins and outs key key image and public key, respectively (moneromooo-monero)
0c36b9f9 common: add apply_permutation file and function (moneromooo-monero)
2017-09-25 16:49:01 +02:00
moneromooo-monero
28b72b6ecc tx_pool: pre-init tvc.m_verifivation_failed before processing
CID 175316
2017-09-25 15:48:59 +01:00
moneromooo-monero
50a629b2e6 core_tests: catch (impossible in practice) tx extra api failure
CID 175301
2017-09-25 15:48:51 +01:00
moneromooo-monero
fee15ef1a9 wallet2: catch failure to parse address
CID 175297
2017-09-25 15:48:48 +01:00
moneromooo-monero
1399e26d7e net_peerlist: remove dead code
CID 175290
2017-09-25 15:48:45 +01:00
moneromooo-monero
50e096987b tx_pool: guard against failure getting tx hash
Should be impossible in practice, but easy change

CID 175282
2017-09-25 15:48:42 +01:00
moneromooo-monero
54cc209a5e wallet_rpc_server: catch failure to create directory
CID 175281
2017-09-25 15:48:39 +01:00
moneromooo-monero
3e55099cb2 wallet_rpc_server: init m_vm to NULL in ctor
CID 175279
2017-09-25 15:48:36 +01:00
moneromooo-monero
7d0dde5eb5 wallet_args: remove redundant default value for --log-file
CID 175265
2017-09-25 15:48:33 +01:00
moneromooo-monero
ed4a33502d wallet2: catch failure to save keys file
CID 161848
2017-09-25 15:48:30 +01:00
moneromooo-monero
44434c8a37 wallet2_api: check whether dynamic_cast returns NULL
CID 161844
2017-09-25 15:48:27 +01:00
moneromooo-monero
92f2f687b9 core: check return value from parse_hexstr_to_binbuff 2017-09-25 15:48:24 +01:00
moneromooo-monero
5475692ed5 wallet2_api: remove an unused, uninitialized, field
Silences CID 161874
2017-09-25 15:48:21 +01:00
moneromooo-monero
a7ba3de1d3 libwallet_api_tests: initialize newblock_triggered on reset
CID 161873
2017-09-25 15:48:18 +01:00
moneromooo-monero
b2763ace06 wallet2_api: init error code to "no error" in the ctor
CID 161872
2017-09-25 15:48:16 +01:00
moneromooo-monero
b5faac5304 get_blockchain_top now returns void
It was always returning true, and could not be foreseen to
usefully return errors in the future. This silences CID 162652
as well as saves some checking code in a few places.
2017-09-25 15:48:13 +01:00
moneromooo-monero
2e44d8f23c wallet_rpc_server: guard against exceptions
CID 175305
2017-09-25 15:48:10 +01:00
moneromooo-monero
4230876b31 simplewallet: guard against I/O exceptions
CID 175308
2017-09-25 15:48:06 +01:00
moneromooo-monero
06c1e05735 daemon: initialize decode_as_json in RPC request
CID 161886
2017-09-25 15:48:03 +01:00
moneromooo-monero
11f71af56c http_base: init size_t in http_request_info ctor
CID 161879
2017-09-25 15:47:59 +01:00
Riccardo Spagni
76312e04b9 Merge pull request #2435
74a465c8 Repo: remove in-tree VRP, link to single-policy VRP (anonimal)
2017-09-25 16:47:21 +02:00
Riccardo Spagni
174f2fb4da Merge pull request #2428
054054c9 p2p: disable gray list housekeeping when an exclusive node is given (moneromooo-monero)
2017-09-25 16:46:26 +02:00
Riccardo Spagni
4c58b7edb8 Merge pull request #2425
df322ddd utils: systemd: dir for pidfile with permissions (redfish)
2017-09-25 16:46:08 +02:00
Riccardo Spagni
c339d06a5b Merge pull request #2418
50431112 cmake: make warning about headers not fatal (redfish)
0a70ba2c cmake: fix setting of -Werror (redfish)
2017-09-25 16:45:52 +02:00
Riccardo Spagni
c2e46edca2 Merge pull request #2398
e0592e87 dns_utils: remove a few obsolete things (moneromooo-monero)
2017-09-25 16:44:37 +02:00
Riccardo Spagni
ce37967dd2 Merge pull request #2386
a15e8583 wallet2: guard against daemon sending txes in the wrong order (moneromooo-monero)
8fe5f609 rpc: order transactions in the order they were requested (moneromooo-monero)
2017-09-25 16:40:54 +02:00
Riccardo Spagni
216395d43e Merge pull request #2379
9c83f806 Do not create file when RPC user/pass is given and use file locking (Lee Clagett)
2017-09-25 16:40:35 +02:00
Riccardo Spagni
ec0e144e90 Merge pull request #2377
b5cbdce8 wallet2: correctly handle in/out payments for view-only wallet (stoffu)
2017-09-25 16:40:16 +02:00
Riccardo Spagni
44ad32fd4a Merge pull request #2357
58015df4 Fix getblocktemplate RPC returning wrong reserved_offset (Guillaume LE VAILLANT)
2017-09-25 16:39:01 +02:00
Riccardo Spagni
40d213154b Merge pull request #2289
6ee1116d store is optional during close and defaults to true; except during descruction (m2049r)
2017-09-25 16:38:14 +02:00
Riccardo Spagni
c6306e75e7 Merge pull request #2257
651baaec wallet: add encrypted seed functionality (moneromooo-monero)
2017-09-25 16:37:17 +02:00
redfish
504311128d cmake: make warning about headers not fatal
Warning issued on older boost and/or OS:

In file included from /usr/include/boost/asio/detail/socket_types.hpp:61:0,
                 from /usr/include/boost/asio/detail/epoll_reactor.hpp:30,
                 from /usr/include/boost/asio/detail/reactor.hpp:21,
                 from /usr/include/boost/asio/detail/impl/task_io_service.ipp:24,
                 from /usr/include/boost/asio/detail/task_io_service.hpp:198,
                 from /usr/include/boost/asio/impl/io_service.hpp:71,
                 from /usr/include/boost/asio/io_service.hpp:767,
                 from /usr/include/boost/asio/basic_io_object.hpp:19,
                 from /usr/include/boost/asio/basic_socket.hpp:20,
                 from /usr/include/boost/asio/basic_datagram_socket.hpp:20,
                 from /usr/include/boost/asio.hpp:21,
                 from /home/vagrant/slave/monero-static-alpine-3_5-x86_64/build/src/common/download.cpp:32:
/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp]
 #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
2017-09-24 11:25:16 -04:00
redfish
0a70ba2c01 cmake: fix setting of -Werror
Setting COMPILE_FLAGS (or COMPILE_OPTIONS) property directly does not
end up on the command line (even though it should because
add_compile_options does just that).

Also, set -Werror for tests as well, because no warnings now.

Not set for 'external' only because simply moving add_compile_options
above add_subdirectory(external) doesn't do it, and moving add_usbdirectory
down is too big of a change (it will pick up new flags).

-Werror set only for GCC on Linux, since warnings not yet
cleared for other compilers/systems.
2017-09-24 11:25:11 -04:00
moneromooo-monero
6a0fb301bb performance_tests: adjust some iterations down a bit 2017-09-24 11:00:31 +01:00
iDunk5400
a3691ae31c daemon: fix static building with libzmq 2017-09-23 12:34:02 +02:00
m2049r
6ee1116d75 store is optional during close and defaults to true; except during descruction 2017-09-23 00:52:09 +02:00
moneromooo-monero
c34093db58 simplewallet: add privacy warning when using an untrusted demon 2017-09-22 22:19:22 +01:00
moneromooo-monero
309290d1c7 Source updates are in a source subdirectory
rather than in the same directory as the prebuilt versions
2017-09-22 21:48:19 +01:00
lancillotto
d73162f9fb update translation: final changes 2017-09-22 21:43:54 +02:00
moneromooo-monero
792ba4f0fe Log categories can now be added to and removed from
Also, set_log without parameters now prints the log categories
2017-09-22 18:08:14 +01:00
moneromooo-monero
48f92eb665 easylogging++: add categories getter 2017-09-22 14:33:09 +01:00
moneromooo-monero
f35afe62a4 epee: factor log level/categories setting 2017-09-22 14:14:58 +01:00
Riccardo Spagni
787ff01168 add Mishi Choudhary's GPG key 2017-09-21 15:23:37 +02:00
moneromooo-monero
c3de19edd6 json_object: add missing do_not_relay to tx_in_pool serialization 2017-09-21 13:37:30 +01:00
Riccardo Spagni
1f9058187c Merge pull request #2496
3b8b4be5 tx_pool: drop invalid txes from the pool on startup (moneromooo-monero)
2017-09-21 12:07:35 +02:00
Riccardo Spagni
8cc9b0e739 Merge pull request #2492
e457aa51 blockchain: fix crash checking pre-validated txids (moneromooo-monero)
2017-09-21 12:07:22 +02:00
Riccardo Spagni
bd85a47a29 Merge pull request #2477
9aeae7a2 db_lmdb: fix use of uninitialized key in for_blocks_range (moneromooo-monero)
2017-09-21 12:07:08 +02:00
Riccardo Spagni
0f071848a1 Merge pull request #2479
58908295 Fixes static_assert on arm and ppc builds (Lee Clagett)
2017-09-21 11:50:34 +02:00
iDunk5400
527472d0f7 README: Add libzmq to dependencies and update MSYS2 dependencies 2017-09-21 10:49:39 +02:00
moneromooo-monero
f182acdd36 dns_utils: query DNS records in parallel 2017-09-21 09:23:08 +01:00
Riccardo Spagni
48512acda9 Merge pull request #2324
c09aa94d daemon: indicate whether  the spent key image is mined or unconfirmed (stoffu)
2017-09-21 10:12:24 +02:00
Riccardo Spagni
07312a7d6e Merge pull request #2302
ef005f5e p2p: add a couple early outs when the stop signal is received (moneromooo-monero)
80d361c7 abstract_tcp_server2: improve tracking/cancelling of early connections (moneromooo-monero)
2017-09-21 10:11:33 +02:00
lancillotto
688acacbec update translation: typo fix and changes 2017-09-21 01:47:34 +02:00
Mike C
7cdb343184 Update Raspberry Pi build instructions
We don't have to compile boost by ourselves anymore!
2017-09-20 16:56:20 -06:00
stoffu
e29282d208 build: auto update version info without manually deleting version.h 2017-09-21 07:47:37 +09:00
stoffu
c09aa94d34 daemon: indicate whether the spent key image is mined or unconfirmed 2017-09-21 07:46:44 +09:00
stoffu
b5cbdce8a6 wallet2: correctly handle in/out payments for view-only wallet 2017-09-21 07:46:19 +09:00
Gingeropolous
022888fdc8 README Network Consensus Protocol Upgrade Table
Aligned table for all you terminal knuckleheads and tried to better explain the schedule and what a user needs to do
2017-09-20 17:32:56 -04:00
Riccardo Spagni
a6403846ef Merge pull request #2441
fee3c3ed Update wallet2.cpp for misspelling (Matthew Campassi)
2017-09-20 21:41:33 +02:00
Riccardo Spagni
786a4ae9ea Merge pull request #2429
55b91d86 wallet: fix --help and --version erroring out (moneromooo-monero)
2017-09-20 21:41:09 +02:00
Riccardo Spagni
10d60d2524 Merge pull request #2414
ea016330 updated clarification bc_dyn_stats (Matthew Campassi)
5aa2f24b clarification bc_dyn_stats (Matthew Campassi)
2017-09-20 21:37:55 +02:00
Riccardo Spagni
8f1f43163a Merge pull request #2412
81fb2f53 Silence more stupid gcc warnings (Howard Chu)
2017-09-20 21:37:40 +02:00
Riccardo Spagni
8711c355fc Merge pull request #2410
20256b7c Fix AC power supply detection on Linux (Guillaume LE VAILLANT)
2017-09-20 21:36:09 +02:00
Riccardo Spagni
90498f0013 Merge pull request #2405
9cad4981 readme.me again, fixed v2 fork info on table (Gingeropolous)
8f68291d README.md - update info for first fork (Gingeropolous)
43813327 README.md - update fork table with fork height (Gingeropolous)
0e7e307c update hardfork table with height and version info (Gingeropolous)
2017-09-20 21:35:47 +02:00
Riccardo Spagni
d835a3f691 Merge pull request #2399
d0bbc591 Only check for upnp version if version is determined (Orestis Konstantinidis)
2017-09-20 21:35:12 +02:00
Riccardo Spagni
72207fd27a Merge pull request #2381
840aed1c monero-wallet-cli: New command 'wallet_info' improved (rbrunner7)
9bdd985c monero-wallet-cli: New command 'wallet_info' (rbrunner7)
2017-09-20 21:34:48 +02:00
Riccardo Spagni
75563db6e3 Merge pull request #2376
e3680b69 Rename m_listenning_port to m_listening_port (MaxXor)
a1ea475f Delete UPnP port mapping on exit (MaxXor)
2017-09-20 21:33:21 +02:00
moneromooo-monero
3b8b4be5cb tx_pool: drop invalid txes from the pool on startup
instead of just failing

This is a workaround for bad tx blobs being inserted in the
pool for unknown reasons
2017-09-20 18:55:16 +01:00
Howard Chu
2540d162be Add -a append option to mdb_load
To allow reloading of custom-sorted DBs from mdb_dump
2017-09-20 18:50:38 +01:00
moneromooo-monero
e457aa51f4 blockchain: fix crash checking pre-validated txids 2017-09-20 10:46:13 +01:00
moneromooo-monero
d5a9edf27a wallet2: fix exception on split txes 2017-09-20 10:35:15 +01:00
moneromooo-monero
5c5b0fd048 wallet2: print unused indices on a single line
Decreases log spam massively on large wallets
2017-09-20 10:34:45 +01:00
hyc
8b1acc9a86 Fix OpenSSL 1.1 detection for static builds 2017-09-20 01:38:43 +01:00
Cole Lightfighter
c300ae56ca Added test documentation & Keccak unit test 2017-09-19 15:09:38 -06:00
Cole Lightfighter
f6119a8eaa Added test documentation & Keccak unit test 2017-09-19 15:08:38 -06:00
Lee Clagett
5890829552 Fixes static_assert on arm and ppc builds 2017-09-19 10:57:01 -04:00
moneromooo-monero
9aeae7a224 db_lmdb: fix use of uninitialized key in for_blocks_range 2017-09-19 14:11:24 +01:00
MaxXor
2e59f6ea50 rpc: add new RPCs to get and set limits 2017-09-19 10:30:55 +02:00
moneromooo-monero
f2939bdce8 epee: keep a ref to a connection we're deleting
close might end up dropping a ref, ending up removing the
connection from m_connects, as the lock is recursive. This'd
cause an out of bounds exception and kill the idle connection
maker thread
2017-09-19 09:25:17 +01:00
moneromooo-monero
7adceee634 precomputed block hashes are now in blocks of N (currently 256)
This shaves a lot of space off binaries
2017-09-18 16:29:00 +01:00
moneromooo-monero
2e82b232e8 epee: give virtual dtor to network_address_base
It has virtual functions and is used as a base class
2017-09-18 12:30:48 +01:00
Riccardo Spagni
1a73843cec Merge pull request #2446
6d0ca7d1 Tweak concurrency limits (Howard Chu)
510d0d47 Use a threadpool (Howard Chu)
2017-09-18 13:19:26 +02:00
Riccardo Spagni
4c202b199e Merge pull request #2416
2b363e10 README.md: add instructions to fix core pattern (moneromooo-monero)
2017-09-18 13:18:52 +02:00
Riccardo Spagni
b7d52c3205 Merge pull request #2174
87f58974 Docs: C4 revisions as discussed in #2174 (anonimal)
84d25d25 Docs: C4 development process addendum (anonimal)
e022c4e9 Docs: add C4 to contributing guide (anonimal)
2017-09-18 13:14:32 +02:00
Riccardo Spagni
69e039aa19 Merge pull request #2023
f761dbae Remove 1.25x multiplier from tx_pool (Nano Akron)
2017-09-18 13:11:57 +02:00
Riccardo Spagni
591e53445b Merge pull request #2044
0299cb77 Fix various oversights/bugs in ZMQ RPC server code (Thomas Winget)
77986023 json serialization for rpc-relevant monero types (Thomas Winget)
5c1e08fe Refactor some things into more composable (smaller) functions (Thomas Winget)
9ac2ad07 DRY refactoring (Thomas Winget)
2017-09-18 13:08:16 +02:00
moneromooo-monero
bc429e9c6d daemon: make this build with boost 1.61 2017-09-18 11:24:49 +01:00
moneromooo-monero
6137a0b94d blockchain: reject unsorted ins and outs from v7
This ensures no information is leaked by the ordering
2017-09-18 11:23:15 +01:00
Howard Chu
d2d8a41c47 Use actual batch size for resize estimates
And optimize import startup:

Remember start_height position during initial count_blocks pass
to avoid having to reread entire file again to arrive at start_height
2017-09-17 22:08:40 +01:00
moneromooo-monero
3487d81034 cryptonote_protocol: fix needless chain hashes downloads
The last known hash was calculated incorrectly, causing
further chain hash downloads to restart from the current
chain. When the block queue has close to 10k blocks waiting,
this causes frequent downloads of 10k more hashes, but
with only the last few hashes actually being useful.
2017-09-17 14:13:59 +01:00
moneromooo-monero
7f2f6ee1c9 protocol: remove hop count on block propagation
It is unused, as it was apparently a future optimization,
and it leaks some information (though since pools publish
thei blocks they find, that amount seems small).
2017-09-17 10:26:12 +01:00
selsta
91def9a59b daemon, wallet: add --max-log-file-size option 2017-09-17 04:42:45 +02:00
Howard Chu
5112b28d38 Readline is now supported directly
Remove rlwrap info
2017-09-16 17:54:22 +01:00
moneromooo-monero
0aaaca29a2 tx_pool: set the "invalid input" bit when check_tx_inputs fails 2017-09-16 11:27:52 +01:00
moneromooo-monero
9236823bf4 simplewallet: print tx rejection reason where it was missing 2017-09-16 10:33:42 +01:00
moneromooo-monero
3dee3301ba core_rpc_server: print tx rejection reason at L0 too 2017-09-16 10:32:42 +01:00
Howard Chu
6d0ca7d11f Tweak concurrency limits
Create capacity for 2x max, but lie about it
2017-09-15 00:28:48 +01:00
Howard Chu
510d0d4753 Use a threadpool
Instead of constantly creating and destroying threads
2017-09-14 21:42:48 +01:00
Nano Akron
f761dbaeaf Remove 1.25x multiplier from tx_pool 2017-09-14 21:26:19 +01:00
Riccardo Spagni
13a263894a Merge pull request #2378
b338dad2 update miniupnpc (MaxXor)
2017-09-14 21:04:12 +02:00
Riccardo Spagni
7abdba0a5c Merge pull request #2438
9443eec1 core: guard against exceptions in tx verification worker threads (moneromooo-monero)
2017-09-14 18:31:46 +02:00
Riccardo Spagni
81ac8c49ec Merge pull request #2421
edda2014 ITS#8728 fix MDB_VL32 freeing overflow page (Howard Chu)
2017-09-14 18:26:45 +02:00
Riccardo Spagni
e0382a8da2 Merge pull request #2417
a9845cc3 rpc: get_txpool_backlog is now unrestricted (moneromooo-monero)
2017-09-14 18:26:30 +02:00
Riccardo Spagni
3399c2a257 Merge pull request #2404
e5238adf update checkpoint hashes (Riccardo Spagni)
d4f56bdf update hardcoded checkpoints (Riccardo Spagni)
ed730511 update checkpoints.dat (Riccardo Spagni)
2017-09-14 18:25:43 +02:00
Riccardo Spagni
718820cd96 Merge pull request #2396
dbfef643 tx_pool: catch exceptions in LockedTXN dtor (moneromooo-monero)
2017-09-14 18:25:28 +02:00
Riccardo Spagni
4c07297dc6 Merge pull request #2392
6ac61100 Add a --fluffy-blocks option to relay blocks as fluffy blocks (moneromooo-monero)
2017-09-14 18:25:15 +02:00
Riccardo Spagni
f0523ae391 Merge pull request #2389
11818487 Use latest height for fork date estimate (Howard Chu)
2017-09-14 18:24:52 +02:00
moneromooo-monero
ffe2712726 wallet_rpc_server: fix index for newly added address book entry 2017-09-13 11:02:06 +01:00
moneromooo-monero
16afab900d core: sort ins and outs key key image and public key, respectively
This avoids leaking some small amount of information
2017-09-13 09:25:05 +01:00
moneromooo-monero
0c36b9f931 common: add apply_permutation file and function
This algorithm is adapted from Raymond Chen's code:
https://blogs.msdn.microsoft.com/oldnewthing/20170109-00/?p=95145
2017-09-13 09:25:01 +01:00
Matthew Campassi
fee3c3ed1e Update wallet2.cpp for misspelling
Misspelling in wallet2.cpp
2017-09-12 16:11:45 -05:00
moneromooo-monero
651baaec46 wallet: add encrypted seed functionality
This uses luigi1111's CN_Add method.
See https://xmr.llcoins.net for details.
2017-09-12 13:56:01 +01:00
moneromooo-monero
9443eec10f core: guard against exceptions in tx verification worker threads 2017-09-12 12:07:10 +01:00
anonimal
87f5897499 Docs: C4 revisions as discussed in #2174 2017-09-12 02:47:36 +00:00
anonimal
74a465c83e Repo: remove in-tree VRP, link to single-policy VRP 2017-09-11 22:00:21 +00:00
moneromooo-monero
a15e858302 wallet2: guard against daemon sending txes in the wrong order 2017-09-11 16:48:28 +01:00
moneromooo-monero
8fe5f609d1 rpc: order transactions in the order they were requested 2017-09-11 16:48:25 +01:00
redfish
df322ddde5 utils: systemd: dir for pidfile with permissions
monerod runs as user monero which does not have write
permissions for /var/run. Use systemd's RuntimeDirectory
feature to handle this.
2017-09-10 14:41:08 -04:00
Gingeropolous
9cad498121 readme.me again, fixed v2 fork info on table
included increased fee free zone of 60 kb, changed data of v2
2017-09-10 09:25:16 -04:00
moneromooo-monero
55b91d8605 wallet: fix --help and --version erroring out 2017-09-10 14:12:32 +01:00
Gingeropolous
8f68291d60 README.md - update info for first fork
Include change in blocktime
2017-09-10 08:56:54 -04:00
Gingeropolous
4381332710 README.md - update fork table with fork height
I added a column for fork height and included the september 2016 fork info
2017-09-10 08:53:29 -04:00
moneromooo-monero
054054c92f p2p: disable gray list housekeeping when an exclusive node is given
Exclusive nodes may be used for privacy reasons, and thus we don't
want to connect to other nodes, even for checking connectivity.

See https://github.com/monero-project/monero/issues/2346
2017-09-10 13:11:42 +01:00
Howard Chu
edda20146e ITS#8728 fix MDB_VL32 freeing overflow page
Fix #2420
2017-09-09 15:10:23 +01:00
moneromooo-monero
a9845cc344 rpc: get_txpool_backlog is now unrestricted 2017-09-08 23:47:11 +01:00
moneromooo-monero
2b363e104f README.md: add instructions to fix core pattern 2017-09-08 18:41:27 +01:00
Matthew Campassi
ea01633024 updated clarification bc_dyn_stats
updated clarification of required parameter for bc_dyn_stats
2017-09-08 11:31:58 -05:00
Matthew Campassi
5aa2f24b2a clarification bc_dyn_stats
clarification of required parameter for bc_dyn_stats
2017-09-08 11:03:16 -05:00
Howard Chu
81fb2f5347 Silence more stupid gcc warnings 2017-09-08 11:36:49 +01:00
Guillaume LE VAILLANT
20256b7c04 Fix AC power supply detection on Linux
The /sys/class/power_supply/*/present file usually does not exist for
AC power supplies.
2017-09-08 11:07:56 +02:00
Riccardo Spagni
e5238adfb3 update checkpoint hashes 2017-09-06 17:32:48 +02:00
Gingeropolous
0e7e307ca1 update hardfork table with height and version info 2017-09-06 07:47:14 -04:00
Riccardo Spagni
d4f56bdf09 update hardcoded checkpoints 2017-09-06 09:18:46 +02:00
Riccardo Spagni
ed730511dc update checkpoints.dat 2017-09-06 09:18:40 +02:00
Thomas Winget
0299cb77ca Fix various oversights/bugs in ZMQ RPC server code
- Add some RPC commands (and touch up a couple others)
- some bounds checking
- some better pointer management
- const correctness and error handling

-- Thanks @vtnerd for type help with serialization and CMake changes
2017-09-05 12:20:40 -04:00
Thomas Winget
77986023c3 json serialization for rpc-relevant monero types
Structured {de-,}serialization methods for (many new) types
which are used for requests or responses in the RPC.

New types include RPC requests and responses, and structs which compose
types within those.

# Conflicts:
#	src/cryptonote_core/blockchain.cpp
2017-09-05 12:20:27 -04:00
Thomas Winget
5c1e08fe80 Refactor some things into more composable (smaller) functions
This commit refactors some of the rpc-related functions in the
Blockchain class to be more composable.  This change was made
in order to make implementing the new zmq rpc easier without
trampling on the old rpc.

New functions:
  Blockchain::get_num_mature_outputs
  Blockchain::get_random_outputs
  Blockchain::get_output_key
  Blockchain::get_output_key_mask_unlocked

  Blockchain::find_blockchain_supplement (overload)

functions which previously had this functionality inline now call these
functions as necessary.
2017-09-05 12:17:32 -04:00
Orestis Konstantinidis
d0bbc5912a Only check for upnp version if version is determined 2017-09-04 15:56:14 +03:00
moneromooo-monero
dbfef643ed tx_pool: catch exceptions in LockedTXN dtor
This might prevent some calls to terminate when the LockedTXN
dtor is called as part of stack unwinding caused by another
exception in the first place.
2017-09-04 10:18:38 +01:00
moneromooo-monero
e0592e87d8 dns_utils: remove a few obsolete things 2017-09-04 10:04:31 +01:00
moneromooo-monero
6ac61100a1 Add a --fluffy-blocks option to relay blocks as fluffy blocks
Defaults to off, but fluffy blocks are forced enabled on testnet
2017-09-03 11:11:11 +01:00
Howard Chu
1181848748 Use latest height for fork date estimate 2017-09-02 11:44:12 +01:00
Riccardo Spagni
02e5dcd2fa Merge pull request #2384
4e0e4e99 blockchain_import: warn for chunks over 500000, not 100000 (moneromooo-monero)
5b29e87f blockchain_import: properly cleanup core/db on exit (moneromooo-monero)
e167c4d9 blockchain_import: do not error out on truncated files (moneromooo-monero)
2017-09-02 11:32:46 +02:00
Riccardo Spagni
c919ca4f1d Merge pull request #2374
e72e625e tx_pool: wrap tx meta updates in a LockedTXN (moneromooo-monero)
2017-09-02 11:31:19 +02:00
Riccardo Spagni
1e57e48342 Merge pull request #2372
c867357a cryptonote_protocol: error handling on cleanup_handle_incoming_blocks (moneromooo-monero)
ce901fcb Fix blockchain_import wedge on exception in cleanup_handle_incoming_blocks (moneromooo-monero)
84fa015e core: guard against exceptions in handle_incoming_{block,tx} (moneromooo-monero)
2017-09-02 11:30:57 +02:00
Riccardo Spagni
ee1a766861 Merge pull request #2370
3d19ab70 Revert "Cleanup test impact of moving blockchain_db_types()" (Howard Chu)
a95e460c move db specific options to BlockchainDB (moneromooo-monero)
2017-09-02 11:30:38 +02:00
Riccardo Spagni
eb8dac52df Merge pull request #2364
63d8dddc cryptonote_protocol: remove old spans when received as old blocks (moneromooo-monero)
2017-09-02 11:30:21 +02:00
Riccardo Spagni
e19b68b005 Merge pull request #2362
adce8ae4 simplewallet: new "fee" command to display fee information (moneromooo-monero)
2017-09-02 11:30:07 +02:00
Riccardo Spagni
2560948f69 Merge pull request #2342
2e338ca5 wallet2: account for huge testnet reorgs for estimating height (moneromooo-monero)
2017-09-02 11:29:53 +02:00
Riccardo Spagni
5551fcf60b Merge pull request #2329
e3c4395a p2p: init hashes after deserializing a network address (moneromooo-monero)
2017-09-02 11:29:40 +02:00
Riccardo Spagni
eec3527e33 Merge pull request #2316
0c6c3eb3 Silence stupid fallthru warning in gcc 7 (Howard Chu)
2017-09-02 11:29:11 +02:00
Riccardo Spagni
79a0defad7 Merge pull request #2310
ea996f91 clarification of parameters for print_coinbase_tx_sum (Matthew Campassi)
2017-09-02 11:28:41 +02:00
Riccardo Spagni
10da3051c2 Merge pull request #2309
d58700e0 WalletAPI: only allow trusted daemon when importing key images (Jaquee)
8a9bbd26 WalletAPI: copy wallet data when creating a view only wallet (Jaquee)
d27fe32e wallet2: export/import wallet data functions (Jaquee)
225a25f3 import_key_images - allow importing without being connected to daemon (Jaquee)
2017-09-02 11:28:25 +02:00
moneromooo-monero
4e0e4e9942 blockchain_import: warn for chunks over 500000, not 100000
We have a lot of 350000 byte blocks now.
2017-09-01 22:48:33 +01:00
moneromooo-monero
5b29e87f85 blockchain_import: properly cleanup core/db on exit 2017-09-01 11:59:24 +01:00
moneromooo-monero
e167c4d9a1 blockchain_import: do not error out on truncated files
This will happen often when downloading from a live file
2017-09-01 11:58:51 +01:00
MaxXor
e3680b6936 Rename m_listenning_port to m_listening_port 2017-09-01 09:50:22 +02:00
rbrunner7
840aed1cf3 monero-wallet-cli: New command 'wallet_info' improved 2017-08-31 18:01:15 +02:00
Thomas Winget
9ac2ad0744 DRY refactoring 2017-08-31 07:48:27 -04:00
rbrunner7
9bdd985cee monero-wallet-cli: New command 'wallet_info' 2017-08-31 10:11:20 +02:00
Lee Clagett
9c83f8063d Do not create file when RPC user/pass is given and use file locking 2017-08-30 17:39:59 -04:00
MaxXor
b338dad241 update miniupnpc 2017-08-30 21:13:02 +02:00
MaxXor
a1ea475fff Delete UPnP port mapping on exit 2017-08-29 23:28:23 +02:00
moneromooo-monero
e72e625eb1 tx_pool: wrap tx meta updates in a LockedTXN 2017-08-29 16:35:19 +01:00
moneromooo-monero
adce8ae466 simplewallet: new "fee" command to display fee information
including expected transaction backlog at different priorities
2017-08-29 16:28:18 +01:00
moneromooo-monero
c867357adc cryptonote_protocol: error handling on cleanup_handle_incoming_blocks 2017-08-29 16:11:39 +01:00
moneromooo-monero
ce901fcb31 Fix blockchain_import wedge on exception in cleanup_handle_incoming_blocks 2017-08-29 15:43:32 +01:00
Howard Chu
3d19ab7067 Revert "Cleanup test impact of moving blockchain_db_types()"
This reverts commit 3dd34a49ef.
2017-08-29 13:28:16 +01:00
moneromooo-monero
84fa015e77 core: guard against exceptions in handle_incoming_{block,tx}
When one happens, cleanup must be called or the incoming tx
lock will stay locked
2017-08-29 13:01:45 +01:00
moneromooo-monero
a95e460c71 move db specific options to BlockchainDB
Avoids common depending on blockchain_db, which can cause
link errors.
2017-08-29 11:43:34 +01:00
moneromooo-monero
63d8dddc0a cryptonote_protocol: remove old spans when received as old blocks
fixes getting those in a loop
2017-08-28 00:42:58 +01:00
Riccardo Spagni
72b5f37f58 Merge pull request #2349
1914c999 txpool: update db tx metadata when it changes (moneromooo)
4dbf29bd txpool: add tx size median to the pool stats (moneromooo)
2017-08-27 18:15:13 +02:00
Riccardo Spagni
e00238a355 Merge pull request #2347
5807529e blockchain: cap memory size of retrieved blocks (moneromooo-monero)
c1b10381 rpc: decrease memory usage a bit in getblocks.bin (moneromooo-monero)
2017-08-27 18:13:50 +02:00
Riccardo Spagni
48f96c18df Merge pull request #2320
c656dd0e Fix refresh counter display (Howard Chu)
c088d38a Simplify readline support (Howard Chu)
2017-08-26 23:44:03 +02:00
Riccardo Spagni
36b978f50e Merge pull request #2314
c22d22e2 Cleanup test impact of adding safesyncmode() method (Howard Chu)
9a859844 Toggle SAFE syncmode on and off automatically (Howard Chu)
2017-08-26 23:43:22 +02:00
Riccardo Spagni
ff0afc196e Merge pull request #2313
3dd34a49 Cleanup test impact of moving blockchain_db_types() (Howard Chu)
80344740 More DB support cleanup (Howard Chu)
4c7f8ac0 DB cleanup (Howard Chu)
2017-08-26 23:43:09 +02:00
Riccardo Spagni
30eae5f150 Merge pull request #2353
19393115 daemon: fix backlog estimating at max block size (moneromooo-monero)
2017-08-26 23:37:30 +02:00
Riccardo Spagni
193b28506e Merge pull request #2355
f906d87e wallet: new option to check/confirm txpool backlog when sending (moneromooo-monero)
55bec1f0 rpc: add a new RPC to get current txpool backlog (sizes and fees) (moneromooo-monero)
2017-08-26 23:37:16 +02:00
moneromooo-monero
5807529e69 blockchain: cap memory size of retrieved blocks
It helps keep memory usage down when a wallet refreshes through
a string of large blocks
2017-08-26 20:53:58 +01:00
moneromooo-monero
c1b10381fc rpc: decrease memory usage a bit in getblocks.bin 2017-08-26 20:53:54 +01:00
Guillaume LE VAILLANT
58015df4cf Fix getblocktemplate RPC returning wrong reserved_offset
The byte for TX_EXTRA_TAG_PUBKEY is already included in
res.reserved_offset by the call to slow_memmem.
2017-08-26 18:38:27 +02:00
moneromooo-monero
f906d87e66 wallet: new option to check/confirm txpool backlog when sending 2017-08-26 17:16:30 +01:00
moneromooo-monero
19393115dc daemon: fix backlog estimating at max block size
Block size will pretty much never be fully used, unless all txes
are using max fee.
2017-08-26 17:11:40 +01:00
moneromooo-monero
55bec1f03d rpc: add a new RPC to get current txpool backlog (sizes and fees) 2017-08-26 16:23:31 +01:00
moneromooo
1914c999c7 txpool: update db tx metadata when it changes 2017-08-25 22:21:51 +01:00
moneromooo
4dbf29bd32 txpool: add tx size median to the pool stats 2017-08-25 22:21:38 +01:00
moneromooo-monero
2e338ca574 wallet2: account for huge testnet reorgs for estimating height 2017-08-25 11:03:51 +01:00
Riccardo Spagni
335681896a Merge pull request #2311
df0cffed cryptonote_protocol: warn if we see a higher top version we expect (moneromooo-monero)
317ab21a cryptonote_protocol: less strict check on top version on connect (moneromooo-monero)
cc81a371 cryptonote_protocol: update target height when syncing too (moneromooo-monero)
e2ad372b cryptonote_protocol: simplify and remove unnecessary casts (moneromooo-monero)
727e67ca cryptonote_protocol: print peer top height along with its version (moneromooo-monero)
b5345ef4 crypto: use malloc instead of alloca (moneromooo-monero)
80794b31 thread_group: set thread size to THREAD_STACK_SIZE (moneromooo-monero)
5524bc31 print peer id in 0 padded hex for consistency (moneromooo-monero)
8f8cc09b contrib: add sync_info to rlwrap command set (moneromooo-monero)
70b8c6d7 cryptonote_protocol: misc fixes to the new sync algorithm (moneromooo-monero)
2017-08-25 00:21:28 +02:00
Riccardo Spagni
944bbdb51e Merge pull request #2330
ea15e72d tx_pool: fix crash in stats (Howard Chu)
2017-08-25 00:18:42 +02:00
Riccardo Spagni
9b4117b401 Merge pull request #2328
679a5ab8 daemon: print estimated tx backlog in print_pool_stats (moneromooo-monero)
2017-08-25 00:17:32 +02:00
Riccardo Spagni
65ee63e5bf Merge pull request #2326
64ab8844 rpc_client: print destination host/port when failing to connect (moneromooo-monero)
333f7012 http_client: add getters for host and port (moneromooo-monero)
2017-08-25 00:17:02 +02:00
Riccardo Spagni
4ff968d0f5 Merge pull request #2306
5d989b66 core: add mainnet v6 fork height at 1400000 (moneromooo-monero)
2017-08-25 00:16:29 +02: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
moneromooo-monero
e3c4395ab7 p2p: init hashes after deserializing a network address
Fixes multiple connections to the same address
2017-08-23 13:32:02 +01:00
moneromooo-monero
679a5ab85b daemon: print estimated tx backlog in print_pool_stats 2017-08-23 12:12:06 +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
moneromooo-monero
64ab88446a rpc_client: print destination host/port when failing to connect 2017-08-22 12:00:37 +01:00
moneromooo-monero
333f70120c http_client: add getters for host and port 2017-08-22 12:00:21 +01:00
moneromooo-monero
8f8cc09ba1 contrib: add sync_info to rlwrap command set 2017-08-22 11:40:41 +01:00
Howard Chu
c656dd0ede Fix refresh counter display
Suspend readline when refreshing
2017-08-22 08:30:04 +01:00
Howard Chu
c088d38a57 Simplify readline support
And don't use std::mutex
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
Jaquee
d58700e003 WalletAPI: only allow trusted daemon when importing key images 2017-08-21 08:11:12 +02:00
Jaquee
8a9bbd26d3 WalletAPI: copy wallet data when creating a view only wallet 2017-08-21 08:11:12 +02:00
Jaquee
d27fe32e4a wallet2: export/import wallet data functions 2017-08-21 08:11:12 +02: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
Jaquee
225a25f327 import_key_images - allow importing without being connected to daemon 2017-08-18 16:11:30 +02:00
Matthew Campassi
ea996f91b5 clarification of parameters for print_coinbase_tx_sum 2017-08-18 08:54:32 -05:00
moneromooo-monero
5d989b661a core: add mainnet v6 fork height at 1400000 2017-08-18 10:03:49 +01:00
moneromooo-monero
ef005f5e72 p2p: add a couple early outs when the stop signal is received
This avoids quicker exit
2017-08-16 15:44:52 +01:00
moneromooo-monero
80d361c795 abstract_tcp_server2: improve tracking/cancelling of early connections
We don't actually need to keep them past the call to start, as this
adds them to the config object list, and so they'll then be cancelled
already when the stop signal arrives. This allows removing the periodic
call to cleanup connections.
2017-08-16 15:41:34 +01:00
anonimal
84d25d25d4 Docs: C4 development process addendum 2017-07-15 22:54:45 +00:00
anonimal
e022c4e932 Docs: add C4 to contributing guide 2017-07-15 22:49:48 +00:00
1738 changed files with 469638 additions and 294712 deletions

View File

@@ -1 +0,0 @@
*

1
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1 @@
custom: https://www.getmonero.org/get-started/contributing/

184
.github/workflows/build.yml vendored Normal file
View File

@@ -0,0 +1,184 @@
name: ci/gh-actions/cli
on:
push:
pull_request:
paths-ignore:
- 'docs/**'
- '**/README.md'
# The below variables reduce repetitions across similar targets
env:
REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost
BUILD_DEFAULT_LINUX: |
cmake -S . -B build -D ARCH="default" -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Release && cmake --build build -j3
APT_INSTALL_LINUX: 'sudo apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev libprotobuf-dev protobuf-compiler ccache'
APT_SET_CONF: |
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
CCACHE_SETTINGS: |
ccache --max-size=150M
ccache --set-config=compression=true
jobs:
build-macos:
runs-on: macOS-latest
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
with:
path: /Users/runner/Library/Caches/ccache
key: ccache-${{ runner.os }}-build-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-
- name: install dependencies
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi openssl zmq libpgm miniupnpc expat libunwind-headers protobuf ccache
- name: build
run: |
${{env.CCACHE_SETTINGS}}
make -j3
build-windows:
runs-on: windows-latest
env:
CCACHE_TEMPDIR: C:\Users\runneradmin\.ccache-temp
CCACHE_DIR: C:\Users\runneradmin\.ccache
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
with:
path: C:\Users\runneradmin\.ccache
key: ccache-${{ runner.os }}-build-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-
- uses: msys2/setup-msys2@v2
with:
update: true
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-ccache mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git
- name: build
run: |
${{env.CCACHE_SETTINGS}}
make release-static-win64 -j2
# See the OS labels and monitor deprecations here:
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
build-ubuntu:
runs-on: ${{ matrix.os }}
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy:
matrix:
os: [ubuntu-22.04, ubuntu-20.04]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-build-${{ matrix.os }}-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-${{ matrix.os }}
- name: remove bundled boost
run: ${{env.REMOVE_BUNDLED_BOOST}}
- name: set apt conf
run: ${{env.APT_SET_CONF}}
- name: update apt
run: sudo apt update
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: build
run: |
${{env.CCACHE_SETTINGS}}
${{env.BUILD_DEFAULT_LINUX}}
libwallet-ubuntu:
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-libwallet-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-libwallet-
- name: remove bundled boost
run: ${{env.REMOVE_BUNDLED_BOOST}}
- name: set apt conf
run: ${{env.APT_SET_CONF}}
- name: update apt
run: sudo apt update
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: build
run: |
${{env.CCACHE_SETTINGS}}
cmake .
make wallet_api -j3
test-ubuntu:
needs: build-ubuntu
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: ccache
uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ runner.os }}-build-ubuntu-latest-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-build-ubuntu-latest
- name: remove bundled boost
run: ${{env.REMOVE_BUNDLED_BOOST}}
- name: set apt conf
run: ${{env.APT_SET_CONF}}
- name: update apt
run: sudo apt update
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: install Python dependencies
run: pip install requests psutil monotonic zmq
- name: tests
env:
CTEST_OUTPUT_ON_FAILURE: ON
DNS_PUBLIC: tcp://9.9.9.9
run: |
${{env.CCACHE_SETTINGS}}
${{env.BUILD_DEFAULT_LINUX}}
cmake --build build --target test
# ARCH="default" (not "native") ensures, that a different execution host can execute binaries compiled elsewhere.
# BUILD_SHARED_LIBS=ON speeds up the linkage part a bit, reduces size, and is the only place where the dynamic linkage is tested.
source-archive:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive
- name: archive
run: |
pip install git-archive-all
export VERSION="monero-$(git describe)"
export OUTPUT="$VERSION.tar"
echo "OUTPUT=$OUTPUT" >> $GITHUB_ENV
/home/runner/.local/bin/git-archive-all --prefix "$VERSION/" --force-submodules "$OUTPUT"
- uses: actions/upload-artifact@v3
with:
name: ${{ env.OUTPUT }}
path: /home/runner/work/monero/monero/${{ env.OUTPUT }}

106
.github/workflows/depends.yml vendored Normal file
View File

@@ -0,0 +1,106 @@
name: ci/gh-actions/depends
on:
push:
pull_request:
paths-ignore:
- 'docs/**'
- '**/README.md'
env:
APT_SET_CONF: |
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
CCACHE_SETTINGS: |
ccache --max-size=150M
ccache --set-config=compression=true
jobs:
build-cross:
runs-on: ubuntu-20.04
env:
CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy:
fail-fast: false
matrix:
toolchain:
- name: "RISCV 64bit"
host: "riscv64-linux-gnu"
packages: "python3 gperf g++-riscv64-linux-gnu"
- name: "ARM v7"
host: "arm-linux-gnueabihf"
packages: "python3 gperf g++-arm-linux-gnueabihf"
- name: "ARM v8"
host: "aarch64-linux-gnu"
packages: "python3 gperf g++-aarch64-linux-gnu"
- name: "i686 Win"
host: "i686-w64-mingw32"
packages: "python3 g++-mingw-w64-i686"
- name: "i686 Linux"
host: "i686-pc-linux-gnu"
packages: "gperf cmake g++-multilib python3-zmq"
- name: "Win64"
host: "x86_64-w64-mingw32"
packages: "cmake python3 g++-mingw-w64-x86-64"
- name: "x86_64 Linux"
host: "x86_64-unknown-linux-gnu"
packages: "gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev"
- name: "Cross-Mac x86_64"
host: "x86_64-apple-darwin11"
packages: "cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python-dev python3-setuptools-git"
- name: "Cross-Mac aarch64"
host: "aarch64-apple-darwin11"
packages: "cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python-dev python3-setuptools-git"
- name: "x86_64 Freebsd"
host: "x86_64-unknown-freebsd"
packages: "clang-8 gperf cmake python3-zmq libdbus-1-dev libharfbuzz-dev"
name: ${{ matrix.toolchain.name }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive
# Most volatile cache
- name: ccache
uses: actions/cache@v3
with:
path: ~/.ccache
key: ccache-${{ matrix.toolchain.host }}-${{ github.sha }}
restore-keys: ccache-${{ matrix.toolchain.host }}-
# Less volatile cache
- name: depends cache
uses: actions/cache@v3
with:
path: contrib/depends/built
key: depends-${{ matrix.toolchain.host }}-${{ hashFiles('contrib/depends/packages/*') }}
restore-keys: |
depends-${{ matrix.toolchain.host }}-${{ hashFiles('contrib/depends/packages/*') }}
depends-${{ matrix.toolchain.host }}-
# Static cache
- name: OSX SDK cache
uses: actions/cache@v3
with:
path: contrib/depends/sdk-sources
key: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }}
restore-keys: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }}
- name: set apt conf
run: ${{env.APT_SET_CONF}}
- name: install dependencies
run: sudo apt update; sudo apt -y install build-essential libtool cmake autotools-dev automake pkg-config bsdmainutils curl git ca-certificates ccache ${{ matrix.toolchain.packages }}
- name: prepare w64-mingw32
if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' || matrix.toolchain.host == 'i686-w64-mingw32' }}
run: |
sudo update-alternatives --set ${{ matrix.toolchain.host }}-g++ $(which ${{ matrix.toolchain.host }}-g++-posix)
sudo update-alternatives --set ${{ matrix.toolchain.host }}-gcc $(which ${{ matrix.toolchain.host }}-gcc-posix)
- name: build
run: |
${{env.CCACHE_SETTINGS}}
make depends target=${{ matrix.toolchain.host }} -j2
- uses: actions/upload-artifact@v3
if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' || matrix.toolchain.host == 'x86_64-apple-darwin11' || matrix.toolchain.host == 'x86_64-unknown-linux-gnu' }}
with:
name: ${{ matrix.toolchain.name }}
path: |
/home/runner/work/monero/monero/build/${{ matrix.toolchain.host }}/release/bin/monero-wallet-cli*
/home/runner/work/monero/monero/build/${{ matrix.toolchain.host }}/release/bin/monerod*

49
.github/workflows/gitian.yml vendored Normal file
View File

@@ -0,0 +1,49 @@
name: ci/gh-actions/gitian
on:
push:
tags:
- '*'
jobs:
build-gitian:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
operating-system:
- name: "Linux"
option: "l"
- name: "Windows"
option: "w"
- name: "Android"
option: "a"
- name: "FreeBSD"
option: "f"
- name: "macOS"
option: "m"
name: ${{ matrix.operating-system.name }}
steps:
- name: prepare
run: |
sudo apt update
curl -O https://raw.githubusercontent.com/monero-project/monero/${{ github.ref_name }}/contrib/gitian/gitian-build.py
chmod +x gitian-build.py
- name: setup
run: |
./gitian-build.py --setup --docker github-actions ${{ github.ref_name }}
- name: build
run: |
./gitian-build.py --docker --detach-sign --no-commit --build -j 3 -o ${{ matrix.operating-system.option }} github-actions ${{ github.ref_name }}
- name: post build
run: |
cd out/${{ github.ref_name }}
shasum -a256 *
echo \`\`\` >> $GITHUB_STEP_SUMMARY
shasum -a256 * >> $GITHUB_STEP_SUMMARY
echo \`\`\` >> $GITHUB_STEP_SUMMARY
- uses: actions/upload-artifact@v3
with:
name: ${{ matrix.operating-system.name }}
path: |
out/${{ github.ref_name }}/*

20
.gitignore vendored
View File

@@ -23,6 +23,13 @@ cscope.po.out
external/miniupnpc/Makefile
miniupnpcstrings.h
version/
ClangBuildAnalyzerSession.txt
# gitian
contrib/gitian/builder/
contrib/gitian/docker/
contrib/gitian/sigs/
# Created by https://www.gitignore.io
### C++ ###
@@ -61,7 +68,7 @@ CMakeCache.txt
CMakeFiles
cmake_install.cmake
install_manifest.txt
*.cmake
cmake-build-debug/
### Linux ###
*~
@@ -69,6 +76,8 @@ install_manifest.txt
# KDE directory preferences
.directory
### VSCode ###
.vscode/
### Eclipse ###
*.pydevproject
@@ -96,6 +105,9 @@ local.properties
# PDT-specific
.buildpath
# Netbeans-specific
nbproject
# sbteclipse plugin
.target
@@ -103,4 +115,8 @@ local.properties
.texlipse
.idea/
/testnet
/testnet
__pycache__/
*.pyc
*.log

16
.gitmodules vendored Normal file
View File

@@ -0,0 +1,16 @@
[submodule "external/miniupnp"]
path = external/miniupnp
url = https://github.com/miniupnp/miniupnp
[submodule "external/rapidjson"]
path = external/rapidjson
url = https://github.com/Tencent/rapidjson
[submodule "external/trezor-common"]
path = external/trezor-common
url = https://github.com/trezor/trezor-common.git
[submodule "external/randomx"]
path = external/randomx
url = https://github.com/tevador/RandomX
[submodule "external/supercop"]
path = external/supercop
url = https://github.com/monero-project/supercop
branch = monero

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
# Portions Copyright (c) 2017, The Monero Project
# Portions Copyright (c) 2017-2022, The Monero Project
# This file is based off of the https://code.google.com/archive/p/ios-cmake/
# It has been altered for Monero iOS development
#

View File

@@ -1,40 +0,0 @@
# Contributing to Monero
A good way to help is to test, and report bugs. See
[How to Report Bugs Effectively (by Simon Tatham)](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html)
if you want to help that way. Testing is invaluable in making a piece
of software solid and usable.
## General Guidelines
* Comments are encouraged.
* If modifying code for which Doxygen headers exist, that header must be modified to match.
* Tests would be nice to have if you're adding functionality.
Patches are preferably to be sent via a github pull request. If that
can't be done, patches in "git format-patch" format can be sent
(eg, posted to fpaste.org with a long enough timeout and a link
posted to #monero-dev on irc.freenode.net).
Patches should be self contained. A good rule of thumb is to have
one patch per separate issue, feature, or logical change. Also, no
other changes, such as random whitespace changes or reindentation.
Following the code style of the particular chunk of code you're
modifying is encourgaged. Proper squashing should be done (eg, if
you're making a buggy patch, then a later patch to fix the bug,
both patches should be merged).
## Commits and Pull Requests
Commit messages should be sensible. That means a subject line that
describes the patch, with an optional longer body that gives details,
documentation, etc.
When submitting a pull request on github, make sure your branch is
rebased. No merge commits nor stray commits from other people in
your submitted branch, please. You may be asked to rebase if there
are conflicts (even trivially resolvable ones).
PGP signing commits is strongly encouraged. That should explain why
the previous paragraph is here.

View File

@@ -1,45 +1,66 @@
FROM ubuntu:16.04
# Multistage docker build, requires docker 17.05
ENV SRC_DIR /usr/local/src/monero
# builder stage
FROM ubuntu:20.04 as builder
RUN set -x \
&& buildDeps=' \
ca-certificates \
cmake \
g++ \
git \
libboost1.58-all-dev \
libssl-dev \
make \
pkg-config \
' \
&& apt-get -qq update \
&& apt-get -qq --no-install-recommends install $buildDeps
RUN set -ex && \
apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends --yes install \
automake \
autotools-dev \
bsdmainutils \
build-essential \
ca-certificates \
ccache \
cmake \
curl \
git \
libtool \
pkg-config \
gperf
RUN git clone https://github.com/monero-project/monero.git $SRC_DIR
WORKDIR $SRC_DIR
RUN make -j$(nproc) release-static
WORKDIR /src
COPY . .
RUN cp build/release/bin/* /usr/local/bin/ \
\
&& rm -r $SRC_DIR \
&& apt-get -qq --auto-remove purge $buildDeps
ARG NPROC
RUN set -ex && \
git submodule init && git submodule update && \
rm -rf build && \
if [ -z "$NPROC" ] ; \
then make -j$(nproc) depends target=x86_64-linux-gnu ; \
else make -j$NPROC depends target=x86_64-linux-gnu ; \
fi
# runtime stage
FROM ubuntu:20.04
RUN set -ex && \
apt-get update && \
apt-get --no-install-recommends --yes install ca-certificates && \
apt-get clean && \
rm -rf /var/lib/apt
COPY --from=builder /src/build/x86_64-linux-gnu/release/bin /usr/local/bin/
# Create monero user
RUN adduser --system --group --disabled-password monero && \
mkdir -p /wallet /home/monero/.bitmonero && \
chown -R monero:monero /home/monero/.bitmonero && \
chown -R monero:monero /wallet
# Contains the blockchain
VOLUME /root/.bitmonero
VOLUME /home/monero/.bitmonero
# Generate your wallet via accessing the container and run:
# cd /wallet
# monero-wallet-cli
VOLUME /wallet
ENV LOG_LEVEL 0
ENV P2P_BIND_IP 0.0.0.0
ENV P2P_BIND_PORT 18080
ENV RPC_BIND_IP 127.0.0.1
ENV RPC_BIND_PORT 18081
EXPOSE 18080
EXPOSE 18081
CMD monerod --log-level=$LOG_LEVEL --p2p-bind-ip=$P2P_BIND_IP --p2p-bind-port=$P2P_BIND_PORT --rpc-bind-ip=$RPC_BIND_IP --rpc-bind-port=$RPC_BIND_PORT
# switch to user monero
USER monero
ENTRYPOINT ["monerod"]
CMD ["--p2p-bind-ip=0.0.0.0", "--p2p-bind-port=18080", "--rpc-bind-ip=0.0.0.0", "--rpc-bind-port=18081", "--non-interactive", "--confirm-external-bind"]

View File

@@ -20,7 +20,7 @@
# This tag specifies the encoding used for all characters in the config file
# that follow. The default is UTF-8 which is also the encoding used for all text
# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
# built into libc) for the transcoding. See https://www.gnu.org/software/libiconv
# for the list of possible encodings.
# The default value is: UTF-8.
@@ -68,7 +68,7 @@ OUTPUT_DIRECTORY = doc
# performance problems for the file system.
# The default value is: NO.
CREATE_SUBDIRS = NO
CREATE_SUBDIRS = YES
# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
# characters to appear in the names of generated files. If set to NO, non-ASCII
@@ -285,7 +285,7 @@ EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
# documentation. See http://daringfireball.net/projects/markdown/ for details.
# documentation. See https://daringfireball.net/projects/markdown/ for details.
# The output of markdown processing is further processed by doxygen, so you can
# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
# case of backward compatibilities issues.
@@ -318,7 +318,7 @@ BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
# https://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
# will parse them like normal C++ but will assume all classes use public instead
# of private inheritance when no explicit protection keyword is present.
# The default value is: NO.
@@ -452,7 +452,7 @@ EXTRACT_LOCAL_METHODS = NO
# are hidden.
# The default value is: NO.
EXTRACT_ANON_NSPACES = YES
EXTRACT_ANON_NSPACES = NO
# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
# undocumented members inside documented classes or files. If set to NO these
@@ -677,7 +677,7 @@ LAYOUT_FILE =
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib
# extension is automatically appended if omitted. This requires the bibtex tool
# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
# For LaTeX the style of the bibliography can be controlled using
# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
# search path. Do not use file names with spaces, bibtex cannot handle them. See
@@ -754,12 +754,12 @@ WARN_LOGFILE =
# spaces.
# Note: If this tag is empty the current directory is searched.
INPUT = src
INPUT = .
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
# documentation (see: http://www.gnu.org/software/libiconv) for the list of
# documentation (see: https://www.gnu.org/software/libiconv) for the list of
# possible encodings.
# The default value is: UTF-8.
@@ -805,7 +805,7 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS =
EXCLUDE_PATTERNS = */build/* */contrib/depends/*
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
@@ -951,7 +951,7 @@ SOURCE_TOOLTIPS = YES
# If the USE_HTAGS tag is set to YES then the references to source code will
# point to the HTML generated by the htags(1) tool instead of doxygen built-in
# source browser. The htags tool is part of GNU's global source tagging system
# (see http://www.gnu.org/software/global/global.html). You will need version
# (see https://www.gnu.org/software/global/global.html). You will need version
# 4.8.6 or higher.
#
# To use it do the following:
@@ -1094,7 +1094,7 @@ HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the stylesheet and background images according to
# this color. Hue is specified as an angle on a colorwheel, see
# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
# purple, and 360 is red again.
# Minimum value: 0, maximum value: 359, default value: 220.
@@ -1152,12 +1152,12 @@ HTML_INDEX_NUM_ENTRIES = 100
# If the GENERATE_DOCSET tag is set to YES, additional index files will be
# generated that can be used as input for Apple's Xcode 3 integrated development
# environment (see: http://developer.apple.com/tools/xcode/), introduced with
# environment (see: https://developer.apple.com/tools/xcode/), introduced with
# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
# Makefile in the HTML output directory. Running make will produce the docset in
# that directory and running make install will install the docset in
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# for more information.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
@@ -1197,7 +1197,7 @@ DOCSET_PUBLISHER_NAME = Publisher
# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
# (see: https://www.microsoft.com/en-us/download/details.aspx?id=21138) on
# Windows.
#
# The HTML Help Workshop contains a compiler that can convert all HTML output
@@ -1273,7 +1273,7 @@ QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
# (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
# The default value is: org.doxygen.Project.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1281,7 +1281,7 @@ QHP_NAMESPACE = org.doxygen.Project
# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
# Help Project output. For more information please see Qt Help Project / Virtual
# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
# Folders (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-
# folders).
# The default value is: doc.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1290,7 +1290,7 @@ QHP_VIRTUAL_FOLDER = doc
# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
# filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1298,7 +1298,7 @@ QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-
# filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1306,7 +1306,7 @@ QHP_CUST_FILTER_ATTRS =
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_SECT_FILTER_ATTRS =
@@ -1411,7 +1411,7 @@ FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
# http://www.mathjax.org) which uses client side Javascript for the rendering
# https://www.mathjax.org) which uses client side Javascript for the rendering
# instead of using prerendered bitmaps. Use this if you do not have LaTeX
# installed or if you want to formulas look prettier in the HTML output. When
# enabled you may also need to install MathJax separately and configure the path
@@ -1423,7 +1423,7 @@ USE_MATHJAX = NO
# When MathJax is enabled you can set the default output format to be used for
# the MathJax output. See the MathJax site (see:
# http://docs.mathjax.org/en/latest/output.html) for more details.
# https://docs.mathjax.org/en/latest/output.html) for more details.
# Possible values are: HTML-CSS (which is slower, but has the best
# compatibility), NativeMML (i.e. MathML) and SVG.
# The default value is: HTML-CSS.
@@ -1438,11 +1438,11 @@ MATHJAX_FORMAT = HTML-CSS
# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
# Content Delivery Network so you can quickly see the result without installing
# MathJax. However, it is strongly recommended to install a local copy of
# MathJax from http://www.mathjax.org before deployment.
# The default value is: http://cdn.mathjax.org/mathjax/latest.
# MathJax from https://www.mathjax.org before deployment.
# The default value is: https://cdn.mathjax.org/mathjax/latest.
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
MATHJAX_RELPATH = https://cdn.mathjax.org/mathjax/latest
# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
# extension names that should be enabled during MathJax rendering. For example
@@ -1453,7 +1453,7 @@ MATHJAX_EXTENSIONS =
# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
# of code that will be used on startup of the MathJax code. See the MathJax site
# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
# (see: https://docs.mathjax.org/en/latest/output.html) for more details. For an
# example see the documentation.
# This tag requires that the tag USE_MATHJAX is set to YES.
@@ -1500,7 +1500,7 @@ SERVER_BASED_SEARCH = NO
#
# Doxygen ships with an example indexer ( doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/).
# Xapian (see: https://xapian.org/).
#
# See the section "External Indexing and Searching" for details.
# The default value is: NO.
@@ -1513,7 +1513,7 @@ EXTERNAL_SEARCH = NO
#
# Doxygen ships with an example indexer ( doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: http://xapian.org/). See the section "External Indexing and
# Xapian (see: https://xapian.org/). See the section "External Indexing and
# Searching" for details.
# This tag requires that the tag SEARCHENGINE is set to YES.
@@ -1552,7 +1552,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES doxygen will generate LaTeX output.
# The default value is: YES.
GENERATE_LATEX = YES
GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
@@ -1684,7 +1684,7 @@ LATEX_SOURCE_CODE = NO
# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. See
# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
# The default value is: plain.
# This tag requires that the tag GENERATE_LATEX is set to YES.
@@ -2051,7 +2051,7 @@ HIDE_UNDOC_RELATIONS = YES
# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
# available from the path. This tool is part of Graphviz (see:
# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
# https://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
# Bell Labs. The other options in this section have no effect if this option is
# set to NO
# The default value is: NO.

12
LICENSE
View File

@@ -1,4 +1,4 @@
Copyright (c) 2014-2017, The Monero Project
Copyright (c) 2014-2022, The Monero Project
All rights reserved.
@@ -29,3 +29,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Parts of the project are originally copyright (c) 2012-2013 The Cryptonote
developers
Parts of the project are originally copyright (c) 2014 The Boolberry
developers, distributed under the MIT licence:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

146
Makefile
View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
@@ -26,101 +26,153 @@
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ANDROID_STANDALONE_TOOLCHAIN_PATH ?= /usr/local/toolchain
dotgit=$(shell ls -d .git/config)
ifneq ($(dotgit), .git/config)
USE_SINGLE_BUILDDIR=1
endif
subbuilddir:=$(shell echo `uname | sed -e 's|[:/\\ \(\)]|_|g'`/`git branch | grep '\* ' | cut -f2- -d' '| sed -e 's|[:/\\ \(\)]|_|g'`)
ifeq ($(USE_SINGLE_BUILDDIR),)
builddir := build/"$(subbuilddir)"
topdir := ../../../..
deldirs := $(builddir)
else
builddir := build
topdir := ../..
deldirs := $(builddir)/debug $(builddir)/release $(builddir)/fuzz
endif
all: release-all
depends:
cd contrib/depends && $(MAKE) HOST=$(target) && cd ../.. && mkdir -p build/$(target)/release
cd build/$(target)/release && cmake -DCMAKE_TOOLCHAIN_FILE=$(CURDIR)/contrib/depends/$(target)/share/toolchain.cmake ../../.. && $(MAKE)
cmake-debug:
mkdir -p build/debug
cd build/debug && cmake -D CMAKE_BUILD_TYPE=Debug ../..
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D CMAKE_BUILD_TYPE=Debug $(topdir)
debug: cmake-debug
cd build/debug && $(MAKE)
cd $(builddir)/debug && $(MAKE)
# Temporarily disable some tests:
# * libwallet_api_tests fail (Issue #895)
debug-test:
mkdir -p build/debug
cd build/debug && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Debug ../.. && $(MAKE) && $(MAKE) test
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Debug $(topdir) && $(MAKE) && $(MAKE) ARGS="-E libwallet_api_tests" test
debug-test-asan:
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D SANITIZE=ON -D CMAKE_BUILD_TYPE=Debug $(topdir) && $(MAKE) && $(MAKE) ARGS="-E libwallet_api_tests" test
debug-test-trezor:
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D TREZOR_DEBUG=ON -D CMAKE_BUILD_TYPE=Debug $(topdir) && $(MAKE) && $(MAKE) ARGS="-E libwallet_api_tests" test
debug-all:
mkdir -p build/debug
cd build/debug && cmake -D BUILD_TESTS=ON -D BUILD_SHARED_LIBS=OFF -D CMAKE_BUILD_TYPE=Debug ../.. && $(MAKE)
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D BUILD_SHARED_LIBS=OFF -D CMAKE_BUILD_TYPE=Debug $(topdir) && $(MAKE)
debug-static-all:
mkdir -p build/debug
cd build/debug && cmake -D BUILD_TESTS=ON -D STATIC=ON -D CMAKE_BUILD_TYPE=Debug ../.. && $(MAKE)
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D STATIC=ON -D CMAKE_BUILD_TYPE=Debug $(topdir) && $(MAKE)
debug-static-win64:
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Debug -D BUILD_TAG="win-x64" -D CMAKE_TOOLCHAIN_FILE=$(topdir)/cmake/64-bit-toolchain.cmake -D MSYS2_FOLDER=$(shell cd ${MINGW_PREFIX}/.. && pwd -W) $(topdir) && $(MAKE)
debug-static-win32:
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="i686" -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Debug -D BUILD_TAG="win-x32" -D CMAKE_TOOLCHAIN_FILE=$(topdir)/cmake/32-bit-toolchain.cmake -D MSYS2_FOLDER=$(shell cd ${MINGW_PREFIX}/.. && pwd -W) $(topdir) && $(MAKE)
cmake-release:
mkdir -p build/release
cd build/release && cmake -D CMAKE_BUILD_TYPE=Release ../..
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D CMAKE_BUILD_TYPE=Release $(topdir)
release: cmake-release
cd build/release && $(MAKE)
cd $(builddir)/release && $(MAKE)
release-test:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release ../.. && $(MAKE) && $(MAKE) test
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Release $(topdir) && $(MAKE) && $(MAKE) test
release-all:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Release $(topdir) && $(MAKE)
release-static:
mkdir -p build/release
cd build/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=release ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release $(topdir) && $(MAKE)
coverage:
mkdir -p build/debug
cd build/debug && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Debug -D COVERAGE=ON ../.. && $(MAKE) && $(MAKE) test
mkdir -p $(builddir)/debug
cd $(builddir)/debug && cmake -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=Debug -D COVERAGE=ON $(topdir) && $(MAKE) && $(MAKE) test
# Targets for specific prebuilt builds which will be advertised for updates by their build tag
release-static-linux-armv6:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv6zk" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="linux-armv6" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv6zk" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="linux-armv6" $(topdir) && $(MAKE)
release-static-linux-armv7:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv7-a" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="linux-armv7" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv7-a" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="linux-armv7" $(topdir) && $(MAKE)
release-static-android:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv7-a" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=release -D ANDROID=true -D INSTALL_VENDORED_LIBUNBOUND=ON -D BUILD_TAG="android" ../.. && $(MAKE)
release-static-android-armv7:
mkdir -p $(builddir)/release/translations
cd $(builddir)/release/translations && cmake ../../../translations && $(MAKE)
cd $(builddir)/release && CC=arm-linux-androideabi-clang CXX=arm-linux-androideabi-clang++ cmake -D BUILD_TESTS=OFF -D ARCH="armv7-a" -D STATIC=ON -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D ANDROID=true -D BUILD_TAG="android-armv7" -D CMAKE_SYSTEM_NAME="Android" -D CMAKE_ANDROID_STANDALONE_TOOLCHAIN="${ANDROID_STANDALONE_TOOLCHAIN_PATH}" -D CMAKE_ANDROID_ARM_MODE=ON -D CMAKE_ANDROID_ARCH_ABI="armeabi-v7a" ../.. && $(MAKE)
release-static-android-armv8:
mkdir -p $(builddir)/release/translations
cd $(builddir)/release/translations && cmake ../../../translations && $(MAKE)
cd $(builddir)/release && CC=aarch64-linux-android-clang CXX=aarch64-linux-android-clang++ cmake -D BUILD_TESTS=OFF -D ARCH="armv8-a" -D STATIC=ON -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D ANDROID=true -D BUILD_TAG="android-armv8" -D CMAKE_SYSTEM_NAME="Android" -D CMAKE_ANDROID_STANDALONE_TOOLCHAIN="${ANDROID_STANDALONE_TOOLCHAIN_PATH}" -D CMAKE_ANDROID_ARCH_ABI="arm64-v8a" ../.. && $(MAKE)
release-static-linux-armv8:
mkdir -p build/release
cd build/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv8-a" -D STATIC=ON -D BUILD_64=ON -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="linux-armv8" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D BUILD_TESTS=OFF -D ARCH="armv8-a" -D STATIC=ON -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="linux-armv8" $(topdir) && $(MAKE)
release-static-linux-x86_64:
mkdir -p build/release
cd build/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="linux-x64" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="linux-x64" $(topdir) && $(MAKE)
release-static-freebsd-x86_64:
mkdir -p build/release
cd build/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="freebsd-x64" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="freebsd-x64" $(topdir) && $(MAKE)
release-static-mac-x86_64:
mkdir -p build/release
cd build/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="mac-x64" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="mac-x64" $(topdir) && $(MAKE)
release-static-linux-i686:
mkdir -p build/release
cd build/release && cmake -D STATIC=ON -D ARCH="i686" -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=release -D BUILD_TAG="linux-x86" ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -D STATIC=ON -D ARCH="i686" -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="linux-x86" $(topdir) && $(MAKE)
release-static-win64:
mkdir -p build/release
cd build/release && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="win-x64" -D CMAKE_TOOLCHAIN_FILE=../../cmake/64-bit-toolchain.cmake -D MSYS2_FOLDER=c:/msys64 ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="win-x64" -D CMAKE_TOOLCHAIN_FILE=$(topdir)/cmake/64-bit-toolchain.cmake -D MSYS2_FOLDER=$(shell cd ${MINGW_PREFIX}/.. && pwd -W) $(topdir) && $(MAKE)
release-static-win32:
mkdir -p build/release
cd build/release && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="i686" -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="win-x32" -D CMAKE_TOOLCHAIN_FILE=../../cmake/32-bit-toolchain.cmake -D MSYS2_FOLDER=c:/msys32 ../.. && $(MAKE)
mkdir -p $(builddir)/release
cd $(builddir)/release && cmake -G "MSYS Makefiles" -D STATIC=ON -D ARCH="i686" -D BUILD_64=OFF -D CMAKE_BUILD_TYPE=Release -D BUILD_TAG="win-x32" -D CMAKE_TOOLCHAIN_FILE=$(topdir)/cmake/32-bit-toolchain.cmake -D MSYS2_FOLDER=$(shell cd ${MINGW_PREFIX}/.. && pwd -W) $(topdir) && $(MAKE)
fuzz:
mkdir -p build/fuzz
cd build/fuzz && cmake -D BUILD_TESTS=ON -D USE_LTO=OFF -D CMAKE_C_COMPILER=afl-gcc -D CMAKE_CXX_COMPILER=afl-g++ -D ARCH="x86-64" -D CMAKE_BUILD_TYPE=fuzz -D BUILD_TAG="linux-x64" ../.. && $(MAKE)
mkdir -p $(builddir)/fuzz
cd $(builddir)/fuzz && cmake -D STATIC=ON -D SANITIZE=ON -D BUILD_TESTS=ON -D USE_LTO=OFF -D CMAKE_C_COMPILER=afl-gcc -D CMAKE_CXX_COMPILER=afl-g++ -D ARCH="x86-64" -D CMAKE_BUILD_TYPE=fuzz -D BUILD_TAG="linux-x64" $(topdir) && $(MAKE)
clean:
@echo "WARNING: Back-up your wallet if it exists within ./build!" ; \
read -r -p "This will destroy the build directory, continue (y/N)?: " CONTINUE; \
@echo "WARNING: Back-up your wallet if it exists within ./"$(deldirs)"!" ; \
read -r -p "This will destroy the build directory, continue (y/N)?: " CONTINUE; \
[ $$CONTINUE = "y" ] || [ $$CONTINUE = "Y" ] || (echo "Exiting."; exit 1;)
rm -rf build
rm -rf $(deldirs)
clean-all:
@echo "WARNING: Back-up your wallet if it exists within ./build!" ; \
read -r -p "This will destroy all build directories, continue (y/N)?: " CONTINUE; \
[ $$CONTINUE = "y" ] || [ $$CONTINUE = "Y" ] || (echo "Exiting."; exit 1;)
rm -rf ./build
tags:
ctags -R --sort=1 --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ src contrib tests/gtest

811
README.md

File diff suppressed because it is too large Load Diff

View File

@@ -1,143 +0,0 @@
# Monero Vulnerability Response Process
## Preamble
Researchers/Hackers: while you research/hack, we ask that you please refrain from committing the following:
- Denial of Service / Active exploiting against the network
- Social Engineering of Monero staff or contractors
- Any physical or electronic attempts against Monero community property and/or data centers
## I. Point of Contacts for Security Issues
```
ric@getmonero.org
BDA6 BD70 42B7 21C4 67A9 759D 7455 C5E3 C0CD CEB9
luigi1111@getmonero.org
8777 AB8F 778E E894 87A2 F8E7 F4AC A018 3641 E010
moneromooo.monero@gmail.com
48B0 8161 FBDA DFE3 93AD FC3E 686F 0745 4D6C EFC3
```
## II. Security Response Team
- fluffypony
- luigi1111
- moneromooo
## III. Incident Response
1. Researcher submits report via one or both of two methods:
- a. Email
- b. [HackerOne](https://hackerone.com/monero)
2. Response Team designates a Response Manager who is in charge of the particular report based on availability and/or knowledge-set
3. In no more than 3 working days, Response Team should gratefully respond to researcher using only encrypted, secure channels
4. Response Manager makes inquiries to satisfy any needed information to confirm if submission is indeed a vulnerability
- a. If submission proves to be vulnerable, proceed to next step
- b. If not vulnerable:
- i. Response Manager responds with reasons why submission is not a vulnerability
- ii. Response Manager moves discussion to a new or existing ticket on GitHub if necessary
5. If over email, Response Manager opens a HackerOne issue for new submission
6. Establish severity of vulnerability:
- a. HIGH: impacts network as a whole, has potential to break entire network, results in the loss of monero, or is on a scale of great catastrophe
- b. MEDIUM: impacts individual nodes, wallets, or must be carefully exploited
- c. LOW: is not easily exploitable
7. Respond according to the severity of the vulnerability:
- a. HIGH severities must be notified on website and reddit /r/Monero within 3 working days of classification
- i. The notification should list appropriate steps for users to take, if any
- ii. The notification must not include any details that could suggest an exploitation path
- iii. The latter takes precedence over the former
- b. MEDIUM and HIGH severities will require a Point Release
- c. LOW severities will be addressed in the next Regular Release
8. Response Team applies appropriate patch(es)
- a. Response Manager designates a PRIVATE git "hotfix branch" to work in
- b. Patches are reviewed with the researcher
- c. Any messages associated with PUBLIC commits during the time of review should not make reference to the security nature of the PRIVATE branch or its commits
- d. Vulnerability announcement is drafted
- i. Include the severity of the vulnerability
- ii. Include all vulnerable systems/apps/code
- iii. Include solutions (if any) if patch cannot be applied
- e. Release date is discussed
9. At release date, Response Team coordinates with developers to finalize update:
- a. Response Manager propagates the "hotfix branch" to trunk
- b. Response Manager includes vulnerability announcement draft in release notes
- c. Proceed with the Point or Regular Release
## IV. Post-release Disclosure Process
1. Response Team has 90 days to fulfill all points within section III
2. If the Incident Response process in section III is successfully completed:
- a. Response Manager contacts researcher and asks if researcher wishes for credit
- b. Finalize vulnerability announcement draft and include the following:
- i. Project name and URL
- ii. Versions known to be affected
- iii. Versions known to be not affected (for example, the vulnerable code was introduced in a recent version, and older versions are therefore unaffected)
- iv. Versions not checked
- v. Type of vulnerability and its impact
- vi. If already obtained or applicable, a CVE-ID
- vii. The planned, coordinated release date
- viii. Mitigating factors (for example, the vulnerability is only exposed in uncommon, non-default configurations)
- ix. Workarounds (configuration changes users can make to reduce their exposure to the vulnerability)
- x. If applicable, credits to the original reporter
- c. Release finalized vulnerability announcement on website and reddit /r/Monero
- d. For HIGH severities, release finalized vulnerability announcement on well-known mailing lists:
- i. oss-security@lists.openwall.com
- ii. bugtraq@securityfocus.com
- e. If applicable, developers request a CVE-ID
- i. The commit that applied the fix is made reference too in a future commit and includes a CVE-ID
3. If the Incident Response process in section III is *not* successfully completed:
- a. Response Team and developers organize an IRC meeting to discuss why/what points in section III were not resolved and how the team can resolve them in the future
- b. Any developer meetings immediately following the incident should include points made in section V
- c. If disputes arise about whether or when to disclose information about a vulnerability, the Response Team will publicly discuss the issue via IRC and attempt to reach consensus
- d. If consensus on a timely disclosure is not met (no later than 90 days), the researcher (after 90 days) has every right to expose the vulnerability to the public
## V. Incident Analysis
1. Isolate codebase
- a. Response Team and developers should coordinate to work on the following:
- i. Problematic implementation of classes/libraries/functions, etc.
- ii. Focus on apps/distro packaging, etc.
- iii. Operator/config error, etc.
2. Auditing
- a. Response Team and developers should coordinate to work on the following:
- i. Auditing of problem area(s) as discussed in point 1
- ii. Generate internal reports and store for future reference
- iii. If results are not sensitive, share with the public via IRC or GitHub
3. Response Team has 45 days following completion of section III to ensure completion of section V
## VI. Resolutions
Any further questions or resolutions regarding the incident(s) between the researcher and response + development team after public disclosure can be addressed via the following:
- [GitHub](https://github.com/monero-project/monero/issues/)
- [HackerOne](https://hackerone.com/monero)
- [Reddit /r/Monero](https://reddit.com/r/Monero/)
- IRC
- Email
## VII. Continuous Improvement
1. Response Team and developers should hold annual meetings to review the previous year's incidents
2. Response Team or designated person(s) should give a brief presentation, including:
- a. Areas of Monero affected by the incidents
- b. Any network downtime or monetary cost (if any) of the incidents
- c. Ways in which the incidents could have been avoided (if any)
- d. How effective this process was in dealing with the incidents
3. After the presentation, Response Team and developers should discuss:
- a. Potential changes to development processes to reduce future incidents
- b. Potential changes to this process to improve future responses

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
@@ -26,7 +26,9 @@
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
set (CMAKE_SYSTEM_NAME Windows)
if (NOT CMAKE_HOST_WIN32)
set (CMAKE_SYSTEM_NAME Windows)
endif()
set (GCC_PREFIX i686-w64-mingw32)
set (CMAKE_C_COMPILER ${GCC_PREFIX}-gcc)

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
@@ -26,7 +26,9 @@
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
set (CMAKE_SYSTEM_NAME Windows)
if (NOT CMAKE_HOST_WIN32)
set (CMAKE_SYSTEM_NAME Windows)
endif()
set (GCC_PREFIX x86_64-w64-mingw32)
set (CMAKE_C_COMPILER ${GCC_PREFIX}-gcc)

14
cmake/CheckLinkerFlag.c Normal file
View File

@@ -0,0 +1,14 @@
#ifdef __CLASSIC_C__
int main()
{
int ac;
char* av[];
#else
int main(int ac, char* av[])
{
#endif
if (ac > 1000) {
return *av[0];
}
return 0;
}

View File

@@ -0,0 +1,48 @@
include(CheckCCompilerFlag)
macro(CHECK_LINKER_FLAG flag VARIABLE)
if(NOT DEFINED "${VARIABLE}")
if(NOT CMAKE_REQUIRED_QUIET)
message(STATUS "Looking for ${flag} linker flag")
endif()
set(_cle_source ${CMAKE_SOURCE_DIR}/cmake/CheckLinkerFlag.c)
set(saved_CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
set(CMAKE_C_FLAGS "${flag}")
try_compile(${VARIABLE}
${CMAKE_BINARY_DIR}
${_cle_source}
COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} ${flag}
CMAKE_FLAGS
"-DCMAKE_EXE_LINKER_FLAGS=${flag}"
OUTPUT_VARIABLE OUTPUT)
unset(_cle_source)
set(CMAKE_C_FLAGS ${saved_CMAKE_C_FLAGS})
unset(saved_CMAKE_C_FLAGS)
if ("${OUTPUT}" MATCHES "warning.*ignored")
set(${VARIABLE} 0)
endif()
if(${VARIABLE})
if(NOT CMAKE_REQUIRED_QUIET)
message(STATUS "Looking for ${flag} linker flag - found")
endif()
set(${VARIABLE} 1 CACHE INTERNAL "Have linker flag ${flag}")
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Determining if the ${flag} linker flag is supported "
"passed with the following output:\n"
"${OUTPUT}\n\n")
else()
if(NOT CMAKE_REQUIRED_QUIET)
message(STATUS "Looking for ${flag} linker flag - not found")
endif()
set(${VARIABLE} "" CACHE INTERNAL "Have linker flag ${flag}")
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Determining if the ${flag} linker flag is supported "
"failed with the following output:\n"
"${OUTPUT}\n\n")
endif()
endif()
endmacro()

181
cmake/CheckTrezor.cmake Normal file
View File

@@ -0,0 +1,181 @@
OPTION(USE_DEVICE_TREZOR "Trezor support compilation" ON)
OPTION(USE_DEVICE_TREZOR_LIBUSB "Trezor LibUSB compilation" ON)
OPTION(USE_DEVICE_TREZOR_UDP_RELEASE "Trezor UdpTransport in release mode" OFF)
OPTION(USE_DEVICE_TREZOR_DEBUG "Trezor Debugging enabled" OFF)
OPTION(TREZOR_DEBUG "Main trezor debugging switch" OFF)
# Helper function to fix cmake < 3.6.0 FindProtobuf variables
function(_trezor_protobuf_fix_vars)
if(${CMAKE_VERSION} VERSION_LESS "3.6.0")
foreach(UPPER
PROTOBUF_SRC_ROOT_FOLDER
PROTOBUF_IMPORT_DIRS
PROTOBUF_DEBUG
PROTOBUF_LIBRARY
PROTOBUF_PROTOC_LIBRARY
PROTOBUF_INCLUDE_DIR
PROTOBUF_PROTOC_EXECUTABLE
PROTOBUF_LIBRARY_DEBUG
PROTOBUF_PROTOC_LIBRARY_DEBUG
PROTOBUF_LITE_LIBRARY
PROTOBUF_LITE_LIBRARY_DEBUG
)
if (DEFINED ${UPPER})
string(REPLACE "PROTOBUF_" "Protobuf_" Camel ${UPPER})
if (NOT DEFINED ${Camel})
set(${Camel} ${${UPPER}} PARENT_SCOPE)
endif()
endif()
endforeach()
endif()
endfunction()
# Use Trezor master switch
if (USE_DEVICE_TREZOR)
# Protobuf is required to build protobuf messages for Trezor
include(FindProtobuf OPTIONAL)
find_package(Protobuf)
_trezor_protobuf_fix_vars()
# Protobuf handling the cache variables set in docker.
if(NOT Protobuf_FOUND AND NOT Protobuf_LIBRARY AND NOT Protobuf_PROTOC_EXECUTABLE AND NOT Protobuf_INCLUDE_DIR)
message(STATUS "Could not find Protobuf")
elseif(NOT Protobuf_LIBRARY OR NOT EXISTS "${Protobuf_LIBRARY}")
message(STATUS "Protobuf library not found: ${Protobuf_LIBRARY}")
unset(Protobuf_FOUND)
elseif(NOT Protobuf_PROTOC_EXECUTABLE OR NOT EXISTS "${Protobuf_PROTOC_EXECUTABLE}")
message(STATUS "Protobuf executable not found: ${Protobuf_PROTOC_EXECUTABLE}")
unset(Protobuf_FOUND)
elseif(NOT Protobuf_INCLUDE_DIR OR NOT EXISTS "${Protobuf_INCLUDE_DIR}")
message(STATUS "Protobuf include dir not found: ${Protobuf_INCLUDE_DIR}")
unset(Protobuf_FOUND)
else()
message(STATUS "Protobuf lib: ${Protobuf_LIBRARY}, inc: ${Protobuf_INCLUDE_DIR}, protoc: ${Protobuf_PROTOC_EXECUTABLE}")
set(Protobuf_INCLUDE_DIRS ${Protobuf_INCLUDE_DIR})
set(Protobuf_FOUND 1) # override found if all rquired info was provided by variables
endif()
if(TREZOR_DEBUG)
set(USE_DEVICE_TREZOR_DEBUG 1)
endif()
# Compile debugging support (for tests)
if (USE_DEVICE_TREZOR_DEBUG)
add_definitions(-DWITH_TREZOR_DEBUGGING=1)
endif()
else()
message(STATUS "Trezor support disabled by USE_DEVICE_TREZOR")
endif()
if(Protobuf_FOUND AND USE_DEVICE_TREZOR)
if (NOT "$ENV{TREZOR_PYTHON}" STREQUAL "")
set(TREZOR_PYTHON "$ENV{TREZOR_PYTHON}" CACHE INTERNAL "Copied from environment variable TREZOR_PYTHON")
else()
find_package(Python QUIET COMPONENTS Interpreter) # cmake 3.12+
if(Python_Interpreter_FOUND)
set(TREZOR_PYTHON "${Python_EXECUTABLE}")
endif()
endif()
if(NOT TREZOR_PYTHON)
find_package(PythonInterp)
if(PYTHONINTERP_FOUND AND PYTHON_EXECUTABLE)
set(TREZOR_PYTHON "${PYTHON_EXECUTABLE}")
endif()
endif()
if(NOT TREZOR_PYTHON)
message(STATUS "Trezor: Python not found")
endif()
endif()
# Protobuf compilation test
if(Protobuf_FOUND AND USE_DEVICE_TREZOR AND TREZOR_PYTHON)
execute_process(COMMAND ${Protobuf_PROTOC_EXECUTABLE} -I "${CMAKE_CURRENT_LIST_DIR}" -I "${Protobuf_INCLUDE_DIR}" "${CMAKE_CURRENT_LIST_DIR}/test-protobuf.proto" --cpp_out ${CMAKE_BINARY_DIR} RESULT_VARIABLE RET OUTPUT_VARIABLE OUT ERROR_VARIABLE ERR)
if(RET)
message(STATUS "Protobuf test generation failed: ${OUT} ${ERR}")
endif()
try_compile(Protobuf_COMPILE_TEST_PASSED
"${CMAKE_BINARY_DIR}"
SOURCES
"${CMAKE_BINARY_DIR}/test-protobuf.pb.cc"
"${CMAKE_CURRENT_LIST_DIR}/test-protobuf.cpp"
CMAKE_FLAGS
"-DINCLUDE_DIRECTORIES=${Protobuf_INCLUDE_DIR};${CMAKE_BINARY_DIR}"
"-DCMAKE_CXX_STANDARD=11"
LINK_LIBRARIES ${Protobuf_LIBRARY}
OUTPUT_VARIABLE OUTPUT
)
if(NOT Protobuf_COMPILE_TEST_PASSED)
message(STATUS "Protobuf Compilation test failed: ${OUTPUT}.")
endif()
endif()
# Try to build protobuf messages
if(Protobuf_FOUND AND USE_DEVICE_TREZOR AND TREZOR_PYTHON AND Protobuf_COMPILE_TEST_PASSED)
set(ENV{PROTOBUF_INCLUDE_DIRS} "${Protobuf_INCLUDE_DIR}")
set(ENV{PROTOBUF_PROTOC_EXECUTABLE} "${Protobuf_PROTOC_EXECUTABLE}")
set(TREZOR_PROTOBUF_PARAMS "")
if (USE_DEVICE_TREZOR_DEBUG)
set(TREZOR_PROTOBUF_PARAMS "--debug")
endif()
execute_process(COMMAND ${TREZOR_PYTHON} tools/build_protob.py ${TREZOR_PROTOBUF_PARAMS} WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/../src/device_trezor/trezor RESULT_VARIABLE RET OUTPUT_VARIABLE OUT ERROR_VARIABLE ERR)
if(RET)
message(WARNING "Trezor protobuf messages could not be regenerated (err=${RET}, python ${PYTHON})."
"OUT: ${OUT}, ERR: ${ERR}."
"Please read src/device_trezor/trezor/tools/README.md")
else()
message(STATUS "Trezor protobuf messages regenerated out: \"${OUT}.\"")
set(DEVICE_TREZOR_READY 1)
add_definitions(-DDEVICE_TREZOR_READY=1)
add_definitions(-DPROTOBUF_INLINE_NOT_IN_HEADERS=0)
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
add_definitions(-DTREZOR_DEBUG=1)
endif()
if(USE_DEVICE_TREZOR_UDP_RELEASE)
add_definitions(-DUSE_DEVICE_TREZOR_UDP_RELEASE=1)
endif()
if (Protobuf_INCLUDE_DIR)
include_directories(${Protobuf_INCLUDE_DIR})
endif()
# LibUSB support, check for particular version
# Include support only if compilation test passes
if (USE_DEVICE_TREZOR_LIBUSB)
find_package(LibUSB)
endif()
if (LibUSB_COMPILE_TEST_PASSED)
add_definitions(-DHAVE_TREZOR_LIBUSB=1)
if(LibUSB_INCLUDE_DIRS)
include_directories(${LibUSB_INCLUDE_DIRS})
endif()
endif()
set(TREZOR_LIBUSB_LIBRARIES "")
if(LibUSB_COMPILE_TEST_PASSED)
list(APPEND TREZOR_LIBUSB_LIBRARIES ${LibUSB_LIBRARIES} ${LIBUSB_DEP_LINKER})
message(STATUS "Trezor compatible LibUSB found at: ${LibUSB_INCLUDE_DIRS}")
endif()
if (BUILD_GUI_DEPS)
set(TREZOR_DEP_LIBS "")
set(TREZOR_DEP_LINKER "")
if (Protobuf_LIBRARY)
list(APPEND TREZOR_DEP_LIBS ${Protobuf_LIBRARY})
string(APPEND TREZOR_DEP_LINKER " -lprotobuf")
endif()
if (TREZOR_LIBUSB_LIBRARIES)
list(APPEND TREZOR_DEP_LIBS ${TREZOR_LIBUSB_LIBRARIES})
string(APPEND TREZOR_DEP_LINKER " -lusb-1.0 ${LIBUSB_DEP_LINKER}")
endif()
endif()
endif()
endif()

View File

@@ -18,7 +18,7 @@
# that follow. The default is UTF-8 which is also the encoding used for all
# text before the first occurrence of this tag. Doxygen uses libiconv (or the
# iconv built into libc) for the transcoding. See
# http://www.gnu.org/software/libiconv for the list of possible encodings.
# https://www.gnu.org/software/libiconv for the list of possible encodings.
DOXYFILE_ENCODING = UTF-8
@@ -242,7 +242,7 @@ EXTENSION_MAPPING =
# If MARKDOWN_SUPPORT is enabled (the default) then doxygen pre-processes all
# comments according to the Markdown format, which allows for more readable
# documentation. See http://daringfireball.net/projects/markdown/ for details.
# documentation. See https://daringfireball.net/projects/markdown/ for details.
# The output of markdown processing is further processed by doxygen, so you
# can mix doxygen, HTML, and XML commands with Markdown formatting.
# Disable only in case of backward compatibilities issues.
@@ -589,7 +589,7 @@ LAYOUT_FILE =
# containing the references data. This must be a list of .bib files. The
# .bib extension is automatically appended if omitted. Using this command
# requires the bibtex tool to be installed. See also
# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
# https://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
# of the bibliography can be controlled using LATEX_BIB_STYLE. To use this
# feature you need bibtex and perl available in the search path.
@@ -665,7 +665,7 @@ INPUT = ../README.md \
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
# also the default input encoding. Doxygen uses libiconv (or the iconv built
# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
# into libc) for the transcoding. See https://www.gnu.org/software/libiconv for
# the list of possible encodings.
INPUT_ENCODING = UTF-8
@@ -833,7 +833,7 @@ REFERENCES_LINK_SOURCE = YES
# If the USE_HTAGS tag is set to YES then the references to source code
# will point to the HTML generated by the htags(1) tool instead of doxygen
# built-in source browser. The htags tool is part of GNU's global source
# tagging system (see http://www.gnu.org/software/global/global.html). You
# tagging system (see https://www.gnu.org/software/global/global.html). You
# will need version 4.8.6 or higher.
USE_HTAGS = NO
@@ -928,7 +928,7 @@ HTML_EXTRA_FILES =
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
# Doxygen will adjust the colors in the style sheet and background images
# according to this color. Hue is specified as an angle on a colorwheel,
# see http://en.wikipedia.org/wiki/Hue for more information.
# see https://en.wikipedia.org/wiki/Hue for more information.
# For instance the value 0 represents red, 60 is yellow, 120 is green,
# 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
# The allowed range is 0 to 359.
@@ -981,7 +981,7 @@ HTML_INDEX_NUM_ENTRIES = 100
# directory and running "make install" will install the docset in
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
# it at startup.
# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# for more information.
GENERATE_DOCSET = NO
@@ -1179,7 +1179,7 @@ FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
# (see http://www.mathjax.org) which uses client side Javascript for the
# (see https://www.mathjax.org) which uses client side Javascript for the
# rendering instead of using prerendered bitmaps. Use this if you do not
# have LaTeX installed or if you want to formulas look prettier in the HTML
# output. When enabled you may also need to install MathJax separately and
@@ -1194,9 +1194,9 @@ USE_MATHJAX = NO
# MATHJAX_RELPATH should be ../mathjax. The default value points to
# the MathJax Content Delivery Network so you can quickly see the result without
# installing MathJax. However, it is strongly recommended to install a local
# copy of MathJax from http://www.mathjax.org before deployment.
# copy of MathJax from https://www.mathjax.org before deployment.
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
MATHJAX_RELPATH = https://cdn.mathjax.org/mathjax/latest
# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
# names that should be enabled during MathJax rendering.
@@ -1318,7 +1318,7 @@ LATEX_SOURCE_CODE = NO
# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See
# http://en.wikipedia.org/wiki/BibTeX for more info.
# https://en.wikipedia.org/wiki/BibTeX for more info.
LATEX_BIB_STYLE = plain

98
cmake/FindBacktrace.cmake Normal file
View File

@@ -0,0 +1,98 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindBacktrace
# -------------
#
# Find provider for backtrace(3).
#
# Checks if OS supports backtrace(3) via either libc or custom library.
# This module defines the following variables:
#
# ``Backtrace_HEADER``
# The header file needed for backtrace(3). Cached.
# Could be forcibly set by user.
# ``Backtrace_INCLUDE_DIRS``
# The include directories needed to use backtrace(3) header.
# ``Backtrace_LIBRARIES``
# The libraries (linker flags) needed to use backtrace(3), if any.
# ``Backtrace_FOUND``
# Is set if and only if backtrace(3) support detected.
#
# The following cache variables are also available to set or use:
#
# ``Backtrace_LIBRARY``
# The external library providing backtrace, if any.
# ``Backtrace_INCLUDE_DIR``
# The directory holding the backtrace(3) header.
#
# Typical usage is to generate of header file using configure_file() with the
# contents like the following::
#
# #cmakedefine01 Backtrace_FOUND
# #if Backtrace_FOUND
# # include <${Backtrace_HEADER}>
# #endif
#
# And then reference that generated header file in actual source.
include(CMakePushCheckState)
include(CheckSymbolExists)
include(FindPackageHandleStandardArgs)
# List of variables to be provided to find_package_handle_standard_args()
set(_Backtrace_STD_ARGS Backtrace_INCLUDE_DIR)
if(Backtrace_HEADER)
set(_Backtrace_HEADER_TRY "${Backtrace_HEADER}")
else(Backtrace_HEADER)
set(_Backtrace_HEADER_TRY "execinfo.h")
endif(Backtrace_HEADER)
find_path(Backtrace_INCLUDE_DIR "${_Backtrace_HEADER_TRY}")
set(Backtrace_INCLUDE_DIRS ${Backtrace_INCLUDE_DIR})
if (NOT DEFINED Backtrace_LIBRARY)
# First, check if we already have backtrace(), e.g., in libc
cmake_push_check_state(RESET)
set(CMAKE_REQUIRED_INCLUDES ${Backtrace_INCLUDE_DIRS})
set(CMAKE_REQUIRED_QUIET ${Backtrace_FIND_QUIETLY})
check_symbol_exists("backtrace" "${_Backtrace_HEADER_TRY}" _Backtrace_SYM_FOUND)
cmake_pop_check_state()
endif()
if(_Backtrace_SYM_FOUND)
# Avoid repeating the message() call below each time CMake is run.
if(NOT Backtrace_FIND_QUIETLY AND NOT DEFINED Backtrace_LIBRARY)
message(STATUS "backtrace facility detected in default set of libraries")
endif()
set(Backtrace_LIBRARY "" CACHE FILEPATH "Library providing backtrace(3), empty for default set of libraries")
else()
# Check for external library, for non-glibc systems
if(Backtrace_INCLUDE_DIR)
# OpenBSD has libbacktrace renamed to libexecinfo
find_library(Backtrace_LIBRARY "execinfo")
elseif() # respect user wishes
set(_Backtrace_HEADER_TRY "backtrace.h")
find_path(Backtrace_INCLUDE_DIR ${_Backtrace_HEADER_TRY})
find_library(Backtrace_LIBRARY "backtrace")
endif()
# Prepend list with library path as it's more common practice
set(_Backtrace_STD_ARGS Backtrace_LIBRARY ${_Backtrace_STD_ARGS})
endif()
message(STATUS "Backtrace_LIBRARY: ${Backtrace_LIBRARY}")
if(Backtrace_LIBRARY STREQUAL "NOTFOUND")
set(Backtrace_LIBRARY "")
endif()
if(Backtrace_LIBRARY STREQUAL "Backtrace_LIBRARY-NOTFOUND")
set(Backtrace_LIBRARY "")
endif()
set(Backtrace_LIBRARIES ${Backtrace_LIBRARY})
set(Backtrace_HEADER "${_Backtrace_HEADER_TRY}" CACHE STRING "Header providing backtrace(3) facility")
find_package_handle_standard_args(Backtrace FOUND_VAR Backtrace_FOUND REQUIRED_VARS ${_Backtrace_STD_ARGS})
mark_as_advanced(Backtrace_HEADER Backtrace_INCLUDE_DIR Backtrace_LIBRARY)

View File

@@ -1,25 +0,0 @@
# - Try to find Berkeley DB
# Once done this will define
#
# BERKELEY_DB_FOUND - system has Berkeley DB
# BERKELEY_DB_INCLUDE_DIR - the Berkeley DB include directory
# BERKELEY_DB_LIBRARIES - Link these to use Berkeley DB
# BERKELEY_DB_DEFINITIONS - Compiler switches required for using Berkeley DB
# Copyright (c) 2006, Alexander Dymo, <adymo@kdevelop.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
find_path(BERKELEY_DB_INCLUDE_DIR db_cxx.h
/usr/include/db4
/usr/local/include/db4
)
find_library(BERKELEY_DB_LIBRARIES NAMES db_cxx )
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Berkeley "Could not find Berkeley DB >= 4.1" BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES)
# show the BERKELEY_DB_INCLUDE_DIR and BERKELEY_DB_LIBRARIES variables only in the advanced view
mark_as_advanced(BERKELEY_DB_INCLUDE_DIR BERKELEY_DB_LIBRARIES )

67
cmake/FindCcache.cmake Normal file
View File

@@ -0,0 +1,67 @@
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are
# permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be
# used to endorse or promote products derived from this software without specific
# prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# - Try to find readline include dirs and libraries
#
# Automatically finds ccache build accelerator, if it's found in PATH.
#
# Usage of this module as follows:
#
# project(monero)
# include(FindCcache) # Include AFTER the project() macro to be able to reach the CMAKE_CXX_COMPILER variable
#
# Properties modified by this module:
#
# GLOBAL PROPERTY RULE_LAUNCH_COMPILE set to ccache, when ccache found
# GLOBAL PROPERTY RULE_LAUNCH_LINK set to ccache, when ccache found
find_program(CCACHE_FOUND ccache)
if (CCACHE_FOUND)
# Try to compile a test program with ccache, in order to verify if it really works. (needed on exotic setups)
set(TEST_PROJECT "${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CMakeTmp")
file(WRITE "${TEST_PROJECT}/CMakeLists.txt" [=[
cmake_minimum_required(VERSION 3.5)
project(test)
option (CCACHE "")
file(WRITE "${CMAKE_SOURCE_DIR}/test.cpp" "int main() { return 0; }")
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE}")
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK "${CCACHE}")
add_executable(main test.cpp)
]=])
try_compile(RET "${TEST_PROJECT}/build" "${TEST_PROJECT}" "test" CMAKE_FLAGS -DCCACHE="${CCACHE_FOUND}")
unset(TEST_PROJECT)
if (${RET})
# Success
message(STATUS "Found usable ccache: ${CCACHE_FOUND}")
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_FOUND}")
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK "${CCACHE_FOUND}")
else()
message(STATUS "Found ccache ${CCACHE_FOUND}, but is UNUSABLE! Return code: ${RET}")
endif()
else()
message(STATUS "ccache NOT found! Please install it for faster rebuilds.")
endif()

69
cmake/FindHIDAPI.cmake Normal file
View File

@@ -0,0 +1,69 @@
# - try to find HIDAPI library
# from http://www.signal11.us/oss/hidapi/
#
# Cache Variables: (probably not for direct use in your scripts)
# HIDAPI_INCLUDE_DIR
# HIDAPI_LIBRARY
#
# Non-cache variables you might use in your CMakeLists.txt:
# HIDAPI_FOUND
# HIDAPI_INCLUDE_DIRS
# HIDAPI_LIBRARIES
#
# Requires these CMake modules:
# FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
#
# Original Author:
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
# http://academic.cleardefinition.com
# Iowa State University HCI Graduate Program/VRAC
#
# Copyright Iowa State University 2009-2010.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
find_library(HIDAPI_LIBRARY
NAMES hidapi hidapi-libusb)
find_path(HIDAPI_INCLUDE_DIR
NAMES hidapi.h
PATH_SUFFIXES
hidapi)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(HIDAPI
DEFAULT_MSG
HIDAPI_LIBRARY
HIDAPI_INCLUDE_DIR)
if(HIDAPI_FOUND)
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARY}")
if((STATIC AND UNIX AND NOT APPLE) OR (DEPENDS AND CMAKE_SYSTEM_NAME STREQUAL "Linux") OR ANDROID)
find_library(LIBUSB-1.0_LIBRARY usb-1.0)
find_library(LIBUDEV_LIBRARY udev)
if(LIBUSB-1.0_LIBRARY)
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARIES};${LIBUSB-1.0_LIBRARY}")
if(LIBUDEV_LIBRARY)
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARIES};${LIBUDEV_LIBRARY}")
elseif(NOT ANDROID)
message(WARNING "libudev library not found, binaries may fail to link.")
endif()
else()
message(WARNING "libusb-1.0 library not found, binaries may fail to link.")
endif()
if(ANDROID)
# libusb uses android log library
find_library(ANDROID_LOG_LIBRARY log)
if(ANDROID_LOG_LIBRARY)
set(HIDAPI_LIBRARIES "${HIDAPI_LIBRARIES};${ANDROID_LOG_LIBRARY}")
else()
message(WARNING "Android log library not found, binaries may fail to link.")
endif()
endif()
endif()
set(HIDAPI_INCLUDE_DIRS "${HIDAPI_INCLUDE_DIR}")
endif()
mark_as_advanced(HIDAPI_INCLUDE_DIR HIDAPI_LIBRARY)

155
cmake/FindLibUSB.cmake Normal file
View File

@@ -0,0 +1,155 @@
# - Find libusb for portable USB support
# This module will find libusb as published by
# http://libusb.sf.net and
# http://libusb-win32.sf.net
#
# It will use PkgConfig if present and supported, else search
# it on its own. If the LibUSB_ROOT_DIR environment variable
# is defined, it will be used as base path.
# The following standard variables get defined:
# LibUSB_FOUND: true if LibUSB was found
# LibUSB_HEADER_FILE: the location of the C header file
# LibUSB_INCLUDE_DIRS: the directory that contains the include file
# LibUSB_LIBRARIES: the library
# source: https://github.com/IntelRealSense/librealsense
include ( CheckLibraryExists )
include ( CheckIncludeFile )
find_package ( PkgConfig )
if ( PKG_CONFIG_FOUND )
pkg_check_modules ( PKGCONFIG_LIBUSB libusb-1.0 )
if ( NOT PKGCONFIG_LIBUSB_FOUND )
pkg_check_modules ( PKGCONFIG_LIBUSB libusb )
endif ( NOT PKGCONFIG_LIBUSB_FOUND )
endif ( PKG_CONFIG_FOUND )
if ( PKGCONFIG_LIBUSB_FOUND )
set ( LibUSB_INCLUDE_DIRS ${PKGCONFIG_LIBUSB_INCLUDE_DIRS} )
foreach ( i ${PKGCONFIG_LIBUSB_LIBRARIES} )
string ( REGEX MATCH "[^-]*" ibase "${i}" )
find_library ( ${ibase}_LIBRARY
NAMES ${i}
PATHS ${PKGCONFIG_LIBUSB_LIBRARY_DIRS}
)
if ( ${ibase}_LIBRARY )
list ( APPEND LibUSB_LIBRARIES ${${ibase}_LIBRARY} )
endif ( ${ibase}_LIBRARY )
mark_as_advanced ( ${ibase}_LIBRARY )
endforeach ( i )
else ( PKGCONFIG_LIBUSB_FOUND )
find_file ( LibUSB_HEADER_FILE
NAMES
libusb.h usb.h
PATHS
$ENV{ProgramFiles}/LibUSB-Win32
$ENV{LibUSB_ROOT_DIR}
PATH_SUFFIXES
include
libusb-1.0
include/libusb-1.0
)
mark_as_advanced ( LibUSB_HEADER_FILE )
get_filename_component ( LibUSB_INCLUDE_DIRS "${LibUSB_HEADER_FILE}" PATH )
if ( ${CMAKE_SYSTEM_NAME} STREQUAL "Windows" )
# LibUSB-Win32 binary distribution contains several libs.
# Use the lib that got compiled with the same compiler.
if ( MSVC )
if ( WIN32 )
set ( LibUSB_LIBRARY_PATH_SUFFIX lib/msvc )
else ( WIN32 )
set ( LibUSB_LIBRARY_PATH_SUFFIX lib/msvc_x64 )
endif ( WIN32 )
elseif ( BORLAND )
set ( LibUSB_LIBRARY_PATH_SUFFIX lib/bcc )
elseif ( CMAKE_COMPILER_IS_GNUCC )
set ( LibUSB_LIBRARY_PATH_SUFFIX lib/gcc )
endif ( MSVC )
endif ( ${CMAKE_SYSTEM_NAME} STREQUAL "Windows" )
find_library ( usb_LIBRARY
NAMES
usb-1.0 libusb usb
PATHS
$ENV{ProgramFiles}/LibUSB-Win32
$ENV{LibUSB_ROOT_DIR}
PATH_SUFFIXES
${LibUSB_LIBRARY_PATH_SUFFIX}
)
mark_as_advanced ( usb_LIBRARY )
if ( usb_LIBRARY )
set ( LibUSB_LIBRARIES ${usb_LIBRARY} )
endif ( usb_LIBRARY )
endif ( PKGCONFIG_LIBUSB_FOUND )
if ( LibUSB_INCLUDE_DIRS AND LibUSB_LIBRARIES )
set ( LibUSB_FOUND true )
endif ( LibUSB_INCLUDE_DIRS AND LibUSB_LIBRARIES )
if ( LibUSB_FOUND )
set ( CMAKE_REQUIRED_INCLUDES "${LibUSB_INCLUDE_DIRS}" )
check_include_file ( "${LibUSB_HEADER_FILE}" LibUSB_FOUND )
endif ( LibUSB_FOUND )
if ( LibUSB_FOUND )
check_library_exists ( "${LibUSB_LIBRARIES}" usb_open "" LibUSB_FOUND )
check_library_exists ( "${LibUSB_LIBRARIES}" libusb_get_device_list "" LibUSB_VERSION_1.0 )
check_library_exists ( "${LibUSB_LIBRARIES}" libusb_get_port_numbers "" LibUSB_VERSION_1.0.16 )
if((STATIC AND UNIX AND NOT APPLE) OR (DEPENDS AND CMAKE_SYSTEM_NAME STREQUAL "Linux") OR ANDROID)
find_library(LIBUDEV_LIBRARY udev)
if(LIBUDEV_LIBRARY)
set(LibUSB_LIBRARIES "${LibUSB_LIBRARIES};${LIBUDEV_LIBRARY}")
else()
message(WARNING "libudev library not found, binaries may fail to link.")
endif()
endif()
# Library 1.0.16+ compilation test.
# The check_library_exists does not work well on Apple with shared libs.
if (APPLE OR LibUSB_VERSION_1.0.16 OR STATIC)
if (APPLE)
if(DEPENDS)
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES "-framework Foundation -framework IOKit -framework Security")
else()
find_library(COREFOUNDATION CoreFoundation)
find_library(IOKIT IOKit)
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES ${IOKIT})
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES ${COREFOUNDATION})
if(STATIC)
find_library(OBJC objc.a)
set(LIBUSB_DEP_LINKER ${OBJC})
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES ${LIBUSB_DEP_LINKER})
endif()
endif()
endif()
if (WIN32)
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES setupapi)
endif()
list(APPEND TEST_COMPILE_EXTRA_LIBRARIES ${LibUSB_LIBRARIES})
try_compile(LibUSB_COMPILE_TEST_PASSED
${CMAKE_BINARY_DIR}
"${CMAKE_CURRENT_LIST_DIR}/test-libusb-version.c"
CMAKE_FLAGS
"-DINCLUDE_DIRECTORIES=${LibUSB_INCLUDE_DIRS}"
"-DLINK_DIRECTORIES=${LibUSB_LIBRARIES}"
LINK_LIBRARIES ${TEST_COMPILE_EXTRA_LIBRARIES}
OUTPUT_VARIABLE OUTPUT)
unset(TEST_COMPILE_EXTRA_LIBRARIES)
message(STATUS "LibUSB Compilation test: ${LibUSB_COMPILE_TEST_PASSED}")
endif()
endif ( LibUSB_FOUND )
if ( NOT LibUSB_FOUND )
if ( NOT LibUSB_FIND_QUIETLY )
message ( STATUS "LibUSB not found, try setting LibUSB_ROOT_DIR environment variable." )
endif ( NOT LibUSB_FIND_QUIETLY )
if ( LibUSB_FIND_REQUIRED )
message ( FATAL_ERROR "" )
endif ( LibUSB_FIND_REQUIRED )
endif ( NOT LibUSB_FOUND )

View File

@@ -46,13 +46,13 @@ IF(MINIUPNPC_FOUND)
file(STRINGS "${MINIUPNP_INCLUDE_DIR}/miniupnpc.h" MINIUPNPC_API_VERSION_STR REGEX "^#define[\t ]+MINIUPNPC_API_VERSION[\t ]+[0-9]+")
if(MINIUPNPC_API_VERSION_STR MATCHES "^#define[\t ]+MINIUPNPC_API_VERSION[\t ]+([0-9]+)")
set(MINIUPNPC_API_VERSION "${CMAKE_MATCH_1}")
if (${MINIUPNPC_API_VERSION} GREATER "10" OR ${MINIUPNPC_API_VERSION} EQUAL "10")
message(STATUS "Found miniupnpc API version " ${MINIUPNPC_API_VERSION})
set(MINIUPNP_FOUND true)
set(MINIUPNPC_VERSION_1_7_OR_HIGHER true)
endif()
endif()
if (${MINIUPNPC_API_VERSION} GREATER "10" OR ${MINIUPNPC_API_VERSION} EQUAL "10")
message(STATUS "Found miniupnpc API version " ${MINIUPNPC_API_VERSION})
set(MINIUPNP_FOUND true)
set(MINIUPNPC_VERSION_1_7_OR_HIGHER true)
endif()
ENDIF()
mark_as_advanced(MINIUPNP_INCLUDE_DIR MINIUPNP_LIBRARY MINIUPNP_STATIC_LIBRARY)

View File

@@ -15,12 +15,15 @@
#
# READLINE_FOUND System has readline, include and lib dirs found
# GNU_READLINE_FOUND Version of readline found is GNU readline, not libedit!
# LIBEDIT_FOUND Version of readline found is libedit, not GNU readline!
# Readline_INCLUDE_DIR The readline include directories.
# Readline_LIBRARY The readline library.
# GNU_READLINE_LIBRARY The GNU readline library or empty string.
# LIBEDIT_LIBRARY The libedit library or empty string.
find_path(Readline_ROOT_DIR
NAMES include/readline/readline.h
PATHS /opt/local/ /usr/local/ /usr/
PATHS /usr/local/opt/readline/ /opt/homebrew/opt/readline/ /opt/local/ /usr/local/ /usr/
NO_DEFAULT_PATH
)
@@ -36,14 +39,18 @@ find_library(Readline_LIBRARY
NO_DEFAULT_PATH
)
if(Readline_INCLUDE_DIR AND Readline_LIBRARY AND Ncurses_LIBRARY)
find_library(Termcap_LIBRARY
NAMES tinfo termcap ncursesw ncurses cursesw curses
)
if(Readline_INCLUDE_DIR AND Readline_LIBRARY)
set(READLINE_FOUND TRUE)
else(Readline_INCLUDE_DIR AND Readline_LIBRARY AND Ncurses_LIBRARY)
else(Readline_INCLUDE_DIR AND Readline_LIBRARY)
FIND_LIBRARY(Readline_LIBRARY NAMES readline PATHS Readline_ROOT_DIR)
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Readline DEFAULT_MSG Readline_INCLUDE_DIR Readline_LIBRARY )
MARK_AS_ADVANCED(Readline_INCLUDE_DIR Readline_LIBRARY)
endif(Readline_INCLUDE_DIR AND Readline_LIBRARY AND Ncurses_LIBRARY)
endif(Readline_INCLUDE_DIR AND Readline_LIBRARY)
mark_as_advanced(
Readline_ROOT_DIR
@@ -53,14 +60,32 @@ mark_as_advanced(
set(CMAKE_REQUIRED_INCLUDES ${Readline_INCLUDE_DIR})
set(CMAKE_REQUIRED_LIBRARIES ${Readline_LIBRARY})
INCLUDE(CheckCXXSourceCompiles)
CHECK_CXX_SOURCE_COMPILES(
"
#include <stdio.h>
#include <readline/readline.h>
int
main()
{
char * s = rl_copy_text(0, 0);
}
" GNU_READLINE_FOUND)
include(CheckFunctionExists)
check_function_exists(rl_copy_text HAVE_COPY_TEXT)
check_function_exists(rl_filename_completion_function HAVE_COMPLETION_FUNCTION)
if(NOT HAVE_COMPLETION_FUNCTION)
if (Readline_LIBRARY)
set(CMAKE_REQUIRED_LIBRARIES ${Readline_LIBRARY} ${Termcap_LIBRARY})
endif(Readline_LIBRARY)
check_function_exists(rl_copy_text HAVE_COPY_TEXT_TC)
check_function_exists(rl_filename_completion_function HAVE_COMPLETION_FUNCTION_TC)
set(HAVE_COMPLETION_FUNCTION ${HAVE_COMPLETION_FUNCTION_TC})
set(HAVE_COPY_TEXT ${HAVE_COPY_TEXT_TC})
if(HAVE_COMPLETION_FUNCTION)
set(Readline_LIBRARY ${Readline_LIBRARY} ${Termcap_LIBRARY})
endif(HAVE_COMPLETION_FUNCTION)
endif(NOT HAVE_COMPLETION_FUNCTION)
set(LIBEDIT_LIBRARY "")
set(GNU_READLINE_LIBRARY "")
if(HAVE_COMPLETION_FUNCTION AND HAVE_COPY_TEXT)
set(GNU_READLINE_FOUND TRUE)
set(GNU_READLINE_LIBRARY ${Readline_LIBRARY})
elseif(READLINE_FOUND AND NOT HAVE_COPY_TEXT)
set(LIBEDIT_FOUND TRUE)
set(LIBEDIT_LIBRARY ${Readline_LIBRARY})
endif(HAVE_COMPLETION_FUNCTION AND HAVE_COPY_TEXT)

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
@@ -29,35 +29,43 @@
# Parts of this file are originally copyright (c) 2012-2013 The Cryptonote developers
# Check what commit we're on
execute_process(COMMAND "${GIT}" rev-parse --short HEAD RESULT_VARIABLE RET OUTPUT_VARIABLE COMMIT OUTPUT_STRIP_TRAILING_WHITESPACE)
if(RET)
# Something went wrong, set the version tag to -unknown
message(WARNING "Cannot determine current commit. Make sure that you are building either from a Git working tree or from a source archive.")
set(VERSIONTAG "unknown")
configure_file("src/version.h.in" "${TO}")
else()
message(STATUS "You are currently on commit ${COMMIT}")
# Get all the tags
execute_process(COMMAND "${GIT}" rev-list --tags --max-count=1 --abbrev-commit RESULT_VARIABLE RET OUTPUT_VARIABLE TAGGEDCOMMIT OUTPUT_STRIP_TRAILING_WHITESPACE)
if(NOT TAGGEDCOMMIT)
message(WARNING "Cannot determine most recent tag. Make sure that you are building either from a Git working tree or from a source archive.")
set(VERSIONTAG "${COMMIT}")
function (get_version_tag_from_git GIT)
execute_process(COMMAND "${GIT}" rev-parse --short=9 HEAD
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
RESULT_VARIABLE RET
OUTPUT_VARIABLE COMMIT
OUTPUT_STRIP_TRAILING_WHITESPACE)
if(RET)
# Something went wrong, set the version tag to -unknown
message(WARNING "Cannot determine current commit. Make sure that you are building either from a Git working tree or from a source archive.")
set(VERSIONTAG "unknown")
set(VERSION_IS_RELEASE "false")
else()
message(STATUS "The most recent tag was at ${TAGGEDCOMMIT}")
string(SUBSTRING ${COMMIT} 0 9 COMMIT)
message(STATUS "You are currently on commit ${COMMIT}")
# Get all the tags
execute_process(COMMAND "${GIT}" tag -l --points-at HEAD
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
RESULT_VARIABLE RET
OUTPUT_VARIABLE TAG
OUTPUT_STRIP_TRAILING_WHITESPACE)
# Check if we're building that tagged commit or a different one
if(COMMIT STREQUAL TAGGEDCOMMIT)
if(TAG)
message(STATUS "You are building a tagged release")
set(VERSIONTAG "release")
set(VERSION_IS_RELEASE "true")
else()
message(STATUS "You are ahead of or behind a tagged release")
set(VERSIONTAG "${COMMIT}")
endif()
endif()
set(VERSION_IS_RELEASE "false")
endif()
endif()
configure_file("src/version.h.in" "${TO}")
endif()
set(VERSIONTAG "${VERSIONTAG}" PARENT_SCOPE)
set(VERSION_IS_RELEASE "${VERSION_IS_RELEASE}" PARENT_SCOPE)
endfunction()

72
cmake/SetClangTidy.cmake Normal file
View File

@@ -0,0 +1,72 @@
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are
# permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be
# used to endorse or promote products derived from this software without specific
# prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_CLANG_TIDY.html
# This module sets the following variables:
# CMAKE_C_CLANG_TIDY
# CMAKE_CXX_CLANG_TIDY
# when clang-tidy is found in PATH. Afterwards, the code is being linted by the tool.
# The checks to be enabled can be manipulated with the variable MONERO_CLANG_TIDY_CHECKS
macro (monero_clang_tidy LANGUAGE)
set(TOOL_NAME "clang-tidy")
set(MONERO_CLANG_TIDY_MIN_VERSION "3.6")
if(${CMAKE_VERSION} VERSION_LESS "${MONERO_CLANG_TIDY_MIN_VERSION}")
message(FATAL_ERROR "Sorry, ${TOOL_NAME} is available for CMake from version ${MONERO_CLANG_TIDY_MIN_VERSION}")
else()
message(STATUS "Trying to enable ${TOOL_NAME}")
find_program(MONERO_CLANG_BIN ${TOOL_NAME})
if(NOT MONERO_CLANG_BIN)
message(FATAL_ERROR "${TOOL_NAME} not found! Try running: sudo apt install ${TOOL_NAME}")
else()
message(STATUS "Found ${MONERO_CLANG_BIN}")
set(MONERO_CLANG_TIDY_CHECKS
-header-filter=.; # By default the headers are excluded. This line enables them.
-checks=*; # Currently enabling all checks
# An example of selectively enabling checks:
#-checks=bugprone-*,cppcoreguidelines-avoid-goto # Have to be in one line :(
)
# Current list of checks is avaibale under:
# https://clang.llvm.org/extra/clang-tidy/
if (${LANGUAGE} STREQUAL "C")
set(CMAKE_C_CLANG_TIDY
${MONERO_CLANG_BIN}; # Mind the semicolon
${MONERO_CLANG_TIDY_CHECKS}
)
elseif (${LANGUAGE} STREQUAL "CXX")
set(CMAKE_CXX_CLANG_TIDY
${MONERO_CLANG_BIN}; # Mind the semicolon
${MONERO_CLANG_TIDY_CHECKS}
)
else()
message(FATAL_ERROR "${TOOL_NAME}: Unsupported language: ${LANGUAGE}")
endif()
endif()
endif()
endmacro()

50
cmake/Version.cmake Normal file
View File

@@ -0,0 +1,50 @@
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without modification, are
# permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this list of
# conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice, this list
# of conditions and the following disclaimer in the documentation and/or other
# materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its contributors may be
# used to endorse or promote products derived from this software without specific
# prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
function (write_version tag)
set(VERSIONTAG "${tag}" CACHE STRING "The tag portion of the Monero software version" FORCE)
configure_file("${CMAKE_CURRENT_LIST_DIR}/../src/version.cpp.in" "${CMAKE_BINARY_DIR}/version.cpp")
endfunction ()
find_package(Git QUIET)
if ("$Format:$" STREQUAL "")
# We're in a tarball; use hard-coded variables.
set(VERSION_IS_RELEASE "true")
write_version("release")
elseif (GIT_FOUND OR Git_FOUND)
message(STATUS "Found Git: ${GIT_EXECUTABLE}")
include(GitVersion)
get_version_tag_from_git("${GIT_EXECUTABLE}")
write_version("${VERSIONTAG}")
else()
message(STATUS "WARNING: Git was not found!")
set(VERSION_IS_RELEASE "false")
write_version("unknown")
endif ()
add_custom_target(genversion ALL
DEPENDS "${CMAKE_BINARY_DIR}/version.cpp")

View File

@@ -0,0 +1,52 @@
// Copyright (c) 2014-2022, The Monero Project
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this list of
// conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific
// prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <libusb.h>
#define UNUSED(expr) (void)(expr)
int main(int argc, char *argv[]) {
libusb_device **devs;
libusb_context *ctx = NULL;
int r = libusb_init(&ctx); UNUSED(r);
ssize_t cnt = libusb_get_device_list(ctx, &devs); UNUSED(cnt);
struct libusb_device_descriptor desc;
r = libusb_get_device_descriptor(devs[0], &desc); UNUSED(r);
uint8_t bus_id = libusb_get_bus_number(devs[0]); UNUSED(bus_id);
uint8_t addr = libusb_get_device_address(devs[0]); UNUSED(addr);
uint8_t tmp_path[16];
r = libusb_get_port_numbers(devs[0], tmp_path, sizeof(tmp_path));
UNUSED(r);
UNUSED(tmp_path);
libusb_free_device_list(devs, 1);
libusb_exit(ctx);
}

43
cmake/test-protobuf.cpp Normal file
View File

@@ -0,0 +1,43 @@
// Copyright (c) 2014-2022, The Monero Project
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this list of
// conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific
// prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <string>
#include <iostream>
#include <google/protobuf/message.h>
#include <google/protobuf/unknown_field_set.h>
#include "test-protobuf.pb.h"
int main(int argc, char *argv[]) {
google::protobuf::UnknownFieldSet ufs;
ufs.ClearAndFreeMemory();
Success sc;
sc.set_message("test");
sc.SerializeToOstream(&std::cerr);
return 0;
}

View File

@@ -0,0 +1,7 @@
syntax = "proto2";
import "google/protobuf/descriptor.proto";
message Success {
optional string message = 1;
}

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2017, The Monero Project
// Copyright (c) 2014-2022, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
// Copyright (c) 2014-2017, The Monero Project
// Copyright (c) 2014-2022, The Monero Project
//
// All rights reserved.
//

View File

@@ -1,4 +1,4 @@
# Copyright (c) 2014-2017, The Monero Project
# Copyright (c) 2014-2022, The Monero Project
#
# All rights reserved.
#
@@ -26,5 +26,6 @@
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
monero_enable_coverage()
add_subdirectory(epee)

34
contrib/brew/Brewfile Normal file
View File

@@ -0,0 +1,34 @@
# Brewfile for Monero
# A homebrew Brewfile installs all required dependencies in one shot
# see https://coderwall.com/p/afmnbq/homebrew-s-new-feature-brewfiles
# https://github.com/Homebrew/homebrew-bundle
# execute brew bundle in the directory containing the Brewfile
tap "homebrew/bundle"
tap "homebrew/cask"
tap "homebrew/cask-versions"
tap "homebrew/core"
brew "autoconf"
brew "autogen"
brew "automake"
brew "binutils"
brew "coreutils"
brew "cmake"
brew "pkg-config"
brew "boost"
brew "openssl"
brew "hidapi"
brew "zmq"
brew "libpgm"
brew "unbound"
brew "libsodium"
brew "miniupnpc"
brew "readline"
brew "expat"
brew "ccache"
brew "doxygen"
brew "graphviz"
brew "libunwind-headers"
brew "xz"
brew "protobuf"

10
contrib/depends/.gitignore vendored Normal file
View File

@@ -0,0 +1,10 @@
SDKs/
work/
built/
sources/
config.site
x86_64*
i686*
mips*
arm*
aarch64*

229
contrib/depends/Makefile Normal file
View File

@@ -0,0 +1,229 @@
.NOTPARALLEL :
SOURCES_PATH ?= $(BASEDIR)/sources
BASE_CACHE ?= $(BASEDIR)/built
FALLBACK_DOWNLOAD_PATH ?= https://downloads.getmonero.org/depends-sources
BUILD = $(shell ./config.guess)
HOST ?= $(BUILD)
PATCHES_PATH = $(BASEDIR)/patches
BASEDIR = $(CURDIR)
HASH_LENGTH:=11
DOWNLOAD_CONNECT_TIMEOUT:=30
DOWNLOAD_RETRIES:=5
HOST_ID_SALT ?= salt
BUILD_ID_SALT ?= salt
host:=$(BUILD)
ifneq ($(HOST),)
host:=$(HOST)
host_toolchain:=$(HOST)-
endif
ifneq ($(DEBUG),)
release_type=Debug
else
release_type=Release
endif
ifneq ($(TESTS),)
build_tests=ON
release_type=Debug
else
build_tests=OFF
endif
base_build_dir=$(BASEDIR)/work/build
base_staging_dir=$(BASEDIR)/work/staging
base_download_dir=$(BASEDIR)/work/download
canonical_host:=$(shell ./config.sub $(HOST))
build:=$(shell ./config.sub $(BUILD))
build_arch =$(firstword $(subst -, ,$(build)))
build_vendor=$(word 2,$(subst -, ,$(build)))
full_build_os:=$(subst $(build_arch)-$(build_vendor)-,,$(build))
build_os:=$(findstring linux,$(full_build_os))
build_os+=$(findstring darwin,$(full_build_os))
build_os:=$(strip $(build_os))
ifeq ($(build_os),)
build_os=$(full_build_os)
endif
host_arch=$(firstword $(subst -, ,$(canonical_host)))
host_vendor=$(word 2,$(subst -, ,$(canonical_host)))
full_host_os:=$(subst $(host_arch)-$(host_vendor)-,,$(canonical_host))
host_os:=$(findstring android,$(full_host_os))
ifeq ($(host_os),)
host_os:=$(findstring linux,$(full_host_os))
endif
host_os+=$(findstring darwin,$(full_host_os))
host_os+=$(findstring freebsd,$(full_host_os))
host_os+=$(findstring mingw32,$(full_host_os))
host_os:=$(strip $(host_os))
ifeq ($(host_os),)
host_os=$(full_host_os)
endif
$(host_arch)_$(host_os)_prefix=$(BASEDIR)/$(host)
$(host_arch)_$(host_os)_host=$(host)
host_prefix=$($(host_arch)_$(host_os)_prefix)
build_prefix=$(host_prefix)/native
ifeq ($(host_os),mingw32)
host_cmake=Windows
endif
ifeq ($(host_os),linux)
host_cmake=Linux
endif
ifeq ($(host_os),freebsd)
host_cmake=FreeBSD
endif
ifeq ($(host_os),darwin)
host_cmake=Darwin
endif
ifeq ($(host_os),android)
host_cmake=Android
endif
AT_$(V):=
AT_:=@
AT:=$(AT_$(V))
all: install
include hosts/$(host_os).mk
include hosts/default.mk
include builders/$(build_os).mk
include builders/default.mk
include packages/packages.mk
build_id_string:=$(BUILD_ID_SALT)
build_id_string+=$(shell $(build_CC) --version 2>/dev/null)
build_id_string+=$(shell $(build_AR) --version 2>/dev/null)
build_id_string+=$(shell $(build_CXX) --version 2>/dev/null)
build_id_string+=$(shell $(build_RANLIB) --version 2>/dev/null)
build_id_string+=$(shell $(build_STRIP) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string:=$(HOST_ID_SALT)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_CC) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_AR) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_CXX) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_RANLIB) --version 2>/dev/null)
$(host_arch)_$(host_os)_id_string+=$(shell $(host_STRIP) --version 2>/dev/null)
packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages)
native_packages += $($(host_arch)_$(host_os)_native_packages) $($(host_os)_native_packages)
all_packages = $(packages) $(native_packages)
meta_depends = Makefile funcs.mk builders/default.mk hosts/default.mk hosts/$(host_os).mk builders/$(build_os).mk
$(host_arch)_$(host_os)_native_toolchain?=$($(host_os)_native_toolchain)
include funcs.mk
CONF_PKGS := cmake-conf mxe-conf
build-only-$(1)_$(3): CMAKE_RUNRESULT_FILE = $(PREFIX)/share/cmake/modules/TryRunResults.cmake
build-only-$(1)_$(3): CMAKE_TOOLCHAIN_FILE = $(PREFIX)/$(3)/share/cmake/mxe-conf.cmake
build-only-$(1)_$(3): CMAKE_TOOLCHAIN_DIR = $(PREFIX)/$(3)/share/cmake/mxe-conf.d
build-only-$(1)_$(3): CMAKE_STATIC_BOOL = $(if $(findstring shared,$(3)),OFF,ON)
build-only-$(1)_$(3): CMAKE_SHARED_BOOL = $(if $(findstring shared,$(3)),ON,OFF)
toolchain_path=$($($(host_arch)_$(host_os)_native_toolchain)_prefixbin)
final_build_id_long+=$(shell $(build_SHA256SUM) config.site.in)
final_build_id_long+=$(shell $(build_SHA256SUM) toolchain.cmake.in)
final_build_id+=$(shell echo -n "$(final_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH))
$(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages)
$(AT)rm -rf $(@D)
$(AT)mkdir -p $(@D)
$(AT)echo copying packages: $^
$(AT)echo to: $(@D)
$(AT)cd $(@D); $(foreach package,$^, tar xf $($(package)_cached); )
$(AT)touch $@
$(host_prefix)/share/config.site : config.site.in $(host_prefix)/.stamp_$(final_build_id)
$(AT)@mkdir -p $(@D)
$(AT)sed -e 's|@HOST@|$(host)|' \
-e 's|@CC@|$(toolchain_path)$(host_CC)|' \
-e 's|@CXX@|$(toolchain_path)$(host_CXX)|' \
-e 's|@AR@|$(toolchain_path)$(host_AR)|' \
-e 's|@RANLIB@|$(toolchain_path)$(host_RANLIB)|' \
-e 's|@NM@|$(toolchain_path)$(host_NM)|' \
-e 's|@STRIP@|$(toolchain_path)$(host_STRIP)|' \
-e 's|@build_os@|$(build_os)|' \
-e 's|@host_os@|$(host_os)|' \
-e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \
-e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \
-e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \
-e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \
-e 's|@allow_host_packages@|$(ALLOW_HOST_PACKAGES)|' \
-e 's|@debug@|$(DEBUG)|' \
$< > $@
$(AT)touch $@
$(host_prefix)/share/toolchain.cmake : toolchain.cmake.in $(host_prefix)/.stamp_$(final_build_id)
$(AT)@mkdir -p $(@D)
$(AT)sed -e 's|@HOST@|$(host)|' \
-e 's|@CC@|$(toolchain_path)$(host_CC)|' \
-e 's|@CXX@|$(toolchain_path)$(host_CXX)|' \
-e 's|@AR@|$(toolchain_path)$(host_AR)|' \
-e 's|@RANLIB@|$(toolchain_path)$(host_RANLIB)|' \
-e 's|@NM@|$(toolchain_path)$(host_NM)|' \
-e 's|@STRIP@|$(toolchain_path)$(host_STRIP)|' \
-e 's|@build_os@|$(build_os)|' \
-e 's|@host_os@|$(host_os)|' \
-e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \
-e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \
-e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \
-e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \
-e 's|@allow_host_packages@|$(ALLOW_HOST_PACKAGES)|' \
-e 's|@debug@|$(DEBUG)|' \
-e 's|@release_type@|$(release_type)|' \
-e 's|@build_tests@|$(build_tests)|' \
-e 's|@depends@|$(host_cmake)|' \
-e 's|@prefix@|$($(host_arch)_$(host_os)_prefix)|'\
-e 's|@arch@|$(host_arch)|'\
$< > $@
$(AT)touch $@
define check_or_remove_cached
mkdir -p $(BASE_CACHE)/$(host)/$(package) && cd $(BASE_CACHE)/$(host)/$(package); \
$(build_SHA256SUM) -c $($(package)_cached_checksum) >/dev/null 2>/dev/null || \
( rm -f $($(package)_cached_checksum); \
if test -f "$($(package)_cached)"; then echo "Checksum mismatch for $(package). Forcing rebuild.."; rm -f $($(package)_cached_checksum) $($(package)_cached); fi )
endef
define check_or_remove_sources
mkdir -p $($(package)_source_dir); cd $($(package)_source_dir); \
test -f $($(package)_fetched) && ( $(build_SHA256SUM) -c $($(package)_fetched) >/dev/null 2>/dev/null || \
( echo "Checksum missing or mismatched for $(package) source. Forcing re-download."; \
rm -f $($(package)_all_sources) $($(1)_fetched))) || true
endef
check-packages:
@$(foreach package,$(all_packages),$(call check_or_remove_cached,$(package));)
check-sources:
@$(foreach package,$(all_packages),$(call check_or_remove_sources,$(package));)
$(host_prefix)/share/config.site: check-packages
$(host_prefix)/share/toolchain.cmake: check-packages
check-packages: check-sources
install: check-packages $(host_prefix)/share/config.site
install: check-packages $(host_prefix)/share/toolchain.cmake
download-one: check-sources $(all_sources)
download-osx:
@$(MAKE) -s HOST=x86_64-apple-darwin11 download-one
download-linux:
@$(MAKE) -s HOST=x86_64-unknown-linux-gnu download-one
download-win:
@$(MAKE) -s HOST=x86_64-w64-mingw32 download-one
download: download-osx download-linux download-win
$(foreach package,$(all_packages),$(eval $(call ext_add_stages,$(package))))
.PHONY: install cached download-one download-osx download-linux download-win download check-packages check-sources

74
contrib/depends/README.md Normal file
View File

@@ -0,0 +1,74 @@
### Usage
To build dependencies for the current arch+OS:
```bash
make
```
To build for another arch/OS:
```bash
make HOST=host-platform-triplet
```
For example:
```bash
make HOST=x86_64-w64-mingw32 -j4
```
A toolchain will be generated that's suitable for plugging into Monero's
cmake. In the above example, a dir named x86_64-w64-mingw32 will be
created. To use it for Monero:
```bash
cmake -DCMAKE_TOOLCHAIN=`pwd`/contrib/depends/x86_64-w64-mingw32
```
Common `host-platform-triplets` for cross compilation are:
- `i686-w64-mingw32` for Win32
- `x86_64-w64-mingw32` for Win64
- `x86_64-apple-darwin11` for MacOSX x86_64
- `arm-linux-gnueabihf` for Linux ARM 32 bit
- `aarch64-linux-gnu` for Linux ARM 64 bit
- `riscv64-linux-gnu` for Linux RISCV 64 bit
No other options are needed, the paths are automatically configured.
Dependency Options:
The following can be set when running make: make FOO=bar
```
SOURCES_PATH: downloaded sources will be placed here
BASE_CACHE: built packages will be placed here
FALLBACK_DOWNLOAD_PATH: If a source file can't be fetched, try here before giving up
DEBUG: disable some optimizations and enable more runtime checking
HOST_ID_SALT: Optional salt to use when generating host package ids
BUILD_ID_SALT: Optional salt to use when generating build package ids
```
Additional targets:
```
download: run 'make download' to fetch all sources without building them
download-osx: run 'make download-osx' to fetch all sources needed for osx builds
download-win: run 'make download-win' to fetch all sources needed for win builds
download-linux: run 'make download-linux' to fetch all sources needed for linux builds
```
#Mingw builds
Building for 32/64bit mingw requires switching alternatives to a posix mode
```bash
update-alternatives --set x86_64-w64-mingw32-g++ x86_64-w64-mingw32-g++-posix
update-alternatives --set x86_64-w64-mingw32-gcc x86_64-w64-mingw32-gcc-posix
```
### Other documentation
- [description.md](description.md): General description of the depends system
- [packages.md](packages.md): Steps for adding packages

View File

@@ -0,0 +1,22 @@
build_darwin_CC: = $(shell xcrun -f clang)
build_darwin_CXX: = $(shell xcrun -f clang++)
build_darwin_AR: = $(shell xcrun -f ar)
build_darwin_RANLIB: = $(shell xcrun -f ranlib)
build_darwin_STRIP: = $(shell xcrun -f strip)
build_darwin_OTOOL: = $(shell xcrun -f otool)
build_darwin_NM: = $(shell xcrun -f nm)
build_darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool)
build_darwin_SHA256SUM = shasum -a 256
build_darwin_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o
#darwin host on darwin builder. overrides darwin host preferences.
darwin_CC=$(shell xcrun -f clang) -mmacosx-version-min=$(OSX_MIN_VERSION)
darwin_CXX:=$(shell xcrun -f clang++) -mmacosx-version-min=$(OSX_MIN_VERSION) -stdlib=libc++
darwin_AR:=$(shell xcrun -f ar)
darwin_RANLIB:=$(shell xcrun -f ranlib)
darwin_STRIP:=$(shell xcrun -f strip)
darwin_LIBTOOL:=$(shell xcrun -f libtool)
darwin_OTOOL:=$(shell xcrun -f otool)
darwin_NM:=$(shell xcrun -f nm)
darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool)
darwin_native_toolchain=

View File

@@ -0,0 +1,20 @@
default_build_CC = gcc
default_build_CXX = g++
default_build_AR = ar
default_build_RANLIB = ranlib
default_build_STRIP = strip
default_build_NM = nm
default_build_OTOOL = otool
default_build_INSTALL_NAME_TOOL = install_name_tool
define add_build_tool_func
build_$(build_os)_$1 ?= $$(default_build_$1)
build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1)
build_$1=$$(build_$(build_arch)_$(build_os)_$1)
endef
$(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var))))
define add_build_flags_func
build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1)
build_$1=$$(build_$(build_arch)_$(build_os)_$1)
endef
$(foreach flags, CFLAGS CXXFLAGS ARFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags))))

View File

@@ -0,0 +1,2 @@
build_linux_SHA256SUM = sha256sum
build_linux_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o

View File

@@ -1,8 +1,8 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright 1992-2013 Free Software Foundation, Inc.
# Copyright 1992-2017 Free Software Foundation, Inc.
timestamp='2013-06-10'
timestamp='2017-03-05'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -24,12 +24,12 @@ timestamp='2013-06-10'
# program. This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
#
# Originally written by Per Bothner.
# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
#
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
#
# Please send patches with a ChangeLog entry to config-patches@gnu.org.
# Please send patches to <config-patches@gnu.org>.
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -50,7 +50,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
Copyright 1992-2013 Free Software Foundation, Inc.
Copyright 1992-2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -149,7 +149,7 @@ Linux|GNU|GNU/*)
LIBC=gnu
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
;;
esac
@@ -168,19 +168,29 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
sysctl="sysctl -n hw.machine_arch"
UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
/usr/sbin/$sysctl 2>/dev/null || echo unknown)`
UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
/sbin/$sysctl 2>/dev/null || \
/usr/sbin/$sysctl 2>/dev/null || \
echo unknown)`
case "${UNAME_MACHINE_ARCH}" in
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
sh5el) machine=sh5le-unknown ;;
earmv*)
arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
machine=${arch}${endian}-unknown
;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently, or will in the future.
# to ELF recently (or will in the future) and ABI.
case "${UNAME_MACHINE_ARCH}" in
earm*)
os=netbsdelf
;;
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
@@ -197,6 +207,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
os=netbsd
;;
esac
# Determine ABI tags.
case "${UNAME_MACHINE_ARCH}" in
earm*)
expr='s/^earmv[0-9]/-eabi/;s/eb$//'
abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
;;
esac
# The OS release
# Debian GNU/NetBSD machines have a different userland, and
# thus, need a distinct triplet. However, they do not need
@@ -207,13 +224,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
release='-gnu'
;;
*)
release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
echo "${machine}-${os}${release}${abi}"
exit ;;
*:Bitrig:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
@@ -223,6 +240,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
exit ;;
*:LibertyBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
exit ;;
*:ekkoBSD:*:*)
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
exit ;;
@@ -235,6 +256,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:MirBSD:*:*)
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
exit ;;
*:Sortix:*:*)
echo ${UNAME_MACHINE}-unknown-sortix
exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
@@ -251,42 +275,42 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
case "$ALPHA_CPU_TYPE" in
"EV4 (21064)")
UNAME_MACHINE="alpha" ;;
UNAME_MACHINE=alpha ;;
"EV4.5 (21064)")
UNAME_MACHINE="alpha" ;;
UNAME_MACHINE=alpha ;;
"LCA4 (21066/21068)")
UNAME_MACHINE="alpha" ;;
UNAME_MACHINE=alpha ;;
"EV5 (21164)")
UNAME_MACHINE="alphaev5" ;;
UNAME_MACHINE=alphaev5 ;;
"EV5.6 (21164A)")
UNAME_MACHINE="alphaev56" ;;
UNAME_MACHINE=alphaev56 ;;
"EV5.6 (21164PC)")
UNAME_MACHINE="alphapca56" ;;
UNAME_MACHINE=alphapca56 ;;
"EV5.7 (21164PC)")
UNAME_MACHINE="alphapca57" ;;
UNAME_MACHINE=alphapca57 ;;
"EV6 (21264)")
UNAME_MACHINE="alphaev6" ;;
UNAME_MACHINE=alphaev6 ;;
"EV6.7 (21264A)")
UNAME_MACHINE="alphaev67" ;;
UNAME_MACHINE=alphaev67 ;;
"EV6.8CB (21264C)")
UNAME_MACHINE="alphaev68" ;;
UNAME_MACHINE=alphaev68 ;;
"EV6.8AL (21264B)")
UNAME_MACHINE="alphaev68" ;;
UNAME_MACHINE=alphaev68 ;;
"EV6.8CX (21264D)")
UNAME_MACHINE="alphaev68" ;;
UNAME_MACHINE=alphaev68 ;;
"EV6.9A (21264/EV69A)")
UNAME_MACHINE="alphaev69" ;;
UNAME_MACHINE=alphaev69 ;;
"EV7 (21364)")
UNAME_MACHINE="alphaev7" ;;
UNAME_MACHINE=alphaev7 ;;
"EV7.9 (21364A)")
UNAME_MACHINE="alphaev79" ;;
UNAME_MACHINE=alphaev79 ;;
esac
# A Pn.n version is a patched version.
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
exitcode=$?
trap '' 0
@@ -359,16 +383,16 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
eval $set_cc_for_build
SUN_ARCH="i386"
SUN_ARCH=i386
# If there is a compiler, see if it is configured for 64-bit objects.
# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
# This test works for both compilers.
if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
SUN_ARCH="x86_64"
SUN_ARCH=x86_64
fi
fi
echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
@@ -393,7 +417,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
exit ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
echo m68k-sun-sunos${UNAME_RELEASE}
@@ -579,8 +603,9 @@ EOF
else
IBM_ARCH=powerpc
fi
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
if [ -x /usr/bin/lslpp ] ; then
IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
else
IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
fi
@@ -617,13 +642,13 @@ EOF
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
532) # CPU_PA_RISC2_0
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
32) HP_ARCH=hppa2.0n ;;
64) HP_ARCH=hppa2.0w ;;
'') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
esac ;;
esac
fi
@@ -662,11 +687,11 @@ EOF
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
(CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
if [ ${HP_ARCH} = "hppa2.0w" ]
if [ ${HP_ARCH} = hppa2.0w ]
then
eval $set_cc_for_build
@@ -679,12 +704,12 @@ EOF
# $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
# => hppa64-hp-hpux11.23
if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
grep -q __LP64__
then
HP_ARCH="hppa2.0w"
HP_ARCH=hppa2.0w
else
HP_ARCH="hppa64"
HP_ARCH=hppa64
fi
fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
@@ -789,14 +814,14 @@ EOF
echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
5000:UNIX_System_V:4.*:*)
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
@@ -812,10 +837,11 @@ EOF
UNAME_PROCESSOR=`/usr/bin/uname -p`
case ${UNAME_PROCESSOR} in
amd64)
echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
*)
echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
UNAME_PROCESSOR=x86_64 ;;
i386)
UNAME_PROCESSOR=i586 ;;
esac
echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
@@ -826,7 +852,7 @@ EOF
*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
i*:MSYS*:*)
*:MSYS*:*)
echo ${UNAME_MACHINE}-pc-msys
exit ;;
i*:windows32*:*)
@@ -878,7 +904,7 @@ EOF
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
@@ -901,7 +927,7 @@ EOF
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
arc:Linux:*:* | arceb:Linux:*:*)
@@ -932,6 +958,9 @@ EOF
crisv32:Linux:*:*)
echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
e2k:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
frv:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
@@ -944,6 +973,9 @@ EOF
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
k1om:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m32r*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
@@ -969,10 +1001,13 @@ EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
;;
or1k:Linux:*:*)
mips64el:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
or32:Linux:*:*)
openrisc*:Linux:*:*)
echo or1k-unknown-linux-${LIBC}
exit ;;
or32:Linux:*:* | or1k*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
padre:Linux:*:*)
@@ -1001,6 +1036,9 @@ EOF
ppcle:Linux:*:*)
echo powerpcle-unknown-linux-${LIBC}
exit ;;
riscv32:Linux:*:* | riscv64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
exit ;;
@@ -1020,7 +1058,7 @@ EOF
echo ${UNAME_MACHINE}-dec-linux-${LIBC}
exit ;;
x86_64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
echo ${UNAME_MACHINE}-pc-linux-${LIBC}
exit ;;
xtensa*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
@@ -1099,7 +1137,7 @@ EOF
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i586.
# Note: whatever this is, it MUST be the same as what config.sub
# prints for the "djgpp" host, or else GDB configury will decide that
# prints for the "djgpp" host, or else GDB configure will decide that
# this is a cross-build.
echo i586-pc-msdosdjgpp
exit ;;
@@ -1248,6 +1286,9 @@ EOF
SX-8R:SUPER-UX:*:*)
echo sx8r-nec-superux${UNAME_RELEASE}
exit ;;
SX-ACE:SUPER-UX:*:*)
echo sxace-nec-superux${UNAME_RELEASE}
exit ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit ;;
@@ -1260,22 +1301,32 @@ EOF
if test "$UNAME_PROCESSOR" = unknown ; then
UNAME_PROCESSOR=powerpc
fi
if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
case $UNAME_PROCESSOR in
i386) UNAME_PROCESSOR=x86_64 ;;
powerpc) UNAME_PROCESSOR=powerpc64 ;;
esac
if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
grep IS_64BIT_ARCH >/dev/null
then
case $UNAME_PROCESSOR in
i386) UNAME_PROCESSOR=x86_64 ;;
powerpc) UNAME_PROCESSOR=powerpc64 ;;
esac
fi
fi
elif test "$UNAME_PROCESSOR" = i386 ; then
# Avoid executing cc on OS X 10.9, as it ships with a stub
# that puts up a graphical alert prompting to install
# developer tools. Any system running Mac OS X 10.7 or
# later (Darwin 11 and later) is required to have a 64-bit
# processor. This is not true of the ARM version of Darwin
# that Apple uses in portable devices.
UNAME_PROCESSOR=x86_64
fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = "x86"; then
if test "$UNAME_PROCESSOR" = x86; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
@@ -1293,6 +1344,9 @@ EOF
NSR-?:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit ;;
NSX-?:NONSTOP_KERNEL:*:*)
echo nsx-tandem-nsk${UNAME_RELEASE}
exit ;;
*:NonStop-UX:*:*)
echo mips-compaq-nonstopux
exit ;;
@@ -1306,7 +1360,7 @@ EOF
# "uname -m" is not consistent, so use $cputype instead. 386
# is converted to i386 for consistency with other x86
# operating systems.
if test "$cputype" = "386"; then
if test "$cputype" = 386; then
UNAME_MACHINE=i386
else
UNAME_MACHINE="$cputype"
@@ -1348,7 +1402,7 @@ EOF
echo i386-pc-xenix
exit ;;
i*86:skyos:*:*)
echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
exit ;;
i*86:rdos:*:*)
echo ${UNAME_MACHINE}-pc-rdos
@@ -1359,171 +1413,25 @@ EOF
x86_64:VMkernel:*:*)
echo ${UNAME_MACHINE}-unknown-esx
exit ;;
amd64:Isilon\ OneFS:*:*)
echo x86_64-unknown-onefs
exit ;;
esac
eval $set_cc_for_build
cat >$dummy.c <<EOF
#ifdef _SEQUENT_
# include <sys/types.h>
# include <sys/utsname.h>
#endif
main ()
{
#if defined (sony)
#if defined (MIPSEB)
/* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
I don't know.... */
printf ("mips-sony-bsd\n"); exit (0);
#else
#include <sys/param.h>
printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
"4"
#else
""
#endif
); exit (0);
#endif
#endif
#if defined (__arm) && defined (__acorn) && defined (__unix)
printf ("arm-acorn-riscix\n"); exit (0);
#endif
#if defined (hp300) && !defined (hpux)
printf ("m68k-hp-bsd\n"); exit (0);
#endif
#if defined (NeXT)
#if !defined (__ARCHITECTURE__)
#define __ARCHITECTURE__ "m68k"
#endif
int version;
version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
if (version < 4)
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
else
printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
exit (0);
#endif
#if defined (MULTIMAX) || defined (n16)
#if defined (UMAXV)
printf ("ns32k-encore-sysv\n"); exit (0);
#else
#if defined (CMU)
printf ("ns32k-encore-mach\n"); exit (0);
#else
printf ("ns32k-encore-bsd\n"); exit (0);
#endif
#endif
#endif
#if defined (__386BSD__)
printf ("i386-pc-bsd\n"); exit (0);
#endif
#if defined (sequent)
#if defined (i386)
printf ("i386-sequent-dynix\n"); exit (0);
#endif
#if defined (ns32000)
printf ("ns32k-sequent-dynix\n"); exit (0);
#endif
#endif
#if defined (_SEQUENT_)
struct utsname un;
uname(&un);
if (strncmp(un.version, "V2", 2) == 0) {
printf ("i386-sequent-ptx2\n"); exit (0);
}
if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
printf ("i386-sequent-ptx1\n"); exit (0);
}
printf ("i386-sequent-ptx\n"); exit (0);
#endif
#if defined (vax)
# if !defined (ultrix)
# include <sys/param.h>
# if defined (BSD)
# if BSD == 43
printf ("vax-dec-bsd4.3\n"); exit (0);
# else
# if BSD == 199006
printf ("vax-dec-bsd4.3reno\n"); exit (0);
# else
printf ("vax-dec-bsd\n"); exit (0);
# endif
# endif
# else
printf ("vax-dec-bsd\n"); exit (0);
# endif
# else
printf ("vax-dec-ultrix\n"); exit (0);
# endif
#endif
#if defined (alliant) && defined (i860)
printf ("i860-alliant-bsd\n"); exit (0);
#endif
exit (1);
}
EOF
$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
{ echo "$SYSTEM_NAME"; exit; }
# Apollos put the system type in the environment.
test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
# Convex versions that predate uname can use getsysinfo(1)
if [ -x /usr/convex/getsysinfo ]
then
case `getsysinfo -f cpu_type` in
c1*)
echo c1-convex-bsd
exit ;;
c2*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit ;;
c34*)
echo c34-convex-bsd
exit ;;
c38*)
echo c38-convex-bsd
exit ;;
c4*)
echo c4-convex-bsd
exit ;;
esac
fi
cat >&2 <<EOF
$0: unable to guess system type
This script, last modified $timestamp, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
This script (version $timestamp), has failed to recognize the
operating system you are using. If your script is old, overwrite
config.guess and config.sub with the latest versions from:
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
and
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
If the version you run ($0) is already up to date, please
send the following data and any information you think might be
pertinent to <config-patches@gnu.org> in order to provide the needed
information to handle your system.
If $0 has already been updated, send the following data and any
information you think might be pertinent to config-patches@gnu.org to
provide the necessary information to handle your system.
config.guess timestamp = $timestamp

View File

@@ -0,0 +1,66 @@
depends_prefix="`dirname ${ac_site_file}`/.."
cross_compiling=maybe
host_alias=@HOST@
ac_tool_prefix=${host_alias}-
if test -z $with_boost; then
with_boost=$depends_prefix
fi
if test x@host_os@ = xdarwin; then
BREW=no
PORT=no
fi
PATH=$depends_prefix/native/bin:$PATH
PKG_CONFIG="`which pkg-config` --static"
# These two need to remain exported because pkg-config does not see them
# otherwise. That means they must be unexported at the end of configure.ac to
# avoid ruining the cache. Sigh.
export PKG_CONFIG_PATH=$depends_prefix/share/pkgconfig:$depends_prefix/lib/pkgconfig
if test -z "@allow_host_packages@"; then
export PKGCONFIG_LIBDIR=
fi
CPPFLAGS="-I$depends_prefix/include/ $CPPFLAGS"
LDFLAGS="-L$depends_prefix/lib $LDFLAGS"
CC="@CC@"
CXX="@CXX@"
OBJC="${CC}"
CCACHE=$depends_prefix/native/bin/ccache
PYTHONPATH=$depends_prefix/native/lib/python/dist-packages:$PYTHONPATH
if test -n "@AR@"; then
AR=@AR@
ac_cv_path_ac_pt_AR=${AR}
fi
if test -n "@RANLIB@"; then
RANLIB=@RANLIB@
ac_cv_path_ac_pt_RANLIB=${RANLIB}
fi
if test -n "@NM@"; then
NM=@NM@
ac_cv_path_ac_pt_NM=${NM}
fi
if test -n "@debug@"; then
enable_reduce_exports=no
fi
if test -n "@CFLAGS@"; then
CFLAGS="@CFLAGS@ $CFLAGS"
fi
if test -n "@CXXFLAGS@"; then
CXXFLAGS="@CXXFLAGS@ $CXXFLAGS"
fi
if test -n "@CPPFLAGS@"; then
CPPFLAGS="@CPPFLAGS@ $CPPFLAGS"
fi
if test -n "@LDFLAGS@"; then
LDFLAGS="@LDFLAGS@ $LDFLAGS"
fi

View File

@@ -1,8 +1,8 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright 1992-2013 Free Software Foundation, Inc.
# Copyright 1992-2017 Free Software Foundation, Inc.
timestamp='2013-08-10'
timestamp='2017-04-02'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@ timestamp='2013-08-10'
# of the GNU General Public License, version 3 ("GPLv3").
# Please send patches with a ChangeLog entry to config-patches@gnu.org.
# Please send patches to <config-patches@gnu.org>.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
@@ -33,7 +33,7 @@ timestamp='2013-08-10'
# Otherwise, we print the canonical config type on stdout and succeed.
# You can get the latest version of this script from:
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
@@ -53,8 +53,7 @@ timestamp='2013-08-10'
me=`echo "$0" | sed -e 's,.*/,,'`
usage="\
Usage: $0 [OPTION] CPU-MFR-OPSYS
$0 [OPTION] ALIAS
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
Canonicalize a configuration name.
@@ -68,7 +67,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
Copyright 1992-2013 Free Software Foundation, Inc.
Copyright 1992-2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -117,8 +116,8 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | \
kopensolaris*-gnu* | \
knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
kopensolaris*-gnu* | cloudabi*-eabi* | \
storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
@@ -255,16 +254,18 @@ case $basic_machine in
| arc | arceb \
| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
| avr | avr32 \
| ba \
| be32 | be64 \
| bfin \
| c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
| epiphany \
| fido | fr30 | frv \
| e2k | epiphany \
| fido | fr30 | frv | ft32 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| hexagon \
| i370 | i860 | i960 | ia64 \
| i370 | i860 | i960 | ia16 | ia64 \
| ip2k | iq2000 \
| k1om \
| le32 | le64 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
@@ -282,8 +283,10 @@ case $basic_machine in
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
| mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
| mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipsr5900 | mipsr5900el \
@@ -295,14 +298,15 @@ case $basic_machine in
| nds32 | nds32le | nds32be \
| nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
| open8 \
| or1k | or32 \
| open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
| pru \
| pyramid \
| riscv32 | riscv64 \
| rl78 | rx \
| score \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
@@ -310,6 +314,8 @@ case $basic_machine in
| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
| ubicom32 \
| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
| visium \
| wasm32 \
| we32k \
| x86 | xc16x | xstormy16 | xtensa \
| z8k | z80)
@@ -324,7 +330,10 @@ case $basic_machine in
c6x)
basic_machine=tic6x-unknown
;;
m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
leon|leon[3-9])
basic_machine=sparc-$basic_machine
;;
m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
@@ -369,18 +378,20 @@ case $basic_machine in
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
| ba-* \
| be32-* | be64-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* \
| c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| e2k-* | elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
| ip2k-* | iq2000-* \
| k1om-* \
| le32-* | le64-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
@@ -400,8 +411,10 @@ case $basic_machine in
| mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
| mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipsr5900-* | mipsr5900el-* \
@@ -413,16 +426,19 @@ case $basic_machine in
| nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| open8-* \
| or1k*-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
| pru-* \
| pyramid-* \
| riscv32-* | riscv64-* \
| rl78-* | romp-* | rs6000-* | rx-* \
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
| tahoe-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tile*-* \
@@ -430,6 +446,8 @@ case $basic_machine in
| ubicom32-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
| visium-* \
| wasm32-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
@@ -506,6 +524,9 @@ case $basic_machine in
basic_machine=i386-pc
os=-aros
;;
asmjs)
basic_machine=asmjs-unknown
;;
aux)
basic_machine=m68k-apple
os=-aux
@@ -626,6 +647,14 @@ case $basic_machine in
basic_machine=m68k-bull
os=-sysv3
;;
e500v[12])
basic_machine=powerpc-unknown
os=$os"spe"
;;
e500v[12]-*)
basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
os=$os"spe"
;;
ebmon29k)
basic_machine=a29k-amd
os=-ebmon
@@ -767,6 +796,9 @@ case $basic_machine in
basic_machine=m68k-isi
os=-sysv
;;
leon-*|leon[3-9]-*)
basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
;;
m68knommu)
basic_machine=m68k-unknown
os=-linux
@@ -822,6 +854,10 @@ case $basic_machine in
basic_machine=powerpc-unknown
os=-morphos
;;
moxiebox)
basic_machine=moxie-unknown
os=-moxiebox
;;
msdos)
basic_machine=i386-pc
os=-msdos
@@ -914,6 +950,9 @@ case $basic_machine in
nsr-tandem)
basic_machine=nsr-tandem
;;
nsx-tandem)
basic_machine=nsx-tandem
;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
@@ -998,7 +1037,7 @@ case $basic_machine in
ppc-* | ppcbe-*)
basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
ppcle | powerpclittle)
basic_machine=powerpcle-unknown
;;
ppcle-* | powerpclittle-*)
@@ -1006,9 +1045,9 @@ case $basic_machine in
;;
ppc64) basic_machine=powerpc64-unknown
;;
ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
ppc64le | powerpc64little)
basic_machine=powerpc64le-unknown
;;
ppc64le-* | powerpc64little-*)
@@ -1209,6 +1248,9 @@ case $basic_machine in
basic_machine=a29k-wrs
os=-vxworks
;;
wasm32)
basic_machine=wasm32-unknown
;;
w65*)
basic_machine=w65-wdc
os=-none
@@ -1354,27 +1396,28 @@ case $os in
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
| -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* | -aros* \
| -aos* | -aros* | -cloudabi* | -sortix* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
| -bitrig* | -openbsd* | -solidbsd* \
| -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* | -cegcc* \
| -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
| -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
| -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
| -linux-newlib* | -linux-musl* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* \
| -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
| -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1506,6 +1549,8 @@ case $os in
;;
-nacl*)
;;
-ios)
;;
-none)
;;
*)
@@ -1592,9 +1637,6 @@ case $basic_machine in
mips*-*)
os=-elf
;;
or1k-*)
os=-elf
;;
or32-*)
os=-coff
;;
@@ -1604,6 +1646,9 @@ case $basic_machine in
sparc-* | *-sun)
os=-sunos4.1.1
;;
pru-*)
os=-elf
;;
*-be)
os=-beos
;;

View File

@@ -0,0 +1,53 @@
This is a system of building and caching dependencies necessary for building Bitcoin.
There are several features that make it different from most similar systems:
### It is designed to be builder and host agnostic
In theory, binaries for any target OS/architecture can be created, from a
builder running any OS/architecture. In practice, build-side tools must be
specified when the defaults don't fit, and packages must be amended to work
on new hosts. For now, a build architecture of x86_64 is assumed, either on
Linux or OSX.
### No reliance on timestamps
File presence is used to determine what needs to be built. This makes the
results distributable and easily digestable by automated builders.
### Each build only has its specified dependencies available at build-time.
For each build, the sysroot is wiped and the (recursive) dependencies are
installed. This makes each build deterministic, since there will never be any
unknown files available to cause side-effects.
### Each package is cached and only rebuilt as needed.
Before building, a unique build-id is generated for each package. This id
consists of a hash of all files used to build the package (Makefiles, packages,
etc), and as well as a hash of the same data for each recursive dependency. If
any portion of a package's build recipe changes, it will be rebuilt as well as
any other package that depends on it. If any of the main makefiles (Makefile,
funcs.mk, etc) are changed, all packages will be rebuilt. After building, the
results are cached into a tarball that can be re-used and distributed.
### Package build results are (relatively) deterministic.
Each package is configured and patched so that it will yield the same
build-results with each consequent build, within a reasonable set of
constraints. Some things like timestamp insertion are unavoidable, and are
beyond the scope of this system. Additionally, the toolchain itself must be
capable of deterministic results. When revisions are properly bumped, a cached
build should represent an exact single payload.
### Sources are fetched and verified automatically
Each package must define its source location and checksum. The build will fail
if the fetched source does not match. Sources may be pre-seeded and/or cached
as desired.
### Self-cleaning
Build and staging dirs are wiped after use, and any previous version of a
cached result is removed following a successful build. Automated builders
should be able to build each revision and store the results with no further
intervention.

270
contrib/depends/funcs.mk Normal file
View File

@@ -0,0 +1,270 @@
define int_vars
#Set defaults for vars which may be overridden per-package
$(1)_cc=$($($(1)_type)_CC)
$(1)_cxx=$($($(1)_type)_CXX)
$(1)_objc=$($($(1)_type)_OBJC)
$(1)_objcxx=$($($(1)_type)_OBJCXX)
$(1)_ar=$($($(1)_type)_AR)
$(1)_ranlib=$($($(1)_type)_RANLIB)
$(1)_libtool=$($($(1)_type)_LIBTOOL)
$(1)_nm=$($($(1)_type)_NM)
$(1)_cflags=$($($(1)_type)_CFLAGS) $($($(1)_type)_$(release_type)_CFLAGS)
$(1)_cxxflags=$($($(1)_type)_CXXFLAGS) $($($(1)_type)_$(release_type)_CXXFLAGS)
$(1)_arflags=$($($(1)_type)_ARFLAGS) $($($(1)_type)_$(release_type)_ARFLAGS)
$(1)_ldflags=$($($(1)_type)_LDFLAGS) $($($(1)_type)_$(release_type)_LDFLAGS) -L$($($(1)_type)_prefix)/lib
$(1)_cppflags=$($($(1)_type)_CPPFLAGS) $($($(1)_type)_$(release_type)_CPPFLAGS) -I$($($(1)_type)_prefix)/include
$(1)_recipe_hash:=
endef
define int_get_all_dependencies
$(sort $(foreach dep,$(2),$(2) $(call int_get_all_dependencies,$(1),$($(dep)_dependencies))))
endef
define fetch_file_inner
( mkdir -p $$($(1)_download_dir) && echo Fetching $(3) from $(2) && \
$(build_DOWNLOAD) "$$($(1)_download_dir)/$(4).temp" "$(2)/$(3)" && \
echo "$(5) $$($(1)_download_dir)/$(4).temp" > $$($(1)_download_dir)/.$(4).hash && \
$(build_SHA256SUM) -c $$($(1)_download_dir)/.$(4).hash && \
mv $$($(1)_download_dir)/$(4).temp $$($(1)_source_dir)/$(4) && \
rm -rf $$($(1)_download_dir) )
endef
define fetch_file
( test -f $$($(1)_source_dir)/$(4) || \
( $(call fetch_file_inner,$(1),$(2),$(3),$(4),$(5)) || \
$(call fetch_file_inner,$(1),$(FALLBACK_DOWNLOAD_PATH),$(4),$(4),$(5))))
endef
define int_get_build_recipe_hash
$(eval $(1)_all_file_checksums:=$(shell $(build_SHA256SUM) $(meta_depends) packages/$(1).mk $(addprefix $(PATCHES_PATH)/$(1)/,$($(1)_patches)) | cut -d" " -f1))
$(eval $(1)_recipe_hash:=$(shell echo -n "$($(1)_all_file_checksums)" | $(build_SHA256SUM) | cut -d" " -f1))
endef
define int_get_build_id
$(eval $(1)_dependencies += $($(1)_$(host_arch)_$(host_os)_dependencies) $($(1)_$(host_os)_dependencies))
$(eval $(1)_all_dependencies:=$(call int_get_all_dependencies,$(1),$($($(1)_type)_native_toolchain) $($(1)_dependencies)))
$(foreach dep,$($(1)_all_dependencies),$(eval $(1)_build_id_deps+=$(dep)-$($(dep)_version)-$($(dep)_recipe_hash)))
$(eval $(1)_build_id_long:=$(1)-$($(1)_version)-$($(1)_recipe_hash)-$(release_type) $($(1)_build_id_deps) $($($(1)_type)_id_string))
$(eval $(1)_build_id:=$(shell echo -n "$($(1)_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH)))
final_build_id_long+=$($(package)_build_id_long)
#compute package-specific paths
$(1)_build_subdir?=.
$(1)_download_file?=$($(1)_file_name)
$(1)_source_dir:=$(SOURCES_PATH)
$(1)_source:=$$($(1)_source_dir)/$($(1)_file_name)
$(1)_staging_dir=$(base_staging_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)
$(1)_staging_prefix_dir:=$$($(1)_staging_dir)$($($(1)_type)_prefix)
$(1)_extract_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)
$(1)_download_dir:=$(base_download_dir)/$(1)-$($(1)_version)
$(1)_build_dir:=$$($(1)_extract_dir)/$$($(1)_build_subdir)
$(1)_cached_checksum:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz.hash
$(1)_patch_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)/.patches-$($(1)_build_id)
$(1)_prefixbin:=$($($(1)_type)_prefix)/bin/
$(1)_cached:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz
$(1)_all_sources=$($(1)_file_name) $($(1)_extra_sources)
#stamps
$(1)_fetched=$(SOURCES_PATH)/download-stamps/.stamp_fetched-$(1)-$($(1)_file_name).hash
$(1)_extracted=$$($(1)_extract_dir)/.stamp_extracted
$(1)_preprocessed=$$($(1)_extract_dir)/.stamp_preprocessed
$(1)_cleaned=$$($(1)_extract_dir)/.stamp_cleaned
$(1)_built=$$($(1)_build_dir)/.stamp_built
$(1)_configured=$$($(1)_build_dir)/.stamp_configured
$(1)_staged=$$($(1)_staging_dir)/.stamp_staged
$(1)_postprocessed=$$($(1)_staging_prefix_dir)/.stamp_postprocessed
$(1)_download_path_fixed=$(subst :,\:,$$($(1)_download_path))
#default commands
$(1)_fetch_cmds ?= $(call fetch_file,$(1),$(subst \:,:,$$($(1)_download_path_fixed)),$$($(1)_download_file),$($(1)_file_name),$($(1)_sha256_hash))
$(1)_extract_cmds ?= mkdir -p $$($(1)_extract_dir) && echo "$$($(1)_sha256_hash) $$($(1)_source)" > $$($(1)_extract_dir)/.$$($(1)_file_name).hash && $(build_SHA256SUM) -c $$($(1)_extract_dir)/.$$($(1)_file_name).hash && tar --strip-components=1 -xf $$($(1)_source)
$(1)_preprocess_cmds ?=
$(1)_build_cmds ?=
$(1)_config_cmds ?=
$(1)_stage_cmds ?=
$(1)_set_vars ?=
all_sources+=$$($(1)_fetched)
endef
#$(foreach dep_target,$($(1)_all_dependencies),$(eval $(1)_dependency_targets=$($(dep_target)_cached)))
define int_config_attach_build_config
$(eval $(call $(1)_set_vars,$(1)))
$(1)_cflags+=$($(1)_cflags_$(release_type))
$(1)_cflags+=$($(1)_cflags_$(host_arch)) $($(1)_cflags_$(host_arch)_$(release_type))
$(1)_cflags+=$($(1)_cflags_$(host_os)) $($(1)_cflags_$(host_os)_$(release_type))
$(1)_cflags+=$($(1)_cflags_$(host_arch)_$(host_os)) $($(1)_cflags_$(host_arch)_$(host_os)_$(release_type))
$(1)_cxxflags+=$($(1)_cxxflags_$(release_type))
$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)) $($(1)_cxxflags_$(host_arch)_$(release_type))
$(1)_cxxflags+=$($(1)_cxxflags_$(host_os)) $($(1)_cxxflags_$(host_os)_$(release_type))
$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)_$(host_os)) $($(1)_cxxflags_$(host_arch)_$(host_os)_$(release_type))
$(1)_arflags+=$($(1)_arflags_$(release_type))
$(1)_arflags+=$($(1)_arflags_$(host_arch)) $($(1)_arflags_$(host_arch)_$(release_type))
$(1)_arflags+=$($(1)_arflags_$(host_os)) $($(1)_arflags_$(host_os)_$(release_type))
$(1)_arflags+=$($(1)_arflags_$(host_arch)_$(host_os)) $($(1)_arflags_$(host_arch)_$(host_os)_$(release_type))
$(1)_cppflags+=$($(1)_cppflags_$(release_type))
$(1)_cppflags+=$($(1)_cppflags_$(host_arch)) $($(1)_cppflags_$(host_arch)_$(release_type))
$(1)_cppflags+=$($(1)_cppflags_$(host_os)) $($(1)_cppflags_$(host_os)_$(release_type))
$(1)_cppflags+=$($(1)_cppflags_$(host_arch)_$(host_os)) $($(1)_cppflags_$(host_arch)_$(host_os)_$(release_type))
$(1)_ldflags+=$($(1)_ldflags_$(release_type))
$(1)_ldflags+=$($(1)_ldflags_$(host_arch)) $($(1)_ldflags_$(host_arch)_$(release_type))
$(1)_ldflags+=$($(1)_ldflags_$(host_os)) $($(1)_ldflags_$(host_os)_$(release_type))
$(1)_ldflags+=$($(1)_ldflags_$(host_arch)_$(host_os)) $($(1)_ldflags_$(host_arch)_$(host_os)_$(release_type))
$(1)_build_opts+=$$($(1)_build_opts_$(release_type))
$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)) $$($(1)_build_opts_$(host_arch)_$(release_type))
$(1)_build_opts+=$$($(1)_build_opts_$(host_os)) $$($(1)_build_opts_$(host_os)_$(release_type))
$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)_$(host_os)) $$($(1)_build_opts_$(host_arch)_$(host_os)_$(release_type))
$(1)_config_opts+=$$($(1)_config_opts_$(release_type))
$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)) $$($(1)_config_opts_$(host_arch)_$(release_type))
$(1)_config_opts+=$$($(1)_config_opts_$(host_os)) $$($(1)_config_opts_$(host_os)_$(release_type))
$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)_$(host_os)) $$($(1)_config_opts_$(host_arch)_$(host_os)_$(release_type))
$(1)_config_env+=$$($(1)_config_env_$(release_type))
$(1)_config_env+=$($(1)_config_env_$(host_arch)) $($(1)_config_env_$(host_arch)_$(release_type))
$(1)_config_env+=$($(1)_config_env_$(host_os)) $($(1)_config_env_$(host_os)_$(release_type))
$(1)_config_env+=$($(1)_config_env_$(host_arch)_$(host_os)) $($(1)_config_env_$(host_arch)_$(host_os)_$(release_type))
$(1)_build_env+=$$($(1)_build_env_$(release_type))
$(1)_build_env+=$($(1)_build_env_$(host_arch)) $($(1)_build_env_$(host_arch)_$(release_type))
$(1)_build_env+=$($(1)_build_env_$(host_os)) $($(1)_build_env_$(host_os)_$(release_type))
$(1)_build_env+=$($(1)_build_env_$(host_arch)_$(host_os)) $($(1)_build_env_$(host_arch)_$(host_os)_$(release_type))
$(1)_config_env+=PKG_CONFIG_LIBDIR=$($($(1)_type)_prefix)/lib/pkgconfig
$(1)_config_env+=PKG_CONFIG_PATH=$($($(1)_type)_prefix)/share/pkgconfig
$(1)_config_env+=PATH="$(build_prefix)/bin:$(PATH)"
$(1)_build_env+=PATH="$(build_prefix)/bin:$(PATH)"
$(1)_stage_env+=PATH="$(build_prefix)/bin:$(PATH)"
$(1)_autoconf=./configure --host=$($($(1)_type)_host) --prefix=$($($(1)_type)_prefix) $$($(1)_config_opts) CC="$$($(1)_cc)" CXX="$$($(1)_cxx)"
ifneq ($(1),libusb)
$(1)_autoconf += --disable-dependency-tracking
endif
ifneq ($($(1)_nm),)
$(1)_autoconf += NM="$$($(1)_nm)"
endif
ifneq ($($(1)_ranlib),)
$(1)_autoconf += RANLIB="$$($(1)_ranlib)"
endif
ifneq ($($(1)_ar),)
$(1)_autoconf += AR="$$($(1)_ar)"
endif
ifneq ($($(1)_arflags),)
$(1)_autoconf += ARFLAGS="$$($(1)_arflags)"
endif
ifneq ($($(1)_cflags),)
$(1)_autoconf += CFLAGS="$$($(1)_cflags)"
endif
ifneq ($($(1)_cxxflags),)
$(1)_autoconf += CXXFLAGS="$$($(1)_cxxflags)"
endif
ifneq ($($(1)_cppflags),)
$(1)_autoconf += CPPFLAGS="$$($(1)_cppflags)"
endif
ifneq ($($(1)_ldflags),)
$(1)_autoconf += LDFLAGS="$$($(1)_ldflags)"
endif
endef
define int_add_cmds
$($(1)_fetched):
$(AT)mkdir -p $$(@D) $(SOURCES_PATH)
$(AT)rm -f $$@
$(AT)touch $$@
$(AT)cd $$(@D); $(call $(1)_fetch_cmds,$(1))
$(AT)cd $($(1)_source_dir); $(foreach source,$($(1)_all_sources),$(build_SHA256SUM) $(source) >> $$(@);)
$(AT)touch $$@
$($(1)_extracted): | $($(1)_fetched)
$(AT)echo Extracting $(1)...
$(AT)mkdir -p $$(@D)
$(AT)cd $$(@D); $(call $(1)_extract_cmds,$(1))
$(AT)touch $$@
$($(1)_preprocessed): | $($(1)_dependencies) $($(1)_extracted)
$(AT)echo Preprocessing $(1)...
$(AT)mkdir -p $$(@D) $($(1)_patch_dir)
$(AT)$(foreach patch,$($(1)_patches),cd $(PATCHES_PATH)/$(1); cp $(patch) $($(1)_patch_dir) ;)
$(AT)cd $$(@D); $(call $(1)_preprocess_cmds, $(1))
$(AT)touch $$@
$($(1)_configured): | $($(1)_preprocessed)
$(AT)echo Configuring $(1)...
$(AT)rm -rf $(host_prefix); mkdir -p $(host_prefix)/lib; cd $(host_prefix); $(foreach package,$($(1)_all_dependencies), tar xf $($(package)_cached); )
$(AT)mkdir -p $$(@D)
$(AT)+cd $$(@D); $($(1)_config_env) $(call $(1)_config_cmds, $(1))
$(AT)touch $$@
$($(1)_built): | $($(1)_configured)
$(AT)echo Building $(1)...
$(AT)mkdir -p $$(@D)
$(AT)+cd $$(@D); $($(1)_build_env) $(call $(1)_build_cmds, $(1))
$(AT)touch $$@
$($(1)_staged): | $($(1)_built)
$(AT)echo Staging $(1)...
$(AT)mkdir -p $($(1)_staging_dir)/$(host_prefix)
$(AT)cd $($(1)_build_dir); $($(1)_stage_env) $(call $(1)_stage_cmds, $(1))
$(AT)rm -rf $($(1)_extract_dir)
$(AT)touch $$@
$($(1)_postprocessed): | $($(1)_staged)
$(AT)echo Postprocessing $(1)...
$(AT)cd $($(1)_staging_prefix_dir); $(call $(1)_postprocess_cmds)
$(AT)touch $$@
$($(1)_cached): | $($(1)_dependencies) $($(1)_postprocessed)
$(AT)echo Caching $(1)...
$(AT)cd $$($(1)_staging_dir)/$(host_prefix); find . | sort | tar --no-recursion -czf $$($(1)_staging_dir)/$$(@F) -T -
$(AT)mkdir -p $$(@D)
$(AT)rm -rf $$(@D) && mkdir -p $$(@D)
$(AT)mv $$($(1)_staging_dir)/$$(@F) $$(@)
$(AT)rm -rf $($(1)_staging_dir)
$($(1)_cached_checksum): $($(1)_cached)
$(AT)cd $$(@D); $(build_SHA256SUM) $$(<F) > $$(@)
.PHONY: $(1)
$(1): | $($(1)_cached_checksum)
.SECONDARY: $($(1)_cached) $($(1)_postprocessed) $($(1)_staged) $($(1)_built) $($(1)_configured) $($(1)_preprocessed) $($(1)_extracted) $($(1)_fetched)
endef
stages = fetched extracted preprocessed configured built staged postprocessed cached cached_checksum
define ext_add_stages
$(foreach stage,$(stages),
$(1)_$(stage): $($(1)_$(stage))
.PHONY: $(1)_$(stage))
endef
# These functions create the build targets for each package. They must be
# broken down into small steps so that each part is done for all packages
# before moving on to the next step. Otherwise, a package's info
# (build-id for example) would only be available to another package if it
# happened to be computed already.
#set the type for host/build packages.
$(foreach native_package,$(native_packages),$(eval $(native_package)_type=build))
$(foreach package,$(packages),$(eval $(package)_type=$(host_arch)_$(host_os)))
#set overridable defaults
$(foreach package,$(all_packages),$(eval $(call int_vars,$(package))))
#include package files
$(foreach package,$(all_packages),$(eval include packages/$(package).mk))
#compute a hash of all files that comprise this package's build recipe
$(foreach package,$(all_packages),$(eval $(call int_get_build_recipe_hash,$(package))))
#generate a unique id for this package, incorporating its dependencies as well
$(foreach package,$(all_packages),$(eval $(call int_get_build_id,$(package))))
#compute final vars after reading package vars
$(foreach package,$(all_packages),$(eval $(call int_config_attach_build_config,$(package))))
#create build targets
$(foreach package,$(all_packages),$(eval $(call int_add_cmds,$(package))))
#special exception: if a toolchain package exists, all non-native packages depend on it
$(foreach package,$(packages),$(eval $($(package)_unpacked): |$($($(host_arch)_$(host_os)_native_toolchain)_cached) ))

View File

@@ -0,0 +1,22 @@
ANDROID_API=21
ifeq ($(host_arch),arm)
host_toolchain=arm-linux-androideabi-
endif
android_CC=$(host_toolchain)clang
android_CXX=$(host_toolchain)clang++
android_RANLIB=:
android_CFLAGS=-pipe
android_CXXFLAGS=$(android_CFLAGS)
android_ARFLAGS=crsD
android_release_CFLAGS=-O2
android_release_CXXFLAGS=$(android_release_CFLAGS)
android_debug_CFLAGS=-g -O0
android_debug_CXXFLAGS=$(android_debug_CFLAGS)
android_native_toolchain=android_ndk

View File

@@ -0,0 +1,21 @@
OSX_MIN_VERSION=10.8
LD64_VERSION=609
ifeq (aarch64, $(host_arch))
CC_target=arm64-apple-$(host_os)
else
CC_target=$(host)
endif
darwin_CC=clang -target $(CC_target) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(host_prefix)/native/SDK/ -mlinker-version=$(LD64_VERSION) -B$(host_prefix)/native/bin/$(host)-
darwin_CXX=clang++ -target $(CC_target) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(host_prefix)/native/SDK/ -mlinker-version=$(LD64_VERSION) -stdlib=libc++ -B$(host_prefix)/native/bin/$(host)-
darwin_CFLAGS=-pipe
darwin_CXXFLAGS=$(darwin_CFLAGS)
darwin_ARFLAGS=cr
darwin_release_CFLAGS=-O1
darwin_release_CXXFLAGS=$(darwin_release_CFLAGS)
darwin_debug_CFLAGS=-O1
darwin_debug_CXXFLAGS=$(darwin_debug_CFLAGS)
darwin_native_toolchain=native_cctools darwin_sdk

View File

@@ -0,0 +1,26 @@
default_host_CC = $(host_toolchain)gcc
default_host_CXX = $(host_toolchain)g++
default_host_AR = $(host_toolchain)ar
default_host_RANLIB = $(host_toolchain)ranlib
default_host_STRIP = $(host_toolchain)strip
default_host_LIBTOOL = $(host_toolchain)libtool
default_host_INSTALL_NAME_TOOL = $(host_toolchain)install_name_tool
default_host_OTOOL = $(host_toolchain)otool
default_host_NM = $(host_toolchain)nm
define add_host_tool_func
$(host_os)_$1?=$$(default_host_$1)
$(host_arch)_$(host_os)_$1?=$$($(host_os)_$1)
$(host_arch)_$(host_os)_$(release_type)_$1?=$$($(host_os)_$1)
host_$1=$$($(host_arch)_$(host_os)_$1)
endef
define add_host_flags_func
$(host_arch)_$(host_os)_$1 += $($(host_os)_$1)
$(host_arch)_$(host_os)_$(release_type)_$1 += $($(host_os)_$(release_type)_$1)
host_$1 = $$($(host_arch)_$(host_os)_$1)
host_$(release_type)_$1 = $$($(host_arch)_$(host_os)_$(release_type)_$1)
endef
$(foreach tool,CC CXX AR RANLIB STRIP NM LIBTOOL OTOOL INSTALL_NAME_TOOL,$(eval $(call add_host_tool_func,$(tool))))
$(foreach flags,CFLAGS CXXFLAGS ARFLAGS CPPFLAGS LDFLAGS, $(eval $(call add_host_flags_func,$(flags))))

View File

@@ -0,0 +1,18 @@
freebsd_CC=clang-8
freebsd_CXX=clang++-8
freebsd_AR=ar
freebsd_RANLIB=ranlib
freebsd_NM=nm
freebsd_CFLAGS=-pipe
freebsd_CXXFLAGS=$(freebsd_CFLAGS)
freebsd_ARFLAGS=cr
freebsd_release_CFLAGS=-O2
freebsd_release_CXXFLAGS=$(freebsd_release_CFLAGS)
freebsd_debug_CFLAGS=-g -O0
freebsd_debug_CXXFLAGS=$(freebsd_debug_CFLAGS)
freebsd_native_toolchain=freebsd_base

View File

@@ -0,0 +1,32 @@
linux_CFLAGS=-pipe
linux_CXXFLAGS=$(linux_CFLAGS)
linux_ARFLAGS=cr
linux_release_CFLAGS=-O2
linux_release_CXXFLAGS=$(linux_release_CFLAGS)
linux_debug_CFLAGS=-O1
linux_debug_CXXFLAGS=$(linux_debug_CFLAGS)
linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC
ifeq (86,$(findstring 86,$(build_arch)))
i686_linux_CC=gcc -m32
i686_linux_CXX=g++ -m32
i686_linux_AR=ar
i686_linux_RANLIB=ranlib
i686_linux_NM=nm
i686_linux_STRIP=strip
x86_64_linux_CC=gcc -m64
x86_64_linux_CXX=g++ -m64
x86_64_linux_AR=ar
x86_64_linux_RANLIB=ranlib
x86_64_linux_NM=nm
x86_64_linux_STRIP=strip
else
i686_linux_CC=$(default_host_CC) -m32
i686_linux_CXX=$(default_host_CXX) -m32
x86_64_linux_CC=$(default_host_CC) -m64
x86_64_linux_CXX=$(default_host_CXX) -m64
endif

View File

@@ -0,0 +1,11 @@
mingw32_CFLAGS=-pipe
mingw32_CXXFLAGS=$(mingw32_CFLAGS)
mingw32_ARFLAGS=cr
mingw32_release_CFLAGS=-O2
mingw32_release_CXXFLAGS=$(mingw32_release_CFLAGS)
mingw32_debug_CFLAGS=-O1
mingw32_debug_CXXFLAGS=$(mingw32_debug_CFLAGS)
mingw32_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC

165
contrib/depends/packages.md Normal file
View File

@@ -0,0 +1,165 @@
Each recipe consists of 3 main parts: defining identifiers, setting build
variables, and defining build commands.
The package "mylib" will be used here as an example
General tips:
- mylib_foo is written as $(package)_foo in order to make recipes more similar.
## Identifiers
Each package is required to define at least these variables:
```
$(package)_version:
Version of the upstream library or program. If there is no version, a
placeholder such as 1.0 can be used.
$(package)_download_path:
Location of the upstream source, without the file-name. Usually http or
ftp.
$(package)_file_name:
The upstream source filename available at the download path.
$(package)_sha256_hash:
The sha256 hash of the upstream file
```
These variables are optional:
```
$(package)_build_subdir:
cd to this dir before running configure/build/stage commands.
$(package)_download_file:
The file-name of the upstream source if it differs from how it should be
stored locally. This can be used to avoid storing file-names with strange
characters.
$(package)_dependencies:
Names of any other packages that this one depends on.
$(package)_patches:
Filenames of any patches needed to build the package
$(package)_extra_sources:
Any extra files that will be fetched via $(package)_fetch_cmds. These are
specified so that they can be fetched and verified via 'make download'.
```
## Build Variables:
After defining the main identifiers, build variables may be added or customized
before running the build commands. They should be added to a function called
$(package)_set_vars. For example:
```
define $(package)_set_vars
...
endef
```
Most variables can be prefixed with the host, architecture, or both, to make
the modifications specific to that case. For example:
```
Universal: $(package)_cc=gcc
Linux only: $(package)_linux_cc=gcc
x86_64 only: $(package)_x86_64_cc = gcc
x86_64 linux only: $(package)_x86_64_linux_cc = gcc
```
These variables may be set to override or append their default values.
```
$(package)_cc
$(package)_cxx
$(package)_objc
$(package)_objcxx
$(package)_ar
$(package)_ranlib
$(package)_libtool
$(package)_nm
$(package)_cflags
$(package)_cxxflags
$(package)_ldflags
$(package)_cppflags
$(package)_config_env
$(package)_build_env
$(package)_stage_env
$(package)_build_opts
$(package)_config_opts
```
The `*_env` variables are used to add environment variables to the respective
commands.
Many variables respect a debug/release suffix as well, in order to use them for
only the appropriate build config. For example:
```
$(package)_cflags_release = -O3
$(package)_cflags_i686_debug = -g
$(package)_config_opts_release = --disable-debug
```
These will be used in addition to the options that do not specify
debug/release. All builds are considered to be release unless DEBUG=1 is set by
the user. Other variables may be defined as needed.
## Build commands:
For each build, a unique build dir and staging dir are created. For example,
`work/build/mylib/1.0-1adac830f6e` and `work/staging/mylib/1.0-1adac830f6e`.
The following build commands are available for each recipe:
```
$(package)_fetch_cmds:
Runs from: build dir
Fetch the source file. If undefined, it will be fetched and verified
against its hash.
$(package)_extract_cmds:
Runs from: build dir
Verify the source file against its hash and extract it. If undefined, the
source is assumed to be a tarball.
$(package)_preprocess_cmds:
Runs from: build dir/$(package)_build_subdir
Preprocess the source as necessary. If undefined, does nothing.
$(package)_config_cmds:
Runs from: build dir/$(package)_build_subdir
Configure the source. If undefined, does nothing.
$(package)_build_cmds:
Runs from: build dir/$(package)_build_subdir
Build the source. If undefined, does nothing.
$(package)_stage_cmds:
Runs from: build dir/$(package)_build_subdir
Stage the build results. If undefined, does nothing.
```
The following variables are available for each recipe:
```
$(1)_staging_dir: package's destination sysroot path
$(1)_staging_prefix_dir: prefix path inside of the package's staging dir
$(1)_extract_dir: path to the package's extracted sources
$(1)_build_dir: path where configure/build/stage commands will be run
$(1)_patch_dir: path where the package's patches (if any) are found
```
Notes on build commands:
For packages built with autotools, `$($(package)_autoconf)` can be used in the
configure step to (usually) correctly configure automatically. Any
`$($(package)_config_opts`) will be appended.
Most autotools projects can be properly staged using:
```bash
$(MAKE) DESTDIR=$($(package)_staging_dir) install
```

View File

@@ -0,0 +1,22 @@
package=android_ndk
$(package)_version=17b
$(package)_download_path=https://dl.google.com/android/repository/
$(package)_file_name=android-ndk-r$($(package)_version)-linux-x86_64.zip
$(package)_sha256_hash=5dfbbdc2d3ba859fed90d0e978af87c71a91a5be1f6e1c40ba697503d48ccecd
define $(package)_set_vars
$(package)_config_opts_arm=--arch arm
$(package)_config_opts_aarch64=--arch arm64
endef
define $(package)_extract_cmds
echo $($(package)_sha256_hash) $($(1)_source_dir)/$($(package)_file_name) | sha256sum -c &&\
unzip -q $($(1)_source_dir)/$($(package)_file_name)
endef
define $(package)_stage_cmds
android-ndk-r$($(package)_version)/build/tools/make_standalone_toolchain.py --api 21 \
--install-dir $(build_prefix) --stl=libc++ $($(package)_config_opts) &&\
mv $(build_prefix) $($(package)_staging_dir)/$(host_prefix)
endef

View File

@@ -0,0 +1,47 @@
package=boost
$(package)_version=1_64_0
$(package)_download_path=https://downloads.sourceforge.net/project/boost/boost/1.64.0/
$(package)_file_name=$(package)_$($(package)_version).tar.bz2
$(package)_sha256_hash=7bcc5caace97baa948931d712ea5f37038dbb1c5d89b43ad4def4ed7cb683332
$(package)_dependencies=libiconv
$(package)_patches=fix_aroptions.patch fix_arm_arch.patch
define $(package)_set_vars
$(package)_config_opts_release=variant=release
$(package)_config_opts_debug=variant=debug
$(package)_config_opts=--layout=tagged --build-type=complete --user-config=user-config.jam
$(package)_config_opts+=threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1
$(package)_config_opts_linux=threadapi=pthread runtime-link=shared
$(package)_config_opts_android=threadapi=pthread runtime-link=static target-os=android
$(package)_config_opts_darwin=--toolset=darwin runtime-link=shared
$(package)_config_opts_mingw32=binary-format=pe target-os=windows threadapi=win32 runtime-link=static
$(package)_config_opts_x86_64_mingw32=address-model=64
$(package)_config_opts_i686_mingw32=address-model=32
$(package)_config_opts_i686_linux=address-model=32 architecture=x86
$(package)_toolset_$(host_os)=gcc
$(package)_archiver_$(host_os)=$($(package)_ar)
$(package)_toolset_darwin=darwin
$(package)_archiver_darwin=$($(package)_libtool)
$(package)_config_libraries=chrono,filesystem,program_options,system,thread,test,date_time,regex,serialization,locale
$(package)_cxxflags=-std=c++11
$(package)_cxxflags_linux=-fPIC
$(package)_cxxflags_freebsd=-fPIC
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/fix_aroptions.patch &&\
patch -p1 < $($(package)_patch_dir)/fix_arm_arch.patch &&\
echo "using $(boost_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$(boost_archiver_$(host_os))\" <arflags>\"$($(package)_arflags)\" <striper>\"$(host_STRIP)\" <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam
endef
define $(package)_config_cmds
./bootstrap.sh --without-icu --with-libraries=$(boost_config_libraries)
endef
define $(package)_build_cmds
./b2 -d2 -j2 -d1 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) stage
endef
define $(package)_stage_cmds
./b2 -d0 -j4 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) install
endef

View File

@@ -0,0 +1,10 @@
package=darwin_sdk
$(package)_version=11.1
$(package)_download_path=https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/
$(package)_file_name=MacOSX$($(package)_version).sdk.tar.xz
$(package)_sha256_hash=68797baaacb52f56f713400de306a58a7ca00b05c3dc6d58f0a8283bcac721f8
define $(package)_stage_cmds
mkdir -p $($(package)_staging_dir)/$(host_prefix)/native/SDK &&\
mv * $($(package)_staging_dir)/$(host_prefix)/native/SDK
endef

View File

@@ -0,0 +1,30 @@
package=eudev
$(package)_version=v3.2.6
$(package)_download_path=https://github.com/gentoo/eudev/archive/
$(package)_download_file=$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=a96ecb8637667897b8bd4dee4c22c7c5f08b327be45186e912ce6bc768385852
define $(package)_set_vars
$(package)_config_opts=--disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmd
$(MAKE)
endef
define $(package)_preprocess_cmds
cd $($(package)_build_subdir); autoreconf -f -i
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,28 @@
package=expat
$(package)_version=2.4.1
$(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_2_4_1
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40
define $(package)_set_vars
$(package)_config_opts=--enable-static
$(package)_config_opts=--disable-shared
$(package)_config_opts+=--prefix=$(host_prefix)
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,23 @@
package=freebsd_base
$(package)_version=11.3
$(package)_download_path=https://download.freebsd.org/ftp/releases/amd64/$($(package)_version)-RELEASE/
$(package)_download_file=base.txz
$(package)_file_name=freebsd-base-$($(package)_version).txz
$(package)_sha256_hash=4599023ac136325b86f2fddeec64c1624daa83657e40b00b2ef944c81463a4ff
define $(package)_extract_cmds
echo $($(package)_sha256_hash) $($(1)_source_dir)/$($(package)_file_name) | sha256sum -c &&\
tar xf $($(1)_source_dir)/$($(package)_file_name) ./lib/ ./usr/lib/ ./usr/include/
endef
define $(package)_build_cmds
mkdir bin &&\
echo "#!/bin/sh\n\nexec /usr/bin/clang-8 -target x86_64-unknown-freebsd$($(package)_version) --sysroot=$(host_prefix)/native $$$$""@" > bin/clang-8 &&\
echo "#!/bin/sh\n\nexec /usr/bin/clang++-8 -target x86_64-unknown-freebsd$($(package)_version) --sysroot=$(host_prefix)/native $$$$""@" > bin/clang++-8 &&\
chmod 755 bin/*
endef
define $(package)_stage_cmds
mkdir $($(package)_staging_dir)/$(host_prefix)/native &&\
mv bin lib usr $($(package)_staging_dir)/$(host_prefix)/native
endef

View File

@@ -0,0 +1,30 @@
package=graphviz
$(package)_version=2.40.1
$(package)_download_path=www.graphviz.org/pub/graphviz/stable/SOURCES/
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421
define $(package)_preprocess_cmds
./autogen.sh
endef
define $(package)_set_vars
$(package)_config_opts=--disable-shared --enable-multibye --without-purify --without-curses
$(package)_config_opts_release=--disable-debug-mode
$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
endef

View File

@@ -0,0 +1,39 @@
package=gtest
$(package)_version=1.8.1
$(package)_download_path=https://github.com/google/googletest/archive/
$(package)_download_file=release-$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c
$(package)_cxxflags=-std=c++11
$(package)_cxxflags_linux=-fPIC
define $(package)_config_cmds
cd googletest && \
CC="$(host_prefix)/native/bin/$($(package)_cc)" \
CXX="$(host_prefix)/native/bin/$($(package)_cxx)" \
AR="$(host_prefix)/native/bin/$($(package)_ar)" \
RANLIB="$(host_prefix)/native/bin/$($(package)_ranlib)" \
LIBTOOL="$(host_prefix)/native/bin/$($(package)_libtool)" \
CXXFLAGS="$($(package)_cxxflags)" \
CCFLAGS="$($(package)_ccflags)" \
CPPFLAGS="$($(package)_cppflags)" \
CFLAGS="$($(package)_cflags) $($(package)_cppflags)" \
LDLAGS="$($(package)_ldflags)" \
cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) \
-DTOOLCHAIN_PREFIX=$(host_toolchain) \
-DCMAKE_AR="$(host_prefix)/native/bin/$($(package)_ar)" \
-DCMAKE_RANLIB="$(host_prefix)/native/bin/$($(package)_ranlib)" \
-DCMAKE_CXX_FLAGS_DEBUG=ON
endef
# -DCMAKE_TOOLCHAIN_FILE=$(HOST)/share/toolchain.cmake
define $(package)_build_cmds
cd googletest && CC="$(host_prefix)/native/bin/$($(package)_cc)" $(MAKE)
endef
define $(package)_stage_cmds
mkdir $($(package)_staging_prefix_dir)/lib $($(package)_staging_prefix_dir)/include &&\
cp googletest/libgtest.a $($(package)_staging_prefix_dir)/lib/ &&\
cp googletest/libgtest_main.a $($(package)_staging_prefix_dir)/lib/ &&\
cp -a googletest/include/* $($(package)_staging_prefix_dir)/include/
endef

View File

@@ -0,0 +1,38 @@
package=hidapi
$(package)_version=0.13.1
$(package)_download_path=https://github.com/libusb/hidapi/archive/refs/tags
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3
$(package)_linux_dependencies=libusb eudev
$(package)_patches=missing_win_include.patch
define $(package)_set_vars
$(package)_config_opts=--enable-static --disable-shared
$(package)_config_opts+=--prefix=$(host_prefix)
$(package)_config_opts_linux+=libudev_LIBS="-L$(host_prefix)/lib -ludev"
$(package)_config_opts_linux+=libudev_CFLAGS=-I$(host_prefix)/include
$(package)_config_opts_linux+=libusb_LIBS="-L$(host_prefix)/lib -lusb-1.0"
$(package)_config_opts_linux+=libusb_CFLAGS=-I$(host_prefix)/include/libusb-1.0
$(package)_config_opts_linux+=--with-pic
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/missing_win_include.patch && ./bootstrap
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,27 @@
package=icu4c
$(package)_version=55.2
$(package)_download_path=https://github.com/unicode-org/icu/releases/download/release-55-2/
$(package)_file_name=$(package)-55_2-src.tgz
$(package)_sha256_hash=eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759
$(package)_patches=icu-001-dont-build-static-dynamic-twice.patch
define $(package)_set_vars
$(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DU_COMBINED_IMPLEMENTATION -fPIC -DENABLE_STATIC=YES -DPGKDATA_MODE=static"
endef
define $(package)_config_cmds
patch -p1 < $($(package)_patch_dir)/icu-001-dont-build-static-dynamic-twice.patch &&\
mkdir builda &&\
mkdir buildb &&\
cd builda &&\
sh ../source/runConfigureICU Linux &&\
make &&\
cd ../buildb &&\
sh ../source/runConfigureICU MinGW --enable-static=yes --disable-shared --disable-layout --disable-layoutex --disable-tests --disable-samples --prefix=$(host_prefix) --with-cross-build=`pwd`/../builda &&\
$(MAKE) $($(package)_build_opts)
endef
define $(package)_stage_cmds
cd buildb &&\
$(MAKE) $($(package)_build_opts) DESTDIR=$($(package)_staging_dir) install lib/*
endef

View File

@@ -0,0 +1,23 @@
package=libICE
$(package)_version=1.0.9
$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202
$(package)_dependencies=xtrans xproto
define $(package)_set_vars
$(package)_config_opts=--disable-static --disable-docs --disable-specs --without-xsltproc
$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View File

@@ -0,0 +1,23 @@
package=libSM
$(package)_version=1.2.2
$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd
$(package)_dependencies=xtrans xproto libICE
define $(package)_set_vars
$(package)_config_opts=--without-libuuid --without-xsltproc --disable-docs --disable-static
$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View File

@@ -0,0 +1,35 @@
package=libiconv
$(package)_version=1.15
$(package)_download_path=https://ftp.gnu.org/gnu/libiconv
$(package)_file_name=libiconv-$($(package)_version).tar.gz
$(package)_sha256_hash=ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178
$(package)_patches=fix-whitespace.patch
define $(package)_set_vars
$(package)_config_opts=--disable-nls
$(package)_config_opts=--enable-static
$(package)_config_opts=--disable-shared
$(package)_config_opts_linux=--with-pic
$(package)_config_opts_freebsd=--with-pic
endef
define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux/ &&\
patch -p1 < $($(package)_patch_dir)/fix-whitespace.patch
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,39 @@
package=libusb
$(package)_version=1.0.26
$(package)_download_path=https://github.com/libusb/libusb/releases/download/v$($(package)_version)
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5
define $(package)_preprocess_cmds
autoreconf -i
endef
define $(package)_set_vars
$(package)_config_opts=--disable-shared
$(package)_config_opts_linux=--with-pic --disable-udev
$(package)_config_opts_mingw32=--disable-udev
$(package)_config_opts_darwin=--disable-udev
endef
ifneq ($(host_os),darwin)
define $(package)_config_cmds
cp -f $(BASEDIR)/config.guess config.guess &&\
cp -f $(BASEDIR)/config.sub config.sub &&\
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
else
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
endif
define $(package)_build_cmd
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds cp -f lib/libusb-1.0.a lib/libusb.a
endef

View File

@@ -0,0 +1,20 @@
package=native_biplist
$(package)_version=0.9
$(package)_download_path=https://pypi.python.org/packages/source/b/biplist
$(package)_file_name=biplist-$($(package)_version).tar.gz
$(package)_sha256_hash=b57cadfd26e4754efdf89e9e37de87885f9b5c847b2615688ca04adfaf6ca604
$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
$(package)_patches=sorted_list.patch
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/sorted_list.patch
endef
define $(package)_build_cmds
python setup.py build
endef
define $(package)_stage_cmds
mkdir -p $($(package)_install_libdir) && \
python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
endef

View File

@@ -0,0 +1,25 @@
package=native_ccache
$(package)_version=3.3.4
$(package)_download_path=https://samba.org/ftp/ccache
$(package)_file_name=ccache-$($(package)_version).tar.bz2
$(package)_sha256_hash=fa9d7f38367431bc86b19ad107d709ca7ecf1574fdacca01698bdf0a47cd8567
define $(package)_set_vars
$(package)_config_opts=
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm -rf lib include
endef

View File

@@ -0,0 +1,28 @@
package=native_cctools
$(package)_version=04663295d0425abfac90a42440a7ec02d7155fea
$(package)_download_path=https://github.com/tpoechtrager/cctools-port/archive
$(package)_download_file=$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=70a7189418c2086d20c299c5d59250cf5940782c778892ccc899c66516ed240e
$(package)_build_subdir=cctools
$(package)_dependencies=native_clang native_libtapi
define $(package)_set_vars
$(package)_config_opts=--target=$(host) --disable-lto-support --with-libtapi=$(host_prefix)
$(package)_ldflags+=-Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib
$(package)_cc=$(host_prefix)/native/bin/clang
$(package)_cxx=$(host_prefix)/native/bin/clang++
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install && \
cp $($(package)_extract_dir)/cctools/misc/install_name_tool $($(package)_staging_prefix_dir)/bin/
endef

View File

@@ -0,0 +1,26 @@
package=native_cdrkit
$(package)_version=1.1.11
$(package)_download_path=https://distro.ibiblio.org/fatdog/source/600/c
$(package)_file_name=cdrkit-$($(package)_version).tar.bz2
$(package)_sha256_hash=b50d64c214a65b1a79afe3a964c691931a4233e2ba605d793eb85d0ac3652564
$(package)_patches=cdrkit-deterministic.patch
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch
endef
define $(package)_config_cmds
cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix)
endef
define $(package)_build_cmds
$(MAKE) genisoimage
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C genisoimage install
endef
define $(package)_postprocess_cmds
rm bin/isovfy bin/isoinfo bin/isodump bin/isodebug bin/devdump
endef

View File

@@ -0,0 +1,29 @@
package=native_clang
$(package)_version=9.0.0
$(package)_download_path=https://releases.llvm.org/$($(package)_version)
$(package)_download_file=clang+llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-18.04.tar.xz
$(package)_file_name=clang-llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-18.04.tar.xz
$(package)_sha256_hash=a23b082b30c128c9831dbdd96edad26b43f56624d0ad0ea9edec506f5385038d
define $(package)_extract_cmds
echo $($(package)_sha256_hash) $($(package)_source) | sha256sum -c &&\
mkdir -p toolchain/bin toolchain/lib/clang/3.5/include && \
tar --strip-components=1 -C toolchain -xf $($(package)_source) && \
rm -f toolchain/lib/libc++abi.so* && \
echo "#!/bin/sh" > toolchain/bin/$(host)-dsymutil && \
echo "exit 0" >> toolchain/bin/$(host)-dsymutil && \
chmod +x toolchain/bin/$(host)-dsymutil
endef
define $(package)_stage_cmds
cd $($(package)_extract_dir)/toolchain && \
mkdir -p $($(package)_staging_prefix_dir)/lib/clang/$($(package)_version)/include && \
mkdir -p $($(package)_staging_prefix_dir)/bin $($(package)_staging_prefix_dir)/include && \
cp bin/clang $($(package)_staging_prefix_dir)/bin/ &&\
cp -P bin/clang++ $($(package)_staging_prefix_dir)/bin/ &&\
cp lib/libLTO.so $($(package)_staging_prefix_dir)/lib/ && \
cp -rf lib/clang/$($(package)_version)/include/* $($(package)_staging_prefix_dir)/lib/clang/$($(package)_version)/include/ && \
cp bin/dsymutil $($(package)_staging_prefix_dir)/bin/$(host)-dsymutil && \
if `test -d include/c++/`; then cp -rf include/c++/ $($(package)_staging_prefix_dir)/include/; fi && \
if `test -d lib/c++/`; then cp -rf lib/c++/ $($(package)_staging_prefix_dir)/lib/; fi
endef

View File

@@ -0,0 +1,23 @@
package=native_cmake
$(package)_version=3.14.0
$(package)_version_dot=v3.14
$(package)_download_path=https://cmake.org/files/$($(package)_version_dot)/
$(package)_file_name=cmake-$($(package)_version).tar.gz
$(package)_sha256_hash=aa76ba67b3c2af1946701f847073f4652af5cbd9f141f221c97af99127e75502
define $(package)_set_vars
$(package)_config_opts=
endef
define $(package)_config_cmds
./bootstrap &&\
./configure $($(package)_config_opts)
endef
define $(package)_build_cmd
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View File

@@ -0,0 +1,17 @@
package=native_ds_store
$(package)_version=1.1.0
$(package)_download_path=https://github.com/al45tair/ds_store/archive/
$(package)_download_file=v$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=a9f4c0755c6be7224ff7029e188dd262e830bb81e801424841db9eb0780ec8ed
$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
$(package)_dependencies=native_biplist
define $(package)_build_cmds
python setup.py build
endef
define $(package)_stage_cmds
mkdir -p $($(package)_install_libdir) && \
python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
endef

View File

@@ -0,0 +1,22 @@
package=native_libdmg-hfsplus
$(package)_version=0.1
$(package)_download_path=https://github.com/theuni/libdmg-hfsplus/archive
$(package)_file_name=libdmg-hfsplus-v$($(package)_version).tar.gz
$(package)_sha256_hash=6569a02eb31c2827080d7d59001869ea14484c281efab0ae7f2b86af5c3120b3
$(package)_build_subdir=build
define $(package)_preprocess_cmds
mkdir build
endef
define $(package)_config_cmds
cmake -DCMAKE_INSTALL_PREFIX:PATH=$(build_prefix)/bin ..
endef
define $(package)_build_cmds
$(MAKE) -C dmg
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install
endef

View File

@@ -0,0 +1,28 @@
package=native_libtapi
$(package)_version=664b8414f89612f2dfd35a9b679c345aa5389026
$(package)_download_path=https://github.com/tpoechtrager/apple-libtapi/archive
$(package)_download_file=$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=62e419c12d1c9fad67cc1cd523132bc00db050998337c734c15bc8d73cc02b61
$(package)_build_subdir=build
$(package)_dependencies=native_clang
define $(package)_config_cmds
echo -n $(build_prefix) > INSTALLPREFIX; \
CC=$(host_prefix)/native/bin/clang CXX=$(host_prefix)/native/bin/clang++ \
cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) \
-DLLVM_INCLUDE_TESTS=OFF \
-DCMAKE_BUILD_TYPE=RELEASE \
-DTAPI_REPOSITORY_STRING="1100.0.11" \
-DTAPI_FULL_VERSION="11.0.0" \
-DCMAKE_CXX_FLAGS="-I $($(package)_extract_dir)/src/llvm/projects/clang/include -I $($(package)_build_dir)/projects/clang/include" \
$($(package)_extract_dir)/src/llvm
endef
define $(package)_build_cmds
$(MAKE) clangBasic && $(MAKE) libtapi
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install-libtapi install-tapi-headers
endef

View File

@@ -0,0 +1,21 @@
package=native_mac_alias
$(package)_version=1.1.0
$(package)_download_path=https://github.com/al45tair/mac_alias/archive/
$(package)_download_file=v$($(package)_version).tar.gz
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=b10cb44ecb64fc25283fae7a9cf365d2829377d84e37b9c21100aca8757509be
$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
$(package)_patches=python3.patch
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/python3.patch
endef
define $(package)_build_cmds
python setup.py build
endef
define $(package)_stage_cmds
mkdir -p $($(package)_install_libdir) && \
python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
endef

View File

@@ -0,0 +1,27 @@
package=protobuf3
$(package)_version=3.6.1
$(package)_download_path=https://github.com/protocolbuffers/protobuf/releases/download/v$($(package)_version)/
$(package)_file_name=protobuf-cpp-$($(package)_version).tar.gz
$(package)_sha256_hash=b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529
$(package)_cxxflags=-std=c++11
define $(package)_set_vars
$(package)_config_opts=--disable-shared --prefix=$(build_prefix)
$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE) -C src
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C src install
endef
define $(package)_postprocess_cmds
rm lib/libprotoc.a
endef

View File

@@ -0,0 +1,63 @@
package=ncurses
$(package)_version=6.1
$(package)_download_path=https://ftp.gnu.org/gnu/ncurses
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17
$(package)_patches=fallback.c
define $(package)_set_vars
$(package)_build_opts=CC="$($(package)_cc)"
$(package)_config_env=cf_cv_ar_flags=""
$(package)_config_opts=--prefix=$(host_prefix)
$(package)_config_opts+=--disable-shared
$(package)_config_opts+=--with-build-cc=gcc
$(package)_config_opts+=--without-debug
$(package)_config_opts+=--without-ada
$(package)_config_opts+=--without-cxx-binding
$(package)_config_opts+=--without-cxx
$(package)_config_opts+=--without-ticlib
$(package)_config_opts+=--without-tic
$(package)_config_opts+=--without-progs
$(package)_config_opts+=--without-tests
$(package)_config_opts+=--without-tack
$(package)_config_opts+=--without-manpages
$(package)_config_opts+=--with-termlib=tinfo
$(package)_config_opts+=--disable-tic-depends
$(package)_config_opts+=--disable-big-strings
$(package)_config_opts+=--disable-ext-colors
$(package)_config_opts+=--enable-pc-files
$(package)_config_opts+=--host=$(HOST)
$(pacakge)_config_opts+=--without-shared
$(pacakge)_config_opts+=--without-pthread
$(pacakge)_config_opts+=--disable-rpath
$(pacakge)_config_opts+=--disable-colorfgbg
$(pacakge)_config_opts+=--disable-ext-mouse
$(pacakge)_config_opts+=--disable-symlinks
$(pacakge)_config_opts+=--enable-warnings
$(pacakge)_config_opts+=--enable-assertions
$(package)_config_opts+=--with-default-terminfo-dir=/etc/_terminfo_
$(package)_config_opts+=--with-terminfo-dirs=/etc/_terminfo_
$(pacakge)_config_opts+=--enable-database
$(pacakge)_config_opts+=--enable-sp-funcs
$(pacakge)_config_opts+=--disable-term-driver
$(pacakge)_config_opts+=--enable-interop
$(pacakge)_config_opts+=--enable-widec
$(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC"
endef
define $(package)_preprocess_cmds
cp $($(package)_patch_dir)/fallback.c ncurses
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE) $($(package)_build_opts) V=1
endef
define $(package)_stage_cmds
$(MAKE) install.libs DESTDIR=$($(package)_staging_dir)
endef

View File

@@ -0,0 +1,69 @@
package=openssl
$(package)_version=1.1.1t
$(package)_download_path=https://www.openssl.org/source
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=8dee9b24bdb1dcbf0c3d1e9b02fb8f6bf22165e807f45adeb7c9677536859d3b
define $(package)_set_vars
$(package)_config_env=AR="$($(package)_ar)" ARFLAGS=$($(package)_arflags) RANLIB="$($(package)_ranlib)" CC="$($(package)_cc)"
$(package)_config_env_android=ANDROID_NDK_HOME="$(host_prefix)/native" PATH="$(host_prefix)/native/bin" CC=clang AR=ar RANLIB=ranlib
$(package)_build_env_android=ANDROID_NDK_HOME="$(host_prefix)/native"
$(package)_config_opts=--prefix=$(host_prefix) --openssldir=$(host_prefix)/etc/openssl
$(package)_config_opts+=no-capieng
$(package)_config_opts+=no-dso
$(package)_config_opts+=no-dtls1
$(package)_config_opts+=no-ec_nistp_64_gcc_128
$(package)_config_opts+=no-gost
$(package)_config_opts+=no-heartbeats
$(package)_config_opts+=no-md2
$(package)_config_opts+=no-rc5
$(package)_config_opts+=no-rdrand
$(package)_config_opts+=no-rfc3779
$(package)_config_opts+=no-sctp
$(package)_config_opts+=no-shared
$(package)_config_opts+=no-ssl-trace
$(package)_config_opts+=no-ssl2
$(package)_config_opts+=no-ssl3
$(package)_config_opts+=no-unit-test
$(package)_config_opts+=no-weak-ssl-ciphers
$(package)_config_opts+=no-zlib
$(package)_config_opts+=no-zlib-dynamic
$(package)_config_opts+=$($(package)_cflags) $($(package)_cppflags)
$(package)_config_opts_linux=-fPIC -Wa,--noexecstack
$(package)_config_opts_freebsd=-fPIC -Wa,--noexecstack
$(package)_config_opts_x86_64_linux=linux-x86_64
$(package)_config_opts_i686_linux=linux-generic32
$(package)_config_opts_arm_linux=linux-generic32
$(package)_config_opts_aarch64_linux=linux-generic64
$(package)_config_opts_arm_android=--static android-arm
$(package)_config_opts_aarch64_android=--static android-arm64
$(package)_config_opts_aarch64_darwin=darwin64-arm64-cc
$(package)_config_opts_riscv64_linux=linux-generic64
$(package)_config_opts_mipsel_linux=linux-generic32
$(package)_config_opts_mips_linux=linux-generic32
$(package)_config_opts_powerpc_linux=linux-generic32
$(package)_config_opts_x86_64_darwin=darwin64-x86_64-cc
$(package)_config_opts_x86_64_mingw32=mingw64
$(package)_config_opts_i686_mingw32=mingw
$(package)_config_opts_x86_64_freebsd=BSD-x86_64
endef
define $(package)_preprocess_cmds
sed -i.old 's|"engines", "apps", "test", "util", "tools", "fuzz"|"engines", "tools"|' Configure
endef
define $(package)_config_cmds
./Configure $($(package)_config_opts)
endef
define $(package)_build_cmds
$(MAKE) build_libs
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install_sw
endef
define $(package)_postprocess_cmds
rm -rf share bin etc
endef

View File

@@ -0,0 +1,38 @@
packages:=boost openssl zeromq libiconv expat unbound
# ccache is useless in gitian builds
ifneq ($(GITIAN),1)
native_packages := native_ccache
endif
hardware_packages := hidapi protobuf libusb
hardware_native_packages := native_protobuf
android_native_packages = android_ndk
android_packages = ncurses readline sodium
darwin_native_packages = $(hardware_native_packages)
darwin_packages = ncurses readline sodium $(hardware_packages)
# not really native...
freebsd_native_packages = freebsd_base
freebsd_packages = ncurses readline sodium
linux_packages = eudev ncurses readline sodium $(hardware_packages)
linux_native_packages = $(hardware_native_packages)
ifeq ($(build_tests),ON)
packages += gtest
endif
ifneq ($(host_arch),riscv64)
linux_packages += unwind
endif
mingw32_packages = icu4c sodium $(hardware_packages)
mingw32_native_packages = $(hardware_native_packages)
ifneq ($(build_os),darwin)
darwin_native_packages += darwin_sdk native_clang native_cctools native_libtapi
endif

View File

@@ -0,0 +1,36 @@
package=protobuf
$(package)_version=$(native_$(package)_version)
$(package)_download_path=$(native_$(package)_download_path)
$(package)_file_name=$(native_$(package)_file_name)
$(package)_sha256_hash=$(native_$(package)_sha256_hash)
$(package)_dependencies=native_$(package)
$(package)_cxxflags=-std=c++11
$(package)_patches=visibility.patch
define $(package)_set_vars
$(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc
$(package)_config_opts_linux=--with-pic
endef
define $(package)_preprocess_cmds
patch -p0 < $($(package)_patch_dir)/visibility.patch
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE) -C src libprotobuf.la
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-libLTLIBRARIES install-nobase_includeHEADERS &&\
$(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA
endef
define $(package)_postprocess_cmds
rm lib/libprotoc.a &&\
rm lib/*.la
endef

View File

@@ -0,0 +1,29 @@
package=readline
$(package)_version=8.0
$(package)_download_path=https://ftp.gnu.org/gnu/readline
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461
$(package)_dependencies=ncurses
define $(package)_set_vars
$(package)_build_opts=CC="$($(package)_cc)"
$(package)_config_opts+=--prefix=$(host_prefix)
$(package)_config_opts+=--exec-prefix=$(host_prefix)
$(package)_config_opts+=--host=$(HOST)
$(package)_config_opts+=--disable-shared --with-curses
$(package)_config_opts_release=--disable-debug-mode
$(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC"
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE) $($(package)_build_opts)
endef
define $(package)_stage_cmds
$(MAKE) install DESTDIR=$($(package)_staging_dir) prefix=$(host_prefix) exec-prefix=$(host_prefix)
endef

View File

@@ -0,0 +1,34 @@
package=sodium
$(package)_version=1.0.18
$(package)_download_path=https://download.libsodium.org/libsodium/releases/
$(package)_file_name=libsodium-$($(package)_version).tar.gz
$(package)_sha256_hash=6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1
$(package)_patches=disable-glibc-getrandom-getentropy.patch fix-whitespace.patch
define $(package)_set_vars
$(package)_config_opts=--enable-static --disable-shared
$(package)_config_opts+=--prefix=$(host_prefix)
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/disable-glibc-getrandom-getentropy.patch &&\
autoconf &&\
patch -p1 < $($(package)_patch_dir)/fix-whitespace.patch
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,35 @@
package=unbound
$(package)_version=1.15.0
$(package)_download_path=https://www.nlnetlabs.nl/downloads/$(package)/
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=a480dc6c8937447b98d161fe911ffc76cfaffa2da18788781314e81339f1126f
$(package)_dependencies=openssl expat
$(package)_patches=disable-glibc-reallocarray.patch
define $(package)_set_vars
$(package)_config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$(host_prefix) --with-libexpat=$(host_prefix) --with-ssl=$(host_prefix) --with-libevent=no --without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only
$(package)_config_opts_linux=--with-pic
$(package)_config_opts_w64=--enable-static-exe --sysconfdir=/etc --prefix=$(host_prefix) --target=$(host_prefix)
$(package)_build_opts_mingw32=LDFLAGS="$($(package)_ldflags) -lpthread"
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/disable-glibc-reallocarray.patch &&\
autoconf
endef
define $(package)_config_cmds
$($(package)_autoconf) ac_cv_func_getentropy=no
endef
define $(package)_build_cmds
$(MAKE) $($(package)_build_opts)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
endef

View File

@@ -0,0 +1,29 @@
package=unwind
$(package)_version=1.5.0
$(package)_download_path=https://download.savannah.nongnu.org/releases/libunwind
$(package)_file_name=lib$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017
$(package)_patches=fix_obj_order.patch
define $(package)_preprocess_cmds
patch -p0 < $($(package)_patch_dir)/fix_obj_order.patch
endef
define $(package)_config_cmds
cp -f $(BASEDIR)/config.guess config/config.guess &&\
cp -f $(BASEDIR)/config.sub config/config.sub &&\
$($(package)_autoconf) --disable-shared --enable-static --disable-tests --disable-documentation AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef
define $(package)_postprocess_cmds
rm lib/*.la
endef

View File

@@ -0,0 +1,21 @@
package=xproto
$(package)_version=7.0.26
$(package)_download_path=https://xorg.freedesktop.org/releases/individual/proto
$(package)_file_name=$(package)-$($(package)_version).tar.bz2
$(package)_sha256_hash=636162c1759805a5a0114a369dffdeccb8af8c859ef6e1445f26a4e6e046514f
define $(package)_set_vars
$(package)_config_opts=--disable-shared
endef
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE)
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install
endef

View File

@@ -0,0 +1,35 @@
package=zeromq
$(package)_version=4.3.4
$(package)_download_path=https://github.com/zeromq/libzmq/releases/download/v$($(package)_version)/
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5
$(package)_patches=06aba27b04c5822cb88a69677382a0f053367143.patch
define $(package)_set_vars
$(package)_config_opts=--without-documentation --disable-shared --without-libsodium --disable-curve
$(package)_config_opts_linux=--with-pic
$(package)_config_opts_freebsd=--with-pic
$(package)_cxxflags=-std=c++11
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/06aba27b04c5822cb88a69677382a0f053367143.patch
endef
define $(package)_config_cmds
$($(package)_autoconf) AR_FLAGS=$($(package)_arflags)
endef
define $(package)_build_cmds
$(MAKE) src/libzmq.la
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-includeHEADERS install-pkgconfigDATA
endef
define $(package)_postprocess_cmds
rm -rf bin share &&\
rm lib/*.la
endef

View File

@@ -0,0 +1,11 @@
--- boost_1_64_0/tools/build/src/tools/darwin.jam.O 2017-04-17 03:22:26.000000000 +0100
+++ boost_1_64_0/tools/build/src/tools/darwin.jam 2022-05-04 17:26:29.984464447 +0000
@@ -505,7 +505,7 @@
if $(instruction-set) {
options = -arch$(_)$(instruction-set) ;
} else {
- options = -arch arm ;
+# options = -arch arm ;
}
}
}

View File

@@ -0,0 +1,28 @@
--- boost_1_64_0/tools/build/src/tools/gcc.jam.O 2017-04-17 03:22:26.000000000 +0100
+++ boost_1_64_0/tools/build/src/tools/gcc.jam 2019-11-15 15:46:16.957937137 +0000
@@ -243,6 +243,8 @@
{
ECHO notice: using gcc archiver :: $(condition) :: $(archiver[1]) ;
}
+ local arflags = [ feature.get-values <arflags> : $(options) ] ;
+ toolset.flags gcc.archive .ARFLAGS $(condition) : $(arflags) ;
# - Ranlib.
local ranlib = [ common.get-invocation-command gcc
@@ -970,6 +972,7 @@
# logic in intel-linux, but that is hardly worth the trouble as on Linux, 'ar'
# is always available.
.AR = ar ;
+.ARFLAGS = rc ;
.RANLIB = ranlib ;
toolset.flags gcc.archive AROPTIONS <archiveflags> ;
@@ -1011,7 +1014,7 @@
#
actions piecemeal archive
{
- "$(.AR)" $(AROPTIONS) rc "$(<)" "$(>)"
+ "$(.AR)" $(AROPTIONS) $(.ARFLAGS) "$(<)" "$(>)"
"$(.RANLIB)" "$(<)"
}

View File

@@ -0,0 +1,67 @@
This file is part of MXE. See LICENSE.md for licensing information.
Contains ad hoc patches for cross building.
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Fri, 12 Aug 2016 02:01:20 +1000
Subject: [PATCH 1/3] fix windres invocation options
windres doesn't recognise various gcc flags like -mms-bitfields,
-fopenmp, -mthreads etc. (basically not `-D` or `-I`)
diff --git a/Modules/Platform/Windows-windres.cmake b/Modules/Platform/Windows-windres.cmake
index 1111111..2222222 100644
--- a/Modules/Platform/Windows-windres.cmake
+++ b/Modules/Platform/Windows-windres.cmake
@@ -1 +1 @@
-set(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> -O coff <DEFINES> <INCLUDES> <FLAGS> <SOURCE> <OBJECT>")
+set(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> -O coff <DEFINES> <INCLUDES> <SOURCE> <OBJECT>")
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Tue, 25 Jul 2017 20:34:56 +1000
Subject: [PATCH 2/3] add option to disable -isystem
taken from (not accepted):
https://gitlab.kitware.com/cmake/cmake/merge_requests/895
see also:
https://gitlab.kitware.com/cmake/cmake/issues/16291
https://gitlab.kitware.com/cmake/cmake/issues/16919
diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake
index 1111111..2222222 100644
--- a/Modules/Compiler/GNU.cmake
+++ b/Modules/Compiler/GNU.cmake
@@ -42,7 +42,7 @@ macro(__compiler_gnu lang)
string(APPEND CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT " -O2 -g -DNDEBUG")
set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
- if(NOT APPLE OR NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 4) # work around #4462
+ if(NOT APPLE OR NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 4 AND (NOT MXE_DISABLE_INCLUDE_SYSTEM_FLAG)) # work around #4462
set(CMAKE_INCLUDE_SYSTEM_FLAG_${lang} "-isystem ")
endif()
endmacro()
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Tue, 15 Aug 2017 15:25:06 +1000
Subject: [PATCH 3/3] add CPACK_NSIS_EXECUTABLE variable
diff --git a/Source/CPack/cmCPackNSISGenerator.cxx b/Source/CPack/cmCPackNSISGenerator.cxx
index 1111111..2222222 100644
--- a/Source/CPack/cmCPackNSISGenerator.cxx
+++ b/Source/CPack/cmCPackNSISGenerator.cxx
@@ -384,7 +384,9 @@ int cmCPackNSISGenerator::InitializeInternal()
}
#endif
- nsisPath = cmSystemTools::FindProgram("makensis", path, false);
+ this->SetOptionIfNotSet("CPACK_NSIS_EXECUTABLE", "makensis");
+ nsisPath = cmSystemTools::FindProgram(
+ this->GetOption("CPACK_NSIS_EXECUTABLE"), path, false);
if (nsisPath.empty()) {
cmCPackLogger(

View File

@@ -0,0 +1,21 @@
From a77b066311da42ed7654e39c0356a3b951b2e296 Mon Sep 17 00:00:00 2001
From: selsta <selsta@sent.at>
Date: Wed, 10 Nov 2021 02:28:54 +0100
Subject: [PATCH] windows: add missing include for mingw32
---
windows/hid.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/windows/hid.c b/windows/hid.c
index 24756a4..6d8394c 100644
--- a/windows/hid.c
+++ b/windows/hid.c
@@ -33,6 +33,7 @@ typedef LONG NTSTATUS;
#endif
#ifdef __MINGW32__
+#include <devpropdef.h>
#include <ntdef.h>
#include <winbase.h>
#endif

View File

@@ -0,0 +1,37 @@
Don't build object files twice
When passed --enable-static and --enable-shared, icu will generate
both a shared and a static version of its libraries.
However, in order to do so, it builds each and every object file
twice: once with -fPIC (for the shared library), and once without
-fPIC (for the static library). While admittedly building -fPIC for a
static library generates a slightly suboptimal code, this is what all
the autotools-based project are doing. They build each object file
once, and they use it for both the static and shared libraries.
icu builds the object files for the shared library as .o files, and
the object files for static library as .ao files. By simply changing
the suffix of object files used for static libraries to ".o", we tell
icu to use the ones built for the shared library (i.e, with -fPIC),
and avoid the double build of icu.
On a fast build server, this brings the target icu build from
3m41.302s down to 1m43.926s (approximate numbers: some other builds
are running on the system at the same time).
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/source/config/mh-linux
===================================================================
--- a/source/config/mh-linux
+++ b/source/config/mh-linux
@@ -38,7 +38,7 @@
## Shared object suffix
SO = so
## Non-shared intermediate object suffix
-STATIC_O = ao
+STATIC_O = o
## Compilation rules
%.$(STATIC_O): $(srcdir)/%.c

View File

@@ -0,0 +1,13 @@
diff --git a/preload/configure b/preload/configure
index aab5c77..e20b8f0 100755
--- a/preload/configure
+++ b/preload/configure
@@ -588,7 +588,7 @@ MAKEFLAGS=
PACKAGE_NAME='libiconv'
PACKAGE_TARNAME='libiconv'
PACKAGE_VERSION='0'
-PACKAGE_STRING='libiconv 0'
+PACKAGE_STRING='libiconv0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''

View File

@@ -0,0 +1,29 @@
--- a/biplist/__init__.py 2014-10-26 19:03:11.000000000 +0000
+++ b/biplist/__init__.py 2016-07-19 19:30:17.663521999 +0000
@@ -541,7 +541,7 @@
return HashableWrapper(n)
elif isinstance(root, dict):
n = {}
- for key, value in iteritems(root):
+ for key, value in sorted(iteritems(root)):
n[self.wrapRoot(key)] = self.wrapRoot(value)
return HashableWrapper(n)
elif isinstance(root, list):
@@ -616,7 +616,7 @@
elif isinstance(obj, dict):
size = proc_size(len(obj))
self.incrementByteCount('dictBytes', incr=1+size)
- for key, value in iteritems(obj):
+ for key, value in sorted(iteritems(obj)):
check_key(key)
self.computeOffsets(key, asReference=True)
self.computeOffsets(value, asReference=True)
@@ -714,7 +714,7 @@
keys = []
values = []
objectsToWrite = []
- for key, value in iteritems(obj):
+ for key, value in sorted(iteritems(obj)):
keys.append(key)
values.append(value)
for key in keys:

Some files were not shown because too many files have changed in this diff Show More