summaryrefslogtreecommitdiff
path: root/tor-proto/src/channel
Commit message (Collapse)AuthorAgeFilesLines
* Use FuturesUnordered, not SelectAll<Once<...>>Nick Mathewson2021-06-141-5/+5
| | | | Closes #124
* Add the "unreachable_pub" lint.Nick Mathewson2021-05-182-11/+11
| | | | | | This is a somewhat obnoxious change in its scope and requirements, but it makes it easier to understand what the real public and private parts of our APIs are.
* Prefer "relay" to "server" when appropriate.Nick Mathewson2021-05-181-2/+2
|
* Add unseparated_literal_suffix lint, and fix it.Nick Mathewson2021-05-032-2/+2
|
* Make `now` an argument when verifying a channel.Nick Mathewson2021-04-301-4/+7
| | | | | It turns out that we want to take `now` from the Runtime, to make higher level code testable.
* note a small divergence in circuit id probing behavior.Nick Mathewson2021-04-291-0/+2
|
* Remove pin_project usage in tor-proto.Nick Mathewson2021-04-281-12/+8
| | | | Turns out we didn't need it.
* Fix Rust-1.51 clippy warnings about acronyms in camel case.Nick Mathewson2021-03-292-2/+2
| | | | This is painful, but we shouldn't have to do it again.
* Rename Rsa{Identity,Signature} to fix clippy warning.Nick Mathewson2021-03-291-5/+5
|
* Migrate from futures_codec to asynchronous_codec.Nick Mathewson2021-01-152-1/+3
| | | | | | | | asynchronous_codec is a fork of futures_codec that is up-to-date on its dependencies. This migration allows us to upgrade to the current version of the bytes crate.
* Implement the "circwindow" and "ExtendByEd25519ID" parametersNick Mathewson2020-12-221-2/+8
| | | | | | These necessitated a little complexity for our circuit creation/extension API; we might want to refactor that down the road.
* Run cargo fix --edition-idiomsNick Mathewson2020-12-021-1/+1
|
* Expose UniqId types for channels and circuitsNick Mathewson2020-12-011-6/+6
|
* Rename LogId -> UniqId.Nick Mathewson2020-12-013-53/+65
|
* Derive more types for circuit and channel LogIdsNick Mathewson2020-12-011-1/+1
|
* Enforce uniqueness on circuit and channel logidsNick Mathewson2020-12-011-3/+9
|
* Refactor first-hop handling types a bitNick Mathewson2020-11-171-2/+6
| | | | | | This lets us have the notion of "get the first hop of a path as some kind of a chantarget", which will make it easier to write other path types.
* Turn the channel "closed" method into an AtomicBoolNick Mathewson2020-11-131-4/+3
| | | | This lets us make the test for closed channels non-async.
* Move a few immutable fields from ChannelImpl outside the lock.Nick Mathewson2020-11-131-1/+0
| | | | | Since these don't change while the channel is alive, we don't need the lock to protect them.
* Make the Arc-ness of channels more explicit.Nick Mathewson2020-11-122-25/+21
| | | | | | Previously every channel was a secret Arc<>, which I think is bad style, and which stopped us from using weak references in other places.
* Remove duplication of ipaddr argument in handshake.Nick Mathewson2020-10-291-13/+19
|
* Make circuit reactors also have a run_once() method for testing.Nick Mathewson2020-10-271-24/+1
|
* Rename CircIDRange to CircIdRangeNick Mathewson2020-10-271-8/+8
|
* Remove a bunch of dbg! calls.Nick Mathewson2020-10-261-1/+0
|
* Improve documentation in tor-protoNick Mathewson2020-10-262-7/+5
|
* Tests for sending bad/good cell types on a channelNick Mathewson2020-10-261-5/+3
|
* Clean up some XXXXs in channel::reactor.rsNick Mathewson2020-10-261-7/+3
|
* Tests for receving incoming DESTROY cell.Nick Mathewson2020-10-261-0/+58
|
* channel::reactor: Tests for handling incoming RELAY cellsNick Mathewson2020-10-262-1/+88
|
* Test for rejecting CREATED cellsNick Mathewson2020-10-261-1/+16
|
* Add a CircEnt::DestroySent circuit state.Nick Mathewson2020-10-262-12/+22
| | | | | | | A circuit enters DestroySent after it's sent a DESTROY cell. We use this state to make sure that we don't receive too many cells on a destroyed circuit, _and_ so that we don't block such cells completely.
* Use better return type in advance_from_openingNick Mathewson2020-10-252-23/+23
|
* Use from_bytes name for Ed25519IdentityNick Mathewson2020-10-251-2/+1
|
* Rename CircID and StreamID to end with Id instead, for consistencyNick Mathewson2020-10-253-20/+20
|
* Add some tests for channel reactor and related code.Nick Mathewson2020-10-252-0/+146
|
* Add a test for running and shutting down reactors.Nick Mathewson2020-10-251-1/+80
| | | | | This took a long time since I needed to learn about futures and executors, but I think it'll work out okay.
* channel: Refactor the point when we split the framed codec.Nick Mathewson2020-10-253-13/+18
| | | | | | We used to do this during creating the channel in Channel::new, but now we do it one step before, so that it's easier to construct channels for testing.
* channel: Move looping part of run_impl() into run().Nick Mathewson2020-10-251-27/+51
| | | | | This lets us turn run-impl() into a run_once() function for easier testing.
* channel: Remove the needlessly separated ReactorCore type.Nick Mathewson2020-10-231-21/+10
|
* Test for finish-handshake functionNick Mathewson2020-10-231-0/+18
|
* handshake: tests for invalid signaturesNick Mathewson2020-10-231-1/+49
|
* Add tests for handshakes certifying the wrong thingNick Mathewson2020-10-231-0/+53
|
* Tests for handshakes with missing certsNick Mathewson2020-10-231-10/+52
| | | | Also handle tor_cell::Error::ChanProto better.
* Test a trivial succeeding case of link cert validationNick Mathewson2020-10-211-12/+72
|
* Fix a security issue (!) in link handshake validation.Nick Mathewson2020-10-211-1/+1
| | | | | | | | When making sure that the peer had the right RSA identity, we were comparing the RSA identity with itself, not with the RSA identity we expected. Found via unit testing (!).
* Infrastructure for testing handshake cert-validation codeNick Mathewson2020-10-211-1/+61
|
* More tests for handshake connect functionNick Mathewson2020-10-211-26/+136
|
* Start a basic test for the first part of the handshake.Nick Mathewson2020-10-211-0/+45
|
* LogId test: tolerate concurrent tests.Nick Mathewson2020-10-211-11/+8
|
* Start on some tests for pieces of tor-proto::channelNick Mathewson2020-10-213-0/+224
|