Age | Commit message (Collapse) | Author | Files | Lines |
|
The wrong iterator was being used.
Also preincrement iterators to avoid possibly invalidating them,
I'm not sure this is necessary, but let's be safe.
|
|
0b91d825 simplewallet: restore automatically setting trusted local daemon (moneromooo-monero)
|
|
6c44f5c6 wallet: send 0 change to a random address where necessary with rct (moneromooo-monero)
|
|
3b005275 ringct: add sc_check calls in MLSAG_Ver for ss and cc (moneromooo-monero)
2f1732a7 ringct: guard against bad data exceptions in worker threads (moneromooo-monero)
|
|
648ea6be blockchain: bring the v4 fork height one block forward (luigi1111)
46a0dcc1 ringct: luigi1111's changes to fix and speedup Borromean sigs (luigi1111)
76958fc7 ringct: switch to Borromean signatures (Shen Noether)
|
|
d1a75754 Remove infinite loop in refresh code (Jaquee)
|
|
|
|
luigi1111's recommendation
|
|
If purported pubkeys aren't actually valid pubkeys, exceptions
will fly. These will terminate if thrown in a worker thread.
Guard against this.
|
|
If a rct transaction would cause no change to be generated, a zero
change output is added, and sent to a randomly generated address.
This ensures that no transaction will be sent with just one output,
which could cause the receiver to be able to determine which of the
inputs in the sent rings is the real one.
This is very rare, since it requires the sum of outputs to be equal
to the sum of outputs plus the fee, which is now a function of the
last few blocks.
|
|
This will ensure the early 0.10 daemons will barf at the fork
height, and not a bit later, which could be confusing.
|
|
|
|
This reverts commit fd181b03bb58a8b0628d2af8637cf6bb968fc437.
|
|
|
|
|
|
73ac3b8e wallet2: avoid possible undefined behavior on empty string (moneromooo-monero)
|
|
f4772bae Fix a few minor typos (Pierre Boyer)
|
|
3f7d6fb5 Fix delayed exit when syncing (moneromooo-monero)
|
|
7c0dd5e4 net_node: drop connections from banned IPs after looping through connections (moneromooo-monero)
|
|
59443bf9 ringct: fix MGs serialization to JSON (moneromooo-monero)
|
|
0e18f465 db_lmdb: add info in an error message when we can't get an output (moneromooo-monero)
c96f9b02 db_lmdb: guard against going out of sync on unexpected db results (moneromooo-monero)
bef51e67 db_lmdb: minor pedantic tweaks (moneromooo-monero)
3465c4eb db_lmdb: set same packing format for output_data_t and pre_rct_output_data_t (moneromooo-monero)
|
|
204b1bff blockchain: use high bound block reward on error where appropriate (moneromooo-monero)
|
|
4adde042 p2p: possibly fix crash in relay_blocks (moneromooo-monero)
|
|
5783dd8c tests: add unit tests for uri parsing (moneromooo-monero)
82ba2108 wallet: add API and RPC to create/parse monero: URIs (moneromooo-monero)
d9001b43 epee: add functions to convert from URL format (ie, %XX values) (moneromooo-monero)
|
|
fcd178ef wallet_api: add a few daemon related getters (moneromooo-monero)
|
|
8f6ec90c blockchain: reject invalid pubkeys from v4 (moneromooo-monero)
|
|
00592189 change 'invalid address format' loglevel (Jaquee)
|
|
657a70e0 wallet: add a getter for the filename path (moneromooo-monero)
|
|
d6086f5b Improve daemon RPC version handling (moneromooo-monero)
|
|
|
|
|
|
|
|
This keeps the connections lock just for the time of looping
and adding connectoins to a list, and the dropping happens
after it. This should avoid lengthy delays waiting for the
connections lock.
|
|
|
|
|
|
If the block reward to use for the fee calculation can't be
calculated (should not happen in practice), use a high bound,
so we use a fee overestimate that will be accepted by the network.
|
|
Will be useful to debug
|
|
m_num_outputs keeps track of the number of outputs, which should
be the same as the size of both the output_txs and output_amounts
databases. If one goes out of sync, we need to throw to abort
whatever it is we were doing.
|
|
Add consts in a few places where it makes sense, avoid unnecessary
memory reallocation where we know the full size needed at the outset,
simplify and avoid memory copy.
|
|
For safety, though it seems to have been the case already.
Also add a comment about the necessary layout identity.
|
|
Blockchain height, version, Mining hash rate...
|
|
|
|
|
|
|
|
|
|
Daemon RPC version is now composed of a major and minor number,
so that incompatible changes bump the major version, while
compatible changes can still bump the minor version without
causing clients to unnecessarily complain.
|
|
|
|
17b6bd6 Fix DNS failures in offline mode preventing daemon startup (moneromooo-monero)
|
|
6d76072 simplewallet: remove double confirmation when submitting signed tx (moneromooo-monero)
92dea04 wallet2: fix wrong change being recorded for cold signed txes (moneromooo-monero)
|
|
f025198 Added task_region - a fork/join task implementation (Lee Clagett)
|
|
1d9e223 rpc: do not include output indices for pool txes (moneromooo-monero)
e227d6e rpc: bump version after RPC changes (moneromooo-monero)
2c0173c Add a get_outs (fully text based) version of get_outs.bin (moneromooo-monero)
e05907b rpc: add output indices to gettransactions (moneromooo-monero)
|
|
7abfc54 wallet: fix exporting outputs and key images with txes with two pubkeys (moneromooo-monero)
|
|
5fc36f9 wallet2_api: fix history leak on destruction (moneromooo-monero)
|
|
69b188c wallet2_api: fix payment ids from integrated addresses being ignored (moneromooo-monero)
|
|
d01f5c7 wallet2: fix illegal memory access removing newlines from password (moneromooo-monero)
|
|
e6264a2 wallet2: fix decrypting a bit too much in authenticated mode (moneromooo-monero)
|
|
|
|
|
|
|
|
|
|
Those aren't yet in the blockchain, so will not be found
(and aren't yet known, since it depends on where exactly the
tx will be mined in the next block or blocks)
|
|
|
|
|
|
Someone apparently needs that to make a wallet but never asked.
If you read that and that's not what you wanted, the bugtracker
is at https://github.com/monero-project/monero/issues
|
|
This also needs to make sure to pick the correct one, in the case
where cold signing caused to tx keys to be included.
|
|
|
|
|
|
|
|
|
|
|
|
4eb7347 wallet: return fee in transfer RPC (moneromooo-monero)
|
|
4fca34d Wallet2: calculate approximate blockchain height on offline creation (Jacob Brydolf)
|
|
a0131c8 wallet: auto sync outputs and key images in cold signing files (moneromooo-monero)
f806611 wallet2: fill key image and pubkey maps when importing outputs (moneromooo-monero)
5fe363c wallet: cast indices to string in logs to be nice to CLANG (moneromooo-monero)
11ae187 wallet2: try all tx keys when scanning a new transaction (moneromooo-monero)
072d646 wallet2: fill in key image map when importing key images (moneromooo-monero)
23d80b1 core: remove any tx pubkey from extra before adding one (moneromooo-monero)
d72376d simplewallet: add a verbose flag to incoming_transfers (moneromooo-monero)
47413a5 simplewallet: spell out change when signing a transfer (moneromooo-monero)
14cb088 simplewallet: print public keys too on spendkey/viewkey commands (moneromooo-monero)
a99ab49 wallet: fix serialization of new m_key_image_known member (moneromooo-monero)
|
|
bd4da18 simplewallet: include amount sent in transfer confirmation (moneromooo-monero)
|
|
|
|
When passing around unsigned and signed transactions, outputs
and key images are passed along (outputs are passed along unsigned
transactions from the hot wallet to the cold wallet, key images
are passed along with signed transations from the cold wallet
to the hot wallet), to allow more user friendly syncing between
hot and cold wallets.
|
|
|
|
|
|
The vast majority of transactions will have just one tx pubkey,
but a bug with cold wallet signing caused two such keys to be
there, with the second one being the real one.
|
|
|
|
This will happen when signing a transaction from a cold wallet,
and we don't want the placeholder the hot wallet put in it.
|
|
Prints pubkey and key image as well
|
|
Also catch change to multiple addresses, this is unexpected
|
|
|
|
|
|
|
|
|
|
265e460 Fixed generate-from-json bug introduced in 358e068 (Lee Clagett)
|
|
|
|
Wallet API: add approximateBlockChainHeight()
|
|
|
|
|
|
358e068 Created monero-wallet-rpc, moving functionality from monero-wallet-cli (Lee Clagett)
|
|
0e418d2 rpc: bump RPC version (moneromooo-monero)
|
|
9150a16 Wallet API: use stored refresh height when rebuilding cache (Jacob Brydolf)
|
|
63772e4 wallet: fix corner case of no recent outputs available (moneromooo-monero)
|
|
1669621 wallet2_api: support for sweeping all (moneromooo-monero)
|
|
d61bd81 add lightweight block propagation ("fluffy blocks") (Dion Ahmetaj)
|
|
I forgot to bump it previously when changing RPC, most notably
for the addition of the unlocked field in the histogram RPC.
This causes new wallets to not realize when they're talking to
an older daemon, and get confused trying to get outputs to use
as fake outs. This otherwise gratuitous bump ensures than old
daemons will be detected by wallets using this code.
|
|
|
|
|
|
Added a new command to the P2P protocol definitions to allow querying for support flags.
Implemented handling of new support flags command in net_node. Changed for_each callback template to include support flags. Updated print_connections command to show peer support flags.
Added p2p constant for signaling fluffy block support.
Added get_pool_transaction function to cryptnote_core.
Added new commands to cryptonote protocol for relaying fluffy blocks.
Implemented handling of fluffy block command in cryptonote protocol.
Enabled fluffy block support in node initial configuration.
Implemented get_testnet function in cryptonote_core.
Made it so that fluffy blocks only run on testnet.
|
|
|
|
Also clarify related logs
|
|
acf908c thread_group: fix build with asserts enabled (moneromooo-monero)
|
|
5c4cb96 cryptonote_protocol: drop connection when find_blockchain_supplement fails (moneromooo-monero)
|
|
40a68e2 wallet2_api: add API for create_unmixable_sweep_transactions (moneromooo-monero)
|
|
c441a61 wallet2_api: API to sign and verify a message (moneromooo-monero)
|
|
4dcb74f wallet_api: PendingTransaction::txCount - number of split transactions (Ilya Kitaev)
|
|
c80f4d4 wallet: fix output collision detection for view wallets (moneromooo-monero)
|
|
See https://github.com/monero-project/monero/pull/1291
|
|
This will be when we can't find common ground between the peer's
short chain history and our blockchain.
This fixes bad peers claiming a higher blockchain height from never
dropped, and keeping the node in synchronizing state forever, since
we will never get blocks from that peer.
|
|
|
|
|
|
0c530de Wallet API: Pause refresh while creating transaction (Jacob Brydolf)
|
|
8aba0d4 wallet: encrypt outputs and key images files with the view key (moneromooo-monero)
|
|
63fe6fd wallet2_api: allow connection to return "yes, but wrong version" (moneromooo-monero)
|
|
35da3cb Wallet API: added getTxKey() (Jacob Brydolf)
|
|
|
|
eb19492 wallet2_api: do not copy the whole pending tx when iterating (moneromooo-monero)
|
|
97288a5 wallet2_api: add API for tx notes (moneromooo-monero)
|
|
af8a260 wallet_api: txkey checking functions for the GUI (moneromooo.monero)
|
|
64094e5 adding thread_group for managing async tasks (Lee Clagett)
|
|
a970a4e refresh speedup (luigi1111)
|
|
18f66f4 wallet: use the dynamic per kB fee (moneromooo-monero)
e6deb8a rpc: add a dynamic fee estimation RPC call (moneromooo-monero)
82dbba1 core: dynamic fee algorithm from ArticMine (moneromooo-monero)
|
|
|
|
|
|
This key is available to both cold and hot wallet.
Authenticated encryption will guard against interception and/or
modification of the file.
|
|
View wallets do not have the spend secret key, and are thus
unable to derive key images for incoming outputs. Moreover,
a previous patch set key images to zero as a means to mark
an output as having an unknown key image, so they could be
filled in when importing key images at a later time. That
later patch caused spurious collisions. We now use public
keys to detect duplicate outputs. Public keys obtained from
the blockchain are checked to be identical to the ones
derived locally, so can't be spoofed.
|
|
|
|
|
|
|
|
|
|
|
|
m_amount_out was sometimes getting initialized with the sum of
an transaction's outputs, and sometimes with the sum of outputs
that were not change. This caused confusion and bugs. We now
always set it to the sum of outputs. This reverts an earlier
fix for bad amounts as this used the other semantics. The wallet
data should be converted automatically in a percentage of cases
that I'm hesitant to estimate. In any case, restoring from seed
or keys or rebuilding the cache will get it right.
|
|
48b57d8 monero.supp: valgrind suppressions file (moneromooo-monero)
ffd8c41 ringct: check the size of amount_keys is the same as destinations (moneromooo-monero)
836669d ringct: always shutdown the boost io service (moneromooo-monero)
|
|
Compute derivation only once per tx, instead of once per output. Approx 33% faster while using 75% as much CPU on my machine. Note old functions in cryptonote_core (lookup_acc_outs and is_out_to_acc) are still used by tests.
|
|
43ec2d0 Wallet API: added walletExists logic (Jacob Brydolf)
|
|
4869db7 adding static_assert to pod functions in string tools (Lee Clagett)
|
|
f5ccfa4 core: fix removal of extra nonce using wrong type (moneromooo-monero)
3c2cad2 Revert "remove cn_deserialize" (moneromooo-monero)
|
|
bb560dd wallet: new import_outputs/export_outputs commands (moneromooo-monero)
|
|
7e6d3cf wallet: set incoming outputs' key image to 0 on view wallets (moneromooo-monero)
1f9e6a4 wallet: print tx overview on submit_transfer too (moneromooo-monero)
|
|
4bfb81a simplewallet: remove destinations with zero amount in sign_transfer (moneromooo-monero)
|
|
|
|
|
|
|
|
The fee will vary based on the base reward and the current
block size limit:
fee = (R/R0) * (M0/M) * F0
R: base reward
R0: reference base reward (10 monero)
M: block size limit
M0: minimum block size limit (60000)
F0: 0.002 monero
Starts applying at v4
|
|
|
|
This is useful (to me).
This reverts commit f968ccb9d3d34d163dc5638006e6b87c78ddfdb3.
|
|
The intended use is to export outputs from a hot wallet, which
can scan incoming transfers from the network, and import them
in the cold wallet, which can't. The cold wallet can then compute
key images for those outputs, which can then be exported with
export_key_images, etc.
|
|
|
|
This allows rescan_spent to know the daemon response to those
is not valid.
|
|
This is on the potentially compromised wallet, but still guards
against stupid mistakes.
|
|
This will happen when sending to another address, after removing
the fee.
|
|
|
|
|
|
Even if no worker threads were started, it needs shutting down
or it will cause an invalid access in the io service thread
|
|
fdef09f Wallet API: make sure path exists before searching for wallets (Jacob Brydolf)
|
|
069d688 simplewallet: log transactions to submit in submit_transfer (moneromooo-monero)
31abac4 wallet: fix pre-rct cold wallet signing not splitting change (moneromooo-monero)
|
|
eb4ecd4 daemon: fix min/max tracking using the wrong size (moneromooo-monero)
|
|
59f0d4b ringct: some more small optimizations (moneromooo-monero)
|
|
|
|
Not as trustworthy as this is in the view wallet, the one
that's considered compromised.
|
|
Re-creating the transaction on the cold wallet was not splitting
the change, causing the transaction to be rejected by the network.
This worked on testnet since amounts do not have to be split.
Also add selected_transfers, which can now be saved since they're
size_t rather than iterators. This allows the view wallet to
properly set the sent outputs as spent and update balance.
Bump transfer file version numbers to match.
|
|
Reported by iDunk
|
|
|
|
|
|
ff88252 simplewallet: factor locked_transfer, and fix a few rough edges (moneromooo-monero)
|
|
839280d daemon: add a print_pool_stats daemon command (moneromooo-monero)
|
|
Factor locked_transfer into transfer_main, which brings various
improvements for free (multiple addresses, proper detection of
multiple payment ids, obeying the prompt settings).
Also fix a few things, such as using uint64_t instead of int
for block heights, actually checking whether getting blockchain
height succeeded, etc.
|
|
10a79ea daemon: report transaction relay status in print_pool* commands (moneromooo-monero)
1e16366 core: notify the txpool when transactions are relayed (moneromooo-monero)
f3c374f tx_pool: set relayed flag on relay (moneromooo-monero)
|
|
372f338 wallet: sanity check on selected transfer indices in signed ptx (moneromooo-monero)
|
|
12d8616 perf_timer: format string fix for 32 bits (moneromooo-monero)
|
|
06b642d wallet_api: add address validation functions (moneromooo-monero)
|
|
Helps see what's going on now that Monero is getting used
|
|
|
|
|
|
|
|
b6b86ab wallet2_api: recognize full size payment ids as valid (moneromooo-monero)
|
|
2bf65df wallet_api: do not override invalid payment id (moneromooo-monero)
|
|
04da979 Always confirm transfers defaults to ON/YES (NanoAkron)
|
|
8231997 simplewallet: fix sweep_all misreporting sweeped amount for rct outputs (moneromooo-monero)
985f61a wallet: force 0 mixin transactions to use pre-rct txes (moneromooo-monero)
|
|
0950be9 wallet: speed up output selection, and fix bug with relatedness calculation (moneromooo-monero)
0eba133 wallet: fix mixup between mixin 2 and 4 before/after v5 (moneromooo-monero)
|
|
5e10fb0 rpc: add blockchain cumulative difficulty to getinfo call (moneromooo-monero)
|
|
094f4c8 rpc: add missing top block hash to json getinfo call (moneromooo-monero)
|
|
e76dcdd wallet: improve error messages when not enough money for transfer (moneromooo-monero)
|
|
2d7083c wallet_api: fix wrong amount in tx history (moneromooo-monero)
b5f2001 simplewallet: fix wrong amount in show_transfers (moneromooo-monero)
|
|
3429bfb ringct: thread verRct and verRctSimple (moneromooo-monero)
e06a4da ringct: remove unneeded type conversions (moneromooo-monero)
afc70df ringct: reserve space in vectors to avoid excessive reallocation (moneromooo-monero)
9ebf7b6 ringct: avoid unnecessary memcpy (moneromooo-monero)
1fe75c1 ringct: add a few consts where possible (moneromooo-monero)
ab002a1 ringct: pass vectors by const ref where possible (moneromooo-monero)
|
|
9c73128 Change default dust threshold to equal fee per kb (AwfulCrawler)
|
|
a3748f4 Rewrote add_wallet_create_if_needed for clearer flow and behaviour (NanoAkron)
|
|
|
|
|
|
|
|
a6bc110 patched parameter type bug that was causing failure on 32 bit (Dion Ahmetaj)
|
|
The payment id from integrated addresses is also parsed
|
|
|
|
Instead, return an empty string to mark the error
|
|
|
|
|
|
RingCT outputs will be 0 in the vin, so we need to get the actual
amount from elsewhere.
|