32 Commits

Author SHA1 Message Date
cheme
5b712e559a Complements to #389 (#415)
* Copyright and test module

* Cosmetic changes

* Put back static constraint in mplex (in case it might be needed in other crates).

* 2018, Send on box.
2018-08-15 17:00:57 +02:00
Jun Jiang
e5afab104a Fix compiling error on windows (#410)
* Fix compiling error on windows

* Fix JsonFileDatastore tests

* Update tempfile cargo, Refactor JsonFileDatastore tests
2018-08-14 11:31:05 +02:00
cheme
73996885cb remove rustc-serialize (#359) (#386)
* Replace rust-crypto dependency by RustCrypto project crate aes-ctr

* Support for x86 build supporting both aesni and aessoft at runtime.
Feature gated behind 'aes-all'.
Building requires RUSTFLAGS="-C target-feature=+aes,+ssse3" and RUSTDOCFLAGS="-C target-feature=+aes,+ssse3".
Only support x86 case.

* Change CI to build with aes ni on all-features

* Switch aes-all logic (is_x86 runtime test did not work as I thought when
RUSTC aes and sse are enabled).
To build with aes-all, aes and sse flag should not be set.

* Use latest aesni from crates.io (with pr to disable compile time
checks).

* Replace rust-crypto dependency by RustCrypto project crate aes-ctr

* Support for x86 build supporting both aesni and aessoft at runtime.
Feature gated behind 'aes-all'.
Building requires RUSTFLAGS="-C target-feature=+aes,+ssse3" and RUSTDOCFLAGS="-C target-feature=+aes,+ssse3".
Only support x86 case.

* Change CI to build with aes ni on all-features

* Switch aes-all logic (is_x86 runtime test did not work as I thought when
RUSTC aes and sse are enabled).
To build with aes-all, aes and sse flag should not be set.

* Use latest aesni from crates.io (with pr to disable compile time
checks).
2018-08-10 18:27:20 +02:00
Pierre Krieger
9480295bf2
Add licenses to all Cargo.toml files (#349) 2018-07-21 12:15:42 +02:00
Pierre Krieger
6bda589389
Some cleanup with clippy and rustfmt (#310) 2018-07-17 11:55:18 +02:00
Pierre Krieger
16e3453b7f
Use the new version of tokio (#303) 2018-07-16 12:15:27 +02:00
Pierre Krieger
f104dd9036
Run rustfmt on files that aren't really touched (#289) 2018-07-11 11:14:40 +02:00
Qian LinFeng
fd01b18e53 Upgrade and unify protobuf version(1.x => 2.0.2) (#283)
* Update and unify protobuf version(1.x => 2.0.2)

* Update protobuf codegen shell script
2018-07-10 14:07:28 +02:00
Pierre Krieger
18075f4eaa
Give access to secio ephemeral key (#280)
* Give access to secio ephemeral key

* Fix tests
2018-07-04 17:07:38 +02:00
Pierre Krieger
e2690f1c92
Use eth-secp256k1 instead of secp256k1 (#279) 2018-07-02 11:56:50 +02:00
Pierre Krieger
143a1845b1
The PeerId is the hash of the protobuf encoding (#276) 2018-06-25 17:56:36 +02:00
Pierre Krieger
795961b15e
Fix the public key format in the IdentifyInfo (#264)
* Fix the public key format in the IdentifyInfo

* Move PublicKey type to core

* Oops
2018-06-25 14:54:55 +02:00
Pierre Krieger
75df40010b
Make secp256k1 optional (#266) 2018-06-22 13:07:57 +02:00
Pierre Krieger
02bf7604d0
Fix protobuf again (#269) 2018-06-21 16:53:23 +02:00
Pierre Krieger
30ffa2f256
Revert to old protobuf generation system (#268)
* Revert "Remove old protoc scripts and artifacts (#262)"

This reverts commit 32ef50b8222fa30e3706c90c24e84e821f3fd84f.

* Revert "Use pure-rust protoc (#255)"

This reverts commit 217fae405f6565d10e010e9e8b5dfd19045120d0.
2018-06-21 15:47:13 +02:00
Jef
32ef50b822 Remove old protoc scripts and artifacts (#262) 2018-06-21 15:03:58 +02:00
Jef
217fae405f Use pure-rust protoc (#255) 2018-06-20 13:40:01 +02:00
Pierre Krieger
1607fcb3f4
Add support for secp256k1 in secio (#258) 2018-06-20 09:47:43 +02:00
Pierre Krieger
7b375798a5
The Multiaddr of the remote is now a Future (#249)
* The Multiaddr of the remote is now a Future

* The multiaddress future in swarm is now a Box
2018-06-19 14:38:55 +02:00
Pierre Krieger
8fb919321b
Fix exchange algorithm in secio (#257) 2018-06-19 13:57:47 +02:00
Pierre Krieger
dbbee5756e
Use stronger typing for the public key of identify (#236)
* Use stronger typing for the public key of identify

* Add PartialEq/Eq implementations

* Fix tests

* Also change is_public_key()
2018-06-05 12:29:59 +02:00
Pierre Krieger
9e2dfd3fa5
Add SecioKeyPair::to_public_key and as_public_key_bytes (#232)
* Add SecioKeyPair::to_public_key and as_public_key_bytes

* Add to_peer_id instead
2018-05-31 18:35:18 +02:00
Pierre Krieger
4da47b4c72
Turn an info! into a debug! (#230) 2018-05-31 17:38:12 +02:00
Pierre Krieger
4c2cabca93
Add support for Ed25519 in secio (#226)
* Add support for Ed25519 in secio

* Add SecioPublicKey::to_peer_id()
2018-05-31 14:50:24 +02:00
Pierre Krieger
2a2ad77d28
Remove the ring override (#227) 2018-05-31 14:24:49 +02:00
Toralf Wittner
5f6e215ec1
Update to protobuf >= 2 (#199) 2018-05-21 17:32:59 +02:00
Toralf Wittner
d394ea0e19
Add /libp2p/circuit/relay/0.1.0 protocol support. (#175)
Add `/libp2p/circuit/relay/0.1.0` protocol support.
2018-05-18 13:13:05 +02:00
Toralf Wittner
86a21fc43e
Remove all targets from log statements. (#195)
The default uses crate + module path anyway, so `target` has been
redundant, causes more work when renaming crates and makes log
lines longer.
2018-05-17 15:14:13 +02:00
Pierre Krieger
5c1890e66a
Rename libp2p_swarm to libp2p_core (#189) 2018-05-16 12:59:36 +02:00
Pierre Krieger
f787f3d8b8
Swarm rework (#182)
* Rename Transport::RawConn to Output

* Remove AsyncRead + AsyncWrite bound on Transport::Output

* UpgradedNode now always implements Transport

* Add and tweak modifiers for Transport and ConnectionUpgrade

* Secio upgrade now returns the pubkey in its output

* Add upgrade::apply

* Add Transport::and_then

* Rework the swarm

* Rustfmt

* Fix concerns
2018-05-14 15:55:16 +02:00
Pierre Krieger
11f655dd6a
Pin protobuf to 1.4 (#184) 2018-05-14 11:04:05 +02:00
Jef
5c4aefe457 Remove libp2p- prefix (#152)
* Remove `libp2p-` prefix

* More sed-fu
2018-03-20 14:44:46 +01:00