Olaoluwa Osuntokun
bb912b6e03
Merge pull request #1222 from halseth/trickle-timeout
...
config/peer: make trickleTimeout configurable
2018-08-22 19:39:33 -07:00
Olaoluwa Osuntokun
f899737d7f
Merge pull request #1169 from stevenroose/filteradd
...
server: Fix bug disconnecting peer on filteradd
2018-08-09 17:06:19 -07:00
Conner Fromknecht
90c2094cbd
server: always reply with get headers
...
backport of https://github.com/decred/dcrd/pull/1295
2018-07-31 21:15:02 -07:00
Johan T. Halseth
08619220b4
config/peer: make trickleTimeout configurable
2018-07-24 12:59:44 +02:00
Olaoluwa Osuntokun
5e86c37411
server: fix bug in cf checkpoint serving
...
In this commit, we fix a bug in the way that we previously attempted to
server cfcheckpoints. In the prior version we would never actually
fetch the current length of the cache. As a result, after the first time
the checkpoints were fetched, we would always continually grow the
cache rather than using what's there if sufficient.
In this commit, we fix this behavior by always checking the length, then
either keeping the rite lock, or downgrading to a read lock if the size
was sufficient.
2018-07-16 16:31:11 -07:00
Olaoluwa Osuntokun
f7366fb51b
server: ensure we only fetch filters we know of
2018-07-14 12:20:20 -07:00
Steven Roose
fbe1bfa659
server: print full name of cf index in main log
2018-07-06 14:40:27 -05:00
Jim Posen
4d0e856ea1
server: Handler for getcfcheckpt messages.
2018-05-23 16:46:15 -07:00
Jim Posen
4c991c8783
wire: Populate cfheaders message with filter hashes instead of headers.
2018-05-23 16:46:15 -07:00
Jim Posen
175af18043
multi: Modify CFHeaders message to have a PrevFilterHeader field.
2018-05-23 16:46:15 -07:00
Jim Posen
7a53a05878
multi: Redefine GetCFHeaders to have StartHeight and StopHash.
2018-05-23 16:46:15 -07:00
Jim Posen
daac60675e
multi: Redefine GetCFilters to have StartHeight and StopHash.
2018-05-23 16:46:15 -07:00
Jim Posen
621f347929
wire: Remove cftypes and getcftypes commands.
2018-05-23 16:46:15 -07:00
Olaoluwa Osuntokun
5291c455c2
server: properly set feeEstimator in newServer
2018-05-23 16:46:15 -07:00
Daniel Krawisz
47113d428c
It is now possible to save and restore the state of the FeeEstimator
...
and the server searches the database for a previous state to load
when the program is turned on.
2018-05-23 16:46:15 -07:00
Daniel Krawisz
4fd446028f
Enable estimatefee rpc command.
2018-05-23 16:46:15 -07:00
Daniel Krawisz
1333ad7f78
FeeEstimator added to server. Mempool alerts the fee estimator of
...
new txs that it observes. The block manager alerts the fee estimator
of new and orphaned blocks.
Check for invalid state and recreate FeeEstimator if necessary.
2018-05-23 16:46:15 -07:00
Olaoluwa Osuntokun
10432160d5
multi: rebase to upstream, update API's
2018-05-23 16:46:15 -07:00
Alex
e0a357abb5
server: add TODO for querying supported filter types
2018-05-23 16:46:15 -07:00
Alex
c7e7acc7fd
multi: use hidden varint for cftypes count; make filter type enum, not uint8
2018-05-23 16:46:15 -07:00
Alex
5772bdde86
server: add OnGetCFTypes callback to serverPeer
2018-05-23 16:46:15 -07:00
Alex
621c73dad1
multi: change cfilter Extended
bool to FilterType
uint8
...
The cfilter BIP specifies that the filter type is a uint8. The
current code encodes it correctly on the wire, but everywhere else,
it's treated as a boolean (false for basic filter, true for
extended). This commit corrects that to account for possible
additional filter types in the future. All package changes are
done in one commit as they're all interdependent. The following
packages are updated:
* blockchain/indexers
* btcjson
* peer
* wire
* main (server.go and rpcserver.go)
2018-05-23 16:46:15 -07:00
Alex
c5c392c5c5
server: init rpcserver with cfindex
2018-05-23 16:46:15 -07:00
Alex
6589cffb19
server: change logging in OnGetCFilter to be less verbose
2018-05-23 16:46:15 -07:00
Alex
92f1de6dd9
Fix case where 0 headers are retrieved.
2018-05-23 16:46:15 -07:00
Alex
dabb8000fb
Add Extended flag to cfilter and cfheaders messages
2018-05-23 16:46:15 -07:00
Alex
936caad9c2
Add last blockhash to cfheaders and blockhash to cfilter messages
2018-05-23 16:46:15 -07:00
Alex
ba4a2f77a5
wire/server: allocate hash once per loop to prevent overwriting
2018-05-23 16:46:15 -07:00
Alex
29b5ece196
Changed getcfheaders/cfheaders messages to get multiple headers.
2018-05-23 16:46:15 -07:00
Alex
8ad7aa5d5d
Rename CFilterHeader to CFHeader on P2P side; fix some bugs/tests
2018-05-23 16:46:15 -07:00
pedro martelletto
b8c3be740f
Add CFilterHeader p2p counterparts
2018-05-23 16:46:15 -07:00
Alex
6102e129c5
Fixed a couple of bugs and added --dropcfindex option
2018-05-23 16:46:15 -07:00
pedro martelletto
cdb3d44fa8
p2p needs a new message to return committed filters
2018-05-23 16:46:15 -07:00
pedro martelletto
71c421db66
Differentiate between basic/extended filters in p2p/RPC
2018-05-23 16:46:15 -07:00
pedro martelletto
396d28955c
better separation between filters; comments
2018-05-23 16:46:15 -07:00
pedro martelletto
6e5f650be9
CBFilter -> CFilter, discussed with davec@
2018-05-23 16:46:15 -07:00
pedro martelletto
a77b1e00d5
FilterByBlockHash(), pointed out by davec@
2018-05-23 16:46:15 -07:00
pedro martelletto
43bf8db793
Look up filters from p2p GetCBF message
2018-05-23 16:46:15 -07:00
pedro martelletto
3b0038093a
Hook CBF indexer to server code
2018-05-23 16:46:15 -07:00
pedro martelletto
b2990e7999
Move filter generating code to CBF indexer
2018-05-23 16:46:15 -07:00
pedro martelletto
c8627cbee4
Use a harcoded key to generate filters
...
Pointed out by alex@. Using a dummy key for now.
2018-05-23 16:46:15 -07:00
pedro martelletto
dc25da8296
Generate a filter for a given block
2018-05-23 16:46:15 -07:00
pedro martelletto
e9298934b9
Add a stub GetCBFilter message.
...
Actual semantic and payload format yet to be defined.
2018-05-23 16:46:15 -07:00
pedro martelletto
333af136ef
Create a knob to switch CBFs off.
...
While having them on by default. We may want to revisit this and
make no CBFs the default.
2018-05-23 16:46:15 -07:00
Olaoluwa Osuntokun
2842f933bb
server: fix linter error
2018-05-15 20:47:29 -07:00
Steven Roose
0734b55363
server: Fix bug disconnecting peer on filteradd
2018-04-21 20:48:51 +02:00
Nicola 'tekNico' Larosa
11fcd83963
btcd/multi: fix a number of typos in comments.
2018-01-25 23:23:59 -06:00
Dave Collins
8c883d1fca
blockchain/indexers: Allow interrupts.
...
This propagates the interrupt channel through to blockchain and the
indexers so that it is possible to interrupt long-running operations
such as catching up indexes.
2017-09-05 11:02:46 -05:00
Jim Posen
30d4caeac6
server: Simplify logic to bind listeners.
...
The helper function parseListeners has been changed to return a
slice of net.Addrs with Network() returning tcp4 or tcp6 instead of
returning two slices of IPv4 and IPv6 addresses to simplify calling
code. Also improves how local addresses are added to the address
manager when listening on wildcard addresses.
Also splits some newServer logic into new method initListeners.
2017-09-04 11:55:37 -07:00
David Hill
a2085c68f8
config: Add --whitelist support.
2017-08-31 09:59:43 -04:00