aboutsummaryrefslogtreecommitdiff
path: root/src/rust
AgeCommit message (Collapse)Author
2020-02-10Merge branch 'maint-0.3.5' into maint-0.4.0maint-0.4.0Nick Mathewson
2020-02-10Fix a Rust compilation warning; resolve bug 33212.Nick Mathewson
2019-04-15Merge branch 'rust-panic1-035' into rust-panic1-040teor
2019-04-15Merge branch 'rust-panic1-034' into rust-panic1-035teor
Trivial merge: a blank line was removed between 0.3.4 and 0.3.5.
2019-04-15Merge branch 'rust-panic1' into rust-panic1-034teor
2019-03-05protover: Add missing Padding to translate_to_rustDavid Goulet
This commit also explicitly set the value of the PRT enum so we can match/pin the C enum values to the Rust one in protover/ffi.rs. Fixes #29631 Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-02-05Merge branch 'maint-0.3.5'Roger Dingledine
2019-02-05Merge branch 'maint-0.3.4' into maint-0.3.5Roger Dingledine
2019-02-05Merge branch 'maint-0.3.3' into maint-0.3.4Roger Dingledine
2019-02-01Update Cargo.lock with new comment; suppress 29244.Nick Mathewson
2019-01-16Bump copyright date to 2019Nick Mathewson
2019-01-16Bump copyright date to 2019.Nick Mathewson
2019-01-02Circuit padding ProtoVer plumbing.Mike Perry
This helps us to determine if a middle node can pad to us or not. Co-authored-by: George Kadianakis <desnacked@riseup.net>
2018-12-05Merge remote-tracking branch 'tor-github/pr/508'Nick Mathewson
2018-11-15Merge branch 'maint-0.3.5'Nick Mathewson
2018-11-15Merge branch 'bug27740_035_fix' into maint-0.3.5Nick Mathewson
2018-11-14Add libtor-buf-testing to build.rsNick Mathewson
2018-11-09Merge branch 'subsystems'Nick Mathewson
2018-11-06Merge remote-tracking branch 'tor-github/pr/466'Nick Mathewson
2018-11-05Move the code that knows our tor version into a lowest-level libNick Mathewson
2018-10-30Merge remote-tracking branch 'tor-github/pr/431' into maint-0.3.5Nick Mathewson
2018-10-30Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-10-30Merge remote-tracking branch 'tor-github/pr/431' into bug27740_035_fixNick Mathewson
2018-10-30Merge remote-tracking branch 'tor-github/pr/346' into maint-0.3.3Nick Mathewson
2018-10-30remove now-unused "use" statement.Nick Mathewson
2018-10-30Merge remote-tracking branch 'tor-github/pr/381' into maint-0.3.5Nick Mathewson
2018-10-30Try to restore a proper fix for bug27740 in 0.3.5.Nick Mathewson
(I messed up the merge in 289a7dbac32a981897e12a3c250f0b6c67eec809.)
2018-10-24rust/tor_log: fix C_RUST_COUPLED documentationcypherpunks
This file was moved in 97b15a1d7c51764888d2172711e3f3a71fb01916 and moved again in e7f5f48d68553206b95cbb4f610702c887500124.
2018-10-23Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-10-23Remove a now-unused rust "use".Nick Mathewson
2018-10-23Merge branch 'maint-0.3.4' into maint-0.3.5Nick Mathewson
2018-10-23Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-10-19Merge remote-tracking branch 'onionk/rust-protocommas1' into maint-0.3.5Nick Mathewson
2018-10-17rust/tor_util: drop unsafe block in cstr!cypherpunks
This is unnecessary just to get an empty string, there's Default::default(). Fix on 8fff331bb095dc6f5e2fe2ecfc9ab08ea9e2fe97.
2018-10-01Remove rlib+staticlib configuration for Rust cratesAlex Crichton
Only the final crate needs to be a `staticlib`, no need for all the intermediate steps to produce staticlibs!
2018-10-01Remove `[features]` from workspace Cargo.tomlAlex Crichton
Unfortunately Cargo doesn't actually parse these! Cargo should probably print a warning saying they're not used...
2018-10-01Fix segfaults related to sanitizers+jemallocAlex Crichton
It looks to be the case that Rust's standard allocator, jemalloc, is incompatible with sanitizers. The incompatibility, for whatever reason, seems to cause segfaults at runtime when jemalloc is linked with sanitizers. Without actually trying to figure out what's going on here this commit instead takes the hammer of "let's remove jemalloc when testing". The `tor_allocate` crate now by default switches to the system allocator (eventually this will want to be the tor allocator). Most crates then link to `tor_allocate` ot pick this up, but the `smartlist` crate had to manually switch to the system allocator in testing and the `external` crate had to be sure to link to `tor_allocate`. The final gotcha here is that this patch also switches to unconditionally passing `--target` to Cargo. For weird and arcane reasons passing `--target` with the host target of the compiler (which Cargo otherwise uses as the default) is different than not passing `--target` at all. This ensure that our custom `RUSTFLAGS` with sanitizer options doesn't make its way into build scripts, just the final testing artifacts.
2018-09-24rust: run rustfmtcypherpunks
2018-09-24rust/protover: remove redundant ExceedsMax checkscypherpunks
This is already checked elsewhere.
2018-09-21rust/protover: return C-allocated string in protover_all_supported()cypherpunks
The result of CString::into_raw() is not safe to free with free() except under finicky and fragile circumstances that we definitely don't meet right now. This was missed in be583a34a3815c2c10e86094ab0610e4b7f9c869.
2018-09-21rust/protover: fix null deref in protover_all_supported()cypherpunks
Fortunately with the current callers it couldn't happen in practice. Fix on d1820c1516a31a149fc51a9e5126bf899e4c4e08.
2018-09-18Merge remote-tracking branch 'nickm/bug27741_033' into bug27741_035teor
Resolve conflicts due to rustfmt, and run rustfmt on the merged code.
2018-09-18Merge branch 'maint-0.3.4'Nick Mathewson
2018-09-18Merge branch 'maint-0.3.3' into maint-0.3.4Nick Mathewson
2018-09-17Remove extraneous argument from Rust protover_compute_vote()Nick Mathewson
This argument was added to match an older idea for the C api, but we decided not to do it that way in C. Fixes bug 27741; bugfix on 0.3.3.6 / TROVE-2018-005 fix.
2018-09-16Don't try to link C from rust doctests for nss detectionNick Mathewson
This is really annoying, since we can't use cfg(test) for doctests.
2018-09-16When Tor is compiled with NSS, don't claim support for LinkAuth=1Nick Mathewson
Closes ticket 27288
2018-09-15rust/protover: reject extra commascypherpunks
The C implementation had gotten this wrong too, in a slightly different way. Introduced in 5af03c1ef3c4718b79abb1638f5a8c275129530a. Fixes #27197; bugfix on 0.3.3.3-alpha.
2018-09-14rust/protover: delete ProtoSet::retaincypherpunks
As the comment noted, it was horribly inefficient.
2018-09-14rust/protover: use .and_not_in() instead of .retain() in all_supported()cypherpunks
.retain() would allocating a Vec of billions of integers and check them one at a time to separate the supported versions from the unsupported. This leads to a memory DoS. Closes ticket 27206. Bugfix on e6625113c98c281b0a649598d7daa347c28915e9.