aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
AgeCommit message (Collapse)AuthorFilesLines
2015-11-27wallet2: parallelize pulling blocks and processing them on refreshmoneromooo-monero2-13/+49
This needed locking the use of m_http_client, to avoid collisions in I/O.
2015-11-27wallet2: maintain the short chain manually when refreshingmoneromooo-monero2-4/+17
2015-11-27wallet2: split pull blocks between pulling and processingmoneromooo-monero2-10/+20
2015-11-24Merge pull request #501Riccardo Spagni9-30/+142
d887c18 hardfork: fix more major/minor issues (moneromooo-monero) 3b47ca2 hardfork: fix rescan on load (moneromooo-monero) 4cea2b1 Add IP blocking for misbehaving nodes (adapted from Boolberry) (Javier Smooth) 9c64b12 quiet down p2p logging a bit (Javier Smooth) 53c75ab blockchain: log versions as numbers, not characters (moneromooo-monero) edade8d hardfork: fix actual/voting confusion (moneromooo-monero)
2015-11-24Merge pull request #500Riccardo Spagni1-1/+1
06c8b94 daemon: fix blockchain height display not updating after sync (moneromooo-monero)
2015-11-24Merge pull request #499Riccardo Spagni2-0/+196
410c6cf cn_deserialize: a new tool to decode blocks and transactions (moneromooo-monero)
2015-11-24Merge pull request #498Riccardo Spagni1-0/+1
3d0b3c5 add recent static checkpoint (Javier Smooth)
2015-11-24Merge pull request #497Riccardo Spagni4-40/+262
9b945f5 wallet: make the refresh optimizations selectable via command line (moneromooo-monero) d2c0313 wallet: speedup refresh from daemon (moneromooo-monero) ea707c7 wallet2: minor cleanup (moneromooo-monero) 55a2da7 wallet2: speedup refresh a bit (moneromooo-monero)
2015-11-24hardfork: fix more major/minor issuesmoneromooo-monero3-24/+26
Also add some more tests, and rename some instances of "version" and "add" for clarity. NOTE: the starting height values are sometimes wrong. I suspect this is due to the hard fork reorg code being buggy, since they're good when syncing after the fact. However, they're not actually used by the consensus code, so I'm ignoring this for now, but this needs debugging.
2015-11-23hardfork: fix rescan on loadmoneromooo-monero1-1/+1
2015-11-23Add IP blocking for misbehaving nodes (adapted from Boolberry)Javier Smooth6-2/+107
With minor cleanup and fixes (spelling, indent) by moneromooo
2015-11-23quiet down p2p logging a bitJavier Smooth1-1/+1
2015-11-23blockchain: log versions as numbers, not charactersmoneromooo-monero1-1/+1
2015-11-23hardfork: fix actual/voting confusionmoneromooo-monero1-3/+8
2015-11-23daemon: fix blockchain height display not updating after syncmoneromooo-monero1-1/+1
2015-11-22cn_deserialize: a new tool to decode blocks and transactionsmoneromooo-monero2-0/+196
2015-11-22add recent static checkpointJavier Smooth1-0/+1
2015-11-22wallet: make the refresh optimizations selectable via command linemoneromooo-monero4-6/+62
Take the opportunity to add a no-coinbase case too, for even faster sync when an address is known to never have mined to.
2015-11-22Merge pull request #495Riccardo Spagni3-5/+8
328636c fixed testnet fork point, added comment data back in (Riccardo Spagni) aed3038 disable time-stats by default, tweak fast-block-sync description (Riccardo Spagni) 8fe1111 update v2 testnet fork height (Riccardo Spagni) 4d74510 checkpoints update (Riccardo Spagni)
2015-11-22wallet: speedup refresh from daemonmoneromooo-monero2-38/+59
Assume the whole of a coinbase goes to the same address (so that if the first output isn't for us, none of it is), and only look for payment id when we received something in the transaction.
2015-11-22wallet2: minor cleanupmoneromooo-monero1-7/+4
- use std::vector::std::deque to not leak when exceptions happen - use std::unique_ptr instead of the deprecated std::auto_ptr
2015-11-22wallet2: speedup refresh a bitmoneromooo-monero2-3/+151
Use the NoodleDoodle threading technique to speedup a couple code blocks on the main path when refreshing blocks without any transactions for us.
2015-11-22fixed testnet fork point, added comment data back inRiccardo Spagni1-3/+3
2015-11-22Merge pull request #496Riccardo Spagni4-32/+130
db1fb66 wallet: storing outgoing tx info now defaults to enabled (moneromooo-monero) 9156ba3 wallet: rename store-tx-keys to store-tx-info (moneromooo-monero) b3d4d41 wallet: improve show_transfers (moneromooo-monero) 725ae4e wallet: use incoming blocks to keep track of payments too (moneromooo-monero) 00790a8 simplewallet: lessen display flicker confusion (moneromooo-monero)
2015-11-22wallet: storing outgoing tx info now defaults to enabledmoneromooo-monero1-2/+2
The info is stored encrypted, and is pretty useful, often after the fact.
2015-11-22wallet: rename store-tx-keys to store-tx-infomoneromooo-monero4-18/+19
With backward compatibility
2015-11-22wallet: improve show_transfersmoneromooo-monero3-14/+89
More information is now saved and displayed
2015-11-21wallet: use incoming blocks to keep track of payments toomoneromooo-monero3-5/+27
2015-11-21disable time-stats by default, tweak fast-block-sync descriptionRiccardo Spagni1-2/+2
2015-11-21update v2 testnet fork heightRiccardo Spagni1-3/+6
2015-11-21checkpoints updateRiccardo Spagni1-0/+0
2015-11-21simplewallet: lessen display flicker confusionmoneromooo-monero1-2/+2
Height seemed to be flying all over the place on a rescan here. Logging to a file shows the heights are actually correct, and this is some kind of screen refresh artifact. Flush after \r and update less often to reduce this effect a lot.
2015-11-21Merge pull request #493Riccardo Spagni9-6/+40
f3724ae Fix startup crash when using a locale boost does not like (moneromooo-monero) 0c1dae3 i18n: allow language to be passed as a parameter (moneromooo-monero)
2015-11-21Fix startup crash when using a locale boost does not likemoneromooo-monero7-1/+33
There are various locale related bugs in various versions of boost, where exceptions are thrown in boost::filesystem APIs when the current locale is not to boost's liking. It's not clear what "not to boost's liking" means in detail, though "en" and "en_US.UTF-8" are not to its liking. Fix it by running a test function that's known to throw in such a case, and resetting LANG and LC_ALL to C if an exception is thrown. In simplewallet, the locale is queried before that so the correct translations will still be used.
2015-11-21i18n: allow language to be passed as a parametermoneromooo-monero2-5/+7
If empty, it will still be fetched from the environment
2015-11-21Relay transactions when they linger too long in the poolmoneromooo-monero9-31/+128
The last relayed time of a transaction is maintained, and transactions will be relayed again if they are still in the pool after a certain amount of time, which increases with the transaction's age. All such transactions are resent, whether or not they originated on the local node.
2015-11-18Merge pull request #490Riccardo Spagni9-30/+43
baf101e More changes for 2-min blocks Use the correct block time for realtime fuzz on locktime Use the correct block time to calculate next_difficulty on alt chains (will not work as-is with voting) Lock unit tests to original block time for now (Javier Smooth) 4fea1a5 Adjust difficulty target (2 min) and full reward zone (60 kbytes) for block version 2 (Javier Smooth)
2015-11-18Merge pull request #487Riccardo Spagni4-11/+166
3f611bc wallet: track outgoing payments and add a show_transfers command (moneromooo-monero)
2015-11-15wallet: track outgoing payments and add a show_transfers commandmoneromooo-monero4-11/+166
It's a user friendly display of incoming and outgoing transfers, listed by height, within an optional height range.
2015-11-13Revert "db_bdb: record numbers for recno databases start at 1"moneromooo-monero1-3/+3
It looks like some of the indices passed to the DB access functions are already bumped by 1. Moreover, the existing code was not throwing DB errors with 0 keys, and this is unlikely if it really was using 0 keys. Last, this patch broke sync from scratch in at least one case. So I'm calling it bad and reverting it. This reverts commit bfc97401ae81bb30278a318de7f048c653bf6582.
2015-11-13More changes for 2-min blocksJavier Smooth6-13/+14
Use the correct block time for realtime fuzz on locktime Use the correct block time to calculate next_difficulty on alt chains (will not work as-is with voting) Lock unit tests to original block time for now
2015-11-13Adjust difficulty target (2 min) and full reward zone (60 kbytes) for block ↵Javier Smooth6-17/+29
version 2
2015-11-10hardfork: add a get_ideal_version(uint64_t) functionmoneromooo-monero2-0/+18
It returns the ideal version for a given height, which is based on the minimum height for a fork, disregarding votes
2015-11-08hardfork: allow per-fork voting thresholdsmoneromooo-monero3-21/+42
And setup the first fork to not vote
2015-11-01Merge pull request #470Riccardo Spagni1-0/+4
b1d0c8a blockchain_dump: fix build without berkeley db (moneromooo-monero)
2015-10-30blockchain_dump: fix build without berkeley dbmoneromooo-monero1-0/+4
2015-10-30simplewallet: add a set default-mixin commandmoneromooo-monero4-5/+87
The default default mixin is 4. It can now be changed per wallet.
2015-10-30wallet2: fix CLANG compile errormoneromooo-monero1-1/+1
2015-10-30Merge pull request #463Riccardo Spagni5-6/+11
051ddbc rpc: fix start_mining and status RPC crashes (moneromooo-monero)
2015-10-30Merge pull request #461Riccardo Spagni2-7/+7
bc110af blockchain_utilities: properly exit on error (moneromooo-monero)
2015-10-30Merge pull request #460Riccardo Spagni7-220/+0
4f873bc Remove some old/obsolete/unused code (moneromooo-monero)
2015-10-30Merge pull request #457Riccardo Spagni2-2/+3
e70d2e5 common: const and init list pedantry (moneromooo-monero)
2015-10-30Merge pull request #455Riccardo Spagni3-12/+12
6df4e67 Fix a possibly-unused warning, and rationalize types (moneromooo-monero)
2015-10-28rpc: fix start_mining and status RPC crashesmoneromooo-monero5-6/+11
They check whether they're running on testnet by accessing the m_rpc_server object, which does not exist when in RPC mode. Also, fix hard_fork_info being called with the wrong API.
2015-10-27blockchain_utilities: properly exit on errormoneromooo-monero2-7/+7
Replace boolean values and exceptions where appropriate
2015-10-27Remove some old/obsolete/unused codemoneromooo-monero7-220/+0
git history's here if needed to get any of this back
2015-10-27common: const and init list pedantrymoneromooo-monero2-2/+3
2015-10-27Fix a possibly-unused warning, and rationalize typesmoneromooo-monero3-12/+12
2015-10-27Merge pull request #453Riccardo Spagni3-8/+13
3e89df4 Build fixes for the old blockchain_storage version (moneromooo-monero)
2015-10-26Build fixes for the old blockchain_storage versionmoneromooo-monero3-8/+13
2015-10-26db_bdb: add versioning, to detect incompatible format changesmoneromooo-monero2-0/+83
2015-10-26db_lmdb: add versioning, to detect incompatible format changesmoneromooo-monero2-8/+85
2015-10-26renamed folderRiccardo Spagni174-4830/+0
2015-10-26Merge pull request #448Riccardo Spagni3-7/+11
06c65cb rpc: fix hard_fork_info RPC (moneromooo-monero) 6f5c129 rpc: fix a few commands not working as command line (moneromooo-monero)
2015-10-26Merge pull request #446Riccardo Spagni5-0/+71
9caf52b daemon: add a status command (moneromooo-monero)
2015-10-26Merge pull request #444Riccardo Spagni5-3/+14
ecbb732 Fix leak on real output when using a very recent output (moneromooo-monero)
2015-10-26Merge pull request #442Riccardo Spagni11-21/+843
43bca0d blockchain_utilities: new blockchain_dump diagnostic tool (moneromooo-monero) 5f397e4 Add functions to iterate through blocks, txes, outputs, key images (moneromooo-monero) 0a5a5e8 db_bdb: record numbers for recno databases start at 1 (moneromooo-monero) 50dfdc0 db_bdb: DB_KEYEMPTY is also not found for non-top recon fields (moneromooo-monero) 572780e blockchain_db: use the DNE exceptions where appropriate (moneromooo-monero)
2015-10-26rpc: fix hard_fork_info RPCmoneromooo-monero3-4/+8
I had never tested it, obviously
2015-10-26rpc: fix a few commands not working as command linemoneromooo-monero1-3/+3
The method name to the "json_rpc" commands are names, not part of URLs.
2015-10-25daemon: add a status commandmoneromooo-monero5-0/+71
Displays current block height and target, net hash, hard fork basic info, and connections. Useful as a basic user friendly "what's going on here" command.
2015-10-25Fix leak on real output when using a very recent outputmoneromooo-monero5-3/+14
The wallet and the daemon applied different height considerations when selecting outputs to use. This can leak information on which input in a ring signature is the real one. Found and originally fixed by smooth on Aeon.
2015-10-25blockchain_utilities: new blockchain_dump diagnostic toolmoneromooo-monero2-0/+458
It dumps data from the blockchain to a JSON format, and is intended to help detect differences between data held in different database formats.
2015-10-25Add functions to iterate through blocks, txes, outputs, key imagesmoneromooo-monero9-0/+362
2015-10-25db_bdb: record numbers for recno databases start at 1moneromooo-monero1-3/+3
2015-10-25db_bdb: DB_KEYEMPTY is also not found for non-top recon fieldsmoneromooo-monero1-2/+2
2015-10-25blockchain_db: use the DNE exceptions where appropriatemoneromooo-monero2-17/+19
2015-10-21hardfork: switch voting to block minor versionmoneromooo-monero3-9/+20
Using major version would cause older daemons to reject those blocks as they fail to deserialize blocks with a major version which is not 1. There is no such restriction on the minor version, so switching allows older daemons to coexist with newer ones till the actual fork date, when most will hopefully have updated already. Also, for the same reason, we consider a vote for 0 to be a vote for 1, since older daemons set minor version to 0.
2015-10-17blockchain_export can now export to a blocks.dat formatmoneromooo-monero11-38/+368
Also make the number of blocks endian independant, and add support for testnet
2015-10-17bootstrap_file: do not try to create a directory with an empty namemoneromooo-monero1-10/+13
This will happen if the chosen output file does not have a path specified
2015-10-17hardfork: use DB transactions when reorganizingmoneromooo-monero1-3/+3
It speeds up a lot, which can be significant when reorganizing from the genesis block to create the hard fork data.
2015-10-17hardfork: simplify work done on reloadmoneromooo-monero2-1/+40
There is no need to fully recalculate and rewrite state, just refill state from the DB.
2015-10-15Merge pull request #432Riccardo Spagni1-1/+1
5ea2f93 wallet2: really include non canonical outputs in dust sweep (moneromooo-monero)
2015-10-15Merge pull request #431Riccardo Spagni4-8/+110
253ed76 core_rpc_server: add optional json decoded tx to COMMAND_RPC_GET_TRANSACTIONS (moneromooo-monero) ca23c0e core_rpc_server: add a getblock RPC command, and fix print_block (moneromooo-monero)
2015-10-14simplewallet: add a check_tx_key commandmoneromooo-monero2-0/+106
It allows one to check the amount of monero sent to a particular address in a particular transaction, given that transaction's tx key
2015-10-14wallet2: really include non canonical outputs in dust sweepmoneromooo-monero1-1/+1
2015-10-13core_rpc_server: add optional json decoded tx to COMMAND_RPC_GET_TRANSACTIONSmoneromooo-monero2-0/+6
2015-10-13core_rpc_server: add a getblock RPC command, and fix print_blockmoneromooo-monero4-8/+104
2015-10-12simplewallet: hide start_mining behind --trusted-daemonmoneromooo-monero1-0/+6
because it leaks your standard address
2015-10-11Merge pull request #427Riccardo Spagni2-0/+10
df8a110 simplewallet: add a --trusted-daemon flag (moneromooo-monero)
2015-10-11simplewallet: add a --trusted-daemon flagmoneromooo-monero2-0/+10
It allows enabling the rescan_spent command only for trusted daemon
2015-10-11simplewallet: bump default mixin from 3 to 4moneromooo-monero1-1/+1
As recommended in MRL-0004
2015-10-11from hard fork 2, all outputs must be decomposedmoneromooo-monero6-48/+67
The wallet decomposes fully as of now too.
2015-10-10from hard fork 2, claim a quantized reward in coinbasemoneromooo-monero4-4/+22
The small leftover is carried forward
2015-10-10cryptonote_format_utils: add a function to tell if an amount is canonicalmoneromooo-monero2-0/+31
2015-10-06Merge pull request #420Riccardo Spagni1-0/+6
ee27559 Update to compile with latest miniupnpc (warptangent)
2015-10-06Merge pull request #415Riccardo Spagni2-5/+5
180bcde build: default to Berkeley DB for 32 bit and ARM (moneromooo-monero) 791d8cb db_bdb: fix hard fork keys (moneromooo-monero)
2015-10-05Update to compile with latest miniupnpcwarptangent1-0/+6
upnpDiscover() takes a new argument for TTL. Use the suggested default of 2.
2015-10-04build: default to Berkeley DB for 32 bit and ARMmoneromooo-monero1-1/+1
2015-10-04db_bdb: fix hard fork keysmoneromooo-monero1-4/+4
Berkeley DB requires RECNO keys to be 32 bits, and forbids a key value of 0.
2015-10-04hardfork: move an assert so it actually worksmoneromooo-monero1-1/+1
An unsigned quantity is always >= 0
2015-09-28Merge pull request #410Riccardo Spagni3-31/+130
33affd2 blockchain: on hardfork 2, require mixin 2 at least if possible (moneromooo-monero) 434e0f4 hardfork: make the voting window a week (moneromooo-monero) 0a7421b hardfork: rescan speedup (moneromooo-monero) fec98b8 hardfork: remove use of GNU extension for initializing object (moneromooo-monero) 4bbf944 blockchain: on hardfork 2, allow miners to claim less money than allowed (moneromooo-monero) 088bc56 hardfork: change window semantics to not count the newly added block (moneromooo-monero) 198f557 blockchain: use different hard fork settings for testnet and mainnet (moneromooo-monero)
2015-09-28Merge pull request #409Riccardo Spagni1-2/+2
151c32d dns_utils: fix wrong asserts (moneromooo-monero)
2015-09-27blockchain: on hardfork 2, require mixin 2 at least if possiblemoneromooo-monero1-0/+37
2015-09-27hardfork: make the voting window a weekmoneromooo-monero1-1/+1
2015-09-27hardfork: rescan speedupmoneromooo-monero3-15/+41
Add a block height before which version 1 is assumed Use DB transactions
2015-09-27hardfork: remove use of GNU extension for initializing objectmoneromooo-monero2-4/+5
2015-09-27blockchain: on hardfork 2, allow miners to claim less money than allowedmoneromooo-monero1-3/+7
So they can avoid dust if they so wish
2015-09-27hardfork: change window semantics to not count the newly added blockmoneromooo-monero1-5/+20
This allows knowing the hard fork a block must obey in order to be added to the blockchain. The previous semantics would use that new block's version vote to determine this hard fork, which made it impossible to use the rules to validate transactions entering the tx pool (and made it impossible to validate a block before adding it to the blockchain).
2015-09-27blockchain: use different hard fork settings for testnet and mainnetmoneromooo-monero1-3/+19
2015-09-27dns_utils: fix wrong assertsmoneromooo-monero1-2/+2
Braino.
2015-09-20hardfork: most state now saved to the DBmoneromooo-monero9-100/+321
There will be a delay on first load of an existing blockchain as it gets reparsed for this state data.
2015-09-20hardfork: remove the "parts are copyright cryptonote" noticesmoneromooo-monero2-4/+0
I coded the whole thing from scratch.
2015-09-19Add an RPC call and daemon command to get info on hard fork votingmoneromooo-monero13-5/+169
2015-09-19blockchain: force a hardfork recalculation at load timemoneromooo-monero1-0/+3
Since the state isn't actually saved anywhere, as the archive code isn't called in the new DB version.
2015-09-19core: add consts where appropriatemoneromooo-monero6-79/+82
2015-09-13core: moan when we think an update is needed to get latest hard fork infomoneromooo-monero4-0/+35
2015-09-12blockchain: use the new hardfork classmoneromooo-monero3-8/+29
2015-09-12New hardfork classmoneromooo-monero3-2/+475
This keeps track of voting via block version, in order to decide when to enable a particular fork's code.
2015-09-12blockchain: add a couple missing includesmoneromooo-monero1-0/+2
2015-08-30Merge pull request #394Riccardo Spagni2-70/+56
3c10239 unbound: use the mini event fallback implementation (moneromooo-monero) 4e138a0 dns_utils: remove unnecessary string conversion (moneromooo-monero) f928468 dns_utils: factor the fetching code for different DNS record types (moneromooo-monero) 4ef0da1 dns_utils: simplify string handling and fix leak (moneromooo-monero) ae5f28c dns_utils: add a const where possible (moneromooo-monero) f43d465 dns_utils: lock access to the singleton (moneromooo-monero) 5990344 dns: make ctor private (moneromooo-monero)
2015-08-30dns_utils: remove unnecessary string conversionmoneromooo-monero1-5/+2
2015-08-30dns_utils: factor the fetching code for different DNS record typesmoneromooo-monero2-59/+34
2015-08-30dns_utils: simplify string handling and fix leakmoneromooo-monero1-5/+1
2015-08-27dns_utils: add a const where possiblemoneromooo-monero2-2/+2
2015-08-27dns_utils: lock access to the singletonmoneromooo-monero1-0/+4
This avoids races which could result in two objects being created
2015-08-27dns: make ctor privatemoneromooo-monero2-1/+15
This ensures one can't instanciate a DNSResolver object by mistake, but uses the singleton. A separate create static function is added for cases where a new object is explicitely needed.
2015-08-26Re-enable optimized slow-hash if someone is trying to compile w/MSVC ↵Javier Smooth1-1/+1
(disabling it was unintentional)
2015-08-26Merge pull request #390Riccardo Spagni2-2/+2
5dc53c2 wallet: use mutex protected random generation api (moneromooo-monero)
2015-08-26Merge pull request #388Riccardo Spagni1-1/+0
813e758 blockchain: remove obsolete call to libc srand (moneromooo-monero)
2015-08-26wallet: use mutex protected random generation apimoneromooo-monero2-2/+2
2015-08-24blockchain: remove obsolete call to libc srandmoneromooo-monero1-1/+0
crypto::rand is now used for output selection
2015-08-24simplewallet: add a store-tx-keys option to setmoneromooo-monero2-1/+46
To enable storing tx keys in the (now encrypted) wallet cache.
2015-08-24wallet: only return tx keys via RPC if requestedmoneromooo-monero6-11/+36
To get the tx keys returned via RPC, set the "get_tx_key" or "get_tx_keys" request field to true (defaults to false).
2015-08-24Merge pull request #385Riccardo Spagni174-0/+23117
0a4bc84 Added ref10 shen_ed25519_ref code, which includes code that can replace crypto-ops with a version straight from Bernstein's ref 10 (ShenNoether) 0d70fdc revert to 776b4fc91a821be152f0f23e6873aabb78a72029 (ShenNoether) b01f286 Added shen_ed25519_ref to crypto ops subfolder, the point is to directly have bitmonero's crypto code come from bernstein et al's ref 10 code (ShenNoether)
2015-08-24Merge pull request #383Riccardo Spagni4-7/+2
3b5330e use correct unsigned type (roman) 59cc92b removed some gcc warnings. mainly unused variables. (roman)
2015-08-24Merge pull request #381Riccardo Spagni3-4/+82
f197599 wallet: encrypt the cache file (moneromooo-monero) 98c76a3 chacha8: add a key generation variant that take a pointer and size (moneromooo-monero)
2015-08-23Added ref10 shen_ed25519_ref code, which includes code that can replace ↵ShenNoether174-0/+23117
crypto-ops with a version straight from Bernstein's ref 10
2015-08-23revert to 776b4fc91a821be152f0f23e6873aabb78a72029ShenNoether1-0/+0
2015-08-23Added shen_ed25519_ref to crypto ops subfolder, the point is to directly ↵ShenNoether1-0/+0
have bitmonero's crypto code come from bernstein et al's ref 10 code
2015-08-23use correct unsigned typeroman1-1/+2
2015-08-23removed some gcc warnings. mainly unused variables.roman4-7/+1
2015-08-22wallet: encrypt the cache filemoneromooo-monero2-2/+76
It contains private data, such as a record of transactions. The key is derived from the view and spend secret keys. The encryption currently is one shot, so may require a lot of memory for large wallet caches.
2015-08-22chacha8: add a key generation variant that take a pointer and sizemoneromooo-monero1-2/+6
2015-08-19make tx keys available to the usermoneromooo-monero8-10/+77
They are also stored in the cache file, to be retrieved using a new get_tx_key command.
2015-08-17Merge pull request #378Riccardo Spagni1-3/+21
7c4d6f1 simplewallet: Use default log file name when executable's file path is unknown (warptangent) b5b0f08 epee: Don't set log file name when process path name isn't found (warptangent)
2015-08-16simplewallet: Use default log file name when executable's file path is unknownwarptangent1-3/+21
Default to "simplewallet.log" in current directory when file path isn't obtained from epee. In this situation previously, it defaulted to the file name of ".log" ("" + ".log") in the current directory. (Thanks to @sammy007 for reporting bug.) An earlier version yet used "" + "/" + ".log" = "/.log", which resulted in silently not logging in most cases, due to lack of permission. Test: PATH=$PATH:</path/to/simplewallet/folder> && simplewallet --wallet-file /dev/null This results in epee not finding the executable's file path, so simplewallet will now use a default log filename.
2015-08-15blockchain: mark two places where the new code differs from the oldmoneromooo-monero1-0/+3
And I'd like a comment from tewinget or someone else
2015-08-15blockchain: update cumulative size after block additionmoneromooo-monero1-2/+2
Block addition can fail, and the old code would not update the cumulative size in that case.
2015-08-15blockchain: remove dead codemoneromooo-monero1-1/+0
2015-08-15blockchain: do not try to add a tx the pool when it was nor taken outmoneromooo-monero1-1/+4
This is an unintended difference from the old code. Though I don't think it can actually happen in practice with the current take_tx implementation.
2015-08-15blockchain: fix off by 1 in timestamp median calculationsmoneromooo-monero1-4/+2
The height function apparently used to return the index of the last block, rather than the height of the chain. This now seems to be incorrect, judging the the code, so we remove the now wrong comment, as well as a couple +/- 1 adjustments which now cause the median calculation to differ from the original blockchain_storage version.
2015-08-15Merge pull request #376Riccardo Spagni1-1/+1
7424cfc net_node: Use DNS resolver singleton (warptangent)
2015-08-14net_node: Use DNS resolver singletonwarptangent1-1/+1
Each thread can use the same resolver.
2015-08-14blockchain_import: Add --input-file optionwarptangent1-1/+9
This option specifies the input file path for importing. The default remains <data-dir>/export/blockchain.raw
2015-08-14blockchain_import: Updates for naming consistencywarptangent1-15/+14
2015-08-14Merge pull request #374Riccardo Spagni3-16/+21
97c5faa blockchain_export: Add --output-file argument (warptangent)
2015-08-14blockchain_export: Add --output-file argumentwarptangent3-16/+21
This option will export to the specified file path. The default file path remains <data-dir>/export/blockchain.raw
2015-08-14doc: hammer the fact that the raw file isn't blockchain.binmoneromooo-monero1-1/+2
2015-08-13Merge pull request #369Riccardo Spagni2-2/+6
d87a2d2 core_rpc_server: replace vector<bool> with vector<int> in RPC (moneromooo-monero)
2015-08-13Merge pull request #368Riccardo Spagni1-8/+5
7764cd7 net_node: skimplify rate limit code, and log as appropriate (moneromooo-monero)
2015-08-13Merge pull request #367Riccardo Spagni1-0/+24
e7b00ab core_rpc_server: find transactions in the pool as well as the blockchain (moneromooo-monero)
2015-08-13core_rpc_server: replace vector<bool> with vector<int> in RPCmoneromooo-monero2-2/+6
vector<bool> causes issues in serialization with Boost 1.56
2015-08-11net_node: skimplify rate limit code, and log as appropriatemoneromooo-monero1-8/+5
2015-08-11wallet: new rescan_spent command to update outputs' spent statusmoneromooo-monero5-0/+92
This obsoletes the need for a lengthy blockchain rescan when a transaction doesn't end up in the chain after being accepted by the daemon, or any other reason why the wallet's idea of spent and unspent outputs gets out of sync from the blockchain's.
2015-08-11core_rpc_server: find transactions in the pool as well as the blockchainmoneromooo-monero1-0/+24
2015-08-11blockchain_db: match tx addition semantics to original codemoneromooo-monero1-8/+24
The original code removed key images from a tx from the blockchain when an non to-key nor gen input was found in that tx. Additionally, the remainder of the tx data was added to the blockchain only after the double spend check passed.
2015-08-11Add a is_key_image_spent daemon command and RPC callmoneromooo-monero10-2/+139
2015-08-11blockchain: remove dead codemoneromooo-monero2-59/+6
2015-08-10Merge pull request #364Riccardo Spagni1-10/+7
533acc3 blockchain_db: store key images for tx without outputs too (moneromooo-monero)
2015-08-10Merge pull request #363Riccardo Spagni6-38/+12
4f19e68 blockchain: factor get_num_outpouts(amount) calls (moneromooo-monero) 275894c blockchain: always select random outs using triangular distribution (moneromooo-monero)
2015-08-10Merge pull request #362Riccardo Spagni1-1/+20
2634307 daemon: omit extra set of <> in error message (moneromooo-monero) 0822933 daemon: print a decoded tx in print_tx (moneromooo-monero) 1d678b1 daemon: fix print_tx not find transactions (moneromooo-monero)
2015-08-10Merge pull request #361Riccardo Spagni14-49/+278
a2d7a5f encrypted payment ids are now 64 bit, instead of 256 bit (moneromooo-monero) e40cfc4 Encrypted payment IDs (moneromooo-monero)
2015-08-09blockchain_db: store key images for tx without outputs toomoneromooo-monero1-10/+7
2015-08-09blockchain: factor get_num_outpouts(amount) callsmoneromooo-monero1-3/+3
It has to stay constant as we get the blockchain lock for the entire function. Avoids some unnecessary DB accesses.
2015-08-09blockchain: always select random outs using triangular distributionmoneromooo-monero6-35/+9
It was only used by the older blockchain_storage. We also move the code to the calling blockchain level, to avoid replicating the code in every DB implementation. This also makes the get_random_out method obsolete, and we delete it.
2015-08-09daemon: omit extra set of <> in error messagemoneromooo-monero1-1/+1
The string conversion already adds them
2015-08-09daemon: print a decoded tx in print_txmoneromooo-monero1-0/+18
in addition to the raw hex representation
2015-08-09daemon: fix print_tx not find transactionsmoneromooo-monero1-0/+1
It was not even trying to
2015-08-09encrypted payment ids are now 64 bit, instead of 256 bitmoneromooo-monero15-89/+169
Pros: - smaller on the blockchain - shorter integrated addresses Cons: - less sparseness - less ability to embed actual information The boolean argument to encrypt payment ids is now gone from the RPC calls, since the decision is made based on the length of the payment id passed.
2015-08-09Encrypted payment IDsmoneromooo-monero8-15/+164
A payment ID may be encrypted using the tx secret key and the receiver's public view key. The receiver can decrypt it with the tx public key and the receiver's secret view key. Using integrated addresses now cause the payment IDs to be encrypted. Payment IDs used manually are not encrypted by default, but can be encrypted using the new 'encrypt_payment_id' field in the transfer and transfer_split RPC calls. It is not possible to use an encrypted payment ID by specifying a manual simplewallet transfer/transfer_new command, though this is just a limitation due to input parsing.
2015-08-04Fix estimation of batch storage size when no blocks existwarptangent1-11/+28
If there's no blocks in database (m_height == 0): Don't assign incorrect block range to check. Skip average block size check. Test: Run blockchain_converter with an existing source blockchain.bin and a non-existent LMDB destination database. The converter creates a BlockchainLMDB instance with zero height, due to not being initialized with a genesis block, normally done by Blockchain::init(). While different than the behavior of bitmonerod, blockchain_import, and blockchain_export, the initialization hasn't been strictly necessary. The db batch size estimation normally uses an average block size, or a default minimum block size, whichever is greater. In this case, as there's no existing blocks to check for an average block size, the default should be used.
2015-08-04wallet: set watch-only flag to false when creating a new walletmoneromooo-monero1-0/+1
2015-07-24slight modification to wordlist contributor tagline (as these contributors ↵Riccardo Spagni2-2/+2
haven't used git to submit a PR, so we're creating the wordlist on their behalf
2015-07-24added Russian wordlistRiccardo Spagni3-0/+1701
2015-07-24Merge pull request #348Riccardo Spagni6-5/+438
988fe1f wallet: new transaction construction algorithm (moneromooo-monero)
2015-07-23change unique_prefix_length=4 for japanese.hDavid Vorick1-1/+1
I ran some tests, and all prefixes seem to be unique for len(3)
2015-07-22add Germany and Italian wordlistsRiccardo Spagni4-0/+3402
2015-07-22wallet: new transaction construction algorithmmoneromooo-monero6-5/+438
It should avoid a lot of the issues sending more than half the wallet's contents due to change. Actual output selection is still random. Changing this would improve the matching of transaction amounts to output sizes, but may have non obvious effects on blockchain analysis. Mapped to the new transfer_new command in simplewallet, and transfer uses the existing algorithm. To use in RPC, add "new_algorithm: true" in the transfer_split JSON command. It is not used in the transfer command.
2015-07-22fix portuguese wordlistRiccardo Spagni1-3/+3
2015-07-22fix license on English wordlistRiccardo Spagni1-2/+0
2015-07-19simplewallet: fix context/string order mismatchmoneromooo-monero1-1/+1
2015-07-19simplewallet: use unsigned long long instead of size_t in messagemoneromooo-monero1-4/+4
boost doesn't support %zu for size_t, and the previous change to %u could technically lose bits (though it would require splitting a transfer into 4 billion transactions, which seems unlikely).
2015-07-18wallet: add boolean to always confirm transactions with the usermoneromooo-monero4-6/+82
This can be useful if you want to be given a veto over the tx fee, or if you want to see what a tx fee would be without actually sending.
2015-07-18Merge pull request #345Riccardo Spagni1-2/+2
3c13da5 boost doesn't like %zu for size_t, replace with %u (moneromooo-monero)
2015-07-18Merge pull request #343Riccardo Spagni1-1/+1
e20a4dd blockchain: fix testnet syncing (to not use blocks.dat) (moneromooo-monero)
2015-07-18boost doesn't like %zu for size_t, replace with %umoneromooo-monero1-2/+2
2015-07-18blockchain: fix testnet syncing (to not use blocks.dat)moneromooo-monero1-1/+1
These are mainnet blocks, and would cause syncing on testnet to reject all incoming blocks.
2015-07-17Fixed threadpool bug when running on single core systems.NoodleDoodleNoodleDoodleNoodleDoodleNoo1-5/+8
*Thanks to freshman for reporting bug.
2015-07-16Add batch support to BlockchainLMDB::get_output_keywarptangent1-6/+12
This allows blockchain_import to work with batch and verify modes enabled (the default).
2015-07-15Removed on_idle() calls to Blockchain::store_blockchain() for lmdb.NoodleDoodleNoodleDoodleNoodleDoodleNoo5-17/+53
Added option to cache tx-input verification results.