aboutsummaryrefslogtreecommitdiff
path: root/src/rpc/core_rpc_server.cpp (follow)
AgeCommit message (Collapse)AuthorFilesLines
2019-04-15rpc: fix get_block_hashes.bin from wallet on pruned blockchainmoneromooo-monero1-7/+2
We want to get all blocks here, even pruned ones
2019-04-15Merge pull request #5421Riccardo Spagni1-0/+1
e78cea74 rpc: fix off by one in get_height (moneromooo-monero)
2019-04-15Merge pull request #5402Riccardo Spagni1-1/+1
cbf32241 rpc: make wide_difficulty hexadecimal (moneromooo-monero)
2019-04-11rpc: fix off by one in get_heightmoneromooo-monero1-0/+1
2019-04-11functional_tests: add more blockchain related testsmoneromooo-monero1-3/+20
Related to emission, reorgs, getting tx data back, output distribution and histogram
2019-04-11Merge pull request #5376Riccardo Spagni1-1/+3
c746f45d Add hash of top block to /getheight RPC (Howard Chu)
2019-04-11Merge pull request #5374Riccardo Spagni1-0/+1
a2561653 wallet: new option to start background mining (moneromooo-monero)
2019-04-07Pass SSL arguments via one class and use shared_ptr instead of referenceLee Clagett1-12/+19
2019-04-06Change default SSL to "enabled" if user specifies fingerprint/certificateLee Clagett1-7/+12
Currently if a user specifies a ca file or fingerprint to verify peer, the default behavior is SSL autodetect which allows for mitm downgrade attacks. It should be investigated whether a manual override should be allowed - the configuration is likely always invalid.
2019-04-06Change SSL certificate file list to OpenSSL builtin load_verify_locationLee Clagett1-17/+7
Specifying SSL certificates for peer verification does an exact match, making it a not-so-obvious alias for the fingerprints option. This changes the checks to OpenSSL which loads concatenated certificate(s) from a single file and does a certificate-authority (chain of trust) check instead. There is no drop in security - a compromised exact match fingerprint has the same worse case failure. There is increased security in allowing separate long-term CA key and short-term SSL server keys. This also removes loading of the system-default CA files if a custom CA file or certificate fingerprint is specified.
2019-04-06rpc: merge the two get_info implementationsmoneromooo-monero1-62/+3
2019-04-05rpc: make wide_difficulty hexadecimalmoneromooo-monero1-1/+1
This should be friendlier for clients which don't have bignum support
2019-04-04wallet: new option to start background miningmoneromooo-monero1-0/+1
The setup-background-mining option can be used to select background mining when a wallet loads. The user will be asked the first time the wallet is created.
2019-04-04rpc.gettransactions: fill as_json with partial tx in pruned modestoffu1-12/+43
2019-04-01Merge pull request #5327Riccardo Spagni1-0/+17
c23ea796 New interactive daemon command 'print_net_stats': Global traffic stats (rbrunner7)
2019-04-01Merge pull request #5326Riccardo Spagni1-0/+1
dc20d774 rpc: add miner tx hash to block header response (moneromooo-monero)
2019-04-01Merge pull request #5308Riccardo Spagni1-1/+3
a7211793 rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
2019-04-01Add hash of top block to /getheight RPCHoward Chu1-1/+3
2019-03-24Make difficulty 128 bit instead of 64 bitmoneromooo-monero1-8/+24
Based on Boolberry work by: jahrsg <jahr@jahr.me> cr.zoidberg <crypto.zoidberg@gmail.com>
2019-03-24New interactive daemon command 'print_net_stats': Global traffic statsrbrunner71-0/+17
2019-03-21Merge pull request #5237Riccardo Spagni1-5/+10
3907588b rpc: make fill_pow restricted (moneromooo-monero)
2019-03-21rpc: add miner tx hash to block header responsemoneromooo-monero1-0/+1
2019-03-17rpc: quantize db size up to 5 GB in restricted modemoneromooo-monero1-1/+3
2019-03-17Merge pull request #5190Riccardo Spagni1-4/+4
551104fb daemon: add --public-node mode, RPC port propagation over P2P (xiphon)
2019-03-17Merge pull request #5185Riccardo Spagni1-2/+21
59478c80 daemon: new mining_status command (moneromooo-monero)
2019-03-17Merge pull request #5177Riccardo Spagni1-1/+8
bb2aed8e rpc: quantize db size up to 5 GB in restricted mode (moneromooo-monero)
2019-03-09daemon: new mining_status commandmoneromooo-monero1-2/+21
2019-03-06rpc: make fill_pow restrictedmoneromooo-monero1-5/+10
It's slow work, so let's not expose it
2019-03-05Update 2019 copyrightbinaryFate1-1/+1
2019-03-05epee: add SSL supportMartijn Otto1-1/+11
RPC connections now have optional tranparent SSL. An optional private key and certificate file can be passed, using the --{rpc,daemon}-ssl-private-key and --{rpc,daemon}-ssl-certificate options. Those have as argument a path to a PEM format private private key and certificate, respectively. If not given, a temporary self signed certificate will be used. SSL can be enabled or disabled using --{rpc}-ssl, which accepts autodetect (default), disabled or enabled. Access can be restricted to particular certificates using the --rpc-ssl-allowed-certificates, which takes a list of paths to PEM encoded certificates. This can allow a wallet to connect to only the daemon they think they're connected to, by forcing SSL and listing the paths to the known good certificates. To generate long term certificates: openssl genrsa -out /tmp/KEY 4096 openssl req -new -key /tmp/KEY -out /tmp/REQ openssl x509 -req -days 999999 -sha256 -in /tmp/REQ -signkey /tmp/KEY -out /tmp/CERT /tmp/KEY is the private key, and /tmp/CERT is the certificate, both in PEM format. /tmp/REQ can be removed. Adjust the last command to set expiration date, etc, as needed. It doesn't make a whole lot of sense for monero anyway, since most servers will run with one time temporary self signed certificates anyway. SSL support is transparent, so all communication is done on the existing ports, with SSL autodetection. This means you can start using an SSL daemon now, but you should not enforce SSL yet or nothing will talk to you.
2019-03-04Merge pull request #4054Riccardo Spagni1-3/+60
24569454 epee: add SSL support (moneromooo-monero)
2019-03-04ArticMine's new block weight algorithmmoneromooo-monero1-0/+1
This curbs runaway growth while still allowing substantial spikes in block weight Original specification from ArticMine: here is the scaling proposal Define: LongTermBlockWeight Before fork: LongTermBlockWeight = BlockWeight At or after fork: LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight) Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time. Define: LongTermEffectiveMedianBlockWeight LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight)) Change Definition of EffectiveMedianBlockWeight From (current definition) EffectiveMedianBlockWeight = max(300000, MedianOverPrevious100Blocks(BlockWeight)) To (proposed definition) EffectiveMedianBlockWeight = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight) Notes: 1) There are no other changes to the existing penalty formula, median calculation, fees etc. 2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork. 3) When the EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty. Note: the long term block weight is stored in the database, but not in the actual block itself, since it requires recalculating anyway for verification.
2019-02-25daemon: add --public-node mode, RPC port propagation over P2Pxiphon1-4/+4
2019-02-21rpc: quantize db size up to 5 GB in restricted modemoneromooo-monero1-1/+8
2019-02-02epee: add SSL supportmoneromooo-monero1-3/+60
RPC connections now have optional tranparent SSL. An optional private key and certificate file can be passed, using the --{rpc,daemon}-ssl-private-key and --{rpc,daemon}-ssl-certificate options. Those have as argument a path to a PEM format private private key and certificate, respectively. If not given, a temporary self signed certificate will be used. SSL can be enabled or disabled using --{rpc}-ssl, which accepts autodetect (default), disabled or enabled. Access can be restricted to particular certificates using the --rpc-ssl-allowed-certificates, which takes a list of paths to PEM encoded certificates. This can allow a wallet to connect to only the daemon they think they're connected to, by forcing SSL and listing the paths to the known good certificates. To generate long term certificates: openssl genrsa -out /tmp/KEY 4096 openssl req -new -key /tmp/KEY -out /tmp/REQ openssl x509 -req -days 999999 -sha256 -in /tmp/REQ -signkey /tmp/KEY -out /tmp/CERT /tmp/KEY is the private key, and /tmp/CERT is the certificate, both in PEM format. /tmp/REQ can be removed. Adjust the last command to set expiration date, etc, as needed. It doesn't make a whole lot of sense for monero anyway, since most servers will run with one time temporary self signed certificates anyway. SSL support is transparent, so all communication is done on the existing ports, with SSL autodetection. This means you can start using an SSL daemon now, but you should not enforce SSL yet or nothing will talk to you.
2019-01-28Adding initial support for broadcasting transactions over TorLee Clagett1-22/+17
- Support for ".onion" in --add-exclusive-node and --add-peer - Add --anonymizing-proxy for outbound Tor connections - Add --anonymous-inbounds for inbound Tor connections - Support for sharing ".onion" addresses over Tor connections - Support for broadcasting transactions received over RPC exclusively over Tor (else broadcast over public IP when Tor not enabled).
2019-01-28rpc: fix internal daemon calls in restricted rpc getting partial datamoneromooo-monero1-99/+119
2019-01-22Pruningmoneromooo-monero1-14/+73
The blockchain prunes seven eighths of prunable tx data. This saves about two thirds of the blockchain size, while keeping the node useful as a sync source for an eighth of the blockchain. No other data is currently pruned. There are three ways to prune a blockchain: - run monerod with --prune-blockchain - run "prune_blockchain" in the monerod console - run the monero-blockchain-prune utility The first two will prune in place. Due to how LMDB works, this will not reduce the blockchain size on disk. Instead, it will mark parts of the file as free, so that future data will use that free space, causing the file to not grow until free space grows scarce. The third way will create a second database, a pruned copy of the original one. Since this is a new file, this one will be smaller than the original one. Once the database is pruned, it will stay pruned as it syncs. That is, there is no need to use --prune-blockchain again, etc.
2019-01-16Merge pull request #5027Riccardo Spagni1-12/+12
9092fc4b wallet: do not display daemon controlled text if untrusted (moneromooo-monero)
2019-01-16Merge pull request #4984Riccardo Spagni1-13/+16
008647d7 blockchain_db: speedup tx output gathering (moneromooo-monero)
2019-01-06Merge pull request #4952Riccardo Spagni1-3/+4
570dd369 p2p: use vector instead of list for peer lists (moneromooo-monero)
2018-12-30wallet: do not display daemon controlled text if untrustedmoneromooo-monero1-12/+12
2018-12-18blockchain_db: speedup tx output gatheringmoneromooo-monero1-13/+16
We know all the data we'll want for getblocks.bin is contiguous
2018-12-12Merge pull request #4903Riccardo Spagni1-0/+12
dc1c1252 add command pop_blocks (Jason Wong)
2018-12-07p2p: use vector instead of list for peer listsmoneromooo-monero1-3/+4
2018-12-04Merge pull request #4879Riccardo Spagni1-24/+29
243f010e rpc: mask values that are nobody else's business in restricted RPC (moneromooo-monero)
2018-12-04Merge pull request #4894Riccardo Spagni1-1/+1
aee7a4e3 wallet_rpc_server: do not use RPC data if the call failed (moneromooo-monero) 1a0733e5 windows_service: fix memory leak (moneromooo-monero) 0dac3c64 unit_tests: do not rethrow a copy of an exception (moneromooo-monero) 5d9915ab cryptonote: fix get_unit for non default settings (moneromooo-monero) d4f50cb1 remove some unused code (moneromooo-monero) 61163971 a few minor (but easy) performance tweaks (moneromooo-monero) 30023074 tests: slow_memmem now returns size_t (moneromooo-monero)
2018-12-04rpc: mask values that are nobody else's business in restricted RPCmoneromooo-monero1-24/+29
2018-12-04Merge pull request #4878Riccardo Spagni1-0/+2
517f25ef rpc: add version to get_info (Jethro Grassie)
2018-12-04Merge pull request #4869Riccardo Spagni1-3/+3
60f36386 Avoid unnecessary temp block and copy ctor (moneromooo-monero)
2018-12-04Merge pull request #4859Riccardo Spagni1-13/+17
6f2497bc Don't cache nettype in core_rpc_server use m_core (doy-lee)
2018-11-28add command pop_blocksJason Wong1-0/+12
add new public method to Blockchain and update according to code review update after review: better lock/unlock, try catch and coding style
2018-11-23tests: slow_memmem now returns size_tmoneromooo-monero1-1/+1
Makes more sense than uint64_t for an offset, and agrees with the %zu used to print results. Found by codacy.com
2018-11-21rpc: add version to get_infoJethro Grassie1-0/+2
2018-11-20rpc: speedup get_output_distributionmoneromooo-monero1-1/+42
and decrease the amount of data carried around
2018-11-19Avoid unnecessary temp block and copy ctormoneromooo-monero1-3/+3
block already has a default ctor, and the extra object churn due to its innards (vectors, etc) is pointless.
2018-11-16tests: add unit tests for get_output_distributionmoneromooo-monero1-1/+1
2018-11-16Don't cache nettype in core_rpc_server use m_coredoy-lee1-13/+17
This can go out of sync with m_core's nettype if you run in fakechain mode since entering fakechain mode is done through code not the command line and core_rpc_server only looks at the command line to figure out the nettype.
2018-11-14Merge pull request #4750Riccardo Spagni1-3/+3
e61062b6 use current height - 1 for top block height in err msgs (cryptochangements34)
2018-11-14Merge pull request #4747Riccardo Spagni1-1/+8
dad5bbfd return message in stop_mining if mining never started (cryptochangements34)
2018-11-06Merge pull request #4735Riccardo Spagni1-1/+1
73e504c1 rpc: adjust ring size error message now that too high is also possible (moneromooo-monero) a5ca7f4f core: fix unmixable special case allowing ring size below 11 (moneromooo-monero)
2018-11-04Merge pull request #4687Riccardo Spagni1-51/+5
6097472a Update ZMQ fee estimate and add ZMQ output distribution (Lee Clagett)
2018-11-02use current height - 1 for top block height in err msgscryptochangements341-3/+3
2018-10-28return message in stop_mining if mining never startedcryptochangements341-1/+8
2018-10-27rpc: adjust ring size error message now that too high is also possiblemoneromooo-monero1-1/+1
2018-10-23Update ZMQ fee estimate and add ZMQ output distributionLee Clagett1-51/+5
2018-10-22rpc: fix wrongly formatted JSON for pruned txstoffu1-19/+12
Fix for #4399. Also unifies code for serializing pruned tx to binary/json into one.
2018-10-20Merge pull request #4659Riccardo Spagni1-6/+8
b916ca63 rpc: fix output distribution caching ignoring chain changes (moneromooo-monero)
2018-10-19rpc: fix output distribution caching ignoring chain changesmoneromooo-monero1-6/+8
0 is placeholder for whole chain, so we should compare chain height changes rather than chain-height-or-zero. Even this isn't totally foolproof if a blocks are popped and the same number added again, but it is much better as it prevents the data from slowly going out of sync.
2018-10-18tx_pool: revert #4592 and move bin2hex conversion to on_get_transaction_poolstoffu1-0/+2
2018-10-04rpc: fixed typo in JSON command error response messageAnythingTechPro1-1/+1
2018-09-21Merge pull request #4399Riccardo Spagni1-1/+10
f77ce675 rpc: allow pruning of json encoded txs (cryptochangements34)
2018-09-21Merge pull request #4378Riccardo Spagni1-0/+2
ac934663 rpc: add a "is an update available" flag in get_info (moneromooo-monero)
2018-09-21Merge pull request #4373Riccardo Spagni1-0/+1
4f81cd3a rpc: add cumulative difficulty in block header data (moneromooo-monero)
2018-09-18Merge pull request #4354Riccardo Spagni1-1/+7
03c07b16 rpc: return "already mining" in start_mining if already mining (moneromooo-monero)
2018-09-18Merge pull request #4344Riccardo Spagni1-1/+1
cd647612 rpc: don't include start time if restricted (moneromooo-monero)
2018-09-17rpc: allow pruning of json encoded txscryptochangements341-1/+10
2018-09-14remove obsolete daemon selection of fake outs and old tx constructionmoneromooo-monero1-71/+0
2018-09-14rpc: add a "is an update available" flag in get_infomoneromooo-monero1-0/+2
Make it easier for a user to be told when to update
2018-09-13rpc: add cumulative difficulty in block header datamoneromooo-monero1-0/+1
2018-09-11v8: per byte fee, pad bulletproofs, fixed 11 ring sizemoneromooo-monero1-9/+10
2018-09-09rpc: return "already mining" in start_mining if already miningmoneromooo-monero1-1/+7
2018-09-07rpc: don't include start time if restrictedmoneromooo-monero1-1/+1
2018-07-19Merge pull request #4033luigi11111-2/+18
3e46db9 rpc: add a non binary get_transaction_pool_hashes RPC (moneromooo-monero)
2018-07-19Merge pull request #4013luigi11111-0/+2
e5592c4 rpc: add blockchain disk size to getinfo (moneromooo-monero)
2018-07-19Merge pull request #3981luigi11111-32/+14
45e419b db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19Merge pull request #3973luigi11111-2/+14
50af357 alt_chain_info can now give more info about a particular alt chain (moneromooo-monero)
2018-07-19Merge pull request #3854luigi11111-0/+64
149da42 db_lmdb: enable batch transactions by default (stoffu) 34cb6b4 add --regtest and --fixed-difficulty for regression testing (vicsn) 9e1403e update get_info RPC and bump RPC version (vicsn) 207b66e first new functional tests (vicsn)
2018-07-13db: store cumulative rct output distribution in the db for speedmoneromooo-monero1-32/+14
This gets rid of the temporary precalc cache. Also make the RPC able to send data back in binary or JSON, since there can be a lot of data This bumps the LMDB database format to v3, with migration.
2018-06-29update get_info RPC and bump RPC versionvictorsintnicolaas1-0/+2
2018-06-29add --regtest and --fixed-difficulty for regression testingvictorsintnicolaas1-0/+62
on_generateblocks RPC call combines functionality from the on_getblocktemplate and on_submitblock RPC calls to allow rapid block creation. Difficulty is set permanently to 1 for regtest. Makes use of FAKECHAIN network type, but takes hard fork heights from mainchain Default reserve_size in generate_blocks RPC call is now 1. If it is 0, the following error occurs 'Failed to calculate offset for'. Queries hard fork heights info of other network types
2018-06-26rpc: rework to avoid repeated calculations in get_blocks.binmoneromooo-monero1-25/+12
2018-06-26replace std::list with std::vector on some hot pathsmoneromooo-monero1-16/+21
also use reserve where appropriate
2018-06-26rpc: sanity check on number of txes in a blockmoneromooo-monero1-0/+6
2018-06-26rpc: add option to skip coinbase info in get_blocks.binmoneromooo-monero1-4/+7
2018-06-26alt_chain_info can now give more info about a particular alt chainmoneromooo-monero1-2/+14
2018-06-21rpc: add a non binary get_transaction_pool_hashes RPCmoneromooo-monero1-2/+18
2018-06-20rpc: add blockchain disk size to getinfomoneromooo-monero1-0/+2
This should help new nodes predict how much disk space will be needed for a full sync
2018-06-07Merge pull request #3892luigi11111-6/+7
d344736 rpc: convert distribution to cumulative after caching (moneromooo-monero)
2018-06-01rpc: the cache is still for non cumulative on that branchmoneromooo-monero1-0/+7
2018-05-31Merge pull request #3561luigi11111-6/+7
353e9c0 Core RPC: optionally add POW hash to block_header_response (stoffu)
2018-05-31rpc: convert distribution to cumulative after cachingmoneromooo-monero1-6/+7
This avoids double conversion on a later cache hit
2018-05-30rpc: fix get_output_distribution cache for the cumulative casemoneromooo-monero1-0/+7
The distribution was not converted to cumulative after a cache hit
2018-05-23db_lmdb: save pruned and prunable tx data separatelymoneromooo-monero1-17/+2
This bumps DB version to 2, migration code will run for v1 DBs
2018-05-21speed up get_output_distribution (and precalc common case)moneromooo-monero1-1/+16
2018-04-23speedup get_output_histogram for all amounts when min_count > 0moneromooo-monero1-1/+1
This skips the vast majority of "dust" output amounts with just one instance on the chain. Clocks in at 0.15% of the original time on testnet.
2018-04-21Merge pull request #3672Riccardo Spagni1-0/+34
875c1cab wallet2: increase rpc timeout for get_output_distribution (moneromooo-monero) 70f23217 add top height to get_output_distribution, and cache it for rct (moneromooo-monero) 8c7363fb rpc: add missing perf timer for get_output_distribution (moneromooo-monero)
2018-04-19add top height to get_output_distribution, and cache it for rctmoneromooo-monero1-0/+33
This should cache the vast majority of calls for long running wallets
2018-04-19rpc: add missing perf timer for get_output_distributionmoneromooo-monero1-0/+1
2018-04-12Merge pull request #3549Riccardo Spagni1-8/+12
73951cbd wallet2: request transactions in slices when scanning for known rings (moneromooo-monero) 25fe67e4 rpc: allow getting pruned blocks from gettransactions (moneromooo-monero)
2018-04-07rpc: allow getting pruned blocks from gettransactionsmoneromooo-monero1-8/+12
and get them pruned in find_and_save_rings, since it does not need the pruned data in the first place. Also set decode_to_json to false where missing, we don't need this either.
2018-04-05Core RPC: optionally add POW hash to block_header_responsestoffu1-6/+7
2018-03-27fix lambda compile error on openbsdmoneromooo-monero1-1/+1
2018-03-16Merge pull request #3336Riccardo Spagni1-2/+2
57c0b1ed Fix typos in various files (Dimitris Apostolou)
2018-03-16add RPC to get a histogram of outputs of a given amountmoneromooo-monero1-0/+35
2018-03-15Fix typos in various filesDimitris Apostolou1-2/+2
2018-03-05Stagenetstoffu1-11/+17
2018-02-16options: add testnet option dependencieswhythat1-2/+6
2018-02-16options: remove testnet-* optionswhythat1-15/+3
2018-02-16Merge pull request #3165Riccardo Spagni1-0/+272
7539603f Bootstrap daemon (stoffu)
2018-01-30Bootstrap daemonstoffu1-0/+272
2018-01-29Allow the number of incoming connections to be limitedErik de Castro Lopo1-0/+12
It was already possible to limit outgoing connections. One might want to do this on home network connections with high bandwidth but low usage caps.
2018-01-29Rename delete_connections to delete_out_connectionsErik de Castro Lopo1-1/+1
This rename is needed so that delete_in_connections can be added.
2018-01-29Rename connections_count to max_out_connection_countErik de Castro Lopo1-1/+1
This is needed so that a max_in_connection_count can be added.
2018-01-27Merge pull request #3144Riccardo Spagni1-0/+2
42f86624 rpc: expose recent median block size in getinfo (moneromooo-monero)
2018-01-26Update 2018 copyrightxmr-eric1-1/+1
2018-01-17rpc: expose recent median block size in getinfomoneromooo-monero1-0/+2
2018-01-10epee: remove dependency on commonmoneromooo-monero1-1/+2
2017-12-18add empty container sanity checks when using front() and back()moneromooo-monero1-3/+8
2017-12-18rpc: do not try to use an invalid txid in relay_txmoneromooo-monero1-6/+17
2017-12-17Merge pull request #2877Riccardo Spagni1-0/+2
43f5269f Wallets now do not depend on the daemon rpc lib (moneromooo-monero) bb89ae8b move connection_basic and network_throttle from src/p2p to epee (moneromooo-monero) 4abf25f3 cryptonote_core does not depend on p2p anymore (moneromooo-monero)
2017-12-16cryptonote_core does not depend on p2p anymoremoneromooo-monero1-0/+2
As a followon side effect, this makes a lot of inline code included only in particular cpp files (and instanciated when necessary.
2017-12-16move includes around to lessen overall loadmoneromooo-monero1-0/+1
2017-12-16Merge pull request #2878Riccardo Spagni1-0/+2
abebe392 rpc: add offline state in info rpc (moneromooo-monero) 7696e849 core: make --offline also disable DNS lookups (moneromooo-monero)
2017-12-16Merge pull request #2866Riccardo Spagni1-2/+2
cf5f6236 Corrections in rate limiting / trottle code, especially in 'out' direction (rbrunner7)
2017-12-16Merge pull request #2856Riccardo Spagni1-1/+1
009eed17 rpc: increase the max number of outs one can request (moneromooo-monero)
2017-12-02Merge pull request #2836Riccardo Spagni1-6/+20
23b6f685 RPC: allow binding of restricted port in addition to core port (Tim L)
2017-12-02Merge pull request #2838Riccardo Spagni1-2/+3
310b790a make connection_id a string in RPC (moneromooo-monero)
2017-11-30rpc: add offline state in info rpcmoneromooo-monero1-0/+2
2017-11-28Corrections in rate limiting / trottle code, especially in 'out' directionrbrunner71-2/+2
Deleted 3 out of 4 calls to method connection_basic::sleep_before_packet that were erroneous / superfluous, which enabled the elimination of a "fudge" factor of 2.1 in connection_basic::set_rate_up_limit; also ended the multiplying of limit values and numbers of bytes transferred by 1024 before handing them over to the global throttle objects
2017-11-25Merge pull request #2794Riccardo Spagni1-0/+2
43f27c7d core: warn when free disk space is low (moneromooo-monero)
2017-11-23rpc: increase the max number of outs one can requestmoneromooo-monero1-1/+1
It's getting hit too easily
2017-11-18make connection_id a string in RPCmoneromooo-monero1-2/+3
It's sent as JSON, so raw binary is not appropriate
2017-11-17RPC: allow binding of restricted port in addition to core portTim L1-6/+20
2017-11-14Merge pull request #2692Riccardo Spagni1-126/+2
0f2c2d4c rpc: remove obsolete busy core checks (moneromooo-monero)
2017-11-14Merge pull request #2736Riccardo Spagni1-1/+1
0d9c0db9 Do not build against epee_readline if it was not built (Howard Chu) 178014c9 split off readline code into epee_readline (moneromooo-monero) a9e14a19 link against readline only for monerod and wallet-wallet-{rpc,cli} (moneromooo-monero) 437421ce wallet: move some scoped_message_writer calls from the libs (moneromooo-monero) e89994e9 wallet: rejig to avoid prompting in wallet2 (moneromooo-monero) ec5135e5 move input_line from command_line to simplewallet (moneromooo-monero) 082db75f move cryptonote command line options to cryptonote_core (moneromooo-monero)
2017-11-14Merge pull request #2629Riccardo Spagni1-1/+1
383ff4f6 remove "using namespace std" from headers (moneromooo-monero)
2017-11-14rpc: remove obsolete busy core checksmoneromooo-monero1-126/+2
2017-11-14move cryptonote command line options to cryptonote_coremoneromooo-monero1-1/+1
Those have no reason to be in a generic module
2017-11-14remove "using namespace std" from headersmoneromooo-monero1-1/+1
It's nasty, and actually breaks on Solaris, where if.h fails to build due to: struct map *if_memmap;
2017-11-14Merge pull request #2756Riccardo Spagni1-0/+0
0bf09154 Fix file permission issue (Tim L)
2017-11-14Merge pull request #2753Riccardo Spagni1-0/+2
fa514082 RPC: get_info add rpc_connections_count (Tim L)
2017-11-14Merge pull request #2738Riccardo Spagni1-0/+57
4a17f0c2 rpc: add performance timers (moneromooo-monero)
2017-11-14Merge pull request #2735Riccardo Spagni1-0/+1
a524b750 rpc: added miner_tx_hash to resp of getblock (stoffu)
2017-11-14Merge pull request #2615Riccardo Spagni1-9/+9
10013e94 Protect node privacy by proper filtering in restricted-mode RPC answers (binaryFate)
2017-11-14core: warn when free disk space is lowmoneromooo-monero1-0/+2
2017-11-14rpc: added miner_tx_hash to resp of getblockstoffu1-0/+1
2017-11-08Protect node privacy by proper filtering in restricted-mode RPC answersbinaryFate1-9/+9
This patch allows to filter out sensitive information for queries that rely on the pool state, when running in restricted mode. This filtering is only applied to data sent back to RPC queries. Results of inline commands typed locally in the daemon are not affected. In practice, when running with `--restricted-rpc`: * get_transaction_pool will list relayed transactions with the fields "last relayed time" and "received time" set to zero. * get_transaction_pool will not list transaction that have do_not_relay set to true, and will not list key images that are used only for such transactions * get_transaction_pool_hashes.bin will not list such transaction * get_transaction_pool_stats will not count such transactions in any of the aggregated values that are computed The implementation does not make filtering the default, so developers should be mindful of this if they add new RPC functionality. Fixes #2590.
2017-11-07RPC: get_info add rpc_connections_countTim L1-0/+2
2017-11-06track double spending in the txpoolmoneromooo-monero1-5/+32
Transactions in the txpool are marked when another transaction is seen double spending one or more of its inputs. This is then exposed wherever appropriate. Note that being marked with this "double spend seen" flag does NOT mean this transaction IS a double spend and will never be mined: it just means that the network has seen at least another transaction spending at least one of the same inputs, so care should be taken to wait for a few confirmations before acting upon that transaction (ie, mostly of use for merchants wanting to accept unconfirmed transactions).
2017-11-03Fix file permission issueTim L1-0/+0
This branch fixes a file permission issue introduced by https://github.com/monero-project/monero/commit/69c37200aa87f100f731e755bdca7a0dc6ae820a
2017-10-30RPC Add cross origin resource sharing supportTim L1-1/+1
2017-10-30rpc: add performance timersmoneromooo-monero1-0/+57
Enable with perf:DEBUG
2017-10-15Merge pull request #2587Riccardo Spagni1-15/+7
cba34494 rpc: out_peers now works again (moneromooo-monero)
2017-10-07Subaddresseskenshi841-7/+19
2017-10-06Merge pull request #2548Riccardo Spagni1-0/+1
7d4ef258 rpc: fix getting txpool transactions (moneromooo-monero)
2017-10-06rpc: out_peers now works againmoneromooo-monero1-15/+7
2017-10-05Upgrades to epee::net_utils::network_addressLee Clagett1-1/+1
- internal nullptr checks - prevent modifications to network_address (shallow copy issues) - automagically works with any type containing interface functions - removed fnv1a hashing - ipv4_network_address now flattened with no base class
2017-10-02Merge pull request #2513Riccardo Spagni1-2/+4
309290d1 Source updates are in a source subdirectory (moneromooo-monero)
2017-10-02Merge pull request #2512Riccardo Spagni1-0/+1
792ba4f0 Log categories can now be added to and removed from (moneromooo-monero) 48f92eb6 easylogging++: add categories getter (moneromooo-monero) f35afe62 epee: factor log level/categories setting (moneromooo-monero)
2017-10-02Merge pull request #2470Riccardo Spagni1-0/+47
2e59f6ea rpc: add new RPCs to get and set limits (MaxXor)
2017-09-29rpc: fix getting txpool transactionsmoneromooo-monero1-0/+1
2017-09-25Merge pull request #2452Riccardo Spagni1-16/+28
0aaaca29 tx_pool: set the "invalid input" bit when check_tx_inputs fails (moneromooo-monero) 9236823b simplewallet: print tx rejection reason where it was missing (moneromooo-monero) 3dee3301 core_rpc_server: print tx rejection reason at L0 too (moneromooo-monero)
2017-09-25get_blockchain_top now returns voidmoneromooo-monero1-22/+4
It was always returning true, and could not be foreseen to usefully return errors in the future. This silences CID 162652 as well as saves some checking code in a few places.
2017-09-25Merge pull request #2386Riccardo Spagni1-7/+19
a15e8583 wallet2: guard against daemon sending txes in the wrong order (moneromooo-monero) 8fe5f609 rpc: order transactions in the order they were requested (moneromooo-monero)
2017-09-25Merge pull request #2377Riccardo Spagni1-1/+2
b5cbdce8 wallet2: correctly handle in/out payments for view-only wallet (stoffu)
2017-09-25Merge pull request #2357Riccardo Spagni1-1/+1
58015df4 Fix getblocktemplate RPC returning wrong reserved_offset (Guillaume LE VAILLANT)
2017-09-22Source updates are in a source subdirectorymoneromooo-monero1-2/+4
rather than in the same directory as the prebuilt versions
2017-09-22Log categories can now be added to and removed frommoneromooo-monero1-0/+1
Also, set_log without parameters now prints the log categories
2017-09-21wallet2: correctly handle in/out payments for view-only walletstoffu1-1/+2
2017-09-19rpc: add new RPCs to get and set limitsMaxXor1-0/+47
2017-09-16core_rpc_server: print tx rejection reason at L0 toomoneromooo-monero1-16/+28
2017-09-11rpc: order transactions in the order they were requestedmoneromooo-monero1-7/+19
2017-08-31DRY refactoringThomas Winget1-1/+1
2017-08-27Merge pull request #2347Riccardo Spagni1-4/+7
5807529e blockchain: cap memory size of retrieved blocks (moneromooo-monero) c1b10381 rpc: decrease memory usage a bit in getblocks.bin (moneromooo-monero)
2017-08-26rpc: decrease memory usage a bit in getblocks.binmoneromooo-monero1-4/+7
2017-08-26Fix getblocktemplate RPC returning wrong reserved_offsetGuillaume LE VAILLANT1-1/+1
The byte for TX_EXTRA_TAG_PUBKEY is already included in res.reserved_offset by the call to slow_memmem.
2017-08-26rpc: add a new RPC to get current txpool backlog (sizes and fees)moneromooo-monero1-0/+20
2017-08-07change mixin to ring size in user visible placesmoneromooo-monero1-1/+1
2017-08-07Merge pull request #2149Riccardo Spagni1-0/+35
158c3ecf core: thread most of handle_incoming_tx (moneromooo-monero) f57ee382 cryptonote_protocol: retry stale spans early (moneromooo-monero) 90df52e1 cryptonote_protocol: light cleanup (moneromooo-monero) 84e23156 cryptonote_protocol: avoid spurious SYNCHRONIZED OK messages (moneromooo-monero) 5be43fcd cryptonote_protocol_handler: sync speedup (moneromooo-monero)
2017-08-07cryptonote_protocol_handler: sync speedupmoneromooo-monero1-0/+35
A block queue is now placed between block download and block processing. Blocks are now requested only from one peer (unless starved). Includes a new sync_info coommand.
2017-07-04Add on_get_alt_blocks_hashes RPC callmoneroexamples1-0/+22
2017-06-28Remove typeid use in network_addressmoneromooo-monero1-2/+2
Since I had to add an ID to the derived classes anyway, this can be used instead. This removes an apparently pointless warning from CLANG too.
2017-06-24Merge pull request #2091Riccardo Spagni1-2/+2
e4da88a2 Fixed typo in rpc/core_rpc_server.cpp (Julien Klepatch)
2017-06-18Merge pull request #2052Riccardo Spagni1-7/+33
072102cf abstracted nework addresses (moneromooo-monero)
2017-06-18Fixed typo in rpc/core_rpc_server.cppJulien Klepatch1-2/+2
2017-06-01Speedup print_pool_statsHoward Chu1-0/+8
Since we're just counting txs, there's no reason to deserialize all the blobs.
2017-05-30Merge pull request #1982Riccardo Spagni1-3/+3
b52abd13 Move txpool to the database (moneromooo-monero)
2017-05-27abstracted nework addressesmoneromooo-monero1-7/+33
All code which was using ip and port now uses a new IPv4 object, subclass of a new network_address class. This will allow easy addition of I2P addresses later (and also IPv6, etc). Both old style and new style peer lists are now sent in the P2P protocol, which is inefficient but allows peers using both codebases to talk to each other. This will be removed in the future. No other subclasses than IPv4 exist yet.
2017-05-25Move txpool to the databasemoneromooo-monero1-3/+3
Integration could go further (ie, return_tx_to_pool calls should not be needed anymore, possibly other things). poolstate.bin is now obsolete.