summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | Make ConsensusRequest take a flavor.Nick Mathewson2021-04-012-10/+15
| |
* | Add accessors for members of different directory requestsNick Mathewson2021-04-013-38/+66
| | | | | | | | | | | | | | | | This will let us use these types both as client and server-side implementations. Making this change required me to change the download code to take requests by reference. (Sorry, David)
* | Rename ClientRequest to Requestable.Nick Mathewson2021-04-012-8/+8
|/
* DirMgr: add text() and texts() functions to ask for document textNick Mathewson2021-03-317-32/+320
| | | | | Also, start on a larger refactoring where we ask for documents by their ID.
* Note redundancy in authority and fallback toml files.Nick Mathewson2021-03-312-0/+8
|
* Refactor sqlite.rs to know about consensus flavors.Nick Mathewson2021-03-312-27/+56
| | | | | These were stored in the database before, but they were hardwired in the API.
* Make ConsensusFlavor a real type.Nick Mathewson2021-03-312-27/+58
| | | | Previously we were "stringly typing" this field. Now it's time to stop.
* Use Arc::make_mut() to simplify the code a bitNick Mathewson2021-03-302-26/+11
| | | | | Previously we used NetDir::extend here, which used try_unwrap. But it's much simpler to use the intended object for this purpose.
* Look for RdDigest in the right locationNick Mathewson2021-03-301-1/+2
|
* Merge branch 'sd-storage'Nick Mathewson2021-03-301-12/+124
|\
| * small tweaks to routerdesc storage code.Nick Mathewson2021-03-301-48/+20
| |
| * 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
| |