| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | 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 | 5 | -41/+90 | |
| |\ | | | | | | | | | | | | | 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 | 3 | -5/+39 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 5 | -41/+55 | |
| | | | | | | | | | 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 | 2 | -4/+8 | |
| | | | ||||||
| * | | 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 | 3 | -0/+353 | |
| | | | | | | | | | | | | | | | | | | | 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. | |||||
| * | | netdoc: implement onion service descryptor encryption | Nick Mathewson | 2023-02-07 | 3 | -10/+227 | |
| | | | | | | | | | | | This is tested via a round-trip check, and via a successful decryption of our example descriptor's outer layer. | |||||
| * | | netdoc: Parser for outer layer of onion service descriptors. | Nick Mathewson | 2023-02-07 | 2 | -0/+255 | |
| | | | ||||||
| * | | netdoc: Add an example onion service descriptor to test our parsing. | Nick Mathewson | 2023-02-07 | 1 | -0/+223 | |
| | | | | | | | | | | | | | | | | | | | | | I generated this using C tor (latest main) and a Chutney network about a week ago. The subcredential is: 78210A0D2C72BB7A0CAF606BCD938B9A3696894FDDDBC3B87D424753A7E3DF37 The HS_blind_id is: 43CC0D62FC6252F578705CA645A46109E265290343B1137E90189744B20B3F2D | |||||
| * | | netdoc: Derive Debug and Clone on HsDesc and its kin. | Nick Mathewson | 2023-02-07 | 1 | -0/+3 | |
| |/ | ||||||
| * | tor-netdoc: Suppress a cfg-dependent dead code warning | Ian Jackson | 2023-02-01 | 1 | -0/+1 | |
| | | | | | | This is dead code when cargo +stable clippy -p tor-netdir --all-features --all-targets | |||||
| * | Bump the patch version of every crate that had API additions | Nick Mathewson | 2023-02-01 | 1 | -4/+4 | |
| | | | | | | | These crates had API or behavior changes that may affect downstream crates. Fortunately, they're all version 0.x, and don't need minor bumps for this. | |||||
| * | Bump the patch-level version of crates with _minor_ changes. | Nick Mathewson | 2023-02-01 | 1 | -1/+1 | |
| | | | | | | | | These changes influence behavior, but not effect compatibility. (If I messed up, and any crate except for `arti` has non-breaking API changes, that's still fine, since they are all version 0.x.) | |||||
| * | Use derive_more on SharedRandVal | Nick Mathewson | 2023-01-28 | 1 | -13/+4 | |
| | | | | | | This may be temporary if we wind up converting to CtByteArray, but for now it's good to be terse. | |||||
| * | Several suggestions on gitlab. | Ian Jackson | 2023-01-28 | 2 | -3/+8 | |
| | | ||||||
| * | netdoc: Add Eq and a note to SharedRandVal. | Nick Mathewson | 2023-01-28 | 1 | -1/+3 | |
| | | ||||||
| * | netdoc: Add SRV accessors. | Nick Mathewson | 2023-01-28 | 1 | -2/+34 | |
| | | | | | | | | These are deliberately unsophisticated accessors, in that they return Option<> rather than filling in missing values with the documented fallbacks. It seems better to leave a way to distinguish the absent case in the API. | |||||
| * | netdoc: Add a timestamp to SRVs per prop#342. | Nick Mathewson | 2023-01-28 | 2 | -7/+54 | |
| | | | | | | This breaks some experimental APIs, but since they are experimental no semver note is needed. | |||||
| * | netdoc: Add Iso8601 time _with_ a "T" as an argument type. | Nick Mathewson | 2023-01-28 | 1 | -3/+30 | |
| | | ||||||
| * | Fix typos | Dimitris Apostolou | 2023-01-28 | 1 | -2/+2 | |
| | | ||||||
| * | Allow clippy::unchecked_duration_subtraction in tests | Nick Mathewson | 2023-01-27 | 18 | -0/+18 | |
| | | | | | | This panics on error, and we're fine with a panic on misbehavior in tests. | |||||
| * | Elide a bunch of lifetimes. | Nick Mathewson | 2023-01-27 | 2 | -6/+6 | |
| | | | | | | Clippy now warns about these; I'm not sure how these warnings snuck up on us. | |||||
| * | Disable clippy::unlinlined-format-args | Nick Mathewson | 2023-01-27 | 1 | -0/+1 | |
| | | | | | | | | | This warning kind of snuck up on us! (See #748) For now, let's disable it. (I've cleaned it up in a couple of examples, since those are meant to be more idiomatic and user-facing.) Closes #748. | |||||
| * | Add missing docsrs attribute | Ian Jackson | 2023-01-24 | 1 | -0/+1 | |
| | | ||||||
| * | netdoc builder: Add two TODOs, prompted by testing experience | Ian Jackson | 2023-01-24 | 1 | -0/+6 | |
| | | ||||||
| * | netdoc builder test: Make a bigger dummy document and test reparsing | Ian Jackson | 2023-01-24 | 1 | -2/+26 | |
| | | ||||||
| * | netdoc builder: Implement object() and add one test case | Ian Jackson | 2023-01-24 | 2 | -2/+50 | |
| | | ||||||
| * | netdoc-builder: Initial test case (no object yet) | Ian Jackson | 2023-01-24 | 1 | -0/+47 | |
| | | ||||||
| * | netdoc-builder: Provide new() method | Ian Jackson | 2023-01-24 | 1 | -0/+7 | |
| | | ||||||
| * | netdoc-builder: Implement ItemArgument for more needed types | Ian Jackson | 2023-01-24 | 2 | -6/+45 | |
| | | ||||||
