summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | netdoc-builder api: Abolish `K` generic on ItemEncoderIan Jackson2023-01-241-5/+7
| | | | | | | | | | | | | | | We're going to eagerly encode the keyword, so this will be easy. Removing the generic simplifies the API.
| * | netdoc-builder api: Don't promise to check args_raw_string valueIan Jackson2023-01-241-3/+0
| | |
| * | netdoc-builder api: Make ItemEncoder methods consume and return selfIan Jackson2023-01-241-2/+13
| | | | | | | | | | | | | | | | | | This will actually make the pattern in the example work. The mentioned `ItemArgument` trait will arrive soon.
| * | netdoc-builder api: Move internal API into actual code file (fmt)Ian Jackson2023-01-241-6/+7
| | |
| * | netdoc-builder api: Move internal API into actual code fileIan Jackson2023-01-242-0/+179
| | | | | | | | | | | | Motion, plus the bare minimum needed to make it compile.
| * | tor-netdoc: tokenize: Provide BASE64_PEM_MAX_LINEIan Jackson2023-01-241-0/+3
| | | | | | | | | | | | We'll use this in the netdoc builder, but it naturally lives here.
| * | tor-netdoc: tokenize: Rename to tag_keywords_ok, document, exposeIan Jackson2023-01-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Rename from _keyword_, since this actually checks the *multiple* keywords that can appear in an object's BEGIN line. Make this clear in the doc comment. Expose it for use by the netdoc builder.
| * | tor-netdoc: tokenize: crate-Expose object::BEGIN_STR etc.Ian Jackson2023-01-241-6/+11
| | | | | | | | | | | | The document builder wants these too.
| * | tor-netdoc: Make AuthCertKwd pub(crate)Ian Jackson2023-01-241-1/+1
| | | | | | | | | | | | For now, this will be useful in a test.
| * | tor-bytes: impl Writeable for &impl WriteableIan Jackson2023-01-242-0/+7
| | |
| * | tor-bytes: Implement conversion from EncodeError to BugIan Jackson2023-01-242-1/+17
| | |
* | | Merge branch 'env' into 'main'eta2023-01-261-1/+1
|\ \ \ | | | | | | | | | | | | | | | | shell: use /usr/bin/env instead of absolute paths See merge request tpo/core/arti!988
| * | | shell: use /usr/bin/env instead of absolute pathsEmil Engler2023-01-251-1/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | This commit changes the shebang in all shell scripts from absolute paths (such as `/bin/bash` or `/usr/bin/python3`) to the `/usr/bin/env` binary with the accompanying interpreter as it's argument. The reason for this are as follows: - NixOS cannot work with absolute paths - BSD systems install their packages in /usr/local/bin
* | | Merge branch 'sensitive' into 'main'eta2023-01-261-3/+4
|\ \ \ | |/ / |/| | | | | | | | tor-proto: Mark stream ids in errors as sensitive See merge request tpo/core/arti!986
| * | tor-proto: Mark stream ids in errors as sensitiveIan Jackson2023-01-241-3/+4
| | | | | | | | | | | | Pursuant to #556
* | | Merge branch 'onion-api-highlevel' into 'main'Nick Mathewson2023-01-2416-2/+532
|\ \ \ | | | | | | | | | | | | | | | | Onion-service APIs: circmgr, hsclient, hsservice See merge request tpo/core/arti!972
| * | | Note a needed isolation API.Nick Mathewson2023-01-241-0/+6
| | | |
| * | | hsservice: Add a note about the contents of circ_info.Nick Mathewson2023-01-241-0/+6
| | | | | | | | | | | | | | | | | | | | In order to store per-circuit information, it's a good idea if we provide something that can be the key of a `PtrWeakKeyHashMap`.
| * | | Sketch an API for onion services.Nick Mathewson2023-01-247-0/+237
| | | |
| * | | Add a new stub hsclient module to connect to onion services.Nick Mathewson2023-01-245-0/+171
| | | |
| * | | CircMgr: Draft API to construct targeted multihop circuits.Nick Mathewson2023-01-241-1/+24
| | | | | | | | | | | | | | | | | | | | Onion services and onion clients need these to make connections to HsDirs, Introduction points, and Rendezvous points.
| * | | CircMgr: Draft APIs used to implement onion service clients.Nick Mathewson2023-01-244-1/+88
| | |/ | |/|
* | | Merge branch 'onion-proto-apis' into 'main'Nick Mathewson2023-01-247-20/+252
|\ \ \ | |_|/ |/| | | | | | | | Draft APIs for onion services in tor-proto See merge request tpo/core/arti!970
| * | tor-proto: comment fixes and more TODO hsNick Mathewson2023-01-242-2/+18
| | |
| * | tor-proto: Draft API to handle incoming BEGIN requests.Nick Mathewson2023-01-173-0/+98
| | | | | | | | | | | | Onion services (and later, exits and caches) will need this.
| * | tor-proto: Expose support for doing onion service handshakesNick Mathewson2023-01-174-17/+79
| | | | | | | | | | | | | | | | | | This is a little tricky, but I think that we're not actually exposing too much here. I expect we'll need to tweak this stuff between now and our final version.
| * | tor-proto: Draft APIs for handling control messagesNick Mathewson2023-01-172-1/+54
| | | | | | | | | | | | | | | We will need these for onion services, to send and receive messages of types not handled directly by the tor-proto crate.
| * | tor-proto: Rename "hs" experimental feature to "onion-common"Nick Mathewson2023-01-172-3/+6
| | | | | | | | | | | | (For consistency with other crates)
* | | Merge branch 'bug736' into 'main'eta2023-01-241-0/+12
|\ \ \ | |_|/ |/| | | | | | | | Prop304: Add extended SOCKS result codes for onion services See merge request tpo/core/arti!978
| * | Prop304: Add extended SOCKS result codes for onion servicesNeel Chauhan2023-01-181-0/+12
| | |
* | | Merge branch 'ignore' into 'main'Nick Mathewson2023-01-207-7/+0
|\ \ \ | | | | | | | | | | | | | | | | Do not .gitignore crates/*/fuzz/corpus See merge request tpo/core/arti!982
| * | | Do not .gitignore crates/*/fuzz/corpusIan Jackson2023-01-207-7/+0
| | | | | | | | | | | | | | | | | | | | These are symlinks which are actually checked in. They should not be ignored. (This caused trouble for some of my privsep tooling...)
* | | | tor-llcrypto: Tolerate some warnings (fmt)Ian Jackson2023-01-201-1/+4
| | | |
* | | | tor-llcrypto: Tolerate some warningsIan Jackson2023-01-201-0/+4
|/ / / | | | | | | | | | | | | | | | Without this, cargo +stable clippy -p tor-netdoc --all-features produces warnings.
* | | Upgrade to latest rsa crate.Nick Mathewson2023-01-202-2/+2
| | |
* | | Upgrade to latest async-broadcastNick Mathewson2023-01-201-1/+1
| | | | | | | | | | | | | | | (We don't yet use the code that uses it, but we might as well have our unused code be up-to-date.)
* | | upgrade to latest serial_testNick Mathewson2023-01-201-1/+1
| | |
* | | Complete our migration to base64ct.Nick Mathewson2023-01-2011-26/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is in lieu of upgrading to the latest base64 crate, which has a different API from the old one. Since we have to migrate either way, we might as well use base64ct everywhere. I don't think that most of these cases _require_ constant-time base64, but it won't hurt.
* | | Upgrade to latest rlimit crate.Nick Mathewson2023-01-191-1/+1
|/ /
* / made TorClient::set_stream_prefs publicMichael van Straten2023-01-181-4/+1
|/
* Make a top-level API for connecting to onion services.Nick Mathewson2023-01-124-5/+26
| | | | Fortunately, it adds very little to the arti-client API surface.
* Merge branch 'onion-netdir-apis' into 'main'Nick Mathewson2023-01-1110-33/+345
|\ | | | | | | | | Add onion service APIs to tor-netdir See merge request tpo/core/arti!966
| * Adjust onion service ring APIs in light of prop#342Nick Mathewson2023-01-114-38/+99
| | | | | | | | | | | | | | | | | | | | * It is the NetDir's responsibility to tell the caller what the time period is. * There can be up to two secondary time periods. * Each time period has a single SRV. * Secondary time periods only apply for onion services, when they publish. * When publishing, the correct input is a time period.
| * Sketch APIs for the onion service directory ring.Nick Mathewson2023-01-114-4/+232
| | | | | | | | | | | | | | | | | | These are a bit complex internally, but the API they present is pretty simple. I've left some discussion of points where the design isn't totally fleshed out, and where we need to look harder at the spec. Part of #716.
| * Netdoc: Refactor SharedRandVal.Nick Mathewson2023-01-113-27/+37
| | | | | | | | | | | | | | | | SharedRandVal now holds only the 32-byte random value itself; the "number of commits" field is in SharedRandStatus. This commit also makes the SharedRandVal be exactly 32 bytes, since we've set it to that value in the spec.
| * hscrypto: Add several derivesNick Mathewson2023-01-113-1/+14
| | | | | | | | | | The important addition here is the Copy derives, which affect API design. I'm applying them to the types that are 32 byte or smaller.
* | netdir: add network parameters related to onion servicesNick Mathewson2023-01-111-1/+80
| | | | | | | | | | | | | | These are available unconditionally, since they represent comparatively little storage and processing effort. See param-spec.txt section 8 for the original information here.
* | tor-units: Add an IntegerMinutes.Nick Mathewson2023-01-112-0/+87
|/
* Merge branch 'blind_privkey' into 'main'Ian Jackson2023-01-092-17/+161
|\ | | | | | | | | | | | | llcrypto: Implement secret-key blinding. Closes #719 See merge request tpo/core/arti!964
| * llcrypto: Implement secret-key blinding.Nick Mathewson2023-01-062-17/+161
| | | | | | | | | | | | | | | | Closes #719. Due to a difference between ed25519-dalek and ed25519-donna, converting these secret keys directly to public keys does not work. I've documented this in a "Limitations" section.