| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | tor-netdoc: Remove many needless calls to .iter() and .into_iter() | Ian Jackson | 2023-02-15 | 7 | -24/+20 | |
| | | | ||||||
| | * | tor-netdoc: Replace use of PauseAt::new_pred() | Ian Jackson | 2023-02-15 | 1 | -9/+9 | |
| | | | | | | | | | | | | | | | We can just make a new PauseAt, since it can take the inner peekable iterator by mutable reference. This seems to tidy the code up a bit too. | |||||
| * | | Expire routerdescs as soon as any of their expiries expire | Ian Jackson | 2023-02-15 | 1 | -1/+1 | |
| |/ | | | | Fixes #772 | |||||
| * | netdoc: Add a feature to expose hsdesc inner doc parsers | Nick Mathewson | 2023-02-14 | 4 | -0/+10 | |
| | | | | | | | | We want to fuzz these parsers, but there's no currently way to get at the parsers for inner documents without going through a lot of encryption. (Coverage-guided fuzzers are powerful, but they can't find SHA3 preimages.) | |||||
| * | Merge branch 'doc-iter' into 'main' | Nick Mathewson | 2023-02-13 | 2 | -86/+25 | |
| |\ | | | | | | | | | Introduce new batching iterator and use it in two places See merge request tpo/core/arti!1016 | |||||
| | * | batching_split_before: Rename "prefix" to "header" | Ian Jackson | 2023-02-13 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1016#note_2877759 "_prefixed" becomes "_with_header". That mirrors the returned struct which is nice. | |||||
| | * | tor-netdoc: Use batching iterator in authcert.rs | Ian Jackson | 2023-02-10 | 1 | -61/+15 | |
| | | | | | | | | | | | This gets rid of a lot of manual boolean state variable iterator stuff. | |||||
| | * | tor-netdoc: Use batching_split_before in HsDescInner | Ian Jackson | 2023-02-10 | 1 | -25/+10 | |
| | | | ||||||
| * | | netdoc: give hsdesc test info in its original form. | Nick Mathewson | 2023-02-13 | 1 | -1/+5 | |
| | | | ||||||
| * | | netdoc: Add a test for HSDesc decryption. | Nick Mathewson | 2023-02-10 | 1 | -0/+63 | |
| |/ | ||||||
| * | Merge branch 'hsdir' into 'main' | Ian Jackson | 2023-02-09 | 2 | -0/+7 | |
| |\ | | | | | | | | | Compute the HS directory hash ring See merge request tpo/core/arti!1012 | |||||
| | * | hsdir: Be able to enumerate the hidden service directories | Ian Jackson | 2023-02-09 | 1 | -0/+4 | |
| | | | | | | | | | | | | | * Provide an accessor for the HSDIR flag * Provide a function for testing a relay for hsdir inclusion * Provide an iterator on NetDir that returns the hsdirs | |||||
| | * | tor-netdoc: Discuss that relays are ordered by rsa id in Consensus | Ian Jackson | 2023-02-09 | 1 | -0/+3 | |
| | | | ||||||
| * | | Rename DescEncNonce => HsDescEncNonce | Nick Mathewson | 2023-02-09 | 2 | -4/+4 | |
| |/ | ||||||
| * | hsdesc: Use an IntegerMinutes<u16> to hold lifetime. | Nick Mathewson | 2023-02-08 | 2 | -9/+18 | |
| | | ||||||
| * | netdoc: Fix most "TODO HS rename" comments | Nick Mathewson | 2023-02-08 | 4 | -16/+14 | |
| | | ||||||
| * | netdoc::hsdesc: Distinguish layer from document. | Nick Mathewson | 2023-02-08 | 5 | -68/+62 | |
| | | ||||||
| * | netdoc::hsdesc: Rename "layer" modules. | Nick Mathewson | 2023-02-08 | 4 | -15/+14 | |
| | | ||||||
| * | netdoc::hsdesc: Excise reference to "password" authentication | Nick Mathewson | 2023-02-08 | 2 | -3/+1 | |
| | | | | | As far as we can tell, this never existed. | |||||
| * | hscrypto,netdoc: Add and use a type for KP_hss_desc_enc. | Nick Mathewson | 2023-02-08 | 1 | -5/+5 | |
| | | ||||||
| * | tor-hscrypto: Rename key types to correspond to new spec names. | Nick Mathewson | 2023-02-08 | 5 | -18/+19 | |
| | | ||||||
| * | Rename DescriptorCookie to DescEncNonce | Nick Mathewson | 2023-02-08 | 3 | -16/+15 | |
| | | | | | | | (I think it's okay to omit the Hs here, since this type is not visible outside the hsdesc parsing code. I'll rename if others disagree.) | |||||
| * | Renaming cleanup for and around now-renamed "KP_hs_desc_ephem". | Nick Mathewson | 2023-02-08 | 1 | -8/+5 | |
| | | ||||||
| * | Rename key identifiers that have changed in the spec | Nick Mathewson | 2023-02-08 | 3 | -12/+12 | |
| | | | | | | | | | | Generated with perl: s/K([PS])_hs_intro_tid/K$1_hs_ipt_sid/g; s/K([PS])_onion_ntor/K$1_ntor/g; s/K([PS])_hs_intro_ntor/K$1_hss_ntor/g; s/K([PS])_hs_desc_ephem/K$1_hss_desc_enc/g; | |||||
| * | Fix typo | Dimitris Apostolou | 2023-02-08 | 1 | -1/+1 | |
| | | ||||||
| * | Update hsdesc parser code to new sectionrules::builder code. | Nick Mathewson | 2023-02-07 | 3 | -8/+8 | |
| | | ||||||
| * | Merge branch 'authcert_bug' into 'main' | eta | 2023-02-07 | 4 | -26/+37 | |
| |\ | | | | | | | | | | | | | Fix AuthCert behavior on unrecognized tokens, and prevent bug from recurring elsewhere. Closes #752 See merge request tpo/core/arti!1006 | |||||
| | * | netdoc: Require that unrecognized tokens be handled explicitly. | Nick Mathewson | 2023-02-03 | 2 | -0/+10 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now we require that, for all `SectionRules`, either the caller say how to handle unrecognized tokens (using `.add(UNRECOGNIZED...)`), or that they explicitly reject unrecognized tokens (using `reject_unrecognized`()`.) This solution uses an assert!() rather than an Error to indicate failure. I say that's fine, since 1. This is a crate-internal API. 2. We never dynamically construct SectionRules according to different behavior: they are always prefabricated in a fixed code block. Thus, if we test a parser at all, we will make sure that its SectionRules are well-formed. I considered and explicitly rejected a solution where the builder had to be finalized with separate methods `build_strict()` or `build_tolerant()`: It's too easy IMO for the caller to forget what these call means. Prevents further recurrences of #752. Closes #752. | |||||
| | * | netdoc: Switch SectionRules building to use a Buidler pattern. | Nick Mathewson | 2023-02-03 | 4 | -26/+26 | |
| | | | | | | | | | No new behavior yet. | |||||
| | * | Add a rule to handle UNRECOGNIZED in AuthCert. | Nick Mathewson | 2023-02-03 | 1 | -0/+1 | |
| | | | | | | | | | | | | | This fixes an instance of bug#752. Previously, we would reject any AuthCert that contained an unexpected keyword. (Fortunately, this data format does not change very often.) | |||||
| * | | netdoc: Add a comment about renaming layer to document. | Nick Mathewson | 2023-02-07 | 1 | -0/+9 | |
| | | | ||||||
| * | | netdoc::hsdesc: rename Passwd to Password. | Nick Mathewson | 2023-02-07 | 2 | -2/+2 | |
| | | | ||||||
| * | | netdoc: Rename/comment objects from hsdesc. | Nick Mathewson | 2023-02-07 | 1 | -9/+15 | |
| | | | ||||||
| * | | netdoc: Rename/comment objects from inner_layer. | Nick Mathewson | 2023-02-07 | 2 | -23/+47 | |
| | | | ||||||
| * | | netdoc: Rename/comment objects from middle_layer. | Nick Mathewson | 2023-02-07 | 4 | -19/+28 | |
| | | | ||||||
| * | | netdoc: Rename/comment objects from desc_enc | Nick Mathewson | 2023-02-07 | 3 | -21/+36 | |
| | | | ||||||
| * | | netdoc: Renaming and comments in outer_layer. | Nick Mathewson | 2023-02-07 | 1 | -8/+13 | |
| | | | ||||||
| * | | netdoc: Use Itertools::exactly_once in hsdesc parsing | Nick Mathewson | 2023-02-07 | 1 | -4/+7 | |
| | | | ||||||
| * | | netdoc: Remove useless should_be_exhausted calls. | Nick Mathewson | 2023-02-07 | 3 | -3/+0 | |
| | | | ||||||
| * | | Remove a needless line. | Nick Mathewson | 2023-02-07 | 1 | -1/+0 | |
| | | | ||||||
| * | | Even more clarifying comments. | Nick Mathewson | 2023-02-07 | 3 | -8/+14 | |
| | | | ||||||
| * | | netdoc: Try to add a bunch of clarifying documentation. | Nick Mathewson | 2023-02-07 | 5 | -28/+87 | |
| | | | | | | | | | | | In the process I found a couple of keys without identifiers in the spec. | |||||
| * | | netdoc: Use Signature::from to construct ed25519 sigs. | Nick Mathewson | 2023-02-07 | 2 | -5/+10 | |
| | | | ||||||
| * | | netdoc: Clear up a few typos in hsdesc comments and strings. | Nick Mathewson | 2023-02-07 | 2 | -6/+6 | |
| | | | ||||||
| * | | netdoc: Implement onion service descriptor parsers. | Nick Mathewson | 2023-02-07 | 2 | -45/+183 | |
| | | | ||||||
| * | | netdoc: Parse the inner layer of an onion service descriptor. | Nick Mathewson | 2023-02-07 | 2 | -0/+352 | |
| | | | | | | | | | | | | | | | | | | | There are some places where I note certificates which are not currently validated, because there is no cryptographic point in doing so. We should either document that this is okay, or validate the certificates anyway. This code might benefit from refactoring to make it prettier. | |||||
| * | | netdoc: Add a workaround for C Tor's lack of mid-layer NL | Nick Mathewson | 2023-02-07 | 2 | -2/+6 | |
| | | | | | | | | | | | | | | | It turns out that C Tor doesn't add a newline at the end of the middle layer of an onion service descriptor. I've made a spec MR (torspec!109) to document this: here, it's time to work around the issue. | |||||
| * | | netdoc: Parse the middle layer of a hsdesc, and decrypt it. | Nick Mathewson | 2023-02-07 | 3 | -0/+259 | |
| | | | ||||||
| * | | netdoc: Use correct size for descriptor encryption cookie | Nick Mathewson | 2023-02-07 | 1 | -2/+2 | |
| | | | ||||||
| * | | netdoc: move test descriptor to a higher level test module | Nick Mathewson | 2023-02-07 | 2 | -6/+12 | |
| | | | | | | | | | | | We're going to make use of it in all of our tests, so we may as well expose it to them from hsdesc::test. | |||||
