Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Basic support for participating tunnels #63

Merged
merged 19 commits into from
Jul 7, 2019
Merged

Basic support for participating tunnels #63

merged 19 commits into from
Jul 7, 2019

Conversation

str4d
Copy link
Owner

@str4d str4d commented Dec 29, 2018

  • Currently only supports intermediate hops, not IBGWs or OBEPs.
  • Has no metrics yet for deciding whether to reject a build request.

Part of #47.

@str4d str4d added the tunnels label Dec 29, 2018
@codecov-io
Copy link

codecov-io commented Dec 30, 2018

Codecov Report

Merging #63 into master will decrease coverage by 0.71%.
The diff coverage is 47.49%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #63      +/-   ##
==========================================
- Coverage   54.65%   53.94%   -0.72%     
==========================================
  Files          25       30       +5     
  Lines        3123     3711     +588     
==========================================
+ Hits         1707     2002     +295     
- Misses       1416     1709     +293
Impacted Files Coverage Δ
src/netdb/mod.rs 29.77% <ø> (ø) ⬆️
src/data/mod.rs 78.24% <ø> (ø) ⬆️
src/tunnel/acceptor.rs 0% <0%> (ø)
src/netdb/mock.rs 0% <0%> (ø)
src/router/mod.rs 0% <0%> (ø) ⬆️
src/router/builder.rs 0% <0%> (ø) ⬆️
src/tunnel/processor.rs 0% <0%> (ø)
src/crypto/mod.rs 62.94% <100%> (+2%) ⬆️
src/tunnel/encryption.rs 100% <100%> (ø)
src/transport/ntcp/handshake/mod.rs 68.35% <100%> (ø) ⬆️
... and 15 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 239db00...3203aad. Read the comment docs.

str4d added 10 commits July 6, 2019 00:07
- `to_peer` is not needed in the struct.
- `flag` is now parsed and validated as the hop type.
BuildRequestRecords omit the two excess zeroes from the I2P ElGamal
ciphertext, but since ElGamalAES+SessionTags requires them, we need to
support both ciphertext formats.
We still get length-checking at runtime because of the internal use of
GenericArray. We were already relying on runtime checks in the
array_ref![] macro, so this is fine.
Each build request is spawned into its own task, which uses the blocking
threadpool for encryption operations.

Currently the listener accepts every request for an intermediate
position, and rejects every IBGW and OBEP request.
Currently only supports intermediate hops, not IBGWs or OBEPs.
@str4d str4d merged commit 87a8068 into master Jul 7, 2019
@str4d str4d deleted the tunnels branch July 7, 2019 13:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants