aboutsummaryrefslogtreecommitdiff
path: root/src (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2017-02-06wallet2: fix transactions not considering rct inputsmoneromooo-monero2-11/+11
I broke this very recently in 2bf029be172a47ace8134143e1320fdb10d3ea44 and didn't notice in time
2017-02-04GUI: Improved refresh performanceJaquee1-7/+10
2017-02-04wallet api: Remove initAsync() and don't start refresh automatically on initJaquee3-31/+6
2017-02-04wallet2::init() - disconnect before init if connectedJaquee1-0/+2
Makes it possible for GUI to reinit with new daemon without closing and reopening wallet.
2017-02-04Use easylogging++'s stack trace facility where possiblemoneromooo-monero1-0/+19
This avoids using libunwind, which often causes trouble.
2017-02-04wallet_rpc_server: add address book RPC callsmoneromooo-monero4-0/+184
2017-02-03simplewallet: option to always ask password for any crytical operationskenshi844-2/+54
2017-02-02Fix missing parenthesesMiguel Herranz1-2/+2
2017-02-02simplewallet: cleanupmoneromooo-monero1-5/+0
Remove empty static function which was refactored, as well as leftover exception testing code.
2017-02-02simplewallet: fix build (unqualified type not in current scope)moneromooo-monero1-1/+1
2017-02-02core: fix integrated addresses breaking with auto zero changemoneromooo-monero1-0/+2
Zero change is sent to a random address, which confuses the code which determines which key to use to encrypt the payment id. Ignore zero amounts for this purpose, so the payment id gets encrypted with the real destination's key.
2017-02-02Add missing includeMiguel Herranz1-0/+2
Fails to build without it.
2017-01-31Added days uptime to the status messageNanoAkron1-4/+6
Also broke down the time calculations for legibility
2017-01-30Wallet API: Create wallet from keysJaquee5-0/+178
2017-01-30Changed console output for transaction from L0 to L1NanoAkron1-1/+1
2017-01-29wallet_rpc_server: fix short payment id validation in transfermoneromooo-monero1-1/+1
2017-01-29Add change_password for simplewalletAshley Perpetual2-0/+28
2017-01-28wallet2: fix corner case failing to send a second outputmoneromooo-monero1-1/+2
If a rct transaction can be made with just one input, a second output will be added. This output will be the smallest amount output available. However, if this output is a non rct output with less available fake outs than requested, the transaction will be rejected. We now check the histogram to only consider outputs with enough available fake outs in the first place.
2017-01-28Factor is_address_local code into a tools functionmoneromooo-monero4-65/+43
2017-01-28Update and use blockchain data files definesMiguel Herranz2-6/+7
2017-01-28Separate data per P2P portMiguel Herranz2-1/+16
poolstate.bin and p2pstate.bin are stored in .bitmonero/ if the default P2P port is being used. If another port is used both files are stored in .bitmonero/PORTNUMBER/.
2017-01-28wallet_rpc_server: fix logs going to the wrong filemoneromooo-monero3-7/+7
2017-01-28core: set missing verifivation_failed flag when rejecting a txmoneromooo-monero1-0/+1
This fixes two core rct tests
2017-01-28Add concurrency check to rpc mining to ensure not too many threads. number ↵Ashley Perpetual1-0/+17
of cores times 4 or 257.
2017-01-26Fix clang build failure, caused by mixing C and C++Timothy D. Prime1-1/+1
Easily fixed by moving a C++ header out of 'extern "C" {...}'. When building with CC=clang CXX=clang++ make, [ 21%] Building CXX object src/ringct/CMakeFiles/obj_ringct.dir/rctTypes.cpp.o In file included from /home/tdprime/bitmonero/src/ringct/rctTypes.cpp:31: In file included from /home/tdprime/bitmonero/src/ringct/rctTypes.h:43: In file included from /home/tdprime/bitmonero/src/crypto/generic-ops.h:34: /usr/bin/../lib/gcc/x86_64-linux-gnu/5.4.0/../../../../include/c++/5.4.0/cstring:100:3: error: conflicting types for 'memchr' memchr(void* __s, int __c, size_t __n) ^ /usr/include/string.h:92:14: note: previous declaration is here extern void *memchr (const void *__s, int __c, size_t __n) ^ ... and 4 more similar errors
2017-01-26Fix invalid + of std::string and intTimothy D. Prime2-4/+4
These warnings were emitted by clang++, and they are real bugs. src/rpc/core_rpc_server.cpp:208:58: warning: adding 'uint64_t' (aka 'unsigned long') to a string does not append to the string [-Wstring-plus-int] res.status = "Error retrieving block at height " + height; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ The obvious intent is achieved by using std::to_string().
2017-01-25Updates to epee HTTP client codeLee Clagett10-121/+90
- http_simple_client now uses std::chrono for timeouts - http_simple_client accepts timeouts per connect / invoke call - shortened names of epee http invoke functions - invoke command functions only take relative path, connection is not automatically performed
2017-01-25Blockfill - Sort tx pool correctlyAlexis Enston1-2/+2
2017-01-25Blockfill - Take TX fees into account properlyAlexis Enston1-1/+1
2017-01-25Consider empty block when filling with TXsAlexis Enston1-1/+5
2017-01-25Clear feedback to user when daemon has stopped successfullyNanoAkron1-0/+1
2017-01-24moved get_account_address_from_str_or_url from libcommon to libcryptonote_corekenshi845-29/+48
2017-01-23rpc: fix bc_dyn_stats not setting grace blocksmoneromooo-monero1-0/+1
This caused a random value to be used, and the resulting incorrect fee when it wasn't 0.
2017-01-23Remove unreachable returnsMiguel Herranz1-3/+0
CATCH_ENTRY_L0 already returns the second value.
2017-01-23fixed typo: monero-wallet-cli,logkenshi841-1/+1
2017-01-23Update log messages to reflect fact we no longer need to type `exit` to save ↵NanoAkron2-10/+6
database before quitting
2017-01-22Remove boost/foreach.cpp includesMiguel Herranz12-12/+0
2017-01-22Wallet api: testnet getter=2-0/+2
2017-01-22Replace BOOST_REVERSE_FOREACH with ranged forMiguel Herranz2-4/+6
2017-01-22Replace BOOST_FOREACH with C++11 ranged forMiguel Herranz12-78/+78
2017-01-22protocol: log received messages in a separate categorymoneromooo-monero1-8/+10
Makes it easier to log just what's going on on P2P
2017-01-22core: cache tx hashes of failing semantics txesmoneromooo-monero2-0/+10
2017-01-22wallet2: fix sending a rct tx with a single output availablemoneromooo-monero1-3/+50
This would have tried to send a second output to make the tx look like the 2/2 ideal, but it would not fail to find one because picking an output from preferred_inputs priority list did not remove it from the unused tranfer/dust outputs, so it would try to send the same output twice. While there, I also added a check to avoid sending a second input if it's related to the first. Better 1/2 than linking inputs, I think.
2017-01-22rpc: fix orphan_status when getting blocksmoneromooo-monero5-9/+16
It was always set to false, even for orphan blocks
2017-01-22p2p: always recreate a new peer id on startupmoneromooo-monero3-2/+19
This prevents easy fingerprinting when you change IPs, and will be a must when kovri gets used.
2017-01-21p2p: show ban/unban logs by default againmoneromooo-monero1-3/+3
2017-01-21core: early out in handle_incoming_tx if already in pool or blockchainmoneromooo-monero1-0/+12
2017-01-21ringct: reorder a bit to check quicker tests firstmoneromooo-monero1-17/+17
2017-01-21Make stack trace show up in log file with default settingsmoneromooo-monero1-1/+1
2017-01-21Rename method to get_random_gray_peerMiguel Herranz2-4/+4
2017-01-21Fix logging that broke after rebasingMiguel Herranz1-1/+1
2017-01-21Use set_peer_just_seen to keep last_seen updatedMiguel Herranz1-1/+1
2017-01-21Add gray peer list housekeeping systemMiguel Herranz3-0/+121
A random peer from the gray peer list is selected and a connection is made to check if the peer is alive. If the connection and handshake are successful the peer is promoted to the white peer list, in case of failure the peer is evicted from the gray peer list. The connection is closed after the check in either case.
2017-01-20wallet: print exception message on get_random_outs_errormoneromooo-monero2-10/+10
2017-01-18Honor depth in get_peerlist_head methodMiguel Herranz1-2/+4
The method returned depth + 2 because: - push_back was executed before the condition. - > instead of >= causing one more iteration.
2017-01-18simplewallet: use MAKE_CORE_RPC_VERSION(1,4) instead of 0x10004kenshi841-1/+1
2017-01-16wallet2_api: add API to set log categoriesmoneromooo-monero2-0/+6
2017-01-16Tweak some msg loglevelsHoward Chu1-11/+13
2017-01-16Reduce to one connection per IPMiguel Herranz1-1/+1
2017-01-16fixups in logging init calls, and add missing net context in a logmoneromooo-monero3-3/+3
2017-01-16Fix PR#1506, off by one in chain heightHoward Chu1-3/+2
2017-01-16wallet: add a node RPC cache layer for simple RPC callsmoneromooo-monero6-79/+259
Mostly getinfo and get_hard_fork_info, which are called pretty often. This speeds up transfers as a bonus.
2017-01-16wallet2: reuse fake outs when adjusting fee on transfermoneromooo-monero3-23/+55
This avoids indirectly leaking the real output to the daemon, and is faster. This will still happen for more complex cases, especially when cancelling a tx and "re-rolling" it.
2017-01-16core: don't try to deserialize an empty extra to remove a fieldmoneromooo-monero1-0/+2
2017-01-16specify restore height by YYYY-MM-DD formatkenshi846-17/+207
2017-01-16Change logging to easylogging++moneromooo-monero65-996/+785
This replaces the epee and data_loggers logging systems with a single one, and also adds filename:line and explicit severity levels. Categories may be defined, and logging severity set by category (or set of categories). epee style 0-4 log level maps to a sensible severity configuration. Log files now also rotate when reaching 100 MB. To select which logs to output, use the MONERO_LOGS environment variable, with a comma separated list of categories (globs are supported), with their requested severity level after a colon. If a log matches more than one such setting, the last one in the configuration string applies. A few examples: This one is (mostly) silent, only outputting fatal errors: MONERO_LOGS=*:FATAL This one is very verbose: MONERO_LOGS=*:TRACE This one is totally silent (logwise): MONERO_LOGS="" This one outputs all errors and warnings, except for the "verify" category, which prints just fatal errors (the verify category is used for logs about incoming transactions and blocks, and it is expected that some/many will fail to verify, hence we don't want the spam): MONERO_LOGS=*:WARNING,verify:FATAL Log levels are, in decreasing order of priority: FATAL, ERROR, WARNING, INFO, DEBUG, TRACE Subcategories may be added using prefixes and globs. This example will output net.p2p logs at the TRACE level, but all other net* logs only at INFO: MONERO_LOGS=*:ERROR,net*:INFO,net.p2p:TRACE Logs which are intended for the user (which Monero was using a lot through epee, but really isn't a nice way to go things) should use the "global" category. There are a few helper macros for using this category, eg: MGINFO("this shows up by default") or MGINFO_RED("this is red"), to try to keep a similar look and feel for now. Existing epee log macros still exist, and map to the new log levels, but since they're used as a "user facing" UI element as much as a logging system, they often don't map well to log severities (ie, a log level 0 log may be an error, or may be something we want the user to see, such as an important info). In those cases, I tried to use the new macros. In other cases, I left the existing macros in. When modifying logs, it is probably best to switch to the new macros with explicit levels. The --log-level options and set_log commands now also accept category settings, in addition to the epee style log levels.
2017-01-16macro to define core RPC version for avoiding future mistakekenshi841-1/+2
2017-01-15blockchain_import: fix build after tx_pool::add_tx changesmoneromooo-monero1-1/+1
2017-01-15remove std::move from return statements (pessimizing-move warning)Chris Vickio1-2/+2
2017-01-15change counter from bool to int (deprecated-increment-bool warning)Chris Vickio1-1/+1
2017-01-15Check for correct thread before ending batch transactionHoward Chu1-0/+7
2017-01-15mnemonics: fix language detection with checksum wordmoneromooo-monero1-1/+26
If a checksum word is present, language detection would use just the word prefixes. However, a set of word prefixes may be found in more than one language, and so the wrong language may be found first, which could then fail the checksum, since the check may be done with a different unique prefix length from the one it was created from. We now make a checksum test when we we detect a language from prefixes only, to make sure we have the correct one.
2017-01-15Limit incoming connections from the same IPMiguel Herranz2-0/+32
2017-01-14Must wait for previous batch to finish before starting new oneHoward Chu1-1/+6
2017-01-14Don't cache block height, always get from DBHoward Chu2-14/+29
2017-01-14Tweak default db-sync-mode to fast:async:1Howard Chu1-4/+7
fsync the DB asynchronously, to allow block download/verification to proceed while syncing. Sync after every batch. Note that "fastest" still defaults to fastest:async:1000.
2017-01-14Use batch transactions when syncingHoward Chu7-14/+22
Faster throughput while avoiding corruption. I.e., makes running with --db-sync-mode safe more tolerable.
2017-01-14core: check block version for alt chains toomoneromooo-monero3-0/+36
This is incompatible with block version voting
2017-01-14wallet2: use at least two rct inputs if possiblemoneromooo-monero2-9/+36
If we'd make a rct tx with just one input, we try to add a second one to match the 2/2 ideal. This means more txes use that template (and are thus using a larger anonymity set), and it coalesces outputs "for free". We use the smallest amount outputs in priority for this, so we can "clean" the wallet at the same time.
2017-01-14rct: split rct checks between semantics and othermoneromooo-monero4-84/+148
Semantics can be checked early
2017-01-14fix timeout in check_connectionJaquee3-5/+7
2017-01-14fix do_not_relay not preventing relaying on a timermoneromooo-monero9-34/+51
Also print its value when printing pool
2017-01-14add extra braces around subobjects (missing-braces warning)Chris Vickio1-64/+64
2017-01-14make struct/class declarations consistent (mismatched-tags warning)Chris Vickio4-5/+3
2017-01-14remove unused fields from network_throttle (unused-private-field warning)Chris Vickio1-3/+0
2017-01-13rpc: add a command to get info about the current blockchainmoneromooo-monero7-1/+134
About the tip of the main chain, and the last N blocks
2017-01-13wallet2: fix tx reroll not updating fee is going up a kB stepmoneromooo-monero1-7/+13
2017-01-13account: fix build error involving std::max and different typesmoneromooo-monero1-2/+6
2017-01-13Wallet API: add key image import/export functionsJaquee3-6/+67
2017-01-13Wallet API: support integrated addresses in address book.Jaquee1-12/+42
2017-01-13core: ensure block size limit is set from the startmoneromooo-monero1-0/+2
It can now be queried by RPC, so it needs to be set before it is otherwise needed for consensus, even if no blocks had to be added (ie, exit and restart quickly).
2017-01-13Wallet API: add rescanSpent()Jaquee3-1/+24
2017-01-13Prioritize older transactions in the mempoolMiguel Herranz2-21/+26
The transactions are first prioritized by fee and in case the fees are equal by receive_time.
2017-01-13Move key image export/import functions to wallet2Jaquee3-79/+99
2017-01-12Wallet2 + API: Callbacks for unconfirmed transfersJaquee9-6/+73
2017-01-12initialize timestamp to 0 and check for mktime() errorChris Vickio1-4/+4
2017-01-12Add start_time to get_info methods and show uptimeMiguel Herranz5-2/+26
2017-01-11Added (not yet enabled) HTTP client authenticationLee Clagett1-1/+1
2017-01-10Wallet api: Update trustedDaemon when daemon is changedJaquee1-0/+6
2017-01-10GUI cold signingJaquee10-9/+519
fix conflict
2017-01-10Wallet API: functions for supporting/creating view only walletsJaquee4-5/+88
2017-01-10Wallet API: functions for supporting/creating view only walletsJaquee4-5/+88
2017-01-10fix time stats mixinluigi11111-3/+6
also add blobsize
2017-01-10Remove db-auto-remove-logsMiguel Herranz3-9/+0
2017-01-10Remove berkeley from db_type initializationMiguel Herranz1-12/+0
2017-01-10Show available types for db-type commandMiguel Herranz1-1/+4
2017-01-10Remove berkeley from blockchain_db_typesMiguel Herranz1-1/+0
2017-01-09wallet2_api: add solo mining APImoneromooo-monero3-1/+49
2017-01-09wallet cli: print originating block heights of mixin keys when making transferkenshi847-18/+175
2017-01-08add msg for donateluigi11111-0/+1
#1498
2017-01-08Fix monero-wallet-cli compileluigi11111-1/+1
Not 100$ sure this is the right fix, nor whether address book entries from URL should be stored as addresses or URLs (or both with a check for change on payment).
2017-01-08Add parse_uri to wallet2_apiMoroccanMalinois3-0/+8
2017-01-08Cold signing: make sure short payment id isnt encrypted twiceJaquee2-1/+43
2017-01-08simplewallet: add a show_transfer <txid> commandmoneromooo-monero2-0/+124
2017-01-08wallet_rpc_server: new RPC call to get a transfer by txidmoneromooo-monero3-86/+208
2017-01-07blockchain: allow marking "tx not found" without an exceptionmoneromooo-monero4-8/+32
This is a normal occurence in many cases, and there is no need to spam the log with those when it is.
2017-01-07tx_pool: better block template filling algorithmmoneromooo-monero3-17/+33
Continue filling until we reach the block size limit, or the resulting coinbase decreases. Also remove old sanity check on block size, which is now not wanted anymore.
2017-01-06rpc: add block size to GET_BLOCK_HEADER RPCmoneromooo-monero3-2/+6
and print it in print_bc
2017-01-06rpc: add current block size to the getinfo callmoneromooo-monero2-1/+5
2017-01-05Build wallet with Android NDKMoroccanMalinois4-5/+37
2017-01-03portable serializer: tests addedkenshi841-0/+3
2017-01-02portable serializer: make signerd/unsigned tx portable, ignore archive ↵kenshi843-61/+110
version checking
2017-01-01wallet2_api: add an address book payment id lookup APImoneromooo-monero3-0/+25
2016-12-27wallet api: prevent setting refresh height too highJaquee1-4/+2
2016-12-27Wallet2: faster exit while refreshingJaquee1-1/+6
2016-12-27wallet2: check the node returned the real output when requestedmoneromooo-monero1-0/+17
2016-12-26wallet2 bugfix: store watch_only flag properly with rewrite()kenshi841-1/+1
2016-12-26wallet cli: print unspent outputs with histogramkenshi842-0/+120
2016-12-26simplewallet: remove unnecessary local_args.erase(...) in set_variable()kenshi841-24/+8
2016-12-25core: invalidate difficulty cache when resetting blockchainmoneromooo-monero1-0/+1
2016-12-25wallet2_api: some new APIs to access daemon statemoneromooo-monero3-2/+41
2016-12-24tx_pool: fix uninitialized "last failed" fieldsmoneromooo-monero1-0/+2
2016-12-24rpc: fix mixup in tx_info serializationmoneromooo-monero1-1/+1
2016-12-24wallet2: fix large reorgs failingmoneromooo-monero1-1/+1
If a reorg was large enough that a full 1000 block chunk from the daemon was all known blocks, refresh would stop, and no reorg would happen.
2016-12-22cleaner log calc algorithmfireice-uk1-20/+18
2016-12-21add tx hash to time statsluigi11111-2/+5
Also miner tx hash to log level 1 (have you ever tried to find a testnet miner tx hash?)
2016-12-21make openalias also available for solo miner; introduce namespace ↵kenshi848-154/+194
tools::dns_utils; support integrated address with dns lookup
2016-12-21core: fix recalculation of emission/feesmoneromooo-monero1-7/+4
It was counting things many, many times
2016-12-21wallet cli: viewing and editing address bookkenshi842-0/+82
2016-12-20simplewallet: bump output file format versionmoneromooo-monero1-1/+1
The serialization format changed, and while there is code to load the older serialization format, an older monerod will not be able to load a file saved by a new monerod, even though both share the same version. This is not good, and we prefer a version bump.
2016-12-20common: add missing #include <system_error> for std::error_codemoneromooo-monero1-0/+1
2016-12-20support importing unportable outputskenshi841-3/+12
2016-12-20also use portable serializer for boost_serialization_helper.h and ↵kenshi847-19/+50
net_node.inl, completely adandon boost/archive/binary_oarchive.hpp
2016-12-20moved boost cpp into hpp since they're supposed to be header onlykenshi841-1/+0
2016-12-19Refactored password prompting for walletsLee Clagett7-368/+218
2016-12-19Lower connection timeout in check_connection()Jaquee1-1/+1
2016-12-19Removed unused functionsLee Clagett2-18/+0
2016-12-17simplewallet: add pending/pool/failed in the show_transfers helpmoneromooo-monero1-1/+1
reported by nioc
2016-12-17wallet2_api: add an API to the OpenAlias resolvermoneromooo-monero3-0/+12
2016-12-17rpc: new function and RPC to get alternative chain infomoneromooo-monero10-0/+147
2016-12-16Enabled HTTP auth support for monero-wallet-rpcLee Clagett5-17/+205
2016-12-17simplewallet: add return type for donate functionanonimal1-0/+1
Resolves -Wreturn-type References #1447 #1451
2016-12-17simplewallet: hardcode Monero's donation addressanonimal1-1/+2
Closes #1447 References #1451
2016-12-16added experimental boost::archive::portable_binary_{i|o}archivekenshi845-15/+39
2016-12-15Wallet API: Do not refresh while daemon is syncingJaquee3-22/+65
+ fixed fast refresh when creating wallet offline + improved close wallet logic (make sure refresh thread is stopped)
2016-12-15Preliminary support for DragonFly BSDAntonio Huete Jimenez4-4/+6
- It builds but no further testing has been done.
2016-12-15wallet cli: donate commandKenshi Takayama2-0/+41
2016-12-14AddressBook: use unsigned type for row ID'sanonimal5-9/+9
Fixes build warnings and may also prevent future headaches.
2016-12-14fix MGs jsonmoneroexamples1-3/+3
2016-12-13Bitmonero namespace renamed Monero. Bitmonero namespace alias added so that ↵Randi Joseph14-15/+43
third party uses of the wallet api can transition.
2016-12-13rename cn_deserializeRiccardo Spagni1-1/+1
2016-12-13Adding HTTP Digest Auth (but not yet enabled)Lee Clagett2-1/+2
2016-12-13blockchain: fix reorganizations past a hard fork boundarymoneromooo-monero1-0/+3
After popping blocks from the old chain, the hard fork object's notion of the current version was not in line with the new height, causing the first blocks from the new chain to be rejected due to a false expection of a newer version.
2016-12-12monero-wallet-cli wording changes 'n' stuffluigi11113-15/+17
Possibly other pedantry. Pedants are people too.
2016-12-12Improve language of 'node ahead by' messageNanoAkron1-1/+1
2016-12-12Tx verification failing is not an errorluigi11111-5/+5
And rangeProofs are on outputs...
2016-12-13bump versionRiccardo Spagni1-1/+1
2016-12-13update checkpointsRiccardo Spagni1-0/+0
2016-12-13update checkpointsRiccardo Spagni1-0/+3
2016-12-12addressbook updatesJaquee5-26/+41
2016-12-12GUI address bookJaquee9-7/+307
2016-12-11thread_group: fix build on older GCCmoneromooo-monero1-2/+0
vtnerd (original author) confirmed this is the Right Way.
2016-12-10wallet: bring forward use of the dynamic feemoneromooo-monero1-1/+1
It was 14 days after v4, it is now one day after it. luigi1111's suggestion
2016-12-10Update cryptonote_protocol_handler.inlGingeropolous1-2/+2
Per discussion of #1359, the wording has changed to indicate that no assessment of the blocks validity is made.
2016-12-10mnemonics: fix misc STL containers leakmoneromooo-monero1-0/+6
found by coverity
2016-12-10oaes_lib: fix a leak on OOM error pathmoneromooo-monero1-0/+3
found by coverity
2016-12-10wallet2: pass by const ref where possiblemoneromooo-monero1-1/+1
Reported by kenshi84
2016-12-09Fix sending outputs from a tx with more than one pubkeymoneromooo-monero4-13/+34
A bug in cold signing caused a spurious pubkey to be included in transactions, so we need to ensure we use the correct one when sending outputs from one of those.
2016-12-08blockchain: fix setting non trovial alternate chain as invalidmoneromooo-monero1-4/+4
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.
2016-12-08simplewallet: restore automatically setting trusted local daemonmoneromooo-monero1-0/+43
2016-12-07ringct: add sc_check calls in MLSAG_Ver for ss and ccmoneromooo-monero1-0/+5
luigi1111's recommendation
2016-12-07ringct: guard against bad data exceptions in worker threadsmoneromooo-monero1-0/+14
If purported pubkeys aren't actually valid pubkeys, exceptions will fly. These will terminate if thrown in a worker thread. Guard against this.
2016-12-07wallet: send 0 change to a random address where necessary with rctmoneromooo-monero1-3/+13
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.
2016-12-06blockchain: bring the v4 fork height one block forwardluigi11111-3/+3
This will ensure the early 0.10 daemons will barf at the fork height, and not a bit later, which could be confusing.
2016-12-05Added confirmation before binding wallet-rpc to external IPLee Clagett2-14/+30
2016-12-05Remove infinite loop in refresh codeJaquee1-69/+43
This reverts commit fd181b03bb58a8b0628d2af8637cf6bb968fc437.
2016-12-04ringct: luigi1111's changes to fix and speedup Borromean sigsluigi11111-16/+15
2016-12-04ringct: switch to Borromean signaturesShen Noether6-118/+92
2016-12-04wallet2: avoid possible undefined behavior on empty stringmoneromooo-monero1-2/+1
2016-12-04Fix a few minor typosPierre Boyer11-27/+27
2016-12-04Fix delayed exit when syncingmoneromooo-monero6-4/+49
2016-12-03net_node: drop connections from banned IPs after looping through connectionsmoneromooo-monero1-4/+6
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.
2016-12-02ringct: fix MGs serialization to JSONmoneromooo-monero1-1/+5
2016-12-01p2p: possibly fix crash in relay_blocksmoneromooo-monero4-17/+43
2016-12-01blockchain: use high bound block reward on error where appropriatemoneromooo-monero1-1/+7
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.
2016-12-01db_lmdb: add info in an error message when we can't get an outputmoneromooo-monero1-1/+1
Will be useful to debug
2016-12-01db_lmdb: guard against going out of sync on unexpected db resultsmoneromooo-monero1-1/+1
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.
2016-12-01db_lmdb: minor pedantic tweaksmoneromooo-monero1-8/+8
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.
2016-12-01db_lmdb: set same packing format for output_data_t and pre_rct_output_data_tmoneromooo-monero1-0/+3
For safety, though it seems to have been the case already. Also add a comment about the necessary layout identity.
2016-11-29wallet_api: add a few daemon related gettersmoneromooo-monero3-2/+88
Blockchain height, version, Mining hash rate...