Nick Mathewson
4caf86349c
Remove explicit allows for missing_panics_docs.
...
These are no longer needed.
2023-07-06 14:36:13 -04:00
Nick Mathewson
03f9f9987a
Run add_warning to remove `missing_panics_doc` deny.
...
Closes #950 .
2023-07-06 14:32:23 -04:00
Gabriela Moldovan
258dd195e0
keymgr: Explain why the TODO regarding EncodableKey can't be addressed.
2023-07-05 22:21:47 +01:00
Gabriela Moldovan
3afe810a3b
keymgr: Fix broken doc link.
2023-06-30 14:41:33 +01:00
Nick Mathewson
de13a7319b
Bump patchlevel versions on crates with smaller changes
...
Done with the commands below.
The following crates have had various changes, and should get a
patchlevel bump. Since they are pre-1.0, we do not need to
distinguish new APIs from other changes.
```
cargo set-version --bump patch -p arti-client
cargo set-version --bump patch -p safelog
cargo set-version --bump patch -p tor-bytes
cargo set-version --bump patch -p tor-cert
cargo set-version --bump patch -p tor-circmgr
cargo set-version --bump patch -p tor-config
cargo set-version --bump patch -p tor-consdiff
cargo set-version --bump patch -p tor-dirclient
cargo set-version --bump patch -p tor-dirmgr
cargo set-version --bump patch -p tor-error
cargo set-version --bump patch -p tor-hsservice
cargo set-version --bump patch -p tor-linkspec
cargo set-version --bump patch -p tor-llcrypto
cargo set-version --bump patch -p tor-netdir
cargo set-version --bump patch -p tor-netdoc
cargo set-version --bump patch -p tor-proto
cargo set-version --bump patch -p tor-rpcbase
cargo set-version --bump patch -p tor-socksproto
```
This crate has new features, but no new non-experimental Rust APIs.
So even though it is post-1.0, it gets a patchlevel bump.
```
cargo set-version --bump patch -p arti
```
2023-06-30 08:42:21 -04:00
Nick Mathewson
65e81bf0ca
Bump minor versions on crates with breaking changes
...
Done with:
```
cargo set-version --bump minor -p tor-hsclient
cargo set-version --bump minor -p arti-rpcserver
cargo set-version --bump minor -p tor-hscrypto
cargo set-version --bump minor -p tor-cell
```
2023-06-30 08:38:16 -04:00
gabi-250
8c1e96a22c
Merge branch 'arti-path-bug' into 'main'
...
keymgr: Allow periods in ArtiPath and ArtiPathComponent.
See merge request tpo/core/arti!1358
2023-06-30 11:30:45 +00:00
Gabriela Moldovan
35e063702f
keymgr: Update ArtiPath and ArtiPathComponent docs.
...
The docs were lying, we actually support UTF-8 paths (though we might
later decide to restrict the charset further).
2023-06-30 11:49:05 +01:00
Gabriela Moldovan
474f273b6c
keymgr: Allow periods in ArtiPath and ArtiPathComponent.
...
The `ArtiPath` of a client auth key contains the `HsId` of the onion
Since the `HsId` contains a `.onion` component, let's allow `.` for now.
In the future, we may want to update the code (and keystore structure)
to strip away the `.onion` part before building the `ArtiPath`.
2023-06-30 11:48:27 +01:00
Ian Jackson
5d99725c65
Merge branch 'keymgr-docs' into 'main'
...
keymgr: Downgrade "TODO hs" to "TODO HSS"
See merge request tpo/core/arti!1360
2023-06-30 10:48:25 +00:00
Ian Jackson
f177a5bde4
Merge branch 'fixup-features' into 'main'
...
Run fixup-features on current `main`
See merge request tpo/core/arti!1352
2023-06-30 10:38:53 +00:00
Gabriela Moldovan
90183368a2
keymgr: Downgrade "TODO hs" to "TODO HSS"
...
This TODO doesn't need to block the release.
2023-06-30 11:16:28 +01:00
Gabriela Moldovan
36606a66dd
keymgr: Rename KeyStore to Keystore globally.
...
We've been capitalizing the "s" in "KeyStore" inconsistently. This
`s/KeyStore/Keystore/g` across the codebase.
2023-06-29 22:46:15 +01:00
Nick Mathewson
a88fa71f25
Resolve XXXs from fixup-features.
...
Some of these seem spurious: it looks like fixup-features resolved
an issue and then complained about it too. I'll investigate further.
2023-06-29 17:14:00 -04:00
Nick Mathewson
f8ee830a94
Run "cargo sort".
2023-06-29 17:10:27 -04:00
Nick Mathewson
23c67d92e6
Run "fixup-features".
2023-06-29 17:09:52 -04:00
Ian Jackson
3c85863aa1
Merge branch 'exp' into 'main'
...
tor-error: Make KeystoreFsPermissions experimental for now
See merge request tpo/core/arti!1350
2023-06-29 19:55:06 +00:00
Ian Jackson
9ef65775c9
Merge branch 'validate-client-spec' into 'main'
...
keymgr: Validate ArtiPaths, replace HsClientSpecifier with generic ArtiPathComponent
See merge request tpo/core/arti!1262
2023-06-29 19:49:30 +00:00
Ian Jackson
e299c2b4f7
Merge branch 'keymgr' into 'main'
...
tor-keymgr: Adjust stability guarantees for release
Closes #934
See merge request tpo/core/arti!1346
2023-06-29 19:27:14 +00:00
Ian Jackson
effded7728
tor-keymgr: When keymgr enabled, enable tor-error's experimental too
2023-06-29 19:51:04 +01:00
Gabriela Moldovan
c9f4ef010f
keymgr: Remove unstable ErrorKind, use internal! for ArtiPath errors.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
f81d16ff9b
keymgr: Validate the individual ArtiPahtComponents of ArtiPath.
...
This also implicitly forbids leading and trailing slashes in an
`ArtiPath`.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
0ebb002de8
keymgr: Rephrase ArtiPath docs.
...
This updates the docs with Diziet's suggested doc improvements.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
b5e190d05d
keymgr: Remove ArtiPath normalization, introduce additional restrictions.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
d59c3bdea9
keymgr: Document how ArtiPath validation is actually supposed to work.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
e8ef82b78d
keymgr: Move validation requirements to the ArtiPath docs.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
66e6ab3f9e
keymgr: Make ArtiPath platform-independent by always using '/' as a separator.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
adfde95703
keymgr: Add tests for ArtiPath validation.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
f56ed918b0
keymgr: Validate ArtiPath and ArtiPathComponent.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
2825dfc2bc
keymgr: Derive Into for ArtiPath and ArtiPathComponent.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
0972fc5b2d
keymgr: Define an error type for bad `ArtiPathComponents`.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
095faf9c5c
keymgr: Derive Display for ArtiPath and ArtiPathComponent.
2023-06-29 19:28:22 +01:00
Gabriela Moldovan
89238f25a6
keymgr: Define `ArtiPathComponent`.
...
An `ArtiPathComponent` is a substring of an `ArtiPath`. An
`ArtiPathComponent` will be validated according to the same rules as
`ArtiPath`.
In the future we can replace `HsClientSpecifier` with
`ArtiPathComponent` (they both serve the same purpose except
`ArtiPathComponent` is more generic).
2023-06-29 19:28:22 +01:00
Ian Jackson
954e20bb50
tor-keymgr: Add missing footnote
2023-06-29 19:26:15 +01:00
Ian Jackson
f5532eafe7
tor-keymgr: Replace whole-crate-is-unstable warning
...
arti-client is going to use this so it can't be whole-crate-unstable,
but it can be rapidly-changing.
2023-06-29 17:47:54 +01:00
Ian Jackson
6addbd056b
tor-keymgr features: Document that "keymgr" is experimental
2023-06-29 17:44:51 +01:00
Ian Jackson
eb12a6e665
tor-keymgr features: Make "keymgr" disabled by default
2023-06-29 17:43:25 +01:00
Gabriela Moldovan
429e5d2512
keymgr: Fix dummy keymgr doc links.
...
`Error` is private to `dummy.rs` so let's not mention it in the docs of
the public items.
2023-06-29 17:08:14 +01:00
Gabriela Moldovan
7bdc28014e
keymgr: Add missing dummy implementation for KeyType::arti_extension.
...
This fixes a rustdoc warning when building with:
```
cargo doc --locked --offline -p arti --no-default-features --features=full,onion-service-client
```
2023-06-29 17:08:14 +01:00
Gabriela Moldovan
4941a88494
keymgr: Fix wrong_key_type test.
...
The string representation of `SshKeyAlgorithm` on `main` changed between
the time the tests were introduced and the time they were merged.
2023-06-29 15:21:27 +01:00
gabi-250
9407fe1ab5
Merge branch 'keymgr-tests' into 'main'
...
keymgr: Add tests for ArtiNativeKeyStore
See merge request tpo/core/arti!1337
2023-06-29 13:02:07 +00:00
gabi-250
b059e02093
Merge branch 'keymgr-x25519-keys' into 'main'
...
keymgr: Add support for x25519 keys.
Closes #900
See merge request tpo/core/arti!1321
2023-06-29 11:46:03 +00:00
Gabriela Moldovan
294bb728cf
keymgr: Add a TODO about implementing and testing has_key_bundle.
2023-06-29 12:10:35 +01:00
Gabriela Moldovan
68c91223f1
keymgr: Add some basic insert and remove tests.
2023-06-29 12:10:35 +01:00
Gabriela Moldovan
4d5f414017
keymgr: Add assert_found! test helper.
2023-06-29 11:54:54 +01:00
Gabriela Moldovan
91573c6cbc
keymgr: Add some key retrieval tests for ArtiNativeKeyStore.
2023-06-29 11:54:54 +01:00
Gabriela Moldovan
fd3b42688d
keymgr: Add a gen_keys param to init_keystore.
...
This will enable future tests to optionally initialize the test key
store with some test keys.
2023-06-29 11:54:54 +01:00
Gabriela Moldovan
bc447524c2
keymgr: Add tests for ArtiNativeKeyStore::key_path.
2023-06-29 11:54:54 +01:00
Gabriela Moldovan
89d52fff3e
keymgr: Derive Debug for ArtiNativeKeyStore.
2023-06-29 11:49:31 +01:00
Gabriela Moldovan
ff02270307
keymgr: Add tests for ssh key handling.
...
Part of #895
2023-06-29 11:49:31 +01:00