summaryrefslogtreecommitdiff
path: root/src/rust
AgeCommit message (Collapse)Author
2018-07-05Fix everything that previously referred to src/orNick Mathewson
2018-07-05And tell build.rs to stop looking in src/commonNick Mathewson
2018-07-05Fix build.rs to handle removed common.Nick Mathewson
2018-07-01Tabify all of the .am files.Nick Mathewson
2018-06-30Merge branch 'maint-0.3.4'Nick Mathewson
2018-06-28Extract memarea into its own libraryNick Mathewson
2018-06-28Extract threading code into a new library.Nick Mathewson
Note that the workqueue code does *not* go here: it is logically at a higher level, since it needs to use libevent and the networking stack.
2018-06-27Move util_format into a new libtor-encoding libraryNick Mathewson
libtor-encoding is about various ways to transform data to and from character sequences.
2018-06-27Fix Rust cross compilation.Alex Xu (Hello71)
2018-06-27Merge branch 'sandbox_refactor'Nick Mathewson
2018-06-27Merge branch 'net_refactor'Nick Mathewson
2018-06-27Move sandbox code into a new library.Nick Mathewson
2018-06-27Move network code to libtor-net.Nick Mathewson
There are some additional changes to come: those points are marked by XXXX.
2018-06-26fixup! Extract core part of smartlist code into its own library.Nick Mathewson
2018-06-22Fix up the rust build script library list.Nick Mathewson
2018-06-22Extract the locking and logging codeNick Mathewson
The locking code gets its own module, since it's more fundamental than the higher-level locking code. Extracting the logging code was the whole point here. :)
2018-06-22Extract simple integer math into its own moduleNick Mathewson
2018-06-22Move smartlist_add_{v,}asprintf into smartlist.[ch]Nick Mathewson
Now that I know that "strings" nests below "container", I know this is safe.
2018-06-22Refactor container into a library.Nick Mathewson
2018-06-21Extract tor_malloc and friends to a new module.Nick Mathewson
2018-06-21Split crypto and tls libraries into directoriesNick Mathewson
I am calling the crypto library "crypt_ops", since I want higher-level crypto things to be separated from lower-level ones. This library will hold only the low-level ones, once we have it refactored.
2018-06-21Move consttime library code into its own directory.Nick Mathewson
2018-06-21Extract error functionality into a new lowest-level library.Nick Mathewson
2018-06-21Merge branch 'maint-0.3.4'Nick Mathewson
2018-06-20add build.rs to EXTRA_DISTNick Mathewson
2018-06-20Fix memory leak in CryptoDigest typeNick Mathewson
If you're owning a C pointer, you need to implement Drop.
2018-06-20Disable doctests in src/rust/crypto module.Nick Mathewson
These all need C linking to work, and so far, rustdoc does not seem to respect cargo setting about build scripts or RUSTOPTIONS.
2018-06-20Fix bugs in rust digest testsNick Mathewson
2018-06-20Merge branch 'rust_build_script_v3' into additional_rust_test_fixesNick Mathewson
2018-06-20Update copyrights to 2018.Nick Mathewson
2018-06-20rust: Remove redundant "testing" feature from tor_log crate.Isis Lovecruft
It was synonymous with the builtin "test" feature. * FIXES #26399: https://bugs.torproject.org/26399
2018-06-19Fix compilation of Rust crypto doctestsTaylor Yu
The doctests for src/rust/crypto don't compile for multiple reasons, including some missing exports and incorrect identifier paths. Fixes bug 26415; bugfix on 0.3.4.1-alpha.
2018-06-19Use a rust build script to set linker options correctly for tests.Nick Mathewson
We need this trick because some of our Rust tests depend on our C code, which in turn depend on other native libraries, which thereby pulls a whole mess of our build system into "cargo test". To solve this, we add a build script (build.rs) to set most of the options that we want based on the contents of config.rust. Some options can't be set, and need to go to the linker directly: we use a linker replacement (link_rust.sh) for these. Both config.rust and link_rust.sh are generated by autoconf for us. This patch on its own should enough to make the crypto test build, but not necessarily enough to make it pass.
2018-06-18Revert "Remove duplicate MODULE_DIRAUTH_SOURCES from libtor_testing.a"Nick Mathewson
This reverts commit 70d91bd059869a0ecf24ceb66942ada4f66f03c9.
2018-06-18Remove duplicate MODULE_DIRAUTH_SOURCES from libtor_testing.aNick Mathewson
This was already added to LIBTOR_A_SOURCES; it doesn't need to get added again. Fixes bug 26402. Bugfix on 0.3.4.1-alpha.
2018-06-16Changes to make the rust crypto::mod tests compileNick Mathewson
The digest tests don't link yet, though.
2018-06-16Merge remote-tracking branch 'isis/bug26267' into maint-0.3.4Nick Mathewson
2018-06-16Merge remote-tracking branch 'isis/bug26245' into maint-0.3.4Nick Mathewson
2018-06-15rust: Remove unused N_DIGEST_ALGORITHMS constant from crypto_digest.rs.Isis Lovecruft
In the C code, this constant is only ever used in src/test/bench.c. * FIXES part of #26245: https://bugs.torproject.org/26245
2018-06-15rust: Add comment and pragma on "unused" smartlist_t type.Isis Lovecruft
* FIXES part of #26245: https://bugs.torproject.org/26245
2018-06-15Make Rust warnings conditionally fatalTaylor Yu
Set rustc flags to treat warnings as fatal if configured with --enable-warnings.
2018-06-15rust: Expose rand module from crypto crate.Isis Lovecruft
2018-06-15Set default-features = false for rand_coreTaylor Yu
Apparently rand and rand_core need to be built with the "std" feature set consistently, or there will be a compile error in rngs/jitter.rs.
2018-05-22Merge branch 'maint-0.3.3'Nick Mathewson
2018-05-22Make the TROVE-2018-005 fix work with rust.Nick Mathewson
2018-05-22rust: Mirror TROVE-2018-005 fix in Rust protover implementation.Isis Lovecruft
* REFACTORS `UnvalidatedProtoEntry::from_str` to place the bulk of the splitting/parsing logic in to a new `UnvalidatedProtoEntry::parse_protocol_and_version_str()` method (so that both `from_str()` and `from_str_any_len()` can call it.) * ADD a new `UnvalidatedProtoEntry::from_str_any_len()` method in order to maintain compatibility with consensus methods older than 29. * ADD a limit on the number of characters in a protocol name. * FIXES part of #25517: https://bugs.torproject.org/25517
2018-05-22rust: Mirror TROVE-2018-005 fix in Rust protover implementation.Isis Lovecruft
* REFACTORS `UnvalidatedProtoEntry::from_str` to place the bulk of the splitting/parsing logic in to a new `UnvalidatedProtoEntry::parse_protocol_and_version_str()` method (so that both `from_str()` and `from_str_any_len()` can call it.) * ADD a new `UnvalidatedProtoEntry::from_str_any_len()` method in order to maintain compatibility with consensus methods older than 29. * ADD a limit on the number of characters in a protocol name. * FIXES part of #25517: https://bugs.torproject.org/25517
2018-05-16Merge remote-tracking branch 'isis-github/bug26106'Nick Mathewson
2018-05-16Merge remote-tracking branch 'isis-github/bug26108'Nick Mathewson
2018-05-15rust: Update rand_core dependency to 0.2.0-pre.0.Isis Lovecruft