Nick Mathewson
618ed48cea
hsclient: Create a CircTarget from an IntroPointDesc.
...
The main body of this function is written so that we can later use
it to create a CircTarget from an INTRODUCE2 message.
2023-06-07 07:55:45 -04:00
Nick Mathewson
205b6d176c
netdir, netdoc: Add accessors for protocol version status.
...
The consensus includes a listing for clients and for relays,
saying which protocol versions are _required_ for participation on
the network, and which versions are _recommended_. We have been
parsing this, but not yet exposing it.
This commit adds accessors to expose it, since we'll need that in
order to create CircTargets for introduction points and rendezvous
points.
2023-06-06 09:06:01 -04:00
Ian Jackson
9a30d76ea6
hsdesc: Add minimal set of accessors for HsDesc and IntroPointDesc
2023-06-05 19:33:31 +01:00
Ian Jackson
8382927080
hsdesc docs: Don't imply that a thing has been done, which hasn't yet
2023-06-05 19:20:45 +01:00
Ian Jackson
fa324f76de
hsdesc docs: Use the definite article
...
These are (I hope) the only key matching the description. If they're
not, the description needs to be expanded.
2023-06-05 19:20:13 +01:00
Ian Jackson
84e0ef2531
Merge branch 'cargo-audit-ignore' into 'main'
...
maint/cargo-audit: Ignore RUSTSEC-2023-0040 (the users crate is unmaintained)
See merge request tpo/core/arti!1217
2023-06-05 11:26:02 +00:00
Gabriela Moldovan
54120b37bd
maint/cargo-audit: Ignore RUSTSEC-2023-0040 (the users crate is unmaintained)
...
Signed-off-by: Gabriela Moldovan <gabi@torproject.org>
2023-06-05 11:52:06 +01:00
Nick Mathewson
469f62a983
Remove semver.md files from 1.1.5
2023-06-01 14:08:24 -04:00
Ian Jackson
254d4c93a7
Merge branch 'bump-versions-v115' into 'main'
...
Bump crate versions in preparation for v1.1.5 release.
See merge request tpo/core/arti!1211
2023-06-01 17:32:41 +00:00
Nick Mathewson
f2b08444c6
Merge branch 'one_more_cl_msg' into 'main'
...
changelog: mention fallback list update.
See merge request tpo/core/arti!1212
2023-06-01 14:54:12 +00:00
Nick Mathewson
03ec7bc80e
changelog: mention fallback list update.
2023-06-01 10:11:28 -04:00
Nick Mathewson
ee75b37033
Merge branch 'fallbackdir-2023-06-01' into 'main'
...
fallbackdir: Update list generated on June 01, 2023
See merge request tpo/core/arti!1210
2023-06-01 14:06:50 +00:00
Nick Mathewson
daf5ecc153
Bump crate versions in preparation for v1.1.5 release.
...
Generated with the following commands:
```
cargo set-version --bump minor -p tor-cell
cargo set-version --bump minor -p tor-linkspec
cargo set-version --bump minor -p tor-proto
cargo set-version --bump minor -p tor-netdoc
cargo set-version --bump minor -p tor-circmgr
cargo set-version --bump patch -p tor-cert
cargo set-version --bump patch -p tor-basic-utils
cargo set-version --bump patch -p tor-rpcbase
cargo set-version --bump patch -p tor-llcrypto
cargo set-version --bump patch -p tor-hscrypto
cargo set-version --bump patch -p tor-checkable
cargo set-version --bump patch -p tor-async-utils
cargo set-version --bump patch -p caret
cargo set-version --bump patch -p fs-mistrust
cargo set-version --bump patch -p safelog
cargo set-version --bump patch -p retry-error
cargo set-version --bump patch -p tor-error
cargo set-version --bump patch -p tor-config
cargo set-version --bump patch -p tor-events
cargo set-version --bump patch -p tor-units
cargo set-version --bump patch -p tor-rtcompat
cargo set-version --bump patch -p tor-rtmock
cargo set-version --bump patch -p tor-protover
cargo set-version --bump patch -p tor-bytes
cargo set-version --bump patch -p tor-socksproto
cargo set-version --bump patch -p tor-consdiff
cargo set-version --bump patch -p tor-netdir
cargo set-version --bump patch -p tor-congestion
cargo set-version --bump patch -p tor-persist
cargo set-version --bump patch -p tor-chanmgr
cargo set-version --bump patch -p tor-ptmgr
cargo set-version --bump patch -p tor-guardmgr
cargo set-version --bump patch -p tor-dirclient
cargo set-version --bump patch -p tor-dirmgr
cargo set-version --bump patch -p tor-hsclient
cargo set-version --bump patch -p tor-hsservice
cargo set-version --bump patch -p arti-client
cargo set-version --bump patch -p arti-rpcserver
cargo set-version --bump patch -p arti-config
cargo set-version --bump patch -p arti-hyper
cargo set-version --bump patch -p arti
cargo set-version --bump patch -p arti-bench
cargo set-version --bump patch -p arti-testing
```
2023-06-01 10:03:05 -04:00
Tor CI Release
3aef515135
fallbackdir: Update list generated on June 01, 2023
...
Signed-off-by: Tor CI Release <no-email@torproject.org>
2023-06-01 09:41:28 -04:00
Nick Mathewson
6c8ac2dec8
Merge branch 'cl-more' into 'main'
...
changelog: add links for 1.1.5 changelog
See merge request tpo/core/arti!1209
2023-06-01 12:29:35 +00:00
Nick Mathewson
4875232b82
changelog: Minor cleanups
2023-06-01 07:56:27 -04:00
Nick Mathewson
865902e989
changelog: add links for 1.1.5 changelog
2023-06-01 07:40:30 -04:00
Alexander Færøy
ef4c20ed01
Merge branch 'changelog' into 'main'
...
Draft a changelog for 1.1.5
See merge request tpo/core/arti!1207
2023-05-31 19:41:02 +00:00
gabi-250
b5c0366043
Merge branch 'semver_checks_script' into 'main'
...
New script to run cargo-semver-checks with appropriate options.
See merge request tpo/core/arti!1206
2023-05-31 17:49:08 +00:00
Nick Mathewson
af2c3f28fe
Draft a changelog for 1.1.5
2023-05-31 12:47:40 -04:00
Nick Mathewson
1f4cd3f389
New script to run cargo-semver-checks with appropriate options.
...
The options are rather complicated; because we do not want to
subject our experimental features to semver, we need to run generate
JSON rustdoc on our own and then pass that JSON to
cargo-semver-checks. This in turn requires us to use the same
options that cargo-semver-checks uses, including "RUSTC_BOOTSTRAP".
I've left some TODOs here in places where we will likely want to
improve our code in the future.
See #711 .
2023-05-31 10:04:29 -04:00
Nick Mathewson
4b8b137880
Merge branch 'fixup-features' into 'main'
...
Run fixup-features script and resolve its complaints.
See merge request tpo/core/arti!1205
2023-05-31 12:48:12 +00:00
Nick Mathewson
8d32e1f65f
Run fixup-features script and resolve its complaints.
2023-05-31 08:04:10 -04:00
Nick Mathewson
079e19b725
Merge branch 'pre-release-updates' into 'main'
...
Run "cargo update" in preparation for Thursday release.
See merge request tpo/core/arti!1204
2023-05-30 15:31:15 +00:00
Nick Mathewson
65be721f46
Run "cargo update" in preparation for Thursday release.
2023-05-30 10:37:24 -04:00
Nick Mathewson
6703f3d52a
Merge branch 'stream_ctrl' into 'main'
...
Experimental new stream-ctrl feature
Closes #847
See merge request tpo/core/arti!1198
2023-05-24 20:01:40 +00:00
Nick Mathewson
e4758a754e
Add "TODO RPC" notes around DataStreamCtrl per review.
2023-05-24 15:25:33 -04:00
Nick Mathewson
a397ca77d9
proto: Add stream-status functionality to DataStreamCtrl.
...
There are some weaknesses and problems here; see TODO notes.
2023-05-24 15:25:33 -04:00
Ian Jackson
14b7fae113
Merge branch 'virtual_conditional' into 'main'
...
proto: Make PathEntry::Virtual feature-conditional.
See merge request tpo/core/arti!1201
2023-05-24 14:57:24 +00:00
Nick Mathewson
3d4b9aa1b7
Merge branch 'rpc-auth-and-meta' into 'main'
...
rpc: authentication and basic handle manipulation
See merge request tpo/core/arti!1200
2023-05-24 14:53:29 +00:00
Nick Mathewson
7178ab85eb
Merge branch 'real_generational_arena' into 'main'
...
rpc: Use the real generational-arena crate
See merge request tpo/core/arti!1203
2023-05-24 14:50:20 +00:00
Nick Mathewson
936387efee
rpc: Remove downgrade_owned for now
...
Rationale: Our weak-vs-strong design is a bit confused at the moment
due to concerns about deduplication and capability semantics. It's
not clear that a general "change strong to weak" method is
compatible with what we want to provide.
2023-05-24 10:15:56 -04:00
Nick Mathewson
4a9c6fba7d
rpc: Disable auth:get_rpc_protocol for now.
2023-05-24 10:15:56 -04:00
Nick Mathewson
9713e8d305
rpc: Implement functionality to remove objects from a session
...
I've made doing some design choices here:
* Reserving "rpc" as a prefix for post-authentication
functionality that is not arti-specific.
* Declaring these to be methods on the session rather than methods
on the objects themselves.
There's a problem with defining an API to drop a weak reference; see
comment in code.
2023-05-24 10:15:56 -04:00
Nick Mathewson
15a8644bf7
rpc: fix documentation for methods in Context.
2023-05-24 10:15:56 -04:00
Nick Mathewson
a939b19479
rpc: update rpc-meta-draft with new behavior.
2023-05-24 10:15:56 -04:00
Nick Mathewson
fef8342be3
rpc: Make the top-level returned object a "session".
...
This will make it easier to change the semantics of what exactly we
return, whether it has to be/contain a client, whether you can use
it to look up all the live objects, &etc.
2023-05-24 10:15:56 -04:00
Ian Jackson
642dc10907
Merge branch 'cookie_in_est_intro' into 'main'
...
cell: Make EstablishRendezvous contain a RendCookie.
See merge request tpo/core/arti!1202
2023-05-24 13:09:13 +00:00
Nick Mathewson
45b4845f3a
rpc: Remove fake_generational_arena
...
Now that generation-arena has merged [@diziet's patch] to clarify
their license, we no longer need to disable it.
[@diziet's patch]: https://github.com/fitzgen/generational-arena/pull/56
2023-05-23 13:58:08 -04:00
Nick Mathewson
e5fa42e1c7
maint/check_license: Make MPL-2.0 into an allow-list
...
Previously we allowed this license unconditionally. But because of its
non-self-enacting nature, we need the actual notice from its "exhibit A"
to appear somewhere that says that it applies to all the relevant code.
Therefore, we shouldn't take new MPL-2.0 dependencies without
hand-checking them. (I am tentatively allowing option-ext, though,
since we already have an indirect dependency on that crate via
`directories`.)
For more info, see https://gitlab.torproject.org/tpo/core/arti/-/issues/845
2023-05-23 13:51:51 -04:00
Nick Mathewson
24d67594d7
cell: Make EstablishRendezvous contain a RendCookie.
2023-05-23 13:33:07 -04:00
Nick Mathewson
278e2fea79
Merge branch 'socks-read-fix' into 'main'
...
Fix a local-only CPU DoS bug.
Closes #861
See merge request tpo/core/arti!1196
2023-05-23 15:28:00 +00:00
Nick Mathewson
03c81ae5aa
proto: Make PathEntry::Virtual feature-conditional.
...
This fixes a warning when building tor-proto without the
`rpc-common` feature.
2023-05-23 10:59:37 -04:00
Nick Mathewson
9225b3f89d
Merge branch 'shadow-v3' into 'main'
...
shadow tests: bump to shadow 3.0
See merge request tpo/core/arti!1199
2023-05-23 14:49:30 +00:00
Nick Mathewson
03cb91012d
Fix a local-only CPU DoS bug.
...
Previously, there was a bug in the way that our code used our SOCKS
implementations. If the buffer used for a SOCKS handshake became full
without completing the handshake, then rather than expanding the buffer
or closing the connection, our code would keep trying to read into the
zero-byte slice available in the full buffer forever, in a tight loop.
We're classifying this as a LOW-severity issue, since it is only
exploitable by pluggable transports (which are trusted) and by
local applications with access to the SOCKS port.
Closes #861 .
Fixes TROVE-2023-001.
Reported-By: Jakob Lell <jakob AT srlabs DOT de>
2023-05-23 10:48:27 -04:00
Nick Mathewson
0993672cb2
rpc: Implement auth:query.
2023-05-23 09:08:32 -04:00
Nick Mathewson
2798dade00
rpc: Implement the auth:get_rpc_protocol method.
2023-05-23 08:58:03 -04:00
Nick Mathewson
d745e2d866
rpc: move existing auth code to new module.
2023-05-23 08:46:19 -04:00
Ian Jackson
b15ca0273b
Merge branch 'thanks_trailer' into 'main'
...
maint/thanks: Include some git trailers in acknowledgments
See merge request tpo/core/arti!1194
2023-05-23 12:33:15 +00:00
Ian Jackson
7e0660a8ab
Merge branch 'misc' into 'main'
...
Fix misc regressions in nascent HS client code
See merge request tpo/core/arti!1197
2023-05-23 12:17:34 +00:00