| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | circuit: improve errors on bad extended2 | Nick Mathewson | 2021-03-16 | 1 | -4/+11 | |
| | | ||||||
| * | Refactor circuit reactor for testing. | Nick Mathewson | 2021-03-16 | 1 | -1/+6 | |
| | | ||||||
| * | Test for Channel::check_match | Nick Mathewson | 2021-03-16 | 1 | -0/+39 | |
| | | ||||||
| * | Merge remote-tracking branch 'origin/mr/21' | Nick Mathewson | 2021-03-12 | 2 | -7/+4 | |
| |\ | ||||||
| | * | Avoid a slice copy in send_relay_cell(). | George Kadianakis | 2021-03-12 | 2 | -7/+4 | |
| | | | | | | | | | Convert slice to array in the parent function instead of copying. | |||||
| * | | Better management for END cells in streams. | Nick Mathewson | 2021-03-10 | 5 | -27/+34 | |
| | | | ||||||
| * | | Box the buffer in DataWriterImpl. | Nick Mathewson | 2021-03-10 | 1 | -3/+2 | |
| | | | ||||||
| * | | Remove now-unused methods from DataStream and its allies. | Nick Mathewson | 2021-03-10 | 1 | -36/+0 | |
| | | | ||||||
| * | | Treat StreamClosed as indicating no error. | Nick Mathewson | 2021-03-10 | 1 | -3/+7 | |
| | | | | | | | | | This is wrong, but less wrong than the other way around. | |||||
| * | | Use AsyncRead and AsyncWrite in our proxy implementation | Nick Mathewson | 2021-03-10 | 1 | -0/+2 | |
| | | | ||||||
| * | | Make DataStream implement AsyncRead and AsyncWrite. | Nick Mathewson | 2021-03-10 | 1 | -1/+27 | |
| | | | ||||||
| * | | Implement AsyncWrite for DataWriter. | Nick Mathewson | 2021-03-10 | 1 | -24/+155 | |
| | | | ||||||
| * | | Revise DataReader to implement AsyncRead. | Nick Mathewson | 2021-03-10 | 1 | -23/+95 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The tricks I needed here turned out to be: * I needed to store the future returned by read_cell() while it is returning Poll::Pending. * Since the type of that future is secret, I needed to put it in a Box<dyn Future>. * But since that future holds a reference to the DataReader, that would create a self-referential structure if we tried to store the DataReader and the future at the same time. So instead, I had to make an enum() that either holds a DataReader directly, or holds the future that will give us back the DataReader when it's done. (I also had to change the read_cell() function so that it takes ownership of the DataReader, and returns it when it's finished.) (Daniel Franke explained how to do this.) * Finally, I couldn't figure out how to change the enum's type in-place, so I had to wrap it in an Option<>. (Daniel Franke says this isn't actually necessary.) I've noted a couple of places in the read code where I want to handle errors and closes more carefully. | |||||
| * | | Rearrange DataStream code a bit and add an internal layer of indirection | Nick Mathewson | 2021-03-10 | 1 | -36/+56 | |
| | | | ||||||
| * | | Make note_ended private on RawCellStream. | Nick Mathewson | 2021-03-10 | 2 | -8/+18 | |
| | | | ||||||
| * | | Move DataStream into its own module. | Nick Mathewson | 2021-03-10 | 2 | -204/+212 | |
| | | | ||||||
| * | | Move ResolveStream to its own module. | Nick Mathewson | 2021-03-10 | 2 | -35/+42 | |
| | | | ||||||
| * | | Implement From<tor_proto::Error> for std::io::Error | Nick Mathewson | 2021-03-10 | 1 | -0/+23 | |
| | | | ||||||
| * | | Move RawCellStream into its own module. | Nick Mathewson | 2021-03-10 | 2 | -86/+106 | |
| | | | ||||||
| * | | Rename TorStream => RawCellStream | Nick Mathewson | 2021-03-10 | 2 | -20/+20 | |
| | | | ||||||
| * | | Refactor DataStream constituents a bit. | Nick Mathewson | 2021-03-09 | 1 | -33/+93 | |
| |/ | | | | | | | | | These new (internal so far) APIs correspond more closely to what we'll need for AsyncRead and AsyncWrite. We also make write methods take a mutable reference to self, since that seems to be (closer to) what the AsyncRead/AsyncWrite code expects. | |||||
| * | Make a few async_test tests work correctly again. | Nick Mathewson | 2021-03-02 | 1 | -33/+35 | |
| | | | | | | | For these, we need to call tor_rtcompat::task::block_on() directly, since they would crash with tokio enabled. Perhaps down the line we should look for a better fix here. | |||||
| * | Merge remote-tracking branch 'origin/mr/16' into main | Nick Mathewson | 2021-02-26 | 1 | -22/+37 | |
| |\ | ||||||
| | * | Refactor StreamMap methods to use HashMap::Entry | George Kadianakis | 2021-02-26 | 1 | -22/+37 | |
| | | | ||||||
| * | | Use futures::join!() to simplify test_create(). | Nick Mathewson | 2021-02-23 | 1 | -19/+11 | |
| | | | ||||||
| * | | Fix an intermittent test failure on int overflow. | Nick Mathewson | 2021-02-19 | 1 | -1/+4 | |
| |/ | ||||||
| * | Simplify error checking in begin_data_stream(). | George Kadianakis | 2021-02-08 | 1 | -18/+12 | |
| | | ||||||
| * | Implement timeout for new streams (set to 120 seconds). | George Kadianakis | 2021-02-05 | 2 | -11/+34 | |
| | | ||||||
| * | Rename client-demo to tor-client. | Nick Mathewson | 2021-02-02 | 1 | -1/+1 | |
| | | ||||||
| * | Migrate from futures_codec to asynchronous_codec. | Nick Mathewson | 2021-01-15 | 3 | -1/+4 | |
| | | | | | | | | | 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. | |||||
| * | Fix some clippy warnings from nightly. | Nick Mathewson | 2021-01-02 | 2 | -4/+10 | |
| | | ||||||
| * | Implement the "circwindow" and "ExtendByEd25519ID" parameters | Nick Mathewson | 2020-12-22 | 2 | -19/+95 | |
| | | | | | | | These necessitated a little complexity for our circuit creation/extension API; we might want to refactor that down the road. | |||||
| * | When a stream read fails, block writes too. | Nick Mathewson | 2020-12-22 | 1 | -13/+10 | |
| | | | | | Closes arti#49. | |||||
| * | Fix a few clippy warnings | Nick Mathewson | 2020-12-17 | 1 | -3/+3 | |
| | | ||||||
| * | Handle an error in circuit.rs without crashing. | George Kadianakis | 2020-12-17 | 1 | -1/+4 | |
| | | ||||||
| * | Simplify RelayCellBody::recognized() method. | George Kadianakis | 2020-12-17 | 1 | -27/+22 | |
| | | | | | | | self is no longer mutable. Co-authored-by: David Goulet <[email protected]> | |||||
| * | Basic support for IPv6 and begin flags. | Nick Mathewson | 2020-12-15 | 1 | -3/+10 | |
| | | | | | | | We now have a way to tell a circuitmgr whether we require ipv4/ipv6 support for a target address in an exit policy, and we use similar logic to set begin flags. | |||||
| * | Fix some rustdoc warnings. | Nick Mathewson | 2020-12-09 | 4 | -6/+7 | |
| | | ||||||
| * | Make RSAIdentity implement Copy. | Nick Mathewson | 2020-12-08 | 1 | -2/+2 | |
| | | ||||||
| * | Resolve a few nightly-only clippy issues | Nick Mathewson | 2020-12-07 | 1 | -0/+2 | |
| | | ||||||
| * | Mark some XXXX issues as XXXX-A1. | Nick Mathewson | 2020-12-07 | 2 | -4/+4 | |
| | | ||||||
| * | Run cargo fix --edition-idioms | Nick Mathewson | 2020-12-02 | 3 | -3/+3 | |
| | | ||||||
| * | Expose UniqId types for channels and circuits | Nick Mathewson | 2020-12-01 | 4 | -14/+30 | |
| | | ||||||
| * | Rename LogId -> UniqId. | Nick Mathewson | 2020-12-01 | 7 | -106/+125 | |
| | | ||||||
| * | Derive more types for circuit and channel LogIds | Nick Mathewson | 2020-12-01 | 2 | -2/+2 | |
| | | ||||||
| * | Enforce uniqueness on circuit and channel logids | Nick Mathewson | 2020-12-01 | 1 | -3/+9 | |
| | | ||||||
| * | Refactor first-hop handling types a bit | Nick Mathewson | 2020-11-17 | 2 | -3/+7 | |
| | | | | | | | 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. | |||||
| * | Move closed-check for circuits into an atomicbool. | Nick Mathewson | 2020-11-13 | 2 | -31/+47 | |
| | | ||||||
| * | Light refactoring on remaining ChannelImpl functions | Nick Mathewson | 2020-11-13 | 1 | -22/+21 | |
| | | ||||||
| * | Turn the channel "closed" method into an AtomicBool | Nick Mathewson | 2020-11-13 | 2 | -23/+24 | |
| | | | | | This lets us make the test for closed channels non-async. | |||||
