| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
| |
This took a little refactoring, since derive_more::Foo
no longer re-exports std::ops::Foo.
|
| |
|
|
| |
Fixes #1841.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See Release.md.
maint/list_crates | grep -P '^tor-|^arti-' | xargs -n1 nailing-cargo -Eu set-version --bump minor -p
This completes the version bumps.
The report of changed crates, before I started the release work, is:
$ maint/changed_crates -v "arti-v$LAST_VERSION"
oneshot-fused-workaround: No change.
slotmap-careful: No change.
test-temp-dir: No change.
fslock-guard: No change.
hashx: No change.
equix: No change.
tor-basic-utils: No change.
caret: No change.
fs-mistrust
safelog: No change.
retry-error: No change.
tor-error
tor-general-addr: No change.
tor-geoip: No change.
tor-rtcompat
tor-rtmock
tor-async-utils
tor-config
tor-config-path
tor-rpc-connect
tor-log-ratelim: No change.
tor-rpcbase
tor-memquota: No change.
tor-units
tor-llcrypto: No change.
tor-protover: No change.
tor-bytes
tor-checkable: No change.
tor-cert
tor-key-forge
tor-hscrypto: No change.
tor-socksproto: No change.
tor-linkspec: No change.
tor-cell: No change.
tor-proto
tor-netdoc: No change.
tor-consdiff: No change.
tor-netdir
tor-relay-selection: No change.
tor-persist
tor-chanmgr
tor-ptmgr: No change.
tor-guardmgr: No change.
tor-circmgr
tor-dirclient: No change.
tor-dirmgr: No change.
tor-keymgr
tor-hsclient
tor-hsservice
tor-hsrproxy: No change.
tor-relay-crypto
arti-client
arti-relay
arti-rpcserver
arti
arti-rpc-client-core
$
|
| |
|
|
|
|
|
|
|
|
|
|
| |
There are new features.
cargo set-version --offline --bump minor -p fs-mistrust
Actually, I have discovered by diffing that some methods now take
`&self` where previously they took `self`. This will need a further
bump to the fs-mistrust version and a fix to the changelog.
I will do that. Filed blocker ticket #1841 for it.
|
| |
|
|
|
|
|
| |
We want to explain better what has happened, not only with the final
fatal error, but with any nonfatal errors that occurred in the middle.
Closes #1826.
|
| |
|
|
| |
Closes #1650.
|
| |
|
|
|
|
|
| |
In general, we try to obey the convention that an error's Display
method does not display that error's sources.
Part of #1650.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes #1831.
I'm doing this because switching from the socketpair crate to an
ersatz connect-to-localhost socketpair made the test pass.
My windows skills are weak, but it appears possible that you aren't
supposed to simultaneously have a blocking ReadFile and a blocking
WriteFile to a named pipe from separate threads? At least, that's
consistent with our findings in !2758.
I first saw this hack in perl, when I needed it in 2003.
I am displeased that it is still apparently needed in 2025.
|
| |
|
|
| |
This was the slowest test in our suite.
|
| |\
| |
| |
| |
| |
| |
| | |
rpc: Document what is actually going on with stream optimism.
Closes #1583
See merge request tpo/core/arti!2753
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Our documentation had dated to an older version of our RPC stream
code, where all streams were automatically optimistic.
But as explained, our use of "optimistic"ness in RPC stream code is
now purely internal, to make it possible to get an DataStreamCtrl.
This isn't user-visible in our rpc_conn_open_stream code.
Closes #1583
|
| |/ |
|
| |\
| |
| |
| |
| |
| |
| | |
Improve and write a bunch of RPC documentation
Closes #1520, #1527, and #1296
See merge request tpo/core/arti!2748
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
This type explains where every error came from, and explains why
each declined connect point was declined.
|
| | | |
|
| |/
|
|
| |
Subsequent commits will pipe this information forward to our errors.
|
| | |
|
| |
|
|
|
|
|
|
| |
Also change corresponding message.
This way, it will be clear that we're just reporting that Arti
gave us an error—not that the error necessarily means that the
authentication itself was "wrong".
|
| |
|
|
|
|
|
|
|
|
|
| |
The execute_internal_ok method converts every error response into an
internal error; as such, it's only appropriate when there is no way
for a well-behaved Arti instance to give an error response.
But we had been using it in a few places where errors were possible
under other circumstances.
This commit fixes that behavior, and adds documentation to help
avoid it.
|
| |
|
|
|
|
| |
It looks like !2729 and !2722 raced with each other, because we're still
using the old name for `EmptyReply` (and so `arti-rpc-client-core`
doesn't currently compile on `main`).
|
| |\
| |
| |
| |
| |
| |
| | |
rpc: Implement request cancellation
Closes #818
See merge request tpo/core/arti!2722
|
| | |
| |
| |
| |
| |
| |
| | |
I hope that this limitation is acceptable;
the alternative involves some significant refactoring to give
Request a Weak reference to RpcConn -- but RpcConn isn't currently
kept in an Arc<> at all, and so we'd need some fairly heavy hacking.
|
| | | |
|
| |/
|
|
|
|
|
|
| |
Our now convention here in rpclib is that a struct holding a
request's parameters is called `FooParams`, and a struct holding
that request's reply is called `FooReply`.
Closes #1586
|
| |\
| |
| |
| |
| |
| |
| | |
rpc: Clarify and fix some issues surrounding relative paths.
Closes #1748 and #1749
See merge request tpo/core/arti!2712
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
rpclib: Clean up after performing cookie auth
See merge request tpo/core/arti!2716
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Previously we never released the intermediary cookie-auth object,
which would have left it kicking around on the RPC server side
until we finally closed our connection.
|
| |/ /
| |
| |
| |
| |
| |
| |
| | |
This method doesn't actually create a new stream; it creates a
single-use client object that can be used with SOCKS to launch
a new stream, and capture an RPC object for that stream.
Closes #1664.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
We don't want to call this "unix path" anywhere, since it
corresponds to _any_ case where the ability to negotiate a
successful connection means that the client is authorized.
We also don't want to call it "none": The authentication
is inherent to the connection, not nonexistent.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously participants in the cookie protocol only bound the peer
nonce in their MACs. With this change, they bind both nonces.
This change is _probably_ not necessary for security, but it can't
hurt. It follows a general principle that Adam Langley told me a
long time ago: you won't regret binding more, but you might regret
binding less.
|
| | | |
|
| |/ |
|
| |
|
|
| |
Closes #1753
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The affected crates follow our regular versioning.
They all get bumped to 0.26.0.
Done with
```
for crate in $(./maint/list_crates |grep '^arti-\|tor-' ); do
cargo set-version --bump minor -p $crate;
done
```
|
| |\
| |
| |
| |
| | |
clippy: deny `mod_module_files`
See merge request tpo/core/arti!2689
|
| | |
| |
| |
| |
| |
| | |
Denies 'mod.rs' files for consistency.
https://rust-lang.github.io/rust-clippy/master/index.html#mod_module_files
|