summaryrefslogtreecommitdiff
path: root/crates/tor-dirserver
Commit message (Collapse)AuthorAgeFilesLines
...
* tor-dirserver: Use `expect` instead of `unwrap`Clara Engler2025-09-041-11/+6
|
* tor-dirserver: TODO about endpoint error handlingClara Engler2025-09-041-0/+3
|
* tor-dirserver: Rename `cb` to `endpoint_fn`Clara Engler2025-09-041-6/+6
| | | | | This commit renames `cb` to `endpoint_fn` everywhere, including internal implementations.
* tor-dirmirror: Add several "TODO DIRMIRROR" linesClara Engler2025-09-044-1/+17
|
* tor-dirserver: Enable `PRAGMA foreign_keys=ON`Clara Engler2025-09-041-1/+5
| | | | | This commit enables `PRAGMA foreign_keys=ON;` for every connection by adding an appropriate statement to `schema::prepare_db`.
* tor-dirserver: Use strum for `ContentEncoding`Clara Engler2025-09-042-33/+43
|
* tor-dirserver: Document hex case in schemaClara Engler2025-09-041-1/+1
|
* tor-dirserver: Remove `ON DELETE CASCADE` for nowClara Engler2025-09-041-6/+6
|
* tor-dirserver: `Unrecognized` to `Incompatible`Clara Engler2025-09-042-2/+2
|
* tor-dirserver: Fix clippy warnings in testsClara Engler2025-09-042-3/+31
|
* tor-dirserver: Make more err fields `pub(crate)`Clara Engler2025-09-041-2/+2
|
* tor-dirserver: Use transactions in endpointsClara Engler2025-09-042-264/+258
| | | | | | | | | | | | | | | | | | This commit refactors a large part of the HTTP module, namely it refactors the `Callback` type to a new type called `EndpointFn` which now works in a transaction based approach and no longer gives access to the `StoreCache`. The type itself is also no longer a trait but a concrete type using `fn`. Another very notable change that became necessary during this commit was to make large parts of the codebase synchronous instead of async, namely because it is non-trivial to `Send` a `Transaction` created inside an async context to a synchronous function. Besides, this change has been deemed necessary for other reasons to. The refactoring to more synchronous code has lead to some interesting changes in `StoreCache` too, namely that in no longer uses async mutex, but a synchronous mutex instead.
* tor-dirserver: Add clippy checks and fix themClara Engler2025-09-045-18/+76
|
* tor-dirserver: Add http moduleClara Engler2025-09-044-3/+1188
| | | | | | | This commit implements the initial draft for the HTTP module. It is fairly complicated but well documented within the source code, please refer to that instead.
* tor-dirserver: Add schema moduleClara Engler2025-09-044-0/+284
| | | | | | This commit adds the `schema.rs` module, which implements the database schema alongside some functions for initializing the database and obtaining the database schema version.
* tor-dirserver: Initial commitClara Engler2025-09-045-0/+90
This commit lays the initial groundwork for the `tor-dirserver` crate, a crate that shall implement functionality for dirmirros and dirauths. For now, the current crate consists of three bare bone modules: * lib.rs * err.rs * mirror.rs All of which contain mostly boilerplate code for now