Commit Graph

1957 Commits

Author SHA1 Message Date
luigi1111 34bb78956f Re-add s to rangesigs
Whoops.
2016-09-01 13:53:53 -05:00
luigi1111 dbf017a5f7 Fix some rct tx size calculations
Some variance is still expected
2016-09-01 13:14:31 -05:00
Riccardo Spagni c09daf2d40 Merge pull request #1029
f1d87c8 simplewallet: add magic and public keys to key image export file (moneromooo-monero)
f4e894a simplewallet: make the key image export format binary (moneromooo-monero)
2016-09-01 17:11:49 +02:00
moneromooo-monero f1d87c8064 simplewallet: add magic and public keys to key image export file
This ensures it's hard to mix files up
2016-09-01 11:32:44 +01:00
moneromooo-monero f4e894a526 simplewallet: make the key image export format binary
Saves on space, and on some pointless hex conversions
2016-09-01 11:04:53 +01:00
Riccardo Spagni e0d78858e4 Merge pull request #1022
b8c03a5 Remove blocks_per_sync limits (Howard Chu)
2016-09-01 11:32:27 +02:00
Riccardo Spagni 27c8713f56 Merge pull request #1027
85dc0ce wallet: sanity check on histogram response (moneromooo-monero)
2016-09-01 11:31:58 +02:00
Riccardo Spagni badd77068b Merge pull request #1021
1d5ba65 Fix incorrect help usage for the threads option to start_mining (Quanah Gibson-Mount)
2016-09-01 11:29:57 +02:00
Riccardo Spagni d3994f1df0 Merge pull request #1018
6cf8ca2 core: faster find_blockchain_supplement (moneromooo-monero)
2016-09-01 11:29:22 +02:00
Riccardo Spagni e858c4c745 Merge pull request #1016
3112e24 wallet: interpret 0 fee multiplier as default for sweep_all too (moneromooo-monero)
2016-09-01 11:28:29 +02:00
Riccardo Spagni e33e74a69b Merge pull request #1012
c2941cb Show correct amount of days behind/ahead while syncing (tobiasw2)
2016-09-01 11:26:58 +02:00
Riccardo Spagni 9b579773d7 Merge pull request #1007
1de812a cmake: merge libs via virtual object libraries (redfish)
a7498ad cmake: comply with the new policy CMP0026 (redfish)
2016-09-01 11:21:38 +02:00
moneromooo-monero 85dc0ce3a5 wallet: sanity check on histogram response 2016-09-01 09:04:45 +01:00
moneromooo-monero 6cf8ca2a7f core: faster find_blockchain_supplement
Since this queries block heights for blocks that may or may not
exist, queries for non existing blocks would throw an exception,
and that would slow down the loop a lot. 7 seconds to go through
a 30 hash list.

Fix this by adding an optional return block height to block_exists
and using this instead. Actual errors will still throw an
exception.

This also cuts down on log exception spam.
2016-08-31 10:03:32 +01:00
redfish 1de812a92a cmake: merge libs via virtual object libraries
CMake issued a warming about policy CMP0026: access of LOCATION
target property at config time was disallowed. Offending code
was the code that merged static libraries to generate
libwallet_merged.a.

