summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | tor-netdoc: ns Preamble: derive NetdocEncodableFieldsIan Jackson2026-04-212-0/+2
| | | |
* | | | tor-netdoc: ns Preamble: Use ConstructorIan Jackson2026-04-214-1/+17
| | | |
* | | | tor-netdoc: ns Preamble: use new deftly cfg approachIan Jackson2026-04-211-10/+8
| | | |
* | | | tor-netdoc: DocRelayFlags: rename VoteRepr to NoImplicitReprIan Jackson2026-04-213-5/+6
| | | |
* | | | tor-netdoc: DocRelayFlags: Provide encoderIan Jackson2026-04-211-3/+37
| | | |
* | | | tor-netdoc: DocRelayFlags: rename helper structIan Jackson2026-04-212-8/+8
| | | | | | | | | | | | | | | | This is going to be used for encoding too.
* | | | tor-netdoc: impl NetdocEncodableFields for ProtoStatusesIan Jackson2026-04-212-1/+16
| | | | | | | | | | | | | | | | We don't need the helper struct for this.
* | | | tor-netdoc: Split out proto_statuses_parse2_encode moduleIan Jackson2026-04-211-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to want this macrology to generate a encoder implmeentation too. It's most convenient to make this its own module, separating it from parse2_impls. Enable the module if encoding is enabled, decorating its parsing-related contents with the appropriate cfg. Use pub(super) to export the encoding-related imports, so that we don't end up with endlessly duplicated import lists. Now there is place where we can put the encoder.
* | | | tor-netdoc: impl ItemValueEncodable for tor_protover::ProtocolsIan Jackson2026-04-212-0/+14
| | | |
* | | | tor-netdoc: impl ItemValueEncodable for NetParams<i32>Ian Jackson2026-04-212-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | Start a new encode_impls module. The pub(super) will be used in a moment.
* | | | tor-netdoc: ns Lifetime: derive NetdocEncodableFieldsIan Jackson2026-04-212-0/+2
| | | |
* | | | tor-netdoc: ns Lifetime: Use ConstructorIan Jackson2026-04-212-5/+20
| | | |
* | | | tor-netdoc: ns Lifetime: use new deftly cfg approachIan Jackson2026-04-211-3/+5
| | | | | | | | | | | | | | | | This is what we did for authcert.rs and it worked well there.
* | | | tor-netdoc: ConsensusMethods: derive ItemValueEncodableIan Jackson2026-04-212-2/+4
| | | |
* | | | tor-netdoc: Fix type of NotPresent items in ns PreambleIan Jackson2026-04-214-6/+9
| | | |
* | | | tor-netdoc: Implement encoding traits for Arc<T>Ian Jackson2026-04-213-0/+35
| | | |
* | | | Merge branch 'parse2-more-debug' into 'main'Clara Engler2026-04-215-16/+154
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Add debugging support to ItemValueParseable derive See merge request tpo/core/arti!3881
| * | | | tor-netdoc: Add debugging to ItemValueParseable, demo in testIan Jackson2026-04-132-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With cargo test --all-features -p tor-netdoc -- --no-capture test2 the output now contains, amongst many other things: netdoc TestItem parse: item start, "test-item", "N", Some("TEST OBJECT") netdoc TestItem parse: field needed, normal, args=1, "N" netdoc TestItem parse: field optional, normal, args=Option<_>, "" netdoc TestItem parse: field rest, normal, args=Vec<_>, "" netdoc TestItem parse: field object, object, object=1, Some(("TEST OBJECT", Ok(5))) netdoc TestItem parse: item complete Ok
| * | | | tor-netdoc: Add debugging to ItemValueParseableIan Jackson2026-04-131-1/+16
| | | | |
| * | | | tor-netdoc: parse2 derives: use NetdocParseAnyCommon in ItemValueParseableIan Jackson2026-04-131-2/+1
| | | | | | | | | | | | | | | | | | | | So far this just abolishes a duplicate P.
| * | | | tor-netdoc: parse2 derives: Break out NetdocParseAnyCommonIan Jackson2026-04-131-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to want tio reuse dtrace from here in the ItemValueParseable derive (which doesn't use NetdocSomeItemsParseableCommon because it derives for one item type, not a document containing multiple items).
| * | | | tor-netdoc: parse2: with debug for items parsing, show multiplicityIan Jackson2026-04-131-0/+1
| | | | |
| * | | | tor-netdoc: parse2 multiplicity: Add debugging methods to traitsIan Jackson2026-04-132-0/+108
| | | | |
| * | | | tor-netdoc: derives debug: Add a missing trait importIan Jackson2026-04-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this adding `#[deftly(netdoc(debug))]` can fail to build, because the encoding module doesn't have `io::Write` in its `pub use`. (Unlike parse2, it doesn't have a separate macro prelude.)
* | | | | tor-netdoc: Support `#[deftly(netdoc(skip))]` in itemsIan Jackson2026-04-205-1/+18
| | | | | | | | | | | | | | | | | | | | Ie for "arguments" that don't actually appear.
* | | | | tor-netdoc: Test for IPv6-mapped IPv4 addressIan Jackson2026-04-201-0/+1
| | | | |
* | | | | tor-netdoc: Test for `::` host addressIan Jackson2026-04-201-0/+1
| | | | |
* | | | | tor-netdoc: Make Nickname have its own parsing error typeIan Jackson2026-04-206-17/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will let us use it in more places, more sensibly. Sadly it means a lot of syntactic vinegar at many of the call sites in the old parser, which has very janky ideas about how errors should work.
* | | | | tor-netdoc: semver.md for InternetHost and HostnameIan Jackson2026-04-201-0/+1
| | | | |
* | | | | tor-netdoc: Tests for InternetHost and HostnameIan Jackson2026-04-201-0/+65
| | | | |
* | | | | tor-netdoc: Introduce InternetHost newtypeIan Jackson2026-04-202-1/+52
| | | | | | | | | | | | | | | | | | | | Tests will come in a moment.
* | | | | tor-netdoc: Introduce Hostname newtypeIan Jackson2026-04-203-0/+82
| | | | | | | | | | | | | | | | | | | | Tests will come in a moment.
* | | | | Merge branch 'stream-close' into 'main'opara2026-04-201-6/+9
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-proto: Small comment and variable name changes See merge request tpo/core/arti!3865
| * | | | | tor-proto: small comment and variable name changesSteven Engler2026-04-071-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | I think this makes the code a little easier to follow.
* | | | | | Merge branch 'rm-var-suffix' into 'main'David Goulet2026-04-201-4/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Remove dummy suffixes from variable name See merge request tpo/core/arti!3903
| * | | | | | proto: Remove dummy suffixes from variable nameGabriela Moldovan2026-04-201-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I used these `_foo` suffixes to make sense of things during development: at the time, I had multiple "forward" and "backward" types, and I needed to distinguish them without spending too much time thinking of a provisory name. I meant to remove them before upstreaming my branch, but I forgot...
* | | | | | | proto: Remove unnecessary clippy allowGabriela Moldovan2026-04-201-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm removing this so that we don't accidentally suppress new instances of this warning.
* | | | | | | Merge branch 'p2-misc-exactly-1' into 'main'Clara Engler2026-04-202-3/+6
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | tor-netdoc: derives: Three small improvements See merge request tpo/core/arti!3887
| * | | | | | tor-netdoc: derives: Expect an intro itemIan Jackson2026-04-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can't trigger, but when messing about with some new features, I messed up and got a syntax error here. Let's try this feature out, here.
| * | | | | | tor-netdoc: derives: Reformat a long lineIan Jackson2026-04-141-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | No functional change.
| * | | | | | tor-netdoc: derives: Remove an otiose testIan Jackson2026-04-141-1/+1
| | |_|/ / / | |/| | | | | | | | | | | | | | | | T_SIGNATURES is false, just above.
* | | | | | arti-relay: add cgo for tor-protoSteven Engler2026-04-161-1/+1
| | | | | |
* | | | | | arti-relay: add 'flowctl-cc' for tor-circmgrSteven Engler2026-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we build client circuits through the circuit manager, we should build them with congestion control support.
* | | | | | Merge branch 'create-fast' into 'main'gabi-2502026-04-166-5/+31
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-proto: Give our RSA identity to the channel reactor See merge request tpo/core/arti!3897
| * | | | | | tor-proto: give our rsa ident to the channel reactorSteven Engler2026-04-166-5/+31
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | This will be needed for ntor handshakes.
* | | | | | Merge branch 'rpc-weak-ids-redux' into 'main'Nick Mathewson2026-04-1611-618/+264
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPC: implement weak IDs Closes #868 See merge request tpo/core/arti!3883
| * | | | | | rpc: Propagate and use LookupErrors.Nick Mathewson2026-04-133-12/+43
| | | | | | |
| * | | | | | rpc: Adjust invoke_rpc_method API and related lookups.Nick Mathewson2026-04-136-47/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The important thing here is that we need to look up the object _after_ we invoke any non-dispatched methods, since the object might be an expired weak reference. This required some related changes to tests and error types. Additionally, it required us to change the return value of Context::remove, since we can remove objects that are not completely present.
| * | | | | | rpc: new method for upgrading/downgrading/cloning object IDsNick Mathewson2026-04-131-1/+57
| | | | | | |
| * | | | | | rpc: Remove caveats wrt rpc::release.Nick Mathewson2026-04-131-10/+0
| | | | | | |