<div dir="ltr">The path I've been using is basically using the tor spec and implement it. I'll also say that, for C, Tor is pretty clear, so the source can be used to clarify the docs.<div><br></div><div>Other things that might be useful for warm-up purposes:</div><div><br></div><div>(1) Right now the test executable is pretty just a hard-coded 'wget' that runs through Tor. If we could expand it to be an analogue of the traditional Tor binary, that'd be cool. It'd mean figuring out how to pull in the existing options via command line arguments and/or config files, and then extending haskell-tor to allow some of the same flags normal-tor has.</div><div><br></div><div>(2) Running hpc over the source code while running the test suite, and then finding tests to run on the uncovered bits would be great. Theoretically the library is well set up for building up fake, internal test networks and then running higher-level tests, too. This needs to be done.</div><div><br></div><div>(3) There's some stuff in the Tor spec about reporting bandwidth usage when publishing node descriptions. I think you could just add a wrapper around the network stack argument and come up with something pretty clean, awesome, and simple, but again ... needs to be thought out and done.</div><div><br></div><div>(4) Flow control! I put a little bit of flow control stuff in, but I suspect it might be wrong. But at least you'd have some existing stuff to start from.</div><div><br></div><div>Those seem like the easiest four to jump on, if you don't want to start adding core features as your first step. :) And certainly the first two are going to be priorities for me, as soon as I fix a couple early issues people have submitted and get a chance to put more time into it.</div><div><br></div><div><br></div><div>- Adam</div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Nov 19, 2015 at 10:58 AM Curtis Gagliardi <<a href="mailto:gagliardi.curtis@gmail.com">gagliardi.curtis@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Very excited about this.  I want to contribute but am new to tor (internals at least, been runing a relay for a long time).   Do any of those strike you as lower hanging fruit than the others that might be a good place to start?  Do you have any recommended resources or is the path pretty much read the tor spec and implement it? <br></div><div class="gmail_extra"><br><div class="gmail_quote"></div></div><div class="gmail_extra"><div class="gmail_quote">On Wed, Nov 18, 2015 at 5:22 PM, Adam Wick <span dir="ltr"><<a href="mailto:awick@galois.com" target="_blank">awick@galois.com</a>></span> wrote:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Howdy -<div><br></div><div>Galois is pleased to announce an initial release of haskell-tor. Haskell-tor is intended to be a full-featured, drop-in implementation of the Tor onion routing protocol. This release provides full support for resolving names and building connections via anonymized channels, as well as (less tested) support for running relay and exit nodes.</div><div><br></div><div>There are still many tasks left to do, however, if you're interested in learning about and working on a Tor implementation, including support for hidden services, proper flow control, directory support, etc. So if you're interested, jump in! We welcome your patches.</div><div><br></div><div>You can find haskell-tor on:</div><div><br></div><div>GitHub: <a href="https://github.com/GaloisInc/haskell-tor" target="_blank">https://github.com/GaloisInc/haskell-tor</a></div><div>Hackage: <a href="https://hackage.haskell.org/package/haskell-tor" target="_blank">https://hackage.haskell.org/package/haskell-tor</a></div><div><br></div><div>Haskell-tor is HaLVM-ready.</div><span><font color="#888888"><div><br></div><div><br></div><div>- Adam</div><div><br></div></font></span></div>
<br></blockquote></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div></div></blockquote></div>