| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Move stream timeout logic into tor-client. | Nick Mathewson | 2021-03-24 | 5 | -165/+144 | |
| | | | | | | | | | | | This is consistent with the other pieces of tor-proto, which do not handle timeouts on their own. It also lets us remove tor-rtcompat as a dependency from tor-proto, and simplify some of the test cases to use async_test. This commit unindents a lot of test code; use git's "-b" flag to read the parts that matter. | |||||
| * | upgrade to newer version of config crate. | Nick Mathewson | 2021-03-24 | 3 | -3/+3 | |
| | | ||||||
| * | Move responsibility for knowing about TLS into tor_rtcompat. | Nick Mathewson | 2021-03-23 | 11 | -54/+232 | |
| | | | | | Now we don't need runtime-specific stuff in tor-chanmgr. | |||||
| * | Refactor tokio implpementation in tor-rtcompat. | Nick Mathewson | 2021-03-23 | 7 | -66/+134 | |
| | | | | | | | | | | | | Now other crates don't need any 'ifdef tokio' code, since there are wrappers that implement 'futures' right. Technically, the 'futures' traits are in some ways less good than the tokio ones, but we need a consistent API if we want to support WASM someday and keep support for async_std. I'd rather hold out hope for a future version of futures::io working like tokio than to fix ourselves into the tokioverse forever. | |||||
| * | Add tests for correct incoming sendme handling. | Nick Mathewson | 2021-03-22 | 2 | -5/+207 | |
| | | | | | | | At this point I'm going to pause writing tor-proto tests for a little while and think about refactoring that could make these tests simpler. I'm doing way too much copy-paste here. | |||||
| * | Extend the begindir test to exchange data on the stream. | Nick Mathewson | 2021-03-19 | 1 | -3/+44 | |
| | | ||||||
| * | Introduce a helper to tor_proto::circuit tests | Nick Mathewson | 2021-03-19 | 1 | -44/+24 | |
| | | ||||||
| * | Add a compatibility layer so we can upgrade rand_core. | Nick Mathewson | 2021-03-18 | 14 | -23/+122 | |
| | | | | | | | dalek-crypto is stuck on rand_core 0.5.1, so we've been stuck too. This commit introduces a compatibility module so that we can wrap new rand_core instances to make them backward compatible. | |||||
| * | Move our command-line interface into a new crate called "arti". | Nick Mathewson | 2021-03-17 | 11 | -14/+42 | |
| | | | | | Closes #106 | |||||
| * | Add appropriate categories to some Cargo.toml files. | Nick Mathewson | 2021-03-17 | 10 | -0/+10 | |
| | | ||||||
| * | Add the tor project as an author. | Nick Mathewson | 2021-03-17 | 22 | -22/+22 | |
| | | ||||||
| * | Add keywords to each Cargo.toml | Nick Mathewson | 2021-03-17 | 22 | -1/+22 | |
| | | ||||||
| * | Add a description field to all our Cargo.toml files | Nick Mathewson | 2021-03-17 | 22 | -0/+22 | |
| | | ||||||
| * | Give it a homepage everyplace. | Nick Mathewson | 2021-03-17 | 22 | -0/+22 | |
| | | ||||||
| * | Resolve unwrap() instances in tor-netdir. | Nick Mathewson | 2021-03-16 | 3 | -8/+52 | |
| | | | | | | This includes revising the pick_weighted() function to not panic if its inputs are above 2^64 in total. | |||||
| * | Change an unwrap() in llcrypto to an expect(). | Nick Mathewson | 2021-03-16 | 1 | -1/+1 | |
| | | ||||||
| * | circuit: Add a test for a bad crypto handshake. | Nick Mathewson | 2021-03-16 | 1 | -0/+13 | |
| | | ||||||
| * | circuit: tests for different undesired responses to EXTEND. | Nick Mathewson | 2021-03-16 | 1 | -3/+93 | |
| | | ||||||
| * | 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 | |
| | | ||||||
| * | Bump a couple of deps | Nick Mathewson | 2021-03-13 | 3 | -3/+3 | |
| | | ||||||
| * | 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. | |||||
| * | | Allow spaces in command-line arguments again | Nick Mathewson | 2021-03-12 | 1 | -1/+3 | |
| | | | ||||||
| * | | Improve implementation of copy_interactive | Nick Mathewson | 2021-03-12 | 1 | -11/+50 | |
| | | | | | | | | | | | | | | | Previously we'd flush after every write. Now we only flush when the reader has nothing more to tell us. This way we can be sure that we're sending out the data as soon as we can, without leaving any cells partially filled unnecessarily. | |||||
| * | | Remove a couple of unused deps from tor-llcrypto. | Nick Mathewson | 2021-03-10 | 1 | -2/+0 | |
| | | | ||||||
| * | | Avoid most regex features. | Nick Mathewson | 2021-03-10 | 2 | -11/+6 | |
| | | | ||||||
| * | | Only enable the `config` features we are using. | Nick Mathewson | 2021-03-10 | 2 | -2/+3 | |
| | | | | | | | | | | | This saves us from a lot of extra backends, including an entire extra version of serde (!). | |||||
| * | | Cut down on tokio features. | Nick Mathewson | 2021-03-10 | 1 | -1/+1 | |
| | | | ||||||
| * | | Better management for END cells in streams. | Nick Mathewson | 2021-03-10 | 6 | -27/+59 | |
| | | | ||||||
| * | | 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 | |
| | | | ||||||
| * | | Use AsyncRead and AsyncWrite in tor-dirclient | Nick Mathewson | 2021-03-10 | 1 | -4/+8 | |
| | | | ||||||
| * | | 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 | 3 | -30/+38 | |
| | | | ||||||
| * | | 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 | 2 | -23/+96 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 2 | -34/+94 | |
| | | | | | | | | | | | | | | | | | | | 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. | |||||
| * | | upgrade async-trait | Nick Mathewson | 2021-03-09 | 3 | -3/+3 | |
| | | | ||||||
| * | | Bump dependencies with "cargo upgrade" | Nick Mathewson | 2021-03-06 | 14 | -25/+25 | |
| | | | ||||||
| * | | Avoid unwrap() in llcrypto. | Nick Mathewson | 2021-03-04 | 1 | -1/+1 | |
| | | | ||||||
