Henry de Valence
986b5ee46b
Fix overlapping range in compactsize encoding.
2019-11-20 11:59:54 -05:00
Henry de Valence
ca24aaf58e
Add the seed for the failing proptest case.
2019-11-20 11:59:54 -05:00
Henry de Valence
2b9991e4e7
Add a basic proptest for compactsize encodings.
...
There's a compiler warning about overlapping ranges so this test should catch the bug.
2019-11-20 11:59:54 -05:00
dependabot-preview[bot]
5b1db18a4b
Bump thiserror from 1.0.5 to 1.0.6
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.5 to 1.0.6.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.5...1.0.6 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-19 10:39:57 -08:00
Deirdre Connolly
189d89a7fc
Handle 'mempool' messages as 'GetMempool' requests
...
With a 'Transactions' response that gets turned into an 'Inv(Vec<InventoryHash::Tx>)' message.
We don't yet handle a response from our peer for a 'mempool', which will have to be
a more generic 'Inv' type because we might receive transaction hashes we don't know about yet.
Pertains to #26
2019-11-18 15:55:25 -05:00
Deirdre Connolly
98079c9d77
Support Mempool message
...
This does not yet push requests into services that actually respond with transaction
hashes in our node's mempool, which doesn't exist yet.
Pertains to #26
2019-11-18 15:55:25 -05:00
Henry de Valence
6d79352fb6
Remove nightly toolchain pin since async/await is stable.
2019-11-16 00:11:14 -05:00
Deirdre Connolly
9133b87771
Add copyright marks on each license
2019-11-14 11:50:49 -08:00
Deirdre Connolly
bc2a4218ea
Update README.md
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-14 14:33:40 -05:00
Deirdre Connolly
ae67344268
Add LICENSE-MIT and LICENSE-APACHE and note in README.md
...
Resolves #96
2019-11-14 14:33:40 -05:00
Henry de Valence
e63f8b51b1
Fix default port setting.
2019-11-13 18:47:44 -05:00
Henry de Valence
3b02b40758
Simplify tracing output.
2019-11-13 18:43:18 -05:00
Henry de Valence
ec4f6bd9ea
Allow using the connect stub to test address messages.
2019-11-13 18:43:18 -05:00
Henry de Valence
2ac77ab704
fmt
2019-11-13 18:43:18 -05:00
Henry de Valence
d170608c13
Remove outdated note.
...
The MetaAddr type is used not just in the Bitcoin code so it doesn't make sense
to keep it in the Bitcoin protocol implementation.
2019-11-13 18:43:18 -05:00
Henry de Valence
9a0bffecb8
Sanitize outbound address responses.
...
This aims to prevent a remote peer from inspecting timings of all messages
received by this node.
2019-11-13 18:43:18 -05:00
Deirdre Connolly
e5aa02bbd4
Remove special wait, unneeded for seed
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-12 22:39:47 -05:00
Deirdre Connolly
bdba52936e
Unwrap address_book in call(), which relies on poll_ready giving a positive response first, otherwise panic
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-12 22:39:47 -05:00
Deirdre Connolly
fb19febe26
Remove config override, not needed
2019-11-12 22:39:47 -05:00
Deirdre Connolly
4923e0d783
Update tracing invocation to be better manipulated
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-12 22:39:47 -05:00
Deirdre Connolly
73d777fe65
Update `Ok(None)` case logging.
2019-11-12 22:39:47 -05:00
Deirdre Connolly
0f20ff59c7
Clean up SeedService.poll_ready with a 'ref mut'
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-12 22:39:47 -05:00
Deirdre Connolly
9d8e32d05f
Update `seed` subcommand description
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-11-12 22:39:47 -05:00
Deirdre Connolly
fe2a1ec1ea
Remove autogenerated Abscissa doc comments
2019-11-12 22:39:47 -05:00
Deirdre Connolly
910268a45b
Remove to-fix comment
2019-11-12 22:39:47 -05:00
Deirdre Connolly
a2292d94a0
Clean up some logging and comments on seed service
2019-11-12 22:39:47 -05:00
Deirdre Connolly
d6ab549fd5
Yay, SeedService makes a remote 'connect' happy
2019-11-12 22:39:47 -05:00
Deirdre Connolly
4d3ab201e6
seed command seems to be functional
...
Moved SeedService out of the command closure Command currently spawns
a tokio task to DOS the seed service with `Request::GetPeers` every
second.
Pertains to #54
2019-11-12 22:39:47 -05:00
Deirdre Connolly
fee75b5da8
Add SeedService
...
This may need some cleaning up, but this is the first iteration to appease the compiler.
2019-11-12 22:39:47 -05:00
Deirdre Connolly
0ac1b663fe
Keep sets of initial peers as Strings in config file
2019-11-12 22:39:47 -05:00
Deirdre Connolly
b5bbef5c47
Default init seed nodes based on network choice
...
And more flushed out but incomplete
2019-11-12 22:39:47 -05:00
dependabot-preview[bot]
7b739b3c16
Bump thiserror from 1.0.4 to 1.0.5
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.4...1.0.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-09 18:55:46 -08:00
dependabot-preview[bot]
78b243e955
Bump tower-load from `fac5c36` to `52dbdda`
...
Bumps [tower-load](https://github.com/tower-rs/tower ) from `fac5c36` to `52dbdda`.
- [Release notes](https://github.com/tower-rs/tower/releases )
- [Commits](fac5c361a4...52dbdda23d
)
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-02 11:27:35 -07:00
dependabot-preview[bot]
ec2db11ebe
Bump toml from 0.5.4 to 0.5.5
...
Bumps [toml](https://github.com/alexcrichton/toml-rs ) from 0.5.4 to 0.5.5.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases )
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.4...0.5.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-01 10:20:57 -07:00
Deirdre Connolly
a322566694
Add Cargo.lock
...
To allow Dependabot to operate correctly.
2019-10-30 18:15:29 -04:00
Henry de Valence
f588f5d368
Remove connect loop
2019-10-26 19:54:17 -04:00
Deirdre Connolly
dadc13feb4
Create README.md
2019-10-25 12:58:30 -04:00
Henry de Valence
d8ba22e7a2
Update zebra-network Monodraw diagram.
...
Also, add the source file to the repo.
2019-10-24 15:06:02 -07:00
Deirdre Connolly
bb77e509ea
Comment out suspicious run line
2019-10-24 16:50:34 -04:00
Henry de Valence
7a09223ddb
Fix typos.
...
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
2019-10-22 19:43:44 -07:00
Henry de Valence
28a24fa91b
Import and update the previous design.md.
2019-10-22 19:43:44 -07:00
Henry de Valence
47ec2e2689
Remove stub discover module.
2019-10-22 19:06:08 -07:00
Henry de Valence
c3ec235a5b
Suppress unused import warnings.
2019-10-22 19:06:08 -07:00
Henry de Valence
ed2ee9d42f
Add a PeerConnector wrapper around PeerHandshake
2019-10-22 19:06:08 -07:00
Henry de Valence
9e2678d76c
Rename PeerConnector to PeerHandshake.
...
It's only responsible for doing the handshakes, so it should be named that way,
and then we can have a Connector responsible for actually opening the TCP
connection.
2019-10-22 19:06:08 -07:00
Henry de Valence
121cea610b
Unlink peer spans from their creation details.
2019-10-22 19:06:08 -07:00
Henry de Valence
6faebe844c
Make zebra-network::Config toml-able.
...
The toml serializer function we are using -- maybe because of to_string_pretty
(?) barfs on structs that mix ordering of simple values and "tables", so just
keep all the Durations to the end.
2019-10-22 19:06:08 -07:00
Henry de Valence
0833d31ec7
Use a timer to add peers by interval.
2019-10-22 19:06:08 -07:00
Henry de Valence
9a779a639f
Add a timeout for peer handshakes.
2019-10-22 19:06:08 -07:00
Henry de Valence
027bdc8465
Rework initial crawler logic.
...
This splits out the connection handling code into a try_connect closure, which
could be refactored into a Service of its own.
On creation, when we are likely to have very few peers, launch many concurrent
connections to the first few candidates in the initial candidate set, before
continuing to grow the peer set according to demand signals.
2019-10-22 19:06:08 -07:00