| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
guardmgr needs to know how to parse Bridge lines into Bridge structs
so it needs to know about PTs specifically
|
| | |
| |
| |
| | |
I wanted this for testing. I think it's reasonable to promise this.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Make PtTargetSettings be Default.
No longer wrap it in Arc. We want to be able to update it here during
construction. If we want to save memory with copies of the same
bridge line, we should do this for the whole Bridge I think.
|
| | |
| |
| |
| | |
Spotted this in passing.
|
| |\ \
| | |
| | |
| | |
| | | |
Upgrade all fuzzers to newer libfuzzer-sys version.
See merge request tpo/core/arti!752
|
| | | | |
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
Use hostname-validator crate for hostname validation
See merge request tpo/core/arti!739
|
| | | | |
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Include a HashSet variant that can be keyed on multiple keys.
See merge request tpo/core/arti!747
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
Doing this lets us work with defaults and const generics.
|
| | | | |
| | | |
| | | |
| | | | |
This prevents an explosion if somebody has a key called "values".
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
It doesn't work for const generics yet, since they can't be repeated
in quite the same way.
|
| | | | |
| | | |
| | | |
| | | | |
Most of these were suggested by Ian
|
| | | | |
| | | |
| | | |
| | | | |
The `try_remove()` method, which we need, was introduced there.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
The previous indentation was making it think that we had rust code
where none existed.
|
| | | | |
| | | |
| | | |
| | | | |
Also, document another invariant.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This can't be used in a consistency-preserving way.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Using Option<T> as an alias for T was too clever indeed, and it
meant that our HashMaps were declared with the wrong types.
Putting flags here instead gives us an extension point that we can
use in the future.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Every element in the set has up to N keys, each of which may have differnt
types. No value for any key may correspond to more than one element in
the set.
These properties can be provided, via a macro, for values of N between 1
and $BIG_ENOUGH.
We'll use this to implement a type that holds HasRelayIds.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Implement a SOCKS client handshake
See merge request tpo/core/arti!746
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Per a suggestion from Diziet, clarify that the socks handshake code
only wants you to drain your buffers when it tells you to.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
I don't expect us to need this information much, but we may as well
hang on to it.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Try to do it in constant time, to avoid even the smell of
side-channel attacks.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
These tests include a few reference cases, as well as a little
framework to make sure that the client and the proxy implementation
will handshake with one another successfully.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Previously we would report it as authenticating using the empty
string.
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
Also, have it enforce more correctness properties.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This type is by analogy to `RemoteProtocolFailed`; we'll use it for
cases when the Socks proxy refuses to talk to us.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Retain "SocksHandshake" as a deprecated synonym.
Also, make an (on-by-default) feature for SocksProxyHandshake.
(There is about to be a SocksClientHandshake as well.)
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Since these don't expose any Runtime-based APIs, they don't have
a breaking change.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
(Since the APIs for the `Schedule::sleep*` functions changed, this
is a breaking change in tor-rtcompat. Therefore, the Runtime trait
in tor-rtcompat is now a different trait. Therefore, anything that
uses the Runtime trait in its APIs has also broken.)
|
| | | | | | |
|
| | | | | | |
|