Hi all. Spring is in the air, and with it many lovely things including the UW Street Fair, Folklife, and an iSec Open Forum. It also included a week of oncall but that doesn’t count in the ‘lovely things’ column. On the upside though, this time it was pleasantly light (first time I’ve gone a whole week without being woken up by a pager at 3am!).
As a GSoC admin I don’t have much to report besides a blog posting at the start of the month. However, as a mentor some neat things are in the works…
Ravi is adding SafeCookie support in stem. I’ve code reviewed the first couple iterations and it’s looking great. Given some tests and revising to fit with recent refactoring it should soon be ready to merge.
After that he’ll start working on the general controller. This last weekend I refactored how response classes are organized and implemented GETINFO as an example, so this will hopefully be an easy project for him to start hacking on.
- Beck added descriptor validation to check that the signing key’s hash matches its fingerprint. This is the first part of descriptor integrity validation that Karsten suggested, however this project has gotten stuck so he’s moving on to other stem tasks.
- Investigated a couple issues brought up by Sathyanarayanan. (1, 2)
- Two Wesleyan students will start working on stem soon!
Needless to say helping these projects has occupies much of my time, and will take even more once the Wesleyan students get started. But after years of trying in vain to attract developers to my projects I wouldn’t have it any other way.
Other stem tasks I finished this month includes…
- ExtraInfo descriptor parsing. This took me a couple weeks since it contains so many attributes, but I’m glad it’s finished. Now all that remains before we can port Onionoo are the consensus’ network status entries. That’s now at the top of my todo list for descriptor work, but I’m setting it aside for now in favor of Sphinx and helping Ravi and Beck with controller work.
- Improved the launch_tor() function, making the test instance easily configurable via a temporary torrc (similar to what Vidalia does) and adding integ tests. I also added a workaround so it’ll work on Windows. (1, 2)
- Updated the stem development wiki so it’ll be easier for new volunteers to find tasks that interest them.
- Discussed descriptor type annotations with Karsten and implemented stem’s side of it. We also discussed some changes to bridge descriptor sanatization which led to some minor stem changes too.