summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * dirmgr: Add functions to store/read/update router descriptorsDavid Goulet2021-03-301-3/+131
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * dirmgr: Add SQLite schema for router descriptorsDavid Goulet2021-03-301-9/+21
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | Rename ServerDescriptorRequest to RouterDescRequestNick Mathewson2021-03-301-7/+7
| | | | | | | | | | Rationale: the name of the request should match the name of the type that you parse from it.
* | ServerDescriptorRequest: handle "all.z" case differentlyNick Mathewson2021-03-301-7/+25
| | | | | | | | | | | | Having "no descriptors" mean "all of them" is kind of an accident waiting to happen, and had wrong behavior for partial_docs_ok() and max_response_len().
* | fix clippy warnings in request.rsNick Mathewson2021-03-301-5/+2
| |
* | Move RdDigest to routerdesc.rsNick Mathewson2021-03-304-8/+5
| |
* | dir: Add server descriptor directory requestDavid Goulet2021-03-302-0/+63
|/ | | | Signed-off-by: David Goulet <[email protected]>
* rs: Add getters to router status objectsDavid Goulet2021-03-301-0/+12
| | | | Signed-off-by: David Goulet <[email protected]>
* Client: Add a function to expose the current dirmgr.Nick Mathewson2021-03-302-0/+10
| | | | | | | | This function sits behind an `experimental-api` feature so that we don't need to worry about exposing the entire surface of DirMgr to our API consumers. This and the other recent patches are based on work from dgoulet.
* Experimental accessor functions for Relay members.Nick Mathewson2021-03-302-0/+30
|
* Make RouterFlags public.Nick Mathewson2021-03-301-4/+11
|
* Tell .gitignore to ignore more "target" directories.Nick Mathewson2021-03-301-1/+3
|
* Add an accessor for the members of a relay family.Nick Mathewson2021-03-301-0/+6
|
* Make reasonable set of default fallback directoriesNick Mathewson2021-03-305-9/+761
|
* Give the authorities value a reasonable default.Nick Mathewson2021-03-302-1/+36
|
* Add a NetDirConfig::use_default_cache_path() function.Nick Mathewson2021-03-302-1/+16
|
* resolve a clippy issueNick Mathewson2021-03-301-1/+3
|
* Declare a better default for DownloadScheduleConfig.Nick Mathewson2021-03-302-3/+35
|
* Add a missing member documentationNick Mathewson2021-03-301-0/+8
|
* Add a fuzzer for NsConsensus documentsNick Mathewson2021-03-302-0/+15
|
* Add a test case for NS consensus parsing.Nick Mathewson2021-03-303-1/+269
|
* NS consensus documents have signatures on SHA1 hashes, not SHA256.Nick Mathewson2021-03-301-8/+29
|
* Implement parsing for ns-flavored consensus documents.Nick Mathewson2021-03-303-202/+317
|
* Make RouterStatus a trait and Consensus into a generic type.Nick Mathewson2021-03-304-56/+133
| | | | This breaks surprisingly little.
* Start moving MdConsensus-specific code to a submodule.Nick Mathewson2021-03-302-172/+189
| | | | This is part of refactoring to handle NsConsensuses.
* Resolve rustdoc warnings.Nick Mathewson2021-03-294-7/+10
|
* Resolve two clippy warnings in blind_pubkey.Nick Mathewson2021-03-291-2/+2
|
* Merge remote-tracking branch 'origin/mr/23'Nick Mathewson2021-03-292-0/+108
|\
| * v3: Add two new test vectors that test key blinding clamping.George Kadianakis2021-03-301-0/+6
| |
| * v3: Improve error handling on key blinding.George Kadianakis2021-03-302-6/+23
| |
| * Implement basic ed25519 key blinding for v3 onion services.George Kadianakis2021-03-292-0/+85
| |
* | Fix a bunch more new clippy lints in Rust 1.51Nick Mathewson2021-03-2910-29/+29
| | | | | | | | | | | | | | | | The major types are: * You implemented Into when you should have implemented From. * You sliced a slice when you didn't have to. * You said Ok(x?) when you could have said x. * You said Vec::new(); push(); push(); when you could have said vec![].
* | Fix Rust-1.51 clippy warnings about acronyms in camel case.Nick Mathewson2021-03-2938-360/+366
| | | | | | | | This is painful, but we shouldn't have to do it again.
* | Rename Rsa{Identity,Signature} to fix clippy warning.Nick Mathewson2021-03-2924-162/+162
| |
* | tor-config: fix a new clipppy warning.Nick Mathewson2021-03-291-1/+1
| |
* | DirMgr: cooperative multiprocess support.Nick Mathewson2021-03-294-60/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A directory manager can now launch or run in read-only or read-write mode, depending on whether it manages to acquire a lock on the filesystem. In read-write mode, it bootstraps and stores data into the database as usual. In read-only mode, it assumes that another process will be updating the database, and so it only loads it periodically, looking for new information. However, it also tries to acquire the lock itself, so it can enter read-write mode.
* | Create a DirMgr::load_or_bootstrap_from_config.Nick Mathewson2021-03-291-0/+16
| |
* | Add support for a lockfile to control concurrent access to a dirmgr.Nick Mathewson2021-03-293-11/+93
| |
* | Add an intern.rs module that I forgot.Nick Mathewson2021-03-291-0/+54
| |
* | Add DirMgr::load_once.Nick Mathewson2021-03-292-0/+29
| | | | | | | | | | This function loads a current bootstrapped directory from disk, if it can.
* | Use the CircMgr in the DirMgr for all our downloading needs.Nick Mathewson2021-03-292-25/+24
| |
* | Make CircMgr an optional element of DirMgr. Not yet used.Nick Mathewson2021-03-292-3/+18
| |
* | Use interned PortPolicy objects in RouterDescs too.Nick Mathewson2021-03-291-2/+3
| |
* | Netdoc: Add support for interned PortPolicy objects in MicroDescsNick Mathewson2021-03-295-4/+18
| | | | | | | | In C tor, this saved a whole lot of RAM.
* | Allow HS* protover names, since these are from our standard.Nick Mathewson2021-03-291-0/+2
| |
* | Use Arc::clone() explicitly with port policiesNick Mathewson2021-03-291-2/+2
| |
* | Don't copy exit policies around; instead use Arc.George Kadianakis2021-03-294-13/+11
|/
* Check for channel match in create_firsthop_ntor().Nick Mathewson2021-03-242-6/+21
| | | | | | This way we won't even try sending the CREATE2 cell unless the Ed25519 identity we know for the channel matches the provided CircTarget.
* Refactor errors in tor-decompress and tor-dirclient.Nick Mathewson2021-03-247-104/+169
| | | | | This lets us reinstate the code in dirclient that retired circuits depending on the error type.
* dirclient: add a function to download over a stream.Nick Mathewson2021-03-242-70/+88
| | | | | Also, remove references to DataStream, and comment on the future of the module.