Hello,
My name is Ivan and I would like to help out with Rust rewrite.
I'm a huge fan of both Rust and TOR. Recently, I spent some time in China and it made me realize the importance of a project like TOR.
Have experience with low-level code, being in DB industry for a few years now.
Any pointers would be of huge help :)
Thanks, Ivan
On 24 Dec 2017, at 09:13, Ivan Mandura ivan.mandura93@gmail.com wrote:
Hello,
My name is Ivan and I would like to help out with Rust rewrite.
I'm a huge fan of both Rust and TOR. Recently, I spent some time in China and it made me realize the importance of a project like TOR.
Have experience with low-level code, being in DB industry for a few years now.
Any pointers would be of huge help :)
Hi Ivan,
Here are our getting started documents: https://gitweb.torproject.org/tor.git/tree/doc/HACKING/GettingStartedRust.md https://gitweb.torproject.org/tor.git/tree/doc/HACKING/GettingStarted.md
Our goal is to gradually add interchangeable Rust crates to Tor, so that they can be used as alternatives to the corresponding C code.
You might find torguts helpful to understand Tor's current structure: https://gitweb.torproject.org/user/nickm/torguts.git/tree/
Other Core Tor developers know much more about Rust than I do. They can tell you if there is anywhere we are focusing on right now.
You can start by building Tor with Rust, and making sure the unit tests pass. We use "make check" to run a bunch of tests.
T
Thanks, successfully done it!
Will start reading docs. If somebody has something simple to start with please send it my way.
IM
On Sat, Dec 23, 2017 at 10:31 PM, teor teor2345@gmail.com wrote:
On 24 Dec 2017, at 09:13, Ivan Mandura ivan.mandura93@gmail.com wrote:
Hello,
My name is Ivan and I would like to help out with Rust rewrite.
I'm a huge fan of both Rust and TOR. Recently, I spent some time in China and it made me realize the importance of a project like TOR.
Have experience with low-level code, being in DB industry for a few years now.
Any pointers would be of huge help :)
Hi Ivan,
Here are our getting started documents: https://gitweb.torproject.org/tor.git/tree/doc/HACKING/ GettingStartedRust.md https://gitweb.torproject.org/tor.git/tree/doc/HACKING/GettingStarted.md
Our goal is to gradually add interchangeable Rust crates to Tor, so that they can be used as alternatives to the corresponding C code.
You might find torguts helpful to understand Tor's current structure: https://gitweb.torproject.org/user/nickm/torguts.git/tree/
Other Core Tor developers know much more about Rust than I do. They can tell you if there is anywhere we are focusing on right now.
You can start by building Tor with Rust, and making sure the unit tests pass. We use "make check" to run a bunch of tests.
T
tor-dev mailing list tor-dev@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
On 24 Dec 2017, at 12:55, Ivan Mandura ivan.mandura93@gmail.com wrote:
Thanks, successfully done it!
Will start reading docs. If somebody has something simple to start with please send it my way.
If you want to modify existing code, this one looks easy:
Wrap types in protover.rs https://trac.torproject.org/projects/tor/ticket/24030
If you like FFI from Rust to C, here are some options:
Wrap our sha2 interface in Rust which implements the appropriate traits https://trac.torproject.org/projects/tor/ticket/24659
Wrap our PRNG interface(s) in Rust with appropriate traits https://trac.torproject.org/projects/tor/ticket/24660
If you like testing, and FFI from C to Rust, and want to get involved with our C-based unit tests - try these after your first patch?
Test all rust functions' behavior when called from C with bad UTF8 https://trac.torproject.org/projects/tor/ticket/24029
consdiff implementation in Rust https://trac.torproject.org/projects/tor/ticket/24609 (Most people's repositories are on git.torproject.org.)
And here are all the Rust tickets:
https://trac.torproject.org/projects/tor/query?status=accepted&status=as...
T
-- Tim Wilson-Brown (teor)
teor2345 at gmail dot com PGP C855 6CED 5D90 A0C5 29F6 4D43 450C BA7F 968F 094B ricochet:ekmygaiu4rzgsk6n xmpp: teor at torproject dot org ------------------------------------------------------------------------