| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\ \
| | |
| | |
| | |
| | | |
Clarify `REASON_DONE`
See merge request tpo/core/arti!677
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
arti: Add support for process hardening
Closes #364
See merge request tpo/core/arti!672
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a compile-time feature with an associated configuration
flag, both enabled by default.
When it's turned on, hardening prevents the arti process from
dumping core or being attached to by low-privileged processes.
(This is a defense-in-depth measure, not an absolute way to prevent
attacks. For more information, see
[`secmem_proc`](https://docs.rs/secmem-proc/0.1.1/secmem_proc/).)
Closes #364.
|
| |\ \
| |/
|/|
| |
| | |
Fix nightly CI: allow print_stderr in rtt tests.
See merge request tpo/core/arti!673
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
tor-rtcompat: Require that TcpStream be Send
See merge request tpo/core/arti!675
|
| | | | |
|
| |/ /
| |
| |
| | |
The lack of this seems to have been an oversight.
|
| |\ \
| |/
|/|
| |
| | |
fix error running check_licenses
See merge request tpo/core/arti!674
|
| |/
|
|
|
|
|
|
| |
--version was removed in a recent update
we use that to detected whether cargo-license is installed,
now use --help instead
|
| |\
| |
| |
| |
| |
| |
| | |
Reduce the arti crate's API surface; improve semver documentation.
Closes #522, #530, and #532
See merge request tpo/core/arti!664
|
| | | |
|
| | |
| |
| |
| | |
Closes #522.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The remaining unconditionally public APIs are those related to our
configuration objects, and the main_main() API.
The rationale for making main_main() public is to have an actual
entry point.
The rationale for making the config APIs public is:
1. We really do intend for others to be able to read our
configuration files using this API.
2. The structure of our configuration files is already part of our
interface.
Closes #530.
|
| | |
| |
| |
| |
| |
| |
| | |
It remains on-by-default, so users shouldn't notice a difference,
but it may help when we want to save a few bytes of binary size.
Closes #532
|
| |\ \
| | |
| | |
| | |
| | | |
tor-congestion: WIP implementation of RTT estimation
See merge request tpo/core/arti!525
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit implements the round-trip-time estimation algorithm from Tor
proposal 324, validating the implementation against the test vectors
found in C tor. (Note that at the time of writing, the new test vectors
may not be committed to C tor yet, but they will be soon.)
This also adds the necessary consensus parameters to `NetParameters`.
Some of them have been renamed in order to (hopefully) make them more
understandable.
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
tor-proto: Add a comment about the tor-proto layer.
Closes #531
See merge request tpo/core/arti!665
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We want to clarify that the tor-proto crate should only know _how_
its objects behave, not _why they behave that way_. (In other
words, we can have a "padding strategy" setting on a channel, but
not a "general usage" setting.)
Closes #531.
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Refactor tor-linkspec once more.
Closes #428
See merge request tpo/core/arti!662
|
| | |\ \
| |/ /
|/| |
| | | |
# Conflicts:
# crates/tor-netdir/semver.md
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Decrease the lifetimes for storing descriptors.
Closes #527
See merge request tpo/core/arti!669
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
These values were chosen experimentally, based on those from Tor, to
save disk space without wasting much bandwidth.
Closes #527.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
fix nighly ci
See merge request tpo/core/arti!668
|
| | | |/
| |/| |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
fix fs-misstrust on android
See merge request tpo/core/arti!667
|
| | |/ /
| | |
| | |
| | |
| | |
| | | |
it would fail to link at runtime due to missing getgrnam_r in bionic
and then it would fail again because some directory is group writeable
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
Update shellexpand, and switch to non-fork
See merge request tpo/core/arti!661
|
| |/ /
| |
| |
| |
| |
| |
| |
| | |
Now we have bus>1 ownership of the crate name `shellexpand`. I have
made a release, and retired `shellexpand-fork`.
The new shellexpand release switches to a (quite similarly) unforked
version of `dirs`.
|
| |\ \
| | |
| | |
| | |
| | | |
Implement establish rendezvous cell
See merge request tpo/core/arti!651
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Revise our handling of the zeroize trait
Closes #254
See merge request tpo/core/arti!655
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Everything that is a secret encryption key, or an input that is used
to produce a secret encryption key, has to get zeroized. And that's
all!
Closes #254.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This does not yet make sure that `SecretBuf` is used where it
_should_ be, but at least it ensures that most uses of `SecretBytes`
will indeed act as intended, and make sure that whatever they
contain is zeroized.
It requires some corresponding changes to method calls for
correctness and type conformance.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This Writer is a simple wrapper around `Vec<u8>` that makes sure
that its contents are cleared whenever they are dropped _or
reallocated_.
The reallocation is the important part here: without that, we risk
not zeroizing the first allocation of the buffer.
|
| | | | |
|
| | | |
| | |
| | |
| | | |
Part of #254.
|
| | | |
| | |
| | |
| | | |
These are not secret.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using `zeroize` here tells these crates that they should make
various structures zeroize-on-drop.
(This is not yet implemented in `aes` 0.8.1, but support has been
merged in the repository for `aes`, so it should go out in the next
release.)
No corresponding feature flag is needed to enable zeroize-on-drop
for `rsa` and `*25519-dalek` private keys.
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Delete unused Enum and fileinput in maint file
See merge request tpo/core/arti!660
|
| | | | | |
|
| |\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | | |
Add params() method to NetDirProvider
Closes #528
See merge request tpo/core/arti!658
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Now it maintains an up-to-date set of default parameters to be
handed out if there is no directory.
Closes #528.
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This method will let users get the latest `NetParameters`, with
user-configured overrides, even if there is no current directory at
all.
Part of #528
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Rename `.inc` and other included files to end in `.rs`
Closes #381
See merge request tpo/core/arti!645
|