summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Fix a few rustdoc link warnings.Nick Mathewson2021-08-122-3/+6
| |
* | Merge remote-tracking branch 'origin/mr/58'Nick Mathewson2021-08-1220-38/+42
|\ \
| * | Fix code snippet in tor-persist docsLennart Kloock2021-08-122-2/+2
| | |
| * | Fix code snippet in arti docsLennart Kloock2021-08-122-2/+2
| | |
| * | Fix warning sign emoji in tor-client docLennart Kloock2021-08-122-2/+2
| | |
| * | Reorder doc headlines in tor-circmgrLennart Kloock2021-08-122-2/+6
| | |
| * | Fix typos in tor-chanmgrLennart Kloock2021-08-122-4/+4
| | |
| * | Add brackets and remove colon for better consistencyLennart Kloock2021-08-124-12/+12
| | |
| * | Rerun readmes.shLennart Kloock2021-08-113-1/+3
| | |
| * | Sync docs with readmesLennart Kloock2021-08-112-3/+3
| | |
| * | Fix code snippet in tor-socksproto README.md and docsLennart Kloock2021-08-112-2/+2
| | |
| * | Fix typos in tor-protover README.md and docsLennart Kloock2021-08-112-4/+4
| | |
| * | Fix previously fixed typos in docs tooLennart Kloock2021-08-101-2/+2
| | |
| * | Fix a typo in tor-rtmock README.mdLennart Kloock2021-08-101-1/+0
| | | | | | | | | | | | Remove a '#'
| * | Fix a few typos in tor-rtcompat README.mdLennart Kloock2021-08-101-3/+3
| | |
| * | Fix typo in tor-rtcompat README.mdLennart Kloock2021-08-101-1/+1
| | | | | | | | | | | | Change 'if' to 'is'
* | | Fix documentation link issues.Nick Mathewson2021-08-123-4/+5
| | |
* | | Use real network parameter values to tune test circuits.Nick Mathewson2021-08-123-6/+30
| | | | | | | | | | | | Finishes #145.
* | | Periodically launch timeout-testing circuits.Nick Mathewson2021-08-122-35/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our path-spec says that, if we don't have enough build-time data to make a good estimate for our timeouts, we should periodically try launching testing circuits just to see how long they take to build. Here we implement that. The implementation is a bit wonky because of how our crates are factored; see arti#161 for more info. Closes #145. Closes #57.
* | | WIP: Launch testing circuits as needed to find timeoutsNick Mathewson2021-08-112-0/+64
| | | | | | | | | | | | This won't work yet, since it needs directories and doesn't have them.
* | | For timeout testing, support for "useless" circuits.Nick Mathewson2021-08-112-0/+32
| | | | | | | | | | | | | | | We need the idea of launching a circuit for timeout testing, and getting something that either exits someplace or exits noplace at all.
* | | tor-client: remove workaround now that #155 is in.Nick Mathewson2021-08-111-10/+0
| | |
* | | Add ability to launch a circuit to _some_ exit, without giving ports.Nick Mathewson2021-08-113-3/+67
| | | | | | | | | | | | | | | | | | We'll want this for testing circuits and for RESOLVE requests. Closes #155.
* | | Add functions to check whether port policies are nonempty.Nick Mathewson2021-08-112-1/+33
| | |
* | | fallbackdir: Regenerate listDavid Goulet2021-08-111-869/+879
| | | | | | | | | | | | | | | | | | Closes #160 Signed-off-by: David Goulet <[email protected]>
* | | Bump to latest arti-corpora.Nick Mathewson2021-08-111-0/+0
| | |
* | | Upgrade to latest fslock and use its per-fd exclusion feature.Nick Mathewson2021-08-116-23/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latest version of the fslock crate has an optional feature that allows file-locks to exclude one another even if they are opened within the same process. On Windows this behavior comes for free; on Unix it depends on an internal map of (dev,inode) pairs. Here we upgrade to the latest version of the fslock crate, and use this feature.
* | | Use the correct unused-circuit timeout when we're learning timeouts.Nick Mathewson2021-08-105-5/+32
|/ /
* | Make a basic daemon task to close circuits.Nick Mathewson2021-08-102-7/+41
| | | | | | | | | | | | The timing is not ideal here; we'll want to refactor it later. Closes #51
* | Use real network parameters to set unused-circ timeouts.Nick Mathewson2021-08-105-5/+110
| |
* | Initial code to expire unused circuits.Nick Mathewson2021-08-103-39/+121
| |
* | Make MAX_CIRC_DIRTINESS configurable.Nick Mathewson2021-08-104-14/+46
| |
* | Note functionality that maybe could move.Nick Mathewson2021-08-101-0/+5
| |
* | Have CircMgr::new() return an Arc<>.Nick Mathewson2021-08-102-9/+10
| |
* | Update state.rs info messageBen Armstead2021-08-091-1/+1
| |
* | Merge remote-tracking branch 'origin/mr/51'Nick Mathewson2021-08-091-7/+21
|\ \
| * | shrink result to actual number of bytes read once on returnFelipe Lema2021-08-051-6/+8
| | |
| * | fix clippy::redundant_slicingFelipe Lema2021-08-051-1/+1
| | |
| * | use loop + `read` + slice-of-resultFelipe Lema2021-08-051-20/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | Loop into several reads because we want to short-circuit if case we're reading too many bytes. Added handling of allocation of `result` so we can use the "next window buffer" for `read`. This way we can read on steps and short-circuit when needed.
| * | read from stream in a single go (not looping)Felipe Lema2021-08-031-27/+21
| | |
| * | don't use intermediate buffer, but read directly into `result`Felipe Lema2021-08-031-3/+1
| | |
* | | Refactor double_timeout() to make its timeouts futures in advanceNick Mathewson2021-08-091-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since these futures rely on the current time when they decide when to expire, we don't want them looking at the current time from inside the call to runtime.spawn or after that call. Instead we'd like them to look immediately on construction. This approach is based on a comment from janimo on #149. It doesn't fix #149, though.
* | | Light edits on CONTRIBUTING.mdNick Mathewson2021-08-091-9/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mainly, drop the suggestion to fetch submodules, and explain what more things do. (The only submodule we have now is the fuzzing corpora, which most people won't want.) (I am not 100% convinced that we should keep 100% of the instructions for working with git in the long term. Do many other projects have these? Is there a tutorial we should link to instead?)
* | | Merge remote-tracking branch 'origin/mr/54'Nick Mathewson2021-08-091-0/+63
|\ \ \
| * | | WIP: Add development environment setup tipsS0AndS02021-08-061-0/+63
| | | |
* | | | Flush persistent state periodically, and on (clean-ish) exit.Nick Mathewson2021-08-094-10/+98
| | | |
* | | | Don't try to lock an already-locked lockfile.Nick Mathewson2021-08-091-2/+5
| | | | | | | | | | | | | | | | Also, remove a dbg
* | | | Implement initial persistence for circuit timeout dataNick Mathewson2021-08-0610-30/+214
| | | | | | | | | | | | | | | | | | | | There's more to do here: we never actually store the data we get here, and we won't work at all when somebody else has the lock.
* | | | Initial persistent-state-manager code.Nick Mathewson2021-08-065-0/+311
| | | | | | | | | | | | | | | | | | | | | | | | This commit defines a crate (tor-persist) that describes an abstract key-value store using serde, plus an on-disk implementation using Toml and fslock.
* | | | Add unnecessary_wraps to the big warning list.Nick Mathewson2021-08-0626-1/+26
|/ / /