| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Add documentation for authcert parsing. | Nick Mathewson | 2020-06-11 | 2 | -2/+22 | |
| | | ||||||
| * | update to use latest rust-crypto traits and modules | Nick Mathewson | 2020-06-10 | 2 | -7/+7 | |
| | | ||||||
| * | Add a couple of commits missing from previous. | Nick Mathewson | 2020-06-09 | 2 | -0/+6 | |
| | | ||||||
| * | netdoc: initial implementation of authority certs. | Nick Mathewson | 2020-06-09 | 1 | -0/+197 | |
| | | ||||||
| * | netdoc: note a forward-compatibility issue with RSA signatures. | Nick Mathewson | 2020-06-09 | 2 | -0/+2 | |
| | | ||||||
| * | netdoc: when parsing from a string, detect extra tokens | Nick Mathewson | 2020-06-09 | 3 | -4/+15 | |
| | | ||||||
| * | Netdoc: allow parsing multiple routerdescs from a string. | Nick Mathewson | 2020-06-09 | 5 | -30/+182 | |
| | | ||||||
| * | netdoc: report microdesc errors at correct offsets. | Nick Mathewson | 2020-06-09 | 1 | -2/+5 | |
| | | ||||||
| * | netdoc: fix microdesc digest calculation at last. | Nick Mathewson | 2020-06-09 | 2 | -13/+21 | |
| | | ||||||
| * | Add a "first_item" entry for Section. | Nick Mathewson | 2020-06-09 | 1 | -2/+19 | |
| | | | | | This will make it simpler to implement digests for sections. | |||||
| * | Add a "last_item" entry for Section. | Nick Mathewson | 2020-06-09 | 1 | -1/+20 | |
| | | | | | This will make it simpler to implement digests for sections. | |||||
| * | netdoc: recover from microdesc parsing errors | Nick Mathewson | 2020-06-08 | 2 | -3/+56 | |
| | | | | | | | | | | On an error, advance to the start of the next microdesc. There's a possible issue with this approach where if we aren't careful, we might wind up in an infinite loop. I've made a comment about the fragility here, but it would probably be good to revisit this design. | |||||
| * | netdoc: add an iterator that can parse annotated microdescs | Nick Mathewson | 2020-06-07 | 1 | -1/+88 | |
| | | ||||||
| * | Implement parsing for microdescriptor annotations | Nick Mathewson | 2020-06-06 | 2 | -4/+53 | |
| | | | | | | This patch also updates the microdescriptor parsing so we can handle a whole bunch of them in a row. | |||||
| * | netdoc: fix behavior when using a fancy closure with PauseAt. | Nick Mathewson | 2020-06-06 | 1 | -14/+54 | |
| | | | | | | | | | | Previously, every call to peek() or next() would call self.pred(). But this would run us into trouble if we were using a closure that had mutable state, since it would stop us from checking for things like "the third occurrence of the foo token". Now we store the value of self.pred(self.peek()). | |||||
| * | netdoc: add annotation fields for microdescriptors | Nick Mathewson | 2020-06-06 | 1 | -1/+8 | |
| | | ||||||
| * | note that microdescriptor sha256 calculation is wrong | Nick Mathewson | 2020-06-03 | 1 | -0/+2 | |
| | | ||||||
| * | Restore a pause_at() method, but for NetDocReader. | Nick Mathewson | 2020-06-03 | 2 | -4/+24 | |
| | | ||||||
| * | Remove the Pausable trait as busted. | Nick Mathewson | 2020-06-03 | 2 | -41/+14 | |
| | | | | | | | We need to have the Peekable be long-lived, so we can't consume it. We _could_ create a second Peekable, which is apparently what we have been doing, but that breaks down when we try to do it again. | |||||
| * | netdoc: Refactor iteration over tokens. | Nick Mathewson | 2020-06-03 | 4 | -22/+52 | |
| | | | | | | I want the "peekable iterator" type to be passed around a lot, and it needs to have some way to get at the string that's used with it. | |||||
| * | Netdoc: tweak definition for keywords to accommodate annotations | Nick Mathewson | 2020-05-27 | 4 | -7/+23 | |
| | | | | | | | The macro can now define annotations that don't count as regular keywords. Additionally, the Keyword trait is now tweaked to take advantage of the fact that every Keyword is Copy. | |||||
| * | netdoc: exit an object if we encounter non-base64. | Nick Mathewson | 2020-05-20 | 1 | -0/+24 | |
| | | | | | | This way, an unterminated base64 object doesn't "eat" the whole rest of something we're trying to parse. | |||||
| * | netdoc: tokenizer should always consume bytes if they exist. | Nick Mathewson | 2020-05-20 | 1 | -7/+14 | |
| | | | | | | | | Also document that it always consumes a positive integer number of lines. This is part of an effort to improve error recovery. | |||||
| * | netdoc: Teach tokenizer about annotations. | Nick Mathewson | 2020-05-19 | 2 | -11/+27 | |
| | | | | | | | I'm not sure that annotations are a feature I want to keep long-term, but for now it would be useful if this code can also read Tor's file formats for network directories. | |||||
| * | netdoc: Add convenience methods for pausing iterators | Nick Mathewson | 2020-05-19 | 2 | -11/+39 | |
| | | ||||||
| * | netdoc: move keyword into Item type. | Nick Mathewson | 2020-05-19 | 5 | -51/+61 | |
| | | | | | This saves us from having to check specific strings in most cases. | |||||
| * | netdoc: Extract keyword into its own file. | Nick Mathewson | 2020-05-19 | 7 | -46/+50 | |
| | | ||||||
| * | start a test for microdesc parsing. | Nick Mathewson | 2020-05-18 | 1 | -0/+10 | |
| | | ||||||
| * | tor-netdoc: add a peek() method to util::Pausable. | Nick Mathewson | 2020-05-16 | 1 | -0/+19 | |
| | | ||||||
| * | Implement microdescriptor parsing. | Nick Mathewson | 2020-05-15 | 7 | -1/+200 | |
| | | | | | | Additionally, move and refactor related types to reduce friction for microdescriptor parsing implementation. | |||||
| * | tor-netdoc: Move RelayFamily into its own module. | Nick Mathewson | 2020-05-15 | 3 | -22/+30 | |
| | | ||||||
| * | tor_cert: use caret_int!() to make real types for cert elements | Nick Mathewson | 2020-05-15 | 2 | -4/+4 | |
| | | ||||||
| * | tor-netdoc: extract fingerprint logic from routerdesc.rs | Nick Mathewson | 2020-05-15 | 2 | -20/+57 | |
| | | ||||||
| * | netdoc: Improve parsing implementation for RelayFamily. | Nick Mathewson | 2020-05-15 | 1 | -5/+5 | |
| | | ||||||
| * | netdoc: Relax error types that can be used when parsing. | Nick Mathewson | 2020-05-15 | 2 | -7/+34 | |
| | | ||||||
| * | netdoc: teach MaybeItem about parse_args_as_str(). | Nick Mathewson | 2020-05-15 | 2 | -13/+13 | |
| | | | | | This simplifies a couple of places in routerdesc parsing. | |||||
| * | tor-netdoc: Extract family parsing into its own function. | Nick Mathewson | 2020-05-15 | 2 | -20/+25 | |
| | | ||||||
| * | Extract RelayPlatform parsing. | Nick Mathewson | 2020-05-15 | 1 | -13/+17 | |
| | | ||||||
| * | netdoc: get positions right in version parsing. | Nick Mathewson | 2020-05-15 | 1 | -6/+6 | |
| | | ||||||
| * | netdoc: use improved API for parsing ed25519 certificates. | Nick Mathewson | 2020-05-15 | 3 | -34/+80 | |
| | | ||||||
| * | netdoc: use new router object parsing API for RSA public keys. | Nick Mathewson | 2020-05-15 | 1 | -28/+12 | |
| | | ||||||
| * | Netdoc: better parsing for objects. | Nick Mathewson | 2020-05-15 | 2 | -0/+63 | |
| | | | | | | If I'm right this will let us simplify our code for parsing things from directory objects by a lot. | |||||
| * | Remove 'idx' field from BadArgument. | Nick Mathewson | 2020-05-15 | 4 | -13/+11 | |
| | | | | | | Having byte-level positions means we don't need to complain about particular arguments. | |||||
| * | netdoc: remove ArgError. | Nick Mathewson | 2020-05-15 | 2 | -44/+23 | |
| | | ||||||
| * | netdoc: Make args_as_vec() non-public. | Nick Mathewson | 2020-05-13 | 1 | -1/+1 | |
| | | | | | It returns a Ref, and that's kinda implementation-dependent. | |||||
| * | Improve reported positions of parsing errors. | Nick Mathewson | 2020-05-13 | 2 | -5/+39 | |
| | | ||||||
| * | netdoc: remove the Item::off field as redundant | Nick Mathewson | 2020-05-13 | 3 | -11/+73 | |
| | | | | | | Now that we are okay with using slice offset pointer math, we can remove the 'off' field from Item entirely. | |||||
| * | netdoc: rename Position to Pos. | Nick Mathewson | 2020-05-13 | 4 | -55/+55 | |
| | | | | | We use this type a lot, so let's give it a short name. | |||||
| * | netdoc: use a more flexible error-position type based on raw pointers | Nick Mathewson | 2020-05-13 | 1 | -1/+32 | |
| | | | | | | Astonishingly, this is safe, though I wish that it were impossible to use mismatched strings. | |||||
| * | netdoc: Add an "at()" method to replace an error's location. | Nick Mathewson | 2020-05-13 | 1 | -0/+9 | |
| | | ||||||
