Riccardo Spagni
cebbcf0f64
fix v5 fork date description
2016-09-18 19:35:36 +02:00
Riccardo Spagni
eb60fa2cff
update version
2016-09-18 19:20:29 +02:00
Riccardo Spagni
c41098aacf
updated fork heights for v4 and v5
2016-09-18 19:18:16 +02:00
Riccardo Spagni
c69b8a188b
update block headers
2016-09-18 19:05:47 +02:00
Riccardo Spagni
f148af235a
add checkpoints
2016-09-18 18:40:43 +02:00
Riccardo Spagni
6b744c349f
Merge pull request #1098
...
1dd5b0b
wallet: keep change dest separate from other dests (moneromooo-monero)
2016-09-18 17:42:32 +02:00
Riccardo Spagni
a6914c140c
Merge pull request #1097
...
5f5d727
wallet: fix empty tx in corner case sending nothing (moneromooo-monero)
2016-09-18 17:42:10 +02:00
Riccardo Spagni
8a274eab3f
switch wallet API from std thread/mutex to boost
2016-09-18 17:37:47 +02:00
moneromooo-monero
1dd5b0b7df
wallet: keep change dest separate from other dests
...
This fixes misreporting of amount/fee in rct txes, as the rct
tx construction code was lumping all dests (whether change or
not) in the same dests vector, while the pre-rct code was
keeping it separate.
2016-09-18 12:04:23 +01:00
moneromooo-monero
5f5d7279b6
wallet: fix empty tx in corner case sending nothing
2016-09-18 10:44:32 +01:00
Riccardo Spagni
4a03a8a1da
Merge pull request #1094
...
06bb692
cmake: support BUILD_SHARED_LIBS built-in option (redfish)
e1c7af3
cmake: transitive deps and remove deprecated LINK_* (redfish)
54010b9
crypto: armv7: slow-hash: remove redundant source include (redfish)
2016-09-18 11:44:08 +02:00
Riccardo Spagni
14f88f6b98
Merge pull request #1093
...
e86c5b9
miner: do not try to save config if the path isn't set (moneromooo-monero)
2016-09-18 11:40:52 +02:00
Riccardo Spagni
35cdbe2eb2
Merge pull request #1089
...
368485d
simplewallet: do not expose the details of tx splitting to the user (moneromooo-monero)
2016-09-18 11:36:30 +02:00
moneromooo-monero
e86c5b9b53
miner: do not try to save config if the path isn't set
...
This saves on an exception dump when trying to write to /
after finding a block.
2016-09-18 09:57:42 +01:00
redfish
06bb6923c3
cmake: support BUILD_SHARED_LIBS built-in option
...
Support building internal libraries as shared. This reduces
development time by eliminating the need to re-link all
binaries every time non-interface code in the library changes.
Instead, can hack on libxyz, then `make libxyz`, and re-run
monerod.
By default BUILD_SHARED_LIBS is OFF in release build type,
and ON in debug build type, but can be overriden with -D.
2016-09-18 02:56:26 -04:00
redfish
e1c7af35d4
cmake: transitive deps and remove deprecated LINK_*
...
Keep the immediate direct deps at the library that depends on them,
declare deps as PUBLIC so that targets that link against that library
get the library's deps as transitive deps.
Break dep cycle between blockchain_db <-> crytonote_core.
No code refactoring, just hide cycle from cmake so that
it doesn't complain (cycles are allowed only between
static libs, not shared libs).
This is in preparation for supproting BUILD_SHARED_LIBS cmake
built-in option for building internal libs as shared.
2016-09-18 02:56:26 -04:00
redfish
54010b97b4
crypto: armv7: slow-hash: remove redundant source include
...
aesb.c is already present in libcrypto as a standalone object.
Tested: builds and runs fine on armv7, static and dynamic.
2016-09-18 02:56:26 -04:00
moneromooo-monero
368485d518
simplewallet: do not expose the details of tx splitting to the user
...
They're confusing, as people think it reports their balance.
2016-09-17 22:23:03 +01:00
moneromooo-monero
925086346a
simplewallet: fix wrong amount in show_transfers for pending transactions
...
Change was not taken into consideration
2016-09-17 17:18:24 +01:00
Riccardo Spagni
a1e6fb8243
Merge pull request #1080
...
423776f
daemon: log version when starting (moneromooo-monero)
2016-09-17 07:48:46 +02:00
moneromooo-monero
423776f9b1
daemon: log version when starting
...
Helps with investigating bug reports
2016-09-16 20:47:52 +01:00
moneromooo-monero
9c7b0cb28e
wallet: change priority/fee to ArticMine's recommendation
...
We keep 1, 2, 3 multipliers till the fee decrase from 0.01/kB
to 0.002/kB, where we start using 1, 20, 166 multipliers.
This ensures the higher multiplier will compensate for the
block reward penalty when pushing past 100% of the past median.
The fee-multiplier wallet setting is now rename to priority,
since it keeps its [0..3] range, but maps to different multiplier
values.
2016-09-16 11:50:52 +01:00
Riccardo Spagni
e06530e2d9
Merge pull request #1077
...
69b5918
Add ARMv8-A AES support (Howard Chu)
2016-09-16 08:42:59 +02:00
Howard Chu
69b59186f3
Add ARMv8-A AES support
...
More than twice as fast as plain C code. Note that both ARMv7 and
ARMv8 can be further improved with better use of NEON.
Also tweak ARMv7 multiplier
2016-09-16 01:45:49 +01:00
rckngOpossum
e29e8b1b99
compile errors fixed when PER_BLOCK_CHECKPOINT not defined
2016-09-15 15:55:07 -05:00
rckngOpossum
e49c161987
compile errors fixed when DEBUG_CREATE_BLOCK_TEMPLATE defined
2016-09-15 15:36:16 -05:00
Riccardo Spagni
7c899ec33a
Merge pull request #1074
...
cd01bae
Decrease minimum fee from 0.01/kB to 0.002/kB (moneromooo-monero)
2016-09-15 15:23:49 +02:00
Riccardo Spagni
d4a533a800
Merge pull request #1068
...
a5af33d
Add libminiupnpc and libunwind to snap. (Casey Marshall)
823843e
Fix portability issues discovered with fresh snap install. (Casey Marshall)
0a56d83
Add snap packaging. (Casey Marshall)
2016-09-15 15:20:38 +02:00
Riccardo Spagni
ce53674520
Merge pull request #1067
...
70b78bb
wallet: fix misdetection of duplicates (moneromooo-monero)
7d413f6
rct: rework serialization to avoid storing vector sizes (moneromooo-monero)
0ce79ef
core: cleanup some typecasting (moneromooo-monero)
2016-09-15 15:19:54 +02:00
moneromooo-monero
cd01bae735
Decrease minimum fee from 0.01/kB to 0.002/kB
...
The wallet will start using that fee about two weeks after hard
fork 3, when most people will likely have updated their daemons.
2016-09-15 09:28:33 +01:00
moneromooo-monero
70b78bb2c8
wallet: fix misdetection of duplicates
2016-09-14 20:23:28 +01:00
moneromooo-monero
7d413f635f
rct: rework serialization to avoid storing vector sizes
2016-09-14 20:23:06 +01:00
moneromooo-monero
0ce79ef10e
core: cleanup some typecasting
2016-09-14 20:22:16 +01:00
Casey Marshall
0a56d83d3d
Add snap packaging.
...
This adds [snap](https://snapcraft.io ) packaging to the project. See the
link for more information on snaps. Snap packages install on all Linux
distributions. On Ubuntu, snap confinement with apparmor and seccomp
provide an additional layer of security.
This snap sets up monerod as a systemd service, which should start
immediately on install. To access the wallet CLI, simply run `monero`
(/snap/bin/monero). I think it's a really quick & easy way to get
started with monero.
I've made some opinionated decisions in the packaging just to kick this
off, but I'm happy to iterate on this stuff.
2016-09-11 11:17:12 -05:00
iDunk5400
f1381388ec
Daemon: fix hashrate display in diff command output
2016-09-10 23:16:25 +02:00
Riccardo Spagni
391d6d0cf8
Merge pull request #1049
...
24d9337
crypto,cmake: enable ASM mul impl on ARM; add cmake opt (redfish)
2016-09-10 15:13:33 +02:00
Riccardo Spagni
94df1f4d84
Merge pull request #1044
...
b1d5189
cmake: fix def propagation, fixes 32-bit build (redfish)
2016-09-10 15:10:43 +02:00
redfish
24d93370ad
crypto,cmake: enable ASM mul impl on ARM; add cmake opt
...
This was disabled earlier as part of diagnosing failing tests
on ARM, which turned out to be due to aliasing, fixed by
adding -fno-strict-aliasing. So, re-enabling it back.
2016-09-04 06:46:35 +00:00
redfish
b1d5189ae1
cmake: fix def propagation, fixes 32-bit build
...
32-bit build would fail to link with 'mdb_env_create undefined' (because
for 32-bit build, mdb_env_create_vl32 is defined instead).
This bug was introduced with the recent change to virtual object
libraries. The problem is that the COMPILE_DEFINITIONS property
was not propagated from dependee target (lmdb) to depedent
target's (blockchain_db) virtual object lib (obj_blockchain_db).
This patch makes that happen.
I chose to include INTERFACE_COMPILE_DEFINITIONS because there
should not be a need to propagate private defs, but it doesn't
make a difference in this case.
2016-09-03 17:44:28 -04:00
Riccardo Spagni
011e42f337
fix nigglies, as pointed out by moneromooo-monero
2016-09-03 22:36:09 +02:00
Riccardo Spagni
df63e0704a
fix remaining bitmonero and simplewallet bits
2016-09-03 22:03:44 +02:00
Riccardo Spagni
04b120fb39
fix blockchain utilities readme
2016-09-03 21:54:10 +02:00
Riccardo Spagni
c45912e1df
Merge pull request #1039
...
883d651
remove blockchain_dump (Riccardo Spagni)
7825386
fix leftover add_directory (Riccardo Spagni)
face573
rename simplewallet (Riccardo Spagni)
2e984bc
rename Monero daemon (Riccardo Spagni)
b6973b8
rename blockchain utils (Riccardo Spagni)
f968ccb
remove cn_deserialize (Riccardo Spagni)
7a38e4e
removed simpleminer (Riccardo Spagni)
2016-09-03 19:59:41 +02:00
Riccardo Spagni
aa996e3a60
Merge pull request #1038
...
43677f9
gui/libwallet_merged: libunbound is one more dependency (Ilya Kitaev)
2016-09-03 14:11:26 +02:00
Riccardo Spagni
883d651c3b
remove blockchain_dump
2016-09-03 14:07:17 +02:00
Riccardo Spagni
7825386468
fix leftover add_directory
2016-09-03 13:51:07 +02:00
Riccardo Spagni
face57309b
rename simplewallet
2016-09-03 13:48:38 +02:00
Riccardo Spagni
2e984bc23c
rename Monero daemon
2016-09-03 13:46:41 +02:00
Riccardo Spagni
b6973b8053
rename blockchain utils
2016-09-03 13:45:18 +02:00
Riccardo Spagni
f968ccb9d3
remove cn_deserialize
2016-09-03 13:20:53 +02:00
Riccardo Spagni
7a38e4e65d
removed simpleminer
2016-09-03 13:20:00 +02:00
Ilya Kitaev
43677f9d68
gui/libwallet_merged: libunbound is one more dependency
2016-09-03 13:32:06 +03:00
Riccardo Spagni
6c608c352c
Merge pull request #1033
...
4d17949
wallet_merged: ringct added to dependencies (Ilya Kitaev)
2016-09-01 23:00:21 +02:00
Ilya Kitaev
4d17949d4f
wallet_merged: ringct added to dependencies
2016-09-01 23:06:36 +03:00
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
moneromooo-monero
a47ceee83b
wallet: do not store signatures in the wallet cache
...
Saves some substantial space.
Also avoid calculating tx hashes we don't need.
2016-08-28 21:30:10 +01:00
moneromooo-monero
0263dd2d23
core: add some locking around pool use
2016-08-28 21:30:08 +01:00
moneromooo-monero
2c9d9519f1
wallet2: factor m_spent changes
...
Makes it easier to track what is going on.
2016-08-28 21:30:04 +01:00
moneromooo-monero
1303cda646
wallet: always use new algorithm for RPC transfers
...
This ensures we get rct transactions when appropriate
2016-08-28 21:30:03 +01:00
moneromooo-monero
b337aea6cc
rct: do not serialize senderPk - it is not used anymore
2016-08-28 21:30:01 +01:00
moneromooo-monero
230fca2d56
wallet: use the prefered rct case only when enough rct outs exist
2016-08-28 21:29:55 +01:00
moneromooo-monero
c27194a444
wallet: do not try to use rct txes a few blocks before the fork
2016-08-28 21:29:53 +01:00
moneromooo-monero
1bf069825b
tx_pool: log why a transaction was rejected for version checks
2016-08-28 21:29:51 +01:00
moneromooo-monero
37bdf6ebe3
change fork settings to allow pre-rct txes for one more fork cycle
2016-08-28 21:29:50 +01:00
moneromooo-monero
cc85cc6a3f
simplewallet: better check_tx_key feedback
...
Print number of confirmations if the tx is in the blockchain,
or a warning if it's in the pool.
2016-08-28 21:29:48 +01:00
moneromooo-monero
9b70856ccb
rct: make the amount key derivable by a third party with the tx key
...
Scheme design from luigi1114.
2016-08-28 21:29:46 +01:00
moneromooo-monero
cf33e1a52a
rct: do not serialize public keys in outPk
...
They can be reconstructed from vout
2016-08-28 21:29:43 +01:00
moneromooo-monero
83ab3151e8
wallet2_api: zero amounts are now allowed with rct
2016-08-28 21:29:41 +01:00
moneromooo-monero
096ac06521
wallet2_api: update on_money_{received,spent} prototypes for rct changes
2016-08-28 21:29:40 +01:00
moneromooo-monero
3cb2edec66
rpc: send global indices along with blocks/transacions on refresh
...
This plugs a privacy leak, where the wallet tells the daemon
which transactions contain outputs for the wallet by asking
for additional information for that particular transaction.
As a nice bonus, this actually makes refresh slightly faster.
2016-08-28 21:29:38 +01:00
moneromooo-monero
414b424d32
core: always use the new simple rct variant
2016-08-28 21:29:36 +01:00
moneromooo-monero
84c82cd775
wallet: better tx input selection
...
We try to avoid related inputs, when possible
2016-08-28 21:29:32 +01:00
moneromooo-monero
1e21651f24
rct: use the already defined H where possible
...
Found by luigi1111w
2016-08-28 21:29:29 +01:00
moneromooo-monero
07d353dfc6
wallet: handle 0 change properly
...
With RCT, we allow 0 size outputs, to try and encourage txes
with two inputs and two outputs. Consolidation would then
have two non zero inputs, one zero output, and one larger
output.
2016-08-28 21:29:27 +01:00
moneromooo-monero
e81a2b2cfa
port get_tx_key/check_tx_key to rct
2016-08-28 21:29:24 +01:00
moneromooo-monero
a4d4d6194b
integrate simple rct api
2016-08-28 21:29:20 +01:00
moneromooo-monero
1e8d37e7d8
serialization: add override for serializing bool
2016-08-28 21:29:19 +01:00
Shen Noether
dbb5f2d6a3
ringct: optimization/cleanup of hash functions
2016-08-28 21:29:16 +01:00
Shen Noether
4fd01f2bee
ringct: "simple" ringct variant
...
Allows the fake outs to be in different positions for each ring.
For rct inputs only.
2016-08-28 21:29:14 +01:00
moneromooo-monero
37c895e5e3
wallet: rct specific output selection
...
Before the normal selection, we attempt to find either one or two
suitable outputs to use as inputs to the rct tx. The intent is that
most rct txes will have one or two inputs, and we want all to look
the same if possible.
When two outputs are needed, we try to find a pair which are not
related (ie, by being from the same or similar block height).
2016-08-28 21:29:11 +01:00
moneromooo-monero
1181c57967
wallet: make sweep_all work with rct txes too
2016-08-28 21:29:09 +01:00
moneromooo-monero
c2ec6d35b9
mixable transactions must be rct for v3
2016-08-28 21:29:07 +01:00
moneromooo-monero
1017a75460
wallet: factor transfer_rct code with transfer code
...
The "transfer" simplewallet command is renamed to "transfer_original".
"transfer_new" is renamed "transfer", "transfer_rct" is removed,
and the new "transfer" now selects rct or non rct transactions
based on the current block height.
2016-08-28 21:29:05 +01:00
moneromooo-monero
f5465d8246
Condition v2 txes on v3 hard fork
2016-08-28 21:29:04 +01:00
moneromooo-monero
59a66e209a
move the rct commitments to the output_amounts database
...
Since these are needed at the same time as the output pubkeys,
this is a whole lot faster, and takes less space. Only outputs
of 0 amount store the commitment. When reading other outputs,
a fake commitment is regenerated on the fly. This avoids having
to rewrite the database to add space for fake commitments for
existing outputs.
This code relies on two things:
- LMDB must support fixed size records per key, rather than
per database (ie, all records on key 0 are the same size, all
records for non 0 keys are same size, but records from key 0
and non 0 keys do have different sizes).
- the commitment must be directly after the rest of the data
in outkey and output_data_t.
2016-08-28 21:29:02 +01:00
moneromooo-monero
6d0e47148b
rct: add the tx prefix hash into the MLSAG
...
to protect the non-signatures parts of the tx from tampering.
2016-08-28 21:28:58 +01:00
moneromooo-monero
35dce5c70c
ringct: fix size unit mismatch calling keccak
2016-08-28 21:28:57 +01:00
moneromooo-monero
20e50ec7f7
ringct: do not serialize what can be reconstructed
...
The mixRing (output keys and commitments) and II fields (key images)
can be reconstructed from vin data.
This saves some modest amount of space in the tx.
2016-08-28 21:28:55 +01:00
moneromooo-monero
ada527558f
Use the supplied hard fork version in validate_miner_transaction
...
rather than using the current one. No functional changes, but may
save some bugs in the future.
2016-08-28 21:28:51 +01:00
moneromooo-monero
acbe06d8e9
wallet: update spent status when an accepted tx disappears
2016-08-28 21:28:49 +01:00
moneromooo-monero
089df4af83
wallet: reset output spent status on blockchain reorg
...
If the blockchain gets reorganized, all outputs spent in the part
of the blockchain that's blown away need to be reset to unspent
(they may end up spent again on the blocks that replace the blocks
that are removed, however).
2016-08-28 21:28:47 +01:00
moneromooo-monero
73d59f17e1
ringct: catch errors from ge_frombytes_vartime
2016-08-28 21:28:45 +01:00
moneromooo-monero
359f46901e
ringct: add missing size check for ecdhInfo
2016-08-28 21:28:41 +01:00
moneromooo-monero
229968eafc
ringct: change asserts to return false for boolean functions
2016-08-28 21:28:39 +01:00
moneromooo-monero
dc4aad7eb5
add rct to the protocol
...
It is not yet constrained to a fork, so don't use on the real network
or you'll be orphaned or rejected.
2016-08-28 21:28:37 +01:00
moneromooo-monero
211d1db762
db_lmdb: update reset for recent db changes
...
- we need to drop the new m_tx_indices database
- we reset the version to current version
This fixes the core tests failing to initialize.
2016-08-28 21:28:35 +01:00
moneromooo-monero
dee42d6dac
ringct: add functions to commit to an amount
...
One to commit to an amount with zero key (for use with fake
commitments for pre-rct outputs), and one with an arbitrary
key (for rct outputs).
2016-08-28 21:28:33 +01:00
moneromooo-monero
cc7f449d57
make rct tx serialization work
...
It may be suboptimal, but it's a pain to have to rebuild everything
when some of this changes.
Also, no clue why there seems to be two different code paths for
serializing a tx...
2016-08-28 21:28:31 +01:00
moneromooo-monero
e70e8a69f4
crypto: error out where appropriate
2016-08-28 21:28:29 +01:00
moneromooo-monero
54f7429cf6
ringct: allow no outputs, and add tests for this and fees
2016-08-28 21:28:27 +01:00
moneromooo-monero
e99904ac31
ringct: make fee optional
2016-08-28 21:28:25 +01:00
Shen Noether
f8c04ad94f
ringct: txn fee stuff
2016-08-28 21:28:23 +01:00
moneromooo-monero
66f96260b2
ringct: new {gen,decode}Rct APIs for convenience
...
A new version of genRct takes the mixRing as parameter, instead
of the inPk. inPk are part of the mixRing, and it is cleaner to
pass the mixRing data than to fetch it from the RingCT code.
A new version of decodeRct also returns the mask.
Also, failure to decode throws, so errors are properly detected.
2016-08-28 21:28:21 +01:00
moneromooo-monero
789b2e21f6
ringct: add more convenience functions
2016-08-28 21:28:20 +01:00
moneromooo-monero
98564439f8
core: link against libringct
2016-08-28 21:28:18 +01:00
moneromooo-monero
4258dab4d6
core: new /getrandom_rctouts.bin binary RPC call
...
to get random ringct outputs to mix with
2016-08-28 21:28:16 +01:00
moneromooo-monero
c3a2e1450a
ringct: add convenience functions to bridge ringct and cryptonote
2016-08-28 21:28:14 +01:00
moneromooo-monero
eb56d0f994
blockchain_db: add functions for adding/removing/getting rct commitments
2016-08-28 21:28:11 +01:00
moneromooo-monero
82072e701a
ringct: restore verRange check in debug mode
2016-08-28 21:28:08 +01:00
moneromooo-monero
63856cad29
ringct: add check for destinations/amount size being equal
2016-08-28 21:28:07 +01:00
moneromooo-monero
e816a09292
ringct: fix off by 1 in mixin usage
2016-08-28 21:28:04 +01:00
moneromooo-monero
09c5ea43a2
ringct: simplify random key generation
2016-08-28 21:28:03 +01:00
Shen Noether
56f6549962
ringct: cosmetic fixes
...
Ported from Shen's RingCT repo
2016-08-28 21:27:59 +01:00
Shen Noether
55ff136e12
ringct: changes to hashToPointSimple to calcualte H2 values
...
Ported from Shen's RingCT repo
2016-08-28 21:27:57 +01:00
Shen Noether
63733b1785
ringct: compare keys with bitwise equality, not crypto ops
...
Ported from Shen's RingCT repo
2016-08-28 21:27:56 +01:00
Shen Noether
98f4c6f7eb
ringct: fix size argument to cn_fast_hash
...
Ported from Shen's RingCT repo
2016-08-28 21:27:54 +01:00
Shen Noether
09fb9f4b75
Fix sc_0 to skGen in ProveRange
2016-08-28 21:27:48 +01:00
moneromooo-monero
d37c1db032
ringct: add a few consts where appropriate
2016-08-28 21:27:45 +01:00
moneromooo-monero
700248f59e
tests: more ringct range proof tests
2016-08-28 21:27:43 +01:00
moneromooo-monero
d02f9995a8
rct: add serialization machinery to rct types
2016-08-28 21:27:41 +01:00
moneromooo-monero
0ff8305426
serialization: declare do_serialize specializations before use
...
This lets my gcc picks those instead of the generic template
where appropriate (and then fail since std::vector<something>
does not have a serialize method.
2016-08-28 21:27:38 +01:00
Shen Noether
8b135e7aa3
Added note on generating H2
2016-08-28 21:27:36 +01:00
Shen Noether
4d639d90ca
Fixed missing last index H2
2016-08-28 21:27:34 +01:00
moneromooo-monero
9e82b694da
remove original Cryptonote blockchain_storage blockchain format
2016-08-28 21:27:32 +01:00
moneromooo-monero
86b4426191
ringct: lock access to the PRNG
2016-08-28 21:27:30 +01:00
moneromooo-monero
4d7f073491
ringct: add simple input validation
...
Throw when inputs aren't the expected size.
2016-08-28 21:27:28 +01:00
moneromooo-monero
b656001030
ringct: add convenience operators to key
2016-08-28 21:27:24 +01:00
moneromooo-monero
9b1afe5f2d
ringct: import of Shen Noether's ring confidential transactions
2016-08-28 21:26:54 +01:00
Howard Chu
dc411ea3b7
Change default db-sync-mode to fast, not fastest
2016-08-28 16:20:22 +01:00
Riccardo Spagni
a569b264bc
Merge pull request #991
...
f88029e
db_lmdb: do not try to modify the database in read only mode (moneromooo-monero)
2016-08-26 20:39:21 +02:00
moneromooo-monero
f88029e72a
db_lmdb: do not try to modify the database in read only mode
2016-08-26 19:33:25 +01:00
Riccardo Spagni
2702e4999a
Merge pull request #984
...
78035d2
Fix fake 'network synchronized, begin using' messages (Thomas Winget)
2016-08-26 10:33:10 +02:00
Riccardo Spagni
7000ed45ec
Merge pull request #982
...
65238d2
fix #691 removed help about leaving wallet name empty on --generate-new-wallet (guzzi_jones)
2016-08-26 10:32:30 +02:00
Riccardo Spagni
9308b4e8b9
Merge pull request #978
...
99dd572
libwallet_api: tests: checking for result while opening wallet (Ilya Kitaev)
bcf7b67
libwallet_api: Wallet::amountFromString fixed (Ilya Kitaev)
32bc7b4
libwallet_api: helper method to return maximumAllowedAmount (Ilya Kitaev)
cbe534d
libwallet_api: tests: removed logged passwords (Ilya Kitaev)
b1a5a93
libwallet_api: do not store wallet on close if status is not ok (Ilya Kitaev)
2016-08-26 10:32:00 +02:00
Riccardo Spagni
391c567f37
Merge pull request #976
...
c2f4e16
simplewallet: default to max-concurrency 1 on MacOS X (moneromooo-monero)
2016-08-26 10:31:24 +02:00
Thomas Winget
78035d2b6c
Fix fake 'network synchronized, begin using' messages
2016-08-23 22:52:25 -04:00
guzzi_jones
65238d281c
fix #691 removed help about leaving wallet name empty on --generate-new-wallet
2016-08-24 00:03:36 +00:00
Ilya Kitaev
bcf7b67cd6
libwallet_api: Wallet::amountFromString fixed
2016-08-23 13:47:21 +03:00
Ilya Kitaev
32bc7b41c0
libwallet_api: helper method to return maximumAllowedAmount
2016-08-23 12:35:45 +03:00
Riccardo Spagni
17157f8a22
Merge pull request #972
...
2c5e68f
cmake: fix typo in handling of STACK_TRACE (redfish)
2016-08-22 22:55:53 +02:00
Riccardo Spagni
79cdedb90c
Merge pull request #970
...
25f529a
wallet: store key images after importing them (moneromooo-monero)
2016-08-22 22:55:24 +02:00
Riccardo Spagni
13222f9ff5
Merge pull request #968
...
9cca53a
wallet: fix build on Mac and Windows (missing include) (moneromooo-monero)
2016-08-22 22:55:00 +02:00
Ilya Kitaev
b1a5a937ff
libwallet_api: do not store wallet on close if status is not ok
2016-08-22 22:47:59 +03:00
moneromooo-monero
c2f4e16c59
simplewallet: default to max-concurrency 1 on MacOS X
...
A suspected bug in pthread/kernel, though might be that
I messed something up too...
This might rope in more platforms though.
2016-08-21 12:26:29 +01:00
redfish
2c5e68fb73
cmake: fix typo in handling of STACK_TRACE
...
This fixes the log output not getting redirected to log file.
2016-08-19 23:38:44 -04:00
moneromooo-monero
25f529aa67
wallet: store key images after importing them
...
It avoids rescan_spent resetting spent status, for example.
2016-08-17 08:37:56 +01:00
moneromooo-monero
9cca53ac29
wallet: fix build on Mac and Windows (missing include)
...
Reported by RaskaRuby, tested by iDunk5400.
2016-08-17 08:08:49 +01:00
moneromooo-monero
e596e25367
simplewallet: do not suggest removing cache if the password was wrong
2016-08-16 23:15:35 +01:00
moneromooo-monero
7e4e0021f4
daemon: print time to next fork
2016-08-12 20:32:23 +01:00
Riccardo Spagni
0faf572db8
Merge pull request #948
...
11dc091
Fake outs set is now decided by the wallet (moneromooo-monero)
1593553
new unlocked parameter to output_histogram (moneromooo-monero)
2016-08-11 22:43:14 +02:00
moneromooo-monero
11dc091464
Fake outs set is now decided by the wallet
...
This plugs a privacy leak from the wallet to the daemon,
as the daemon could previously see what input is included
as a transaction input, which the daemon hadn't previously
supplied. Now, the wallet requests a particular set of
outputs, including the real one.
This can result in transactions that can't be accepted if
the wallet happens to select too many outputs with non standard
unlock times. The daemon could know this and select another
output, but the wallet is blind to it. It's currently very
unlikely since I don't think anything uses non default
unlock times. The wallet requests more outputs than necessary
so it can use spares if any of the returns outputs are still
locked. If there are not enough spares to reach the desired
mixin, the transaction will fail.
2016-08-11 14:35:27 +01:00
Riccardo Spagni
cb17c4da4f
Merge pull request #953
...
240864f
db_lmdb: errors dropping hf starting height db on reset are not fatal (moneromooo-monero)
2016-08-11 14:58:04 +02:00
Riccardo Spagni
b026650be9
Merge pull request #952
...
709c724
Better fix (#4 ) (hyc)
d2644c1
fix restore-deterministic height (luigi1111)
2016-08-11 14:57:33 +02:00
Riccardo Spagni
9273899ee7
Merge pull request #949
...
da1007f
simplewallet: make the refresh thread into more generic idle thread (moneromooo-monero)
2016-08-11 14:56:40 +02:00
Riccardo Spagni
d46a58dab0
Merge pull request #947
...
663fc32
wallet2: if importing key images fails, print failure index (moneromooo-monero)
2016-08-11 14:53:16 +02:00
Riccardo Spagni
8d098610a7
Merge pull request #943
...
f0c0a3f
Fix #864 Squashed commit of the following: commit 9af9e4223b
fixed some formatting commit c7920e1cf8
Merge: 97eb28b
1da1c68
fix#864 fix using boolean commit 97eb28ba5d
Fix #864 boolean value used to verify on new wallet commit 1da1c68bd3
fix #864 changed to boolean to prompt for verify commit 5bee966524
fix 864; made variable names easier for understanding branching. commit 45715960d3
fix #864 ; allow password to be entered twice for new wallets for verification. fix #864 password entry verification; ammended boolean fix #864 ; default constructor for password_container should set verify=true (guzzi_jones)
2016-08-11 14:52:53 +02:00
moneromooo-monero
240864f529
db_lmdb: errors dropping hf starting height db on reset are not fatal
...
This db is now dropped unconditionally, so may or may not be there
in the first place.
2016-08-10 10:50:17 +01:00
hyc
709c7247cd
Better fix ( #4 )
2016-08-09 18:54:20 -05:00
luigi1111
d2644c15c3
fix restore-deterministic height
...
Simplewallet improperly skipped the restore from height code if
restoring a deterministic wallet AND not specifying a wallet file in the
command line. The other generate options require a wallet file as an
argument, which prevents "ask_wallet_create_if_needed()" from being
called, which in turn causes "m_generate_new" to remain unset.
Specifying a wallet file at launch with --restore-deterministic emulated
this behavior.
2016-08-09 17:46:49 -05:00
moneromooo-monero
da1007f7cd
simplewallet: make the refresh thread into more generic idle thread
2016-08-07 16:08:50 +01:00
moneromooo-monero
663fc32809
wallet2: if importing key images fails, print failure index
2016-08-04 08:19:29 +01:00
moneromooo-monero
1593553e03
new unlocked parameter to output_histogram
...
This constrains the number of instances of any amount
to the unlocked ones (as defined by the default unlock time
setting: outputs with non default unlock time are not
considered, so may be counted as unlocked even if they are
not actually unlocked).
2016-08-01 22:16:00 +01:00
guzzi_jones
f0c0a3fb65
Fix #864
...
Squashed commit of the following:
commit 9af9e4223b
fixed some formatting
commit c7920e1cf8
Merge: 97eb28b
1da1c68
fix#864 fix using boolean
commit 97eb28ba5d
Fix #864 boolean value used to verify on new wallet
commit 1da1c68bd3
fix #864 changed to boolean to prompt for verify
commit 5bee966524
fix 864; made variable names easier for understanding branching.
commit 45715960d3
fix #864 ; allow password to be entered twice for new wallets for verification.
fix #864 password entry verification; ammended boolean
fix #864 ; default constructor for password_container should set verify=true
2016-08-01 02:32:14 +00:00
redfish
042db0bd0f
cmake: cleanup logic that sets flags per target/subdir
...
The previous logic that used a COMMON_*_FLAGS intermediate variable
and then re-assigned CMAKE_*_FLAGS before including each subdirectory
was confusing and ugly. This PR is the right way to do it.
This commit is purely refactoring: built binaries unchanged.
2016-07-28 21:20:50 -04:00
Riccardo Spagni
0fbe9cfcdb
Merge pull request #937
...
0f990d0
cmake,common: flag for stack trace (redfish)
2016-07-27 11:07:38 +02:00
Riccardo Spagni
72f2934e20
Merge pull request #936
...
4618873
tests: fix a bitflag test typo (moneromooo-monero)
89e68d7
unit_tests: check adding checkpoints succeeded (moneromooo-monero)
121165f
db_lmdb: add some missing api call checks (moneromooo-monero)
22d8344
core_rpc_server: fix gray/white peer list mixup (moneromooo-monero)
2016-07-27 11:06:57 +02:00
redfish
0f990d0183
cmake,common: flag for stack trace
...
By default the flag is enabled whenever libunwind is found on the
system, with the exception of static build on OSX (for which we can't
install the throw hook #932 due to lack of support for --wrap in OSX
ld64 linker).
2016-07-27 01:52:33 -04:00
moneromooo-monero
121165f222
db_lmdb: add some missing api call checks
2016-07-26 22:39:51 +01:00
moneromooo-monero
22d8344cb5
core_rpc_server: fix gray/white peer list mixup
2016-07-26 20:02:43 +01:00
Riccardo Spagni
b34506da81
Merge pull request #928
...
ebf97d7
wallet: new {ex,im}port_key_images commands and RPC calls (moneromooo-monero)
2016-07-26 08:55:25 +02:00
moneromooo-monero
b3801faafa
hardfork: fix off by one in rescaning fork state after restart
...
This code should die anyway.
2016-07-25 23:16:02 +01:00
moneromooo-monero
ebf97d76f0
wallet: new {ex,im}port_key_images commands and RPC calls
...
They are used to export a signed set of key images from a wallet
with a private spend key, so an auditor with the matching view key
may see which of those are spent, and which are not.
2016-07-24 09:23:30 +01:00
redfish
8bed9a42f7
cmake: wallet: libunbound is not always static
...
It is not clear why libunbound was added to this in the first place,
since it wasn't here before and #915 doesn't seem to introduce any
new dependency on it.
Tested build with STATIC=OFF (with and without libunbound-dev libunbound8
installed) and STATIC=ON, on Ubuntu Trusty, Debian Jessie, and Arch
Linux. For static builds, beware of #926 and #907 .
If this hack was introduced to make it build on some other system
(Windows? OS X?), then it will have to be dealt with, but not this way.
2016-07-23 15:04:15 -04:00
Riccardo Spagni
47618c2710
Merge pull request #923
...
8312887
simplewallet: suggest removing cache when loading fails (moneromooo-monero)
2016-07-23 09:20:18 +02:00
Riccardo Spagni
07f974a499
Merge pull request #916
...
b89b963
wallet: add unconfirmed incoming txes from the txpool (moneromooo-monero)
2016-07-23 09:19:39 +02:00
Riccardo Spagni
b582764bd6
Merge pull request #915
...
d7597c5
refreshing wallet even if error happened (Ilya Kitaev)
6d32a3d
wallet_api: async init, Wallet::connected status, log level (Ilya Kitaev)
193d251
libwallet_api cmake: conditionally creating libwallet_merged2 only for STATIC build (Ilya Kitaev)
10c06dd
wallet_api: segfault on refresh fixed (Ilya Kitaev)
9d2cb4f
WalletListener functionality (Ilya Kitaev)
d27b883
hack to successfull linking for MSYS2 (Ilya Kitaev)
083380c
Transaction fee multiplier aka priority integraged (Ilya Kitaev)
00ed12b
Wallet::paymentIdValid (Ilya Kitaev)
2016-07-23 09:17:21 +02:00
Riccardo Spagni
90f2e19d51
Merge pull request #910
...
080a606
simplewallet: revert to foreground refresh at startup (moneromooo-monero)
2016-07-23 09:13:15 +02:00
moneromooo-monero
83128877e0
simplewallet: suggest removing cache when loading fails
2016-07-22 17:31:52 +01:00
moneromooo-monero
b89b96394a
wallet: add unconfirmed incoming txes from the txpool
...
Shown in show_transfers simplewallet command, and get_transfers
RPC command, if req.pool is true.
2016-07-20 19:14:44 +01:00
moneromooo-monero
080a60610f
simplewallet: revert to foreground refresh at startup
...
Background refresh is confusing to users at startup.
2016-07-20 19:09:32 +01:00
Riccardo Spagni
38e5156392
Merge pull request #914
...
87b1153
wallet2_api: use uint64_t for amounts (moneromooo-monero)
2016-07-20 14:29:33 +02:00
Riccardo Spagni
8e143fcf1d
Merge pull request #911
...
d7b681c
remove hf_starting_height db (moneromooo-monero)
2016-07-20 14:01:27 +02:00
Riccardo Spagni
77015e8132
Merge pull request #904
...
f07f120
cmake: don't try to link with atomic on Apple (redfish)
19349d7
cmake: ARM: clang: make warning non-fatal: inline asm (redfish)
f3e09f3
cmake: link with -latomic for clang (redfish)
f4b35ae
cmake: include -ldl via cmake built-in var (redfish)
fa85cd8
common: stack trace: make clang happy with func ptrs (redfish)
4dce26b
cmake: do not pass -stdlib=c++ to clang >=3.7 (redfish)
2016-07-20 13:56:59 +02:00
Riccardo Spagni
fc3e135b83
Merge pull request #902
...
014f3a0
Add a daemon RPC version, and make simplewallet check it (moneromooo-monero)
2016-07-20 13:55:59 +02:00
Riccardo Spagni
b1bec02ce5
Merge pull request #900
...
78cc10f
daemon: fix ban seconds being misinterpreted as absolute (moneromooo-monero)
34ecfdb
rpc: fix get_bans and set_bans RPC names, they were missing a _ (moneromooo-monero)
2016-07-20 13:53:25 +02:00
Riccardo Spagni
07f1d4e04d
Merge pull request #899
...
a95a2cb
wallet_rpc_server: add payment id from integrated addresses to extra (moneromooo-monero)
2016-07-20 13:52:54 +02:00
Riccardo Spagni
992b6cce06
Merge pull request #897
...
ce6b831
daemonizer: posix: keep parent's working dir and umask (redfish)
2016-07-20 13:52:27 +02:00
moneromooo-monero
89d9f382a0
wallet: add command and RPC to sign/verify data
...
Signing is done using the spend key, since the view key may
be shared. This could be extended later, to let the user choose
which key (even a per tx key).
simplewallet's sign/verify API uses a file. The RPC uses a
string (simplewallet can't easily do strings since commands
receive a tokenized set of arguments).
2016-07-19 20:39:03 +01:00
Ilya Kitaev
d7597c5961
refreshing wallet even if error happened
2016-07-18 23:03:09 +03:00
Ilya Kitaev
6d32a3d16b
wallet_api: async init, Wallet::connected status, log level
2016-07-18 23:03:09 +03:00
Ilya Kitaev
193d251360
libwallet_api cmake: conditionally creating libwallet_merged2 only for
...
STATIC build
2016-07-18 23:03:09 +03:00
Ilya Kitaev
10c06ddac7
wallet_api: segfault on refresh fixed
2016-07-18 23:03:09 +03:00
Ilya Kitaev
9d2cb4f36c
WalletListener functionality
2016-07-18 23:02:47 +03:00
Ilya Kitaev
d27b883b2d
hack to successfull linking for MSYS2
2016-07-18 23:02:47 +03:00
Ilya Kitaev
083380cb8f
Transaction fee multiplier aka priority integraged
2016-07-18 23:02:18 +03:00
Ilya Kitaev
00ed12bd6c
Wallet::paymentIdValid
2016-07-18 23:02:18 +03:00
moneromooo-monero
87b1153f37
wallet2_api: use uint64_t for amounts
2016-07-17 09:33:31 +01:00
moneromooo-monero
d7b681cd65
remove hf_starting_height db
...
It's not really needed, it used to be an optimization for when
that code was not using the db and needed to recalculate things
fast on startup.
2016-07-13 21:38:34 +01:00
redfish
fa85cd845f
common: stack trace: make clang happy with func ptrs
...
Tested that it builds with:
gcc 6.1.1, STATIC=OFF,i686
gcc 6.1.1, STATIC=OFF,armv7h
clang 3.8, STATIC=OFF,i686
clang 3.8, STATIC=OFF,armv7h
gcc 6.1.1, STATIC=ON,i686
clang 3.8, STATIC=ON,i686
Also tested that stack trace is generated fine on exception on:
i686, gcc 6.1.1, STATIC=OFF
(didn't bother testing all the other platforms/configs)
This should fix the build problem on OSX (#871 , #901 ), but
I don't have OSX, so I could only test Clang on Linux.
2016-07-10 21:26:11 -04:00
moneromooo-monero
014f3a0d39
Add a daemon RPC version, and make simplewallet check it
...
If the version is different, simplewallet will refuse to use that
daemon, unless --allow-mismatched-daemon-version is used.
2016-07-10 16:49:40 +01:00
moneromooo-monero
78cc10f3fa
daemon: fix ban seconds being misinterpreted as absolute
...
Absolute to relative conversion is already done by the callee.
2016-07-10 15:13:53 +01:00
moneromooo-monero
34ecfdbf15
rpc: fix get_bans and set_bans RPC names, they were missing a _
2016-07-10 15:10:51 +01:00
moneromooo-monero
a95a2cbc4d
wallet_rpc_server: add payment id from integrated addresses to extra
2016-07-10 13:46:18 +01:00
redfish
ce6b83128e
daemonizer: posix: keep parent's working dir and umask
...
Keep the working directory (and umask) inherited from
the parent. Otherwise, it's impossible to control
the working directory of the daemon (from systemd, for
example).
Furthermoer, bitmonerod attempts to create logging directories and files
*in current working directory*. This fails due to permission denied and
generates a (caught, nonfatal) exception. Below is the strace with this
patch applied (so, no `chdir("/")`), showing successful opens at `log/`
relative path. Without this patch they fail (sorry, didn't save the
trace).
```
28911 getcwd("/.../bitmonero", 128) = 25
28911 stat64("/var/lib/bitmonero/.bitmonero", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
28911 stat64("/etc/bitmonerod.conf", {st_mode=S_IFREG|0644, st_size=244, ...}) = 0
28911 open("/etc/bitmonerod.conf", O_RDONLY|O_LARGEFILE) = 3
28911 open("/var/log/bitmonero/bitmonero.log", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 3
28911 stat64("log", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
28911 stat64("log/dbg", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
28911 open("log/dbg/main.log", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 4
```
The reasoning of chdir("/") in order to prevent the daemon from holding
a filesystem in busy state is not compelling at all: the choice of
working directory for the daemon is the user's business not the
daemon's.
2016-07-09 20:16:44 -04:00
moneromooo-monero
a0bf85d09d
wallet2_api: make this build (smatch needs .str() for /=)
2016-07-07 22:42:59 +01:00
Riccardo Spagni
18fa01c092
Merge pull request #884
...
c2ad9ca
allow peers without port (moneromooo-monero)
2016-07-06 18:20:17 +02:00
Riccardo Spagni
1088ed862b
Merge pull request #883
...
459ec60
daemon: print exception errors when failing to parse config file (moneromooo-monero)
2016-07-06 18:19:40 +02:00
Riccardo Spagni
0b65717a5d
Merge pull request #882
...
f11191a
rpc: restrict number of fake outs requested in restricted rpc mode (moneromooo-monero)
2016-07-06 18:17:08 +02:00
Riccardo Spagni
00fd89a36d
Merge pull request #879
...
6b08001
simplewallet: mention the background refresh thread when starting (moneromooo-monero)
2016-07-06 18:15:36 +02:00
Riccardo Spagni
3923cbddaf
Merge pull request #878
...
945c272
wallet: add a fee multiplier (moneromooo-monero)
2016-07-06 18:14:34 +02:00
Riccardo Spagni
628f57b212
Merge pull request #873
...
d718960
remove POSIX_C_SOURCE and remove dlfcn.h for static builds (luigi1111)
2016-07-06 18:12:03 +02:00
moneromooo-monero
c2ad9caf01
allow peers without port
...
The default port is then used
2016-07-03 12:51:12 +01:00
moneromooo-monero
459ec6040e
daemon: print exception errors when failing to parse config file
...
When an exception happens while reading the config file, we need
to print the error, as the logging system isn't initialized yet,
so the generic catch will not print anything.
2016-06-30 22:15:40 +01:00
moneromooo-monero
f11191a818
rpc: restrict number of fake outs requested in restricted rpc mode
2016-06-29 20:43:14 +01:00
Ilya Kitaev
beb6d9200d
CMake: GPL 'libutils' script removed
2016-06-24 14:49:23 +03:00
Ilya Kitaev
ab61ba0c9b
Merge branch 'master' of https://github.com/mbg033/bitmonero
2016-06-23 16:23:09 +03:00
Ilya Kitaev
d60864785f
WalletManager::findWallets: searching by "keys" files instead of
...
"address.txt" files
2016-06-23 16:01:41 +03:00
Ilya Kitaev
ca61153003
Wallet: payment id and integrated address
2016-06-23 16:01:41 +03:00
Ilya Kitaev
23cbf6fd97
PendingTransactionImpl: pointer->reference
2016-06-23 16:01:41 +03:00
Ilya Kitaev
c1d9e7cd2a
commented regex
2016-06-23 16:01:41 +03:00
Ilya Kitaev
563baf1b68
Typo fixed
2016-06-23 16:01:41 +03:00
Ilya Kitaev
2efec04f74
Wallet::createTransaction: added mixin_count param
2016-06-23 16:01:41 +03:00
Ilya Kitaev
85a632244e
double/string to monero integer convertion methods
2016-06-23 16:01:41 +03:00
Ilya Kitaev
e7d8f2a085
wallet::default_mixin exposed to public interface as
...
Wallet::setDefaultMixin, Wallet::defaultMixin;
wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-23 16:01:41 +03:00
Ilya Kitaev
a5374897f8
Wallet::filename, Wallet::keysFilename, tests for move wallet
2016-06-23 16:01:41 +03:00
Ilya Kitaev
a1eddcd693
removed unused "using"
2016-06-23 16:01:41 +03:00
Ilya Kitaev
8390bfa770
Wallet API : WalletManager::findWallets() added
2016-06-23 16:01:41 +03:00
Ilya Kitaev
dbc0b039b4
installing wallet_api header
2016-06-23 16:01:33 +03:00
Ilya Kitaev
191cb594de
all wallet dependencies merged to single static lib
2016-06-23 16:01:33 +03:00
Ilya Kitaev
64348a2d11
WalletListener::moneySpent test
2016-06-23 16:01:33 +03:00
Ilya Kitaev
060bb62e29
WalletListener::moneySpent(), WalletListener::moneyReceived()
2016-06-23 16:01:33 +03:00
Ilya Kitaev
214014c048
i_wallet_callback: virtual dtor
2016-06-23 16:01:33 +03:00
Ilya Kitaev
374577018d
started WalletListener
2016-06-23 16:01:33 +03:00
Ilya Kitaev
e6fdd5dd10
TransactionHistory continued
2016-06-23 16:01:26 +03:00
Ilya Kitaev
3dd4b4ccf9
merged with upstream
2016-06-23 15:50:40 +03:00
Ilya Kitaev
d500272fa8
Wallet API : transaction history in progress
2016-06-23 15:50:33 +03:00
Ilya Kitaev
663ed04eb8
transaction history api in progress
2016-06-23 15:50:17 +03:00
Ilya Kitaev
12345d382c
api implementation splitted over separate files
2016-06-23 15:50:17 +03:00
Ilya Kitaev
60508e6bae
TransactionInfo / TransactionHistory APIs design
2016-06-23 15:50:17 +03:00
Ilya Kitaev
951f3b5d83
Wallet::createTransaction API introduced
...
Transaction API continued
TODOs for Transaction/Transfer interface
2016-06-23 15:49:54 +03:00
Ilya Kitaev
7c51227f88
Wallet::transfer in progress
2016-06-23 15:49:36 +03:00
Ilya Kitaev
e04c67ac4c
Wallet::refresh + tests
2016-06-23 15:49:36 +03:00
Ilya Kitaev
9cdf0b7d7f
"testnet" is default parameter
2016-06-23 15:49:36 +03:00
Ilya Kitaev
caf0e02787
testnet option, Wallet::balance(), Wallet::unlockedBalance()
2016-06-23 15:49:22 +03:00
Ilya Kitaev
8df820b301
- testnet option added to api;
2016-06-23 15:49:07 +03:00
Ilya Kitaev
94eaeb50b2
wallet2::store() implemented within wallet2::store_to
2016-06-23 15:40:48 +03:00
moneromooo-monero
6b08001f9e
simplewallet: mention the background refresh thread when starting
...
It should be less confusing for people who're used to the foreground
refresh from earlier versions.
2016-06-22 23:05:50 +01:00
moneromooo-monero
945c272f6c
wallet: add a fee multiplier
...
Fee can now be multiplied by 2 or 3, if users want to give
priority to their transactions. There are only three levels
to avoid too much fingerprinting. Default is 1 (minimum fee).
The default multiplier can be set by "set fee-multiplier X".
2016-06-22 22:21:30 +01:00
Ilya Kitaev
4e5521d87d
PendingTransactionImpl: pointer->reference
2016-06-22 15:50:59 +03:00
Ilya Kitaev
7b7cf21644
commented regex
2016-06-22 15:06:19 +03:00
Ilya Kitaev
eec0f57d60
Typo fixed
2016-06-22 14:37:53 +03:00
luigi1111
d7189600ae
remove POSIX_C_SOURCE and remove dlfcn.h for static builds
...
The former was a faulty "fix" for gmtime_r not existing on Windows. The latter is needed only for dynamic builds, and is not included with msys2, which ends up fine because Windows is only built static at this time.
2016-06-21 11:16:25 -05:00
Riccardo Spagni
de91bb75a1
Merge pull request #870
...
57dce80
gmtime for Windows (luigi1111)
2016-06-21 09:32:32 +02:00
Riccardo Spagni
8c34cca0f0
Merge pull request #867
...
f0b85c1
simplewallet: add a status command (moneromooo-monero)
2016-06-21 09:31:50 +02:00
Riccardo Spagni
03477063ba
Merge pull request #868
...
15c2b69
common: fix build without libunwind (moneromooo-monero)
f72388c
CMakeLists: fix build without libunwind (moneromooo-monero)
2016-06-21 09:30:56 +02:00
luigi1111
57dce8083a
gmtime for Windows
...
gmtime_r is not available in Windows, use gmtime_s instead. Also change shorthand codes (also not working in Windows).
2016-06-20 18:14:12 -05:00
Ilya Kitaev
f1c4a376af
Wallet::createTransaction: added mixin_count param
2016-06-20 22:56:30 +03:00
moneromooo-monero
15c2b69db7
common: fix build without libunwind
2016-06-20 19:23:32 +01:00
moneromooo-monero
f0b85c1631
simplewallet: add a status command
...
It matches the daemon, and should allow people who're suspicious
of the background refresh to know they're synced.
2016-06-20 19:11:10 +01:00
Riccardo Spagni
21b3a1b43c
Merge pull request #863
...
0c6e9e4
rpc: fix getblock RPC sending blob as binary, not hex dump (moneromooo-monero)
2016-06-19 21:52:35 +02:00
Riccardo Spagni
2072c642d1
Merge pull request #862
...
5dc09f2
wallet_rpc_server: fix some string values being returned between <> (moneromooo-monero)
f8213c0
Require 64/16 characters for payment ids (moneromooo-monero)
2016-06-19 21:51:32 +02:00
Riccardo Spagni
551d44a989
Merge pull request #856
...
c5f00bc
cn_deserialize: add minergate data (moneromooo-monero)
2470b20
cn_deserialize: print extra nonce as hex data (moneromooo-monero)
77d8fc3
tx_extra: parse new chunk added by minergate (blashyrkh)
2016-06-19 21:30:20 +02:00
Riccardo Spagni
ba61f37f9c
Merge pull request #846
...
de030d9
fix: error: -Werror=misleading-indentation (moneroexample)
c2d7300
contrib: epee: add exception spec to throwing destructors (redfish)
6898741
src: p2p: add exception spec to throwing destructors (redfish)
21dbc95
crypto: slow-hash: fix misleading indent (redfish)
70f3634
crypto: slow-hash: remove unused hash list for ARM (redfish)
1a7772f
crypto: oaes_lib: remove unused _NR array (redfish)
6462a3a
crypto: fix compile error: use named type in sizeof (redfish)
2016-06-19 21:25:52 +02:00
Riccardo Spagni
e97d96ccfb
Merge pull request #775
...
e409e59
Print stack trace on exceptions (moneromooo-monero)
ef4ff42
connection_basic: avoid gratuitous exception (moneromooo-monero)
2016-06-19 21:14:11 +02:00
moneromooo-monero
5dc09f2666
wallet_rpc_server: fix some string values being returned between <>
2016-06-19 17:52:46 +01:00
Ilya Kitaev
3318addafa
double/string to monero integer convertion methods
2016-06-16 16:42:33 +03:00
moneromooo-monero
0c6e9e4ddd
rpc: fix getblock RPC sending blob as binary, not hex dump
2016-06-10 17:48:19 +01:00
Ilya Kitaev
3ac20a46b3
wallet::default_mixin exposed to public interface as
...
Wallet::setDefaultMixin, Wallet::defaultMixin;
wallet::create_transaction_2 used in Wallet::createTransaction
2016-06-10 13:52:10 +03:00
Ilya Kitaev
c554055ce4
Wallet::filename, Wallet::keysFilename, tests for move wallet
2016-06-10 12:51:09 +03:00
moneromooo-monero
c5f00bc751
cn_deserialize: add minergate data
2016-06-06 18:51:36 +01:00
moneromooo-monero
2470b20029
cn_deserialize: print extra nonce as hex data
2016-06-06 18:51:10 +01:00
blashyrkh
77d8fc3344
tx_extra: parse new chunk added by minergate
...
Patch from blashyrkh on forum.getmonero.org:
https://forum.getmonero.org/5/support/2530/simplewallet-returns-invalid-paymentid
2016-06-06 18:29:16 +01:00
Ilya Kitaev
8f9d98b3e0
removed unused "using"
2016-06-03 16:56:13 +03:00
Ilya Kitaev
2facbe77e4
Wallet API : WalletManager::findWallets() added
2016-06-03 14:52:58 +03:00
Ilya Kitaev
bc4584c1ff
Merge remote-tracking branch 'upstream/master'
2016-05-27 11:33:08 +03:00
Ilya Kitaev
4327548915
installing wallet_api header
2016-05-27 10:58:07 +03:00
Ilya Kitaev
d43ad22595
all wallet dependencies merged to single static lib
2016-05-27 10:00:01 +03:00
redfish
95be58ef0e
crypto: slow-hash: disable mul implemented in asm for ARM
...
The implementation of mul in asm breaks 'slow-hash' test when built with
GCC 6.1.1. Disable this implementation in favor of plain C until it is
fixed.
2016-05-25 15:53:29 -04:00
redfish
68987416ad
src: p2p: add exception spec to throwing destructors
...
The destructors get a noexcept(true) spec by default, but these
destructors in fact throw exceptions. An alternative fix might be to not
throw (most if not all of these throws are non-essential
error-reporting/logging).
2016-05-18 01:02:21 -04:00
redfish
21dbc95b47
crypto: slow-hash: fix misleading indent
...
GCC warned about this one.
2016-05-18 01:02:17 -04:00
redfish
70f363401b
crypto: slow-hash: remove unused hash list for ARM
...
This list is already defined within the function. The
removed definition was shadowed.
2016-05-18 01:02:13 -04:00
redfish
1a7772fbae
crypto: oaes_lib: remove unused _NR array
2016-05-18 01:02:07 -04:00
redfish
6462a3a6db
crypto: fix compile error: use named type in sizeof
...
Btw, the warning 4200 remains disabled, but it did not get triggered
(GCC 6.1.1, ARM). But, perhaps a better way than disabling
the warning would be to do what is suggested here:
http://stackoverflow.com/questions/3350852/how-to-correctly-fix-zero-sized-array-in-struct-union-warning-c4200-without%3E
2016-05-18 01:01:58 -04:00
Riccardo Spagni
a837c9cb0f
Merge pull request #842
...
d539be3
crypto: make clear generate_random_bytes is not thread safe (moneromooo-monero)
2016-05-17 19:09:57 +02:00
Riccardo Spagni
f03def87ad
Merge pull request #840
...
1c0bffb
Restrict also 'get_connections' and 'getbans' APIs. (osensei)
9f8bc49
Don't allow 'flush_txpool' and 'setbans' JSON_RPC methods when running in restricted mode. (osensei)
2016-05-17 19:09:11 +02:00
Riccardo Spagni
e54e4d96a4
Merge pull request #831
...
9ef8c7b
tests: fix tests broken by the removal of the block reward accumulation loop (moneromooo-monero)
a6e717e
cn_deserialize: deserialize tx_extra too (moneromooo-monero)
3eff37f
unit_tests: add a write_varint/read_varint test (moneromooo-monero)
7a66387
unit_tests: fix UNBOUND_LIBRARIES/UNBOUND_LIBRARY typo (moneromooo-monero)
d6bce4b
core: move tx_extra parsing errors to log level 1 (moneromooo-monero)
2016-05-17 19:07:28 +02:00
Riccardo Spagni
ae205020f6
Merge pull request #827
...
f1e70d1
Only log 1/N skipped blocks (Howard Chu)
cebb97c
Move refresh height to keys file from cache file (Howard Chu)
590c439
Make fast_refresh interruptible (Howard Chu)
687855d
Set refresh height earlier (Howard Chu)
2fb00c0
Fix 19fe8ae3ef
(Howard Chu)
2016-05-17 19:04:41 +02:00
osensei
1c0bffb5f0
Restrict also 'get_connections' and 'getbans' APIs.
2016-05-16 08:34:15 -03:00
Ilya Kitaev
40087a745f
WalletListener::moneySpent test
2016-05-16 13:11:44 +03:00
moneromooo-monero
d539be3359
crypto: make clear generate_random_bytes is not thread safe
...
And add a thread safe version to encourage proper use
2016-05-15 00:05:59 +01:00
osensei
9f8bc4946b
Don't allow 'flush_txpool' and 'setbans' JSON_RPC methods when running in restricted mode.
2016-05-14 03:06:04 -03:00
Ilya Kitaev
27d86b73c6
WalletListener::moneySpent(), WalletListener::moneyReceived()
2016-05-13 16:25:31 +03:00
Ilya Kitaev
ff52c67aa9
i_wallet_callback: virtual dtor
2016-05-13 12:59:29 +03:00
Ilya Kitaev
2d799097ca
Merge remote-tracking branch 'upstream/master'
2016-05-12 15:14:30 +03:00
Ilya Kitaev
5dbd2b8fc3
started WalletListener
2016-05-05 22:24:00 +03:00
Ilya Kitaev
71131a84ea
TransactionHistory continued
2016-05-05 21:30:25 +03:00
moneromooo-monero
9ef8c7b694
tests: fix tests broken by the removal of the block reward accumulation loop
...
The tests for rejection of unmixable outputs in v2 are commented out,
as there are no unmixable outputs created anymore. This should be
restored at some point.
2016-05-01 20:59:41 +01:00
moneromooo-monero
a6e717ed30
cn_deserialize: deserialize tx_extra too
2016-05-01 11:42:48 +01:00
moneromooo-monero
d6bce4be36
core: move tx_extra parsing errors to log level 1
...
They're not fatal, though indicate something wrong
2016-05-01 11:35:06 +01:00
Riccardo Spagni
30dce45643
Merge branch 'performance' of https://github.com/LMDB/bitmonero
2016-04-29 21:41:43 +02:00
Howard Chu
f1e70d15ca
Only log 1/N skipped blocks
2016-04-29 16:50:51 +01:00
Howard Chu
cebb97c913
Move refresh height to keys file from cache file
2016-04-29 15:33:28 +01:00
Howard Chu
590c43988c
Make fast_refresh interruptible
2016-04-29 15:33:28 +01:00
Howard Chu
687855d658
Set refresh height earlier
...
Do it before the generate() call so the value actually gets stored.
2016-04-29 15:33:28 +01:00
Ilya Kitaev
93119344ec
TransactionHistory continued
2016-04-29 16:26:14 +03:00
Riccardo Spagni
8b0d22a2aa
Merge pull request #826
...
76c6bf1
simplewallet: display all settings on set with no arguments (moneromooo-monero)
2016-04-29 10:44:59 +02:00
Riccardo Spagni
5b734c2a3a
Merge pull request #825
...
513a658
add a --max-concurrency flag (moneromooo-monero)
2016-04-29 10:43:48 +02:00
Howard Chu
2fb00c0666
Fix 19fe8ae3ef
...
Don't prompt for restore-height on generate-new-wallet
2016-04-29 04:51:02 +01:00
moneromooo-monero
e409e59d29
Print stack trace on exceptions
...
if libunwind is found.
Useful for debugging logs.
2016-04-28 23:34:51 +01:00
moneromooo-monero
76c6bf1875
simplewallet: display all settings on set with no arguments
2016-04-28 22:09:49 +01:00
moneromooo-monero
513a658c87
add a --max-concurrency flag
...
It sets the max number of threads to use for a parallel job.
This is different that the number of total threads, since monero
binaries typically start a lot of them.
2016-04-28 20:33:59 +01:00
moneromooo-monero
09dddf281a
wallet: add a filter_by_height field to get_transfers
...
It allows a simple get_transfers (with default 0 min_height and
max_height) to return all transactions, instead of the unexpected
set of txes in block 0, which is probably none at all.
2016-04-27 23:43:39 +01:00
Riccardo Spagni
bdb93cbf3d
Merge pull request #823
...
a687e6e
simplewallet: fix pending transfers fee display in show_transfers (moneromooo-monero)
2016-04-27 09:18:28 +02:00
Riccardo Spagni
29b2cfa3d9
Merge pull request #822
...
48ab3f9
wallet: add get_transfers rpc call (moneromooo-monero)
2016-04-27 09:15:15 +02:00
moneromooo-monero
a687e6e592
simplewallet: fix pending transfers fee display in show_transfers
2016-04-26 22:42:26 +01:00
moneromooo-monero
d7bb1752eb
simplewallet: more threading fixes
2016-04-26 22:40:57 +01:00
moneromooo-monero
48ab3f93ff
wallet: add get_transfers rpc call
...
Allows getting in, out, pending, and failed transfers, similarly
to the show_transfers command.
2016-04-26 22:39:52 +01:00
moneromooo-monero
7baed9bd89
wallet: allow attaching notes to txids
2016-04-26 19:07:33 +01:00
moneromooo-monero
ce6f8a6324
wallet: add GMT timestamps to transfers/payments
2016-04-26 19:07:25 +01:00
Riccardo Spagni
3d984854a6
Merge pull request #819
...
31587bd
random: call abort(3) instead of assert in must_succeed macro (moneromooo-monero)
2016-04-26 18:11:04 +02:00
Riccardo Spagni
cde9dce9c4
Merge pull request #817
...
4b1c0d6
simplewallet: some background refresh threading fixes (moneromooo-monero)
2016-04-26 18:08:59 +02:00
Riccardo Spagni
714dcc2866
Merge pull request #815
...
b0850a9
wallet: add a new sweep_all command and RPC command (moneromooo-monero)
2016-04-26 18:08:09 +02:00
Riccardo Spagni
7098ad6804
Merge pull request #814
...
68cbe15
modified: src/wallet/wallet2.cpp modified: src/wallet/wallet2.h (awfulcrawler)
4b325bd
modified: src/simplewallet/simplewallet.cpp modified: src/wallet/wallet2.cpp modified: src/wallet/wallet2.h (awfulcrawler)
2016-04-26 18:04:00 +02:00
Riccardo Spagni
fbfb8f46a9
Merge pull request #813
...
70c8656
blockchain: add missing overflow check for already generated coins (moneromooo-monero)
d6fd6be
blockchain: update cumulative block limit when popping a block (moneromooo-monero)
2016-04-26 18:03:31 +02:00
Riccardo Spagni
0fb0e7701b
Merge pull request #812
...
3102feb
abstract_tcp_server2: fix send queue limit warning spam (moneromooo-monero)
6bca9a8
abstract_tcp_server2: avoid deadlock waiting for send queue to drain (moneromooo-monero)
7450656
net_node: fix connection leak when ping fails with bad response (moneromooo-monero)
2016-04-26 18:02:57 +02:00
Riccardo Spagni
0922ae2b43
Merge pull request #811
...
672162d
tests: fix compile failure on wallet2::transfer (moneromooo-monero)
b0c18ef
wallet2: move output selection api public (moneromooo-monero)
2016-04-26 18:02:26 +02:00
Ilya Kitaev
566166aafd
merged with upstream
2016-04-26 13:46:20 +03:00
Ilya Kitaev
dce5374660
Merge remote-tracking branch 'upstream/master' into develop
2016-04-26 11:08:40 +03:00
Howard Chu
2b0fa05f0d
Another take on migration
...
Delete old indices and recreate them, rather than updating them
Maybe not quite as slow as before.
2016-04-24 17:46:50 +01:00
moneromooo-monero
31587bdd15
random: call abort(3) instead of assert in must_succeed macro
...
Avoids silent use of bad RNG in release builds, in case those
calls might actually fail.
Reported by smooth.
2016-04-24 12:26:56 +01:00
Ilya Kitaev
53a97bdcd3
Wallet API: transaction history in progress
2016-04-22 13:33:09 +03:00
Ilya Kitaev
02c9df5de2
Wallet API : transaction history in progress
2016-04-22 13:21:08 +03:00
moneromooo-monero
4b1c0d69f4
simplewallet: some background refresh threading fixes
...
We want to lock operations which access the blockchain in
wallet2. We also want the background refresh to happen again
when we cancel a foreground refresh. Wrap the locking setup
in a macro so it doesn't get copy/pasted/mangled, and use
a scope exit trick to ensure it's always properly restored.
2016-04-21 00:11:11 +01:00
Ilya Kitaev
a213887476
transaction history api in progress
2016-04-20 13:33:54 +03:00
Ilya Kitaev
b6aaf53a60
transaction history api in progress
2016-04-20 13:17:27 +03:00
Ilya Kitaev
f83f3cbd96
api implementation splitted over separate files
2016-04-20 13:01:00 +03:00
moneromooo-monero
b0850a9bea
wallet: add a new sweep_all command and RPC command
...
This sends all outputs in a wallet to a given address, alleviating
the difficulty people have had trying to send all monero but
being left with some small amount left.
2016-04-19 21:20:27 +01:00
Ilya Kitaev
4e1c2dc365
TransactionInfo / TransactionHistory APIs design
2016-04-19 12:25:03 +03:00
awfulcrawler
68cbe1579e
modified: src/wallet/wallet2.cpp
...
modified: src/wallet/wallet2.h
Removed working comments
2016-04-18 20:20:31 +12:00
awfulcrawler
4b325bdb66
modified: src/simplewallet/simplewallet.cpp
...
modified: src/wallet/wallet2.cpp
modified: src/wallet/wallet2.h
Update to fix unconfirmed balance and give a slightly more verbose and informative confirmation message for transfers
2016-04-18 14:57:47 +12:00
Howard Chu
19fe8ae3ef
Add --restore-height option
...
For specifying the block height from which to start a restore
2016-04-17 15:25:46 +01:00
Howard Chu
b6e42c3276
Speed up new wallet refresh
...
Use the current blockchain height as the refresh_from_block_height.
2016-04-17 15:25:46 +01:00
Howard Chu
b7140daea2
Add GET_HASHES_FAST rpc, use it in wallet
...
When m_refresh_from_block_height has been set, only hashes will be
retrieved up to that height, instead of full blocks. The same will
be done for "refresh <height>" when the specified height is beyond
the current local blockchain.
2016-04-17 15:25:46 +01:00
moneromooo-monero
70c86561af
blockchain: add missing overflow check for already generated coins
...
When reaching the tail emission phase, the amount of coins will
eventually go over MONEY_SUPPLY, overflowing 64 bits. There was
a check added to blockchain_storage, but this was not ported to
the blockchain DB version.
Reported by smooth.
2016-04-17 14:46:17 +01:00
moneromooo-monero
d6fd6be5de
blockchain: update cumulative block limit when popping a block
...
Avoids possible issues with accepting a tx too large to fit
in an actual block.
Reported by smooth.
2016-04-17 14:46:13 +01:00
moneromooo-monero
7450656bf3
net_node: fix connection leak when ping fails with bad response
...
If there is no comms error, but the response is not as expected,
close would not be called.
2016-04-17 11:24:07 +01:00
moneromooo-monero
b0c18ef9cd
wallet2: move output selection api public
2016-04-17 11:20:44 +01:00
Riccardo Spagni
1c66fe04bc
Merge pull request #803
...
c33ffc8
simplewallet: save fixes in RPC mode (moneromooo-monero)
2016-04-14 16:26:46 +09:00
Riccardo Spagni
0ecb152810
Merge pull request #785
...
1a58d20
simplewallet: optional address in --generate-from-json (moneromooo-monero)
2016-04-14 16:26:11 +09:00
Riccardo Spagni
8f78f1407e
Merge pull request #784
...
087373e
Fix potential race with parallel processing of txes/signatures/blocks (moneromooo-monero)
2016-04-14 16:25:53 +09:00
Riccardo Spagni
6bfb8799c3
Merge pull request #783
...
48d0747
wallet: better output selection for transfer/transfer_new (moneromooo-monero)
2016-04-14 16:25:38 +09:00
Riccardo Spagni
17049fa8e8
Merge pull request #782
...
113cdc1
core: keep the acc loop for the genesis block (moneromooo-monero)
2016-04-14 16:25:18 +09:00
Riccardo Spagni
a299e5269b
Merge pull request #801
...
ed61a2c
simplewallet: set strict umask at start (moneromooo-monero)
7385c03
util: add a function to set umask to 077 (moneromooo-monero)
2016-04-14 16:21:29 +09:00
Riccardo Spagni
784a2108f4
Merge pull request #800
...
4cfb4df
blockchain: remove the tx validation result cache (moneromooo-monero)
2016-04-14 16:21:08 +09:00
Riccardo Spagni
c2e9866fc6
Merge pull request #797
...
d662ab5
rpc: print human readable time since received when printing pool (moneromooo-monero)
5c9dd23
rpc: add a do_not_relay boolean to tx submission (moneromooo-monero)
2016-04-14 16:20:41 +09:00
Riccardo Spagni
da277e17b5
Merge pull request #796
...
d817aec
tx_pool: ensure no txes that fail check_inputs get in the block template (moneromooo-monero)
2016-04-14 16:20:17 +09:00
Ilya Kitaev
1774d9574b
TODOs for Transaction/Transfer interface
2016-04-12 22:30:20 +03:00
moneromooo-monero
c33ffc8e94
simplewallet: save fixes in RPC mode
...
^C when in RPC mode would not save the wallet while it was still
refreshing after starting up.
Also, save the wallet out of the signal handler. We don't want
to call complex stuff in a signal handler.
2016-04-10 16:56:12 +01:00
moneromooo-monero
f17b2f42b2
rpc: add pool/blockchain and block height results to gettransactions
2016-04-09 12:40:32 +01:00
Howard Chu
c14f9efd52
Migration
...
Migrate from DB version 0 to version 1 on startup
2016-04-08 03:11:05 +01:00
moneromooo-monero
ed61a2ccc1
simplewallet: set strict umask at start
2016-04-06 20:00:25 +01:00
moneromooo-monero
7385c036bd
util: add a function to set umask to 077
...
Useful to ensure files are written without group/other read rights.
2016-04-06 19:59:34 +01:00
moneromooo-monero
4cfb4dff3e
blockchain: remove the tx validation result cache
...
As pointed out by smooth, a transaction's validity may change
over time as the blockchain changes.
2016-04-06 19:01:28 +01:00
Ilya Kitaev
d97e9ef8a5
Transaction API continued
2016-04-06 13:56:57 +03:00
moneromooo-monero
1aad759bf1
tx_pool: fix (hopefully) save/load of kept_by_block
2016-04-06 00:11:31 +01:00
Howard Chu
d7ea7d9a23
Merge branch 'performance' into master
2016-04-05 21:13:16 +01:00
Howard Chu
372acee723
Cleanup
...
drop obsolete remove_output()
fix get_output_key(global), fix crash in blockchain_dump
2016-04-05 21:05:24 +01:00
Howard Chu
591e421875
Cleanup and clarify
...
Try to rationalize the variable names, document usage.
2016-04-05 20:57:45 +01:00
Howard Chu
b2f1c58805
Use cursors in some remove functions
...
Helps when they're called repeatedly in one txn
2016-04-05 20:57:31 +01:00
Howard Chu
118dd69dd5
Use DUPFIXED for block_info and output_txs
...
Saves another ~150MB or so on the full blockchain
2016-04-05 20:55:16 +01:00
Howard Chu
6225716f3c
More outputs consolidation
...
Also bumped DB VERSION to 1
Another significant speedup and space savings:
Get rid of global_output_indices, remove indirection from output to keys
This is the change warptangent described on irc but never got to finish.
2016-04-05 20:55:12 +01:00
Howard Chu
7c5abdc3a3
Use DUPFIXED for output_keys
...
Saves another 90MB on 200000 block import.
Had to bring back compare_uint64 for this, but it's safe since
this table is always 64-bit aligned.
2016-04-05 20:54:42 +01:00
Howard Chu
8e9d8e3364
Use DUPFIXED for tx_indices
...
Small space savings, no measurable speedup
2016-04-05 20:54:39 +01:00
Howard Chu
a12f9365f8
Use DUPFIXED for block_heights
...
Only a small savings...
2016-04-05 20:54:07 +01:00
Howard Chu
38c2277d6f
Use DUPFIXED for spent_keys
2016-04-05 20:54:07 +01:00
warptangent
bf769c32ba
Add back changes from revert.
...
m_tx_outputs doesn't need to be changed, as it's no longer dup list.
2016-04-05 20:54:07 +01:00
warptangent
46b991b362
Use MDB_APPEND mode with two tx subdbs
...
This is possible on those using a tx index as a key.
2016-04-05 20:54:07 +01:00
warptangent
9aadedb1d0
Schema update: tx_indices - consolidate the tx subdbs from 5 to 3
2016-04-05 20:54:06 +01:00
warptangent
a2f518aa01
Schema update: tx_indices - yet less indirection
2016-04-05 20:54:06 +01:00
warptangent
8d12a8df2c
Schema update: tx_indices - improve further with less indirection
2016-04-05 20:54:06 +01:00
warptangent
7c013f66e9
Add batch warning for further review
2016-04-05 20:54:06 +01:00
warptangent
ae0854a431
Schema update: tx_indices
2016-04-05 20:54:06 +01:00
Howard Chu
8d252a4214
Consolidated block info
2016-04-05 20:53:59 +01:00
warptangent
132c666f67
Update schema for "tx_outputs" to use array containing amount output indices
...
This speeds up wallet refresh by directly retrieving a tx's amount output indices.
It removes the indirection and walking the amount output duplicate list
for every amount in each requested tx.
"tx_outputs" is used by:
Amount output indices are needed for wallet refresh.
Global output indices are needed for removing a tx.
Both amount output indices and global output indices are now stored in
an array of 64-bit unsigned ints:
tx_outputs[<tx_hash>] -> [ <a1_oi, a1_gi, a2_oi, a2_gi, ...> ]
Previously it was:
tx_outputs[<tx_hash>] -> duplicate list of <a1_gi, a2_gi, a3_gi, ...>
The amount output list had to be walked for every amount in order to
find each amount's output index, by comparing the amount's global output
index with each one in the duplicate list until a match was found.
See also d045dfa7ce
2016-04-05 20:30:50 +01:00
warptangent
309f8f3d44
blockchain_utilities: Update documentation
2016-04-05 20:30:50 +01:00
luigi1111
7ac1db42c2
get_payments short ID
...
Add support for short/integrated/encrypted IDs to get_payments RPC
2016-04-05 20:30:50 +01:00
moneromooo-monero
d662ab5cec
rpc: print human readable time since received when printing pool
2016-04-05 20:16:05 +01:00
moneromooo-monero
5c9dd23b1c
rpc: add a do_not_relay boolean to tx submission
...
Just to make it easier
2016-04-05 20:15:54 +01:00
Ilya Kitaev
079fbd3d42
Wallet::createTransaction API introduced
2016-04-05 15:24:44 +03:00
moneromooo-monero
d817aeca80
tx_pool: ensure no txes that fail check_inputs get in the block template
2016-04-05 13:06:29 +01:00
Ilya Kitaev
ee5bb17f26
Wallet::transfer() continued
2016-04-04 14:56:17 +03:00
Ilya Kitaev
c37c856d6d
Wallet::transfer in progress
2016-04-03 14:34:38 +03:00
moneromooo-monero
1a58d202b2
simplewallet: optional address in --generate-from-json
...
When present, it can be used to validate the keys, as well
as deduce the spend key, if it is absent (watch wallet).
2016-04-02 15:22:59 +01:00
moneromooo-monero
087373eccf
Fix potential race with parallel processing of txes/signatures/blocks
2016-04-02 14:20:51 +01:00
moneromooo-monero
48d0747d00
wallet: better output selection for transfer/transfer_new
...
This now requests the set of outputs that can be mixed first,
to avoid trying non dust but unmixable outputs, which we know
will fail.
2016-04-02 14:17:02 +01:00
moneromooo-monero
113cdc10a2
core: keep the acc loop for the genesis block
...
For unknown reasons, it was generated with a block reward
consisting of a single large dusty output.
2016-04-02 11:17:49 +01:00
Riccardo Spagni
a42e19e1b7
bumped version number
2016-04-02 12:21:59 +09:00
Riccardo Spagni
cc54e2764a
Merge pull request #779
...
daac1cc
core: remove the block reward accumulation loop (moneromooo-monero)
2016-04-02 12:05:57 +09:00
Riccardo Spagni
dea1aa75bc
Merge pull request #778
...
efbdde2
Detect map resize failures (Howard Chu)
2016-04-02 12:05:40 +09:00
Riccardo Spagni
ab43e80331
Merge pull request #777
...
8757e46
add blockhashing blob to getblocktemplate (Howard Chu)
2016-04-02 12:05:07 +09:00
Riccardo Spagni
b22f550c67
Merge pull request #772
...
ead6956
simplewallet: always gracefully exit on EOF (moneromooo-monero)
2016-04-02 12:03:25 +09:00