Commit Graph

1048 Commits

Author SHA1 Message Date
moneromooo-monero 7340300460 add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc}
Those take a command line of the form "A [B]", with A being the
name (and optional path, if not in the caller's CWD, but fully
qualified path is recommended, avoids possible security issues)
to a program, and optional arguments. Any occurence of the two
character string "%s" will be replaced by the hash of the block
or transaction which triggered the notification.

Tokenization is barebones. If you want things like pipes, calls
to paths with spaces, etc, then use a script (though exec time
will suffer).

block-notify is called when a new block is added onto the chain.

tx-notify is called when a new transaction happens with the
wallet as source and/or destination.

It is the notification program's responsibility to determine what
to do in those cases.

Note that this is asynchronous, so it is very possible that:
- the notification programs will be run out of order
- several events happen before the notification for the first one

A Windows port would be nice if someone wants to make one.
2018-09-29 08:44:18 +00:00
Riccardo Spagni 8bf5a00564 Merge pull request #4423
357441a2 add checkpoints for testnet and mainnet (Riccardo Spagni)
d9f666d7 update checkpoints.dat (Riccardo Spagni)
6b1b4e83 update version to 13.0 (Riccardo Spagni)
6f153533 update readme with v13.0 (Riccardo Spagni)
2018-09-25 13:33:52 +02:00
Riccardo Spagni 689758d691 Merge pull request #4435
c39ad0cd tx_pool: fix tx removal at startup keeping references (moneromooo-monero)
2018-09-25 13:11:05 +02:00
moneromooo-monero c39ad0cd72 tx_pool: fix tx removal at startup keeping references 2018-09-25 09:58:37 +00:00
moneromooo-monero 50981c40ce blockchain: add stagenet v8 and v9, two weeks before mainnet 2018-09-24 20:43:39 +00:00
Riccardo Spagni d9f666d78c update checkpoints.dat 2018-09-23 09:51:15 +02:00
Riccardo Spagni 0645dcdbdb Merge pull request #4378
ac934663 rpc: add a "is an update available" flag in get_info (moneromooo-monero)
2018-09-21 20:41:53 +02:00
Riccardo Spagni d6893aedf6 Merge pull request #4369
b2bb9312 blockchain: simplify output distribution code (moneromooo-monero)
befdcbf4 db_lmdb: do not use base for cumulative distribution (moneromooo-monero)
2018-09-21 20:31:21 +02:00
Riccardo Spagni 22a6591a70 Merge pull request #4325
4e1e9a60 blockchain: add mainnet v8 height targetting 18 october (moneromooo-monero)
2018-09-18 17:39:16 +02:00
Riccardo Spagni 3584a852a3 Merge pull request #4372
1660b0e7 tx_pool: make the max tx size a consensus rule from v8 (moneromooo-monero)
2018-09-14 12:56:01 +02:00
moneromooo-monero be001326d1 remove obsolete daemon selection of fake outs and old tx construction 2018-09-14 10:51:45 +00:00
moneromooo-monero ac9346637a rpc: add a "is an update available" flag in get_info
Make it easier for a user to be told when to update
2018-09-14 09:28:03 +00:00
moneromooo-monero 1660b0e72c tx_pool: make the max tx size a consensus rule from v8 2018-09-13 09:43:29 +00:00
moneromooo-monero b2bb9312a7 blockchain: simplify output distribution code 2018-09-12 19:20:16 +00:00
moneromooo-monero 9137ad2c63 blockchain: add a testnet v9 a day after v8
So that bulletproofs become mandatory
2018-09-11 13:38:36 +00:00
moneromooo-monero 5ffb2ff9b7 v8: per byte fee, pad bulletproofs, fixed 11 ring size 2018-09-11 13:38:07 +00:00
moneromooo-monero c444b1b229 require canonical multi output bulletproof layout 2018-09-11 13:37:39 +00:00
moneromooo-monero 2a8fcb421b Bulletproof aggregated verification and tests
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero bacf0a1e2f bulletproofs: add aggregated verification
Ported from sarang's java code
2018-09-11 13:37:32 +00:00
moneromooo-monero 9ce9f8caf6 bulletproofs: add multi output bulletproofs to rct 2018-09-11 13:37:28 +00:00
luigi1111 03738fdde1 Merge pull request #4276
48a7bc4 tx_pool: fix infinite loop when failing to find a meta record (moneromooo-monero)
2018-09-04 13:25:44 -05:00
luigi1111 5f1bbe3bce Merge pull request #4268
1f2409e Do memwipe for critical secret keys copied to rct::key (stoffu)
2018-09-04 13:16:04 -05:00
moneromooo-monero 4e1e9a607e blockchain: add mainnet v8 height targetting 18 october
and v9 a day later
2018-09-02 16:02:17 +00:00
luigi1111 ec6982f8eb Merge pull request #4240
83f5587 blockchain: use uint64_t for height, not size_t (moneromooo-monero)
2018-08-22 20:58:55 -05:00
luigi1111 4a4ea78ecd Merge pull request #4204
b278b83 core: sync database based on bytes added, not blocks added (moneromooo-monero)
2018-08-22 20:43:51 -05:00
moneromooo-monero 48a7bc4280 tx_pool: fix infinite loop when failing to find a meta record 2018-08-19 17:47:05 +00:00
stoffu 1f2409e9e2 Do memwipe for critical secret keys copied to rct::key 2018-08-16 22:26:30 +09:00
moneromooo-monero 82d1b74500 core: cache block template where possible
This avoids constant rechecking of the same things each time
a miner asks for the block template. The tx pool maintains
a cookie to allow users to detect when the pool state changed,
which means the block template needs rebuilding.
2018-08-16 12:44:33 +00:00
luigi1111 fd3b71129b Merge pull request #4164
8e24533 blockchain: some batch tx scanning speedup (moneromooo-monero)
2018-08-15 17:31:24 -05:00
moneromooo-monero b278b83860 core: sync database based on bytes added, not blocks added
Blocks have a very wide range, whereas actual size is the relevant
quantity to consider when syncing
2018-08-12 16:13:46 +00:00
moneromooo-monero 83f5587167 blockchain: use uint64_t for height, not size_t 2018-08-09 17:09:26 +00:00
luigi1111 dda05f357a Merge pull request #4108
8c05237 blockchain: cache next block difficulty after adding a block (moneromooo-monero)
2018-07-27 14:26:01 -05:00
moneromooo-monero 8e24533a7f blockchain: some batch tx scanning speedup 2018-07-21 12:05:12 +01:00
luigi1111 61eea83978 Merge pull request #4081
d95bc44 blockchain: fix getting invalid block data on failure (moneromooo-monero)
2018-07-19 14:12:30 -05:00
luigi1111 9474567d76 Merge pull request #4076
aa0ea0a blockchain: set the m_verifivation_failed flag in a couple more places (moneromooo-monero)
2018-07-19 14:11:24 -05:00
luigi1111 5cade94189 Merge pull request #4047
41b4bf9 tx_pool: cache check_tx_inputs results (moneromooo-monero)
2018-07-19 14:02:20 -05:00
luigi1111 21afa71ba6 Merge pull request #3981
45e419b db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19 13:39:24 -05:00
luigi1111 d518dae4bf Merge pull request #3973
50af357 alt_chain_info can now give more info about a particular alt chain (moneromooo-monero)
2018-07-19 13:37:10 -05:00
luigi1111 025187e6c9 Merge pull request #3854
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-19 13:35:25 -05:00
moneromooo-monero 45e419bd5c db: store cumulative rct output distribution in the db for speed
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-07-13 11:37:04 +01:00
moneromooo-monero 8c0523771f blockchain: cache next block difficulty after adding a block
It's not 100% certain it'll be needed, but it avoids getinfo
needing the blockchain lock and potentially blocking
2018-07-07 19:34:21 +01:00
moneromooo-monero d95bc44c6b blockchain: fix getting invalid block data on failure 2018-06-29 15:50:34 +01:00
victorsintnicolaas 34cb6b4b70 add --regtest and --fixed-difficulty for regression testing
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-29 10:06:11 +02:00
moneromooo-monero aa0ea0aafc blockchain: set the m_verifivation_failed flag in a couple more places
when a block being added to the main chain is invalid.

This ensures the peer is banned after a number of these.
2018-06-28 16:57:22 +01:00
moneromooo-monero 84d9e7faec blockchain: fix build after waiter::wait prototype change 2018-06-28 00:24:39 +01:00
luigi1111 87d7612311 Merge pull request #3986
b628503 Remove old logic saved in comments. (jeandudey)
2018-06-27 16:22:03 -05:00
luigi1111 3ad4ecd4ff Merge pull request #3982
08b85a8 cryptonote_config: add get_config to refactor x = testnet ? config::testnet::X : stagenet ? config::stagenet::X : config::X (stoffu)
0cf80ba net_node: resolve host for node addresses given via command line flags (stoffu)
2018-06-27 15:38:23 -05:00
luigi1111 a844844cda Merge pull request #3716
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27 15:33:01 -05:00
moneromooo-monero 2771a18e85 threadpool: allow leaf functions to run concurrently
Decrease the number of worker threads by one to account
for the fact the calling thread acts as a worker thread now
2018-06-26 22:15:22 +01:00
moneromooo-monero ef2cb63287 blockchain: simplify/speedup handle_get_objects 2018-06-26 22:15:14 +01:00