This patch does that same merge task in a much simpler way. And,
since it doesn't violate the policy, the warning went away.
2016-08-30 23:01:48 -04:00
Howard Chu b8c03a5f10 Remove blocks_per_sync limits
The code used to cap at 5000 blocks per sync. It also treated 0 as 1.
Remove these checks; if specified as 0 do no periodic syncs at all.
Then the user is responsible for syncing in some external process.
2016-08-31 00:00:19 +01:00
Quanah Gibson-Mount 1d5ba65f3d Fix incorrect help usage for the threads option to start_mining 2016-08-30 14:59:28 -07:00
tobiasw2 c2941cb30a Show correct amount of days behind/ahead while syncing 2016-08-30 23:50:45 +02:00
moneromooo-monero 3112e24aa7 wallet: interpret 0 fee multiplier as default for sweep_all too 2016-08-30 13:19:20 +01:00
Riccardo Spagni c3ba844f03 Merge pull request #1014
1cdba42 db_lmdb: fix reorg with "halfway rct" coinbase outputs (moneromooo-monero)
2016-08-30 00:10:06 +02:00
moneromooo-monero 1cdba42a77 db_lmdb: fix reorg with "halfway rct" coinbase outputs 2016-08-29 22:44:17 +01:00
moneromooo-monero 73b9b4ba34 wallet: fix not finding enough rct fake outputs
If picking coinbase outputs, those are locked for a longer time
than other outputs, so we ask for more of those
2016-08-29 20:51:21 +01:00
Howard Chu 5bba2fdbb0 More for PR#999 2016-08-29 15:58:56 +01:00
moneromooo-monero adca903589 wallet_rpc_server: return payment id in make_integrated_address RPC
It is useful, especially when requesting a random one
2016-08-29 12:18:22 +01:00
Riccardo Spagni c915bffa51 Merge pull request #1002
91ca0b4 core: allow empty global indices for txes with empty vout (moneromooo-monero)
2016-08-29 10:42:14 +02:00
moneromooo-monero 91ca0b4065 core: allow empty global indices for txes with empty vout 2016-08-29 09:28:32 +01:00
Riccardo Spagni f5b802e684 Merge pull request #999
dc411ea Change default db-sync-mode to fast, not fastest (Howard Chu)
2016-08-28 22:50:18 +02:00
moneromooo-monero 887db9f936 blockchain: testnet heights for v3, v4, and v5 2016-08-28 21:30:54 +01:00
moneromooo-monero f24ab58d18 ringct: remove unused code 2016-08-28 21:30:53 +01:00
moneromooo-monero b38452bd55 ringct: pass structure by const ref, not value 2016-08-28 21:30:51 +01:00
moneromooo-monero fd11271eea ringct: use memcpy/memset instead of handwritten loop where appropriate 2016-08-28 21:30:49 +01:00
moneromooo-monero 5d38206fcc ringct: remove spurious copies 2016-08-28 21:30:47 +01:00
moneromooo-monero 16732a85d7 rct: faster Cryptonote/rct conversions 2016-08-28 21:30:45 +01:00
moneromooo-monero fbd7c359ee wallet: fix some "may be used uninitialized" warnings
The compiler can't always work out the _found booleans are
set iff the value is initialized.
2016-08-28 21:30:44 +01:00
moneromooo-monero 4a41dd4068 wallet: do not generate 0 change 2016-08-28 21:30:42 +01:00
moneromooo-monero a0925e628e core: use full rct signatures if just one input
It is slightly smaller, but requires all rings to have the real
input on the same index, so can only be used for single input txes.
2016-08-28 21:30:40 +01:00
moneromooo-monero 94fd881f74 rct: early out on failure on verRange 2016-08-28 21:30:38 +01:00
moneromooo-monero 45349b6f7c wallet: do not ask for duplicate histograms 2016-08-28 21:30:36 +01:00
moneromooo-monero b951bc8780 wallet: transfer_selected_rct now also selects fake outs 2016-08-28 21:30:34 +01:00
moneromooo-monero 4f887dea6e increase minimum mixin to 4 on hard fork 5 2016-08-28 21:30:33 +01:00
moneromooo-monero 0815c72df7 core: allow v1 txes after HF 5 when sweeping unmixable outputs 2016-08-28 21:30:31 +01:00
moneromooo-monero 074e602609 ringct: use Cryptonote serialization to hash non prunable data 2016-08-28 21:30:28 +01:00
moneromooo-monero c3b3260ae5 New "Halfway RingCT" outputs for coinbase transactions
When RingCT is enabled, outputs from coinbase transactions
are created as a single output, and stored as RingCT output,
with a fake mask. Their amount is not hidden on the blockchain
itself, but they are then able to be used as fake inputs in
a RingCT ring. Since the output amounts are hidden, their
"dustiness" is not an obstacle anymore to mixing, and this
makes the coinbase transactions a lot smaller, as well as
helping the TXO set to grow more slowly.

Also add a new "Null" type of rct signature, which decreases
the size required when no signatures are to be stored, as
in a coinbase tx.
2016-08-28 21:30:26 +01:00
moneromooo-monero 6f526cdff8 rct: log why verification fails
and remove some unnecessary variables in the checking code
2016-08-28 21:30:23 +01:00
moneromooo-monero d4b8991e44 rct: serialize txnFee as varint 2016-08-28 21:30:21 +01:00
moneromooo-monero d4b62a1e29 rct amount key modified as per luigi1111's recommendations
This allows the key to be not the same for two outputs sent to
the same address (eg, if you pay yourself, and also get change
back). Also remove the key amounts lists and return parameters
since we don't actually generate random ones, so we don't need
to save them as we can recalculate them when needed if we have
the correct keys.
2016-08-28 21:30:19 +01:00
moneromooo-monero 93f5c625f0 rct: rework v2 txes into prunable and non prunable data
Nothing is pruned, but this allows easier changes later.
2016-08-28 21:30:18 +01:00
moneromooo-monero d93746b6d3 rct: rework the verification preparation process
The whole rct data apart from the MLSAGs is now included in
the signed message, to avoid malleability issues.

Instead of passing the data that's not serialized as extra
parameters to the verification API, the transaction is modified
to fill all that information. This means the transaction can
not be const anymore, but it cleaner in other ways.
2016-08-28 21:30:16 +01:00
moneromooo-monero 3ab2ab3e76 rct: change the simple flag to a type
for future expansion
2016-08-28 21:30:14 +01:00
Shen Noether c5be4b0bea rct: avoid the need for the last II element
This element is used in the generation of the MLSAG, but isn't
needed in verification.
Also misc changes in the cryptonote code to match, by mooo.
2016-08-28 21:30:12 +01:00