summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * cfg tests: bridges: Prepare for more comprehensive testingIan Jackson2022-10-121-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | * Introduce filter_examples and resolve_examples helpers, which will become more complex in a moment. * Move the API test into a { } block to minimise subsequent diff. It's going to become conditional. * In subsequent comparisons, use the parsed version, since the API built one might not exist. No overall functional change.
| * cfg tests: Make ExampleSectionLines::resolve fallibleIan Jackson2022-10-121-5/+5
| |
| * Fix comment typo.Nick Mathewson2022-10-121-1/+1
| |
| * Fix error messageNick Mathewson2022-10-121-1/+1
| |
| * bridge config: Clarify that examples are nonfunctionalIan Jackson2022-10-121-0/+2
| |
| * bridges: Test configurationIan Jackson2022-10-121-0/+121
| |
| * pt and bridges: Parse configurationIan Jackson2022-10-122-3/+84
| |
| * config exhaust checking: Feature-limit some of the testsIan Jackson2022-10-121-11/+17
| |
| * tor-config: Provide MultilineListBuilderIan Jackson2022-10-122-0/+208
| | | | | | | | This is what we'll use to parse the `bridges.bridges` config key.
| * tor-guardmgr: Export BridgeParseError from toplevelIan Jackson2022-10-121-1/+1
| | | | | | | | | | Callers could `use` it as `tor_guardmgr::config::BridgeParseError` but it seems unecessary to force them to.
| * tor-config: Remove unneeded braces in an exampleIan Jackson2022-10-121-1/+1
| |
| * tor-config: Provide BoolOrAutoIan Jackson2022-10-121-0/+107
| | | | | | | | | | We're going to use this for the config item `bridges.enabled`, but it seems general enough that it ought to go here.
| * tor_config: define_list_builder_helper: Support custom serdeIan Jackson2022-10-121-2/+42
| | | | | | | | | | | | | | | | We're going to want something that has the standard list builder methods at the Rust API, but which has different serialisation. Sadly the implementation is annoying, because macro_rules makes it hard to parse a nice input syntax.
| * Add pt-client and bridge-client features to arti and arti-clientIan Jackson2022-10-126-1/+15
| |
| * bridges config example: Add much more example syntaxIan Jackson2022-10-121-4/+14
| |
| * bridges config example: Add bridges section to example configIan Jackson2022-10-122-0/+24
| | | | | | | | | | | | | | This is precisely the text from the original version of !744. There is no implementation yet, so we must add a entry to the exception list in the tests.
| * config exhaust checking: Allow for whole sectionsIan Jackson2022-10-121-2/+17
| | | | | | | | | | | | | | | | Section headings appear uncommented in the file, so if we have a whole section which is completely unrecognized (ie, an entry with no `.`, it will be spotted when we parse the not-uncommented file too. Right now there aren't any but there will be in a moment.
| * config exhaust checking: Allow for options only unrecognized in newIan Jackson2022-10-121-4/+10
| |
| * config exhaust checking: Move unrecognized lists earlierIan Jackson2022-10-121-3/+3
| | | | | | | | It turns out that we will need these even for uncommented parsing.
| * arti config exhaust checking: Improve message, add commentIan Jackson2022-10-121-2/+4
| | | | | | | | I had a failure that was confusing to me, and I wrote it...
| * Allow "clippy::single_char_pattern" in tests.Ian Jackson2022-10-1222-0/+22
|/ | | | | | | This lint exists for perf reasons, and this is rarely relevant in tests. Using double quoted str is generally cognitively less burdensome.
* Merge branch 'typo' into 'main'eta2022-10-111-2/+2
|\ | | | | | | | | tor-config: CfgPath: Fix two typos "expaneded" See merge request tpo/core/arti!764
| * tor-config: CfgPath: Fix two typos "expaneded"Ian Jackson2022-10-111-2/+2
| |
* | Merge branch 'disable_rtt_test' into 'main'eta2022-10-111-0/+5
|\ \ | | | | | | | | | | | | Disable rtt_test_vectors test on non-Linux platforms See merge request tpo/core/arti!766
| * | Disable rtt_test_vectors test on non-Linux platformsNick Mathewson2022-10-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test depends on `Duration` having a granularity of 1 nanosecond, which is not the case on OSX, and is probably not the case on other places too. We can re-enable this once we have a set of test vectors that use more realistic RTTs, and a set of testing code that tolerates some divergence. Temporary solution for #574.
* | | Merge branch 'fix_warning_again' into 'main'Nick Mathewson2022-10-111-0/+1
|\ \ \ | |/ / |/| | | | | | | | Fix a warning that I reintroduced. See merge request tpo/core/arti!765
| * | Fix a warning that I reintroduced.Nick Mathewson2022-10-111-0/+1
|/ / | | | | | | | | It looks like this got fixed, but my branch for !759 reintroduced it by refactoring.
* | Merge branch 'one_method' into 'main'Nick Mathewson2022-10-119-60/+63
|\ \ | | | | | | | | | | | | | | | | | | Change multiplicity of ChannelMethod and addresses Closes #600 See merge request tpo/core/arti!759
| * | Change multiplicity of ChannelMethod and addressesNick Mathewson2022-10-119-60/+63
|/ / | | | | | | | | | | | | Now each `ChanTarget` has at most one `ChannelMethod`, and only `Direct` `ChannelMethods` can have multiple addresses. Closes #600.
* | Merge branch 'warnings' into 'main'Ian Jackson2022-10-114-2/+11
|\ \ | |/ |/| | | | | Fix some warnings See merge request tpo/core/arti!761
| * Make some things precisely conditionalIan Jackson2022-10-111-1/+6
| | | | | | | | | | | | | | I think this is quite an inconvenient way to be carrying on. Maybe we should disable all dead code warnings unless all features are also enabled, and just let the compiler get rid of unused stuff later.
| * tor-guardmgr: Fix build without pt-client featureIan Jackson2022-10-111-1/+3
| |
| * Allow two useless pattern matches that are going to be not uselessIan Jackson2022-10-112-0/+2
|/
* Merge branch 'progdir' into 'main'Ian Jackson2022-10-111-2/+42
|\ | | | | | | | | | | | | CfgPath: Add support for ${PROGRAM_DIR}. Closes #586 See merge request tpo/core/arti!760
| * CfgPath: Add support for ${PROGRAM_DIR}.Nick Mathewson2022-10-071-2/+42
| | | | | | | | | | | | | | | | | | | | | | `${PROGRAM_DIR}` expands to the equivalent of `std::env::current_exe().parent()`, with appropriate unwrapping and conversions. It is expected to be useful for finding the locations of pluggable transports in some kinds of bundles. Closes #586.
* | Merge branch 'cargo-sort-2022-10-10' into 'main'eta2022-10-102-2/+2
|\ \ | | | | | | | | | | | | Make cargo-sort stop complaining See merge request tpo/core/arti!763
| * | Make cargo-sort stop complainingeta2022-10-102-2/+2
|/ /
* | Merge branch 'main' into 'main'eta2022-10-101-1/+1
|\ \ | |/ |/| | | | | Fixed grammar mistake See merge request tpo/core/arti!762
| * Fixed grammar mistakeEliTheCoder2022-10-081-1/+1
|/
* Update fuzzer corporaNick Mathewson2022-10-071-0/+0
|
* tor-cell fuzzer: test more features.Nick Mathewson2022-10-061-0/+1
|
* Merge branch 'addrs-api' into 'main'Nick Mathewson2022-10-0621-127/+360
|\ | | | | | | | | tor-linkspec: Refactor HasAddrs, HasChanMethods, and Owned* objects See merge request tpo/core/arti!758
| * Clarify limits on socket address from ChannelMethodNick Mathewson2022-10-062-4/+10
| |
| * Move two users of HasAddrs to HasChannelMethodsNick Mathewson2022-10-062-4/+15
| | | | | | | | All the other users of HasAddrs are correct.
| * tor-linkspec: Remove the old OwnedFoo::new() functionsNick Mathewson2022-10-0610-79/+124
| | | | | | | | These are now builders.
| * tor-proto: Preserve the ChannelMethod, not the SocketAddrNick Mathewson2022-10-064-33/+64
| |
| * ChannelMethod: Add method to access the (optional) SocketAddrNick Mathewson2022-10-061-0/+18
| |
| * Add builders for OwnedChanTarget/OwnedCircTargetNick Mathewson2022-10-064-13/+65
| | | | | | | | | | This will become the preferred way to make one of these objects, and insulate us against future API changes.
| * Begin revising HasAddr and its relationship to ChanTargetNick Mathewson2022-10-069-17/+87
|/ | | | | | | | | | | | | | | | | | | HasAddr used to mean "Here are addresses that I have, at which I can be contacted." But "Where (and how) can I be contacted?" is now a question for HasChannelMethod to answer. (We still need to have "HasAddr", though, so we can answer things like "what country is this relay in" and "are these relays in the same /8?") So this commit introduces: * A new trait for adding an implementation of HasChannelMethod in terms of HasAddr. * A requirement on ChanTarget that it needs to implement HasChannelMethod. There is some temporary breakage here, marked with "TODO pt-client", that I'll fix later in this branch.
* Merge branch 'bridge_containers' into 'main'Nick Mathewson2022-10-068-68/+207
|\ | | | | | | | | Start implementing more data structures to hold Bridge descriptors. See merge request tpo/core/arti!755